Sfoglia il codice sorgente

Merge branch 'master' into test

yumeng 5 anni fa
parent
commit
f3b2db146c

+ 16 - 19
jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/controller/LoginController.java

@@ -24,7 +24,6 @@ import me.chanjar.weixin.cp.bean.WxCpUser;
 import me.chanjar.weixin.cp.config.impl.WxCpDefaultConfigImpl;
 import org.apache.shiro.SecurityUtils;
 import org.apache.shiro.subject.Subject;
-import org.eclipse.jetty.util.UrlEncoded;
 import org.jeecg.common.api.vo.Result;
 import org.jeecg.common.constant.CommonConstant;
 import org.jeecg.common.system.api.ISysBaseApi;
@@ -90,7 +89,7 @@ public class LoginController {
         }
     }
     @GetMapping("/feishu/auth")
-    public void feishuAuth(HttpServletRequest request,
+    public Result<JSONObject> feishuAuth(HttpServletRequest request,
                            HttpServletResponse response,
                            @RequestParam(name = "code",defaultValue = "code") String code,
                            @RequestParam(name = "state",defaultValue = "_t") String state) throws IOException {
@@ -98,9 +97,13 @@ public class LoginController {
         //1:根据code值获取用户飞书信息
         try {
             if(code.trim().equals("code")){
+                JSONObject setData = new JSONObject();
                 String url = AuthProvider.getAuthUrl("");
-                response.sendRedirect(url);
-                return ;
+                setData.put("url",url);
+                setData.put("type",1);
+                result.setResult(setData);
+                result.success("重定向");
+                return result;
             }
             JSONObject data = AuthProvider.getFeishuUserInfo(code);
             String accessToken = data.getJSONObject("data").getString("access_token");
@@ -110,27 +113,23 @@ public class LoginController {
             JSONObject dataObject = userData.getJSONObject("data");
             String email = dataObject.getString("email");
             if(null == email||email.trim().equals("")){
-                response.sendRedirect(DOMAIN_SERVER+"errorPage?desc="+ UrlEncoded.encodeString("飞书账号未绑定邮箱"));
-                return ;
+                return result.error500(StatusCode.CTOP_FEISHU_EMAIL_NOT_EXIST.getDesc());
             }
             SysUser sysUser = sysUserService.getUserByEmail(email);
             if (sysUser == null) {
-                response.sendRedirect(DOMAIN_SERVER+"errorPage?desc="+ UrlEncoded.encodeString("该用户未注册系统账户,请联系管理员"));
-                return ;
+                return result.error500(StatusCode.CTOP_FEISHU_ACCOUNT_NOT_EXIST.getDesc());
             }
             if(sysUser.getStatus() != 1){
-                response.sendRedirect(DOMAIN_SERVER+"errorPage?desc="+UrlEncoded.encodeString("该用户已被冻结,请联系管理员"));
-                return ;
+                return result.error500(StatusCode.CTOP_FEISHU_ACCOUNT_NOT_EXIST.getDesc());
             }
             String departId = sysDepartService.selectIdByOrdCode(sysUser.getOrgCode());
             sysUser.setDepartId(departId);
-            result = sysUserService.checkUserIsEffective(sysUser);
-            if (!result.isSuccess()) {
-                response.sendRedirect(DOMAIN_SERVER+"errorPage?desc="+UrlEncoded.encodeString(result.getMessage()));
-                return ;
+            Result<JSONObject> getResult = sysUserService.checkUserIsEffective(sysUser);
+            if (!getResult.isSuccess()) {
+                return result.error500(StatusCode.COMMON_ACCOUNT_ERROR.getDesc());
             }
             //用户登录信息
-            userInfo(sysUser, result);
+            userInfo(sysUser, getResult);
             sysBaseApi.addLog("用户名: " + email + ",登录成功!", CommonConstant.LOG_TYPE_1, null);
             CorpFeishuUser feishuUser = corpFeishuUserService.getById(sysUser.getId());
             if (feishuUser == null) {
@@ -148,12 +147,10 @@ public class LoginController {
                 feishuUser.setUpdateTime(new Date());
                 corpFeishuUserService.save(feishuUser);
             }
-            response.sendRedirect(DOMAIN_SERVER+"dashboard/analysis");
-            return ;
+            return getResult;
         } catch (Exception e) {
             e.printStackTrace();
-            response.sendRedirect(DOMAIN_SERVER+"errorPage?desc="+ UrlEncoded.encodeString("系统异常,请联系管理员"));
-            return;
+            return result.error500(StatusCode.COMMON_SERVER_ERROR.getDesc());
         }
     }
 

+ 3 - 2
jeecg-boot-module-system/src/main/resources/application-wps.yml

@@ -108,7 +108,8 @@ spring:
   #redis 配置
   redis:
     database: 0
-    host: 172.30.0.17
+#    host: 172.30.0.17
+    host: 127.0.0.1
     lettuce:
       pool:
         max-active: 8   #最大连接数据库连接数,设 0 为没有限制
@@ -116,7 +117,7 @@ spring:
         max-wait: -1ms  #最大建立连接等待时间。如果超过此时间将接到异常。设为-1表示无限制。
         min-idle: 0     #最小等待连接中的数量,设 0 为没有限制
       shutdown-timeout: 100ms
-    password: foobared
+    password:
     port: 6379
 #mybatis plus 设置
 mybatis-plus:

+ 4 - 0
module-common/src/main/java/cn/com/ctop/common/module/utils/StatusCode.java

@@ -20,6 +20,7 @@ public enum StatusCode {
      */
     COMMON_SUCCESS("success", 0, true),
     COMMON_PARAM_ERROR("参数异常", -1, false),
+    COMMON_ACCOUNT_ERROR("参数异常", -2, false),
     COMMON_DATA_NOT_EXIST("数据不存在或者已经被删除", -101, false),
     COMMON_VERSION_NOT_EXIST("版本号不存在", -102, false),
     BYTEDANCE_VIDEO_UPLOAD_FAIL("今日头条视频文件上传失败", -201, false),
@@ -37,6 +38,9 @@ public enum StatusCode {
     CTOP_HAS_NO_PERFORMANCE_STATISTIC_LOGIC("绩效统计逻辑尚未确定", -103, false),
     CTOP_SCRIPT_FILE_NOT_EXIST("脚本文件不存在", -104, false),
     CTOP_PROJECT_NOT_EXIST("项目不存在", -105, false),
+    CTOP_FEISHU_EMAIL_NOT_EXIST("飞书账户未绑定邮箱", -106, false),
+    CTOP_FEISHU_ACCOUNT_NOT_EXIST("该用户未注册系统账户,请联系管理员", -107, false),
+
     KUAISHOU_CRAWLER_APP_EXIT("快手app异常退出", -1001, false),
     KUAISHOU_CRAWLER_APP_ELEMENT_ERROR("快手元素异常", -1002, false),
     KUAISHOU_CRAWLER_APP_ELEMENT_IS_NULL("此快手元素获取不到", -1003, false),

+ 1 - 1
module-common/src/main/java/cn/com/feishu/constant/FeishuConstant.java

@@ -14,6 +14,6 @@ public class FeishuConstant {
     public static final String MESSAGE_BATCH_SEND = "/message/v4/batch_send/";
     public static final String MESSAGE_SEND = "/message/v4/send/";
     public static final String NOTIFY_SEND = "/notify/v4/appnotify";
-    public static final String REDIRECT_URL = "http://adsp.tjyourong.com.cn/jeecg-boot/sys/feishu/auth";
+    public static final String REDIRECT_URL = "http://adsp.tjyourong.com.cn/user/FStransfer";
 //    public static final String REDIRECT_URL = "http://192.168.0.111:8088/jeecg-boot/sys/feishu/auth";
 }