|
|
@@ -3,9 +3,11 @@ package com.steerinfo.util;
|
|
|
import com.alibaba.fastjson.JSONObject;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.beans.factory.annotation.Value;
|
|
|
+import org.springframework.boot.context.properties.ConfigurationProperties;
|
|
|
import org.springframework.stereotype.Component;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
+import javax.annotation.Resource;
|
|
|
import java.util.HashMap;
|
|
|
import java.util.Map;
|
|
|
|
|
|
@@ -17,14 +19,32 @@ import java.util.Map;
|
|
|
@Component
|
|
|
public class SSOUtil {
|
|
|
|
|
|
+
|
|
|
+ // ② 改为静态字段,用于保存配置值(所有实例共享)
|
|
|
+ private static String url;
|
|
|
+ private static String appuser;
|
|
|
+ private static String password;
|
|
|
+
|
|
|
+ // ③ 通过 setter 注入,赋值给静态变量(注意方法不能是 static)
|
|
|
@Value("${sso.url}")
|
|
|
- public String ssoUrl;
|
|
|
+ public void setUrl(String url) {
|
|
|
+ SSOUtil.url = url;
|
|
|
+ }
|
|
|
|
|
|
@Value("${sso.appuser}")
|
|
|
- private String ssoAppUser ;
|
|
|
+ public void setAppuser(String appuser) {
|
|
|
+ SSOUtil.appuser = appuser;
|
|
|
+ }
|
|
|
|
|
|
@Value("${sso.password}")
|
|
|
- private String ssoPassword ;
|
|
|
+ public void setPassword(String password) {
|
|
|
+ SSOUtil.password = password;
|
|
|
+ }
|
|
|
+
|
|
|
+ // ④ 提供静态 getter(可选,用于外部读取)
|
|
|
+ public static String getUrl() { return url; }
|
|
|
+ public static String getAppuser() { return appuser; }
|
|
|
+ public static String getPassword() { return password; }
|
|
|
|
|
|
// sso注册用户
|
|
|
public HashMap ssoRegister(HashMap params) throws Exception {
|
|
|
@@ -49,7 +69,7 @@ public class SSOUtil {
|
|
|
userMap.put("companyId", "713710108567277568");
|
|
|
userMap.put("orgId", "925357747573231616");
|
|
|
userMap.put("loginStatus", "1");
|
|
|
- String ssomsg2 = HttpsRequest.sendPost(ssoUrl + "/v1/sysusers/", userMap, accessToken);
|
|
|
+ String ssomsg2 = HttpsRequest.sendPost(url + "/v1/sysusers/", userMap, accessToken);
|
|
|
|
|
|
JSONObject jsonObject2 = JSONObject.parseObject(ssomsg2);
|
|
|
|
|
|
@@ -65,7 +85,7 @@ public class SSOUtil {
|
|
|
pwdMap.put("againNewpassword", params.get("password").toString());
|
|
|
|
|
|
// 修改用户密码
|
|
|
- String ssomsg3 = HttpsRequest.sendPost(ssoUrl + "/v1/sysusers/updpsw", pwdMap, accessToken);
|
|
|
+ String ssomsg3 = HttpsRequest.sendPost(url + "/v1/sysusers/updpsw", pwdMap, accessToken);
|
|
|
|
|
|
JSONObject jsonObject3 = JSONObject.parseObject(ssomsg3);
|
|
|
|
|
|
@@ -109,7 +129,7 @@ public class SSOUtil {
|
|
|
}
|
|
|
|
|
|
// 修改用户密码
|
|
|
- String ssomsg3 = HttpsRequest.sendPost(ssoUrl + "/v1/sysusers/updateUser/"+id, params, accessToken);
|
|
|
+ String ssomsg3 = HttpsRequest.sendPost(url + "/v1/sysusers/updateUser/"+id, params, accessToken);
|
|
|
|
|
|
JSONObject jsonObject = JSONObject.parseObject(ssomsg3);
|
|
|
|
|
|
@@ -134,7 +154,7 @@ public class SSOUtil {
|
|
|
accessToken = ssoDefaultLogin();
|
|
|
}
|
|
|
|
|
|
- String ssomsg4 = HttpsRequest.sendDelete(ssoUrl + "/v1/sysusers/"+id, accessToken);
|
|
|
+ String ssomsg4 = HttpsRequest.sendDelete(url + "/v1/sysusers/"+id, accessToken);
|
|
|
|
|
|
JSONObject jsonObject = JSONObject.parseObject(ssomsg4);
|
|
|
|
|
|
@@ -148,16 +168,16 @@ public class SSOUtil {
|
|
|
public String ssoDefaultLogin() throws Exception {
|
|
|
// 使用默认账号登录sso
|
|
|
// 默认账户密码加密
|
|
|
- String shaPass = SHAUtil.shaEncode(ssoPassword);
|
|
|
+ String shaPass = SHAUtil.shaEncode(password);
|
|
|
// 获取sso token
|
|
|
// https://jgwzjl.jiugang.com/icore.icp.web/pass/auth/login post请求, 参数类型content-type: application/x-www-form-urlencoded
|
|
|
// loginName=admin&password=fb94871a1c3c7c38330a3a434a0ee28f0deea30b&app_code=web
|
|
|
Map<String, String> loginMap = new HashMap<>();
|
|
|
- loginMap.put("loginName", ssoAppUser);
|
|
|
+ loginMap.put("loginName", appuser);
|
|
|
loginMap.put("password", shaPass);
|
|
|
|
|
|
|
|
|
- String ssomsg1 = HttpsRequest.sendPost(ssoUrl + "/auth/login", loginMap);
|
|
|
+ String ssomsg1 = HttpsRequest.sendPost(url + "/auth/login", loginMap);
|
|
|
// ssomsg1转JSONObject
|
|
|
JSONObject jsonObject1 = JSONObject.parseObject(ssomsg1);
|
|
|
//如果成功,读取accessToken
|
|
|
@@ -193,7 +213,7 @@ public class SSOUtil {
|
|
|
loginMap.put("loginName", params.get("carNo").toString());
|
|
|
loginMap.put("password", shaPass);
|
|
|
|
|
|
- String ssomsg1 = HttpsRequest.sendPost(ssoUrl + "/auth/login", loginMap);
|
|
|
+ String ssomsg1 = HttpsRequest.sendPost(url + "/auth/login", loginMap);
|
|
|
// ssomsg1转JSONObject
|
|
|
JSONObject jsonObject1 = JSONObject.parseObject(ssomsg1);
|
|
|
|
|
|
@@ -227,7 +247,7 @@ public class SSOUtil {
|
|
|
loginMap.put("loginName", params.get("carNo").toString());
|
|
|
loginMap.put("password", shaPass);
|
|
|
|
|
|
- String ssomsg1 = HttpsRequest.sendPost(ssoUrl + "/auth/login", loginMap);
|
|
|
+ String ssomsg1 = HttpsRequest.sendPost(url + "/auth/login", loginMap);
|
|
|
// ssomsg1转JSONObject
|
|
|
JSONObject jsonObject1 = JSONObject.parseObject(ssomsg1);
|
|
|
//如果成功,读取accessToken
|
|
|
@@ -247,7 +267,7 @@ public class SSOUtil {
|
|
|
pwdMap.put("againNewpassword", params.get("newpassword").toString());
|
|
|
|
|
|
// 修改用户密码
|
|
|
- String ssomsg3 = HttpsRequest.sendPost(ssoUrl + "/v1/sysusers/updpsw", pwdMap, accessToken);
|
|
|
+ String ssomsg3 = HttpsRequest.sendPost(url + "/v1/sysusers/updpsw", pwdMap, accessToken);
|
|
|
|
|
|
JSONObject jsonObject3 = JSONObject.parseObject(ssomsg3);
|
|
|
|
|
|
@@ -282,7 +302,7 @@ public class SSOUtil {
|
|
|
Map<String, String> map = new HashMap<>();
|
|
|
map.put("password", password);
|
|
|
|
|
|
- String ssomsg4 = HttpsRequest.sendPut(ssoUrl + "/v1/sysusers/resetPassword/"+id, map, accessToken);
|
|
|
+ String ssomsg4 = HttpsRequest.sendPut(url + "/v1/sysusers/resetPassword/"+id, map, accessToken);
|
|
|
|
|
|
JSONObject jsonObject2 = JSONObject.parseObject(ssomsg4);
|
|
|
|
|
|
@@ -308,11 +328,11 @@ public class SSOUtil {
|
|
|
// */
|
|
|
// public HashMap ssoSelect(String carNo) throws Exception {
|
|
|
//
|
|
|
-// String ssoUrl = Configuration.readConfigString("sso.url", "application");
|
|
|
+// String url = Configuration.readConfigString("sso.url", "application");
|
|
|
//
|
|
|
// String accessToken = ssoDefaultLogin();
|
|
|
//
|
|
|
-// String ssomsg = HttpsRequest.sendPut(ssoUrl + "/v1/sysusers/getUsersByOrgCode/?userCode="+carNo+"&pageNum=1&pageSize=20", null, accessToken);
|
|
|
+// String ssomsg = HttpsRequest.sendPut(url + "/v1/sysusers/getUsersByOrgCode/?userCode="+carNo+"&pageNum=1&pageSize=20", null, accessToken);
|
|
|
//
|
|
|
// JSONObject jsonObject = JSONObject.parseObject(ssomsg);
|
|
|
//
|