From afd5c86b170c2fc63896a2475097cf1654a3c889 Mon Sep 17 00:00:00 2001
From: ludc
Date: 星期三, 27 十一月 2024 23:02:07 +0800
Subject: [PATCH] 业务类型树查询接口新增UIDataTree用来专门返回key:list形式的参数,修改多处Map<String,String>为Map<String,Object>。

---
 Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/LoginController.java |   66 ++++++++++++++++++++++----------
 1 files changed, 45 insertions(+), 21 deletions(-)

diff --git a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/LoginController.java b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/LoginController.java
index 87d292d..eb67ce8 100644
--- a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/LoginController.java
+++ b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/LoginController.java
@@ -10,14 +10,15 @@
 import com.vci.starter.web.util.MessageUtils;
 import com.vci.starter.web.util.VciBaseUtil;
 import com.vci.starter.web.util.WebThreadLocalUtil;
-import com.vci.web.bo.LoginResultBO;
-import com.vci.web.dto.LoginUserDTO;
+import com.vci.bo.LoginResultBO;
+import com.vci.dto.LoginUserDTO;
 import com.vci.web.service.LoginServiceI;
 import eu.bitwalker.useragentutils.*;
 import org.apache.commons.lang3.StringUtils;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Controller;
-import org.springframework.util.CollectionUtils;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.ResponseBody;
@@ -27,7 +28,10 @@
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 import java.security.Principal;
-import java.util.*;
+import java.util.Enumeration;
+import java.util.HashMap;
+import java.util.Locale;
+import java.util.Map;
 
 /**
  * 鐧诲綍鎺у埗鍣�
@@ -46,6 +50,11 @@
 	private LoginServiceI loginService;
 
 	/**
+	 * 鏃ュ織
+	 */
+	private Logger logger = LoggerFactory.getLogger(getClass());
+
+	/**
 	 * 鐧诲綍锛岃繖涓湴鏂逛富瑕佹槸涓轰簡鐧诲綍鍚庡崟鐙殑涓氬姟
 	 * @param userDTO 鐢ㄦ埛鐨勫璞�
 	 * @param request 璇锋眰瀵硅薄
@@ -58,17 +67,25 @@
 	@VciUnCheckRight()
 	public BaseResult login(LoginUserDTO userDTO, HttpServletRequest request, RequestClientInfo clientInfo){
 		VciBaseUtil.alertNotNull(userDTO,"鐢ㄦ埛瀵硅薄",clientInfo,"璇锋眰瀹㈡埛绔俊鎭�");
-		wrapperBrowserInfo(clientInfo,request);
-		LoginResultBO loginResultBO = loginService.login(userDTO,clientInfo);
-		if(loginResultBO.isSuccess()){
-			return BaseResult.success(loginResultBO);
-		}else{
-			BaseResult result = BaseResult.fail(loginResultBO.getFailMsg());
-			if(StringUtils.isBlank(loginResultBO.getFailMsg())){
-				result.setMsg(MessageUtils.get(loginResultBO.getFailCode(),loginResultBO.getFailMsgArray()));
+		try {
+			wrapperBrowserInfo(clientInfo,request);
+			LoginResultBO loginResultBO = loginService.login(userDTO,clientInfo);
+			if(loginResultBO.isSuccess()){
+				return BaseResult.success(loginResultBO);
+			}else{
+				BaseResult result = BaseResult.fail(loginResultBO.getFailMsg());
+				result.setCode(200);//鐘舵�佺爜涓嶆槸200鍓嶇鏃犳硶鑾峰彇鍒皁bj涓殑淇℃伅
+				if(StringUtils.isBlank(loginResultBO.getFailMsg())){
+					result.setMsg(MessageUtils.get(loginResultBO.getFailCode(),loginResultBO.getFailMsgArray()));
+				}
+				result.setObj(loginResultBO);
+				return result;
 			}
-			result.setObj(loginResultBO);
-			return result;
+		}catch (Exception e){
+			e.printStackTrace();
+			String msg = "璋冪敤鐧诲綍鏂规硶鏃跺嚭鐜伴敊璇紝鍘熷洜锛�"+VciBaseUtil.getExceptionMessage(e);
+			logger.error(msg);
+			return BaseResult.fail(msg);
 		}
 	}
 	
@@ -133,7 +150,7 @@
 					if(!loginResultBO.isSuccess()){
 						msg = loginResultBO.getFailMsg();
 					}else {
-						token = loginResultBO.getSessionInfo().getToken();
+						token = loginResultBO.getTokenVO().getAccessToken();
 					}
 				}catch (Throwable e){
 					msg = LangBaseUtil.getErrorMsg(e);
@@ -196,7 +213,7 @@
 						msg = loginResultBO.getFailMsg();
 						return BaseResult.fail(msg);
 					}else {
-						token = loginResultBO.getSessionInfo().getToken();
+						token = loginResultBO.getTokenVO().getAccessToken();
 						msg="鐧诲綍鎴愬姛锛�";
 					}
 				}catch (Throwable e){
@@ -222,8 +239,6 @@
 	public ModelAndView singleLoginByUsername(HttpServletRequest request,HttpServletResponse response){
 		return doSingleLogin(request,response,"username");
 	}
-
-
 
 	/**
 	 * 鑾峰彇瀹㈡埛绔姹備俊鎭�,涓轰簡闅旂粷鍦╯erver灞備娇鐢╮equest
@@ -256,6 +271,14 @@
 					clientInfo.setRequestType("browser");
 				}
 			}
+
+			Locale loc = Locale.getDefault();
+			clientInfo.setCountry(loc.getCountry());
+			clientInfo.setLanguage(loc.toLanguageTag());
+
+			Map<String,String> map = System.getenv();
+			clientInfo.setMachine(map.get("COMPUTERNAME"));
+			clientInfo.setOsUser(map.get("USERNAME"));
 		}
 	}
 
@@ -297,9 +320,9 @@
 	@ResponseBody
 	public BaseResult getSessionInfo(){
 		BaseResult<SessionInfo> json = new BaseResult<>();
-		json.setObj(WebThreadLocalUtil.getCurrentUserSessionInfoInThread().get());
-		if(json.getObj()!=null){
-			json.setSuccess(true);
+		SessionInfo sessionInfo = WebThreadLocalUtil.getCurrentUserSessionInfoInThread();
+		if(sessionInfo != null){
+			json = json.success(sessionInfo);
 		}
 		return json;
 	}
@@ -317,4 +340,5 @@
 		loginService.logout(userToken);
 		return BaseResult.success();
 	}
+
 }

--
Gitblit v1.9.3