From ffaeb76c04cd3a358e767362dd0a7b82aeed88a2 Mon Sep 17 00:00:00 2001 From: liusheng <337615773@qq.com> Date: 星期四, 04 九月 2025 22:48:30 +0800 Subject: [PATCH] 单点登陆 --- ruoyi-admin/src/main/resources/application-xh.yml | 8 + ruoyi-admin/src/main/resources/application-hn.yml | 10 + ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDeptServiceImpl.java | 127 ++++++++------------ ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java | 40 +++++- ruoyi-system/src/main/java/com/ruoyi/system/service/ISysDeptService.java | 38 +++-- ruoyi-admin/src/main/resources/application-druid.yml | 67 ++++++---- ruoyi-admin/src/main/resources/application-ywry.yml | 6 + ruoyi-admin/src/main/resources/application-sltd.yml | 38 +++-- ruoyi-admin/src/main/resources/application-ls.yml | 5 9 files changed, 193 insertions(+), 146 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 8b9a175..33a628c 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 @@ -1,21 +1,23 @@ package com.ruoyi.web.controller.system; +import com.alibaba.fastjson2.JSONObject; import com.ruoyi.common.constant.Constants; import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.core.domain.entity.SysMenu; import com.ruoyi.common.core.domain.entity.SysUser; import com.ruoyi.common.core.domain.model.LoginBody; +import com.ruoyi.common.dx.MessageSend; +import com.ruoyi.common.utils.RSAPublicKeyExample; import com.ruoyi.common.utils.SecurityUtils; import com.ruoyi.common.utils.StringUtils; import com.ruoyi.framework.web.service.SysLoginService; import com.ruoyi.framework.web.service.SysPermissionService; +import com.ruoyi.system.service.ISysDeptService; import com.ruoyi.system.service.ISysMenuService; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.web.bind.annotation.*; import javax.annotation.security.PermitAll; import javax.servlet.http.HttpServletResponse; @@ -38,7 +40,17 @@ private ISysMenuService menuService; @Autowired + private ISysDeptService sysDeptService; + + @Autowired private SysPermissionService permissionService; + + + @Value("${pri_key}") + private String pri_key; + + @Value("${isEncryp}") + private Integer isEncryp; /** * 鐧诲綍鏂规硶 @@ -65,11 +77,22 @@ public AjaxResult SSOLogin(@RequestBody LoginBody loginBody) { AjaxResult ajax = AjaxResult.success(); // 鐢熸垚浠ょ墝 - if (StringUtils.isEmpty(loginBody.getUsername()) || StringUtils.isEmpty(loginBody.getOrgid()) || StringUtils.isEmpty(loginBody.getDeptId())) { + if (StringUtils.isEmpty(loginBody.getUsername()) || StringUtils.isEmpty(loginBody.getOrgid())) { return AjaxResult.error("鐢ㄦ埛鍚嶆垨缁勭粐鏈烘瀯鎴栭儴闂ㄤ笉鑳戒负绌�"); } - String token = loginService.loginByUserName(loginBody.getUsername() + "&" + loginBody.getOrgid() + "&" + loginBody.getDeptId()); + if (StringUtils.isEmpty(loginBody.getDeptId())) { + loginBody.setDeptId(null); + } + String userName = loginBody.getUsername(); + if (isEncryp == 1) { + RSAPublicKeyExample rsaPublicKeyExample = new RSAPublicKeyExample(); + userName = rsaPublicKeyExample.decryptedData(loginBody.getUsername(), pri_key); + } + String token = loginService.loginByUserName(userName + "&" + loginBody.getOrgid() + "&" + loginBody.getDeptId()); + if (StringUtils.isEmpty(token)) { + return AjaxResult.error("鐧婚檰澶辫触"); + } ajax.put(Constants.TOKEN, token); return ajax; } @@ -117,4 +140,9 @@ List<SysMenu> menus = menuService.selectMenuTreeByUserId(userId); return AjaxResult.success(menuService.buildMenus(menus)); } + + @GetMapping("/getDept/{orgid}") + public AjaxResult getDept(@PathVariable String orgid) { + return AjaxResult.success(sysDeptService.selectDept(orgid)); + } } diff --git a/ruoyi-admin/src/main/resources/application-druid.yml b/ruoyi-admin/src/main/resources/application-druid.yml index d00d5a5..497089e 100644 --- a/ruoyi-admin/src/main/resources/application-druid.yml +++ b/ruoyi-admin/src/main/resources/application-druid.yml @@ -23,21 +23,25 @@ # password: 123456 # driverClassName: com.mysql.cj.jdbc.Driver # # 鏂板崕 - # url: jdbc:mysql://192.168.191.181:3308/smartor?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8 - # username: smartor - # password: Smartor.2023 - # driverClassName: com.mysql.cj.jdbc.Driver - - # 鍏徃浜� - url: jdbc:mysql://116.62.18.175:6002/smartor_lisui?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8 - username: hxsoft - password: Hxerp2000 - driverClassName: com.mysql.cj.jdbc.Driver - # 鍏徃鏈湴 -# url: jdbc:mysql://192.168.100.10:3306/smartor_lishui?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8 +# url: jdbc:mysql://192.168.100.10:3306/smartor_xinhua?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8 # username: smartor # password: Smartor.2023 # driverClassName: com.mysql.cj.jdbc.Driver + + # 鍏徃浜� + url: jdbc:mysql://116.62.18.175:6002/smartor_sltd?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8 + username: hxsoft + password: Smartor.2023 + # ob鏁版嵁搴撳瓨 +# url: jdbc:mysql://127.0.0.1:2881/smartor-lisui?useUnicode=true&characterEncoding=utf8&serverTimezone=Asia/Shanghai +# username: root@sys +# password: +# driverClassName: com.mysql.cj.jdbc.Driver + # 鍏徃鏈湴 +# url: jdbc:mysql://192.168.100.10:3306/smartor_lishui?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8 + # username: smartor + # password: Smartor.2023 + driverClassName: com.mysql.cj.jdbc.Driver # # 楂樻柉鏁版嵁搴撻厤缃� # url: jdbc:postgresql://127.0.0.1:5432/smartorlishui @@ -47,21 +51,22 @@ # 浠庡簱鏁版嵁婧� slave: -# url: jdbc:oracle:thin:@//192.168.88.46:1521/orcl -# username: qebemr -# password: qebsoft -# driver-class-name: oracle.jdbc.OracleDriver - enabled: true - url: jdbc:mysql://192.168.100.10:3306/emr?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8 - username: smartor - password: Smartor.2023 - driverClassName: com.mysql.cj.jdbc.Driver + enabled: true + url: jdbc:oracle:thin:@//192.168.100.10:1521/orcl + username: healthy + password: healthy + driver-class-name: oracle.jdbc.OracleDriver + # enabled: true + # url: jdbc:mysql://192.168.100.10:3306/emr?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8 + # username: smartor + # password: Smartor.2023 + # driverClassName: com.mysql.cj.jdbc.Driver # 浠庢暟鎹簮寮�鍏�/榛樿鍏抽棴(鍏徃) -# enabled: true -# url: jdbc:sqlserver://116.62.18.175:6001;DatabaseName=iv-ywey;encrypt=false;SelectMethod=cursor -# username: sa -# password: Hxerp2000 -# driverClassName: com.microsoft.sqlserver.jdbc.SQLServerDriver + # enabled: true + # url: jdbc:sqlserver://116.62.18.175:6001;DatabaseName=iv-ywey;encrypt=false;SelectMethod=cursor + # username: sa + # password: Hxerp2000 + # driverClassName: com.microsoft.sqlserver.jdbc.SQLServerDriver # 浠庢暟鎹簮寮�鍏�/榛樿鍏抽棴(涔変箤浜岄櫌) # enabled: true @@ -113,12 +118,12 @@ # redis 閰嶇疆 redis: host: 127.0.0.1 - port: 6379 + port: 6020 # 鏁版嵁搴撶储寮� database: 0 # 瀵嗙爜 - password: + password: Smartor # 杩炴帴瓒呮椂鏃堕棿 timeout: 10s lettuce: @@ -270,3 +275,9 @@ #闅忚鍖婚櫌锛�1鏂板崕 2涓芥按 visitHosp: 2 + +#澶勭悊鎶曡瘔寤鸿鐨勯儴闂ㄧ紪鐮� +dealDeptCode: 40003024 + +#鏄惁鍔犲瘑 0涓嶅姞 1鍔犲瘑 +isEncryp: 0 diff --git a/ruoyi-admin/src/main/resources/application-hn.yml b/ruoyi-admin/src/main/resources/application-hn.yml index 824f290..4aa989f 100644 --- a/ruoyi-admin/src/main/resources/application-hn.yml +++ b/ruoyi-admin/src/main/resources/application-hn.yml @@ -254,5 +254,11 @@ #admin绠$悊鍛榰serId isAdmin: 1,2,3,4,5,6,7,8,9,10,11,12,13 -#闅忚鍖婚櫌锛�1鏂板崕 2涓芥按 -visitHosp: 2 +#闅忚鍖婚櫌锛�1鏂板崕 2涓芥按 3鐪佺珛鍚屽痉 +visitHosp: 0 + +#澶勭悊鎶曡瘔寤鸿鐨勯儴闂ㄧ紪鐮� +dealDeptCode: + +#鏄惁鍔犲瘑 0涓嶅姞 1鍔犲瘑 +isEncryp: 0 diff --git a/ruoyi-admin/src/main/resources/application-ls.yml b/ruoyi-admin/src/main/resources/application-ls.yml index cde7fa2..0f1d9d5 100644 --- a/ruoyi-admin/src/main/resources/application-ls.yml +++ b/ruoyi-admin/src/main/resources/application-ls.yml @@ -243,8 +243,11 @@ #admin绠$悊鍛榰serId isAdmin: 1,2,3,4,5,6,7,8,9,10,11,12,13 -#闅忚鍖婚櫌锛�1鏂板崕 2涓芥按 +#闅忚鍖婚櫌锛�1鏂板崕 2涓芥按 3鐪佺珛鍚屽痉 visitHosp: 2 #澶勭悊鎶曡瘔寤鸿鐨勯儴闂ㄧ紪鐮� dealDeptCode: + +#鏄惁鍔犲瘑 0涓嶅姞 1鍔犲瘑 +isEncryp: 0 diff --git a/ruoyi-admin/src/main/resources/application-sltd.yml b/ruoyi-admin/src/main/resources/application-sltd.yml index 632f977..b35c05f 100644 --- a/ruoyi-admin/src/main/resources/application-sltd.yml +++ b/ruoyi-admin/src/main/resources/application-sltd.yml @@ -167,15 +167,11 @@ #浜岀淮鐮佽矾寰� qrpath: D:\qrcode -#鍏徃鍐呭閾捐姹侷P鍜岀鍙e彿 -#req_path: 8095 -#localIP: 192.168.2.13 -#鏂板崕鍖婚櫌澶栭摼璇锋眰IP鍜岀鍙e彿 -req_path: 8093 -#localIP: https://wx.lihusmart.com -#涓芥按澶栭摼璇锋眰IP鍜岀鍙e彿 -localIP: http://221.12.19.26 +#澶栭摼璇锋眰IP鍜岀鍙e彿 +req_path: 13871 +localIP: http://m.zjtongde.com + #鑾峰彇鎮h�呬俊鎭疷RL(鍗庡崜鎻愪緵) hosp_info_url: http://esb-core-rest.wowjoy.cn/esb/exchange @@ -197,16 +193,14 @@ #fs鎵�浣跨敤鐨勯樋閲岀殑app_key(鏂板崕) app_key_yq: ZurNHpaQLq6P55YS -#鏈� 鍦� 鐭俊璇锋眰鍦板潃(杩欎釜鏈嶅姟鏄垜浠嚜宸卞啓鐨�) -#xhsmsPath: http://192.168.2.13:8092/sendSms -#鏂板崕鐭俊璇锋眰鍦板潃(杩欎釜鏈嶅姟鏄垜浠嚜宸卞啓鐨�) -xhsmsPath: http://192.16.4.220:8092/sendSms +#鐭俊璇锋眰鍦板潃(杩欓噷涓虹┖锛屽悓寰锋彁渚涚殑鏄痺s) +xhsmsPath: #甯愬彿 -xhsmsAccount: 911124 +xhsmsAccount: #鎺ュ彛瀵嗙爜 -xhsmsPwd: zW5eXe +xhsmsPwd: #铏氭嫙鎺ュ叆鐮� -xhsmsjrm: 1069055 +xhsmsjrm: ##鏈湴FTP杩炴帴 #FTP_SERVER: "192.168.2.13" @@ -237,6 +231,16 @@ #admin绠$悊鍛榰serId isAdmin: 1,2,3,4,5,6,7,8,9,10,11,12,13 -#闅忚鍖婚櫌锛�1鏂板崕 2涓芥按 -visitHosp: 2 +#闅忚鍖婚櫌锛�1鏂板崕 2涓芥按 3鐪佺珛鍚屽痉 +visitHosp: 3 + +#鐢ㄦ埛榛樿瀵嗙爜 +userPwd: sltd@0230 + +#澶勭悊鎶曡瘔寤鸿鐨勯儴闂ㄧ紪鐮� +dealDeptCode: 40003024 + + +#鏄惁鍔犲瘑 0涓嶅姞 1鍔犲瘑 +isEncryp: 0 diff --git a/ruoyi-admin/src/main/resources/application-xh.yml b/ruoyi-admin/src/main/resources/application-xh.yml index e03b553..692cc4b 100644 --- a/ruoyi-admin/src/main/resources/application-xh.yml +++ b/ruoyi-admin/src/main/resources/application-xh.yml @@ -229,5 +229,11 @@ #admin绠$悊鍛榰serId isAdmin: 1,2,3,4,5,6,7,8,9,10,11,12,13 -#闅忚鍖婚櫌锛�1鏂板崕 2涓芥按 +#闅忚鍖婚櫌锛�1鏂板崕 2涓芥按 3鐪佺珛鍚屽痉 visitHosp: 1 + +#澶勭悊鎶曡瘔寤鸿鐨勯儴闂ㄧ紪鐮� +dealDeptCode: + +#鏄惁鍔犲瘑 0涓嶅姞 1鍔犲瘑 +isEncryp: 0 diff --git a/ruoyi-admin/src/main/resources/application-ywry.yml b/ruoyi-admin/src/main/resources/application-ywry.yml index de7851c..b278b68 100644 --- a/ruoyi-admin/src/main/resources/application-ywry.yml +++ b/ruoyi-admin/src/main/resources/application-ywry.yml @@ -217,3 +217,9 @@ #闅忚鍖婚櫌锛�1鏂板崕 2涓芥按 visitHosp: 2 + +#澶勭悊鎶曡瘔寤鸿鐨勯儴闂ㄧ紪鐮� +dealDeptCode: + +#鏄惁鍔犲瘑 0涓嶅姞 1鍔犲瘑 +isEncryp: 0 diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/ISysDeptService.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/ISysDeptService.java index 166ba16..7920340 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/service/ISysDeptService.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/ISysDeptService.java @@ -1,27 +1,35 @@ package com.ruoyi.system.service; import java.util.List; +import java.util.Map; + import com.ruoyi.common.core.domain.TreeSelect; import com.ruoyi.common.core.domain.entity.SysDept; /** * 閮ㄩ棬绠$悊 鏈嶅姟灞� - * + * * @author ruoyi */ public interface ISysDeptService { /** * 鏌ヨ閮ㄩ棬绠$悊鏁版嵁 - * + * * @param dept 閮ㄩ棬淇℃伅 * @return 閮ㄩ棬淇℃伅闆嗗悎 */ public List<SysDept> selectDeptList(SysDept dept); /** + * 鑾峰彇鎵�鏈夌殑閮ㄩ棬淇℃伅 + * @return + */ + public Map<String,String> selectDept(String orgid); + + /** * 鏌ヨ閮ㄩ棬鏍戠粨鏋勪俊鎭� - * + * * @param dept 閮ㄩ棬淇℃伅 * @return 閮ㄩ棬鏍戜俊鎭泦鍚� */ @@ -29,7 +37,7 @@ /** * 鏋勫缓鍓嶇鎵�闇�瑕佹爲缁撴瀯 - * + * * @param depts 閮ㄩ棬鍒楄〃 * @return 鏍戠粨鏋勫垪琛� */ @@ -37,7 +45,7 @@ /** * 鏋勫缓鍓嶇鎵�闇�瑕佷笅鎷夋爲缁撴瀯 - * + * * @param depts 閮ㄩ棬鍒楄〃 * @return 涓嬫媺鏍戠粨鏋勫垪琛� */ @@ -45,7 +53,7 @@ /** * 鏍规嵁瑙掕壊ID鏌ヨ閮ㄩ棬鏍戜俊鎭� - * + * * @param roleId 瑙掕壊ID * @return 閫変腑閮ㄩ棬鍒楄〃 */ @@ -53,7 +61,7 @@ /** * 鏍规嵁閮ㄩ棬ID鏌ヨ淇℃伅 - * + * * @param deptId 閮ㄩ棬ID * @return 閮ㄩ棬淇℃伅 */ @@ -61,7 +69,7 @@ /** * 鏍规嵁ID鏌ヨ鎵�鏈夊瓙閮ㄩ棬锛堟甯哥姸鎬侊級 - * + * * @param deptId 閮ㄩ棬ID * @return 瀛愰儴闂ㄦ暟 */ @@ -69,7 +77,7 @@ /** * 鏄惁瀛樺湪閮ㄩ棬瀛愯妭鐐� - * + * * @param deptId 閮ㄩ棬ID * @return 缁撴灉 */ @@ -77,7 +85,7 @@ /** * 鏌ヨ閮ㄩ棬鏄惁瀛樺湪鐢ㄦ埛 - * + * * @param deptId 閮ㄩ棬ID * @return 缁撴灉 true 瀛樺湪 false 涓嶅瓨鍦� */ @@ -85,7 +93,7 @@ /** * 鏍¢獙閮ㄩ棬鍚嶇О鏄惁鍞竴 - * + * * @param dept 閮ㄩ棬淇℃伅 * @return 缁撴灉 */ @@ -93,14 +101,14 @@ /** * 鏍¢獙閮ㄩ棬鏄惁鏈夋暟鎹潈闄� - * + * * @param deptId 閮ㄩ棬id */ public void checkDeptDataScope(Long deptId); /** * 鏂板淇濆瓨閮ㄩ棬淇℃伅 - * + * * @param dept 閮ㄩ棬淇℃伅 * @return 缁撴灉 */ @@ -108,7 +116,7 @@ /** * 淇敼淇濆瓨閮ㄩ棬淇℃伅 - * + * * @param dept 閮ㄩ棬淇℃伅 * @return 缁撴灉 */ @@ -116,7 +124,7 @@ /** * 鍒犻櫎閮ㄩ棬绠$悊淇℃伅 - * + * * @param deptId 閮ㄩ棬ID * @return 缁撴灉 */ diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDeptServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDeptServiceImpl.java index bba5e52..1718d66 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDeptServiceImpl.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDeptServiceImpl.java @@ -1,9 +1,8 @@ package com.ruoyi.system.service.impl; -import java.util.ArrayList; -import java.util.Iterator; -import java.util.List; +import java.util.*; import java.util.stream.Collectors; + import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; @@ -28,8 +27,7 @@ * @author ruoyi */ @Service -public class SysDeptServiceImpl implements ISysDeptService -{ +public class SysDeptServiceImpl implements ISysDeptService { @Autowired private SysDeptMapper deptMapper; @@ -37,7 +35,7 @@ private SysRoleMapper roleMapper; @Value("${isAdmin}") - private List<Long> isAdmin; + private List<Long> isAdmin; /** * 鏌ヨ閮ㄩ棬绠$悊鏁版嵁 @@ -47,9 +45,20 @@ */ @Override @DataScope(deptAlias = "d") - public List<SysDept> selectDeptList(SysDept dept) - { + public List<SysDept> selectDeptList(SysDept dept) { return deptMapper.selectDeptList(dept); + } + + @Override + public Map<String, String> selectDept(String orgid) { + SysDept sysDept = new SysDept(); + sysDept.setOrgid(orgid); + List<SysDept> sysDepts = deptMapper.selectDeptList(sysDept); + Map<String, String> map = new HashMap<>(); + for (SysDept sd : sysDepts) { + map.put(sd.getDeptCode(), sd.getDeptName()); + } + return map; } /** @@ -59,8 +68,7 @@ * @return 閮ㄩ棬鏍戜俊鎭泦鍚� */ @Override - public List<TreeSelect> selectDeptTreeList(SysDept dept) - { + public List<TreeSelect> selectDeptTreeList(SysDept dept) { List<SysDept> depts = SpringUtils.getAopProxy(this).selectDeptList(dept); return buildDeptTreeSelect(depts); } @@ -72,21 +80,17 @@ * @return 鏍戠粨鏋勫垪琛� */ @Override - public List<SysDept> buildDeptTree(List<SysDept> depts) - { + public List<SysDept> buildDeptTree(List<SysDept> depts) { List<SysDept> returnList = new ArrayList<SysDept>(); List<Long> tempList = depts.stream().map(SysDept::getDeptId).collect(Collectors.toList()); - for (SysDept dept : depts) - { + for (SysDept dept : depts) { // 濡傛灉鏄《绾ц妭鐐�, 閬嶅巻璇ョ埗鑺傜偣鐨勬墍鏈夊瓙鑺傜偣 - if (!tempList.contains(dept.getParentId())) - { + if (!tempList.contains(dept.getParentId())) { recursionFn(depts, dept); returnList.add(dept); } } - if (returnList.isEmpty()) - { + if (returnList.isEmpty()) { returnList = depts; } return returnList; @@ -99,8 +103,7 @@ * @return 涓嬫媺鏍戠粨鏋勫垪琛� */ @Override - public List<TreeSelect> buildDeptTreeSelect(List<SysDept> depts) - { + public List<TreeSelect> buildDeptTreeSelect(List<SysDept> depts) { List<SysDept> deptTrees = buildDeptTree(depts); return deptTrees.stream().map(TreeSelect::new).collect(Collectors.toList()); } @@ -112,8 +115,7 @@ * @return 閫変腑閮ㄩ棬鍒楄〃 */ @Override - public List<Long> selectDeptListByRoleId(Long roleId) - { + public List<Long> selectDeptListByRoleId(Long roleId) { SysRole role = roleMapper.selectRoleById(roleId); return deptMapper.selectDeptListByRoleId(roleId, role.isDeptCheckStrictly()); } @@ -125,8 +127,7 @@ * @return 閮ㄩ棬淇℃伅 */ @Override - public SysDept selectDeptById(Long deptId) - { + public SysDept selectDeptById(Long deptId) { return deptMapper.selectDeptById(deptId); } @@ -137,8 +138,7 @@ * @return 瀛愰儴闂ㄦ暟 */ @Override - public int selectNormalChildrenDeptById(Long deptId) - { + public int selectNormalChildrenDeptById(Long deptId) { return deptMapper.selectNormalChildrenDeptById(deptId); } @@ -149,8 +149,7 @@ * @return 缁撴灉 */ @Override - public boolean hasChildByDeptId(Long deptId) - { + public boolean hasChildByDeptId(Long deptId) { int result = deptMapper.hasChildByDeptId(deptId); return result > 0; } @@ -162,8 +161,7 @@ * @return 缁撴灉 true 瀛樺湪 false 涓嶅瓨鍦� */ @Override - public boolean checkDeptExistUser(Long deptId) - { + public boolean checkDeptExistUser(Long deptId) { int result = deptMapper.checkDeptExistUser(deptId); return result > 0; } @@ -175,12 +173,10 @@ * @return 缁撴灉 */ @Override - public String checkDeptNameUnique(SysDept dept) - { + public String checkDeptNameUnique(SysDept dept) { Long deptId = StringUtils.isNull(dept.getDeptId()) ? -1L : dept.getDeptId(); SysDept info = deptMapper.checkDeptNameUnique(dept.getDeptName(), dept.getParentId()); - if (StringUtils.isNotNull(info) && info.getDeptId().longValue() != deptId.longValue()) - { + if (StringUtils.isNotNull(info) && info.getDeptId().longValue() != deptId.longValue()) { return UserConstants.NOT_UNIQUE; } return UserConstants.UNIQUE; @@ -192,16 +188,13 @@ * @param deptId 閮ㄩ棬id */ @Override - public void checkDeptDataScope(Long deptId) - { + public void checkDeptDataScope(Long deptId) { // if (!SysUser.isAdmin(SecurityUtils.getUserId())) - if (!isAdmin.contains(SecurityUtils.getUserId())) - { + if (!isAdmin.contains(SecurityUtils.getUserId())) { SysDept dept = new SysDept(); dept.setDeptId(deptId); List<SysDept> depts = SpringUtils.getAopProxy(this).selectDeptList(dept); - if (StringUtils.isEmpty(depts)) - { + if (StringUtils.isEmpty(depts)) { throw new ServiceException("娌℃湁鏉冮檺璁块棶閮ㄩ棬鏁版嵁锛�"); } } @@ -214,12 +207,10 @@ * @return 缁撴灉 */ @Override - public int insertDept(SysDept dept) - { + public int insertDept(SysDept dept) { SysDept info = deptMapper.selectDeptById(dept.getParentId()); // 濡傛灉鐖惰妭鐐逛笉涓烘甯哥姸鎬�,鍒欎笉鍏佽鏂板瀛愯妭鐐� - if (!UserConstants.DEPT_NORMAL.equals(info.getStatus())) - { + if (!UserConstants.DEPT_NORMAL.equals(info.getStatus())) { throw new ServiceException("閮ㄩ棬鍋滅敤锛屼笉鍏佽鏂板"); } dept.setAncestors(info.getAncestors() + "," + dept.getParentId()); @@ -233,21 +224,17 @@ * @return 缁撴灉 */ @Override - public int updateDept(SysDept dept) - { + public int updateDept(SysDept dept) { SysDept newParentDept = deptMapper.selectDeptById(dept.getParentId()); SysDept oldDept = deptMapper.selectDeptById(dept.getDeptId()); - if (StringUtils.isNotNull(newParentDept) && StringUtils.isNotNull(oldDept)) - { + if (StringUtils.isNotNull(newParentDept) && StringUtils.isNotNull(oldDept)) { String newAncestors = newParentDept.getAncestors() + "," + newParentDept.getDeptId(); String oldAncestors = oldDept.getAncestors(); dept.setAncestors(newAncestors); updateDeptChildren(dept.getDeptId(), newAncestors, oldAncestors); } int result = deptMapper.updateDept(dept); - if (UserConstants.DEPT_NORMAL.equals(dept.getStatus()) && StringUtils.isNotEmpty(dept.getAncestors()) - && !StringUtils.equals("0", dept.getAncestors())) - { + if (UserConstants.DEPT_NORMAL.equals(dept.getStatus()) && StringUtils.isNotEmpty(dept.getAncestors()) && !StringUtils.equals("0", dept.getAncestors())) { // 濡傛灉璇ラ儴闂ㄦ槸鍚敤鐘舵�侊紝鍒欏惎鐢ㄨ閮ㄩ棬鐨勬墍鏈変笂绾ч儴闂� updateParentDeptStatusNormal(dept); } @@ -259,8 +246,7 @@ * * @param dept 褰撳墠閮ㄩ棬 */ - private void updateParentDeptStatusNormal(SysDept dept) - { + private void updateParentDeptStatusNormal(SysDept dept) { String ancestors = dept.getAncestors(); Long[] deptIds = Convert.toLongArray(ancestors); deptMapper.updateDeptStatusNormal(deptIds); @@ -269,19 +255,16 @@ /** * 淇敼瀛愬厓绱犲叧绯� * - * @param deptId 琚慨鏀圭殑閮ㄩ棬ID + * @param deptId 琚慨鏀圭殑閮ㄩ棬ID * @param newAncestors 鏂扮殑鐖禝D闆嗗悎 * @param oldAncestors 鏃х殑鐖禝D闆嗗悎 */ - public void updateDeptChildren(Long deptId, String newAncestors, String oldAncestors) - { + public void updateDeptChildren(Long deptId, String newAncestors, String oldAncestors) { List<SysDept> children = deptMapper.selectChildrenDeptById(deptId); - for (SysDept child : children) - { + for (SysDept child : children) { child.setAncestors(child.getAncestors().replaceFirst(oldAncestors, newAncestors)); } - if (children.size() > 0) - { + if (children.size() > 0) { deptMapper.updateDeptChildren(children); } } @@ -293,23 +276,19 @@ * @return 缁撴灉 */ @Override - public int deleteDeptById(Long deptId) - { + public int deleteDeptById(Long deptId) { return deptMapper.deleteDeptById(deptId); } /** * 閫掑綊鍒楄〃 */ - private void recursionFn(List<SysDept> list, SysDept t) - { + private void recursionFn(List<SysDept> list, SysDept t) { // 寰楀埌瀛愯妭鐐瑰垪琛� List<SysDept> childList = getChildList(list, t); t.setChildren(childList); - for (SysDept tChild : childList) - { - if (hasChild(list, tChild)) - { + for (SysDept tChild : childList) { + if (hasChild(list, tChild)) { recursionFn(list, tChild); } } @@ -318,15 +297,12 @@ /** * 寰楀埌瀛愯妭鐐瑰垪琛� */ - private List<SysDept> getChildList(List<SysDept> list, SysDept t) - { + private List<SysDept> getChildList(List<SysDept> list, SysDept t) { List<SysDept> tlist = new ArrayList<SysDept>(); Iterator<SysDept> it = list.iterator(); - while (it.hasNext()) - { + while (it.hasNext()) { SysDept n = (SysDept) it.next(); - if (StringUtils.isNotNull(n.getParentId()) && n.getParentId().longValue() == t.getDeptId().longValue()) - { + if (StringUtils.isNotNull(n.getParentId()) && n.getParentId().longValue() == t.getDeptId().longValue()) { tlist.add(n); } } @@ -336,8 +312,7 @@ /** * 鍒ゆ柇鏄惁鏈夊瓙鑺傜偣 */ - private boolean hasChild(List<SysDept> list, SysDept t) - { + private boolean hasChild(List<SysDept> list, SysDept t) { return getChildList(list, t).size() > 0; } } -- Gitblit v1.9.3