diff --git a/BMA.EHR.Leave/Controllers/LeaveRequestController.cs b/BMA.EHR.Leave/Controllers/LeaveRequestController.cs index d5cc9838..da9ceb43 100644 --- a/BMA.EHR.Leave/Controllers/LeaveRequestController.cs +++ b/BMA.EHR.Leave/Controllers/LeaveRequestController.cs @@ -1208,7 +1208,7 @@ namespace BMA.EHR.Leave.Service.Controllers /// - /// LV2_004 - รายการลา Calendar (USER/ADMIN) + /// LV2_004 - รายการลา Calendar (USER) /// /// /// @@ -1221,6 +1221,44 @@ namespace BMA.EHR.Leave.Service.Controllers [ProducesResponseType(StatusCodes.Status500InternalServerError)] public async Task> 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); + } + + /// + /// LV2_004 - รายการลา Calendar (ADMIN) + /// + /// + /// + /// เมื่อทำรายการสำเร็จ + /// ไม่ได้ Login เข้าระบบ + /// เมื่อเกิดข้อผิดพลาดในการทำงาน + [HttpPost("admin/calendar")] + [ProducesResponseType(StatusCodes.Status200OK)] + [ProducesResponseType(StatusCodes.Status401Unauthorized)] + [ProducesResponseType(StatusCodes.Status500InternalServerError)] + public async Task> GetLeaveRequestCalendarAdminAsync( + [FromBody] GetLeaveRequestCalendarDto req) { var getPermission = await _permission.GetPermissionAPIAsync("LIST", "SYS_LEAVE_LIST"); var jsonData = JsonConvert.DeserializeObject(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(); - - //var result = new List(); - - //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); } ///