feat(api,core,domain): Ключи для редис

This commit is contained in:
Mikhail Trubnikov
2026-05-28 15:50:14 +10:00
parent 04237cc826
commit 613d4cb4f4
12 changed files with 251 additions and 149 deletions

View File

@@ -6,6 +6,7 @@ using PARR.API.Settings;
using PARR.Core.Common.Interfaces;
using PARR.Core.Repositories.Interfaces;
using PARR.Core.Repositories.Interfaces.Unit;
using PARR.Domain.Cache;
using PARR.Domain.Common.Roles;
using PARR.Domain.Settings;
@@ -162,13 +163,15 @@ namespace PARR.API.Services.Implementations
private string GetBlockKey(string ipAddress)
{
// d - deny
return $"d_{ipAddress}";
//return $"d_{ipAddress}";
return cacheService.GetKey(CacheKeys.UserAuth.Banned(ipAddress));
}
private string GetAllowKey(string ipAddress)
{
// a - allow
return $"a_{ipAddress}";
//return $"a_{ipAddress}";
return cacheService.GetKey(CacheKeys.UserAuth.Session(ipAddress));
}

View File

@@ -1,80 +0,0 @@
using PARR.API.Services.Interfaces;
namespace PARR.API.Services.Implementations
{
internal class WorkLoadService : IWorkLoadService
{
//private readonly ICalendarService calendarService;
//public WorkLoadService(ICalendarService calendarService)
//{
// this.calendarService = calendarService;
//}
//private DateTime GetStartDate(int timeZoneOffsetHours)
//{
// //(так уже не делаем) начинаем не с сегодняшнего дня, а с завтра, так как на сегодня уже некоторые работы были проведены и их дата изменилась
// //return DateTimeOffset.UtcNow.AddHours(timeZoneOffsetHours).Date.AddDays(1);
// var dateWithTimeZoneOffset = calendarService.GetDateWithTimeZoneOffset(DateTimeOffset.UtcNow, timeZoneOffsetHours);
// //var dateWithAddDays = dateWithTimeZoneOffset.DateTime.AddDays(1);
// var dateWithAddDays = dateWithTimeZoneOffset.DateTime.AddDays(0);
// //var bbb = dateWithTimeZoneOffset.DateTime.AddDays(1);
// //return calendarService.GetDateWithTimeZoneOffset(DateTimeOffset.UtcNow, timeZoneOffsetHours).UtcDateTime.AddDays(1);
// return dateWithAddDays;
//}
//private DateTime GetEndDate(bool? isMonth, int timeZoneOffsetHours)
//{
// var startDate = GetStartDate(timeZoneOffsetHours);
// return isMonth == true ? startDate.AddDays(30) : startDate.AddDays(6);
//}
//public List<DateOnly> GetDatesForPeriod(WorkloadBaseQuery requestQuery)
//{
// var startDate = GetStartDate(requestQuery.TimeZoneOffsetHours);
// var endDate = GetEndDate(requestQuery.IsMonth, requestQuery.TimeZoneOffsetHours);
// //var daysList = new List<DateTimeOffset>();
// //daysList.Add(new DateTimeOffset(startDate, new TimeSpan(0)));
// //while (daysList.Last() < endDate)
// // daysList.Add(daysList.Last().AddDays(1));
// //return daysList.OrderBy(t => t).ToList();
// //var aaa = DateOnly.FromDateTime(startDate);
// return calendarService.GetDatesForPeriod(DateOnly.FromDateTime(startDate), DateOnly.FromDateTime(endDate));
//}
//public IQueryable<Template> FilterTemplatesQuery(IQueryable<Template> query, WorkloadBaseQuery requestQuery)
//{
// var startDate = GetStartDate(requestQuery.TimeZoneOffsetHours);
// var endDate = GetEndDate(requestQuery.IsMonth, requestQuery.TimeZoneOffsetHours);
// //query = query.Where(t =>
// // t.NextRun.DateTime.Date >= startDate.Date && t.NextRun.DateTime.Date <= endDate.Date
// // );
// query = query.Where(t =>
// t.NextRun.DateTime.AddHours(requestQuery.TimeZoneOffsetHours).Date >= startDate.Date && t.NextRun.DateTime.AddHours(requestQuery.TimeZoneOffsetHours).Date <= endDate.Date
// );
// if (requestQuery.IsActiveTemplate.HasValue)
// query = query.Where(t => t.IsActiveTemplate == requestQuery.IsActiveTemplate.Value);
// if (requestQuery.IsActiveSchedule.HasValue)
// query = query.Where(t => t.IsActiveSchedule == requestQuery.IsActiveSchedule.Value);
// return query;
//}
}
}

View File

@@ -1,15 +0,0 @@
namespace PARR.API.Services.Interfaces
{
/// <summary>
/// Сервисы по формированию статистики загрузки рабочих групп/ЗО, и тд регламентными работами
/// </summary>
public interface IWorkLoadService
{
//IQueryable<Template> FilterTemplatesQuery(IQueryable<Template> query, WorkloadBaseQuery requestQuery);
//List<DateOnly> GetDatesForPeriod(WorkloadBaseQuery requestQuery);
//DateTime GetEndDate(DateTime startDate, bool? isMonth);
//DateTime GetStartDate();
}
}