From 6f1e752bf00b584c8a17569578fa8e54cdb71b60 Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期一, 27 十月 2025 13:34:59 +0800
Subject: [PATCH] 处理选项不显示的问题
---
ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java | 94 ++++++++++++++++++++++++++++++++++++++++++-----
1 files changed, 84 insertions(+), 10 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 0ebc693..4aebae5 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,10 +1,10 @@
package com.ruoyi.web.controller.system;
-import com.ruoyi.common.annotation.IpWhitelist;
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.entity.SysUserDept;
import com.ruoyi.common.core.domain.model.LoginBody;
import com.ruoyi.common.exception.base.BaseException;
import com.ruoyi.common.utils.RSAPublicKeyExample;
@@ -12,21 +12,23 @@
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.ISysConfigService;
import com.ruoyi.system.service.ISysDeptService;
import com.ruoyi.system.service.ISysMenuService;
+import com.smartor.mapper.SysUserDeptMapper;
+import com.smartor.service.impl.ServiceSLTDHealthcareRecordServiceImpl;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.http.HttpStatus;
-import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.servlet.view.RedirectView;
import javax.servlet.http.HttpServletResponse;
-import javax.validation.Valid;
import java.io.IOException;
-import java.net.URI;
+import java.util.HashMap;
import java.util.List;
+import java.util.Map;
import java.util.Set;
/**
@@ -49,12 +51,26 @@
@Autowired
private SysPermissionService permissionService;
+ @Autowired
+ private ISysConfigService sysConfigService;
+
@Value("${pri_key}")
private String pri_key;
@Value("${isEncryp}")
private Integer isEncryp;
+
+
+ @Value("${sltd_pub_path}")
+ private String sltdPubPath;
+
+
+ @Value("${spring.profiles.active}")
+ private String active;
+
+ @Autowired
+ private SysUserDeptMapper sysUserDeptMapper;
/**
* 鐧诲綍鏂规硶
@@ -74,26 +90,64 @@
/**
* 鍗曠偣鐧诲綍鏂规硶(闇�瑕侀厤缃甀P鐧藉悕鍗�)
* 闇�瑕佸湪sys_config琛ㄧ殑sys.ip.whitelis涓紝鍔犲叆IP鎵嶈兘璁块棶璇ユ柟娉�
+ * <p>
+ * 鍙傛暟鍚屾椂涓虹┖锛屼笉缁欐煡璇㈡暟鎹�
+ * <p>
+ * 銆愬叆鍙傝鍒欍��
+ * 濡傛灉userName涓嶄负绌猴紝閭rgid涔熶笉鑳戒负绌�
+ * 濡傛灉涓婇潰涓や釜涓虹┖锛岄偅token涓嶈兘涓虹┖
*
* @return 缁撴灉
*/
- @IpWhitelist
+// @IpWhitelist
@GetMapping("/SSOLogin")
- public RedirectView SSOLogin(@RequestParam String userName, @RequestParam String orgid, @RequestParam(required = false) String deptId) {
+ public RedirectView SSOLogin(@RequestParam(required = false) String userName, @RequestParam(required = false) String orgid, @RequestParam(required = false) String deptId, @RequestParam(required = false) String token) {
+ if (StringUtils.isEmpty(userName) && StringUtils.isEmpty(token)) {
+ throw new BaseException("鍙傛暟涓嶈兘涓虹┖");
+ }
+ log.info("--------杩涙柟娉曚簡鍚�?{}", token);
+ // 閲嶅畾鍚戝湴鍧�瀵硅薄(閲嶅畾鍚戝湴鍧�
RedirectView redirectView = new RedirectView();
+// if (active.equals("sltd")) {
+// Map<String, String> headers = buildRequestHeaders();
+// Map<String, String> requestParams = new HashMap<>();
+// requestParams.put("token", token);
+// String reqData = HttpUtil.postFormRequest(sltdPubPath + "/checkSsoTokenId", requestParams, headers, null);
+// log.info("銆�-----杩斿洖鐨勭粨鏋滀负銆戯細{}", reqData);
+// if (StringUtils.isEmpty(reqData)) {
+// throw new BaseException("token楠岃瘉澶辫触");
+// }
+//
+// Map<String, Object> map = JSONObject.parseObject(reqData, Map.class);
+// if (ObjectUtils.isEmpty(map) || (Integer) map.get("code") != 200) {
+// throw new BaseException("token楠岃瘉澶辫触");
+// }
+//
+// Map<String, Object> data = (Map<String, Object>) map.get("data");
+// //鍛樺伐缂栫爜
+// userName = (String) data.get("accountNo");
+// }
+ log.info("銆�-----------userName鐨勫�间负锛歿}銆�", userName);
// 鐢熸垚浠ょ墝
if (StringUtils.isEmpty(userName) || StringUtils.isEmpty(orgid)) {
throw new BaseException("鐢ㄦ埛鍚嶆垨缁勭粐鏈烘瀯鎴栭儴闂ㄤ笉鑳戒负绌�");
}
- if (isEncryp == 1) {
+ if (isEncryp != null && isEncryp == 1) {
RSAPublicKeyExample rsaPublicKeyExample = new RSAPublicKeyExample();
userName = rsaPublicKeyExample.decryptedData(userName, pri_key);
}
- String token = loginService.loginByUserName(userName + "&" + orgid + "&" + deptId);
- if (StringUtils.isEmpty(token)) {
+
+ String token2 = loginService.loginByUserName(userName + "&" + orgid + "&" + deptId);
+ if (StringUtils.isEmpty(token2)) {
throw new BaseException("鐧婚檰澶辫触");
}
- redirectView.setUrl("http://127.0.0.1:8091/loginSSO?token=" + token + "&orgid=" + orgid + "&orgname=''" + "&ZuHuID=''&deptCode=''&redirect=''");
+
+ String path = sysConfigService.selectConfigByKey("sys.qddz");
+ if (StringUtils.isEmpty(path)) {
+ throw new BaseException("璇烽厤缃墠绔湴鍧�");
+ }
+ log.info("鍗曠偣鐧婚檰閲嶅畾鍚戝湴鍧�涓猴細{}", path + "/loginSSO?token=" + token2 + "&orgid=" + orgid + "&orgname=''" + "&ZuHuID=''&deptCode=''");
+ redirectView.setUrl(path + "/loginSSO?token=" + token2 + "&orgid=" + orgid + "&orgname=null" + "&ZuHuID=null&deptCode=null");
redirectView.setStatusCode(HttpStatus.MOVED_PERMANENTLY);
return redirectView;
}
@@ -127,6 +181,18 @@
ajax.put("user", user);
ajax.put("roles", roles);
ajax.put("permissions", permissions);
+ List<SysUserDept> sysUserDeptKSs = null;
+ List<SysUserDept> sysUserDeptBQs = null;
+ SysUserDept sysUserDept = new SysUserDept();
+ sysUserDept.setUserId(user.getUserId());
+ sysUserDept.setDeptType("1");
+ sysUserDept.setOrgid(user.getOrgid());
+ sysUserDeptKSs = sysUserDeptMapper.selectSysUserDeptList(sysUserDept);
+ ajax.put("belongDepts", sysUserDeptKSs);
+ sysUserDept.setDeptType("2");
+ sysUserDeptBQs = sysUserDeptMapper.selectSysUserDeptList(sysUserDept);
+ ajax.put("belongWards", sysUserDeptBQs);
+
return ajax;
}
@@ -147,4 +213,12 @@
public AjaxResult getDept(@PathVariable String orgid) {
return AjaxResult.success(sysDeptService.selectDept(orgid));
}
+
+
+ private Map<String, String> buildRequestHeaders() {
+ Map<String, String> headers = new HashMap<>();
+// headers.put("Content-Type", "application/json");
+ headers.put("app-key", ServiceSLTDHealthcareRecordServiceImpl.APP_KEY);
+ return headers;
+ }
}
--
Gitblit v1.9.3