From 83c79e4c0a754aaaa04a50caf39acfbc0cd723ad Mon Sep 17 00:00:00 2001 From: "DESKTOP-2S5P7D1\\Windows 10" Date: Thu, 31 Aug 2023 11:52:04 +0700 Subject: [PATCH] =?UTF-8?q?api=20=E0=B8=9A=E0=B8=B1=E0=B8=99=E0=B8=97?= =?UTF-8?q?=E0=B8=B6=E0=B8=81=E0=B8=82=E0=B9=89=E0=B8=AD=E0=B8=A1=E0=B8=B9?= =?UTF-8?q?=E0=B8=A5=E0=B8=A5=E0=B8=B9=E0=B8=81=E0=B8=88=E0=B9=89=E0=B8=B2?= =?UTF-8?q?=E0=B8=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- BMA.EHR.Domain/Models/HR/Profile.cs | 42 ++++++--- .../Controllers/PlacementOfficerController.cs | 8 +- .../Controllers/PlacementReceiveController.cs | 86 ++++++++++++++++--- .../PlacementRepatriationController.cs | 8 +- .../PlacementTransferController.cs | 16 ++-- .../Requests/PlacementFileRequest.cs | 10 +++ .../Controllers/RetirementController.cs | 18 ++-- .../RetirementDischargeController.cs | 8 +- .../RetirementExpulsionController.cs | 8 +- .../Controllers/RetirementOutController.cs | 8 +- .../Controllers/RetirementResignController.cs | 6 +- 11 files changed, 155 insertions(+), 63 deletions(-) create mode 100644 BMA.EHR.Placement.Service/Requests/PlacementFileRequest.cs diff --git a/BMA.EHR.Domain/Models/HR/Profile.cs b/BMA.EHR.Domain/Models/HR/Profile.cs index a0632e09..11490521 100644 --- a/BMA.EHR.Domain/Models/HR/Profile.cs +++ b/BMA.EHR.Domain/Models/HR/Profile.cs @@ -179,21 +179,25 @@ namespace BMA.EHR.Domain.Models.HR public string? PositionExecutiveSide { get; set; } [Comment("Id ตำแหน่ง")] - public Guid? PositionEmployeePositionId { get; set; } - [Comment("ตำแหน่ง")] - public string? PositionEmployeePosition { get; set; } + public PositionEmployeePosition? PositionEmployeePosition { get; set; } + // [Comment("ตำแหน่ง")] + // public string? PositionEmployeePosition { get; set; } [Comment("Id ด้านของตำแหน่ง")] - public Guid? PositionEmployeePositionSideId { get; set; } - [Comment("ด้านของตำแหน่ง")] - public string? PositionEmployeePositionSide { get; set; } + public PositionEmployeePositionSide? PositionEmployeePositionSide { get; set; } + // [Comment("ด้านของตำแหน่ง")] + // public string? PositionEmployeePositionSide { get; set; } [Comment(" Id ระดับชั้นงาน")] - public Guid? PositionEmployeeLevelId { get; set; } - [Comment("ระดับชั้นงาน")] - public string? PositionEmployeeLevel { get; set; } + public PositionEmployeeLevel? PositionEmployeeLevel { get; set; } + // [Comment("ระดับชั้นงาน")] + // public string? PositionEmployeeLevel { get; set; } [Comment("Id กลุ่มงาน")] - public Guid? PositionEmployeeGroupId { get; set; } - [Comment("กลุ่มงาน")] - public string? PositionEmployeeGroup { get; set; } + public PositionEmployeeGroup? PositionEmployeeGroup { get; set; } + // [Comment("กลุ่มงาน")] + // public string? PositionEmployeeGroup { get; set; } + [Comment("Id สายงาน")] + public PositionEmployeeLine? PositionEmployeeLine { get; set; } + // [Comment("สายงาน")] + // public string? PositionEmployeeLine { get; set; } [MaxLength(100), Comment("สถานภาพทางกาย")] public string Physical { get; set; } @@ -257,6 +261,20 @@ namespace BMA.EHR.Domain.Models.HR // public OrganizationPositionEntity? OrganizationPosition { get; set; } public LimitLeave? LimitLeave { get; set; } public Guid? KeycloakId { get; set; } + [Comment("สังกัด")] + public string? EmployeeOc { get; set; } + [Comment("ค่าจ้าง")] + public string? EmployeeWage { get; set; } + [Comment("ประเภทบุคคล")] + public string? EmployeeTypeIndividual { get; set; } + [Comment("เงินเพิ่มการครองชีพชั่วคราว")] + public double? EmployeeMoneyIncrease { get; set; } + [Comment("เงินช่วยเหลือค่าครองชีพชั่วคราว")] + public double? EmployeeMoneyAllowance { get; set; } + [Comment("เงินสมทบประกันสังคม(ลูกจ้าง)")] + public double? EmployeeMoneyEmployee { get; set; } + [Comment("เงินสมทบประกันสังคม(นายจ้าง)")] + public double? EmployeeMoneyEmployer { get; set; } public virtual List Educations { get; set; } = new List(); diff --git a/BMA.EHR.Placement.Service/Controllers/PlacementOfficerController.cs b/BMA.EHR.Placement.Service/Controllers/PlacementOfficerController.cs index 55c13c8a..7c399ba7 100644 --- a/BMA.EHR.Placement.Service/Controllers/PlacementOfficerController.cs +++ b/BMA.EHR.Placement.Service/Controllers/PlacementOfficerController.cs @@ -66,9 +66,9 @@ namespace BMA.EHR.Placement.Service.Controllers Prefix = p.Profile.Prefix == null ? null : p.Profile.Prefix.Name, p.Profile.FirstName, p.Profile.LastName, - position = p.Profile.ProfileType.Trim().ToUpper().Contains("OFFICER") ? (p.Profile.Position == null ? null : p.Profile.Position.Name) : p.Profile.PositionEmployeePosition, + position = p.Profile.ProfileType.Trim().ToUpper().Contains("OFFICER") ? (p.Profile.Position == null ? null : p.Profile.Position.Name) : (p.Profile.PositionEmployeePosition == null ? null : p.Profile.PositionEmployeePosition.Name), posNo = p.Profile.ProfileType.Trim().ToUpper().Contains("OFFICER") ? (p.Profile.PosNo == null ? null : p.Profile.PosNo.Name) : p.Profile.PosNoEmployee, - positionLevel = p.Profile.ProfileType.Trim().ToUpper().Contains("OFFICER") ? (p.Profile.PositionLevel == null ? null : p.Profile.PositionLevel.Name) : p.Profile.PositionEmployeeLevel, + positionLevel = p.Profile.ProfileType.Trim().ToUpper().Contains("OFFICER") ? (p.Profile.PositionLevel == null ? null : p.Profile.PositionLevel.Name) : (p.Profile.PositionEmployeeLevel == null ? null : p.Profile.PositionEmployeeLevel.Name), p.CreatedAt, p.Organization, p.Reason, @@ -112,9 +112,9 @@ namespace BMA.EHR.Placement.Service.Controllers p.Profile.FirstName, p.Profile.LastName, ProfileId = p.Profile.Id, - position = p.Profile.ProfileType.Trim().ToUpper().Contains("OFFICER") ? (p.Profile.Position == null ? null : p.Profile.Position.Name) : p.Profile.PositionEmployeePosition, + position = p.Profile.ProfileType.Trim().ToUpper().Contains("OFFICER") ? (p.Profile.Position == null ? null : p.Profile.Position.Name) : (p.Profile.PositionEmployeePosition == null ? null : p.Profile.PositionEmployeePosition.Name), posNo = p.Profile.ProfileType.Trim().ToUpper().Contains("OFFICER") ? (p.Profile.PosNo == null ? null : p.Profile.PosNo.Name) : p.Profile.PosNoEmployee, - positionLevel = p.Profile.ProfileType.Trim().ToUpper().Contains("OFFICER") ? (p.Profile.PositionLevel == null ? null : p.Profile.PositionLevel.Name) : p.Profile.PositionEmployeeLevel, + positionLevel = p.Profile.ProfileType.Trim().ToUpper().Contains("OFFICER") ? (p.Profile.PositionLevel == null ? null : p.Profile.PositionLevel.Name) : (p.Profile.PositionEmployeeLevel == null ? null : p.Profile.PositionEmployeeLevel.Name), organizationOrganization = p.Profile.OrganizationOrganization, p.Reason, p.Status, diff --git a/BMA.EHR.Placement.Service/Controllers/PlacementReceiveController.cs b/BMA.EHR.Placement.Service/Controllers/PlacementReceiveController.cs index 50d33e2b..3671a7be 100644 --- a/BMA.EHR.Placement.Service/Controllers/PlacementReceiveController.cs +++ b/BMA.EHR.Placement.Service/Controllers/PlacementReceiveController.cs @@ -154,22 +154,22 @@ namespace BMA.EHR.Placement.Service.Controllers p.PositionNumberOld, p.OrganizationPositionOld, Avatar = p.Avatar == null ? Guid.Parse("00000000-0000-0000-0000-000000000000") : p.Avatar.Id, - // PlacementReceiveDocs = p.PlacementReceiveDocs.Where(d => d.Document != null).Select(d => new { d.Document.Id, d.Document.FileName }), + PlacementReceiveDocs = p.PlacementReceiveDocs.Where(d => d.Document != null).Select(d => new { d.Document.Id, d.Document.FileName }), }) .FirstOrDefaultAsync(); if (data == null) return Error(GlobalMessages.DataNotFound, 404); - // var placementReceiveDocs = new List(); - // foreach (var doc in data.PlacementReceiveDocs) - // { - // var _doc = new - // { - // doc.FileName, - // PathName = await _documentService.ImagesPath(doc.Id) - // }; - // placementReceiveDocs.Add(_doc); - // } + var placementReceiveDocs = new List(); + foreach (var doc in data.PlacementReceiveDocs) + { + var _doc = new + { + doc.FileName, + PathName = await _documentService.ImagesPath(doc.Id) + }; + placementReceiveDocs.Add(_doc); + } var _data = new { data.Id, @@ -206,7 +206,7 @@ namespace BMA.EHR.Placement.Service.Controllers data.PositionNumberOld, data.OrganizationPositionOld, Avatar = data.Avatar == Guid.Parse("00000000-0000-0000-0000-000000000000") ? null : await _documentService.ImagesPath(data.Avatar), - // Docs = placementReceiveDocs, + Docs = placementReceiveDocs, }; return Success(_data); @@ -302,6 +302,68 @@ namespace BMA.EHR.Placement.Service.Controllers return Success(); } + /// + /// อัพไฟล์เอกสาร + /// + /// + /// + /// ค่าตัวแปรที่ส่งมาไม่ถูกต้อง + /// ไม่ได้ Login เข้าระบบ + /// เมื่อเกิดข้อผิดพลาดในการทำงาน + [HttpPut("upload/{id:length(36)}")] + public async Task> PostFile([FromForm] PlacementFileRequest req, Guid id) + { + var uppdated = await _context.PlacementReceives + .Include(x => x.PlacementReceiveDocs) + .ThenInclude(x => x.Document) + .FirstOrDefaultAsync(x => x.Id == id); + if (uppdated == null) + return Error(GlobalMessages.PlacementReceiveNotFound, 404); + + var placementReceiveDocs = new List(); + foreach (var doc in uppdated.PlacementReceiveDocs) + { + if (doc.Document != null) + placementReceiveDocs.Add(doc.Document.Id); + } + _context.PlacementReceiveDocs.RemoveRange(uppdated.PlacementReceiveDocs); + await _context.SaveChangesAsync(); + foreach (var doc in placementReceiveDocs) + { + if (doc != null) + await _documentService.DeleteFileAsync(doc); + } + + if (Request.Form.Files != null && Request.Form.Files.Count != 0) + { + foreach (var file in Request.Form.Files) + { + var fileExtension = Path.GetExtension(file.FileName); + var doc = await _documentService.UploadFileAsync(file, file.FileName); + var _doc = await _context.Documents.AsQueryable() + .FirstOrDefaultAsync(x => x.Id == doc.Id); + if (_doc != null) + { + var placementReceiveDoc = new PlacementReceiveDoc + { + PlacementReceive = uppdated, + Document = _doc, + CreatedUserId = FullName ?? "", + CreatedFullName = UserId ?? "System Administrator", + CreatedAt = DateTime.Now, + LastUpdateFullName = FullName ?? "System Administrator", + LastUpdateUserId = UserId ?? "", + LastUpdatedAt = DateTime.Now, + }; + await _context.PlacementReceiveDocs.AddAsync(placementReceiveDoc); + } + } + } + await _context.SaveChangesAsync(); + + return Success(); + } + /// /// เลือกหน่วยงาน /// diff --git a/BMA.EHR.Placement.Service/Controllers/PlacementRepatriationController.cs b/BMA.EHR.Placement.Service/Controllers/PlacementRepatriationController.cs index 6b23e727..baf10add 100644 --- a/BMA.EHR.Placement.Service/Controllers/PlacementRepatriationController.cs +++ b/BMA.EHR.Placement.Service/Controllers/PlacementRepatriationController.cs @@ -66,9 +66,9 @@ namespace BMA.EHR.Placement.Service.Controllers Prefix = p.Profile.Prefix == null ? null : p.Profile.Prefix.Name, p.Profile.FirstName, p.Profile.LastName, - position = p.Profile.ProfileType.Trim().ToUpper().Contains("OFFICER") ? (p.Profile.Position == null ? null : p.Profile.Position.Name) : p.Profile.PositionEmployeePosition, + position = p.Profile.ProfileType.Trim().ToUpper().Contains("OFFICER") ? (p.Profile.Position == null ? null : p.Profile.Position.Name) : (p.Profile.PositionEmployeePosition == null ? null : p.Profile.PositionEmployeePosition.Name), posNo = p.Profile.ProfileType.Trim().ToUpper().Contains("OFFICER") ? (p.Profile.PosNo == null ? null : p.Profile.PosNo.Name) : p.Profile.PosNoEmployee, - positionLevel = p.Profile.ProfileType.Trim().ToUpper().Contains("OFFICER") ? (p.Profile.PositionLevel == null ? null : p.Profile.PositionLevel.Name) : p.Profile.PositionEmployeeLevel, + positionLevel = p.Profile.ProfileType.Trim().ToUpper().Contains("OFFICER") ? (p.Profile.PositionLevel == null ? null : p.Profile.PositionLevel.Name) : (p.Profile.PositionEmployeeLevel == null ? null : p.Profile.PositionEmployeeLevel.Name), p.CreatedAt, p.Organization, p.Reason, @@ -111,9 +111,9 @@ namespace BMA.EHR.Placement.Service.Controllers p.Profile.FirstName, p.Profile.LastName, ProfileId = p.Profile.Id, - position = p.Profile.ProfileType.Trim().ToUpper().Contains("OFFICER") ? (p.Profile.Position == null ? null : p.Profile.Position.Name) : p.Profile.PositionEmployeePosition, + position = p.Profile.ProfileType.Trim().ToUpper().Contains("OFFICER") ? (p.Profile.Position == null ? null : p.Profile.Position.Name) : (p.Profile.PositionEmployeePosition == null ? null : p.Profile.PositionEmployeePosition.Name), posNo = p.Profile.ProfileType.Trim().ToUpper().Contains("OFFICER") ? (p.Profile.PosNo == null ? null : p.Profile.PosNo.Name) : p.Profile.PosNoEmployee, - positionLevel = p.Profile.ProfileType.Trim().ToUpper().Contains("OFFICER") ? (p.Profile.PositionLevel == null ? null : p.Profile.PositionLevel.Name) : p.Profile.PositionEmployeeLevel, + positionLevel = p.Profile.ProfileType.Trim().ToUpper().Contains("OFFICER") ? (p.Profile.PositionLevel == null ? null : p.Profile.PositionLevel.Name) : (p.Profile.PositionEmployeeLevel == null ? null : p.Profile.PositionEmployeeLevel.Name), organizationOrganization = p.Profile.OrganizationOrganization, p.Reason, p.Status, diff --git a/BMA.EHR.Placement.Service/Controllers/PlacementTransferController.cs b/BMA.EHR.Placement.Service/Controllers/PlacementTransferController.cs index 2365b963..872add69 100644 --- a/BMA.EHR.Placement.Service/Controllers/PlacementTransferController.cs +++ b/BMA.EHR.Placement.Service/Controllers/PlacementTransferController.cs @@ -68,9 +68,9 @@ namespace BMA.EHR.Placement.Service.Controllers .Select(p => new { p.Id, - position = p.Profile.ProfileType.Trim().ToUpper().Contains("OFFICER") ? (p.Profile.Position == null ? null : p.Profile.Position.Name) : p.Profile.PositionEmployeePosition, + position = p.Profile.ProfileType.Trim().ToUpper().Contains("OFFICER") ? (p.Profile.Position == null ? null : p.Profile.Position.Name) : (p.Profile.PositionEmployeePosition == null ? null : p.Profile.PositionEmployeePosition.Name), posNo = p.Profile.ProfileType.Trim().ToUpper().Contains("OFFICER") ? (p.Profile.PosNo == null ? null : p.Profile.PosNo.Name) : p.Profile.PosNoEmployee, - positionLevel = p.Profile.ProfileType.Trim().ToUpper().Contains("OFFICER") ? (p.Profile.PositionLevel == null ? null : p.Profile.PositionLevel.Name) : p.Profile.PositionEmployeeLevel, + positionLevel = p.Profile.ProfileType.Trim().ToUpper().Contains("OFFICER") ? (p.Profile.PositionLevel == null ? null : p.Profile.PositionLevel.Name) : (p.Profile.PositionEmployeeLevel == null ? null : p.Profile.PositionEmployeeLevel.Name), // salary = p.Profile.Salaries.Count() == 0 ? null : p.Profile.Salaries.OrderByDescending(x => x.Order).FirstOrDefault().PositionSalaryAmount, p.CreatedAt, p.Organization, @@ -109,9 +109,9 @@ namespace BMA.EHR.Placement.Service.Controllers Prefix = p.Profile.Prefix == null ? null : p.Profile.Prefix.Name, p.Profile.FirstName, p.Profile.LastName, - position = p.Profile.ProfileType.Trim().ToUpper().Contains("OFFICER") ? (p.Profile.Position == null ? null : p.Profile.Position.Name) : p.Profile.PositionEmployeePosition, + position = p.Profile.ProfileType.Trim().ToUpper().Contains("OFFICER") ? (p.Profile.Position == null ? null : p.Profile.Position.Name) : (p.Profile.PositionEmployeePosition == null ? null : p.Profile.PositionEmployeePosition.Name), posNo = p.Profile.ProfileType.Trim().ToUpper().Contains("OFFICER") ? (p.Profile.PosNo == null ? null : p.Profile.PosNo.Name) : p.Profile.PosNoEmployee, - positionLevel = p.Profile.ProfileType.Trim().ToUpper().Contains("OFFICER") ? (p.Profile.PositionLevel == null ? null : p.Profile.PositionLevel.Name) : p.Profile.PositionEmployeeLevel, + positionLevel = p.Profile.ProfileType.Trim().ToUpper().Contains("OFFICER") ? (p.Profile.PositionLevel == null ? null : p.Profile.PositionLevel.Name) : (p.Profile.PositionEmployeeLevel == null ? null : p.Profile.PositionEmployeeLevel.Name), // salary = p.Profile.Salaries.Count() == 0 ? null : p.Profile.Salaries.OrderByDescending(x => x.Order).FirstOrDefault().PositionSalaryAmount, p.CreatedAt, p.Organization, @@ -155,9 +155,9 @@ namespace BMA.EHR.Placement.Service.Controllers p.Profile.FirstName, p.Profile.LastName, ProfileId = p.Profile.Id, - position = p.Profile.ProfileType.Trim().ToUpper().Contains("OFFICER") ? (p.Profile.Position == null ? null : p.Profile.Position.Name) : p.Profile.PositionEmployeePosition, + position = p.Profile.ProfileType.Trim().ToUpper().Contains("OFFICER") ? (p.Profile.Position == null ? null : p.Profile.Position.Name) : (p.Profile.PositionEmployeePosition == null ? null : p.Profile.PositionEmployeePosition.Name), posNo = p.Profile.ProfileType.Trim().ToUpper().Contains("OFFICER") ? (p.Profile.PosNo == null ? null : p.Profile.PosNo.Name) : p.Profile.PosNoEmployee, - positionLevel = p.Profile.ProfileType.Trim().ToUpper().Contains("OFFICER") ? (p.Profile.PositionLevel == null ? null : p.Profile.PositionLevel.Name) : p.Profile.PositionEmployeeLevel, + positionLevel = p.Profile.ProfileType.Trim().ToUpper().Contains("OFFICER") ? (p.Profile.PositionLevel == null ? null : p.Profile.PositionLevel.Name) : (p.Profile.PositionEmployeeLevel == null ? null : p.Profile.PositionEmployeeLevel.Name), organizationOrganization = p.Profile.OrganizationOrganization, p.Reason, p.Status, @@ -237,9 +237,9 @@ namespace BMA.EHR.Placement.Service.Controllers p.Profile.FirstName, p.Profile.LastName, ProfileId = p.Profile.Id, - position = p.Profile.ProfileType.Trim().ToUpper().Contains("OFFICER") ? (p.Profile.Position == null ? null : p.Profile.Position.Name) : p.Profile.PositionEmployeePosition, + position = p.Profile.ProfileType.Trim().ToUpper().Contains("OFFICER") ? (p.Profile.Position == null ? null : p.Profile.Position.Name) : (p.Profile.PositionEmployeePosition == null ? null : p.Profile.PositionEmployeePosition.Name), posNo = p.Profile.ProfileType.Trim().ToUpper().Contains("OFFICER") ? (p.Profile.PosNo == null ? null : p.Profile.PosNo.Name) : p.Profile.PosNoEmployee, - positionLevel = p.Profile.ProfileType.Trim().ToUpper().Contains("OFFICER") ? (p.Profile.PositionLevel == null ? null : p.Profile.PositionLevel.Name) : p.Profile.PositionEmployeeLevel, + positionLevel = p.Profile.ProfileType.Trim().ToUpper().Contains("OFFICER") ? (p.Profile.PositionLevel == null ? null : p.Profile.PositionLevel.Name) : (p.Profile.PositionEmployeeLevel == null ? null : p.Profile.PositionEmployeeLevel.Name), organizationOrganization = p.Profile.OrganizationOrganization, p.Reason, p.Status, diff --git a/BMA.EHR.Placement.Service/Requests/PlacementFileRequest.cs b/BMA.EHR.Placement.Service/Requests/PlacementFileRequest.cs new file mode 100644 index 00000000..4fe8ac4b --- /dev/null +++ b/BMA.EHR.Placement.Service/Requests/PlacementFileRequest.cs @@ -0,0 +1,10 @@ +using Microsoft.AspNetCore.Http; +using Microsoft.EntityFrameworkCore; + +namespace BMA.EHR.Placement.Service.Requests +{ + public class PlacementFileRequest + { + public List? File { get; set; } + } +} diff --git a/BMA.EHR.Retirement.Service/Controllers/RetirementController.cs b/BMA.EHR.Retirement.Service/Controllers/RetirementController.cs index 0b060abc..897b6aca 100644 --- a/BMA.EHR.Retirement.Service/Controllers/RetirementController.cs +++ b/BMA.EHR.Retirement.Service/Controllers/RetirementController.cs @@ -286,9 +286,9 @@ namespace BMA.EHR.Retirement.Service.Controllers positionType = x.Profile.PositionType == null ? null : x.Profile.PositionType.Name, positionExecutive = x.Profile.PositionExecutive, posNo = x.Profile.PosNo == null ? null : x.Profile.PosNo.Name, - positionEmployeePosition = x.Profile.PositionEmployeePosition, - positionEmployeeLevel = x.Profile.PositionEmployeeLevel, - positionEmployeeGroup = x.Profile.PositionEmployeeGroup, + positionEmployeePosition = x.Profile.PositionEmployeePosition == null ? null : x.Profile.PositionEmployeePosition.Name, + positionEmployeeLevel = x.Profile.PositionEmployeeLevel == null ? null : x.Profile.PositionEmployeeLevel.Name, + positionEmployeeGroup = x.Profile.PositionEmployeeGroup == null ? null : x.Profile.PositionEmployeeGroup.Name, posNoEmployee = x.Profile.PosNoEmployee, }) .ToListAsync(); @@ -415,9 +415,9 @@ namespace BMA.EHR.Retirement.Service.Controllers positionType = x.Profile.PositionType == null ? null : x.Profile.PositionType.Name, positionExecutive = x.Profile.PositionExecutive, posNo = x.Profile.PosNo == null ? null : x.Profile.PosNo.Name, - positionEmployeePosition = x.Profile.PositionEmployeePosition, - positionEmployeeLevel = x.Profile.PositionEmployeeLevel, - positionEmployeeGroup = x.Profile.PositionEmployeeGroup, + positionEmployeePosition = x.Profile.PositionEmployeePosition == null ? null : x.Profile.PositionEmployeePosition.Name, + positionEmployeeLevel = x.Profile.PositionEmployeeLevel == null ? null : x.Profile.PositionEmployeeLevel.Name, + positionEmployeeGroup = x.Profile.PositionEmployeeGroup == null ? null : x.Profile.PositionEmployeeGroup.Name, posNoEmployee = x.Profile.PosNoEmployee, }) .ToListAsync(); @@ -475,9 +475,9 @@ namespace BMA.EHR.Retirement.Service.Controllers positionType = x.Profile.PositionType == null ? null : x.Profile.PositionType.Name, positionExecutive = x.Profile.PositionExecutive, posNo = x.Profile.PosNo == null ? null : x.Profile.PosNo.Name, - positionEmployeePosition = x.Profile.PositionEmployeePosition, - positionEmployeeLevel = x.Profile.PositionEmployeeLevel, - positionEmployeeGroup = x.Profile.PositionEmployeeGroup, + positionEmployeePosition = x.Profile.PositionEmployeePosition == null ? null : x.Profile.PositionEmployeePosition.Name, + positionEmployeeLevel = x.Profile.PositionEmployeeLevel == null ? null : x.Profile.PositionEmployeeLevel.Name, + positionEmployeeGroup = x.Profile.PositionEmployeeGroup == null ? null : x.Profile.PositionEmployeeGroup.Name, posNoEmployee = x.Profile.PosNoEmployee, }) .ToListAsync(); diff --git a/BMA.EHR.Retirement.Service/Controllers/RetirementDischargeController.cs b/BMA.EHR.Retirement.Service/Controllers/RetirementDischargeController.cs index edb58680..463fdd05 100644 --- a/BMA.EHR.Retirement.Service/Controllers/RetirementDischargeController.cs +++ b/BMA.EHR.Retirement.Service/Controllers/RetirementDischargeController.cs @@ -66,9 +66,9 @@ namespace BMA.EHR.Retirement.Service.Controllers Prefix = p.Profile.Prefix == null ? null : p.Profile.Prefix.Name, p.Profile.FirstName, p.Profile.LastName, - position = p.Profile.ProfileType.Trim().ToUpper().Contains("OFFICER") ? (p.Profile.Position == null ? null : p.Profile.Position.Name) : p.Profile.PositionEmployeePosition, + position = p.Profile.ProfileType.Trim().ToUpper().Contains("OFFICER") ? (p.Profile.Position == null ? null : p.Profile.Position.Name) : (p.Profile.PositionEmployeePosition == null ? null : p.Profile.PositionEmployeePosition.Name), posNo = p.Profile.ProfileType.Trim().ToUpper().Contains("OFFICER") ? (p.Profile.PosNo == null ? null : p.Profile.PosNo.Name) : p.Profile.PosNoEmployee, - positionLevel = p.Profile.ProfileType.Trim().ToUpper().Contains("OFFICER") ? (p.Profile.PositionLevel == null ? null : p.Profile.PositionLevel.Name) : p.Profile.PositionEmployeeLevel, + positionLevel = p.Profile.ProfileType.Trim().ToUpper().Contains("OFFICER") ? (p.Profile.PositionLevel == null ? null : p.Profile.PositionLevel.Name) : (p.Profile.PositionEmployeeLevel == null ? null : p.Profile.PositionEmployeeLevel.Name), p.CreatedAt, p.Organization, p.Reason, @@ -111,9 +111,9 @@ namespace BMA.EHR.Retirement.Service.Controllers p.Profile.FirstName, p.Profile.LastName, ProfileId = p.Profile.Id, - position = p.Profile.ProfileType.Trim().ToUpper().Contains("OFFICER") ? (p.Profile.Position == null ? null : p.Profile.Position.Name) : p.Profile.PositionEmployeePosition, + position = p.Profile.ProfileType.Trim().ToUpper().Contains("OFFICER") ? (p.Profile.Position == null ? null : p.Profile.Position.Name) : (p.Profile.PositionEmployeePosition == null ? null : p.Profile.PositionEmployeePosition.Name), posNo = p.Profile.ProfileType.Trim().ToUpper().Contains("OFFICER") ? (p.Profile.PosNo == null ? null : p.Profile.PosNo.Name) : p.Profile.PosNoEmployee, - positionLevel = p.Profile.ProfileType.Trim().ToUpper().Contains("OFFICER") ? (p.Profile.PositionLevel == null ? null : p.Profile.PositionLevel.Name) : p.Profile.PositionEmployeeLevel, + positionLevel = p.Profile.ProfileType.Trim().ToUpper().Contains("OFFICER") ? (p.Profile.PositionLevel == null ? null : p.Profile.PositionLevel.Name) : (p.Profile.PositionEmployeeLevel == null ? null : p.Profile.PositionEmployeeLevel.Name), organizationOrganization = p.Profile.OrganizationOrganization, p.Reason, p.Status, diff --git a/BMA.EHR.Retirement.Service/Controllers/RetirementExpulsionController.cs b/BMA.EHR.Retirement.Service/Controllers/RetirementExpulsionController.cs index 4dcd2e35..1ef32846 100644 --- a/BMA.EHR.Retirement.Service/Controllers/RetirementExpulsionController.cs +++ b/BMA.EHR.Retirement.Service/Controllers/RetirementExpulsionController.cs @@ -66,9 +66,9 @@ namespace BMA.EHR.Retirement.Service.Controllers Prefix = p.Profile.Prefix == null ? null : p.Profile.Prefix.Name, p.Profile.FirstName, p.Profile.LastName, - position = p.Profile.ProfileType.Trim().ToUpper().Contains("OFFICER") ? (p.Profile.Position == null ? null : p.Profile.Position.Name) : p.Profile.PositionEmployeePosition, + position = p.Profile.ProfileType.Trim().ToUpper().Contains("OFFICER") ? (p.Profile.Position == null ? null : p.Profile.Position.Name) : (p.Profile.PositionEmployeePosition == null ? null : p.Profile.PositionEmployeePosition.Name), posNo = p.Profile.ProfileType.Trim().ToUpper().Contains("OFFICER") ? (p.Profile.PosNo == null ? null : p.Profile.PosNo.Name) : p.Profile.PosNoEmployee, - positionLevel = p.Profile.ProfileType.Trim().ToUpper().Contains("OFFICER") ? (p.Profile.PositionLevel == null ? null : p.Profile.PositionLevel.Name) : p.Profile.PositionEmployeeLevel, + positionLevel = p.Profile.ProfileType.Trim().ToUpper().Contains("OFFICER") ? (p.Profile.PositionLevel == null ? null : p.Profile.PositionLevel.Name) : (p.Profile.PositionEmployeeLevel == null ? null : p.Profile.PositionEmployeeLevel.Name), p.CreatedAt, p.Organization, p.Reason, @@ -111,9 +111,9 @@ namespace BMA.EHR.Retirement.Service.Controllers p.Profile.FirstName, p.Profile.LastName, ProfileId = p.Profile.Id, - position = p.Profile.ProfileType.Trim().ToUpper().Contains("OFFICER") ? (p.Profile.Position == null ? null : p.Profile.Position.Name) : p.Profile.PositionEmployeePosition, + position = p.Profile.ProfileType.Trim().ToUpper().Contains("OFFICER") ? (p.Profile.Position == null ? null : p.Profile.Position.Name) : (p.Profile.PositionEmployeePosition == null ? null : p.Profile.PositionEmployeePosition.Name), posNo = p.Profile.ProfileType.Trim().ToUpper().Contains("OFFICER") ? (p.Profile.PosNo == null ? null : p.Profile.PosNo.Name) : p.Profile.PosNoEmployee, - positionLevel = p.Profile.ProfileType.Trim().ToUpper().Contains("OFFICER") ? (p.Profile.PositionLevel == null ? null : p.Profile.PositionLevel.Name) : p.Profile.PositionEmployeeLevel, + positionLevel = p.Profile.ProfileType.Trim().ToUpper().Contains("OFFICER") ? (p.Profile.PositionLevel == null ? null : p.Profile.PositionLevel.Name) : (p.Profile.PositionEmployeeLevel == null ? null : p.Profile.PositionEmployeeLevel.Name), organizationOrganization = p.Profile.OrganizationOrganization, p.Reason, p.Status, diff --git a/BMA.EHR.Retirement.Service/Controllers/RetirementOutController.cs b/BMA.EHR.Retirement.Service/Controllers/RetirementOutController.cs index cb624f65..2b2a8240 100644 --- a/BMA.EHR.Retirement.Service/Controllers/RetirementOutController.cs +++ b/BMA.EHR.Retirement.Service/Controllers/RetirementOutController.cs @@ -66,9 +66,9 @@ namespace BMA.EHR.Retirement.Service.Controllers Prefix = p.Profile.Prefix == null ? null : p.Profile.Prefix.Name, p.Profile.FirstName, p.Profile.LastName, - position = p.Profile.ProfileType.Trim().ToUpper().Contains("OFFICER") ? (p.Profile.Position == null ? null : p.Profile.Position.Name) : p.Profile.PositionEmployeePosition, + position = p.Profile.ProfileType.Trim().ToUpper().Contains("OFFICER") ? (p.Profile.Position == null ? null : p.Profile.Position.Name) : (p.Profile.PositionEmployeePosition == null ? null : p.Profile.PositionEmployeePosition.Name), posNo = p.Profile.ProfileType.Trim().ToUpper().Contains("OFFICER") ? (p.Profile.PosNo == null ? null : p.Profile.PosNo.Name) : p.Profile.PosNoEmployee, - positionLevel = p.Profile.ProfileType.Trim().ToUpper().Contains("OFFICER") ? (p.Profile.PositionLevel == null ? null : p.Profile.PositionLevel.Name) : p.Profile.PositionEmployeeLevel, + positionLevel = p.Profile.ProfileType.Trim().ToUpper().Contains("OFFICER") ? (p.Profile.PositionLevel == null ? null : p.Profile.PositionLevel.Name) : (p.Profile.PositionEmployeeLevel == null ? null : p.Profile.PositionEmployeeLevel.Name), p.CreatedAt, p.Organization, p.Reason, @@ -111,9 +111,9 @@ namespace BMA.EHR.Retirement.Service.Controllers p.Profile.FirstName, p.Profile.LastName, ProfileId = p.Profile.Id, - position = p.Profile.ProfileType.Trim().ToUpper().Contains("OFFICER") ? (p.Profile.Position == null ? null : p.Profile.Position.Name) : p.Profile.PositionEmployeePosition, + position = p.Profile.ProfileType.Trim().ToUpper().Contains("OFFICER") ? (p.Profile.Position == null ? null : p.Profile.Position.Name) : (p.Profile.PositionEmployeePosition == null ? null : p.Profile.PositionEmployeePosition.Name), posNo = p.Profile.ProfileType.Trim().ToUpper().Contains("OFFICER") ? (p.Profile.PosNo == null ? null : p.Profile.PosNo.Name) : p.Profile.PosNoEmployee, - positionLevel = p.Profile.ProfileType.Trim().ToUpper().Contains("OFFICER") ? (p.Profile.PositionLevel == null ? null : p.Profile.PositionLevel.Name) : p.Profile.PositionEmployeeLevel, + positionLevel = p.Profile.ProfileType.Trim().ToUpper().Contains("OFFICER") ? (p.Profile.PositionLevel == null ? null : p.Profile.PositionLevel.Name) : (p.Profile.PositionEmployeeLevel == null ? null : p.Profile.PositionEmployeeLevel.Name), organizationOrganization = p.Profile.OrganizationOrganization, p.Reason, p.Status, diff --git a/BMA.EHR.Retirement.Service/Controllers/RetirementResignController.cs b/BMA.EHR.Retirement.Service/Controllers/RetirementResignController.cs index a37394d3..68eb0fd2 100644 --- a/BMA.EHR.Retirement.Service/Controllers/RetirementResignController.cs +++ b/BMA.EHR.Retirement.Service/Controllers/RetirementResignController.cs @@ -514,7 +514,8 @@ namespace BMA.EHR.Retirement.Service.Controllers .FirstOrDefaultAsync(x => x.Id == id); if (updated == null) return Error(GlobalMessages.RetirementResignNotFound, 404); - + if ((DateTime.Now - updated.CreatedAt).TotalDays > 90) + return Error("สามารถยับยั้งได้ไม่เกิน 90 วัน"); // updated.Status = "REJECT"; updated.CommanderReject = true; updated.CommanderRejectReason = req.Reason; @@ -570,7 +571,8 @@ namespace BMA.EHR.Retirement.Service.Controllers .FirstOrDefaultAsync(x => x.Id == id); if (updated == null) return Error(GlobalMessages.RetirementResignNotFound, 404); - + if ((DateTime.Now - updated.CreatedAt).TotalDays > 90) + return Error("สามารถยับยั้งได้ไม่เกิน 90 วัน"); updated.Status = "REJECT"; updated.OligarchReject = true; updated.OligarchRejectReason = req.Reason;