fix(esppScheduleSync): исправлена синхронизация

This commit is contained in:
Mikhail Trubnikov
2025-12-04 13:55:03 +10:00
parent 0de2c4762e
commit b11a5929f4
2 changed files with 24 additions and 7 deletions

View File

@@ -10,6 +10,7 @@ using PARR.API.Controllers.V1.Base;
using PARR.API.Extensions; using PARR.API.Extensions;
using PARR.API.Services.Interfaces; using PARR.API.Services.Interfaces;
using PARR.DAL.CacheServices; using PARR.DAL.CacheServices;
using PARR.DAL.Contracts;
using PARR.DAL.DomainModels; using PARR.DAL.DomainModels;
using PARR.DAL.DomainServices.Interfaces; using PARR.DAL.DomainServices.Interfaces;
using PARR.DAL.Models.Job; using PARR.DAL.Models.Job;

View File

@@ -103,7 +103,9 @@ namespace PARR.EsppScheduleSync
//WorkGroup = template.Host!.WorkGroup!, //WorkGroup = template.Host!.WorkGroup!,
//WorkGroup = template.Host!.WorkGroup!.Name,//TODO Migration to job //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(template.NextRun),
//Scheduled = EsppScheduleHelpers.GetNextRun(nextRunModifierService.GetNextRunByAccountRobotTimeZone(template.NextRun)), //Scheduled = EsppScheduleHelpers.GetNextRun(nextRunModifierService.GetNextRunByAccountRobotTimeZone(template.NextRun)),
//BasisTime = EsppScheduleHelpers.GetGenerationTime(nextRunModifierService.GetNextRunByAccountRobotTimeZone(template.NextRun)), //BasisTime = EsppScheduleHelpers.GetGenerationTime(nextRunModifierService.GetNextRunByAccountRobotTimeZone(template.NextRun)),
@@ -112,8 +114,7 @@ namespace PARR.EsppScheduleSync
Timezone = settingsFromDb.ScheduleTimezone, Timezone = settingsFromDb.ScheduleTimezone,
//Мы решили, что для всех расписаний "Отсутствует дата завершения", если что-то поменяется, тут нужно переделать //Мы решили, что для всех расписаний "Отсутствует дата завершения", если что-то поменяется, тут нужно переделать
TerminationType = settingsFromDb.ScheduleRepeatRange == "Отсутствует дата завершения" ? "forever" : "", TerminationType = settingsFromDb.ScheduleRepeatRange == "Отсутствует дата завершения" ? "forever" : "",
CompleteAfter = "", CompleteAfter = ""
V60calendar = ""
}; };
FillScheduleFromDb(template, ref esppObjectFromDb); FillScheduleFromDb(template, ref esppObjectFromDb);
@@ -121,6 +122,25 @@ namespace PARR.EsppScheduleSync
} }
/// <summary>
/// Получить тип календаря
/// </summary>
/// <returns></returns>
private string GetTypeV60calendar()
{
// Это костыль, нужно придумать как это хранить в БД.
switch (settingsFromDb.ScheduleExcludeType.ToLower())
{
case ("нет исключений"):
return "NONE";
case ("выполнить только в указанном календаре"):
return "ONLY";
default:
return "";
}
}
/// <summary> /// <summary>
/// Заполнить расписание из БД /// Заполнить расписание из БД
/// </summary> /// </summary>
@@ -147,8 +167,6 @@ namespace PARR.EsppScheduleSync
//тип повторения //тип повторения
esppObject.TypeSchedule = typeSchedule.Value; esppObject.TypeSchedule = typeSchedule.Value;
//TODO: !!!!!!! Добавить поле "Расписание регламентной работы - Календарь" ScheduleExcludeCalendar !!!!!!!
//в зависимости от типа, присваиваем значения //в зависимости от типа, присваиваем значения
switch (esppObject.TypeSchedule) switch (esppObject.TypeSchedule)
{ {
@@ -244,8 +262,6 @@ namespace PARR.EsppScheduleSync
CompleteAfter = splittedContent[20], CompleteAfter = splittedContent[20],
V60calendar = splittedContent[22], V60calendar = splittedContent[22],
BasisTime = splittedContent[23] BasisTime = splittedContent[23]
//TODO: !!!!!!! Добавить поле "Расписание регламентной работы - Календарь" ScheduleExcludeCalendar !!!!!!!
}; };
return ClearOptionalFields(esppObject); return ClearOptionalFields(esppObject);