diff --git a/ProgramManager/src/Application/GozareshgirProgramManager.Application/Modules/TaskSectionRevision/Queries/TaskRevisionsByTaskSectionId/TaskRevisionsByTaskSectionIdQuery.cs b/ProgramManager/src/Application/GozareshgirProgramManager.Application/Modules/TaskSectionRevision/Queries/TaskRevisionsByTaskSectionId/TaskRevisionsByTaskSectionIdQuery.cs index f8ff4ec0..d4988f58 100644 --- a/ProgramManager/src/Application/GozareshgirProgramManager.Application/Modules/TaskSectionRevision/Queries/TaskRevisionsByTaskSectionId/TaskRevisionsByTaskSectionIdQuery.cs +++ b/ProgramManager/src/Application/GozareshgirProgramManager.Application/Modules/TaskSectionRevision/Queries/TaskRevisionsByTaskSectionId/TaskRevisionsByTaskSectionIdQuery.cs @@ -1,5 +1,6 @@ using GozareshgirProgramManager.Application._Common.Interfaces; using GozareshgirProgramManager.Application._Common.Models; +using GozareshgirProgramManager.Domain._Common; using Microsoft.EntityFrameworkCore; namespace GozareshgirProgramManager.Application.Modules.TaskSectionRevision.Queries.TaskRevisionsByTaskSectionId; @@ -20,17 +21,18 @@ public class TaskRevisionsByTaskSectionIdQueryHandler : IBaseQueryHandler> Handle( TaskRevisionsByTaskSectionIdQuery request, CancellationToken cancellationToken) { - var taskEntity = await _dbContext.TaskSections + var taskSectionEntity = await _dbContext.TaskSections .Include(x=>x.Task) .ThenInclude(x => x.Phase) .ThenInclude(x => x.Project) .FirstOrDefaultAsync(x => x.Id == request.TaskSectionId, cancellationToken: cancellationToken); - if (taskEntity == null) + + if (taskSectionEntity == null) { return OperationResult.NotFound("بخش فرعی یافت نشد"); } - + var taskRevisions = await _dbContext.TaskSectionRevisions .Include(x => x.Files).Where(x => x.TaskSectionId == request.TaskSectionId) .ToListAsync(cancellationToken); @@ -39,6 +41,18 @@ public class TaskRevisionsByTaskSectionIdQueryHandler : IBaseQueryHandler.NotFound("اصلاحی یافت نشد"); } + var skill = await _dbContext.Skills.FirstOrDefaultAsync(x => x.Id == taskSectionEntity.SkillId, + cancellationToken: cancellationToken); + + if (skill == null) + return OperationResult.NotFound("مهارت مورد نظر یافت نشد"); + + + var user =await _dbContext.Users.FirstOrDefaultAsync(x => x.Id == taskSectionEntity.CurrentAssignedUserId, + cancellationToken: cancellationToken); + if (user == null) + return OperationResult.NotFound("کاربر مورد نظر یافت نشد"); + var fileIds = taskRevisions.SelectMany(x => x.Files) .Select(x => x.FileId).Distinct().ToList(); @@ -64,11 +78,14 @@ public class TaskRevisionsByTaskSectionIdQueryHandler : IBaseQueryHandler.Success(res); } diff --git a/ProgramManager/src/Application/GozareshgirProgramManager.Application/Modules/TaskSectionRevision/Queries/TaskRevisionsByTaskSectionId/TaskRevisionsByTaskSectionIdResponse.cs b/ProgramManager/src/Application/GozareshgirProgramManager.Application/Modules/TaskSectionRevision/Queries/TaskRevisionsByTaskSectionId/TaskRevisionsByTaskSectionIdResponse.cs index cc0fdcd2..d8c6a0ff 100644 --- a/ProgramManager/src/Application/GozareshgirProgramManager.Application/Modules/TaskSectionRevision/Queries/TaskRevisionsByTaskSectionId/TaskRevisionsByTaskSectionIdResponse.cs +++ b/ProgramManager/src/Application/GozareshgirProgramManager.Application/Modules/TaskSectionRevision/Queries/TaskRevisionsByTaskSectionId/TaskRevisionsByTaskSectionIdResponse.cs @@ -4,10 +4,12 @@ public record TaskRevisionsByTaskSectionIdResponse( List Items, string ProjectName, string PhaseName, - string TaskName); + string TaskName, + string SkillName, + string UserName); -public record TaskRevisionsByTaskSectionIdItem(string Message, List Files); +public record TaskRevisionsByTaskSectionIdItem(string Message, List Files,string CreationDate); public class TaskRevisionsByTaskSectionIdItemFile {