change LeaveTotal to Double

This commit is contained in:
Suphonchai Phoonsawat 2023-12-21 14:30:10 +07:00
parent d7be2da281
commit 7ce1b11244
8 changed files with 1085 additions and 24 deletions

View file

@ -119,6 +119,7 @@ namespace BMA.EHR.Application.Repositories.Leaves.LeaveRequests
var data = await _dbContext.Set<LeaveRequest>().AsQueryable()
.Include(x => x.Type)
.Where(x => x.LeaveStartDate.Year == year)
.Where(x => x.LeaveStatus != "REJECT" || x.LeaveStatus != "DELETE")
.ToListAsync();
return data;
@ -162,7 +163,7 @@ namespace BMA.EHR.Application.Repositories.Leaves.LeaveRequests
return await rawData.ToListAsync();
}
public async Task<int> GetRestDayTotalByYearForUserAsync(Guid keycloakUserId, int year)
public async Task<double> GetRestDayTotalByYearForUserAsync(Guid keycloakUserId, int year)
{
var leaveType = await _dbContext.Set<LeaveType>().AsQueryable().FirstOrDefaultAsync(l => l.Code.Trim().ToUpper() == "LV-005");
@ -181,13 +182,14 @@ namespace BMA.EHR.Application.Repositories.Leaves.LeaveRequests
return data;
}
public async Task<int> GetSumLeaveByTypeForUserAsync(Guid keycloakUserId, Guid leaveTypeId, int year)
public async Task<double> GetSumLeaveByTypeForUserAsync(Guid keycloakUserId, Guid leaveTypeId, int year)
{
var data = await _dbContext.Set<LeaveRequest>().AsQueryable()
.Include(x => x.Type)
.Where(x => x.KeycloakUserId == keycloakUserId)
.Where(x => x.Type.Id == leaveTypeId)
.Where(x => x.LeaveStartDate.Year == year)
.Where(x => x.LeaveStatus != "REJECT" || x.LeaveStatus != "DELETE")
.ToListAsync();
return data.Sum(x => x.LeaveTotal);
@ -199,6 +201,7 @@ namespace BMA.EHR.Application.Repositories.Leaves.LeaveRequests
.Include(x => x.Type)
.Where(x => x.KeycloakUserId == keycloakUserId)
.Where(x => x.Type.Id == leaveTypeId)
.Where(x => x.LeaveStatus != "REJECT" || x.LeaveStatus != "DELETE")
.OrderByDescending(x => x.LeaveStartDate.Date)
.Select(x => x.LeaveStartDate.Date)
.FirstOrDefaultAsync();
@ -212,6 +215,7 @@ namespace BMA.EHR.Application.Repositories.Leaves.LeaveRequests
.Include(x => x.Type)
.Where(x => x.KeycloakUserId == keycloakUserId)
.Where(x => x.Type.Id == leaveTypeId)
.Where(x => x.LeaveStatus != "REJECT" || x.LeaveStatus != "DELETE")
.OrderByDescending(x => x.LeaveStartDate.Date)
.FirstOrDefaultAsync();
@ -411,7 +415,7 @@ namespace BMA.EHR.Application.Repositories.Leaves.LeaveRequests
await _appDbContext.SaveChangesAsync();
}
public async Task<int> GetSumSendLeaveByTypeForUserAsync(Guid keycloakUserId, Guid leaveTypeId, int year)
public async Task<double> GetSumSendLeaveByTypeForUserAsync(Guid keycloakUserId, Guid leaveTypeId, int year)
{
var data = await _dbContext.Set<LeaveRequest>().AsQueryable()
.Include(x => x.Type)
@ -423,7 +427,7 @@ namespace BMA.EHR.Application.Repositories.Leaves.LeaveRequests
return data.Sum(x => x.LeaveTotal);
}
public async Task<int> GetSumApproveLeaveByTypeForUserAsync(Guid keycloakUserId, Guid leaveTypeId, int year)
public async Task<double> GetSumApproveLeaveByTypeForUserAsync(Guid keycloakUserId, Guid leaveTypeId, int year)
{
var data = await _dbContext.Set<LeaveRequest>().AsQueryable()
.Include(x => x.Type)
@ -436,10 +440,10 @@ namespace BMA.EHR.Application.Repositories.Leaves.LeaveRequests
if (data.Count > 0)
return data.Sum(x => x.LeaveTotal);
else
return 0;
return 0.0;
}
public async Task<int> GetSumApproveLeaveByTypeAndRangeForUser(Guid keycloakUserId, Guid leaveTypeId, DateTime startDate, DateTime endDate)
public async Task<double> GetSumApproveLeaveByTypeAndRangeForUser(Guid keycloakUserId, Guid leaveTypeId, DateTime startDate, DateTime endDate)
{
var data = await _dbContext.Set<LeaveRequest>().AsQueryable()
.Include(x => x.Type)
@ -468,7 +472,7 @@ namespace BMA.EHR.Application.Repositories.Leaves.LeaveRequests
return data.Count;
}
public async Task<int> GetSumRejectLeaveByTypeForUserAsync(Guid keycloakUserId, Guid leaveTypeId, int year)
public async Task<double> GetSumRejectLeaveByTypeForUserAsync(Guid keycloakUserId, Guid leaveTypeId, int year)
{
var data = await _dbContext.Set<LeaveRequest>().AsQueryable()
.Include(x => x.Type)
@ -484,7 +488,7 @@ namespace BMA.EHR.Application.Repositories.Leaves.LeaveRequests
return 0;
}
public async Task<int> GetSumDeleteLeaveByTypeForUserAsync(Guid keycloakUserId, Guid leaveTypeId, int year)
public async Task<double> GetSumDeleteLeaveByTypeForUserAsync(Guid keycloakUserId, Guid leaveTypeId, int year)
{
var data = await _dbContext.Set<LeaveRequest>().AsQueryable()
.Include(x => x.Type)