feat(dal, api): в таблицах Process, Subprocess, Tnks, Works поле EsppId - уникальное. Обновлены соответсвующе контроллеры (валидация esppId), добавлены методы удаления если нет дочерних элементов.

This commit is contained in:
Mikhail Trubnikov
2024-05-20 11:38:48 +10:00
parent bd77db7b78
commit 6f845635c5
15 changed files with 2932 additions and 155 deletions

View File

@@ -15,15 +15,15 @@ namespace PARR.API.Validators
{
this.processService = processService;
RuleFor(t => t.Name).NotEmpty().NotNull().WithMessage("Имя подпроцесса не может быть пустым");
RuleFor(t => t.Name).NotEmpty().NotNull();
RuleFor(t => t.EsppId).NotEmpty().NotNull().WithMessage("EsppId не может быть пустым");
RuleFor(t => t.EsppId).NotEmpty().NotNull();
RuleFor(t => t.ProcessId).NotEmpty().NotNull().WithMessage("Подпроцесс должна быть связан с процессом. ProcessId не может быть пустым");
RuleFor(t => t.ProcessId).NotEmpty().NotNull();
RuleFor(t => t.ProcessId)
.MustAsync(async (entity, value, c) => await IsProcessExist(entity))
.WithMessage("У данного подпроцесса указан несуществующий Id процесса");
.WithMessage("Указан несуществующий Id процесса");
}
private async Task<bool> IsProcessExist(SubprocessRequest request)