From ec04665f39fb600cb305bf45241048dd4316cf03 Mon Sep 17 00:00:00 2001 From: kittapath <> Date: Fri, 12 Dec 2025 01:36:06 +0700 Subject: [PATCH] add permission brother --- .../LeaveRequests/LeaveRequestRepository.cs | 31 +- .../AdditionalCheckRequestRepository.cs | 6 + .../ProcessUserTimeStampRepository.cs | 18 +- .../TimeAttendants/UserTimeStampRepository.cs | 6 + .../DisciplineComplaint_AppealController.cs | 17 + .../Controllers/InsigniaManageController.cs | 34 ++ .../Controllers/LeaveBeginningController.cs | 25 +- BMA.EHR.Leave/Controllers/LeaveController.cs | 60 ++++ .../Controllers/LeaveReportController.cs | 68 +++- .../Controllers/LeaveRequestController.cs | 40 ++- .../PlacementAppointmentController.cs | 17 + .../PlacementAppointmentEmployeeController.cs | 17 + .../Controllers/PlacementOfficerController.cs | 17 + .../Controllers/PlacementReceiveController.cs | 17 + .../PlacementRepatriationController.cs | 17 + .../PlacementTransferController.cs | 17 + .../RetirementDeceasedController.cs | 17 + .../Controllers/RetirementOtherController.cs | 17 + .../Controllers/RetirementOutController.cs | 17 + .../Controllers/RetirementResignController.cs | 293 +++--------------- .../RetirementResignEmployeeController.cs | 286 +++-------------- 21 files changed, 546 insertions(+), 491 deletions(-) diff --git a/BMA.EHR.Application/Repositories/Leaves/LeaveRequests/LeaveRequestRepository.cs b/BMA.EHR.Application/Repositories/Leaves/LeaveRequests/LeaveRequestRepository.cs index f71f5e15..ce22cd23 100644 --- a/BMA.EHR.Application/Repositories/Leaves/LeaveRequests/LeaveRequestRepository.cs +++ b/BMA.EHR.Application/Repositories/Leaves/LeaveRequests/LeaveRequestRepository.cs @@ -289,6 +289,11 @@ namespace BMA.EHR.Application.Repositories.Leaves.LeaveRequests rawData = rawData .Where(x => node == 4 ? x.Child4DnaId == Guid.Parse(nodeId!) : (node == 3 ? x.Child3DnaId == Guid.Parse(nodeId!) : (node == 2 ? x.Child2DnaId == Guid.Parse(nodeId!) : (node == 1 ? x.Child1DnaId == Guid.Parse(nodeId!) : (node == 0 ? x.RootDnaId == Guid.Parse(nodeId!) : (node == null ? true : true)))))).ToList(); } + else if (role == "BROTHER") + { + rawData = rawData + .Where(x => node == 4 ? x.Child3DnaId == Guid.Parse(nodeId!) : (node == 3 ? x.Child2DnaId == Guid.Parse(nodeId!) : (node == 2 ? x.Child1DnaId == Guid.Parse(nodeId!) : (node == 1 || node == 0 ? x.RootDnaId == Guid.Parse(nodeId!) : (node == null ? true : true))))).ToList(); + } else if (role == "ROOT") { rawData = rawData @@ -398,6 +403,11 @@ namespace BMA.EHR.Application.Repositories.Leaves.LeaveRequests rawData = rawData .Where(x => node == 4 ? x.Child4DnaId == Guid.Parse(nodeId!) : (node == 3 ? x.Child3DnaId == Guid.Parse(nodeId!) : (node == 2 ? x.Child2DnaId == Guid.Parse(nodeId!) : (node == 1 ? x.Child1DnaId == Guid.Parse(nodeId!) : (node == 0 ? x.RootDnaId == Guid.Parse(nodeId!) : (node == null ? true : true)))))); } + else if (role == "BROTHER") + { + rawData = rawData + .Where(x => node == 4 ? x.Child3DnaId == Guid.Parse(nodeId!) : (node == 3 ? x.Child2DnaId == Guid.Parse(nodeId!) : (node == 2 ? x.Child1DnaId == Guid.Parse(nodeId!) : (node == 1 || node == 0 ? x.RootDnaId == Guid.Parse(nodeId!) : (node == null ? true : true))))); + } else if (role == "ROOT") { rawData = rawData @@ -575,6 +585,11 @@ namespace BMA.EHR.Application.Repositories.Leaves.LeaveRequests rawData = rawData .Where(x => node == 4 ? x.Child4DnaId == Guid.Parse(nodeId!) : (node == 3 ? x.Child3DnaId == Guid.Parse(nodeId!) : (node == 2 ? x.Child2DnaId == Guid.Parse(nodeId!) : (node == 1 ? x.Child1DnaId == Guid.Parse(nodeId!) : (node == 0 ? x.RootDnaId == Guid.Parse(nodeId!) : (node == null ? true : true)))))); } + else if (role == "BROTHER") + { + rawData = rawData + .Where(x => node == 4 ? x.Child3DnaId == Guid.Parse(nodeId!) : (node == 3 ? x.Child2DnaId == Guid.Parse(nodeId!) : (node == 2 ? x.Child1DnaId == Guid.Parse(nodeId!) : (node == 1 || node == 0 ? x.RootDnaId == Guid.Parse(nodeId!) : (node == null ? true : true))))); + } else if (role == "ROOT") { rawData = rawData @@ -875,7 +890,7 @@ namespace BMA.EHR.Application.Repositories.Leaves.LeaveRequests // fix: If no commander, skip notification if (firstCommander != null) - { + { // Send Notification var noti1 = new Notification { @@ -1112,7 +1127,7 @@ namespace BMA.EHR.Application.Repositories.Leaves.LeaveRequests .Where(x => x.ApproveType!.ToUpper() == "COMMANDER") .OrderBy(x => x.Seq) .ToList(); - if(commanders.Count > 0 || commanders != null) + if (commanders.Count > 0 || commanders != null) { if (rawData.ApproveStep != "st3") { @@ -1594,6 +1609,16 @@ namespace BMA.EHR.Application.Repositories.Leaves.LeaveRequests node == null ? true : true ).ToList(); } + else if (role == "BROTHER") + { + data = data.Where(x => + node == 4 ? x.Child3DnaId == Guid.Parse(nodeId) : + node == 3 ? x.Child2DnaId == Guid.Parse(nodeId) : + node == 2 ? x.Child1DnaId == Guid.Parse(nodeId) : + node == 1 || node == 0 ? x.RootDnaId == Guid.Parse(nodeId) : + node == null ? true : true + ).ToList(); + } else if (role == "ROOT") { data = data.Where(x => x.RootDnaId == Guid.Parse(nodeId)).ToList(); @@ -1614,7 +1639,7 @@ namespace BMA.EHR.Application.Repositories.Leaves.LeaveRequests ).ToList(); } // กรองตามที่ fe ส่งมา - if (role == "ROOT" || role == "OWNER" || role == "CHILD" || role == "PARENT") + if (role == "ROOT" || role == "OWNER" || role == "CHILD" || role == "BROTHER" || role == "PARENT") { data = data .Where(x => nodeByReq == 4 ? x.Child4Id == Guid.Parse(nodeIdByReq) : nodeByReq == 3 ? x.Child3Id == Guid.Parse(nodeIdByReq) : nodeByReq == 2 ? x.Child2Id == Guid.Parse(nodeIdByReq) : nodeByReq == 1 ? x.Child1Id == Guid.Parse(nodeIdByReq) : nodeByReq == 0 ? x.RootId == Guid.Parse(nodeIdByReq) : true) diff --git a/BMA.EHR.Application/Repositories/Leaves/TimeAttendants/AdditionalCheckRequestRepository.cs b/BMA.EHR.Application/Repositories/Leaves/TimeAttendants/AdditionalCheckRequestRepository.cs index 68d4f32a..04c0c921 100644 --- a/BMA.EHR.Application/Repositories/Leaves/TimeAttendants/AdditionalCheckRequestRepository.cs +++ b/BMA.EHR.Application/Repositories/Leaves/TimeAttendants/AdditionalCheckRequestRepository.cs @@ -160,6 +160,12 @@ namespace BMA.EHR.Application.Repositories.Leaves.TimeAttendants .Where(x => node == 4 ? x.Child4DnaId == Guid.Parse(nodeId!) : (node == 3 ? x.Child3DnaId == Guid.Parse(nodeId!) : (node == 2 ? x.Child2DnaId == Guid.Parse(nodeId!) : (node == 1 ? x.Child1DnaId == Guid.Parse(nodeId!) : (node == 0 ? x.RootDnaId == Guid.Parse(nodeId!) : (node == null ? true : true)))))) .ToList(); } + else if (role == "BROTHER") + { + data = data + .Where(x => node == 4 ? x.Child3DnaId == Guid.Parse(nodeId!) : (node == 3 ? x.Child2DnaId == Guid.Parse(nodeId!) : (node == 2 ? x.Child1DnaId == Guid.Parse(nodeId!) : (node == 1 || node == 0 ? x.RootDnaId == Guid.Parse(nodeId!) : (node == null ? true : true))))) + .ToList(); + } else if (role == "ROOT") { data = data diff --git a/BMA.EHR.Application/Repositories/Leaves/TimeAttendants/ProcessUserTimeStampRepository.cs b/BMA.EHR.Application/Repositories/Leaves/TimeAttendants/ProcessUserTimeStampRepository.cs index bc517b13..64d32a19 100644 --- a/BMA.EHR.Application/Repositories/Leaves/TimeAttendants/ProcessUserTimeStampRepository.cs +++ b/BMA.EHR.Application/Repositories/Leaves/TimeAttendants/ProcessUserTimeStampRepository.cs @@ -158,6 +158,16 @@ namespace BMA.EHR.Application.Repositories.Leaves.TimeAttendants node == null ? true : true ).ToList(); } + else if (role == "BROTHER") + { + data = data.Where(x => + node == 4 ? x.Child3DnaId == Guid.Parse(nodeId) : + node == 3 ? x.Child2DnaId == Guid.Parse(nodeId) : + node == 2 ? x.Child1DnaId == Guid.Parse(nodeId) : + node == 1 || node == 0 ? x.RootDnaId == Guid.Parse(nodeId) : + node == null ? true : true + ).ToList(); + } else if (role == "ROOT") { data = data.Where(x => x.RootDnaId == Guid.Parse(nodeId)).ToList(); @@ -178,7 +188,7 @@ namespace BMA.EHR.Application.Repositories.Leaves.TimeAttendants ).ToList(); } // กรองตามที่ fe ส่งมา - if (role == "ROOT" || role == "OWNER" || role == "CHILD" || role == "PARENT") + if (role == "ROOT" || role == "OWNER" || role == "CHILD" || role == "BROTHER" || role == "PARENT") { data = data.Where(x => nodeByReq == 4 ? x.Child4Id == Guid.Parse(nodeIdByReq) : @@ -266,6 +276,12 @@ namespace BMA.EHR.Application.Repositories.Leaves.TimeAttendants .Where(x => node == 4 ? x.Child4DnaId == Guid.Parse(nodeId!) : (node == 3 ? x.Child3DnaId == Guid.Parse(nodeId!) : (node == 2 ? x.Child2DnaId == Guid.Parse(nodeId!) : (node == 1 ? x.Child1DnaId == Guid.Parse(nodeId!) : (node == 0 ? x.RootDnaId == Guid.Parse(nodeId!) : (node == null ? true : true)))))) .ToList(); } + else if (role == "BROTHER") + { + data = data + .Where(x => node == 4 ? x.Child3DnaId == Guid.Parse(nodeId!) : (node == 3 ? x.Child2DnaId == Guid.Parse(nodeId!) : (node == 2 ? x.Child1DnaId == Guid.Parse(nodeId!) : (node == 1 || node == 0 ? x.RootDnaId == Guid.Parse(nodeId!) : (node == null ? true : true))))) + .ToList(); + } else if (role == "ROOT") { data = data diff --git a/BMA.EHR.Application/Repositories/Leaves/TimeAttendants/UserTimeStampRepository.cs b/BMA.EHR.Application/Repositories/Leaves/TimeAttendants/UserTimeStampRepository.cs index a5415537..b7a766e9 100644 --- a/BMA.EHR.Application/Repositories/Leaves/TimeAttendants/UserTimeStampRepository.cs +++ b/BMA.EHR.Application/Repositories/Leaves/TimeAttendants/UserTimeStampRepository.cs @@ -124,6 +124,12 @@ namespace BMA.EHR.Application.Repositories.Leaves.TimeAttendants .Where(x => node == 4 ? x.Child4DnaId == Guid.Parse(nodeId!) : (node == 3 ? x.Child3DnaId == Guid.Parse(nodeId!) : (node == 2 ? x.Child2DnaId == Guid.Parse(nodeId!) : (node == 1 ? x.Child1DnaId == Guid.Parse(nodeId!) : (node == 0 ? x.RootDnaId == Guid.Parse(nodeId!) : (node == null ? true : true)))))) .ToList(); } + else if (role == "BROTHER") + { + data = data + .Where(x => node == 4 ? x.Child3DnaId == Guid.Parse(nodeId!) : (node == 3 ? x.Child2DnaId == Guid.Parse(nodeId!) : (node == 2 ? x.Child1DnaId == Guid.Parse(nodeId!) : (node == 1 || node == 0 ? x.RootDnaId == Guid.Parse(nodeId!) : (node == null ? true : true))))) + .ToList(); + } else if (role == "ROOT") { data = data diff --git a/BMA.EHR.Discipline.Service/Controllers/DisciplineComplaint_AppealController.cs b/BMA.EHR.Discipline.Service/Controllers/DisciplineComplaint_AppealController.cs index bd5e3134..a9d14a71 100644 --- a/BMA.EHR.Discipline.Service/Controllers/DisciplineComplaint_AppealController.cs +++ b/BMA.EHR.Discipline.Service/Controllers/DisciplineComplaint_AppealController.cs @@ -772,6 +772,18 @@ namespace BMA.EHR.DisciplineComplaint_Appeal.Service.Controllers ? profileAdmin?.RootDnaId : ""; } + if (role == "BROTHER") + { + nodeId = profileAdmin?.Node == 4 + ? profileAdmin?.Child3DnaId + : profileAdmin?.Node == 3 + ? profileAdmin?.Child2DnaId + : profileAdmin?.Node == 2 + ? profileAdmin?.Child1DnaId + : profileAdmin?.Node == 1 || profileAdmin?.Node == 0 + ? profileAdmin?.RootDnaId + : ""; + } else if (role == "ROOT" || role == "PARENT") { nodeId = profileAdmin?.RootDnaId; @@ -802,6 +814,11 @@ namespace BMA.EHR.DisciplineComplaint_Appeal.Service.Controllers data_search = data_search .Where(x => node == 4 ? x.child4DnaId == nodeId : (node == 3 ? x.child3DnaId == nodeId : (node == 2 ? x.child2DnaId == nodeId : (node == 1 ? x.child1DnaId == nodeId : (node == 0 ? x.rootDnaId == nodeId : (node == null ? true : true)))))).ToList(); } + else if (role == "BROTHER") + { + data_search = data_search + .Where(x => node == 4 ? x.child3DnaId == nodeId : (node == 3 ? x.child2DnaId == nodeId : (node == 2 ? x.child1DnaId == nodeId : (node == 1 || node == 0 ? x.rootDnaId == nodeId : (node == null ? true : true))))).ToList(); + } else if (role == "ROOT") { data_search = data_search diff --git a/BMA.EHR.Insignia/Controllers/InsigniaManageController.cs b/BMA.EHR.Insignia/Controllers/InsigniaManageController.cs index 30b3f6d8..80a8ef31 100644 --- a/BMA.EHR.Insignia/Controllers/InsigniaManageController.cs +++ b/BMA.EHR.Insignia/Controllers/InsigniaManageController.cs @@ -627,6 +627,18 @@ namespace BMA.EHR.Insignia.Service.Controllers ? profileAdmin?.RootDnaId : ""; } + else if (role == "BROTHER") + { + nodeId = profileAdmin?.Node == 4 + ? profileAdmin?.Child3DnaId + : profileAdmin?.Node == 3 + ? profileAdmin?.Child2DnaId + : profileAdmin?.Node == 2 + ? profileAdmin?.Child1DnaId + : profileAdmin?.Node == 1 || profileAdmin?.Node == 0 + ? profileAdmin?.RootDnaId + : ""; + } else if (role == "ROOT" || role == "PARENT") { nodeId = profileAdmin?.RootDnaId; @@ -702,6 +714,11 @@ namespace BMA.EHR.Insignia.Service.Controllers rawData = rawData .Where(x => node == 4 ? x.Child4DnaId == Guid.Parse(nodeId!) : (node == 3 ? x.Child3DnaId == Guid.Parse(nodeId!) : (node == 2 ? x.Child2DnaId == Guid.Parse(nodeId!) : (node == 1 ? x.Child1DnaId == Guid.Parse(nodeId!) : (node == 0 ? x.RootDnaId == Guid.Parse(nodeId!) : (node == null ? true : true)))))).ToList(); } + else if (role == "BROTHER") + { + rawData = rawData + .Where(x => node == 4 ? x.Child3DnaId == Guid.Parse(nodeId!) : (node == 3 ? x.Child2DnaId == Guid.Parse(nodeId!) : (node == 2 ? x.Child1DnaId == Guid.Parse(nodeId!) : (node == 1 || node == 0 ? x.RootDnaId == Guid.Parse(nodeId!) : true)))).ToList(); + } else if (role == "ROOT") { rawData = rawData @@ -914,6 +931,18 @@ namespace BMA.EHR.Insignia.Service.Controllers ? profileAdmin?.RootDnaId : ""; } + else if (role == "BROTHER") + { + nodeId = profileAdmin?.Node == 4 + ? profileAdmin?.Child3DnaId + : profileAdmin?.Node == 3 + ? profileAdmin?.Child2DnaId + : profileAdmin?.Node == 2 + ? profileAdmin?.Child1DnaId + : profileAdmin?.Node == 1 || profileAdmin?.Node == 0 + ? profileAdmin?.RootDnaId + : ""; + } else if (role == "ROOT" || role == "PARENT") { nodeId = profileAdmin?.RootDnaId; @@ -987,6 +1016,11 @@ namespace BMA.EHR.Insignia.Service.Controllers rawData = rawData .Where(x => node == 4 ? x.Child4DnaId == Guid.Parse(nodeId!) : (node == 3 ? x.Child3DnaId == Guid.Parse(nodeId!) : (node == 2 ? x.Child2DnaId == Guid.Parse(nodeId!) : (node == 1 ? x.Child1DnaId == Guid.Parse(nodeId!) : (node == 0 ? x.RootDnaId == Guid.Parse(nodeId!) : (node == null ? true : true)))))).ToList(); } + else if (role == "BROTHER") + { + rawData = rawData + .Where(x => node == 4 ? x.Child3DnaId == Guid.Parse(nodeId!) : (node == 3 ? x.Child2DnaId == Guid.Parse(nodeId!) : (node == 2 ? x.Child1DnaId == Guid.Parse(nodeId!) : (node == 1 || node == 0 ? x.RootDnaId == Guid.Parse(nodeId!) : true)))).ToList(); + } else if (role == "ROOT") { rawData = rawData diff --git a/BMA.EHR.Leave/Controllers/LeaveBeginningController.cs b/BMA.EHR.Leave/Controllers/LeaveBeginningController.cs index d61d82d2..4c37f19d 100644 --- a/BMA.EHR.Leave/Controllers/LeaveBeginningController.cs +++ b/BMA.EHR.Leave/Controllers/LeaveBeginningController.cs @@ -129,11 +129,23 @@ namespace BMA.EHR.Leave.Service.Controllers ? profileAdmin?.RootDnaId : ""; } + else if (role == "BROTHER") + { + nodeId = profileAdmin?.Node == 4 + ? profileAdmin?.Child3DnaId + : profileAdmin?.Node == 3 + ? profileAdmin?.Child2DnaId + : profileAdmin?.Node == 2 + ? profileAdmin?.Child1DnaId + : profileAdmin?.Node == 1 || profileAdmin?.Node == 0 + ? profileAdmin?.RootDnaId + : ""; + } else if (role == "ROOT" || role == "PARENT") { nodeId = profileAdmin?.RootDnaId; } - + int? node = profileAdmin?.Node; if (role == "OWNER") { @@ -144,6 +156,11 @@ namespace BMA.EHR.Leave.Service.Controllers resData = resData .Where(x => node == 4 ? x.Child4DnaId == Guid.Parse(nodeId!) : (node == 3 ? x.Child3DnaId == Guid.Parse(nodeId!) : (node == 2 ? x.Child2DnaId == Guid.Parse(nodeId!) : (node == 1 ? x.Child1DnaId == Guid.Parse(nodeId!) : (node == 0 ? x.RootDnaId == Guid.Parse(nodeId!) : (node == null ? true : true)))))).ToList(); } + else if (role == "BROTHER") + { + resData = resData + .Where(x => node == 4 ? x.Child3DnaId == Guid.Parse(nodeId!) : (node == 3 ? x.Child2DnaId == Guid.Parse(nodeId!) : (node == 2 ? x.Child1DnaId == Guid.Parse(nodeId!) : (node == 1 || node == 0 ? x.RootDnaId == Guid.Parse(nodeId!) : (node == null ? true : true))))).ToList(); + } else if (role == "ROOT") { resData = resData @@ -326,10 +343,10 @@ namespace BMA.EHR.Leave.Service.Controllers item.Child1DnaId = profile.Child1DnaId; item.Child2DnaId = profile.Child2DnaId; item.Child3DnaId = profile.Child3DnaId; - item.Child4DnaId = profile.Child4DnaId; + item.Child4DnaId = profile.Child4DnaId; _context.LeaveBeginnings.Update(item); } - + } await _context.SaveChangesAsync(); return Success("อัพเดทข้อมูลสำเร็จ"); @@ -439,7 +456,7 @@ namespace BMA.EHR.Leave.Service.Controllers { return Error("ไม่สามารถบันทึกข้อมูล เนื่องจากมีข้อมูลในระบบแล้ว"); } - + var leaveBeginning = new LeaveBeginning(); leaveBeginning.LeaveTypeId = req.LeaveTypeId; leaveBeginning.LeaveYear = req.LeaveYear; diff --git a/BMA.EHR.Leave/Controllers/LeaveController.cs b/BMA.EHR.Leave/Controllers/LeaveController.cs index 207f0556..b751b322 100644 --- a/BMA.EHR.Leave/Controllers/LeaveController.cs +++ b/BMA.EHR.Leave/Controllers/LeaveController.cs @@ -1304,6 +1304,18 @@ namespace BMA.EHR.Leave.Service.Controllers ? profileAdmin?.RootDnaId : ""; } + else if (role == "BROHTER") + { + nodeId = profileAdmin?.Node == 4 + ? profileAdmin?.Child3DnaId + : profileAdmin?.Node == 3 + ? profileAdmin?.Child2DnaId + : profileAdmin?.Node == 2 + ? profileAdmin?.Child1DnaId + : profileAdmin?.Node == 1 + ? profileAdmin?.RootDnaId + : ""; + } else if (role == "ROOT" || role == "PARENT") { nodeId = profileAdmin?.RootDnaId; @@ -1600,6 +1612,18 @@ namespace BMA.EHR.Leave.Service.Controllers ? profileAdmin?.RootDnaId : ""; } + else if (role == "BROTHER") + { + nodeId = profileAdmin?.Node == 4 + ? profileAdmin?.Child3DnaId + : profileAdmin?.Node == 3 + ? profileAdmin?.Child2DnaId + : profileAdmin?.Node == 2 + ? profileAdmin?.Child1DnaId + : profileAdmin?.Node == 1 || profileAdmin?.Node == 0 + ? profileAdmin?.RootDnaId + : ""; + } else if (role == "ROOT" || role == "PARENT") { nodeId = profileAdmin?.RootDnaId; @@ -1834,6 +1858,18 @@ namespace BMA.EHR.Leave.Service.Controllers ? profileAdmin?.RootDnaId : ""; } + else if (role == "BROTHER") + { + nodeId = profileAdmin?.Node == 4 + ? profileAdmin?.Child3DnaId + : profileAdmin?.Node == 3 + ? profileAdmin?.Child2DnaId + : profileAdmin?.Node == 2 + ? profileAdmin?.Child1DnaId + : profileAdmin?.Node == 1 || profileAdmin?.Node == 0 + ? profileAdmin?.RootDnaId + : ""; + } else if (role == "ROOT" || role == "PARENT") { nodeId = profileAdmin?.RootDnaId; @@ -2077,6 +2113,18 @@ namespace BMA.EHR.Leave.Service.Controllers ? profileAdmin?.RootDnaId : ""; } + else if (role == "BROTHER") + { + nodeId = profileAdmin?.Node == 4 + ? profileAdmin?.Child3DnaId + : profileAdmin?.Node == 3 + ? profileAdmin?.Child2DnaId + : profileAdmin?.Node == 2 + ? profileAdmin?.Child1DnaId + : profileAdmin?.Node == 1 || profileAdmin?.Node == 0 + ? profileAdmin?.RootDnaId + : ""; + } else if (role == "ROOT" || role == "PARENT") { nodeId = profileAdmin?.RootDnaId; @@ -2437,6 +2485,18 @@ namespace BMA.EHR.Leave.Service.Controllers ? profileAdmin?.RootDnaId : ""; } + else if (role == "BROTHER") + { + nodeId = profileAdmin?.Node == 4 + ? profileAdmin?.Child3DnaId + : profileAdmin?.Node == 3 + ? profileAdmin?.Child2DnaId + : profileAdmin?.Node == 2 + ? profileAdmin?.Child1DnaId + : profileAdmin?.Node == 1 || profileAdmin?.Node == 0 + ? profileAdmin?.RootDnaId + : ""; + } else if (role == "ROOT" || role == "PARENT") { nodeId = profileAdmin?.RootDnaId; diff --git a/BMA.EHR.Leave/Controllers/LeaveReportController.cs b/BMA.EHR.Leave/Controllers/LeaveReportController.cs index 9df655d5..17ba0791 100644 --- a/BMA.EHR.Leave/Controllers/LeaveReportController.cs +++ b/BMA.EHR.Leave/Controllers/LeaveReportController.cs @@ -920,6 +920,18 @@ namespace BMA.EHR.Leave.Service.Controllers ? profileAdmin?.RootDnaId : ""; } + else if (role == "BROTHER") + { + nodeId = profileAdmin?.Node == 4 + ? profileAdmin?.Child3DnaId + : profileAdmin?.Node == 3 + ? profileAdmin?.Child2DnaId + : profileAdmin?.Node == 2 + ? profileAdmin?.Child1DnaId + : profileAdmin?.Node == 1 || profileAdmin?.Node == 0 + ? profileAdmin?.RootDnaId + : ""; + } else if (role == "ROOT" || role == "PARENT") { nodeId = profileAdmin?.RootDnaId; @@ -940,7 +952,7 @@ namespace BMA.EHR.Leave.Service.Controllers var count = 1; var employees = new List(); // กรองตามที่ fe ส่งมา - if ((role == "ROOT" || role == "OWNER" || role == "CHILD" || role == "PARENT") /*&& req.node > profileAdmin?.Node*/) + if ((role == "ROOT" || role == "OWNER" || role == "CHILD" || role == "PARENT" || role == "BROTHER") /*&& req.node > profileAdmin?.Node*/) { profile = profile .Where(x => req.node == 4 ? x.OrgChild4Id == req.nodeId : req.node == 3 ? x.OrgChild3Id == req.nodeId : req.node == 2 ? x.OrgChild2Id == req.nodeId : req.node == 1 ? x.OrgChild1Id == req.nodeId : req.node == 0 ? x.OrgRootId == req.nodeId : true) @@ -1332,7 +1344,7 @@ namespace BMA.EHR.Leave.Service.Controllers return Error(jsonData["message"]?.ToString(), StatusCodes.Status403Forbidden); } var profile = new List(); - profile = await _userProfileRepository.GetProfileWithKeycloakAllOfficerRetireFilterAndRevisionAndDate(AccessToken, req.node, req.nodeId, jsonData["result"] == "OWNER" || jsonData["result"] == "CHILD", req.isRetirement ?? true, req.revisionId, req.StartDate, req.EndDate); + profile = await _userProfileRepository.GetProfileWithKeycloakAllOfficerRetireFilterAndRevisionAndDate(AccessToken, req.node, req.nodeId, jsonData["result"] == "OWNER" || jsonData["result"] == "CHILD" || jsonData["result"] == "BROTHER", req.isRetirement ?? true, req.revisionId, req.StartDate, req.EndDate); // get leave day var leaveDays = await _leaveRequestRepository.GetSumApproveLeaveByTypeAndRange(req.StartDate, req.EndDate); @@ -1537,6 +1549,18 @@ namespace BMA.EHR.Leave.Service.Controllers ? profileAdmin?.RootDnaId : ""; } + else if (role == "BROTHER") + { + nodeId = profileAdmin?.Node == 4 + ? profileAdmin?.Child3DnaId + : profileAdmin?.Node == 3 + ? profileAdmin?.Child2DnaId + : profileAdmin?.Node == 2 + ? profileAdmin?.Child1DnaId + : profileAdmin?.Node == 1 || profileAdmin?.Node == 0 + ? profileAdmin?.RootDnaId + : ""; + } else if (role == "ROOT" || role == "PARENT") { nodeId = profileAdmin?.RootDnaId; @@ -1611,7 +1635,7 @@ namespace BMA.EHR.Leave.Service.Controllers var workTotal = 0; var seminarTotal = 0; // กรองตามที่ fe ส่งมา - if ((role == "ROOT" || role == "OWNER" || role == "CHILD" || role == "PARENT") /*&& req.node > profileAdmin?.Node*/) + if ((role == "ROOT" || role == "OWNER" || role == "CHILD" || role == "PARENT" || role == "BROTHER") /*&& req.node > profileAdmin?.Node*/) { profile = profile .Where(x => req.node == 4 ? x.OrgChild4Id == req.nodeId : req.node == 3 ? x.OrgChild3Id == req.nodeId : req.node == 2 ? x.OrgChild2Id == req.nodeId : req.node == 1 ? x.OrgChild1Id == req.nodeId : req.node == 0 ? x.OrgRootId == req.nodeId : true) @@ -1863,6 +1887,18 @@ namespace BMA.EHR.Leave.Service.Controllers ? profileAdmin?.RootDnaId : ""; } + else if (role == "BROTHER") + { + nodeId = profileAdmin?.Node == 4 + ? profileAdmin?.Child3DnaId + : profileAdmin?.Node == 3 + ? profileAdmin?.Child2DnaId + : profileAdmin?.Node == 2 + ? profileAdmin?.Child1DnaId + : profileAdmin?.Node == 1 || profileAdmin?.Node == 0 + ? profileAdmin?.RootDnaId + : ""; + } else if (role == "ROOT" || role == "PARENT") { nodeId = profileAdmin?.RootDnaId; @@ -1877,7 +1913,7 @@ namespace BMA.EHR.Leave.Service.Controllers profile = await _userProfileRepository.GetEmployeeByAdminRole(AccessToken, profileAdmin?.Node, nodeId, role, req.revisionId, req.node, req.nodeId); } // Child กรองตามที่ fe ส่งมาอีกชั้น - if ((role == "ROOT" || role == "OWNER" || role == "CHILD" || role == "PARENT") /*&& req.node > profileAdmin?.Node*/) + if ((role == "ROOT" || role == "OWNER" || role == "CHILD" || role == "PARENT" || role == "BROTHER") /*&& req.node > profileAdmin?.Node*/) { profile = profile .Where(x => req.node == 4 ? x.OrgChild4Id == req.nodeId : req.node == 3 ? x.OrgChild3Id == req.nodeId : req.node == 2 ? x.OrgChild2Id == req.nodeId : req.node == 1 ? x.OrgChild1Id == req.nodeId : req.node == 0 ? x.OrgRootId == req.nodeId : true) @@ -2281,6 +2317,18 @@ namespace BMA.EHR.Leave.Service.Controllers ? profileAdmin?.RootDnaId : ""; } + else if (role == "BROTHER") + { + nodeId = profileAdmin?.Node == 4 + ? profileAdmin?.Child3DnaId + : profileAdmin?.Node == 3 + ? profileAdmin?.Child2DnaId + : profileAdmin?.Node == 2 + ? profileAdmin?.Child1DnaId + : profileAdmin?.Node == 1 || profileAdmin?.Node == 0 + ? profileAdmin?.RootDnaId + : ""; + } else if (role == "ROOT" || role == "PARENT") { nodeId = profileAdmin?.RootDnaId; @@ -2390,6 +2438,18 @@ namespace BMA.EHR.Leave.Service.Controllers ? profileAdmin?.RootDnaId : ""; } + else if (role == "BROTHER") + { + nodeId = profileAdmin?.Node == 4 + ? profileAdmin?.Child3DnaId + : profileAdmin?.Node == 3 + ? profileAdmin?.Child2DnaId + : profileAdmin?.Node == 2 + ? profileAdmin?.Child1DnaId + : profileAdmin?.Node == 1 || profileAdmin?.Node == 0 + ? profileAdmin?.RootDnaId + : ""; + } else if (role == "ROOT" || role == "PARENT") { nodeId = profileAdmin?.RootDnaId; diff --git a/BMA.EHR.Leave/Controllers/LeaveRequestController.cs b/BMA.EHR.Leave/Controllers/LeaveRequestController.cs index 1177b31e..09addc23 100644 --- a/BMA.EHR.Leave/Controllers/LeaveRequestController.cs +++ b/BMA.EHR.Leave/Controllers/LeaveRequestController.cs @@ -1227,7 +1227,7 @@ namespace BMA.EHR.Leave.Service.Controllers var data = await _leaveRequestRepository.GetLeaveRequestByYearAsync(req.Year, userId); var resultData = (from d in data - //join p in profileList on d.KeycloakUserId equals p.Keycloak + //join p in profileList on d.KeycloakUserId equals p.Keycloak select new GetLeaveRequestCalendarResultDto { Id = d.Id, @@ -1286,6 +1286,18 @@ namespace BMA.EHR.Leave.Service.Controllers ? profileAdmin?.RootDnaId : ""; } + else if (role == "BROTHER") + { + nodeId = profileAdmin?.Node == 4 + ? profileAdmin?.Child3DnaId + : profileAdmin?.Node == 3 + ? profileAdmin?.Child2DnaId + : profileAdmin?.Node == 2 + ? profileAdmin?.Child1DnaId + : profileAdmin?.Node == 1 || profileAdmin?.Node == 0 + ? profileAdmin?.RootDnaId + : ""; + } else if (role == "ROOT" || role == "PARENT") { nodeId = profileAdmin?.RootDnaId; @@ -1665,6 +1677,18 @@ namespace BMA.EHR.Leave.Service.Controllers ? profileAdmin?.RootDnaId : ""; } + else if (role == "BROTHER") + { + nodeId = profileAdmin?.Node == 4 + ? profileAdmin?.Child3DnaId + : profileAdmin?.Node == 3 + ? profileAdmin?.Child2DnaId + : profileAdmin?.Node == 2 + ? profileAdmin?.Child1DnaId + : profileAdmin?.Node == 1 || profileAdmin?.Node == 0 + ? profileAdmin?.RootDnaId + : ""; + } else if (role == "ROOT" || role == "PARENT") { nodeId = profileAdmin?.RootDnaId; @@ -1850,6 +1874,18 @@ namespace BMA.EHR.Leave.Service.Controllers ? profileAdmin?.RootDnaId : ""; } + else if (role == "BROTHER") + { + nodeId = profileAdmin?.Node == 4 + ? profileAdmin?.Child3DnaId + : profileAdmin?.Node == 3 + ? profileAdmin?.Child2DnaId + : profileAdmin?.Node == 2 + ? profileAdmin?.Child1DnaId + : profileAdmin?.Node == 1 || profileAdmin?.Node == 0 + ? profileAdmin?.RootDnaId + : ""; + } else if (role == "ROOT" || role == "PARENT") { nodeId = profileAdmin?.RootDnaId; @@ -2008,7 +2044,7 @@ namespace BMA.EHR.Leave.Service.Controllers } }); } - + return Success(); } diff --git a/BMA.EHR.Placement.Service/Controllers/PlacementAppointmentController.cs b/BMA.EHR.Placement.Service/Controllers/PlacementAppointmentController.cs index cae89c51..a98abb74 100644 --- a/BMA.EHR.Placement.Service/Controllers/PlacementAppointmentController.cs +++ b/BMA.EHR.Placement.Service/Controllers/PlacementAppointmentController.cs @@ -100,6 +100,18 @@ namespace BMA.EHR.Placement.Service.Controllers ? profileAdmin?.RootDnaId : ""; } + else if (role == "BROTHER") + { + nodeId = profileAdmin?.Node == 4 + ? profileAdmin?.Child3DnaId + : profileAdmin?.Node == 3 + ? profileAdmin?.Child2DnaId + : profileAdmin?.Node == 2 + ? profileAdmin?.Child1DnaId + : profileAdmin?.Node == 1 || profileAdmin?.Node == 0 + ? profileAdmin?.RootDnaId + : ""; + } else if (role == "ROOT" || role == "PARENT") { nodeId = profileAdmin?.RootDnaId; @@ -217,6 +229,11 @@ namespace BMA.EHR.Placement.Service.Controllers placementAppointments = placementAppointments .Where(x => node == 4 ? x.child4DnaId == nodeId : (node == 3 ? x.child3DnaId == nodeId : (node == 2 ? x.child2DnaId == nodeId : (node == 1 ? x.child1DnaId == nodeId : (node == 0 ? x.rootDnaId == nodeId : (node == null ? true : true)))))).ToList(); } + else if (role == "BROTHER") + { + placementAppointments = placementAppointments + .Where(x => node == 4 ? x.child3DnaId == nodeId : (node == 3 ? x.child2DnaId == nodeId : (node == 2 ? x.child1DnaId == nodeId : (node == 1 || node == 0 ? x.rootDnaId == nodeId : (node == null ? true : true))))).ToList(); + } else if (role == "ROOT") { placementAppointments = placementAppointments diff --git a/BMA.EHR.Placement.Service/Controllers/PlacementAppointmentEmployeeController.cs b/BMA.EHR.Placement.Service/Controllers/PlacementAppointmentEmployeeController.cs index a453c97b..ae8e40ac 100644 --- a/BMA.EHR.Placement.Service/Controllers/PlacementAppointmentEmployeeController.cs +++ b/BMA.EHR.Placement.Service/Controllers/PlacementAppointmentEmployeeController.cs @@ -98,6 +98,18 @@ namespace BMA.EHR.Placement.Service.Controllers ? profileAdmin?.RootDnaId : ""; } + else if (role == "BROTHER") + { + nodeId = profileAdmin?.Node == 4 + ? profileAdmin?.Child3DnaId + : profileAdmin?.Node == 3 + ? profileAdmin?.Child2DnaId + : profileAdmin?.Node == 2 + ? profileAdmin?.Child1DnaId + : profileAdmin?.Node == 1 || profileAdmin?.Node == 0 + ? profileAdmin?.RootDnaId + : ""; + } else if (role == "ROOT" || role == "PARENT") { nodeId = profileAdmin?.RootDnaId; @@ -210,6 +222,11 @@ namespace BMA.EHR.Placement.Service.Controllers placementAppointments = placementAppointments .Where(x => node == 4 ? x.child4DnaId == nodeId : (node == 3 ? x.child3DnaId == nodeId : (node == 2 ? x.child2DnaId == nodeId : (node == 1 ? x.child1DnaId == nodeId : (node == 0 ? x.rootDnaId == nodeId : (node == null ? true : true)))))).ToList(); } + else if (role == "BROTHER") + { + placementAppointments = placementAppointments + .Where(x => node == 4 ? x.child3DnaId == nodeId : (node == 3 ? x.child2DnaId == nodeId : (node == 2 ? x.child1DnaId == nodeId : (node == 1 || node == 0 ? x.rootDnaId == nodeId : (node == null ? true : true))))).ToList(); + } else if (role == "ROOT") { placementAppointments = placementAppointments diff --git a/BMA.EHR.Placement.Service/Controllers/PlacementOfficerController.cs b/BMA.EHR.Placement.Service/Controllers/PlacementOfficerController.cs index 802a65bc..8638291e 100644 --- a/BMA.EHR.Placement.Service/Controllers/PlacementOfficerController.cs +++ b/BMA.EHR.Placement.Service/Controllers/PlacementOfficerController.cs @@ -99,6 +99,18 @@ namespace BMA.EHR.Placement.Service.Controllers ? profileAdmin?.RootDnaId : ""; } + else if (role == "BROTHER") + { + nodeId = profileAdmin?.Node == 4 + ? profileAdmin?.Child3DnaId + : profileAdmin?.Node == 3 + ? profileAdmin?.Child2DnaId + : profileAdmin?.Node == 2 + ? profileAdmin?.Child1DnaId + : profileAdmin?.Node == 1 || profileAdmin?.Node == 0 + ? profileAdmin?.RootDnaId + : ""; + } else if (role == "ROOT" || role == "PARENT") { nodeId = profileAdmin?.RootDnaId; @@ -171,6 +183,11 @@ namespace BMA.EHR.Placement.Service.Controllers placementOfficers = placementOfficers .Where(x => node == 4 ? x.child4DnaOldId == nodeId : (node == 3 ? x.child3DnaOldId == nodeId : (node == 2 ? x.child2DnaOldId == nodeId : (node == 1 ? x.child1DnaOldId == nodeId : (node == 0 ? x.rootDnaOldId == nodeId : (node == null ? true : true)))))).ToList(); } + else if (role == "BROTHER") + { + placementOfficers = placementOfficers + .Where(x => node == 4 ? x.child3DnaOldId == nodeId : (node == 3 ? x.child2DnaOldId == nodeId : (node == 2 ? x.child1DnaOldId == nodeId : (node == 1 || node == 0 ? x.rootDnaOldId == nodeId : (node == null ? true : true))))).ToList(); + } else if (role == "ROOT") { placementOfficers = placementOfficers diff --git a/BMA.EHR.Placement.Service/Controllers/PlacementReceiveController.cs b/BMA.EHR.Placement.Service/Controllers/PlacementReceiveController.cs index 00266c3b..9bbb6721 100644 --- a/BMA.EHR.Placement.Service/Controllers/PlacementReceiveController.cs +++ b/BMA.EHR.Placement.Service/Controllers/PlacementReceiveController.cs @@ -100,6 +100,18 @@ namespace BMA.EHR.Placement.Service.Controllers ? profileAdmin?.RootDnaId : ""; } + else if (role == "BROTHER") + { + nodeId = profileAdmin?.Node == 4 + ? profileAdmin?.Child3DnaId + : profileAdmin?.Node == 3 + ? profileAdmin?.Child2DnaId + : profileAdmin?.Node == 2 + ? profileAdmin?.Child1DnaId + : profileAdmin?.Node == 1 || profileAdmin?.Node == 0 + ? profileAdmin?.RootDnaId + : ""; + } else if (role == "ROOT" || role == "PARENT") { nodeId = profileAdmin?.RootDnaId; @@ -209,6 +221,11 @@ namespace BMA.EHR.Placement.Service.Controllers placementReceives = placementReceives .Where(x => (node == 4 ? x.child4DnaId == nodeId : (node == 3 ? x.child3DnaId == nodeId : (node == 2 ? x.child2DnaId == nodeId : (node == 1 ? x.child1DnaId == nodeId : (node == 0 ? x.rootDnaId == nodeId : (node == null ? true : true)))))) || (x.CreatedUserId == UserId)).ToList(); } + else if (role == "BROTHER") + { + placementReceives = placementReceives + .Where(x => node == 4 ? x.child3DnaId == nodeId : (node == 3 ? x.child2DnaId == nodeId : (node == 2 ? x.child1DnaId == nodeId : (node == 1 || node == 0 ? x.rootDnaId == nodeId : (node == null ? true : true))))).ToList(); + } else if (role == "ROOT") { placementReceives = placementReceives diff --git a/BMA.EHR.Placement.Service/Controllers/PlacementRepatriationController.cs b/BMA.EHR.Placement.Service/Controllers/PlacementRepatriationController.cs index f50e4557..45798f6c 100644 --- a/BMA.EHR.Placement.Service/Controllers/PlacementRepatriationController.cs +++ b/BMA.EHR.Placement.Service/Controllers/PlacementRepatriationController.cs @@ -100,6 +100,18 @@ namespace BMA.EHR.Placement.Service.Controllers ? profileAdmin?.RootDnaId : ""; } + else if (role == "BROTHER") + { + nodeId = profileAdmin?.Node == 4 + ? profileAdmin?.Child3DnaId + : profileAdmin?.Node == 3 + ? profileAdmin?.Child2DnaId + : profileAdmin?.Node == 2 + ? profileAdmin?.Child1DnaId + : profileAdmin?.Node == 1 || profileAdmin?.Node == 0 + ? profileAdmin?.RootDnaId + : ""; + } else if (role == "ROOT" || role == "PARENT") { nodeId = profileAdmin?.RootDnaId; @@ -176,6 +188,11 @@ namespace BMA.EHR.Placement.Service.Controllers placementRepatriations = placementRepatriations .Where(x => node == 4 ? x.child4DnaOldId == nodeId : (node == 3 ? x.child3DnaOldId == nodeId : (node == 2 ? x.child2DnaOldId == nodeId : (node == 1 ? x.child1DnaOldId == nodeId : (node == 0 ? x.rootDnaOldId == nodeId : (node == null ? true : true)))))).ToList(); } + else if (role == "BROTHER") + { + placementRepatriations = placementRepatriations + .Where(x => node == 4 ? x.child3DnaOldId == nodeId : (node == 3 ? x.child2DnaOldId == nodeId : (node == 2 ? x.child1DnaOldId == nodeId : (node == 1 || node == 0 ? x.rootDnaOldId == nodeId : (node == null ? true : true))))).ToList(); + } else if (role == "ROOT") { placementRepatriations = placementRepatriations diff --git a/BMA.EHR.Placement.Service/Controllers/PlacementTransferController.cs b/BMA.EHR.Placement.Service/Controllers/PlacementTransferController.cs index a9ce9487..566b799b 100644 --- a/BMA.EHR.Placement.Service/Controllers/PlacementTransferController.cs +++ b/BMA.EHR.Placement.Service/Controllers/PlacementTransferController.cs @@ -192,6 +192,18 @@ namespace BMA.EHR.Placement.Service.Controllers ? profileAdmin?.RootDnaId : ""; } + else if (role == "BROTHER") + { + nodeId = profileAdmin?.Node == 4 + ? profileAdmin?.Child3DnaId + : profileAdmin?.Node == 3 + ? profileAdmin?.Child2DnaId + : profileAdmin?.Node == 2 + ? profileAdmin?.Child1DnaId + : profileAdmin?.Node == 1 || profileAdmin?.Node == 0 + ? profileAdmin?.RootDnaId + : ""; + } else if (role == "ROOT" || role == "PARENT") { nodeId = profileAdmin?.RootDnaId; @@ -262,6 +274,11 @@ namespace BMA.EHR.Placement.Service.Controllers placementTransfers = placementTransfers .Where(x => node == 4 ? x.child4DnaOldId == nodeId : (node == 3 ? x.child3DnaOldId == nodeId : (node == 2 ? x.child2DnaOldId == nodeId : (node == 1 ? x.child1DnaOldId == nodeId : (node == 0 ? x.rootDnaOldId == nodeId : (node == null ? true : true)))))).ToList(); } + else if (role == "BROTHER") + { + placementTransfers = placementTransfers + .Where(x => node == 4 ? x.child3DnaOldId == nodeId : (node == 3 ? x.child2DnaOldId == nodeId : (node == 2 ? x.child1DnaOldId == nodeId : (node == 1 || node == 0 ? x.rootDnaOldId == nodeId : (node == null ? true : true))))).ToList(); + } else if (role == "ROOT") { placementTransfers = placementTransfers diff --git a/BMA.EHR.Retirement.Service/Controllers/RetirementDeceasedController.cs b/BMA.EHR.Retirement.Service/Controllers/RetirementDeceasedController.cs index c04a23e5..33808435 100644 --- a/BMA.EHR.Retirement.Service/Controllers/RetirementDeceasedController.cs +++ b/BMA.EHR.Retirement.Service/Controllers/RetirementDeceasedController.cs @@ -104,6 +104,18 @@ namespace BMA.EHR.Retirement.Service.Controllers ? profileAdmin?.RootDnaId : ""; } + else if (role == "BROTHER") + { + nodeId = profileAdmin?.Node == 4 + ? profileAdmin?.Child3DnaId + : profileAdmin?.Node == 3 + ? profileAdmin?.Child2DnaId + : profileAdmin?.Node == 2 + ? profileAdmin?.Child1DnaId + : profileAdmin?.Node == 1 || profileAdmin?.Node == 0 + ? profileAdmin?.RootDnaId + : ""; + } else if (role == "ROOT" || role == "PARENT") { nodeId = profileAdmin?.RootDnaId; @@ -155,6 +167,11 @@ namespace BMA.EHR.Retirement.Service.Controllers retirementDeceaseds = retirementDeceaseds .Where(x => node == 4 ? x.child4DnaId == nodeId : (node == 3 ? x.child3DnaId == nodeId : (node == 2 ? x.child2DnaId == nodeId : (node == 1 ? x.child1DnaId == nodeId : (node == 0 ? x.rootDnaId == nodeId : (node == null ? true : true)))))).ToList(); } + else if (role == "BROTHER") + { + retirementDeceaseds = retirementDeceaseds + .Where(x => node == 4 ? x.child3DnaId == nodeId : (node == 3 ? x.child2DnaId == nodeId : (node == 2 ? x.child1DnaId == nodeId : (node == 1 || node == 0 ? x.rootDnaId == nodeId : (node == null ? true : true))))).ToList(); + } else if (role == "ROOT") { retirementDeceaseds = retirementDeceaseds diff --git a/BMA.EHR.Retirement.Service/Controllers/RetirementOtherController.cs b/BMA.EHR.Retirement.Service/Controllers/RetirementOtherController.cs index 4221fe31..4db9f778 100644 --- a/BMA.EHR.Retirement.Service/Controllers/RetirementOtherController.cs +++ b/BMA.EHR.Retirement.Service/Controllers/RetirementOtherController.cs @@ -100,6 +100,18 @@ namespace BMA.EHR.Retirement.Service.Controllers ? profileAdmin?.RootDnaId : ""; } + else if (role == "BROTHER") + { + nodeId = profileAdmin?.Node == 4 + ? profileAdmin?.Child3DnaId + : profileAdmin?.Node == 3 + ? profileAdmin?.Child2DnaId + : profileAdmin?.Node == 2 + ? profileAdmin?.Child1DnaId + : profileAdmin?.Node == 1 || profileAdmin?.Node == 0 + ? profileAdmin?.RootDnaId + : ""; + } else if (role == "ROOT" || role == "PARENT") { nodeId = profileAdmin?.RootDnaId; @@ -205,6 +217,11 @@ namespace BMA.EHR.Retirement.Service.Controllers retirementOthers = retirementOthers .Where(x => node == 4 ? x.child4DnaOldId == nodeId : (node == 3 ? x.child3DnaOldId == nodeId : (node == 2 ? x.child2DnaOldId == nodeId : (node == 1 ? x.child1DnaOldId == nodeId : (node == 0 ? x.rootDnaOldId == nodeId : (node == null ? true : true)))))).ToList(); } + else if (role == "BROTHER") + { + retirementOthers = retirementOthers + .Where(x => node == 4 ? x.child3DnaOldId == nodeId : (node == 3 ? x.child2DnaOldId == nodeId : (node == 2 ? x.child1DnaOldId == nodeId : (node == 1 || node == 0 ? x.rootDnaOldId == nodeId : (node == null ? true : true))))).ToList(); + } else if (role == "ROOT") { retirementOthers = retirementOthers diff --git a/BMA.EHR.Retirement.Service/Controllers/RetirementOutController.cs b/BMA.EHR.Retirement.Service/Controllers/RetirementOutController.cs index 2e0f81f2..e996abab 100644 --- a/BMA.EHR.Retirement.Service/Controllers/RetirementOutController.cs +++ b/BMA.EHR.Retirement.Service/Controllers/RetirementOutController.cs @@ -115,6 +115,18 @@ namespace BMA.EHR.Retirement.Service.Controllers ? profileAdmin?.RootDnaId : ""; } + else if (role == "BROTHER") + { + nodeId = profileAdmin?.Node == 4 + ? profileAdmin?.Child3DnaId + : profileAdmin?.Node == 3 + ? profileAdmin?.Child2DnaId + : profileAdmin?.Node == 2 + ? profileAdmin?.Child1DnaId + : profileAdmin?.Node == 1 || profileAdmin?.Node == 0 + ? profileAdmin?.RootDnaId + : ""; + } else if (role == "ROOT" || role == "PARENT") { nodeId = profileAdmin?.RootDnaId; @@ -186,6 +198,11 @@ namespace BMA.EHR.Retirement.Service.Controllers retirementOuts = retirementOuts .Where(x => node == 4 ? x.child4DnaOldId == nodeId : (node == 3 ? x.child3DnaOldId == nodeId : (node == 2 ? x.child2DnaOldId == nodeId : (node == 1 ? x.child1DnaOldId == nodeId : (node == 0 ? x.rootDnaOldId == nodeId : (node == null ? true : true)))))).ToList(); } + else if (role == "BROTHER") + { + retirementOuts = retirementOuts + .Where(x => node == 4 ? x.child3DnaOldId == nodeId : (node == 3 ? x.child2DnaOldId == nodeId : (node == 2 ? x.child1DnaOldId == nodeId : (node == 1 || node == 0 ? x.rootDnaOldId == nodeId : (node == null ? true : true))))).ToList(); + } else if (role == "ROOT") { retirementOuts = retirementOuts diff --git a/BMA.EHR.Retirement.Service/Controllers/RetirementResignController.cs b/BMA.EHR.Retirement.Service/Controllers/RetirementResignController.cs index 5a4ccc71..d33b945b 100644 --- a/BMA.EHR.Retirement.Service/Controllers/RetirementResignController.cs +++ b/BMA.EHR.Retirement.Service/Controllers/RetirementResignController.cs @@ -257,6 +257,18 @@ namespace BMA.EHR.Retirement.Service.Controllers ? profileAdmin?.RootDnaId : ""; } + else if (role == "BROTHER") + { + nodeId = profileAdmin?.Node == 4 + ? profileAdmin?.Child3DnaId + : profileAdmin?.Node == 3 + ? profileAdmin?.Child2DnaId + : profileAdmin?.Node == 2 + ? profileAdmin?.Child1DnaId + : profileAdmin?.Node == 1 || profileAdmin?.Node == 0 + ? profileAdmin?.RootDnaId + : ""; + } else if (role == "ROOT" || role == "PARENT") { nodeId = profileAdmin?.RootDnaId; @@ -312,6 +324,11 @@ namespace BMA.EHR.Retirement.Service.Controllers retirementResigns = retirementResigns .Where(x => node == 4 ? x.child4DnaOldId == nodeId : (node == 3 ? x.child3DnaOldId == nodeId : (node == 2 ? x.child2DnaOldId == nodeId : (node == 1 ? x.child1DnaOldId == nodeId : (node == 0 ? x.rootDnaOldId == nodeId : (node == null ? true : true)))))).ToList(); } + else if (role == "BROTHER") + { + retirementResigns = retirementResigns + .Where(x => node == 4 ? x.child3DnaOldId == nodeId : (node == 3 ? x.child2DnaOldId == nodeId : (node == 2 ? x.child1DnaOldId == nodeId : (node == 1 || node == 0 ? x.rootDnaOldId == nodeId : (node == null ? true : true))))).ToList(); + } else if (role == "ROOT") { retirementResigns = retirementResigns @@ -372,6 +389,18 @@ namespace BMA.EHR.Retirement.Service.Controllers ? profileAdmin?.RootDnaId : ""; } + else if (role == "BROTHER") + { + nodeId = profileAdmin?.Node == 4 + ? profileAdmin?.Child3DnaId + : profileAdmin?.Node == 3 + ? profileAdmin?.Child2DnaId + : profileAdmin?.Node == 2 + ? profileAdmin?.Child1DnaId + : profileAdmin?.Node == 1 || profileAdmin?.Node == 0 + ? profileAdmin?.RootDnaId + : ""; + } else if (role == "ROOT" || role == "PARENT") { nodeId = profileAdmin?.RootDnaId; @@ -426,6 +455,11 @@ namespace BMA.EHR.Retirement.Service.Controllers retirementResigns = retirementResigns .Where(x => node == 4 ? x.child4DnaOldId == nodeId : (node == 3 ? x.child3DnaOldId == nodeId : (node == 2 ? x.child2DnaOldId == nodeId : (node == 1 ? x.child1DnaOldId == nodeId : (node == 0 ? x.rootDnaOldId == nodeId : (node == null ? true : true)))))).ToList(); } + else if (role == "BROTHER") + { + retirementResigns = retirementResigns + .Where(x => node == 4 ? x.child3DnaOldId == nodeId : (node == 3 ? x.child2DnaOldId == nodeId : (node == 2 ? x.child1DnaOldId == nodeId : (node == 1 || node == 0 ? x.rootDnaOldId == nodeId : (node == null ? true : true))))).ToList(); + } else if (role == "ROOT") { retirementResigns = retirementResigns @@ -633,182 +667,6 @@ namespace BMA.EHR.Retirement.Service.Controllers }; return Success(_data); - // } - // else - // { - // var getWorkflow = await _permission.GetPermissionAPIWorkflowAsync(id.ToString(), "RETIREMENT_CANCEL"); - // var createdUserId = await _context.RetirementResignCancels.AsQueryable() - // .Where(x => x.CreatedUserId == UserId) - // .Where(x => x.RetirementResign.Id == id) - // .FirstOrDefaultAsync(); - // if (getWorkflow == false && createdUserId == null) - // { - // var getPermission = await _permission.GetPermissionAPIAsync("GET", "SYS_RESIGN"); - // var jsonData = JsonConvert.DeserializeObject(getPermission); - // if (jsonData["status"]?.ToString() != "200") - // { - // return Error(jsonData["message"]?.ToString(), StatusCodes.Status403Forbidden); - // } - // } - // var data = await _context.RetirementResignCancels.AsQueryable() - // .Where(x => x.RetirementResign.Id == id) - // .Select(p => new - // { - // p.Id, - // p.prefix, - // p.firstName, - // p.lastName, - // p.profileId, - // p.Location, - // p.SendDate, - // p.ActiveDate, - // p.Reason, - // p.Remark, - // p.Status, - // salary = p.AmountOld, - // p.ApproveReason, - // p.RejectReason, - // p.IsActive, - // p.CreatedAt, - // p.PositionTypeOld, - // p.PositionLevelOld, - // p.PositionNumberOld, - // p.OrganizationPositionOld, - // p.OligarchReject, - // p.OligarchApproveReason, - // p.OligarchRejectReason, - // p.OligarchRejectDate, - // p.CommanderReject, - // p.CommanderApproveReason, - // p.CommanderRejectReason, - // p.CommanderRejectDate, - // p.OfficerReject, - // p.OfficerApproveReason, - // p.OfficerRejectReason, - // p.OfficerRejectDate, - // p.RemarkHorizontal, - // p.rootOld, - // p.rootOldId, - // p.rootShortNameOld, - // p.child1Old, - // p.child1OldId, - // p.child1ShortNameOld, - // p.child2Old, - // p.child2OldId, - // p.child2ShortNameOld, - // p.child3Old, - // p.child3OldId, - // p.child3ShortNameOld, - // p.child4Old, - // p.child4OldId, - // p.child4ShortNameOld, - // p.PositionOld, - // p.posMasterNoOld, - // p.posTypeOldId, - // p.posTypeNameOld, - // p.posLevelOldId, - // p.posLevelNameOld, - // p.IsNoDebt, - // p.IsNoBurden, - // p.IsDiscipline, - // p.CancelReason, - // p.ApproveStep, - // p.Group, - // Approvers = p.Approvers.Where(x => x.ApproveType.ToUpper() == "APPROVER"), - // Commanders = p.Approvers.Where(x => x.ApproveType.ToUpper() == "COMMANDER"), - // KeycloakUserId = p.CreatedUserId, - // idMain = p.RetirementResign.Id, - // statusMain = p.RetirementResign.Status, - // RetirementResignDocs = p.RetirementResign.RetirementResignDocs.Where(d => d.Document != null).Select(d => new { d.Document.Id, d.Document.FileName }), - // }) - // .FirstOrDefaultAsync(); - // if (data == null) - // return Error(GlobalMessages.RetirementResignNotFound, 404); - - // var retirementResignDocs = new List(); - // foreach (var doc in data.RetirementResignDocs) - // { - // var _doc = new - // { - // FileName = doc.FileName, - // PathName = await _documentService.ImagesPath(doc.Id), - // doc.Id, - // }; - // retirementResignDocs.Add(_doc); - // } - // var _data = new - // { - // data.Id, - // data.profileId, - // data.prefix, - // // data.PrefixId, - // data.firstName, - // data.lastName, - // data.Location, - // data.SendDate, - // data.ActiveDate, - // data.Reason, - // data.Remark, - // data.Status, - // data.salary, - // data.PositionTypeOld, - // data.PositionLevelOld, - // data.PositionNumberOld, - // data.OrganizationPositionOld, - // data.ApproveReason, - // data.RejectReason, - // data.IsActive, - // data.CreatedAt, - // data.OligarchReject, - // data.OligarchApproveReason, - // data.OligarchRejectReason, - // data.OligarchRejectDate, - // data.CommanderReject, - // data.CommanderApproveReason, - // data.CommanderRejectReason, - // data.CommanderRejectDate, - // data.OfficerReject, - // data.OfficerApproveReason, - // data.OfficerRejectReason, - // data.OfficerRejectDate, - // data.RemarkHorizontal, - // data.rootOld, - // data.rootOldId, - // data.rootShortNameOld, - // data.child1Old, - // data.child1OldId, - // data.child1ShortNameOld, - // data.child2Old, - // data.child2OldId, - // data.child2ShortNameOld, - // data.child3Old, - // data.child3OldId, - // data.child3ShortNameOld, - // data.child4Old, - // data.child4OldId, - // data.child4ShortNameOld, - // data.PositionOld, - // data.posMasterNoOld, - // data.posTypeOldId, - // data.posTypeNameOld, - // data.posLevelOldId, - // data.posLevelNameOld, - // data.IsNoDebt, - // data.IsNoBurden, - // data.IsDiscipline, - // data.CancelReason, - // data.idMain, - // data.statusMain, - // data.KeycloakUserId, - // data.ApproveStep, - // data.Group, - // data.Approvers, - // data.Commanders, - // statusCancel = data.Status, - // Docs = retirementResignDocs, - // }; - // return Success(_data); - // } } /// @@ -2149,6 +2007,18 @@ namespace BMA.EHR.Retirement.Service.Controllers ? profileAdmin?.RootDnaId : ""; } + else if (role == "BROTHER") + { + nodeId = profileAdmin?.Node == 4 + ? profileAdmin?.Child3DnaId + : profileAdmin?.Node == 3 + ? profileAdmin?.Child2DnaId + : profileAdmin?.Node == 2 + ? profileAdmin?.Child1DnaId + : profileAdmin?.Node == 1 || profileAdmin?.Node == 0 + ? profileAdmin?.RootDnaId + : ""; + } else if (role == "ROOT" || role == "PARENT") { nodeId = profileAdmin?.RootDnaId; @@ -2197,6 +2067,11 @@ namespace BMA.EHR.Retirement.Service.Controllers data = data .Where(x => node == 4 ? x.child4DnaId == nodeId : (node == 3 ? x.child3DnaId == nodeId : (node == 2 ? x.child2DnaId == nodeId : (node == 1 ? x.child1DnaId == nodeId : (node == 0 ? x.rootDnaId == nodeId : (node == null ? true : true)))))).ToList(); } + else if (role == "BROTHER") + { + data = data + .Where(x => node == 4 ? x.child3DnaId == nodeId : (node == 3 ? x.child2DnaId == nodeId : (node == 2 ? x.child1DnaId == nodeId : (node == 1 || node == 0 ? x.rootDnaId == nodeId : (node == null ? true : true))))).ToList(); + } else if (role == "ROOT") { data = data @@ -2548,12 +2423,6 @@ namespace BMA.EHR.Retirement.Service.Controllers [HttpGet("questionnaire/question")] public async Task> GetQuestionnaireQuestion() { - //var getPermission = await _permission.GetPermissionAPIAsync("LIST", "SYS_RESIGN_INTERVIEW"); - //var jsonData = JsonConvert.DeserializeObject(getPermission); - //if (jsonData["status"]?.ToString() != "200") - //{ - // return Error(jsonData["message"]?.ToString(), StatusCodes.Status403Forbidden); - //} var retirementQuestionnaireQuestion = await _context.RetirementQuestionnaireQuestions.AsQueryable() .Select(x => new { @@ -3249,12 +3118,6 @@ namespace BMA.EHR.Retirement.Service.Controllers [ProducesResponseType(StatusCodes.Status500InternalServerError)] public async Task> OfficerApproveRetirementResignAsync(Guid id) { - // var getPermission = await _permission.GetPermissionAPIAsync("UPDATE", "SYS_LEAVE_LIST"); - // var jsonData = JsonConvert.DeserializeObject(getPermission); - // if (jsonData["status"]?.ToString() != "200") - // { - // return Error(jsonData["message"]?.ToString(), StatusCodes.Status403Forbidden); - // } await _repository.OfficerApproveRetirementResign(id); return Success(); @@ -3277,12 +3140,6 @@ namespace BMA.EHR.Retirement.Service.Controllers { try { - // var getPermission = await _permission.GetPermissionAPIAsync("UPDATE", "SYS_LEAVE_LIST"); - // var jsonData = JsonConvert.DeserializeObject(getPermission); - // if (jsonData["status"]?.ToString() != "200") - // { - // return Error(jsonData["message"]?.ToString(), StatusCodes.Status403Forbidden); - // } await _repository.CommanderApproveRetirementResign(id, req.Reason ?? "", null); return Success(); @@ -3311,12 +3168,6 @@ namespace BMA.EHR.Retirement.Service.Controllers { try { - // var getPermission = await _permission.GetPermissionAPIAsync("UPDATE", "SYS_LEAVE_LIST"); - // var jsonData = JsonConvert.DeserializeObject(getPermission); - // if (jsonData["status"]?.ToString() != "200") - // { - // return Error(jsonData["message"]?.ToString(), StatusCodes.Status403Forbidden); - // } await _repository.CommanderRejectRetirementResign(id, req.Reason ?? "", req.Date); return Success(); @@ -3345,12 +3196,6 @@ namespace BMA.EHR.Retirement.Service.Controllers { try { - // var getPermission = await _permission.GetPermissionAPIAsync("UPDATE", "SYS_LEAVE_LIST"); - // var jsonData = JsonConvert.DeserializeObject(getPermission); - // if (jsonData["status"]?.ToString() != "200") - // { - // return Error(jsonData["message"]?.ToString(), StatusCodes.Status403Forbidden); - // } await _repository.ApproveRetirementResign(id, req.Reason ?? "", null); return Success(); @@ -3379,12 +3224,6 @@ namespace BMA.EHR.Retirement.Service.Controllers { try { - // var getPermission = await _permission.GetPermissionAPIAsync("UPDATE", "SYS_LEAVE_LIST"); - // var jsonData = JsonConvert.DeserializeObject(getPermission); - // if (jsonData["status"]?.ToString() != "200") - // { - // return Error(jsonData["message"]?.ToString(), StatusCodes.Status403Forbidden); - // } await _repository.RejectRetirementResign(id, req.Reason ?? "", req.Date); return Success(); @@ -3475,12 +3314,6 @@ namespace BMA.EHR.Retirement.Service.Controllers [ProducesResponseType(StatusCodes.Status500InternalServerError)] public async Task> OfficerApproveRetirementResignCancelAsync(Guid id) { - // var getPermission = await _permission.GetPermissionAPIAsync("UPDATE", "SYS_LEAVE_LIST"); - // var jsonData = JsonConvert.DeserializeObject(getPermission); - // if (jsonData["status"]?.ToString() != "200") - // { - // return Error(jsonData["message"]?.ToString(), StatusCodes.Status403Forbidden); - // } await _repository.OfficerApproveRetirementResignCancel(id); return Success(); @@ -3503,12 +3336,6 @@ namespace BMA.EHR.Retirement.Service.Controllers { try { - // var getPermission = await _permission.GetPermissionAPIAsync("UPDATE", "SYS_LEAVE_LIST"); - // var jsonData = JsonConvert.DeserializeObject(getPermission); - // if (jsonData["status"]?.ToString() != "200") - // { - // return Error(jsonData["message"]?.ToString(), StatusCodes.Status403Forbidden); - // } await _repository.CommanderApproveRetirementResignCancel(id, req.Reason ?? "", null); return Success(); @@ -3537,12 +3364,6 @@ namespace BMA.EHR.Retirement.Service.Controllers { try { - // var getPermission = await _permission.GetPermissionAPIAsync("UPDATE", "SYS_LEAVE_LIST"); - // var jsonData = JsonConvert.DeserializeObject(getPermission); - // if (jsonData["status"]?.ToString() != "200") - // { - // return Error(jsonData["message"]?.ToString(), StatusCodes.Status403Forbidden); - // } await _repository.CommanderRejectRetirementResignCancel(id, req.Reason ?? "", req.Date); return Success(); @@ -3571,12 +3392,6 @@ namespace BMA.EHR.Retirement.Service.Controllers { try { - // var getPermission = await _permission.GetPermissionAPIAsync("UPDATE", "SYS_LEAVE_LIST"); - // var jsonData = JsonConvert.DeserializeObject(getPermission); - // if (jsonData["status"]?.ToString() != "200") - // { - // return Error(jsonData["message"]?.ToString(), StatusCodes.Status403Forbidden); - // } await _repository.ApproveRetirementResignCancel(id, req.Reason ?? "", null); return Success(); @@ -3605,12 +3420,6 @@ namespace BMA.EHR.Retirement.Service.Controllers { try { - // var getPermission = await _permission.GetPermissionAPIAsync("UPDATE", "SYS_LEAVE_LIST"); - // var jsonData = JsonConvert.DeserializeObject(getPermission); - // if (jsonData["status"]?.ToString() != "200") - // { - // return Error(jsonData["message"]?.ToString(), StatusCodes.Status403Forbidden); - // } await _repository.RejectRetirementResignCancel(id, req.Reason ?? "", req.Date); return Success(); diff --git a/BMA.EHR.Retirement.Service/Controllers/RetirementResignEmployeeController.cs b/BMA.EHR.Retirement.Service/Controllers/RetirementResignEmployeeController.cs index b996fffe..bfd8ab9f 100644 --- a/BMA.EHR.Retirement.Service/Controllers/RetirementResignEmployeeController.cs +++ b/BMA.EHR.Retirement.Service/Controllers/RetirementResignEmployeeController.cs @@ -196,6 +196,18 @@ namespace BMA.EHR.Retirement.Service.Controllers ? profileAdmin?.RootDnaId : ""; } + else if (role == "BROTHER") + { + nodeId = profileAdmin?.Node == 4 + ? profileAdmin?.Child3DnaId + : profileAdmin?.Node == 3 + ? profileAdmin?.Child2DnaId + : profileAdmin?.Node == 2 + ? profileAdmin?.Child1DnaId + : profileAdmin?.Node == 1 || profileAdmin?.Node == 0 + ? profileAdmin?.RootDnaId + : ""; + } else if (role == "ROOT" || role == "PARENT") { nodeId = profileAdmin?.RootDnaId; @@ -251,6 +263,11 @@ namespace BMA.EHR.Retirement.Service.Controllers retirementResignEmployees = retirementResignEmployees .Where(x => node == 4 ? x.child4DnaOldId == nodeId : (node == 3 ? x.child3DnaOldId == nodeId : (node == 2 ? x.child2DnaOldId == nodeId : (node == 1 ? x.child1DnaOldId == nodeId : (node == 0 ? x.rootDnaOldId == nodeId : (node == null ? true : true)))))).ToList(); } + else if (role == "BROTHER") + { + retirementResignEmployees = retirementResignEmployees + .Where(x => node == 4 ? x.child3DnaOldId == nodeId : (node == 3 ? x.child2DnaOldId == nodeId : (node == 2 ? x.child1DnaOldId == nodeId : (node == 1 || node == 0 ? x.rootDnaOldId == nodeId : (node == null ? true : true))))).ToList(); + } else if (role == "ROOT") { retirementResignEmployees = retirementResignEmployees @@ -311,6 +328,18 @@ namespace BMA.EHR.Retirement.Service.Controllers ? profileAdmin?.RootDnaId : ""; } + else if (role == "BROTHER") + { + nodeId = profileAdmin?.Node == 4 + ? profileAdmin?.Child3DnaId + : profileAdmin?.Node == 3 + ? profileAdmin?.Child2DnaId + : profileAdmin?.Node == 2 + ? profileAdmin?.Child1DnaId + : profileAdmin?.Node == 1 || profileAdmin?.Node == 0 + ? profileAdmin?.RootDnaId + : ""; + } else if (role == "ROOT" || role == "PARENT") { nodeId = profileAdmin?.RootDnaId; @@ -364,6 +393,11 @@ namespace BMA.EHR.Retirement.Service.Controllers retirementResignEmployees = retirementResignEmployees .Where(x => node == 4 ? x.child4DnaOldId == nodeId : (node == 3 ? x.child3DnaOldId == nodeId : (node == 2 ? x.child2DnaOldId == nodeId : (node == 1 ? x.child1DnaOldId == nodeId : (node == 0 ? x.rootDnaOldId == nodeId : (node == null ? true : true)))))).ToList(); } + else if (role == "BROTHER") + { + retirementResignEmployees = retirementResignEmployees + .Where(x => node == 4 ? x.child3DnaOldId == nodeId : (node == 3 ? x.child2DnaOldId == nodeId : (node == 2 ? x.child1DnaOldId == nodeId : (node == 1 || node == 0 ? x.rootDnaOldId == nodeId : (node == null ? true : true))))).ToList(); + } else if (role == "ROOT") { retirementResignEmployees = retirementResignEmployees @@ -572,181 +606,6 @@ namespace BMA.EHR.Retirement.Service.Controllers }; return Success(_data); - // } - // else - // { - // var getWorkflow = await _permission.GetPermissionAPIWorkflowAsync(id.ToString(), "RETIREMENT_CANCEL_EMP"); - // var createdUserId = await _context.RetirementResignEmployeeCancels.AsQueryable() - // .Where(x => x.CreatedUserId == UserId) - // .Where(x => x.RetirementResignEmployee.Id == id) - // .FirstOrDefaultAsync(); - // if (getWorkflow == false && createdUserId == null) - // { - // var getPermission = await _permission.GetPermissionAPIAsync("GET", "SYS_RESIGN_EMP"); - // var jsonData = JsonConvert.DeserializeObject(getPermission); - // if (jsonData["status"]?.ToString() != "200") - // { - // return Error(jsonData["message"]?.ToString(), StatusCodes.Status403Forbidden); - // } - // } - // var data = await _context.RetirementResignEmployeeCancels.AsQueryable() - // .Where(x => x.RetirementResignEmployee.Id == id) - // .Select(p => new - // { - // p.Id, - // p.prefix, - // p.firstName, - // p.lastName, - // p.profileId, - // p.Location, - // p.SendDate, - // p.ActiveDate, - // p.Reason, - // p.Remark, - // p.Status, - // salary = p.AmountOld, - // p.ApproveReason, - // p.RejectReason, - // p.IsActive, - // p.CreatedAt, - // p.PositionTypeOld, - // p.PositionLevelOld, - // p.PositionNumberOld, - // p.OrganizationPositionOld, - // p.OligarchReject, - // p.OligarchApproveReason, - // p.OligarchRejectReason, - // p.OligarchRejectDate, - // p.CommanderReject, - // p.CommanderApproveReason, - // p.CommanderRejectReason, - // p.CommanderRejectDate, - // p.OfficerReject, - // p.OfficerApproveReason, - // p.OfficerRejectReason, - // p.OfficerRejectDate, - // p.RemarkHorizontal, - // p.rootOld, - // p.rootOldId, - // p.rootShortNameOld, - // p.child1Old, - // p.child1OldId, - // p.child1ShortNameOld, - // p.child2Old, - // p.child2OldId, - // p.child2ShortNameOld, - // p.child3Old, - // p.child3OldId, - // p.child3ShortNameOld, - // p.child4Old, - // p.child4OldId, - // p.child4ShortNameOld, - // p.PositionOld, - // p.posMasterNoOld, - // p.posTypeOldId, - // p.posTypeNameOld, - // p.posLevelOldId, - // p.posLevelNameOld, - // p.IsNoDebt, - // p.IsNoBurden, - // p.IsDiscipline, - // p.ApproveStep, - // p.Group, - // Approvers = p.Approvers.Where(x => x.ApproveType.ToUpper() == "APPROVER"), - // Commanders = p.Approvers.Where(x => x.ApproveType.ToUpper() == "COMMANDER"), - // KeycloakUserId = p.CreatedUserId, - // p.CancelReason, - // idMain = p.RetirementResignEmployee.Id, - // statusMain = p.RetirementResignEmployee.Status, - // RetirementResignEmployeeDocs = p.RetirementResignEmployee.RetirementResignEmployeeDocs.Where(d => d.Document != null).Select(d => new { d.Document.Id, d.Document.FileName }), - // }) - // .FirstOrDefaultAsync(); - // if (data == null) - // return Error(GlobalMessages.RetirementResignEmployeeNotFound, 404); - - // var retirementResignEmployeeDocs = new List(); - // foreach (var doc in data.RetirementResignEmployeeDocs) - // { - // var _doc = new - // { - // FileName = doc.FileName, - // PathName = await _documentService.ImagesPath(doc.Id), - // doc.Id, - // }; - // retirementResignEmployeeDocs.Add(_doc); - // } - // var _data = new - // { - // data.Id, - // data.profileId, - // data.prefix, - // data.firstName, - // data.lastName, - // data.Location, - // data.SendDate, - // data.ActiveDate, - // data.Reason, - // data.Remark, - // data.Status, - // data.salary, - // data.PositionTypeOld, - // data.PositionLevelOld, - // data.PositionNumberOld, - // data.OrganizationPositionOld, - // data.ApproveReason, - // data.RejectReason, - // data.IsActive, - // data.CreatedAt, - // data.OligarchReject, - // data.OligarchApproveReason, - // data.OligarchRejectReason, - // data.OligarchRejectDate, - // data.CommanderReject, - // data.CommanderApproveReason, - // data.CommanderRejectReason, - // data.CommanderRejectDate, - // data.OfficerReject, - // data.OfficerApproveReason, - // data.OfficerRejectReason, - // data.OfficerRejectDate, - // data.RemarkHorizontal, - // data.rootOld, - // data.rootOldId, - // data.rootShortNameOld, - // data.child1Old, - // data.child1OldId, - // data.child1ShortNameOld, - // data.child2Old, - // data.child2OldId, - // data.child2ShortNameOld, - // data.child3Old, - // data.child3OldId, - // data.child3ShortNameOld, - // data.child4Old, - // data.child4OldId, - // data.child4ShortNameOld, - // data.PositionOld, - // data.posMasterNoOld, - // data.posTypeOldId, - // data.posTypeNameOld, - // data.posLevelOldId, - // data.posLevelNameOld, - // data.IsNoDebt, - // data.IsNoBurden, - // data.IsDiscipline, - // data.CancelReason, - // data.idMain, - // data.statusMain, - // data.ApproveStep, - // data.Group, - // data.KeycloakUserId, - // data.Approvers, - // data.Commanders, - // statusCancel = data.Status, - // Docs = retirementResignEmployeeDocs, - // }; - // return Success(_data); - // } } /// @@ -2065,6 +1924,18 @@ namespace BMA.EHR.Retirement.Service.Controllers ? profileAdmin?.RootDnaId : ""; } + else if (role == "BROTHER") + { + nodeId = profileAdmin?.Node == 4 + ? profileAdmin?.Child3DnaId + : profileAdmin?.Node == 3 + ? profileAdmin?.Child2DnaId + : profileAdmin?.Node == 2 + ? profileAdmin?.Child1DnaId + : profileAdmin?.Node == 1 || profileAdmin?.Node == 0 + ? profileAdmin?.RootDnaId + : ""; + } else if (role == "ROOT" || role == "PARENT") { nodeId = profileAdmin?.RootDnaId; @@ -2113,6 +1984,11 @@ namespace BMA.EHR.Retirement.Service.Controllers data = data .Where(x => node == 4 ? x.child4DnaId == nodeId : (node == 3 ? x.child3DnaId == nodeId : (node == 2 ? x.child2DnaId == nodeId : (node == 1 ? x.child1DnaId == nodeId : (node == 0 ? x.rootDnaId == nodeId : (node == null ? true : true)))))).ToList(); } + else if (role == "BROTHER") + { + data = data + .Where(x => node == 4 ? x.child3DnaId == nodeId : (node == 3 ? x.child2DnaId == nodeId : (node == 2 ? x.child1DnaId == nodeId : (node == 1 || node == 0 ? x.rootDnaId == nodeId : (node == null ? true : true))))).ToList(); + } else if (role == "ROOT") { data = data @@ -2706,12 +2582,6 @@ namespace BMA.EHR.Retirement.Service.Controllers [ProducesResponseType(StatusCodes.Status500InternalServerError)] public async Task> OfficerApproveRetirementResignEmployeeAsync(Guid id) { - // var getPermission = await _permission.GetPermissionAPIAsync("UPDATE", "SYS_LEAVE_LIST"); - // var jsonData = JsonConvert.DeserializeObject(getPermission); - // if (jsonData["status"]?.ToString() != "200") - // { - // return Error(jsonData["message"]?.ToString(), StatusCodes.Status403Forbidden); - // } await _repository.OfficerApproveRetirementResignEmployee(id); return Success(); @@ -2734,12 +2604,6 @@ namespace BMA.EHR.Retirement.Service.Controllers { try { - // var getPermission = await _permission.GetPermissionAPIAsync("UPDATE", "SYS_LEAVE_LIST"); - // var jsonData = JsonConvert.DeserializeObject(getPermission); - // if (jsonData["status"]?.ToString() != "200") - // { - // return Error(jsonData["message"]?.ToString(), StatusCodes.Status403Forbidden); - // } await _repository.CommanderApproveRetirementResignEmployee(id, req.Reason ?? "", null); return Success(); @@ -2768,12 +2632,6 @@ namespace BMA.EHR.Retirement.Service.Controllers { try { - // var getPermission = await _permission.GetPermissionAPIAsync("UPDATE", "SYS_LEAVE_LIST"); - // var jsonData = JsonConvert.DeserializeObject(getPermission); - // if (jsonData["status"]?.ToString() != "200") - // { - // return Error(jsonData["message"]?.ToString(), StatusCodes.Status403Forbidden); - // } await _repository.CommanderRejectRetirementResignEmployee(id, req.Reason ?? "", req.Date); return Success(); @@ -2802,12 +2660,6 @@ namespace BMA.EHR.Retirement.Service.Controllers { try { - // var getPermission = await _permission.GetPermissionAPIAsync("UPDATE", "SYS_LEAVE_LIST"); - // var jsonData = JsonConvert.DeserializeObject(getPermission); - // if (jsonData["status"]?.ToString() != "200") - // { - // return Error(jsonData["message"]?.ToString(), StatusCodes.Status403Forbidden); - // } await _repository.ApproveRetirementResignEmployee(id, req.Reason ?? "", null); return Success(); @@ -2836,12 +2688,6 @@ namespace BMA.EHR.Retirement.Service.Controllers { try { - // var getPermission = await _permission.GetPermissionAPIAsync("UPDATE", "SYS_LEAVE_LIST"); - // var jsonData = JsonConvert.DeserializeObject(getPermission); - // if (jsonData["status"]?.ToString() != "200") - // { - // return Error(jsonData["message"]?.ToString(), StatusCodes.Status403Forbidden); - // } await _repository.RejectRetirementResignEmployee(id, req.Reason ?? "", req.Date); return Success(); @@ -2932,12 +2778,6 @@ namespace BMA.EHR.Retirement.Service.Controllers [ProducesResponseType(StatusCodes.Status500InternalServerError)] public async Task> OfficerApproveRetirementResignEmployeeCancelAsync(Guid id) { - // var getPermission = await _permission.GetPermissionAPIAsync("UPDATE", "SYS_LEAVE_LIST"); - // var jsonData = JsonConvert.DeserializeObject(getPermission); - // if (jsonData["status"]?.ToString() != "200") - // { - // return Error(jsonData["message"]?.ToString(), StatusCodes.Status403Forbidden); - // } await _repository.OfficerApproveRetirementResignEmployeeCancel(id); return Success(); @@ -2960,12 +2800,6 @@ namespace BMA.EHR.Retirement.Service.Controllers { try { - // var getPermission = await _permission.GetPermissionAPIAsync("UPDATE", "SYS_LEAVE_LIST"); - // var jsonData = JsonConvert.DeserializeObject(getPermission); - // if (jsonData["status"]?.ToString() != "200") - // { - // return Error(jsonData["message"]?.ToString(), StatusCodes.Status403Forbidden); - // } await _repository.CommanderApproveRetirementResignEmployeeCancel(id, req.Reason ?? "", null); return Success(); @@ -2994,12 +2828,6 @@ namespace BMA.EHR.Retirement.Service.Controllers { try { - // var getPermission = await _permission.GetPermissionAPIAsync("UPDATE", "SYS_LEAVE_LIST"); - // var jsonData = JsonConvert.DeserializeObject(getPermission); - // if (jsonData["status"]?.ToString() != "200") - // { - // return Error(jsonData["message"]?.ToString(), StatusCodes.Status403Forbidden); - // } await _repository.CommanderRejectRetirementResignEmployeeCancel(id, req.Reason ?? "", req.Date); return Success(); @@ -3028,12 +2856,6 @@ namespace BMA.EHR.Retirement.Service.Controllers { try { - // var getPermission = await _permission.GetPermissionAPIAsync("UPDATE", "SYS_LEAVE_LIST"); - // var jsonData = JsonConvert.DeserializeObject(getPermission); - // if (jsonData["status"]?.ToString() != "200") - // { - // return Error(jsonData["message"]?.ToString(), StatusCodes.Status403Forbidden); - // } await _repository.ApproveRetirementResignEmployeeCancel(id, req.Reason ?? "", null); return Success(); @@ -3062,12 +2884,6 @@ namespace BMA.EHR.Retirement.Service.Controllers { try { - // var getPermission = await _permission.GetPermissionAPIAsync("UPDATE", "SYS_LEAVE_LIST"); - // var jsonData = JsonConvert.DeserializeObject(getPermission); - // if (jsonData["status"]?.ToString() != "200") - // { - // return Error(jsonData["message"]?.ToString(), StatusCodes.Status403Forbidden); - // } await _repository.RejectRetirementResignEmployeeCancel(id, req.Reason ?? "", req.Date); return Success();