From f283c66278b0569bca88b22b342a54ac5712abf5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=A7=A6=E9=B8=BF=E5=B1=95?= <18031053041@163.com> Date: Tue, 20 Jan 2026 08:45:30 +0800 Subject: [PATCH] =?UTF-8?q?=E6=95=B0=E6=8D=AE=E6=9D=83=E9=99=90BUG?= =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/CommonApplicationService.java | 39 +++++++++++-------- .../facade/organization/OrganizationApi.java | 1 + 2 files changed, 24 insertions(+), 16 deletions(-) diff --git a/mhd_product/src/main/java/com/linke/product/application/service/common/CommonApplicationService.java b/mhd_product/src/main/java/com/linke/product/application/service/common/CommonApplicationService.java index a74903228..b5ea1f993 100644 --- a/mhd_product/src/main/java/com/linke/product/application/service/common/CommonApplicationService.java +++ b/mhd_product/src/main/java/com/linke/product/application/service/common/CommonApplicationService.java @@ -77,25 +77,32 @@ public class CommonApplicationService { List longs = iOrganizationSvc.selectOrganizationIdsByOrganizationId(organizationId); dataPermission.setOrganizationIdList(longs); }else { - //获取当前用户数据权限 - UserDataPermissionQueryDTO userDataPermissionQueryDTO = new UserDataPermissionQueryDTO(); - userDataPermissionQueryDTO.setMenuId(permissionMenuId); - userDataPermissionQueryDTO.setOrganizationId(organizationId); - userDataPermissionQueryDTO.setUserId(userId); - AjaxResult info = userServiceFeign.findUserDataPermission(userDataPermissionQueryDTO); - if("200".equals(String.valueOf(info.get("code")))){ - UserDataPermissionPO userDataPermissionPO = JSONObject.parseObject(JSONObject.toJSONString(info.get("data")), UserDataPermissionPO.class); - if(userDataPermissionPO.getUserDataOrganizationStatus() != null){ - //1表示可以查询当前组织及下级组织的数据,反之只能看到自己创建的数据 - if(userDataPermissionPO.getUserDataOrganizationStatus() == 1){ - //获取当前组织全部下级组织id - List longs = iOrganizationSvc.selectOrganizationIdsByOrganizationId(organizationId); - dataPermission.setOrganizationIdList(longs); + // 数据权限:organizationId等于2827时,为南光组织,查询所有组织的数据 + if (organizationId != null && organizationId.equals(2827L)) { + // 南光组织(organizationId=2827):可以查询所有组织的数据 + List longs = iOrganizationSvc.selectAllOrganizationId(); + dataPermission.setOrganizationIdList(longs); + } else { + //获取当前用户数据权限 + UserDataPermissionQueryDTO userDataPermissionQueryDTO = new UserDataPermissionQueryDTO(); + userDataPermissionQueryDTO.setMenuId(permissionMenuId); + userDataPermissionQueryDTO.setOrganizationId(organizationId); + userDataPermissionQueryDTO.setUserId(userId); + AjaxResult info = userServiceFeign.findUserDataPermission(userDataPermissionQueryDTO); + if("200".equals(String.valueOf(info.get("code")))){ + UserDataPermissionPO userDataPermissionPO = JSONObject.parseObject(JSONObject.toJSONString(info.get("data")), UserDataPermissionPO.class); + if(userDataPermissionPO.getUserDataOrganizationStatus() != null){ + //1表示可以查询当前组织及下级组织的数据,反之只能看到自己创建的数据 + if(userDataPermissionPO.getUserDataOrganizationStatus() == 1){ + //获取当前组织全部下级组织id + List longs = iOrganizationSvc.selectOrganizationIdsByOrganizationId(organizationId); + dataPermission.setOrganizationIdList(longs); + }else { + dataPermission.setCreateBy(userId); + } }else { dataPermission.setCreateBy(userId); } - }else { - dataPermission.setCreateBy(userId); } } } diff --git a/mhd_product/src/main/java/com/linke/product/interfaces/facade/organization/OrganizationApi.java b/mhd_product/src/main/java/com/linke/product/interfaces/facade/organization/OrganizationApi.java index 4d967b529..02444f336 100644 --- a/mhd_product/src/main/java/com/linke/product/interfaces/facade/organization/OrganizationApi.java +++ b/mhd_product/src/main/java/com/linke/product/interfaces/facade/organization/OrganizationApi.java @@ -52,6 +52,7 @@ public class OrganizationApi extends BaseController { //转换实体 BeanUtils.copyProperties(organizationDto, organizationPo); //判断当前登录人数据权限 + //获取当前登录人的组织ID DataPermission dataPermission = commonApplicationService.dataPermission(organizationPo.getPermissionMenuId()); startPage(); List list = organizationASvc.selectOrganizationList(organizationPo,dataPermission);