fix(api): исправлена валидация в AppInWork, Create, Update, проверка на уникальность ПО и работы.

This commit is contained in:
Mikhail Trubnikov
2024-04-17 09:07:46 +10:00
parent 0477a400e6
commit 59113e87da
2 changed files with 25 additions and 15 deletions

View File

@@ -109,6 +109,11 @@ namespace PARR.API.Controllers.V1
if (!resultValidate.IsValid)
return BadRequest(new Response(resultValidate.Errors));
//уникальная запись по полям ApplicationId, WorkId
var existSameAiW = await applicationsInWorkService.GetAsync(request.ApplicationId, request.WorkId);
if (existSameAiW != null)
return BadRequest(new Response(false, new List<ErrorModel> { new ErrorModel { Message = "Задание на выполнение работ с такими ПО и работой уже существует" } }));
var applicationInWork = new ApplicationsInWork
{
Id = Guid.NewGuid(),
@@ -167,6 +172,11 @@ namespace PARR.API.Controllers.V1
if (!resultValidate.IsValid)
return BadRequest(new Response(resultValidate.Errors));
//уникальная запись по полям ApplicationId, WorkId у которой id!=[FromRoute]id
var existSameAiW = await applicationsInWorkService.Get().FirstOrDefaultAsync(t => t.Id != id && t.ApplicationId == request.ApplicationId && t.WorkId == request.WorkId);
if (existSameAiW != null)
return BadRequest(new Response(false, new List<ErrorModel> { new ErrorModel { Message = "Задание на выполнение работ с такими ПО и работой уже существует" } }));
var orig = await applicationsInWorkService.GetAsync(id);
if (orig == null)