From 42bdb664406683406e5e75f5ef29fae8d43c908c Mon Sep 17 00:00:00 2001 From: Suphonchai Phoonsawat Date: Fri, 2 May 2025 13:55:40 +0700 Subject: [PATCH] =?UTF-8?q?=E0=B9=80=E0=B8=9E=E0=B8=B4=E0=B9=88=E0=B8=A1?= =?UTF-8?q?=20Param=20leaveId=20=E0=B9=81=E0=B8=A5=E0=B8=B0=20=E0=B9=80?= =?UTF-8?q?=E0=B8=A3=E0=B8=B5=E0=B8=A2=E0=B8=81=20api=20=E0=B8=A2=E0=B8=81?= =?UTF-8?q?=E0=B9=80=E0=B8=A5=E0=B8=B4=E0=B8=81=E0=B8=81=E0=B8=B2=E0=B8=A3?= =?UTF-8?q?=E0=B8=A5=E0=B8=B2=E0=B9=83=E0=B8=99=E0=B8=97=E0=B8=B0=E0=B9=80?= =?UTF-8?q?=E0=B8=9A=E0=B8=B5=E0=B8=A2=E0=B8=99=E0=B8=9B=E0=B8=A3=E0=B8=B0?= =?UTF-8?q?=E0=B8=A7=E0=B8=B1=E0=B8=95=E0=B8=B4=20#1492?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../LeaveRequests/LeaveRequestRepository.cs | 41 ++++++++++++++++++- 1 file changed, 39 insertions(+), 2 deletions(-) diff --git a/BMA.EHR.Application/Repositories/Leaves/LeaveRequests/LeaveRequestRepository.cs b/BMA.EHR.Application/Repositories/Leaves/LeaveRequests/LeaveRequestRepository.cs index 811b41c8..393c1779 100644 --- a/BMA.EHR.Application/Repositories/Leaves/LeaveRequests/LeaveRequestRepository.cs +++ b/BMA.EHR.Application/Repositories/Leaves/LeaveRequests/LeaveRequestRepository.cs @@ -308,7 +308,7 @@ namespace BMA.EHR.Application.Repositories.Leaves.LeaveRequests return await rawData.ToListAsync(); } - public async Task> GetLeaveRequestForAdminWithAuthAsync(int year, Guid type, string status, DateTime startDate, DateTime endDate,List keycloakIdList) + public async Task> GetLeaveRequestForAdminWithAuthAsync(int year, Guid type, string status, DateTime startDate, DateTime endDate, List keycloakIdList) { var rawData = _dbContext.Set().AsNoTracking() .Include(x => x.Type) @@ -452,7 +452,7 @@ namespace BMA.EHR.Application.Repositories.Leaves.LeaveRequests return await rawData.ToListAsync(); } - public async Task ApproveCancelLeaveRequestAsync(LeaveRequest data, string Reason,string LeaveReason) + public async Task ApproveCancelLeaveRequestAsync(LeaveRequest data, string Reason, string LeaveReason) { try { @@ -482,6 +482,24 @@ namespace BMA.EHR.Application.Repositories.Leaves.LeaveRequests _appDbContext.Set().Add(noti); await _appDbContext.SaveChangesAsync(); + + var _baseAPI = _configuration["API"]; + var apiUrlSalary = $"{_baseAPI}/org/profile/leave/cancel/{data.Id}"; + using (var client = new HttpClient()) + { + client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", AccessToken.Replace("Bearer ", "")); + client.DefaultRequestHeaders.Add("api_key", _configuration["API_KEY"]); + + var request = new HttpRequestMessage(HttpMethod.Patch, apiUrlSalary); + + // ส่ง request + var _res = await client.SendAsync(request); + if (!_res.IsSuccessStatusCode) + throw new Exception("ไม่สามารถอัพเดตการยกเลิกรายการลาไปยังระบบทะเบียนประวัติ"); + //var _result = await _res.Content.ReadAsStringAsync(); + } + + return data; } catch @@ -527,6 +545,23 @@ namespace BMA.EHR.Application.Repositories.Leaves.LeaveRequests }; _appDbContext.Set().Add(noti); await _appDbContext.SaveChangesAsync(); + + var _baseAPI = _configuration["API"]; + var apiUrlSalary = $"{_baseAPI}/org/profile/leave/cancel/{rawData.Id}"; + using (var client = new HttpClient()) + { + client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", AccessToken.Replace("Bearer ", "")); + client.DefaultRequestHeaders.Add("api_key", _configuration["API_KEY"]); + + var request = new HttpRequestMessage(HttpMethod.Patch, apiUrlSalary); + + // ส่ง request + var _res = await client.SendAsync(request); + if (!_res.IsSuccessStatusCode) + throw new Exception("ไม่สามารถอัพเดตการยกเลิกรายการลาไปยังระบบทะเบียนประวัติ"); + //var _result = await _res.Content.ReadAsStringAsync(); + } + } public async Task RejectCancelLeaveRequestAsync(Guid id, string Reason) @@ -939,6 +974,7 @@ namespace BMA.EHR.Application.Repositories.Leaves.LeaveRequests leaveDays = rawData.LeaveTotal, status = "approve", reason = rawData.LeaveDetail, + leaveId = rawData.Id, }); // var _result = await _res.Content.ReadAsStringAsync(); } @@ -961,6 +997,7 @@ namespace BMA.EHR.Application.Repositories.Leaves.LeaveRequests leaveDays = rawData.LeaveTotal, status = "approve", reason = rawData.LeaveDetail, + leaveId = rawData.Id, }); } }