Quellcode durchsuchen

物业系统支持单点登录功能

Your Name vor 3 Jahren
Ursprung
Commit
ee6f203f26

+ 4 - 3
service-user/src/main/java/com/java110/user/cmd/login/AccessTokenLoginCmd.java

@@ -25,6 +25,7 @@ import com.java110.utils.constant.ResponseConstant;
 import com.java110.utils.exception.CmdException;
 import com.java110.utils.exception.CmdException;
 import com.java110.utils.exception.SMOException;
 import com.java110.utils.exception.SMOException;
 import com.java110.utils.util.*;
 import com.java110.utils.util.*;
+import com.java110.vo.ResultVo;
 import org.slf4j.Logger;
 import org.slf4j.Logger;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.http.HttpStatus;
 import org.springframework.http.HttpStatus;
@@ -40,7 +41,8 @@ import java.util.Map;
 @Java110CmdDoc(title = "单点登录accessToken自登陆(自用)",
 @Java110CmdDoc(title = "单点登录accessToken自登陆(自用)",
         description = "1、通过接口/app/login.getAccessToken 获取到accessToken,<br/>" +
         description = "1、通过接口/app/login.getAccessToken 获取到accessToken,<br/>" +
                 "2、三方系统通过302 跳转的方式调转到物业系统 http://wuye.xx.com/sso.html?hcAccessToken={accessToken}&targetUrl=您要跳转的页面<br/>" +
                 "2、三方系统通过302 跳转的方式调转到物业系统 http://wuye.xx.com/sso.html?hcAccessToken={accessToken}&targetUrl=您要跳转的页面<br/>" +
-                "3、物业系统即可完成自登陆功能<br/> " ,
+                "3、物业系统即可完成自登陆功能</br>"+
+                "注意:系统默认情况下是不启用单点登录功能的,请联系开发,配置中心中启用(SSO_SWITCH 的值改为ON)</br>",
         httpMethod = "post",
         httpMethod = "post",
         url = "http://{ip}:{port}/app/login.accessTokenLogin",
         url = "http://{ip}:{port}/app/login.accessTokenLogin",
         resource = "userDoc",
         resource = "userDoc",
@@ -167,8 +169,7 @@ public class AccessTokenLoginCmd extends Cmd {
             userLoginPo.setUserId(userDto.getUserId());
             userLoginPo.setUserId(userDto.getUserId());
             userLoginPo.setUserName(userDto.getUserName());
             userLoginPo.setUserName(userDto.getUserName());
             userLoginInnerServiceSMOImpl.saveUserLogin(userLoginPo);
             userLoginInnerServiceSMOImpl.saveUserLogin(userLoginPo);
-            responseEntity = new ResponseEntity<String>(user.toJSONString(), HttpStatus.OK);
-            context.setResponseEntity(responseEntity);
+            context.setResponseEntity(ResultVo.createResponseEntity(user));
         } catch (Exception e) {
         } catch (Exception e) {
             logger.error("登录异常:", e);
             logger.error("登录异常:", e);
             throw new SMOException(ResponseConstant.RESULT_CODE_INNER_ERROR, "系统内部错误,请联系管理员");
             throw new SMOException(ResponseConstant.RESULT_CODE_INNER_ERROR, "系统内部错误,请联系管理员");

+ 2 - 1
service-user/src/main/java/com/java110/user/cmd/login/GetAccessTokenCmd.java

@@ -42,7 +42,8 @@ import java.util.Map;
         description = "主要用于其他系统单点登录到物业系统,<br/>" +
         description = "主要用于其他系统单点登录到物业系统,<br/>" +
                 "1、三方系统通过物业员工的 手机号 和 员工的密码 通过此接口获取accessToken,注意默认有效期为5分钟,<br/>" +
                 "1、三方系统通过物业员工的 手机号 和 员工的密码 通过此接口获取accessToken,注意默认有效期为5分钟,<br/>" +
                 "2、三方系统通过302 跳转的方式调转到物业系统 http://wuye.xx.com/sso.html?hcAccessToken={accessToken}&targetUrl=您要跳转的页面<br/> " +
                 "2、三方系统通过302 跳转的方式调转到物业系统 http://wuye.xx.com/sso.html?hcAccessToken={accessToken}&targetUrl=您要跳转的页面<br/> " +
-                "3、物业系统即可完成自登陆功能</br>",
+                "3、物业系统即可完成自登陆功能</br>"+
+                "注意:系统默认情况下是不启用单点登录功能的,请联系开发,配置中心中启用(SSO_SWITCH 的值改为ON)</br>",
         httpMethod = "post",
         httpMethod = "post",
         url = "http://{ip}:{port}/app/login.getAccessToken",
         url = "http://{ip}:{port}/app/login.getAccessToken",
         resource = "userDoc",
         resource = "userDoc",

+ 11 - 5
springboot/src/test/java/com/java110/AppTest.java

@@ -5,9 +5,11 @@ import static org.junit.Assert.assertTrue;
 import com.alibaba.fastjson.JSONObject;
 import com.alibaba.fastjson.JSONObject;
 import com.java110.dto.RoomAttrDto;
 import com.java110.dto.RoomAttrDto;
 import com.java110.dto.community.CommunityDto;
 import com.java110.dto.community.CommunityDto;
+import com.java110.utils.util.Base64Convert;
 import com.java110.utils.util.DateUtil;
 import com.java110.utils.util.DateUtil;
 import org.junit.Test;
 import org.junit.Test;
 
 
+import java.io.UnsupportedEncodingException;
 import java.math.BigDecimal;
 import java.math.BigDecimal;
 import java.util.ArrayList;
 import java.util.ArrayList;
 import java.util.Calendar;
 import java.util.Calendar;
@@ -26,11 +28,15 @@ public class AppTest
     public void should()
     public void should()
     {
     {
 
 
-        BigDecimal moneyDec = new BigDecimal(1)
-                .multiply(new BigDecimal(1))
-                .multiply(new BigDecimal(Double.parseDouble("0.01")))
-                .setScale(2, BigDecimal.ROUND_HALF_UP);
-        System.out.printf(moneyDec.doubleValue()+"");
+       JSONObject param = new JSONObject();
+       param.put("tel","18909715555");
+       param.put("passwd","admin");
+        try {
+            String accessToken = Base64Convert.byteToBase64(param.toJSONString().getBytes("UTF-8"));
+            System.out.printf("accessToken="+accessToken);
+        } catch (UnsupportedEncodingException e) {
+            throw new RuntimeException(e);
+        }
 
 
     }
     }
 }
 }