feat(dal): IRedisCacheService

This commit is contained in:
Mikhail Trubnikov
2023-11-30 16:18:14 +10:00
parent 9bf3055f1f
commit e00826c398
12 changed files with 2904 additions and 3 deletions

View File

@@ -3,6 +3,7 @@ using PARR.API.Contracts.V1;
using PARR.API.Contracts.V1.Responses.Base;
using PARR.API.Controllers.V1.Base;
using PARR.API.Services.Interfaces;
using PARR.DAL.CacheServices;
using PARR.DAL.TransformServices;
namespace PARR.API.Controllers.V1
@@ -11,11 +12,13 @@ namespace PARR.API.Controllers.V1
{
private readonly IClientService clientService;
private readonly IEsppScheduleTransformService esppScheduleTransformService;
private readonly IRedisCacheService redisCacheService;
public TestController(IClientService clientService, IEsppScheduleTransformService esppScheduleTransformService)
public TestController(IClientService clientService, IEsppScheduleTransformService esppScheduleTransformService, IRedisCacheService redisCacheService)
{
this.clientService = clientService;
this.esppScheduleTransformService = esppScheduleTransformService;
this.redisCacheService = redisCacheService;
}
@@ -62,5 +65,25 @@ namespace PARR.API.Controllers.V1
var result = await esppScheduleTransformService.GetNextScheduleAsync(applicationInWorkId, lastRunDate);
return Ok(result);
}
[HttpPost(ApiRoutes.Test.CreateCache)]
public async Task<IActionResult> CreateCache([FromBody] CaheRequestTest request)
{
await redisCacheService.SetCachedDataAsync(request.Key, request, TimeSpan.FromMinutes(1));
var fromCache = await redisCacheService.GetCachedDataAsync<CaheRequestTest>(request.Key);
return Ok(new { fromCache });
}
}
public class CaheRequestTest
{
public required string Key { get; set; }
public required string Value { get; set; }
}
}