From 5bddcc0acaa1de194e0fbbbfd0ad1ac5e596dd7d Mon Sep 17 00:00:00 2001 From: Mikhail Trubnikov Date: Tue, 6 Aug 2024 11:06:49 +1000 Subject: [PATCH] =?UTF-8?q?feat(esppScheduleSync):=20nextRun=20=D0=BF?= =?UTF-8?q?=D0=B5=D1=80=D0=B5=D1=81=D1=87=D0=B8=D1=82=D1=8B=D0=B2=D0=B0?= =?UTF-8?q?=D0=B5=D1=82=D1=81=D1=8F=20=D1=81=20=D1=83=D1=87=D0=B5=D1=82?= =?UTF-8?q?=D0=BE=D0=BC=20=D1=82=D0=B0=D0=B9=D0=BC=D0=B7=D0=BE=D0=BD=D1=8B?= =?UTF-8?q?=20=D1=80=D0=BE=D0=B1=D0=BE=D1=82=D0=B0.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- PARR.EsppScheduleSync/ScheduleSyncher.cs | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/PARR.EsppScheduleSync/ScheduleSyncher.cs b/PARR.EsppScheduleSync/ScheduleSyncher.cs index c3024861..a9d66ea4 100644 --- a/PARR.EsppScheduleSync/ScheduleSyncher.cs +++ b/PARR.EsppScheduleSync/ScheduleSyncher.cs @@ -5,10 +5,10 @@ using PARR.BLL.Services.Interfaces; using PARR.DAL.Contracts; using PARR.DAL.Models; using PARR.DAL.Services.Interfaces; +using PARR.DAL.TransformServices; using PARR.EsppScheduleSync.Domain; using PARR.EsppScheduleSync.Settings; using PARR.EsppSync; -using System.Linq; namespace PARR.EsppScheduleSync { @@ -20,6 +20,7 @@ namespace PARR.EsppScheduleSync private readonly ISyncService syncService; private readonly SettingsFromDb settingsFromDb; private readonly IServiceProvider serviceProvider; + private readonly INextRunModifierService nextRunModifierService; public ScheduleSyncher( ILogger logger, @@ -27,7 +28,8 @@ namespace PARR.EsppScheduleSync IMqService mqService, ISyncService syncService, SettingsFromDb settingsFromDb, - IServiceProvider serviceProvider + IServiceProvider serviceProvider, + INextRunModifierService nextRunModifierService ) { this.logger = logger; @@ -36,6 +38,7 @@ namespace PARR.EsppScheduleSync this.syncService = syncService; this.settingsFromDb = settingsFromDb; this.serviceProvider = serviceProvider; + this.nextRunModifierService = nextRunModifierService; if (globalSettings.MqSettings == null) { logger.LogError("Нет секции настроек хранилища. MqSettings, EsppTemplates"); @@ -88,8 +91,8 @@ namespace PARR.EsppScheduleSync WorkGroup = template.Host!.WorkGroup!.Name, //Мы решили, что для всех расписаний "Нет исключений", если что-то поменяется, тут нужно переделать TypeV60calendar = settingsFromDb.ScheduleExclude == "Нет исключений" ? "NONE" : "", - //Scheduled = EsppScheduleHelpers.GetNextRun(template.ApplicationsInWork!.NextRun), - Scheduled = EsppScheduleHelpers.GetNextRun(template.NextRun), + //Scheduled = EsppScheduleHelpers.GetNextRun(template.NextRun), + Scheduled = EsppScheduleHelpers.GetNextRun(nextRunModifierService.GetNextRunByAccountRobotTimeZone(template.NextRun)), Timezone = settingsFromDb.ScheduleTimezone, //Мы решили, что для всех расписаний "Отсутствует дата завершения", если что-то поменяется, тут нужно переделать TerminationType = settingsFromDb.ScheduleRepeatRange == "Отсутствует дата завершения" ? "forever" : "", @@ -142,7 +145,9 @@ namespace PARR.EsppScheduleSync //если включено автораспределение, подставляем дату месяца из NextRun if (template.ApplicationsInWork?.IsAutoDistributionEnabled == true) { - esppObject.Dayofmonth = template.NextRun.Day.ToString(); + var nextRunByRobotTimeZone = nextRunModifierService.GetNextRunByAccountRobotTimeZone(template.NextRun); + esppObject.Dayofmonth = nextRunByRobotTimeZone.Day.ToString(); + // esppObject.Dayofmonth = template.NextRun.Day.ToString(); } else {