feat(api, bll, dal, generatorTemplates, templateActivator): запись истории изменения шаблонов
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
using PARR.Constants;
|
||||
using PARR.Common.Domain;
|
||||
using PARR.Constants;
|
||||
|
||||
namespace PARR.TemplateActivator;
|
||||
|
||||
@@ -10,5 +11,5 @@ public interface ITemplateActivator
|
||||
/// <param name="applicationInWorkId"></param>
|
||||
/// <param name="action"></param>
|
||||
/// <returns></returns>
|
||||
Task ChangeStateAsync(Guid applicationInWorkId, TemplateActivatorActionsEnum action);
|
||||
Task ChangeStateAsync(Guid applicationInWorkId, TemplateActivatorActionsEnum action, IHistoryInitiator? historyInitiator);
|
||||
}
|
||||
|
||||
@@ -59,7 +59,7 @@ internal class MqTemplateActivator : IMqTemplateActivator
|
||||
if (service == null)
|
||||
throw new Exception($"{this.GetType().Name}. Не найден сервис: {nameof(service.GetType)}");
|
||||
|
||||
await service.ChangeStateAsync(query.ApplicationInWorkId, query.Action);
|
||||
await service.ChangeStateAsync(query.ApplicationInWorkId, query.Action, query.HistoryInitiator);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using Microsoft.Extensions.Logging;
|
||||
using PARR.BLL.Helpers;
|
||||
using PARR.Common.Domain;
|
||||
using PARR.Constants;
|
||||
using PARR.DAL.Contracts;
|
||||
using PARR.DAL.Models;
|
||||
@@ -34,7 +35,7 @@ internal class TemplateActivator : ITemplateActivator
|
||||
}
|
||||
|
||||
|
||||
public async Task ChangeStateAsync(Guid applicationInWorkId, TemplateActivatorActionsEnum action)
|
||||
public async Task ChangeStateAsync(Guid applicationInWorkId, TemplateActivatorActionsEnum action, IHistoryInitiator? historyInitiator)
|
||||
{
|
||||
var query = templateService.Get()
|
||||
.Include(t => t.RobotConfigurations).ThenInclude(t => t.Robot)
|
||||
@@ -103,7 +104,10 @@ internal class TemplateActivator : ITemplateActivator
|
||||
break;
|
||||
}
|
||||
|
||||
if (changes > 0 && !await templateService.CommitAsync())
|
||||
if (historyInitiator != null)
|
||||
historyInitiator.InitiatorComment += $" Action: {action.ToString()}";
|
||||
|
||||
if (changes > 0 && !await templateService.CommitAsync(historyInitiator))
|
||||
logger.LogError($"{GetType().Name} не удалось записать измения в БД о новых состояниях шаблонов и расписаний регламентной работы Id {applicationInWorkId}");
|
||||
|
||||
logger.LogDebug($"{GetType().Name} изменил состояние шаблонов/расписаний({changes}) регламентной работы Id {applicationInWorkId}");
|
||||
|
||||
Reference in New Issue
Block a user