From 0d88654fdb552e2fdadbd89c4e3568f84b7b8296 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=BD=95=E7=BE=8E=E8=8D=A3?= <10755671+mei-rong-he@user.noreply.gitee.com> Date: Tue, 26 May 2026 11:19:21 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Api/NotificationTaskController.cs | 10 ++-- .../ChangeShiftRecordController.cs | 57 +++++++++++++++++++ 2 files changed, 62 insertions(+), 5 deletions(-) diff --git a/APT.MicroApi/APT.FM.WebApi/Controllers/Api/NotificationTaskController.cs b/APT.MicroApi/APT.FM.WebApi/Controllers/Api/NotificationTaskController.cs index bea710d..2f74254 100644 --- a/APT.MicroApi/APT.FM.WebApi/Controllers/Api/NotificationTaskController.cs +++ b/APT.MicroApi/APT.FM.WebApi/Controllers/Api/NotificationTaskController.cs @@ -268,8 +268,10 @@ namespace APT.FM.WebApi.Controllers.Api { var result = new PagedActionResult(); var loginUserId = APT.Infrastructure.Api.AppContext.CurrentSession.UserID; - var admiId = this.GetEntity(t => t.CODE == "admin")?.ID; - if (loginUserId == null || loginUserId == admiId) + var loginDepartmentId = APT.Infrastructure.Api.AppContext.CurrentSession.DepartmentID; + var admiId = this.GetEntity(t => t.CODE == "admin")?.ID; + var depart = this.GetEntity(loginDepartmentId.ToString()); + if (loginUserId == null || loginUserId == admiId ||(depart!=null && depart.DEPARTMENT_TYPE == 5)) { DataOrder order2 = new DataOrder(); order2.Field = "TASK_STARTDT"; @@ -279,10 +281,8 @@ namespace APT.FM.WebApi.Controllers.Api } else { - var loginDepartmentId = this.GetEntity(loginUserId.ToString())?.DEPARTMENT_ID; - if (loginDepartmentId != null) + if (depart != null) { - var depart = this.GetEntity(loginDepartmentId.ToString()); if (depart.DEPARTMENT_TYPE == 20 && depart.USER_ID != loginUserId) { DataOrder order2 = new DataOrder(); diff --git a/APT.MicroApi/APT.FO.WebApi/Controllers/ChangeShiftRecordController.cs b/APT.MicroApi/APT.FO.WebApi/Controllers/ChangeShiftRecordController.cs index ef83d02..f963571 100644 --- a/APT.MicroApi/APT.FO.WebApi/Controllers/ChangeShiftRecordController.cs +++ b/APT.MicroApi/APT.FO.WebApi/Controllers/ChangeShiftRecordController.cs @@ -244,6 +244,50 @@ namespace APT.FO.WebApi.Controllers.Api.FO else { pageFilter.IgnoreDataRule = false; + } + var curUser = ""; var changeDept = ""; var changeUser = ""; + if (pageFilter != null && pageFilter.FilterGroup != null && pageFilter.FilterGroup.Groups != null) + { + foreach (var item in pageFilter.FilterGroup.Groups) + { + var curUserTemp = item.Rules.FirstOrDefault(t => t.Field == "CURRENT_USER"); + if (curUserTemp != null) + { + curUser = curUserTemp.Value.ToString(); + item.Rules.Remove(curUserTemp); + } + var changeDeptTemp = item.Rules.FirstOrDefault(t => t.Field == "CHANGE_DEPART"); + if (changeDeptTemp != null) + { + changeDept = changeDeptTemp.Value.ToString(); + item.Rules.Remove(changeDeptTemp); + } + var changeUserTemp = item.Rules.FirstOrDefault(t => t.Field == "CHANGE_USER"); + if (changeUserTemp != null) + { + changeUser = changeUserTemp.Value.ToString(); + item.Rules.Remove(changeUserTemp); + } + } + var rules = pageFilter.FilterGroup.Rules.ToList(); + foreach (var item in rules) + { + if (item.Field == "CURRENT_USER") + { + curUser = item.Value.ToString(); + pageFilter.FilterGroup.Rules.Remove(item); + } + if (item.Field == "CHANGE_DEPART") + { + changeDept = item.Value.ToString(); + pageFilter.FilterGroup.Rules.Remove(item); + } + if (item.Field == "CHANGE_USER") + { + changeUser = item.Value.ToString(); + pageFilter.FilterGroup.Rules.Remove(item); + } + } } result = this.GetOrderPageEntities(null, pageFilter); //else @@ -280,6 +324,19 @@ namespace APT.FO.WebApi.Controllers.Api.FO } } } + if (!string.IsNullOrEmpty(curUser)) + { + result.Data = result.Data.Where(t=>t.CURRENT_USER.Contains(curUser)).ToList(); + } + if (!string.IsNullOrEmpty(changeDept)) + { + result.Data = result.Data.Where(t => t.CHANGE_DEPART.Contains(changeDept)).ToList(); + } + if (!string.IsNullOrEmpty(changeUser)) + { + result.Data = result.Data.Where(t => t.CHANGE_USER.Contains(changeUser)).ToList(); + } + result.TotalCount = result.Data.Count(); } return result; }