feat(api, bll, dal, generatorTemplates, templateActivator): запись истории изменения шаблонов

This commit is contained in:
Mikhail Trubnikov
2024-10-08 10:29:34 +10:00
parent 54fed9b597
commit a494b69ee6
22 changed files with 140 additions and 67 deletions

View File

@@ -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}");