This commit is contained in:
Suphonchai Phoonsawat 2024-06-20 13:37:25 +07:00
parent 6c09c68c5c
commit 1ae6f5e8d1
23 changed files with 304 additions and 123 deletions

View file

@ -87,7 +87,7 @@ namespace BMA.EHR.Leave.Service.Controllers
get
{
if (UserId != null || UserId != "")
return _userProfileRepository.GetUserOCId(Guid.Parse(UserId!));
return _userProfileRepository.GetUserOCId(Guid.Parse(UserId!), AccessToken);
else
return Guid.Empty;
}
@ -113,7 +113,7 @@ namespace BMA.EHR.Leave.Service.Controllers
await _leaveRequestRepository.GetLastLeaveRequestByTypeForUserAsync(data.KeycloakUserId,
data.Type.Id);
var rootOc = _userProfileRepository.GetRootOcId(profile.OcId ?? Guid.Empty);
var rootOc = _userProfileRepository.GetRootOcId(profile.OcId ?? Guid.Empty, AccessToken);
var approver = string.Empty;
if (rootOc != null)
{
@ -164,7 +164,7 @@ namespace BMA.EHR.Leave.Service.Controllers
var fullName = $"{profile!.Prefix}{profile!.FirstName} {profile!.LastName}";
var rootOc = _userProfileRepository.GetRootOcId(profile.OcId ?? Guid.Empty);
var rootOc = _userProfileRepository.GetRootOcId(profile.OcId ?? Guid.Empty, AccessToken);
var approver = string.Empty;
if (rootOc != null)
{
@ -208,7 +208,7 @@ namespace BMA.EHR.Leave.Service.Controllers
var fullName = $"{profile!.Prefix}{profile!.FirstName} {profile!.LastName}";
var rootOc = _userProfileRepository.GetRootOcId(profile.OcId ?? Guid.Empty);
var rootOc = _userProfileRepository.GetRootOcId(profile.OcId ?? Guid.Empty, AccessToken);
var approver = string.Empty;
if (rootOc != null)
{
@ -259,7 +259,7 @@ namespace BMA.EHR.Leave.Service.Controllers
var fullName = $"{profile!.Prefix}{profile!.FirstName} {profile!.LastName}";
var rootOc = _userProfileRepository.GetRootOcId(profile.OcId ?? Guid.Empty);
var rootOc = _userProfileRepository.GetRootOcId(profile.OcId ?? Guid.Empty, AccessToken);
var approver = string.Empty;
if (rootOc != null)
{
@ -342,7 +342,7 @@ namespace BMA.EHR.Leave.Service.Controllers
var fullName = $"{profile!.Prefix}{profile!.FirstName} {profile!.LastName}";
var rootOc = _userProfileRepository.GetRootOcId(profile.OcId ?? Guid.Empty);
var rootOc = _userProfileRepository.GetRootOcId(profile.OcId ?? Guid.Empty, AccessToken);
var approver = string.Empty;
if (rootOc != null)
{
@ -390,7 +390,7 @@ namespace BMA.EHR.Leave.Service.Controllers
var fullName = $"{profile!.Prefix}{profile!.FirstName} {profile!.LastName}";
var rootOc = _userProfileRepository.GetRootOcId(profile.OcId ?? Guid.Empty);
var rootOc = _userProfileRepository.GetRootOcId(profile.OcId ?? Guid.Empty, AccessToken);
var approver = string.Empty;
if (rootOc != null)
{
@ -445,7 +445,7 @@ namespace BMA.EHR.Leave.Service.Controllers
var fullName = $"{profile!.Prefix}{profile!.FirstName} {profile!.LastName}";
var rootOc = _userProfileRepository.GetRootOcId(profile.OcId ?? Guid.Empty);
var rootOc = _userProfileRepository.GetRootOcId(profile.OcId ?? Guid.Empty, AccessToken);
var approver = string.Empty;
if (rootOc != null)
{
@ -487,7 +487,7 @@ namespace BMA.EHR.Leave.Service.Controllers
var fullName = $"{profile!.Prefix}{profile!.FirstName} {profile!.LastName}";
var rootOc = _userProfileRepository.GetRootOcId(profile.OcId ?? Guid.Empty);
var rootOc = _userProfileRepository.GetRootOcId(profile.OcId ?? Guid.Empty, AccessToken);
var approver = string.Empty;
if (rootOc != null)
{
@ -542,7 +542,7 @@ namespace BMA.EHR.Leave.Service.Controllers
var fullName = $"{profile!.Prefix}{profile!.FirstName} {profile!.LastName}";
var rootOc = _userProfileRepository.GetRootOcId(profile.OcId ?? Guid.Empty);
var rootOc = _userProfileRepository.GetRootOcId(profile.OcId ?? Guid.Empty, AccessToken);
var approver = string.Empty;
if (rootOc != null)
{
@ -692,7 +692,7 @@ namespace BMA.EHR.Leave.Service.Controllers
var fullName = $"{profile!.Prefix}{profile!.FirstName} {profile!.LastName}";
var rootOc = _userProfileRepository.GetRootOcId(profile.OcId ?? Guid.Empty);
var rootOc = _userProfileRepository.GetRootOcId(profile.OcId ?? Guid.Empty, AccessToken);
var approver = string.Empty;
if (rootOc != null)
{
@ -749,7 +749,7 @@ namespace BMA.EHR.Leave.Service.Controllers
try
{
//var profile = await _userProfileRepository.SearchProfile(null, null, null);
var profile = await _userProfileRepository.GetProfileWithKeycloak();
var profile = await _userProfileRepository.GetProfileWithKeycloak(AccessToken);
var count = 1;
var employees = new List<dynamic>();
@ -761,7 +761,7 @@ namespace BMA.EHR.Leave.Service.Controllers
var sickType = await _leaveTypeRepository.GetLeaveTypeByCodeAsync("LV-001");
if (sickType == null)
return Error(GlobalMessages.DataNotFound, StatusCodes.Status404NotFound);
var sickDayCount = await _leaveRequestRepository.GetSumApproveLeaveByTypeAndRangeForUser(p.KeycloakId ?? Guid.Empty,
var sickDayCount = await _leaveRequestRepository.GetSumApproveLeaveByTypeAndRangeForUser(p.Keycloak ?? Guid.Empty,
sickType.Id,
req.StartDate,
req.EndDate);
@ -769,7 +769,7 @@ namespace BMA.EHR.Leave.Service.Controllers
var personalType = await _leaveTypeRepository.GetLeaveTypeByCodeAsync("LV-002");
if (personalType == null)
return Error(GlobalMessages.DataNotFound, StatusCodes.Status404NotFound);
var personalDayCount = await _leaveRequestRepository.GetSumApproveLeaveByTypeAndRangeForUser(p.KeycloakId ?? Guid.Empty,
var personalDayCount = await _leaveRequestRepository.GetSumApproveLeaveByTypeAndRangeForUser(p.Keycloak ?? Guid.Empty,
personalType.Id,
req.StartDate,
req.EndDate);
@ -777,7 +777,7 @@ namespace BMA.EHR.Leave.Service.Controllers
var maternityType = await _leaveTypeRepository.GetLeaveTypeByCodeAsync("LV-003");
if (maternityType == null)
return Error(GlobalMessages.DataNotFound, StatusCodes.Status404NotFound);
var maternityDayCount = await _leaveRequestRepository.GetSumApproveLeaveByTypeAndRangeForUser(p.KeycloakId ?? Guid.Empty,
var maternityDayCount = await _leaveRequestRepository.GetSumApproveLeaveByTypeAndRangeForUser(p.Keycloak ?? Guid.Empty,
maternityType.Id,
req.StartDate,
req.EndDate);
@ -785,7 +785,7 @@ namespace BMA.EHR.Leave.Service.Controllers
var wifeType = await _leaveTypeRepository.GetLeaveTypeByCodeAsync("LV-004");
if (wifeType == null)
return Error(GlobalMessages.DataNotFound, StatusCodes.Status404NotFound);
var wifeDayCount = await _leaveRequestRepository.GetSumApproveLeaveByTypeAndRangeForUser(p.KeycloakId ?? Guid.Empty,
var wifeDayCount = await _leaveRequestRepository.GetSumApproveLeaveByTypeAndRangeForUser(p.Keycloak ?? Guid.Empty,
wifeType.Id,
req.StartDate,
req.EndDate);
@ -793,7 +793,7 @@ namespace BMA.EHR.Leave.Service.Controllers
var restType = await _leaveTypeRepository.GetLeaveTypeByCodeAsync("LV-005");
if (restType == null)
return Error(GlobalMessages.DataNotFound, StatusCodes.Status404NotFound);
var restDayCount = await _leaveRequestRepository.GetSumApproveLeaveByTypeAndRangeForUser(p.KeycloakId ?? Guid.Empty,
var restDayCount = await _leaveRequestRepository.GetSumApproveLeaveByTypeAndRangeForUser(p.Keycloak ?? Guid.Empty,
restType.Id,
req.StartDate,
req.EndDate);
@ -801,7 +801,7 @@ namespace BMA.EHR.Leave.Service.Controllers
var ordainType = await _leaveTypeRepository.GetLeaveTypeByCodeAsync("LV-006");
if (ordainType == null)
return Error(GlobalMessages.DataNotFound, StatusCodes.Status404NotFound);
var ordainDayCount = await _leaveRequestRepository.GetSumApproveLeaveByTypeAndRangeForUser(p.KeycloakId ?? Guid.Empty,
var ordainDayCount = await _leaveRequestRepository.GetSumApproveLeaveByTypeAndRangeForUser(p.Keycloak ?? Guid.Empty,
ordainType.Id,
req.StartDate,
req.EndDate);
@ -809,7 +809,7 @@ namespace BMA.EHR.Leave.Service.Controllers
var absentType = await _leaveTypeRepository.GetLeaveTypeByCodeAsync("LV-007");
if (absentType == null)
return Error(GlobalMessages.DataNotFound, StatusCodes.Status404NotFound);
var absentDayCount = await _leaveRequestRepository.GetSumApproveLeaveByTypeAndRangeForUser(p.KeycloakId ?? Guid.Empty,
var absentDayCount = await _leaveRequestRepository.GetSumApproveLeaveByTypeAndRangeForUser(p.Keycloak ?? Guid.Empty,
absentType.Id,
req.StartDate,
req.EndDate);
@ -817,7 +817,7 @@ namespace BMA.EHR.Leave.Service.Controllers
var studyType = await _leaveTypeRepository.GetLeaveTypeByCodeAsync("LV-008");
if (studyType == null)
return Error(GlobalMessages.DataNotFound, StatusCodes.Status404NotFound);
var studyDayCount = await _leaveRequestRepository.GetSumApproveLeaveByTypeAndRangeForUser(p.KeycloakId ?? Guid.Empty,
var studyDayCount = await _leaveRequestRepository.GetSumApproveLeaveByTypeAndRangeForUser(p.Keycloak ?? Guid.Empty,
studyType.Id,
req.StartDate,
req.EndDate);
@ -825,7 +825,7 @@ namespace BMA.EHR.Leave.Service.Controllers
var agencyType = await _leaveTypeRepository.GetLeaveTypeByCodeAsync("LV-009");
if (agencyType == null)
return Error(GlobalMessages.DataNotFound, StatusCodes.Status404NotFound);
var agencyDayCount = await _leaveRequestRepository.GetSumApproveLeaveByTypeAndRangeForUser(p.KeycloakId ?? Guid.Empty,
var agencyDayCount = await _leaveRequestRepository.GetSumApproveLeaveByTypeAndRangeForUser(p.Keycloak ?? Guid.Empty,
agencyType.Id,
req.StartDate,
req.EndDate);
@ -833,7 +833,7 @@ namespace BMA.EHR.Leave.Service.Controllers
var coupleType = await _leaveTypeRepository.GetLeaveTypeByCodeAsync("LV-010");
if (coupleType == null)
return Error(GlobalMessages.DataNotFound, StatusCodes.Status404NotFound);
var coupleDayCount = await _leaveRequestRepository.GetSumApproveLeaveByTypeAndRangeForUser(p.KeycloakId ?? Guid.Empty,
var coupleDayCount = await _leaveRequestRepository.GetSumApproveLeaveByTypeAndRangeForUser(p.Keycloak ?? Guid.Empty,
coupleType.Id,
req.StartDate,
req.EndDate);
@ -841,12 +841,12 @@ namespace BMA.EHR.Leave.Service.Controllers
var therapyType = await _leaveTypeRepository.GetLeaveTypeByCodeAsync("LV-011");
if (therapyType == null)
return Error(GlobalMessages.DataNotFound, StatusCodes.Status404NotFound);
var therapyDayCount = await _leaveRequestRepository.GetSumApproveLeaveByTypeAndRangeForUser(p.KeycloakId ?? Guid.Empty,
var therapyDayCount = await _leaveRequestRepository.GetSumApproveLeaveByTypeAndRangeForUser(p.Keycloak ?? Guid.Empty,
therapyType.Id,
req.StartDate,
req.EndDate);
var timeStamps = await _processUserTimeStampRepository.GetTimeStampHistoryByRangeForUserAsync(p.KeycloakId ?? Guid.Empty,
var timeStamps = await _processUserTimeStampRepository.GetTimeStampHistoryByRangeForUserAsync(p.Keycloak ?? Guid.Empty,
req.StartDate,
req.EndDate);
@ -890,10 +890,10 @@ namespace BMA.EHR.Leave.Service.Controllers
var emp = new
{
no = count,
fullName = _userProfileRepository.GetUserFullName(p.KeycloakId ?? Guid.Empty),
position = p.Position == null ? "" : p.Position.Name,
positionLevel = p.PositionLevel == null ? "" : p.PositionLevel.Name,
posNo = p.PosNo == null ? "" : p.PosNo.Name,
fullName = _userProfileRepository.GetUserFullName(p.Keycloak ?? Guid.Empty, AccessToken),
position = p.Position == null ? "" : p.Position,
positionLevel = p.PosLevel == null ? "" : p.PosLevel.PosLevelName,
posNo = p.PosNo ?? "",
reason = "",
sickDayCount = sickDayCount,
@ -966,7 +966,7 @@ namespace BMA.EHR.Leave.Service.Controllers
{
try
{
var profile = await _userProfileRepository.SearchProfileEmployee(null, null, null);
var profile = await _userProfileRepository.SearchProfileEmployee(null, null, null, AccessToken ?? "");
var count = 1;
var employees = new List<dynamic>();
@ -977,11 +977,12 @@ namespace BMA.EHR.Leave.Service.Controllers
var sickType = await _leaveTypeRepository.GetLeaveTypeByCodeAsync("LV-001");
if (sickType == null)
return Error(GlobalMessages.DataNotFound, StatusCodes.Status404NotFound);
var sickDayCount = await _leaveRequestRepository.GetSumApproveLeaveByTypeAndRangeForUser(p.KeycloakId ?? Guid.Empty,
var sickDayCount = await _leaveRequestRepository.GetSumApproveLeaveByTypeAndRangeForUser(p.Keycloak ?? Guid.Empty,
sickType.Id,
req.StartDate,
req.EndDate);
var sickCount = await _leaveRequestRepository.GetCountApproveLeaveByTypeAndRangeForUser(p.KeycloakId ?? Guid.Empty,
var sickCount = await _leaveRequestRepository.GetCountApproveLeaveByTypeAndRangeForUser(p.Keycloak ?? Guid.Empty,
sickType.Id,
req.StartDate,
req.EndDate);
@ -989,12 +990,12 @@ namespace BMA.EHR.Leave.Service.Controllers
var personalType = await _leaveTypeRepository.GetLeaveTypeByCodeAsync("LV-002");
if (personalType == null)
return Error(GlobalMessages.DataNotFound, StatusCodes.Status404NotFound);
var personalDayCount = await _leaveRequestRepository.GetSumApproveLeaveByTypeAndRangeForUser(p.KeycloakId ?? Guid.Empty,
var personalDayCount = await _leaveRequestRepository.GetSumApproveLeaveByTypeAndRangeForUser(p.Keycloak ?? Guid.Empty,
personalType.Id,
req.StartDate,
req.EndDate);
var personalCount = await _leaveRequestRepository.GetCountApproveLeaveByTypeAndRangeForUser(p.KeycloakId ?? Guid.Empty,
var personalCount = await _leaveRequestRepository.GetCountApproveLeaveByTypeAndRangeForUser(p.Keycloak ?? Guid.Empty,
personalType.Id,
req.StartDate,
req.EndDate);
@ -1002,7 +1003,7 @@ namespace BMA.EHR.Leave.Service.Controllers
var maternityType = await _leaveTypeRepository.GetLeaveTypeByCodeAsync("LV-003");
if (maternityType == null)
return Error(GlobalMessages.DataNotFound, StatusCodes.Status404NotFound);
var maternityDayCount = await _leaveRequestRepository.GetSumApproveLeaveByTypeAndRangeForUser(p.KeycloakId ?? Guid.Empty,
var maternityDayCount = await _leaveRequestRepository.GetSumApproveLeaveByTypeAndRangeForUser(p.Keycloak ?? Guid.Empty,
maternityType.Id,
req.StartDate,
req.EndDate);
@ -1010,7 +1011,7 @@ namespace BMA.EHR.Leave.Service.Controllers
var wifeType = await _leaveTypeRepository.GetLeaveTypeByCodeAsync("LV-004");
if (wifeType == null)
return Error(GlobalMessages.DataNotFound, StatusCodes.Status404NotFound);
var wifeDayCount = await _leaveRequestRepository.GetSumApproveLeaveByTypeAndRangeForUser(p.KeycloakId ?? Guid.Empty,
var wifeDayCount = await _leaveRequestRepository.GetSumApproveLeaveByTypeAndRangeForUser(p.Keycloak ?? Guid.Empty,
wifeType.Id,
req.StartDate,
req.EndDate);
@ -1018,7 +1019,7 @@ namespace BMA.EHR.Leave.Service.Controllers
var restType = await _leaveTypeRepository.GetLeaveTypeByCodeAsync("LV-005");
if (restType == null)
return Error(GlobalMessages.DataNotFound, StatusCodes.Status404NotFound);
var restDayCount = await _leaveRequestRepository.GetSumApproveLeaveByTypeAndRangeForUser(p.KeycloakId ?? Guid.Empty,
var restDayCount = await _leaveRequestRepository.GetSumApproveLeaveByTypeAndRangeForUser(p.Keycloak ?? Guid.Empty,
restType.Id,
req.StartDate,
req.EndDate);
@ -1026,12 +1027,12 @@ namespace BMA.EHR.Leave.Service.Controllers
var ordainType = await _leaveTypeRepository.GetLeaveTypeByCodeAsync("LV-006");
if (ordainType == null)
return Error(GlobalMessages.DataNotFound, StatusCodes.Status404NotFound);
var ordainDayCount = await _leaveRequestRepository.GetSumApproveLeaveByTypeAndRangeForUser(p.KeycloakId ?? Guid.Empty,
var ordainDayCount = await _leaveRequestRepository.GetSumApproveLeaveByTypeAndRangeForUser(p.Keycloak ?? Guid.Empty,
ordainType.Id,
req.StartDate,
req.EndDate);
var timeStamps = await _processUserTimeStampRepository.GetTimeStampHistoryByRangeForUserAsync(p.KeycloakId ?? Guid.Empty,
var timeStamps = await _processUserTimeStampRepository.GetTimeStampHistoryByRangeForUserAsync(p.Keycloak ?? Guid.Empty,
req.StartDate,
req.EndDate);
@ -1074,7 +1075,7 @@ namespace BMA.EHR.Leave.Service.Controllers
var emp = new
{
no = count,
fullName = _userProfileRepository.GetUserFullName(p.KeycloakId ?? Guid.Empty),
fullName = _userProfileRepository.GetUserFullName(p.Keycloak ?? Guid.Empty, AccessToken),
posNo = p.PosNoEmployee ?? "",
reason = "",
@ -1137,7 +1138,7 @@ namespace BMA.EHR.Leave.Service.Controllers
try
{
//var profile = await _userProfileRepository.SearchProfile(null, null, null);
var profile = await _userProfileRepository.GetProfileWithKeycloak();
var profile = await _userProfileRepository.GetProfileWithKeycloak(AccessToken);
var date = req.StartDate.Date;
var holidays = await _holidayRepository.GetHolidayAsync(req.StartDate.Date, req.EndDate.Date);
@ -1168,11 +1169,11 @@ namespace BMA.EHR.Leave.Service.Controllers
foreach (var p in profile)
{
var keycloakUserId = p.KeycloakId ?? Guid.Empty;
var keycloakUserId = p.Keycloak ?? Guid.Empty;
var timeStamps = await _processUserTimeStampRepository.GetTimestampByDateAsync(keycloakUserId, dd);
var fullName = _userProfileRepository.GetUserFullName(keycloakUserId);
var fullName = _userProfileRepository.GetUserFullName(keycloakUserId, AccessToken);
var defaultRound = await _dutyTimeRepository.GetDefaultAsync();