Przeglądaj źródła

1、修改登录相关

zhoux 2 lat temu
rodzic
commit
67c20b7f2c

+ 4 - 4
src/main/java/com/dk/oauth/entity/AuthAccessToken.java

@@ -43,11 +43,11 @@ public class AuthAccessToken {
     @TableField("user_id")
     private String userId;
 
-    @TableField("fty_id")
-    private String ftyId;
+    @TableField("cp_id")
+    private String cpId;
 
-    @TableField("fty_code")
-    private String ftyCode;
+    @TableField("cp_code")
+    private String cpCode;
 
     @TableField("token_type")
     private String tokenType;

+ 35 - 41
src/main/java/com/dk/oauth/service/impl/AuthAccessTokenServiceImpl.java

@@ -143,6 +143,8 @@ public class AuthAccessTokenServiceImpl extends ServiceImpl<AuthAccessTokenMappe
      */
     @Transactional(rollbackFor = Exception.class)
     public ResponseResultVO wxToken(UserWxLogin userWxLogin) {
+        // todo
+        userWxLogin.setUserWxid("1");
         UserLogin userLogin = userMapper.getByWxid(userWxLogin.getUserWxid());
         if (userLogin == null) {
             //无用户
@@ -246,53 +248,45 @@ public class AuthAccessTokenServiceImpl extends ServiceImpl<AuthAccessTokenMappe
         username = userLogin.getUserName();
         userId = String.valueOf(userLogin.getUserId());
 
-//        String lang = request.getParameter("lang");
-        // 应用编码
-//        String appCode = request.getParameter("appcode");
-//            String ftyCode = userVo.getFtyCode();
-        JWTGenerator jwtGenerator = new JWTGenerator();
-        jwtGenerator.setSalt(username);
-        jwtGenerator.setUsername(username);
-        jwtGenerator.setUserId(userId);
-//            jwtGenerator.setFtyId(userVo.getFtyId().toString());
-//            jwtGenerator.setFtyCode(ftyCode);
-        jwtGenerator.setClientId(clientId);
-//            jwtGenerator.setGrantType(oauthRequest.getParam(OAuth.OAUTH_GRANT_TYPE));
-//        jwtGenerator.setAppCode(appCode);
-//        jwtGenerator.setLang(lang);
-        OAuthIssuerImpl oAuthIssuer = new OAuthIssuerImpl(jwtGenerator);
-        String accessToken = oAuthIssuer.accessToken();
-        log.info("服务器生成的accessToken=" + accessToken);
-
-        // 保存token
-        authAccessToken.setId(UUID.uuid32());
-        authAccessToken.setClientId(clientId);
-        authAccessToken.setTokenId(accessToken);
-//            authAccessToken.setTokenType(oauthRequest.getParam(OAuth.OAUTH_GRANT_TYPE));
-        authAccessToken.setCreateDate(new Date());
-//            authAccessToken.setAuthenticationId(authCode);
-        authAccessToken.setTokenExpiredSeconds(OauthConstants.EXPIRES_IN);
-//            authAccessToken.setFtyId(userVo.getFtyId().toString());
-//            authAccessToken.setFtyCode(userVo.getFtyCode());
-        log.info("---->>>SecurityUtils.getSubject().isAuthenticated() = " + SecurityUtils.getSubject().isAuthenticated());
-//            JWTToken jwtToken = JWTToken.build(accessToken, username, userVo.getFtyId().toString(), ftyCode, username, OauthConstants.EXPIRES_IN, oauthRequest.getParam(OAuth.OAUTH_GRANT_TYPE), clientId, lang);
-//            SecurityUtils.getSubject().login(jwtToken);
-        // endregion
-
-        // region 加密accessToken
-        try {
-            accessToken = AESSecurityUtil.encrypt(AESKey, accessToken);
-        } catch (Exception e) {
-            logger.error("sorry,accessToken({}) encode faild!!", accessToken);
-        }
-//        authUserLoginLog.setCommand(AuthUserLoginLog.LOGIN_COMMAND1);
-//        loinLog(authUserLoginLog, request);
         // endregion
 
         //当前公司
         CompanyResponse company = null;
+        String accessToken = "";
         if (userLogin.getCurrentCp()!=null) {
             company = companyMapper.getByCpId(userLogin.getCurrentCp());
+            if(company != null ){
+                JWTGenerator jwtGenerator = new JWTGenerator();
+                jwtGenerator.setSalt(username);
+                jwtGenerator.setUsername(username);
+                jwtGenerator.setUserId(userId);
+                jwtGenerator.setClientId(clientId);
+                jwtGenerator.setCpId(company.getCpId().toString());
+                jwtGenerator.setCpCode(company.getCpCode());
+                OAuthIssuerImpl oAuthIssuer = new OAuthIssuerImpl(jwtGenerator);
+                accessToken = oAuthIssuer.accessToken();
+                log.info("服务器生成的accessToken=" + accessToken);
+
+                // 保存token
+                authAccessToken.setId(UUID.uuid32());
+                authAccessToken.setClientId(clientId);
+                authAccessToken.setTokenId(accessToken);
+                authAccessToken.setCreateDate(new Date());
+                authAccessToken.setCpId(company.getCpId().toString());
+                authAccessToken.setCpCode(company.getCpCode());
+                authAccessToken.setTokenExpiredSeconds(OauthConstants.EXPIRES_IN);
+                log.info("---->>>SecurityUtils.getSubject().isAuthenticated() = " + SecurityUtils.getSubject().isAuthenticated());
+                // endregion
+
+                // region 加密accessToken
+                try {
+                    accessToken = AESSecurityUtil.encrypt(AESKey, accessToken);
+                } catch (Exception e) {
+                    logger.error("sorry,accessToken({}) encode faild!!", accessToken);
+                }
+
+
+            }
         }
 
         UserLoginSuccess userLoginSuccess = new UserLoginSuccess()

+ 4 - 4
src/main/java/com/dk/oauth/shiro/jwt/JWTGenerator.java

@@ -10,8 +10,8 @@ public class JWTGenerator implements ValueGenerator {
 
     private String username;
     private String userId;
-    private String ftyId;
-    private String ftyCode;
+    private String cpId;
+    private String cpCode;
     private String clientId;
     private String salt;
     private String grantType;
@@ -21,13 +21,13 @@ public class JWTGenerator implements ValueGenerator {
     @Override
     public String generateValue() throws OAuthSystemException {
         System.out.println("--->>> generateValue()");
-        return JwtUtil.sign(username, userId, appCode, clientId, salt, ftyId, ftyCode, lang);
+        return JwtUtil.sign(username, userId, appCode, clientId, salt, cpId, cpCode, lang);
     }
 
     @Override
     public String generateValue(String param) throws OAuthSystemException {
         System.out.println("--->>> generateValuegenerateValue(String param)");
-        return JwtUtil.sign(username, userId, appCode, clientId, salt, ftyId, ftyCode, lang);
+        return JwtUtil.sign(username, userId, appCode, clientId, salt, cpId, cpCode, lang);
     }
 
 }