From c43b9d04dea89ee0adf731ce46c4f48eed11ffb9 Mon Sep 17 00:00:00 2001 From: ludc Date: 星期一, 18 九月 2023 10:34:48 +0800 Subject: [PATCH] 代码提交 --- Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/UniversalInterfaceImpl.java | 29 +++++++++++++++++++---------- Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/CodeSyncUniversalController.java | 8 ++++++-- Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IPasswordFreeLoginService.java | 5 ++--- Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/PasswordFreeLoginServiceImpl.java | 17 +++++++++++------ 4 files changed, 38 insertions(+), 21 deletions(-) diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/CodeSyncUniversalController.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/CodeSyncUniversalController.java index 585558a..61bc9e2 100644 --- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/CodeSyncUniversalController.java +++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/CodeSyncUniversalController.java @@ -23,15 +23,18 @@ @RestController @RequestMapping("/codeSyncUniversalController") public class CodeSyncUniversalController { + /** * 鏃ュ織 */ private Logger logger = LoggerFactory.getLogger(getClass()); + /** * 鎺ュ彛闆嗘垚鏈嶅姟 */ @Autowired private UniversalInterfaceI universalInterfaceI; + /**** * 鐢宠鎺ュ彛 * @param dataString 灞炴�т俊鎭� @@ -40,8 +43,9 @@ * @throws Throwable */ @PostMapping("/applyCode") - public String applyCode(@RequestParam("dataString")String dataString, @RequestParam("dataType")String dataType) { + public String applyCode(@RequestParam("dataString")String dataString, @RequestParam("dataType")String dataType, ServletRequest request) { String result=""; + HttpServletRequest httpServletRequest = (HttpServletRequest) request; try { result = universalInterfaceI.applyCode(dataString, dataType); }catch (Throwable e){ @@ -50,6 +54,7 @@ } return result; } + /**** * 鏇存柊/鍒犻櫎/鐘舵�佹帴鍙� * @param dataString 灞炴�т俊鎭� @@ -68,7 +73,6 @@ } return result; } - /**** * 鏌ヨ鍒嗙被鍙� diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IPasswordFreeLoginService.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IPasswordFreeLoginService.java index b7f5780..b50482a 100644 --- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IPasswordFreeLoginService.java +++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IPasswordFreeLoginService.java @@ -3,7 +3,6 @@ import org.apache.http.auth.AuthenticationException; import javax.servlet.ServletRequest; -import javax.servlet.http.HttpServletRequest; /** * 鍏嶅瘑鐧诲綍鏈嶅姟 @@ -21,9 +20,9 @@ /** * 鍏嶅瘑鐧诲綍鏂规硶 - * @param username 璐﹀彿 + * @param userName 璐﹀彿 * @return */ - boolean passwordFreeLogin(String username, ServletRequest request) throws AuthenticationException; + boolean passwordFreeLogin(String userName, ServletRequest request) throws AuthenticationException; } diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/PasswordFreeLoginServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/PasswordFreeLoginServiceImpl.java index fbedf76..1457d0a 100644 --- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/PasswordFreeLoginServiceImpl.java +++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/PasswordFreeLoginServiceImpl.java @@ -44,10 +44,15 @@ // 閫氳繃鏈嶅姟娉ㄥ唽涓績鑾峰彇缃戝叧鐨勭鍙e彿 @Autowired private DiscoveryClient discoveryClient; - @Value("${user-info.pwd-free-tenant-id}") + // 閰嶇疆鐨勫厤瀵嗙櫥褰曠殑璐﹀彿鎵�灞炵殑绉熸埛id + @Value("${password-free.pwd-free-tenant-id}") + // 閰嶇疆鐨則oken鍦╮edis涓殑鐢熷瓨鏃堕棿 private String pwdFreeTenantId; + @Value("${password-free.token-redis-expire}") + private Long tokenRedisExpire; @Autowired private BladeRedis bladeRedis; + // 缂撳瓨鍚� public static final String PWD_FREE_LOGIN_TOKEN = "pwdFreeLogin:Token:"; private static JwtProperties jwtProperties; @@ -68,17 +73,17 @@ /** * 鍏嶅瘑鐧诲綍锛屾敼鍙樺綋鍓峸ebservice璇锋眰鐨刪eader - * @param username 璐﹀彿 + * @param userName 璐﹀彿 * @return */ @Override - public boolean passwordFreeLogin(String username, ServletRequest servletRequest) throws AuthenticationException { + public boolean passwordFreeLogin(String userName, ServletRequest servletRequest) throws AuthenticationException { //杩涙潵鍏堝垽鏂紦瀛樹腑鏄惁瀛樺湪token // 璇锋眰鏉ヨ嚜宸卞摢涓猧p鍦板潃 HttpServletRequest request = (HttpServletRequest) servletRequest; String ipAddr = request.getRemoteAddr(); // 鍏堝皾璇曚粠缂撳瓨褰撲腑鍙栵紝瀛樺湪灏辩洿鎺ヤ粠缂撳瓨涓幏鍙� - String authToken = bladeRedis.get(PWD_FREE_LOGIN_TOKEN+ipAddr); + String authToken = bladeRedis.get(PWD_FREE_LOGIN_TOKEN+ipAddr+":"+userName); BladeUser user = null; //涓嶅瓨鍦ㄥ氨璇锋眰 if(Func.isEmpty(authToken)){ @@ -91,7 +96,7 @@ headers.set("Tenant-Id", pwdFreeTenantId); //璁剧疆璇锋眰浣撳弬鏁� MultiValueMap<String,String> parameters = new LinkedMultiValueMap<String,String>(); - parameters.add("username",username); + parameters.add("username",userName); parameters.add("grant_type", "passwordfree"); parameters.add("scope", "all"); parameters.add("type", "account"); @@ -112,7 +117,7 @@ // 鎷兼帴token鏍煎紡 authToken = "bearer " + tokenUserObject.getAccess_token(); // 灏唗oken瀛樺叆缂撳瓨褰撲腑,杩囨湡鏃堕棿涓�24灏忔椂 - bladeRedis.setEx(PWD_FREE_LOGIN_TOKEN+ipAddr,"bearer "+tokenUserObject.getAccess_token(),60*60*60*24L); + bladeRedis.setEx(PWD_FREE_LOGIN_TOKEN+ipAddr+":"+userName,"bearer "+tokenUserObject.getAccess_token(),tokenRedisExpire); } // 瑙f瀽token瀛樻斁杩沘ttr涓� String token2 = JwtUtil.getToken(authToken); diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/UniversalInterfaceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/UniversalInterfaceImpl.java index 15415e2..540121c 100644 --- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/UniversalInterfaceImpl.java +++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/UniversalInterfaceImpl.java @@ -53,17 +53,16 @@ import com.vci.ubcs.system.vo.DeptVO; import com.vci.ubcs.system.vo.RoleVO; import lombok.extern.slf4j.Slf4j; -import org.springblade.core.secure.utils.AuthUtil; import org.springblade.core.tool.api.R; +import org.springblade.core.tool.utils.Func; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; import org.springframework.util.CollectionUtils; + import javax.annotation.Resource; import javax.jws.WebMethod; -import javax.servlet.ServletRequest; import javax.servlet.http.HttpServletRequest; -import javax.ws.rs.core.Context; import javax.xml.ws.WebServiceContext; import javax.xml.ws.handler.MessageContext; import java.util.*; @@ -81,20 +80,25 @@ @Slf4j @VciWebservice(path = "/universalInterface") public class UniversalInterfaceImpl<IDockingLogeServiceing> implements UniversalInterfaceI { + @Value("${code.universalinterface.checkSystemConfig:true}") public boolean CODE_CHECKCONFIG; + @Autowired(required = false) private AttributeMapConfig attributeMapConfig; + /*** * 浜哄憳鐩稿叧閰嶇疆鏈嶅姟 */ @Autowired(required = false) private PersonAndDeptConfig personAndDeptConfig; + /** * 缂撳瓨鏈嶅姟 */ //@Autowired //private RedisService redisService; + /** * 涓婚搴撳垎绫荤殑鏈嶅姟 */ @@ -134,7 +138,6 @@ /** * 瀵嗙骇鐨勬湇鍔� */ - @Resource private MdmIOService mdmIOService; @@ -164,7 +167,7 @@ @WebMethod public HttpServletRequest getRequest() { // 鑾峰彇HttpServletRequest瀵硅薄 - HttpServletRequest request = (HttpServletRequest) webServiceContext.getMessageContext().get(MessageContext.SERVLET_REQUEST); + HttpServletRequest request = (HttpServletRequest)webServiceContext.getMessageContext().get(MessageContext.SERVLET_REQUEST); return request; } @@ -210,7 +213,7 @@ ClassfysVO classfysVO = interParameterVO.getData().getClassifys(); systemId = interParameterVO.getData().getSystemId(); UserVO userVo = interParameterVO.getData().getUser(); - //鍏嶅瘑鐧诲綍鐢宠token锛宧eader寰�token涓坊鍔� + //鍏嶅瘑鐧诲綍鐢宠token锛宺equest涓坊鍔犵敤鎴蜂俊鎭� passwordFreeLoginService.passwordFreeLogin(userVo.getUserName(),this.getRequest()); List<ClassfyVO> classVOList = classfysVO.getClassify(); InterParameterVO finalInterParameterVO = interParameterVO; @@ -362,8 +365,6 @@ //璋冪敤闆嗗洟鐢宠鎺ュ彛鐢宠闆嗗洟鐮� return resultStr; } - - /**** * 浜哄憳鏁版嵁鍚屾 @@ -637,6 +638,7 @@ return resultOrgData; } + /**** * 閮ㄩ棬鏁版嵁鍚屾 * @param orgData @@ -903,6 +905,7 @@ } return resultOrgData; } + /*** * 缁熶竴鏇存柊鎺ュ彛锛堟洿鏀圭姸鎬侊紝鏇存敼灞炴�т俊鎭級鎺ュ彛 * @param data @@ -947,6 +950,8 @@ ClassfysVO classfysVO = interParameterVO.getData().getClassifys(); systemId = interParameterVO.getData().getSystemId(); UserVO userVo = interParameterVO.getData().getUser(); + //鍏嶅瘑鐧诲綍鐢宠token锛宺equest涓坊鍔犵敤鎴蜂俊鎭� + passwordFreeLoginService.passwordFreeLogin(userVo.getUserName(),this.getRequest()); List<ClassfyVO> classVOList = classfysVO.getClassify(); InterParameterVO finalInterParameterVO = interParameterVO; //杩欐槸璐﹀彿淇℃伅 @@ -1118,6 +1123,8 @@ } QueryData queryData=queryClassifyVO.getData(); UserVO userVo=queryData.getUser(); + //鍏嶅瘑鐧诲綍鐢宠token锛宺equest涓坊鍔犵敤鎴蜂俊鎭� + passwordFreeLoginService.passwordFreeLogin(userVo.getUserName(),this.getRequest()); systemId=queryData.getSystemId(); QueryLibraryVO libraryVO= queryData.getLibrary(); String libId= libraryVO.getId(); @@ -1276,6 +1283,8 @@ CondtionsVO condtionsVO=dataCondtionsVO.getCondtions(); systemId=condtionsVO.getSystemId(); UserVO userVo=condtionsVO.getUser(); + //鍏嶅瘑鐧诲綍鐢宠token锛宺equest涓坊鍔犵敤鎴蜂俊鎭� + passwordFreeLoginService.passwordFreeLogin(userVo.getUserName(),this.getRequest()); CondtionVO condtionVO= condtionsVO.getCondtion(); SessionInfo sessionInfo = new SessionInfo(); sessionInfo.setUserId(userVo.getUserName()); @@ -1452,8 +1461,6 @@ return resultStr; } - - @Override public String queryClassifyRule(String data, String dataType) throws Throwable { @@ -1492,6 +1499,8 @@ } QueryData queryData=queryClassifyVO.getData(); UserVO userVo=queryData.getUser(); + //鍏嶅瘑鐧诲綍鐢宠token锛宺equest涓坊鍔犵敤鎴蜂俊鎭� + passwordFreeLoginService.passwordFreeLogin(userVo.getUserName(),this.getRequest()); systemId=queryData.getSystemId(); QueryLibraryVO libraryVO= queryData.getLibrary(); String libId= libraryVO.getId(); -- Gitblit v1.9.3