From b6058c5f8072b02c4f0c6680fd8024e0ca69cf31 Mon Sep 17 00:00:00 2001 From: wanghao Date: Mon, 10 Aug 2026 16:03:30 +0800 Subject: [PATCH] =?UTF-8?q?feat(message):=20=E6=B6=88=E6=81=AF=E9=80=9A?= =?UTF-8?q?=E7=9F=A5=E5=88=97=E8=A1=A8=E6=9D=83=E9=99=90=E7=99=BD=E5=90=8D?= =?UTF-8?q?=E5=8D=95=E5=8A=A0=E5=85=A5notice=5Frole=20+=20=E5=85=9C?= =?UTF-8?q?=E5=BA=95=E6=9C=AC=E4=BA=BA=E5=88=9B=E5=BB=BA=E5=8F=AF=E8=A7=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/org/jeecg/enums/RoleEnum.java | 3 ++- .../service/impl/SysMessageNoticeServiceImpl.java | 11 ++++++----- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/jeecg-boot-base-core/src/main/java/org/jeecg/enums/RoleEnum.java b/jeecg-boot-base-core/src/main/java/org/jeecg/enums/RoleEnum.java index 268bb5e..7ec4840 100644 --- a/jeecg-boot-base-core/src/main/java/org/jeecg/enums/RoleEnum.java +++ b/jeecg-boot-base-core/src/main/java/org/jeecg/enums/RoleEnum.java @@ -48,7 +48,8 @@ public enum RoleEnum { MANAGER("manager"), MEDICALUSER("medicaluser"), MEDICALADMIN("medicaladmin"), - HOS_DOCTOR("hos_doctor"); + HOS_DOCTOR("hos_doctor"), + NOTICE_ROLE("notice_role"); /** * 角色名 diff --git a/jeecg-system/jeecg-system-biz/src/main/java/org/jeecg/modules/system/message/service/impl/SysMessageNoticeServiceImpl.java b/jeecg-system/jeecg-system-biz/src/main/java/org/jeecg/modules/system/message/service/impl/SysMessageNoticeServiceImpl.java index 852d9de..7830b1d 100644 --- a/jeecg-system/jeecg-system-biz/src/main/java/org/jeecg/modules/system/message/service/impl/SysMessageNoticeServiceImpl.java +++ b/jeecg-system/jeecg-system-biz/src/main/java/org/jeecg/modules/system/message/service/impl/SysMessageNoticeServiceImpl.java @@ -188,13 +188,14 @@ public class SysMessageNoticeServiceImpl extends ServiceImpl wrapper) { LoginUser loginUser = GlobalUtils.getLoginUser(); /* - * 1.后台接口的消息列表需要做一定数据权限控制需考虑的角色有admin,system,second_manager,third_manager - * 2.admin,system可查看所有的活动 + * 1.后台接口的消息列表需要做一定数据权限控制需考虑的角色有admin,system,second_manager,third_manager,notice_role + * 2.admin,system,notice_role可查看所有的消息通知 * 3.second_manager,third_manager可查看管理单位下的消息列表 + * 4.未命中上述白名单的角色,兜底只可查看本人创建的消息通知 */ boolean permissions = false; List roleCodes = Arrays.asList(Objects.toString(loginUser.getRoleCodes(), "").split(",")); - if (roleCodes.contains(RoleEnum.ADMIN_MANAGER.roleName) || roleCodes.contains(RoleEnum.SYSTEM.roleName) || roleCodes.contains(RoleEnum.WEIGHT_PLAN_ADMIN.roleName)) { + if (roleCodes.contains(RoleEnum.ADMIN_MANAGER.roleName) || roleCodes.contains(RoleEnum.SYSTEM.roleName) || roleCodes.contains(RoleEnum.WEIGHT_PLAN_ADMIN.roleName) || roleCodes.contains(RoleEnum.NOTICE_ROLE.roleName)) { permissions = true; } else if (roleCodes.contains(RoleEnum.SECOND_MANAGER.roleName)) { if (StrUtil.isNotEmpty(loginUser.getDepartCodes())) { @@ -203,8 +204,8 @@ public class SysMessageNoticeServiceImpl extends ServiceImpl