From 83fc05c7745fe39c38303be31298629956955aa2 Mon Sep 17 00:00:00 2001 From: Bright Date: Fri, 18 Oct 2024 17:41:15 +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=E0=B9=81=E0=B8=95?= =?UTF-8?q?=E0=B9=88=E0=B8=87=E0=B8=95=E0=B8=B1=E0=B9=89=E0=B8=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Controllers/PlacementAppointmentController.cs | 3 ++- .../PlacementAppointmentEmployeeController.cs | 3 ++- .../Controllers/PlacementController.cs | 13 +++++++++++-- .../Controllers/PlacementOfficerController.cs | 3 ++- .../Controllers/PlacementReceiveController.cs | 3 ++- .../Controllers/PlacementRelocationController.cs | 3 ++- .../Controllers/PlacementRepatriationController.cs | 3 ++- .../Controllers/PlacementTransferController.cs | 3 ++- 8 files changed, 25 insertions(+), 9 deletions(-) diff --git a/BMA.EHR.Placement.Service/Controllers/PlacementAppointmentController.cs b/BMA.EHR.Placement.Service/Controllers/PlacementAppointmentController.cs index 23950d75..7baa1a68 100644 --- a/BMA.EHR.Placement.Service/Controllers/PlacementAppointmentController.cs +++ b/BMA.EHR.Placement.Service/Controllers/PlacementAppointmentController.cs @@ -57,7 +57,8 @@ namespace BMA.EHR.Placement.Service.Controllers private string? FullName => _httpContextAccessor?.HttpContext?.User?.FindFirst("name")?.Value; private string? token => _httpContextAccessor?.HttpContext?.Request.Headers["Authorization"]; - private bool? PlacementAdmin => _httpContextAccessor?.HttpContext?.User?.IsInRole("placement1"); + //private bool? PlacementAdmin => _httpContextAccessor?.HttpContext?.User?.IsInRole("placement1"); + private bool? PlacementAdmin => _httpContextAccessor?.HttpContext?.User?.Claims?.Any(claim => new[] { "placement", "placement1", "placement2" }.Contains(claim.Value)); #endregion diff --git a/BMA.EHR.Placement.Service/Controllers/PlacementAppointmentEmployeeController.cs b/BMA.EHR.Placement.Service/Controllers/PlacementAppointmentEmployeeController.cs index 6a0ea4c7..28502e11 100644 --- a/BMA.EHR.Placement.Service/Controllers/PlacementAppointmentEmployeeController.cs +++ b/BMA.EHR.Placement.Service/Controllers/PlacementAppointmentEmployeeController.cs @@ -56,7 +56,8 @@ namespace BMA.EHR.Placement.Service.Controllers private string? FullName => _httpContextAccessor?.HttpContext?.User?.FindFirst("name")?.Value; private string? token => _httpContextAccessor?.HttpContext?.Request.Headers["Authorization"]; - private bool? PlacementAdmin => _httpContextAccessor?.HttpContext?.User?.IsInRole("placement1"); + //private bool? PlacementAdmin => _httpContextAccessor?.HttpContext?.User?.IsInRole("placement1"); + private bool? PlacementAdmin => _httpContextAccessor?.HttpContext?.User?.Claims?.Any(claim => new[] { "placement", "placement1", "placement2" }.Contains(claim.Value)); #endregion diff --git a/BMA.EHR.Placement.Service/Controllers/PlacementController.cs b/BMA.EHR.Placement.Service/Controllers/PlacementController.cs index e1227d44..cafede5a 100644 --- a/BMA.EHR.Placement.Service/Controllers/PlacementController.cs +++ b/BMA.EHR.Placement.Service/Controllers/PlacementController.cs @@ -57,7 +57,8 @@ namespace BMA.EHR.Placement.Service.Controllers private string? FullName => _httpContextAccessor?.HttpContext?.User?.FindFirst("name")?.Value; private string? token => _httpContextAccessor.HttpContext.Request.Headers["Authorization"]; - private bool? PlacementAdmin => _httpContextAccessor?.HttpContext?.User?.IsInRole("placement1"); + //private bool? PlacementAdmin => _httpContextAccessor?.HttpContext?.User?.IsInRole("placement"); + private bool? PlacementAdmin => _httpContextAccessor?.HttpContext?.User?.Claims?.Any(claim => new[] { "placement", "placement1", "placement2" }.Contains(claim.Value)); #endregion @@ -1531,6 +1532,7 @@ namespace BMA.EHR.Placement.Service.Controllers var report_data = (from p in _context.PlacementProfiles .Include(x => x.Placement) .Include(x => x.PlacementEducations) + .Include(x => x.PositionCandidate) // .ThenInclude(x => x.PlacementType) .Where(x => req.refIds.Select(x => x.refId).Contains(x.Id.ToString())) // .Where(x => x.Placement!.PlacementType!.Name != "สอบแข่งขัน") @@ -1548,7 +1550,12 @@ namespace BMA.EHR.Placement.Service.Controllers PositionName = p.positionName == null ? "" : p.positionName, ExamNumber = p.ExamNumber == null ? "0" : p.ExamNumber.Value.ToString().ToThaiNumber(), PlacementName = $"{p.Placement.Name.ToThaiNumber()} ครั้งที่ {p.Placement.Round.ToThaiNumber()}/{p.Placement.Year.ToThaiYear().ToString().ToThaiNumber()}", - Oc = (p.positionName == null ? "" : p.positionName) + "/" + (p.root == null ? "" : p.root), + Oc = p.root == null ? "" : + p.node == 4 ? $"{p.child4}/{p.child3}/{p.child2}/{p.child1}/{p.root}" : + p.node == 3 ? $"{p.child3}/{p.child2}/{p.child1}/{p.root}" : + p.node == 2 ? $"{p.child2}/{p.child1}/{p.root}" : + p.node == 1 ? $"{p.child1}/{p.root}" : + p.node == 0 ? $"{p.root}" : "", PositionType = p.posTypeName == null ? "" : p.posTypeName, PositionLevel = p.posLevelName == null ? "" : p.posLevelName, PositionNumber = p.posMasterNo == null ? "" : @@ -1561,6 +1568,8 @@ namespace BMA.EHR.Placement.Service.Controllers AppointDate = p.ReportingDate == null ? "" : p.ReportingDate.Value.ToThaiShortDate2().ToThaiNumber(), RemarkHorizontal = r.RemarkHorizontal, RemarkVertical = r.RemarkVertical, + OccupationPosition = p.OccupationPosition == null ? "" : p.OccupationPosition, //ตำแหน่งเก่าก่อนสอบ + PositionCandidate = p.PositionCandidate == null ? "" : p.PositionCandidate.Name //ตำแหน่งที่สอบแข่งขัน }).ToList(); return Success(report_data); } diff --git a/BMA.EHR.Placement.Service/Controllers/PlacementOfficerController.cs b/BMA.EHR.Placement.Service/Controllers/PlacementOfficerController.cs index 02dfe7d6..0f574e63 100644 --- a/BMA.EHR.Placement.Service/Controllers/PlacementOfficerController.cs +++ b/BMA.EHR.Placement.Service/Controllers/PlacementOfficerController.cs @@ -57,7 +57,8 @@ namespace BMA.EHR.Placement.Service.Controllers private string? FullName => _httpContextAccessor?.HttpContext?.User?.FindFirst("name")?.Value; private string? token => _httpContextAccessor?.HttpContext?.Request.Headers["Authorization"]; - private bool? PlacementAdmin => _httpContextAccessor?.HttpContext?.User?.IsInRole("placement1"); + //private bool? PlacementAdmin => _httpContextAccessor?.HttpContext?.User?.IsInRole("placement1"); + private bool? PlacementAdmin => _httpContextAccessor?.HttpContext?.User?.Claims?.Any(claim => new[] { "placement", "placement1", "placement2" }.Contains(claim.Value)); #endregion diff --git a/BMA.EHR.Placement.Service/Controllers/PlacementReceiveController.cs b/BMA.EHR.Placement.Service/Controllers/PlacementReceiveController.cs index a912f42a..41a430d5 100644 --- a/BMA.EHR.Placement.Service/Controllers/PlacementReceiveController.cs +++ b/BMA.EHR.Placement.Service/Controllers/PlacementReceiveController.cs @@ -57,7 +57,8 @@ namespace BMA.EHR.Placement.Service.Controllers private string? FullName => _httpContextAccessor?.HttpContext?.User?.FindFirst("name")?.Value; private string? token => _httpContextAccessor?.HttpContext?.Request.Headers["Authorization"]; - private bool? PlacementAdmin => _httpContextAccessor?.HttpContext?.User?.IsInRole("placement1"); + //private bool? PlacementAdmin => _httpContextAccessor?.HttpContext?.User?.IsInRole("placement1"); + private bool? PlacementAdmin => _httpContextAccessor?.HttpContext?.User?.Claims?.Any(claim => new[] { "placement", "placement1", "placement2" }.Contains(claim.Value)); #endregion diff --git a/BMA.EHR.Placement.Service/Controllers/PlacementRelocationController.cs b/BMA.EHR.Placement.Service/Controllers/PlacementRelocationController.cs index 81ca987b..7a68f54c 100644 --- a/BMA.EHR.Placement.Service/Controllers/PlacementRelocationController.cs +++ b/BMA.EHR.Placement.Service/Controllers/PlacementRelocationController.cs @@ -46,7 +46,8 @@ namespace BMA.EHR.Placement.Service.Controllers private string? FullName => _httpContextAccessor?.HttpContext?.User?.FindFirst("name")?.Value; - private bool? PlacementAdmin => _httpContextAccessor?.HttpContext?.User?.IsInRole("placement1"); + //private bool? PlacementAdmin => _httpContextAccessor?.HttpContext?.User?.IsInRole("placement1"); + private bool? PlacementAdmin => _httpContextAccessor?.HttpContext?.User?.Claims?.Any(claim => new[] { "placement", "placement1", "placement2" }.Contains(claim.Value)); #endregion diff --git a/BMA.EHR.Placement.Service/Controllers/PlacementRepatriationController.cs b/BMA.EHR.Placement.Service/Controllers/PlacementRepatriationController.cs index ff68ddb1..03395573 100644 --- a/BMA.EHR.Placement.Service/Controllers/PlacementRepatriationController.cs +++ b/BMA.EHR.Placement.Service/Controllers/PlacementRepatriationController.cs @@ -58,7 +58,8 @@ namespace BMA.EHR.Placement.Service.Controllers private string? FullName => _httpContextAccessor?.HttpContext?.User?.FindFirst("name")?.Value; private string? token => _httpContextAccessor?.HttpContext?.Request.Headers["Authorization"]; - private bool? PlacementAdmin => _httpContextAccessor?.HttpContext?.User?.IsInRole("placement1"); + //private bool? PlacementAdmin => _httpContextAccessor?.HttpContext?.User?.IsInRole("placement1"); + private bool? PlacementAdmin => _httpContextAccessor?.HttpContext?.User?.Claims?.Any(claim => new[] { "placement", "placement1", "placement2" }.Contains(claim.Value)); #endregion diff --git a/BMA.EHR.Placement.Service/Controllers/PlacementTransferController.cs b/BMA.EHR.Placement.Service/Controllers/PlacementTransferController.cs index fa164e3f..987f11e2 100644 --- a/BMA.EHR.Placement.Service/Controllers/PlacementTransferController.cs +++ b/BMA.EHR.Placement.Service/Controllers/PlacementTransferController.cs @@ -57,7 +57,8 @@ namespace BMA.EHR.Placement.Service.Controllers private string? FullName => _httpContextAccessor?.HttpContext?.User?.FindFirst("name")?.Value; private string? token => _httpContextAccessor?.HttpContext?.Request.Headers["Authorization"]; - private bool? PlacementAdmin => _httpContextAccessor?.HttpContext?.User?.IsInRole("placement1"); + //private bool? PlacementAdmin => _httpContextAccessor?.HttpContext?.User?.IsInRole("placement1"); + private bool? PlacementAdmin => _httpContextAccessor?.HttpContext?.User?.Claims?.Any(claim => new[] { "placement", "placement1", "placement2" }.Contains(claim.Value)); #endregion