From 111b638d9ea370fd9c1dadb562a160551389b3dd Mon Sep 17 00:00:00 2001 From: Bright Date: Wed, 16 Oct 2024 16:31:40 +0700 Subject: [PATCH] =?UTF-8?q?fix=20=E0=B8=AD=E0=B8=AD=E0=B8=81=E0=B8=84?= =?UTF-8?q?=E0=B8=B3=E0=B8=AA=E0=B8=B1=E0=B9=88=E0=B8=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../PlacementAppointmentController.cs | 323 +++++++++--------- .../Controllers/PlacementController.cs | 44 ++- .../Controllers/RetirementOtherController.cs | 2 +- 3 files changed, 185 insertions(+), 184 deletions(-) diff --git a/BMA.EHR.Placement.Service/Controllers/PlacementAppointmentController.cs b/BMA.EHR.Placement.Service/Controllers/PlacementAppointmentController.cs index 42dfbc66..23950d75 100644 --- a/BMA.EHR.Placement.Service/Controllers/PlacementAppointmentController.cs +++ b/BMA.EHR.Placement.Service/Controllers/PlacementAppointmentController.cs @@ -902,164 +902,6 @@ namespace BMA.EHR.Placement.Service.Controllers return Success(); } - /// - /// ส่งรายชื่อออกคำสั่ง C-PM-06 - /// - /// - /// - /// ค่าตัวแปรที่ส่งมาไม่ถูกต้อง - /// ไม่ได้ Login เข้าระบบ - /// เมื่อเกิดข้อผิดพลาดในการทำงาน - [HttpPost("slip/report")] - public async Task> PostReportSlip([FromBody] ReportPersonRequest req) - { - var placementProfiles = await _context.PlacementAppointments - .Where(x => req.refIds.Contains(x.Id.ToString())) - .ToListAsync(); - placementProfiles.ForEach(profile => profile.Status = "REPORT"); - await _context.SaveChangesAsync(); - return Success(); - } - - /// - /// ลบรายชื่อออกคำสั่ง C-PM-06 - /// - /// - /// - /// ค่าตัวแปรที่ส่งมาไม่ถูกต้อง - /// ไม่ได้ Login เข้าระบบ - /// เมื่อเกิดข้อผิดพลาดในการทำงาน - [HttpPost("slip/report/delete")] - public async Task> PostReportDeleteSlip([FromBody] ReportPersonRequest req) - { - var placementProfiles = await _context.PlacementAppointments - .Where(x => req.refIds.Contains(x.Id.ToString())) - // .Where(x => x.Status.ToUpper() == "REPORT") - .ToListAsync(); - placementProfiles.ForEach(profile => profile.Status = "PENDING"); - await _context.SaveChangesAsync(); - return Success(); - } - - /// - /// เอกสารแนบท้าย C-PM-06 - /// - /// Record Id ของคำสั่ง - /// pdf, docx หรือ xlsx - /// - /// เมื่อทำการอ่านข้อมูลจาก Relational Database สำเร็จ - /// ไม่ได้ Login เข้าระบบ - /// เมื่อเกิดข้อผิดพลาดในการทำงาน - [HttpPost("slip/report/attachment")] - [AllowAnonymous] - [ProducesResponseType(StatusCodes.Status200OK)] - [ProducesResponseType(StatusCodes.Status401Unauthorized)] - [ProducesResponseType(StatusCodes.Status500InternalServerError)] - public async Task> PostReporSlipAttachment([FromBody] ReportAttachmentRequest req) - { - try - { - var report_data = (from p in _context.PlacementAppointments - .Where(x => req.refIds.Select(x => x.refId).Contains(x.Id.ToString())) - .ToList() - join r in req.refIds - on p.Id.ToString() equals r.refId - orderby r.Sequence - select new - { - No = r.Sequence.ToString().ToThaiNumber(), - FullName = $"{r.Prefix}{r.FirstName} {r.LastName}", - Education = p.EducationOld == null ? "-" : p.EducationOld, - OldOc = (p.OrganizationPositionOld == null ? "" : p.OrganizationPositionOld) + "/" + (p.rootOld == null ? "" : p.rootOld), - OldPositionType = p.PositionTypeOld == null ? "" : p.PositionTypeOld, - OldPositionLevel = p.PositionLevelOld == null ? "" : p.PositionLevelOld, - OldPositionNumber = p.PositionNumberOld == null ? "" : p.PositionNumberOld.ToThaiNumber(), - OldSalary = p.AmountOld == null ? "" : p.AmountOld.Value.ToNumericNoDecimalText().ToThaiNumber(), - LeaveDate = "", - NewOc = (p.position == null ? "" : p.position) + "/" + (p.root == null ? "" : p.root), - NewPositionType = p.posTypeName == null ? "" : p.posTypeName, - NewPositionLevel = p.posLevelName == null ? "" : p.posLevelName, - NewPositionNumber = p.posMasterNo == null ? "" : - p.node == 4 ? $"{p.child4ShortName}{p.posMasterNo}".ToThaiNumber() : - p.node == 3 ? $"{p.child3ShortName}{p.posMasterNo}".ToThaiNumber() : - p.node == 2 ? $"{p.child2ShortName}{p.posMasterNo}".ToThaiNumber() : - p.node == 1 ? $"{p.child1ShortName}{p.posMasterNo}".ToThaiNumber() : - p.node == 0 ? $"{p.rootShortName}{p.posMasterNo}".ToThaiNumber() : "", - NewSalary = r.Amount == null ? "" : r.Amount.Value.ToNumericNoDecimalText().ToThaiNumber(), - AppointDate = p.ReportingDate == null ? "" : p.ReportingDate.Value.ToThaiShortDate2().ToThaiNumber(), - RemarkHorizontal = r.RemarkHorizontal, - RemarkVertical = r.RemarkVertical, - }).ToList(); - return Success(report_data); - } - catch - { - throw; - } - } - - /// - /// ออกคำสั่ง C-PM-06 เลื่อนข้าราชการ - /// - /// - /// - /// ค่าตัวแปรที่ส่งมาไม่ถูกต้อง - /// ไม่ได้ Login เข้าระบบ - /// เมื่อเกิดข้อผิดพลาดในการทำงาน - [HttpPost("slip/report/excecute")] - public async Task> PostReportExecuteSlip([FromBody] ReportExecuteRequest req) - { - var data = await _context.PlacementAppointments - .Where(x => req.refIds.Select(x => x.refId).Contains(x.Id.ToString())) - .ToListAsync(); - var resultData = (from p in data - join r in req.refIds - on p.Id.ToString() equals r.refId - select new - { - profileId = p.profileId, - date = r.commandAffectDate, - amount = r.amount, - positionSalaryAmount = r.positionSalaryAmount, - mouthSalaryAmount = r.mouthSalaryAmount, - posNo = p.posMasterNo == null ? "" : - p.node == 4 ? $"{p.child4ShortName}{p.posMasterNo}" : - p.node == 3 ? $"{p.child3ShortName}{p.posMasterNo}" : - p.node == 2 ? $"{p.child2ShortName}{p.posMasterNo}" : - p.node == 1 ? $"{p.child1ShortName}{p.posMasterNo}" : - p.node == 0 ? $"{p.rootShortName}{p.posMasterNo}" : "", - position = p.position, - positionLine = "", - positionPathSide = "", - positionExecutive = "", - positionType = p.posTypeName, - positionLevel = p.posLevelName, - refCommandNo = $"{r.commandNo}/{r.commandYear.ToThaiYear()}", - templateDoc = r.templateDoc, - posmasterId = p.posmasterId, - positionId = p.positionId, - }).ToList(); - - var baseAPIOrg = _configuration["API"]; - var apiUrlOrg = $"{baseAPIOrg}/org/command/excexute/salary-current"; - using (var client = new HttpClient()) - { - client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token.Replace("Bearer ", "")); - client.DefaultRequestHeaders.Add("api_key", _configuration["API_KEY"]); - var _res = await client.PostAsJsonAsync(apiUrlOrg, new - { - data = resultData, - }); - var _result = await _res.Content.ReadAsStringAsync(); - if (_res.IsSuccessStatusCode) - { - data.ForEach(profile => profile.Status = "DONE"); - await _context.SaveChangesAsync(); - } - } - return Success(); - } - /// /// ส่งรายชื่อออกคำสั่ง C-PM-07 /// @@ -1521,5 +1363,170 @@ namespace BMA.EHR.Placement.Service.Controllers } return Success(); } + + /// + /// ส่งรายชื่อออกคำสั่ง C-PM-39 + /// + /// + /// + /// ค่าตัวแปรที่ส่งมาไม่ถูกต้อง + /// ไม่ได้ Login เข้าระบบ + /// เมื่อเกิดข้อผิดพลาดในการทำงาน + [HttpPost("slip/report")] + public async Task> PostReportExecuteSlip([FromBody] ReportPersonRequest req) + { + var placementProfiles = await _context.PlacementAppointments + // .Include(x => x.Placement) + // .ThenInclude(x => x.PlacementType) + .Where(x => req.refIds.Contains(x.Id.ToString())) + // .Where(x => x.Placement!.PlacementType!.Name == "เลื่อนข้าราชการ") + // .Where(x => x.typeCommand.Trim().ToUpper() == "SLIP") + .ToListAsync(); + placementProfiles.ForEach(profile => profile.Status = "REPORT"); + await _context.SaveChangesAsync(); + return Success(); + } + + /// + /// ลบรายชื่อออกคำสั่ง C-PM-39 + /// + /// + /// + /// ค่าตัวแปรที่ส่งมาไม่ถูกต้อง + /// ไม่ได้ Login เข้าระบบ + /// เมื่อเกิดข้อผิดพลาดในการทำงาน + [HttpPost("slip/report/delete")] + public async Task> PostReportExecuteDeleteSlip([FromBody] ReportPersonRequest req) + { + var placementProfiles = await _context.PlacementAppointments + .Where(x => req.refIds.Contains(x.Id.ToString())) + // .Where(x => x.PlacementStatus.ToUpper() == "REPORT") + .ToListAsync(); + placementProfiles.ForEach(profile => profile.Status = "PREPARE-CONTAIN"); + await _context.SaveChangesAsync(); + return Success(); + } + + /// + /// เอกสารแนบท้าย C-PM-39 + /// + /// Record Id ของคำสั่ง + /// pdf, docx หรือ xlsx + /// + /// เมื่อทำการอ่านข้อมูลจาก Relational Database สำเร็จ + /// ไม่ได้ Login เข้าระบบ + /// เมื่อเกิดข้อผิดพลาดในการทำงาน + [HttpPost("slip/report/attachment")] + [AllowAnonymous] + [ProducesResponseType(StatusCodes.Status200OK)] + [ProducesResponseType(StatusCodes.Status401Unauthorized)] + [ProducesResponseType(StatusCodes.Status500InternalServerError)] + public async Task> PostReportExecuteSlipAttachment([FromBody] ReportAttachmentRequest req) + { + try + { + var report_data = (from p in _context.PlacementAppointments + //.Include(x => x.PlacementEducation) + // .ThenInclude(x => x.PlacementType) + .Where(x => req.refIds.Select(x => x.refId).Contains(x.Id.ToString())) + // .Where(x => x.Placement!.PlacementType!.Name == "เลื่อนข้าราชการ") + // .Where(x => x.typeCommand.Trim().ToUpper() == "SLIP") + .ToList() + join r in req.refIds + on p.Id.ToString() equals r.refId + orderby r.Sequence + select new + { + No = r.Sequence.ToString().ToThaiNumber(), + FullName = $"{r.Prefix}{r.FirstName} {r.LastName}", + Education = p.EducationOld == null ? "" : p.EducationOld, + OldOc = (p.positionOld == null ? "" : p.positionOld) + "/" + (p.rootOld == null ? "" : p.rootOld), + OldPositionType = p.posTypeNameOld == null ? "" : p.posTypeNameOld, + OldPositionLevel = p.posLevelNameOld == null ? "" : p.posLevelNameOld, + OldPositionNumber = p.PositionNumberOld == null ? "" : p.PositionNumberOld.ToThaiNumber(), + OldSalary = p.AmountOld == null ? "" : p.AmountOld.Value.ToNumericNoDecimalText().ToThaiNumber(), + NewOc = (p.position == null ? "" : p.position) + "/" + (p.root == null ? "" : p.root), + NewPositionType = p.posTypeName == null ? "" : p.posTypeName, + NewPositionLevel = p.posLevelName == null ? "" : p.posLevelName, + NewPositionNumber = p.posMasterNo == null ? "" : + p.node == 4 ? $"{p.child4ShortName}{p.posMasterNo}".ToThaiNumber() : + p.node == 3 ? $"{p.child3ShortName}{p.posMasterNo}".ToThaiNumber() : + p.node == 2 ? $"{p.child2ShortName}{p.posMasterNo}".ToThaiNumber() : + p.node == 1 ? $"{p.child1ShortName}{p.posMasterNo}".ToThaiNumber() : + p.node == 0 ? $"{p.rootShortName}{p.posMasterNo}".ToThaiNumber() : "", + NewSalary = r.Amount == null ? "" : r.Amount.Value.ToNumericNoDecimalText().ToThaiNumber(), + AppointDate = p.ReportingDate == null ? "" : p.ReportingDate.Value.ToThaiShortDate2().ToThaiNumber(), + RemarkHorizontal = r.RemarkHorizontal, + RemarkVertical = r.RemarkVertical, + }).ToList(); + return Success(report_data); + } + catch + { + throw; + } + } + + /// + /// ออกคำสั่ง C-PM-39 เลื่อนข้าราชการ + /// + /// + /// + /// ค่าตัวแปรที่ส่งมาไม่ถูกต้อง + /// ไม่ได้ Login เข้าระบบ + /// เมื่อเกิดข้อผิดพลาดในการทำงาน + [HttpPost("slip/report/excecute")] + public async Task> PostReportSlipExecute([FromBody] ReportExecuteRequest req) + { + var data = await _context.PlacementAppointments + .Where(x => req.refIds.Select(x => x.refId).Contains(x.Id.ToString())) + .ToListAsync(); + var resultData = (from p in data + join r in req.refIds + on p.Id.ToString() equals r.refId + select new + { + profileId = p.profileId, + date = r.commandAffectDate, + amount = r.amount, + positionSalaryAmount = r.positionSalaryAmount, + mouthSalaryAmount = r.mouthSalaryAmount, + posNo = p.posMasterNo == null ? "" : + p.node == 4 ? $"{p.child4ShortName}{p.posMasterNo}" : + p.node == 3 ? $"{p.child3ShortName}{p.posMasterNo}" : + p.node == 2 ? $"{p.child2ShortName}{p.posMasterNo}" : + p.node == 1 ? $"{p.child1ShortName}{p.posMasterNo}" : + p.node == 0 ? $"{p.rootShortName}{p.posMasterNo}" : "", + position = p.position, + positionLine = "", + positionPathSide = "", + positionExecutive = "", + positionType = p.posTypeName, + positionLevel = p.posLevelName, + refCommandNo = $"{r.commandNo}/{r.commandYear.ToThaiYear()}", + templateDoc = r.templateDoc, + posmasterId = p.posmasterId, + positionId = p.positionId, + }).ToList(); + + var baseAPIOrg = _configuration["API"]; + var apiUrlOrg = $"{baseAPIOrg}/org/command/excexute/salary-current"; + using (var client = new HttpClient()) + { + client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token.Replace("Bearer ", "")); + client.DefaultRequestHeaders.Add("api_key", _configuration["API_KEY"]); + var _res = await client.PostAsJsonAsync(apiUrlOrg, new + { + data = resultData, + }); + var _result = await _res.Content.ReadAsStringAsync(); + if (_res.IsSuccessStatusCode) + { + data.ForEach(profile => profile.Status = "DONE"); + await _context.SaveChangesAsync(); + } + } + return Success(); + } } } diff --git a/BMA.EHR.Placement.Service/Controllers/PlacementController.cs b/BMA.EHR.Placement.Service/Controllers/PlacementController.cs index 339c8281..e1227d44 100644 --- a/BMA.EHR.Placement.Service/Controllers/PlacementController.cs +++ b/BMA.EHR.Placement.Service/Controllers/PlacementController.cs @@ -2329,7 +2329,7 @@ namespace BMA.EHR.Placement.Service.Controllers } /// - /// ส่งรายชื่อออกคำสั่ง C-PM-39 + /// ส่งรายชื่อออกคำสั่ง C-PM-06 /// /// /// @@ -2340,11 +2340,7 @@ namespace BMA.EHR.Placement.Service.Controllers public async Task> PostReportSlip([FromBody] ReportPersonRequest req) { var placementProfiles = await _context.PlacementProfiles - // .Include(x => x.Placement) - // .ThenInclude(x => x.PlacementType) .Where(x => req.refIds.Contains(x.Id.ToString())) - // .Where(x => x.Placement!.PlacementType!.Name == "เลื่อนข้าราชการ") - // .Where(x => x.typeCommand.Trim().ToUpper() == "SLIP") .ToListAsync(); placementProfiles.ForEach(profile => profile.PlacementStatus = "REPORT"); await _context.SaveChangesAsync(); @@ -2352,7 +2348,7 @@ namespace BMA.EHR.Placement.Service.Controllers } /// - /// ลบรายชื่อออกคำสั่ง C-PM-39 + /// ลบรายชื่อออกคำสั่ง C-PM-06 /// /// /// @@ -2364,15 +2360,15 @@ namespace BMA.EHR.Placement.Service.Controllers { var placementProfiles = await _context.PlacementProfiles .Where(x => req.refIds.Contains(x.Id.ToString())) - // .Where(x => x.PlacementStatus.ToUpper() == "REPORT") + // .Where(x => x.Status.ToUpper() == "REPORT") .ToListAsync(); - placementProfiles.ForEach(profile => profile.PlacementStatus = "PREPARE-CONTAIN"); + placementProfiles.ForEach(profile => profile.PlacementStatus = "PENDING"); await _context.SaveChangesAsync(); return Success(); } /// - /// เอกสารแนบท้าย C-PM-39 + /// เอกสารแนบท้าย C-PM-06 /// /// Record Id ของคำสั่ง /// pdf, docx หรือ xlsx @@ -2385,16 +2381,13 @@ namespace BMA.EHR.Placement.Service.Controllers [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(StatusCodes.Status401Unauthorized)] [ProducesResponseType(StatusCodes.Status500InternalServerError)] - public async Task> PostReportSlipAttachment([FromBody] ReportAttachmentRequest req) + public async Task> PostReporSlipAttachment([FromBody] ReportAttachmentRequest req) { try { var report_data = (from p in _context.PlacementProfiles .Include(x => x.PlacementEducations) - // .ThenInclude(x => x.PlacementType) .Where(x => req.refIds.Select(x => x.refId).Contains(x.Id.ToString())) - // .Where(x => x.Placement!.PlacementType!.Name == "เลื่อนข้าราชการ") - // .Where(x => x.typeCommand.Trim().ToUpper() == "SLIP") .ToList() join r in req.refIds on p.Id.ToString() equals r.refId @@ -2404,26 +2397,27 @@ namespace BMA.EHR.Placement.Service.Controllers No = r.Sequence.ToString().ToThaiNumber(), FullName = $"{r.Prefix}{r.FirstName} {r.LastName}", Education = p.PlacementEducations == null || p.PlacementEducations.Count == 0 ? "" : - p.PlacementEducations.FirstOrDefault().Degree, + p.PlacementEducations.FirstOrDefault().Degree, OldOc = (p.positionNameOld == null ? "" : p.positionNameOld) + "/" + (p.rootOld == null ? "" : p.rootOld), OldPositionType = p.posTypeNameOld == null ? "" : p.posTypeNameOld, OldPositionLevel = p.posLevelNameOld == null ? "" : p.posLevelNameOld, OldPositionNumber = p.posMasterNoOld == null ? "" : - p.nodeOld == "4" ? $"{p.child4ShortNameOld}{p.posMasterNoOld}".ToThaiNumber() : - p.nodeOld == "3" ? $"{p.child3ShortNameOld}{p.posMasterNoOld}".ToThaiNumber() : - p.nodeOld == "2" ? $"{p.child2ShortNameOld}{p.posMasterNoOld}".ToThaiNumber() : - p.nodeOld == "1" ? $"{p.child1ShortNameOld}{p.posMasterNoOld}".ToThaiNumber() : - p.nodeOld == "0" ? $"{p.rootShortNameOld}{p.posMasterNoOld}".ToThaiNumber() : "", + p.nodeOld == "4" ? $"{p.child4ShortNameOld}{p.posMasterNoOld}".ToThaiNumber() : + p.nodeOld == "3" ? $"{p.child3ShortNameOld}{p.posMasterNoOld}".ToThaiNumber() : + p.nodeOld == "2" ? $"{p.child2ShortNameOld}{p.posMasterNoOld}".ToThaiNumber() : + p.nodeOld == "1" ? $"{p.child1ShortNameOld}{p.posMasterNoOld}".ToThaiNumber() : + p.nodeOld == "0" ? $"{p.rootShortNameOld}{p.posMasterNoOld}".ToThaiNumber() : "", OldSalary = p.AmountOld == null ? "" : p.AmountOld.Value.ToNumericNoDecimalText().ToThaiNumber(), + LeaveDate = "", NewOc = (p.positionName == null ? "" : p.positionName) + "/" + (p.root == null ? "" : p.root), NewPositionType = p.posTypeName == null ? "" : p.posTypeName, NewPositionLevel = p.posLevelName == null ? "" : p.posLevelName, NewPositionNumber = p.posMasterNo == null ? "" : - p.node == 4 ? $"{p.child4ShortName}{p.posMasterNo}".ToThaiNumber() : - p.node == 3 ? $"{p.child3ShortName}{p.posMasterNo}".ToThaiNumber() : - p.node == 2 ? $"{p.child2ShortName}{p.posMasterNo}".ToThaiNumber() : - p.node == 1 ? $"{p.child1ShortName}{p.posMasterNo}".ToThaiNumber() : - p.node == 0 ? $"{p.rootShortName}{p.posMasterNo}".ToThaiNumber() : "", + p.node == 4 ? $"{p.child4ShortName}{p.posMasterNo}".ToThaiNumber() : + p.node == 3 ? $"{p.child3ShortName}{p.posMasterNo}".ToThaiNumber() : + p.node == 2 ? $"{p.child2ShortName}{p.posMasterNo}".ToThaiNumber() : + p.node == 1 ? $"{p.child1ShortName}{p.posMasterNo}".ToThaiNumber() : + p.node == 0 ? $"{p.rootShortName}{p.posMasterNo}".ToThaiNumber() : "", NewSalary = r.Amount == null ? "" : r.Amount.Value.ToNumericNoDecimalText().ToThaiNumber(), AppointDate = p.ReportingDate == null ? "" : p.ReportingDate.Value.ToThaiShortDate2().ToThaiNumber(), RemarkHorizontal = r.RemarkHorizontal, @@ -2438,7 +2432,7 @@ namespace BMA.EHR.Placement.Service.Controllers } /// - /// ออกคำสั่ง C-PM-39 เลื่อนข้าราชการ + /// ออกคำสั่ง C-PM-06 เลื่อนข้าราชการ /// /// /// diff --git a/BMA.EHR.Retirement.Service/Controllers/RetirementOtherController.cs b/BMA.EHR.Retirement.Service/Controllers/RetirementOtherController.cs index 6a2af848..adf37b76 100644 --- a/BMA.EHR.Retirement.Service/Controllers/RetirementOtherController.cs +++ b/BMA.EHR.Retirement.Service/Controllers/RetirementOtherController.cs @@ -849,7 +849,7 @@ namespace BMA.EHR.Retirement.Service.Controllers OldPositionLevel = p.PositionLevelOld == null ? "" : p.PositionLevelOld, OldPositionNumber = p.PositionNumberOld == null ? "" : p.PositionNumberOld.ToThaiNumber(), OldSalary = p.AmountOld == null ? "" : p.AmountOld.Value.ToNumericNoDecimalText().ToThaiNumber(), - LeaveDate = "", + LeaveDate = p.LeaveDate == null ? "-" : p.LeaveDate.ToString(), MilitaryDate = p.MilitaryDate == null ? "" : p.MilitaryDate.Value.ToThaiShortDate2().ToThaiNumber(), NewOc = (p.OrganizationPositionOld == null ? "" : p.OrganizationPositionOld) + "/" + (p.rootOld == null ? "" : p.rootOld), NewPositionType = p.PositionTypeOld == null ? "" : p.PositionTypeOld,