50 lines
2.3 KiB
C#
50 lines
2.3 KiB
C#
using AutoMapper;
|
||
using PARR.API.Contracts.V1.Responses;
|
||
using PARR.BLL.Helpers;
|
||
using PARR.DAL.Contracts;
|
||
using PARR.DAL.Models;
|
||
using PARR.DAL.Services.Interfaces.Schedule;
|
||
|
||
namespace PARR.API.MappingProfiles.Resolvers
|
||
{
|
||
//public class RobotTaskScheduleNextStartResolver : IValueResolver<RobotConfiguration, RobotTaskScheduleResponse, string>
|
||
//{
|
||
// private readonly SettingsFromDb settingsFromDb;
|
||
// private readonly INextRunModifierService nextRunModifierService;
|
||
// private readonly IScheduleResponseAreaTimeOffsetService scheduleResponseAreaTimeOffsetService;
|
||
|
||
// public RobotTaskScheduleNextStartResolver(
|
||
// SettingsFromDb settingsFromDb,
|
||
// INextRunModifierService nextRunModifierService,
|
||
// IScheduleResponseAreaTimeOffsetService scheduleResponseAreaTimeOffsetService
|
||
// )
|
||
// {
|
||
// this.settingsFromDb = settingsFromDb;
|
||
// this.nextRunModifierService = nextRunModifierService;
|
||
// this.scheduleResponseAreaTimeOffsetService = scheduleResponseAreaTimeOffsetService;
|
||
// }
|
||
|
||
// public string Resolve(RobotConfiguration source, RobotTaskScheduleResponse destination, string destMember, ResolutionContext context)
|
||
// {
|
||
// var nextRunForRobot = nextRunModifierService.GetNextRunByAccountRobotTimeZone(source.Template!.NextRun);
|
||
|
||
// // Сначала прибавляем офсет УЗ ЕСПП
|
||
// // потом прибаляем = офсет УЗ ЕСПП - offset ЗО
|
||
|
||
// // если включен - IsWorkGroupTimezone - группировка по таймозне группы, применяем тайм зону группы
|
||
// if (source.Template?.Job?.Group?.IsWorkGroupTimezone == true)
|
||
// {
|
||
// var responseArea = "TODO";
|
||
// var esppOffset = new TimeSpan(settingsFromDb.EsppRobotAccountTimeZoneHour, 0, 0);
|
||
// var workGroupOffset = scheduleResponseAreaTimeOffsetService.GetByResponseAreaOrDefault(responseArea).UtcTimeOffset;
|
||
|
||
// var resultOffset = esppOffset - workGroupOffset;
|
||
|
||
// nextRunForRobot = nextRunForRobot.Add(resultOffset);
|
||
// }
|
||
|
||
// return EsppScheduleHelpers.GetNextRun(nextRunForRobot);
|
||
// }
|
||
//}
|
||
}
|