rollback user/calendar & add api admin/calendar
Some checks failed
release-dev / release-dev (push) Failing after 11s

This commit is contained in:
harid 2025-12-08 17:40:12 +07:00
parent 08fb06ca84
commit 2981f865b3

View file

@ -1208,7 +1208,7 @@ namespace BMA.EHR.Leave.Service.Controllers
/// <summary>
/// LV2_004 - รายการลา Calendar (USER/ADMIN)
/// LV2_004 - รายการลา Calendar (USER)
/// </summary>
/// <returns>
/// </returns>
@ -1221,6 +1221,44 @@ namespace BMA.EHR.Leave.Service.Controllers
[ProducesResponseType(StatusCodes.Status500InternalServerError)]
public async Task<ActionResult<ResponseObject>> GetLeaveRequestCalendarAsync(
[FromBody] GetLeaveRequestCalendarDto req)
{
var userId = UserId == null ? Guid.Empty : Guid.Parse(UserId);
var data = await _leaveRequestRepository.GetLeaveRequestByYearAsync(req.Year, userId);
var resultData = (from d in data
//join p in profileList on d.KeycloakUserId equals p.Keycloak
select new GetLeaveRequestCalendarResultDto
{
Id = d.Id,
LeaveTypeId = d.Type.Id,
LeaveTypeName = d.Type.Name,
DateSendLeave = d.CreatedAt.Date,
Status = d.LeaveStatus,
FullName = $"{d.Prefix}{d.FirstName} {d.LastName}",
LeaveEndDate = d.LeaveEndDate,
LeaveStartDate = d.LeaveStartDate,
KeycloakId = d.KeycloakUserId
})
.ToList();
return Success(resultData);
}
/// <summary>
/// LV2_004 - รายการลา Calendar (ADMIN)
/// </summary>
/// <returns>
/// </returns>
/// <response code="200">เมื่อทำรายการสำเร็จ</response>
/// <response code="401">ไม่ได้ Login เข้าระบบ</response>
/// <response code="500">เมื่อเกิดข้อผิดพลาดในการทำงาน</response>
[HttpPost("admin/calendar")]
[ProducesResponseType(StatusCodes.Status200OK)]
[ProducesResponseType(StatusCodes.Status401Unauthorized)]
[ProducesResponseType(StatusCodes.Status500InternalServerError)]
public async Task<ActionResult<ResponseObject>> GetLeaveRequestCalendarAdminAsync(
[FromBody] GetLeaveRequestCalendarDto req)
{
var getPermission = await _permission.GetPermissionAPIAsync("LIST", "SYS_LEAVE_LIST");
var jsonData = JsonConvert.DeserializeObject<JObject>(getPermission);
@ -1251,14 +1289,8 @@ namespace BMA.EHR.Leave.Service.Controllers
{
nodeId = profileAdmin?.RootDnaId;
}
//var userId = UserId == null ? Guid.Empty : Guid.Parse(UserId);
//var thisYear = DateTime.Now.Year;
//var data = await _leaveRequestRepository.GetLeaveRequestByYearAsync(req.Year, userId);
var data = await _leaveRequestRepository.GetLeaveRequestByYearForAdminAsync(req.Year, role, nodeId, profileAdmin.Node);
// var profileList = await _userProfileRepository.GetProfileWithKeycloak(AccessToken);
var resultData = (from d in data
//join p in profileList on d.KeycloakUserId equals p.Keycloak
select new GetLeaveRequestCalendarResultDto
@ -1277,38 +1309,6 @@ namespace BMA.EHR.Leave.Service.Controllers
.ToList();
return Success(resultData);
//var personList = new List<GetProfileByKeycloakIdDto>();
//var result = new List<GetLeaveRequestCalendarResultDto>();
//foreach (var item in data)
//{
// var profile = personList.FirstOrDefault(x => x.Keycloak == item.KeycloakUserId);
// if (profile == null)
// {
// profile = await _userProfileRepository.GetProfileByKeycloakIdAsync(item.KeycloakUserId, AccessToken);
// personList.Add(profile);
// }
// //var profile = await _userProfileRepository.GetProfileByKeycloakIdAsync(item.KeycloakUserId, AccessToken);
// var resData = new GetLeaveRequestCalendarResultDto
// {
// Id = item.Id,
// LeaveTypeName = item.Type.Name,
// LeaveTypeId = item.Type.Id,
// DateSendLeave = item.CreatedAt.Date,
// Status = item.LeaveStatus,
// FullName = $"{profile.Prefix}{profile.FirstName} {profile.LastName}",
// LeaveStartDate = item.LeaveStartDate,
// LeaveEndDate = item.LeaveEndDate,
// KeycloakId = item.KeycloakUserId
// };
// result.Add(resData);
//}
//return Success(result);
}
/// <summary>