add time request status

This commit is contained in:
2026-01-20 11:01:58 +03:30
parent bd12ff0506
commit 4bde4ade2d
5 changed files with 21 additions and 11 deletions

View File

@@ -15,12 +15,11 @@ public interface ISalaryAidRepository:IRepository<long,SalaryAid>
void RemoveRange(IEnumerable<SalaryAid> salaryAids);
#region Pooya
/// <summary>
/// گروهبندی بر اساس ماه هنگام جستجو با انتخاب کارمند
/// </summary>
SalaryAidsGroupedViewModel GetSearchListAsGrouped(SalaryAidSearchViewModel searchModel);
SalaryAidsGroupedViewModel GetSearchListAsGrouped(SalaryAidSearchViewModel searchModel);
#endregion
}

View File

@@ -35,7 +35,7 @@ public class CreateTimeRequestCommandHandler : IBaseCommandHandler<CreateTimeReq
var requestTimeSpan = TimeSpan.FromHours(request.Hours) + TimeSpan.FromMinutes(request.Minutes);
var entity = new TaskSectionTimeRequest(currentUser.Value, request.Description, requestTimeSpan,
TaskSectionTimeRequestType.RejectedTime,);
TaskSectionTimeRequestType.RejectedTime,request.TaskSectionId);
await _timeRequestRepository.CreateAsync(entity);
await _unitOfWork.SaveChangesAsync(cancellationToken);
return OperationResult.Success();

View File

@@ -5,6 +5,7 @@ namespace GozareshgirProgramManager.Domain.ProjectAgg.Entities;
public class TaskSectionTimeRequest:EntityBase<Guid>
{
public TaskSectionTimeRequest(long userId, string description,
TimeSpan requestedTime, TaskSectionTimeRequestType requestType,
Guid taskSectionId)
@@ -14,6 +15,7 @@ public class TaskSectionTimeRequest:EntityBase<Guid>
RequestedTime = requestedTime;
RequestType = requestType;
TaskSectionId = taskSectionId;
RequestStatus = TaskSectionTimeRequestStatus.Pending;
}
public TaskSection TaskSection { get; set; }
@@ -22,6 +24,6 @@ public class TaskSectionTimeRequest:EntityBase<Guid>
public string Description { get; private set; }
public TimeSpan RequestedTime { get; private set; }
public TaskSectionTimeRequestType RequestType { get; private set; }
public TaskSectionTimeRequestStatus RequestStatus { get; private set; }
}

View File

@@ -0,0 +1,8 @@
namespace GozareshgirProgramManager.Domain.ProjectAgg.Enums;
public enum TaskSectionTimeRequestStatus
{
Pending,
Accepted,
Rejected
}

View File

@@ -1,3 +1,4 @@
using System.Runtime.InteropServices;
using GozareshgirProgramManager.Application._Common.Models;
using GozareshgirProgramManager.Application.Modules.TaskSectionTimeRequests.Commands.CreateTimeRequest;
using GozareshgirProgramManager.Domain.ProjectAgg.Enums;
@@ -17,31 +18,31 @@ public class TimeRequestController:ProgramManagerBaseController
}
[HttpPost("Rejected")]
public async Task<ActionResult<OperationResult>> CreateRejectedTimeRequest(CreateRejectedTimeRequest request)
public async Task<ActionResult<OperationResult>> CreateRejectedTimeRequest(CreateTimeRequest request)
{
var command = new CreateTimeRequestCommand(request.Hours, request.Minutes, request.Description,
TaskSectionTimeRequestType.RejectedTime);
TaskSectionTimeRequestType.RejectedTime,request.TaskSectionId);
var res = await _mediator.Send(command);
return res;
}
[HttpPost("Initial")]
public async Task<ActionResult<OperationResult>> CreateInitialTimeRequest(CreateRejectedTimeRequest request)
public async Task<ActionResult<OperationResult>> CreateInitialTimeRequest(CreateTimeRequest request)
{
var command = new CreateTimeRequestCommand(request.Hours, request.Minutes, request.Description,
TaskSectionTimeRequestType.InitialTime);
TaskSectionTimeRequestType.InitialTime,request.TaskSectionId);
var res = await _mediator.Send(command);
return res;
}
[HttpPost("Additional")]
public async Task<ActionResult<OperationResult>> CreateAdditionalTimeRequest(CreateRejectedTimeRequest request)
public async Task<ActionResult<OperationResult>> CreateAdditionalTimeRequest(CreateTimeRequest request)
{
var command = new CreateTimeRequestCommand(request.Hours, request.Minutes, request.Description,
TaskSectionTimeRequestType.AdditionalTime);
TaskSectionTimeRequestType.AdditionalTime,request.TaskSectionId);
var res = await _mediator.Send(command);
return res;
}
}
public record CreateRejectedTimeRequest(int Hours, int Minutes, string Description);
public record CreateTimeRequest(int Hours, int Minutes, string Description,Guid TaskSectionId);