feat(esppSync): обновлена логика синхронизации. Менять статус на Update, только если предыдущий статус не был Update (тогда сохраняется число попыток и статусы ошибок).
This commit is contained in:
@@ -84,12 +84,34 @@ namespace PARR.EsppSync
|
|||||||
{
|
{
|
||||||
logger.LogInformation($"Есть изменения, требуется обновление. {esppObject.TemplateName}");
|
logger.LogInformation($"Есть изменения, требуется обновление. {esppObject.TemplateName}");
|
||||||
|
|
||||||
SetUpdateStatus(ref template, robotConfigurationService, esppObject.Robot);
|
var config = robotConfigurationService.GetFromTemplateByRobotCode(esppObject.Robot, ref template);
|
||||||
|
|
||||||
if (!await templateService.CommitAsync())
|
// Если предыдущий статус был Create или Ок, то ставим ему Update
|
||||||
logger.LogError($"Не удалось изменить запись Template {template.Name}, Robot: {esppObject.Robot}");
|
// пусть даже Create завершился с ошибками, но раз он уже есть в ЕСПП, то изменим на Update, сбросим все счетчики и пусть попробует обновить и исправить все
|
||||||
|
if (config.TaskStatusCode != (int)TaskStatusEnum.Updating)
|
||||||
|
{
|
||||||
|
SetUpdateStatus(ref template, robotConfigurationService, esppObject.Robot);
|
||||||
|
|
||||||
|
if (!await templateService.CommitAsync())
|
||||||
|
logger.LogError($"Не удалось изменить запись Template {template.Name}, Robot: {esppObject.Robot}");
|
||||||
|
else
|
||||||
|
logger.LogInformation($"Установлен принудительный статус {TaskStatusEnum.Updating}, Template {template.Name}, Robot: {esppObject.Robot}");
|
||||||
|
}
|
||||||
else
|
else
|
||||||
logger.LogInformation($"Установлен принудительный статус {TaskStatusEnum.Updating}, Template {template.Name}, Robot: {esppObject.Robot}");
|
{
|
||||||
|
// Если пред статус был Update, то ничего не делаем, так его и оставляем, не сбрасывам кол-во попыток и ошибок
|
||||||
|
logger.LogInformation($"Есть изменения в Template {template.Name}, но предыдущий статус TaskStatusCode: {(TaskStatusEnum)config.TaskStatusCode}. Не меняем статус, будем разбираться вручную.");
|
||||||
|
}
|
||||||
|
|
||||||
|
#region Old logic
|
||||||
|
|
||||||
|
//SetUpdateStatus(ref template, robotConfigurationService, esppObject.Robot);
|
||||||
|
|
||||||
|
//if (!await templateService.CommitAsync())
|
||||||
|
// logger.LogError($"Не удалось изменить запись Template {template.Name}, Robot: {esppObject.Robot}");
|
||||||
|
//else
|
||||||
|
// logger.LogInformation($"Установлен принудительный статус {TaskStatusEnum.Updating}, Template {template.Name}, Robot: {esppObject.Robot}");
|
||||||
|
#endregion
|
||||||
}//надо ли проверять если не изменился, но был статус Updating не понятно. Доверяем роботу пока, что после окончания работ он точно сообщит
|
}//надо ли проверять если не изменился, но был статус Updating не понятно. Доверяем роботу пока, что после окончания работ он точно сообщит
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user