From 2328cac73e48d2704e4a72b989bccaa33d3d031f Mon Sep 17 00:00:00 2001
From: ke <893754509@qq.com>
Date: Thu, 18 Apr 2024 10:37:38 +0800
Subject: [PATCH] sk项目本地电脑配置
---
skjcmanager/skjcmanager-auth/src/main/java/cn/gistack/auth/service/BladeUserDetailsServiceImpl.java | 58 ++++++++++++++++++++++++++++++++++++++--------------------
1 files changed, 38 insertions(+), 20 deletions(-)
diff --git a/skjcmanager/skjcmanager-auth/src/main/java/cn/gistack/auth/service/BladeUserDetailsServiceImpl.java b/skjcmanager/skjcmanager-auth/src/main/java/cn/gistack/auth/service/BladeUserDetailsServiceImpl.java
index c8927ea..145f6b0 100644
--- a/skjcmanager/skjcmanager-auth/src/main/java/cn/gistack/auth/service/BladeUserDetailsServiceImpl.java
+++ b/skjcmanager/skjcmanager-auth/src/main/java/cn/gistack/auth/service/BladeUserDetailsServiceImpl.java
@@ -20,7 +20,7 @@
import cn.gistack.common.utils.Base64Utils;
import cn.gistack.pwd.dto.CBCResultDTO;
import cn.gistack.pwd.dto.ResultDTO;
-import cn.gistack.pwd.fegin.IPwdClient;
+//import cn.gistack.pwd.fegin.IPwdClient;
import cn.gistack.sm.collect.feign.ICollectClient;
import cn.gistack.sm.collect.feign.ICollectClientFallback;
import cn.gistack.sm.sjztmd.entity.AttResManagePerson;
@@ -78,7 +78,7 @@
private final ICollectClient collectClient;
- private final IPwdClient pwdClient;
+// private final IPwdClient pwdClient;
@Override
@SneakyThrows
@@ -166,13 +166,23 @@
userInfo.getDetail().set("resIds",attRes.getData());
}
+ //返回手机号
+ userInfo.getDetail().set("phone",Base64Utils.getBase64Encode(user.getPhone()));
String deptStr = "";
- if (userInfo.getUser().getDeptId().indexOf(",") > 0){
- deptStr = userInfo.getUser().getDeptId().split(",")[0];
+
+ String deptIds = userInfo.getUser().getDeptId();
+ if (deptIds.indexOf(",") > 0){
+ deptStr = deptIds.split(",")[0];
}else {
- deptStr = userInfo.getUser().getDeptId();
+ deptStr = deptIds;
}
+
+ String resDeptIds = "";
+
+ resDeptIds = sysClient.getResDept(deptIds);
+ userInfo.getDetail().set("resDeptIds",resDeptIds);
+
R<Dept> deptRes = sysClient.getDept(Long.valueOf(deptStr));
if (StringUtil.isBlank(deptRes.getData().getAdCode())) {
// 部门为空
@@ -180,31 +190,39 @@
userInfo.getDetail().set("adCodeBase", "");
userInfo.getDetail().set("parentDept",0);
} else {
- userInfo.getDetail().set("adCodeBase",attResManagePersonClient.getAdBaseById(deptRes.getData().getAdCode()).getData());
+ //根据用户标识类型判断是水库还是堤防
+ if (user.getType().equals("堤防")){
+ //堤防需要从自己的库中获取行政区划
+ userInfo.getDetail().set("adCodeBase",attResManagePersonClient.getYwxtAdBaseById(deptRes.getData().getAdCode()).getData());
+ }else{
+ //水库从中台表中获取行政区划
+ userInfo.getDetail().set("adCodeBase",attResManagePersonClient.getAdBaseById(deptRes.getData().getAdCode()).getData());
+ }
userInfo.getDetail().set("parentDept",deptRes.getData().getParentId());
}
-
String collectResIds = collectClient.getMyCollect(user.getId().toString());
userInfo.getDetail().set("collect",collectResIds);
User loginUserInfo = userInfo.getUser();
//获取解密后的Base64字符串
- R<ResultDTO> encryptRes = pwdClient.getDecrypt(loginUserInfo.getSm4iv(), loginUserInfo.getKeyindexs(),loginUserInfo.getEncdata());
-
- if (encryptRes.getCode() != 200){
- throw new UserDeniedAuthorizationException("获取密钥失败");
- }
+// R<ResultDTO> encryptRes = pwdClient.getDecrypt(loginUserInfo.getSm4iv(), loginUserInfo.getKeyindexs(),loginUserInfo.getEncdata());
+//
+// if (encryptRes.getCode() != 200){
+// throw new UserDeniedAuthorizationException("获取密钥失败");
+// }
//解码Base64
- String base64Decode = Base64Utils.getBase64Decode(encryptRes.getData().getData());
-
- UserSUPO userSUPO = JSONObject.parseObject(base64Decode, UserSUPO.class);
-
- //若登录用户的电话、角色、部门与原加密数据不符,登录失败
- if (!(loginUserInfo.getPhone().equals(userSUPO.getPhone()) && loginUserInfo.getRoleId().equals(userSUPO.getRoleId()) && loginUserInfo.getDeptId().equals(userSUPO.getDeptId())) ){
- throw new UserDeniedAuthorizationException("用户信息异常,请联系管理员");
- }
+// String JSONstr = Base64Utils.getBase64Decode(encryptRes.getData().getData());
+//
+// pwdClient.verify(loginUserInfo.getMaced(),loginUserInfo.getSm4iv(),loginUserInfo.getKeyindexs(),JSONstr,loginUserInfo.getId().toString(),"blade_user");
+//
+// UserSUPO userSUPO = JSONObject.parseObject(JSONstr, UserSUPO.class);
+//
+// //若登录用户的电话、角色、部门与原加密数据不符,登录失败
+// if (!(loginUserInfo.getPhone().equals(userSUPO.getPhone()) && loginUserInfo.getRoleId().equals(userSUPO.getRoleId()) && loginUserInfo.getDeptId().equals(userSUPO.getDeptId())) ){
+// throw new UserDeniedAuthorizationException("用户信息异常,请联系管理员");
+// }
return new BladeUserDetails(user.getId(),
user.getTenantId(), StringPool.EMPTY, user.getName(), user.getRealName(), user.getDeptId(), user.getPostId(), user.getRoleId(), Func.join(userInfo.getRoles()), Func.toStr(user.getAvatar(), TokenUtil.DEFAULT_AVATAR),
--
Gitblit v1.9.3