add time request status
This commit is contained in:
@@ -15,12 +15,11 @@ public interface ISalaryAidRepository:IRepository<long,SalaryAid>
|
|||||||
void RemoveRange(IEnumerable<SalaryAid> salaryAids);
|
void RemoveRange(IEnumerable<SalaryAid> salaryAids);
|
||||||
|
|
||||||
#region Pooya
|
#region Pooya
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// گروهبندی بر اساس ماه هنگام جستجو با انتخاب کارمند
|
/// گروهبندی بر اساس ماه هنگام جستجو با انتخاب کارمند
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|
||||||
SalaryAidsGroupedViewModel GetSearchListAsGrouped(SalaryAidSearchViewModel searchModel);
|
SalaryAidsGroupedViewModel GetSearchListAsGrouped(SalaryAidSearchViewModel searchModel);
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -35,7 +35,7 @@ public class CreateTimeRequestCommandHandler : IBaseCommandHandler<CreateTimeReq
|
|||||||
var requestTimeSpan = TimeSpan.FromHours(request.Hours) + TimeSpan.FromMinutes(request.Minutes);
|
var requestTimeSpan = TimeSpan.FromHours(request.Hours) + TimeSpan.FromMinutes(request.Minutes);
|
||||||
|
|
||||||
var entity = new TaskSectionTimeRequest(currentUser.Value, request.Description, requestTimeSpan,
|
var entity = new TaskSectionTimeRequest(currentUser.Value, request.Description, requestTimeSpan,
|
||||||
TaskSectionTimeRequestType.RejectedTime,);
|
TaskSectionTimeRequestType.RejectedTime,request.TaskSectionId);
|
||||||
await _timeRequestRepository.CreateAsync(entity);
|
await _timeRequestRepository.CreateAsync(entity);
|
||||||
await _unitOfWork.SaveChangesAsync(cancellationToken);
|
await _unitOfWork.SaveChangesAsync(cancellationToken);
|
||||||
return OperationResult.Success();
|
return OperationResult.Success();
|
||||||
|
|||||||
@@ -5,6 +5,7 @@ namespace GozareshgirProgramManager.Domain.ProjectAgg.Entities;
|
|||||||
|
|
||||||
public class TaskSectionTimeRequest:EntityBase<Guid>
|
public class TaskSectionTimeRequest:EntityBase<Guid>
|
||||||
{
|
{
|
||||||
|
|
||||||
public TaskSectionTimeRequest(long userId, string description,
|
public TaskSectionTimeRequest(long userId, string description,
|
||||||
TimeSpan requestedTime, TaskSectionTimeRequestType requestType,
|
TimeSpan requestedTime, TaskSectionTimeRequestType requestType,
|
||||||
Guid taskSectionId)
|
Guid taskSectionId)
|
||||||
@@ -14,6 +15,7 @@ public class TaskSectionTimeRequest:EntityBase<Guid>
|
|||||||
RequestedTime = requestedTime;
|
RequestedTime = requestedTime;
|
||||||
RequestType = requestType;
|
RequestType = requestType;
|
||||||
TaskSectionId = taskSectionId;
|
TaskSectionId = taskSectionId;
|
||||||
|
RequestStatus = TaskSectionTimeRequestStatus.Pending;
|
||||||
}
|
}
|
||||||
|
|
||||||
public TaskSection TaskSection { get; set; }
|
public TaskSection TaskSection { get; set; }
|
||||||
@@ -22,6 +24,6 @@ public class TaskSectionTimeRequest:EntityBase<Guid>
|
|||||||
public string Description { get; private set; }
|
public string Description { get; private set; }
|
||||||
public TimeSpan RequestedTime { get; private set; }
|
public TimeSpan RequestedTime { get; private set; }
|
||||||
public TaskSectionTimeRequestType RequestType { get; private set; }
|
public TaskSectionTimeRequestType RequestType { get; private set; }
|
||||||
|
public TaskSectionTimeRequestStatus RequestStatus { get; private set; }
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
namespace GozareshgirProgramManager.Domain.ProjectAgg.Enums;
|
||||||
|
|
||||||
|
public enum TaskSectionTimeRequestStatus
|
||||||
|
{
|
||||||
|
Pending,
|
||||||
|
Accepted,
|
||||||
|
Rejected
|
||||||
|
}
|
||||||
@@ -1,3 +1,4 @@
|
|||||||
|
using System.Runtime.InteropServices;
|
||||||
using GozareshgirProgramManager.Application._Common.Models;
|
using GozareshgirProgramManager.Application._Common.Models;
|
||||||
using GozareshgirProgramManager.Application.Modules.TaskSectionTimeRequests.Commands.CreateTimeRequest;
|
using GozareshgirProgramManager.Application.Modules.TaskSectionTimeRequests.Commands.CreateTimeRequest;
|
||||||
using GozareshgirProgramManager.Domain.ProjectAgg.Enums;
|
using GozareshgirProgramManager.Domain.ProjectAgg.Enums;
|
||||||
@@ -17,31 +18,31 @@ public class TimeRequestController:ProgramManagerBaseController
|
|||||||
}
|
}
|
||||||
|
|
||||||
[HttpPost("Rejected")]
|
[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,
|
var command = new CreateTimeRequestCommand(request.Hours, request.Minutes, request.Description,
|
||||||
TaskSectionTimeRequestType.RejectedTime);
|
TaskSectionTimeRequestType.RejectedTime,request.TaskSectionId);
|
||||||
var res = await _mediator.Send(command);
|
var res = await _mediator.Send(command);
|
||||||
return res;
|
return res;
|
||||||
}
|
}
|
||||||
|
|
||||||
[HttpPost("Initial")]
|
[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,
|
var command = new CreateTimeRequestCommand(request.Hours, request.Minutes, request.Description,
|
||||||
TaskSectionTimeRequestType.InitialTime);
|
TaskSectionTimeRequestType.InitialTime,request.TaskSectionId);
|
||||||
var res = await _mediator.Send(command);
|
var res = await _mediator.Send(command);
|
||||||
return res;
|
return res;
|
||||||
}
|
}
|
||||||
|
|
||||||
[HttpPost("Additional")]
|
[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,
|
var command = new CreateTimeRequestCommand(request.Hours, request.Minutes, request.Description,
|
||||||
TaskSectionTimeRequestType.AdditionalTime);
|
TaskSectionTimeRequestType.AdditionalTime,request.TaskSectionId);
|
||||||
var res = await _mediator.Send(command);
|
var res = await _mediator.Send(command);
|
||||||
return res;
|
return res;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public record CreateRejectedTimeRequest(int Hours, int Minutes, string Description);
|
public record CreateTimeRequest(int Hours, int Minutes, string Description,Guid TaskSectionId);
|
||||||
Reference in New Issue
Block a user