From 2d3b575ed96eee7ccd5b324baa3135d2236934ac Mon Sep 17 00:00:00 2001
From: 陈昶聿 <chychen@nbjetron.com>
Date: 星期五, 13 十一月 2026 16:39:37 +0800
Subject: [PATCH] 【市一】1、登录服务问题处理 2、电话挂断问题处理 3、查询报错问题处理
---
ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java | 50 +++++++++++++++++++++++++++++++++++++++-----------
1 files changed, 39 insertions(+), 11 deletions(-)
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java
index dfa1ef9..a093284 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java
@@ -63,6 +63,12 @@
@Value("${spring.profiles.active}")
private String active;
+ /**
+ * 绠$悊鍛樼敤鎴稩D鍒楄〃锛堥厤缃」 isAdmin锛夈�傜鐞嗗憳涓嶅彈銆岀敤鎴�-閮ㄩ棬鍏崇郴琛ㄣ�嶉檺鍒讹紝鐩存帴鐪嬫湰鏈烘瀯鍏ㄩ儴绉戝/鐥呭尯銆�
+ */
+ @Value("${isAdmin:1}")
+ private List<Long> isAdmin;
+
// @Value("${wx_appid}")
// private String wxAppid;
//
@@ -225,10 +231,12 @@
SysUser user = SecurityUtils.getLoginUser().getUser();
//鏄剧ず鎵�鏈夐櫌鍖烘潈闄�
String allCampus = sysConfigService.selectConfigByKey("sys.authority.campus.all");
- if (StringUtils.isNotEmpty(allCampus)) {
- allCampus = "," + allCampus + ",";
- if (allCampus.contains("," + user.getUserName() + ",")) {
- user.setCampusid(null);
+ if (StringUtils.isNotEmpty(allCampus) && StringUtils.isNotEmpty(user.getUserName())) {
+ for (String item : allCampus.split("[,锛�;锛沑\s]+")) {
+ if (user.getUserName().equals(item.trim())) {
+ user.setCampusid(null);
+ break;
+ }
}
}
@@ -240,23 +248,43 @@
ajax.put("user", user);
ajax.put("roles", roles);
ajax.put("permissions", permissions);
- List<SysDept> sysDeptKSs = null;
- List<SysDept> sysDeptBQs = null;
+ // 绉戝/鐥呭尯涓嬫媺鐨勬暟鎹簮锛�
+ // 路 绠$悊鍛橈紙璐﹀彿 admin锛屾垨鍛戒腑閰嶇疆 isAdmin 鐨勭敤鎴稩D锛夛細鐩存帴鏌� sys_dept 鍙栨湰鏈烘瀯鍏ㄩ儴绉戝/鐥呭尯锛�
+ // 涓嶅啀鍏宠仈 sys_user_dept锛屼篃涓嶆寜闄㈠尯杩囨护鈥斺�旂鐞嗗憳澶╃劧鎷ユ湁鍏ㄩ儴绉戝鏉冮檺锛�
+ // 路 鏅�氱敤鎴凤細浠嶇劧鎸夈�岀敤鎴�-閮ㄩ棬鍏崇郴琛ㄣ�嶅彧杩斿洖鑷繁鍚嶄笅鐨勭瀹�/鐥呭尯锛堜繚鎸佸師閫昏緫锛夈��
SysUserDept sysUserDept = new SysUserDept();
- sysUserDept.setUserId(user.getUserId());
- sysUserDept.setDeptType("1");
sysUserDept.setOrgid(user.getOrgid());
- sysUserDept.setCampusid(user.getCampusid());
- sysDeptKSs = sysDeptService.selectLeafSysDeptListBySysUserDept(sysUserDept);
+ if (!isAdminUser(user)) {
+ sysUserDept.setUserId(user.getUserId());
+ sysUserDept.setCampusid(user.getCampusid());
+ }
+ sysUserDept.setDeptType("1");
+ List<SysDept> sysDeptKSs = sysDeptService.selectLeafSysDeptListBySysUserDept(sysUserDept);
ajax.put("belongDepts", sysDeptKSs);
sysUserDept.setDeptType("2");
- sysDeptBQs = sysDeptService.selectLeafSysDeptListBySysUserDept(sysUserDept);
+ List<SysDept> sysDeptBQs = sysDeptService.selectLeafSysDeptListBySysUserDept(sysUserDept);
ajax.put("belongWards", sysDeptBQs);
return ajax;
}
/**
+ * 鏄惁绠$悊鍛橈細璐﹀彿鍚嶄负 admin锛屾垨鐢ㄦ埛ID鍛戒腑閰嶇疆椤� isAdmin銆�
+ * <p>
+ * 绠$悊鍛樺彇绉戝/鐥呭尯鏃朵笉璧� sys_user_dept锛圚IS 閲囬泦鏄庣‘鎺掗櫎 admin锛岃琛ㄩ噷绠$悊鍛樻病鏈夋暟鎹級锛�
+ * 鍚﹀垯浼氬嚭鐜般�岀櫥褰曟垚鍔熶絾绉戝/鐥呭尯涓嬫媺涓虹┖銆嶃��
+ */
+ private boolean isAdminUser(SysUser user) {
+ if (user == null) {
+ return false;
+ }
+ if ("admin".equalsIgnoreCase(user.getUserName())) {
+ return true;
+ }
+ return user.getUserId() != null && isAdmin != null && isAdmin.contains(user.getUserId());
+ }
+
+ /**
* 鑾峰彇璺敱淇℃伅
*
* @return 璺敱淇℃伅
--
Gitblit v1.9.3