From b11a5929f44ab4680c0307c00d5bb193bf8baa46 Mon Sep 17 00:00:00 2001 From: Mikhail Trubnikov Date: Thu, 4 Dec 2025 13:55:03 +1000 Subject: [PATCH] =?UTF-8?q?fix(esppScheduleSync):=20=D0=B8=D1=81=D0=BF?= =?UTF-8?q?=D1=80=D0=B0=D0=B2=D0=BB=D0=B5=D0=BD=D0=B0=20=D1=81=D0=B8=D0=BD?= =?UTF-8?q?=D1=85=D1=80=D0=BE=D0=BD=D0=B8=D0=B7=D0=B0=D1=86=D0=B8=D1=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- PARR.API/Controllers/V1/TestController.cs | 1 + PARR.EsppScheduleSync/ScheduleSyncher.cs | 30 +++++++++++++++++------ 2 files changed, 24 insertions(+), 7 deletions(-) diff --git a/PARR.API/Controllers/V1/TestController.cs b/PARR.API/Controllers/V1/TestController.cs index 2d7fc0ab..4ad09778 100644 --- a/PARR.API/Controllers/V1/TestController.cs +++ b/PARR.API/Controllers/V1/TestController.cs @@ -10,6 +10,7 @@ using PARR.API.Controllers.V1.Base; using PARR.API.Extensions; using PARR.API.Services.Interfaces; using PARR.DAL.CacheServices; +using PARR.DAL.Contracts; using PARR.DAL.DomainModels; using PARR.DAL.DomainServices.Interfaces; using PARR.DAL.Models.Job; diff --git a/PARR.EsppScheduleSync/ScheduleSyncher.cs b/PARR.EsppScheduleSync/ScheduleSyncher.cs index 1437ed62..9107b9b6 100644 --- a/PARR.EsppScheduleSync/ScheduleSyncher.cs +++ b/PARR.EsppScheduleSync/ScheduleSyncher.cs @@ -103,7 +103,9 @@ namespace PARR.EsppScheduleSync //WorkGroup = template.Host!.WorkGroup!, //WorkGroup = template.Host!.WorkGroup!.Name,//TODO Migration to job //Мы решили, что для всех расписаний "Нет исключений", если что-то поменяется, тут нужно переделать - TypeV60calendar = settingsFromDb.ScheduleExcludeType == "Нет исключений" ? "NONE" : "", + //TypeV60calendar = settingsFromDb.ScheduleExcludeType == "Нет исключений" ? "NONE" : "", + TypeV60calendar = GetTypeV60calendar(), + V60calendar = settingsFromDb.ScheduleExcludeCalendar, //Scheduled = EsppScheduleHelpers.GetNextRun(template.NextRun), //Scheduled = EsppScheduleHelpers.GetNextRun(nextRunModifierService.GetNextRunByAccountRobotTimeZone(template.NextRun)), //BasisTime = EsppScheduleHelpers.GetGenerationTime(nextRunModifierService.GetNextRunByAccountRobotTimeZone(template.NextRun)), @@ -112,8 +114,7 @@ namespace PARR.EsppScheduleSync Timezone = settingsFromDb.ScheduleTimezone, //Мы решили, что для всех расписаний "Отсутствует дата завершения", если что-то поменяется, тут нужно переделать TerminationType = settingsFromDb.ScheduleRepeatRange == "Отсутствует дата завершения" ? "forever" : "", - CompleteAfter = "", - V60calendar = "" + CompleteAfter = "" }; FillScheduleFromDb(template, ref esppObjectFromDb); @@ -121,6 +122,25 @@ namespace PARR.EsppScheduleSync } + /// + /// Получить тип календаря + /// + /// + private string GetTypeV60calendar() + { + // Это костыль, нужно придумать как это хранить в БД. + switch (settingsFromDb.ScheduleExcludeType.ToLower()) + { + case ("нет исключений"): + return "NONE"; + case ("выполнить только в указанном календаре"): + return "ONLY"; + default: + return ""; + } + } + + /// /// Заполнить расписание из БД /// @@ -147,8 +167,6 @@ namespace PARR.EsppScheduleSync //тип повторения esppObject.TypeSchedule = typeSchedule.Value; - //TODO: !!!!!!! Добавить поле "Расписание регламентной работы - Календарь" ScheduleExcludeCalendar !!!!!!! - //в зависимости от типа, присваиваем значения switch (esppObject.TypeSchedule) { @@ -244,8 +262,6 @@ namespace PARR.EsppScheduleSync CompleteAfter = splittedContent[20], V60calendar = splittedContent[22], BasisTime = splittedContent[23] - - //TODO: !!!!!!! Добавить поле "Расписание регламентной работы - Календарь" ScheduleExcludeCalendar !!!!!!! }; return ClearOptionalFields(esppObject);