From 7f9d6840cc01c25ac9816df60dbac3d040594fa3 Mon Sep 17 00:00:00 2001 From: ludc Date: 星期二, 12 九月 2023 19:12:55 +0800 Subject: [PATCH] 代码提交 --- Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/web/pagemodel/Tree.java | 1 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClassifyValueServiceImpl.java | 2 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/config/AuthenticationInterceptor.java | 28 +++++ Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmEngineServiceImpl.java | 7 Source/UBCS/ubcs-auth/src/main/java/com/vci/ubcs/auth/endpoint/BladeTokenEndPoint.java | 22 ++++ Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/CodeClassifyValueVO.java | 14 +- Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeRuleServiceImpl.java | 17 +-- Source/UBCS/ubcs-auth/src/main/java/com/vci/ubcs/auth/config/BladeResourceServerConfiguration.java | 1 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/PasswordFreeLoginServiceImpl.java | 33 +++++- Source/UBCS/ubcs-auth/src/main/java/com/vci/ubcs/auth/endpoint/PwdFreeLoginEndpoint.java | 97 +++++++++++++++++++ Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/config/WebConfig.java | 21 ++++ Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/PasswordFreeLoginController.java | 33 ++++++ 12 files changed, 244 insertions(+), 32 deletions(-) diff --git a/Source/UBCS/ubcs-auth/src/main/java/com/vci/ubcs/auth/config/BladeResourceServerConfiguration.java b/Source/UBCS/ubcs-auth/src/main/java/com/vci/ubcs/auth/config/BladeResourceServerConfiguration.java index 5f680cc..f30b930 100644 --- a/Source/UBCS/ubcs-auth/src/main/java/com/vci/ubcs/auth/config/BladeResourceServerConfiguration.java +++ b/Source/UBCS/ubcs-auth/src/main/java/com/vci/ubcs/auth/config/BladeResourceServerConfiguration.java @@ -38,6 +38,7 @@ .antMatchers( "/actuator/**", "/oauth/captcha", + "/oauth/passwordFreeLogin", "/oauth/logout", "/oauth/clear-cache", "/oauth/render/**", diff --git a/Source/UBCS/ubcs-auth/src/main/java/com/vci/ubcs/auth/endpoint/BladeTokenEndPoint.java b/Source/UBCS/ubcs-auth/src/main/java/com/vci/ubcs/auth/endpoint/BladeTokenEndPoint.java index 1d4aaf1..6a35d65 100644 --- a/Source/UBCS/ubcs-auth/src/main/java/com/vci/ubcs/auth/endpoint/BladeTokenEndPoint.java +++ b/Source/UBCS/ubcs-auth/src/main/java/com/vci/ubcs/auth/endpoint/BladeTokenEndPoint.java @@ -32,16 +32,34 @@ import org.springblade.core.tool.support.Kv; import org.springblade.core.tool.utils.StringUtil; import org.springblade.core.tool.utils.WebUtil; +import org.springframework.http.HttpMethod; +import org.springframework.http.ResponseEntity; +import org.springframework.security.authentication.InsufficientAuthenticationException; import org.springframework.security.core.Authentication; import org.springframework.security.core.context.SecurityContextHolder; import org.springframework.security.oauth2.common.OAuth2AccessToken; import org.springframework.security.oauth2.common.OAuth2RefreshToken; +import org.springframework.security.oauth2.common.exceptions.InvalidClientException; +import org.springframework.security.oauth2.common.exceptions.InvalidGrantException; +import org.springframework.security.oauth2.common.exceptions.InvalidRequestException; +import org.springframework.security.oauth2.common.exceptions.UnsupportedGrantTypeException; +import org.springframework.security.oauth2.common.util.OAuth2Utils; import org.springframework.security.oauth2.provider.AuthorizationRequest; +import org.springframework.security.oauth2.provider.ClientDetails; import org.springframework.security.oauth2.provider.ClientDetailsService; +import org.springframework.security.oauth2.provider.TokenRequest; +import org.springframework.security.oauth2.provider.endpoint.TokenEndpoint; import org.springframework.security.oauth2.provider.token.TokenStore; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.util.StringUtils; +import org.springframework.web.HttpRequestMethodNotSupportedException; +import org.springframework.web.bind.annotation.*; import org.springframework.web.servlet.ModelAndView; +import org.springframework.web.bind.annotation.RequestMethod; +import org.springframework.web.bind.annotation.RequestParam; + +import java.security.Principal; +import java.util.Collections; +import java.util.Map; import javax.servlet.http.HttpSession; import java.time.Duration; diff --git a/Source/UBCS/ubcs-auth/src/main/java/com/vci/ubcs/auth/endpoint/PwdFreeLoginEndpoint.java b/Source/UBCS/ubcs-auth/src/main/java/com/vci/ubcs/auth/endpoint/PwdFreeLoginEndpoint.java new file mode 100644 index 0000000..101a074 --- /dev/null +++ b/Source/UBCS/ubcs-auth/src/main/java/com/vci/ubcs/auth/endpoint/PwdFreeLoginEndpoint.java @@ -0,0 +1,97 @@ +/* +package com.vci.ubcs.auth.endpoint; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.security.core.Authentication; +import org.springframework.security.oauth2.common.OAuth2AccessToken; +import org.springframework.security.oauth2.provider.ClientDetailsService; +import org.springframework.security.oauth2.provider.OAuth2RequestFactory; +import org.springframework.security.oauth2.provider.TokenGranter; +import org.springframework.security.oauth2.provider.TokenRequest; +import org.springframework.security.oauth2.provider.endpoint.TokenEndpoint; +import org.springframework.security.oauth2.provider.token.AuthorizationServerTokenServices; +import org.springframework.stereotype.Component; +import org.springframework.util.LinkedMultiValueMap; +import org.springframework.util.MultiValueMap; +import org.springframework.web.HttpRequestMethodNotSupportedException; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; +import org.springframework.web.bind.annotation.RequestParam; + +import java.util.Map; + +*/ +/** + * 鍏嶅瘑鐧诲綍 + * @author ludc + * @date 2023/9/12 18:03 + *//* + +@Component +public class PwdFreeLoginEndpoint extends TokenEndpoint { + + + @Autowired + private AuthorizationServerTokenServices tokenServices; + + @Autowired + private ClientDetailsService clientDetailsService; + + @Autowired + private OAuth2RequestFactory requestFactory; + + @Autowired + private TokenGranter tokenGranter; + + @RequestMapping(value = "/oauth/password-free-login",method = RequestMethod.GET) + public ResponseEntity<OAuth2AccessToken> getPasswordFreeLogin(@RequestParam Map<String, String> parameters) throws HttpRequestMethodNotSupportedException { + return postPasswordFreeLogin(parameters); + } + + @RequestMapping(value = "/oauth/password-free-login",method = RequestMethod.POST) + public ResponseEntity<OAuth2AccessToken> postPasswordFreeLogin(@RequestParam Map<String, String> parameters) throws HttpRequestMethodNotSupportedException { + // 鍒ゆ柇鏄惁婊¤冻鍏嶅瘑鐧诲綍鐨勬潯浠� + if (isSkipLogin(parameters)) { + // 鐢熸垚璁块棶浠ょ墝 + OAuth2AccessToken accessToken = createAccessToken(parameters); + // 杩斿洖璁块棶浠ょ墝 + return ResponseEntity.ok(accessToken); + } + + // 涓嶆弧瓒冲厤瀵嗙櫥褰曟潯浠讹紝杩斿洖閿欒淇℃伅 + return ResponseEntity.status(HttpStatus.UNAUTHORIZED).build(); + } + + private boolean isSkipLogin(Map<String, String> parameters) { + // 鏍规嵁鍏蜂綋闇�姹傚垽鏂槸鍚︽弧瓒冲厤瀵嗙櫥褰曠殑鏉′欢 + // 渚嬪锛屽垽鏂姹傚弬鏁颁腑鏄惁鍖呭惈鏌愪釜鐗瑰畾鐨勬爣璇嗙 + return parameters.containsKey("skipLogin"); + } + + private OAuth2AccessToken createAccessToken(Map<String, String> parameters) throws HttpRequestMethodNotSupportedException { + // 鏋勯�犺姹傚弬鏁� + MultiValueMap<String, String> params = new LinkedMultiValueMap<>(); + for (Map.Entry<String, String> entry : parameters.entrySet()) { + params.add(entry.getKey(), entry.getValue()); + } + + // 璋冪敤TokenEndpoint鐨刾ostAccessToken鏂规硶鐢熸垚璁块棶浠ょ墝 + return postAccessToken(PrincipalUtils.getPrincipal(), params).getBody(); + } + + private ResponseEntity<OAuth2AccessToken> postAccessToken(Authentication authentication, MultiValueMap<String, String> parameters) throws HttpRequestMethodNotSupportedException { + // 鏋勯�犺姹� + TokenRequest tokenRequest = requestFactory.createTokenRequest(parameters, clientDetailsService.loadClientByClientId("your-client-id")); + + // 鐢熸垚璁块棶浠ょ墝 + OAuth2AccessToken accessToken = tokenGranter.grant("password", tokenRequest); + + // 杩斿洖璁块棶浠ょ墝 + return ResponseEntity.ok(accessToken); + } + +} +*/ diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/CodeClassifyValueVO.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/CodeClassifyValueVO.java index 7194c73..305a111 100644 --- a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/CodeClassifyValueVO.java +++ b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/CodeClassifyValueVO.java @@ -23,7 +23,7 @@ /** * 鍒嗙被鐮佹涓婚敭鏄剧ず鏂囨湰 */ - private String codeclassifysecoidName; + private String codeClassifySecOidName; /** * 鐮佸�煎簭鍙� @@ -61,15 +61,15 @@ /** * 鑾峰彇鍒嗙被鐮佹涓婚敭鏄剧ず鏂囨湰 */ - public String getCodeclassifysecoidName (){ - return codeclassifysecoidName; + public String getCodeClassifySecOidName (){ + return codeClassifySecOidName; } /** * 璁剧疆鍒嗙被鐮佹涓婚敭鏄剧ず鏂囨湰 */ - public void setCodeclassifysecoidName (String codeclassifysecoidName){ - this.codeclassifysecoidName = codeclassifysecoidName; + public void setCodeClassifySecOidName (String codeclassifysecoidName){ + this.codeClassifySecOidName = codeclassifysecoidName; } /** * 鑾峰彇 鐮佸�煎簭鍙� @@ -118,16 +118,16 @@ this.name = name; } - @Override public String toString() { return "CodeClassifyValueVO{" + "codeClassifySecOid='" + codeClassifySecOid + '\'' + - ", codeclassifysecoidName='" + codeclassifysecoidName + '\'' + + ", codeClassifySecOidName='" + codeClassifySecOidName + '\'' + ", orderNum=" + orderNum + ", parentClassifyValueOid='" + parentClassifyValueOid + '\'' + ", id='" + id + '\'' + ", name='" + name + '\'' + "} " + super.toString(); } + } diff --git a/Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/web/pagemodel/Tree.java b/Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/web/pagemodel/Tree.java index 0baa065..61d8b70 100644 --- a/Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/web/pagemodel/Tree.java +++ b/Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/web/pagemodel/Tree.java @@ -207,6 +207,7 @@ } + @Override public String toString() { return "Tree{oid='" + this.oid + '\'' + ", text='" + this.text + '\'' + ", leaf=" + this.leaf + ", showCheckbox=" + this.showCheckbox + ", checked=" + this.checked + ", children=" + this.children + ", icon='" + this.icon + '\'' + ", iconCls='" + this.iconCls + '\'' + ", parentId='" + this.parentId + '\'' + ", parentName='" + this.parentName + '\'' + ", parentBtmName='" + this.parentBtmName + '\'' + ", expanded=" + this.expanded + ", href='" + this.href + '\'' + ", index='" + this.index + '\'' + ", attributes=" + this.attributes + '}'; } diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/config/AuthenticationInterceptor.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/config/AuthenticationInterceptor.java new file mode 100644 index 0000000..b8cfd51 --- /dev/null +++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/config/AuthenticationInterceptor.java @@ -0,0 +1,28 @@ +package com.vci.ubcs.code.config; + +import org.springframework.web.servlet.HandlerInterceptor; +import org.springframework.web.servlet.ModelAndView; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +/** + * @author ludc + * @date 2023/9/12 11:49 + */ +public class AuthenticationInterceptor implements HandlerInterceptor { + @Override + public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception { + return HandlerInterceptor.super.preHandle(request, response, handler); + } + + @Override + public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception { + HandlerInterceptor.super.postHandle(request, response, handler, modelAndView); + } + + @Override + public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception { + HandlerInterceptor.super.afterCompletion(request, response, handler, ex); + } +} diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/config/WebConfig.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/config/WebConfig.java new file mode 100644 index 0000000..ad32b4c --- /dev/null +++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/config/WebConfig.java @@ -0,0 +1,21 @@ +package com.vci.ubcs.code.config; + +import org.springframework.context.annotation.Configuration; +import org.springframework.web.servlet.config.annotation.InterceptorRegistry; +import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; + +/** + * webservice鎺ュ彛鎷︽埅鍣� + * @author ludc + * @date 2023/9/12 11:16 + */ +@Configuration +public class WebConfig implements WebMvcConfigurer { + + @Override + public void addInterceptors(InterceptorRegistry registry) { + registry.addInterceptor(new AuthenticationInterceptor()) + .addPathPatterns("/api/protected/**"); + } + +} diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/PasswordFreeLoginController.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/PasswordFreeLoginController.java new file mode 100644 index 0000000..4e04c10 --- /dev/null +++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/PasswordFreeLoginController.java @@ -0,0 +1,33 @@ +package com.vci.ubcs.code.controller; + +import com.vci.ubcs.code.service.IPasswordFreeLoginService; +import io.swagger.annotations.Api; +import org.springblade.core.tool.api.R; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; + +/** + * @author ludc + * @date 2023/9/12 9:07 + */ +@RestController +@RequestMapping("/passwordFree") +@Api(value = "鍏嶅瘑鐧诲綍鎺ュ彛", tags = "鍏嶅瘑鐧诲綍鎺ュ彛") +public class PasswordFreeLoginController { + + @Resource + private IPasswordFreeLoginService passwordFreeLoginService; + + @GetMapping("/login") + public R passwordFreeLogin(String account) { + boolean resBoolean = passwordFreeLoginService.passwordFreeLogin(account); + return R.status(resBoolean); + } + + + + +} diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClassifyValueServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClassifyValueServiceImpl.java index 88770ac..9c1f965 100644 --- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClassifyValueServiceImpl.java +++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClassifyValueServiceImpl.java @@ -101,7 +101,7 @@ treeWrapperOptions.copyFromTreeQuery(treeQueryObject); return revisionModelUtil.doList2Trees(voList,treeWrapperOptions,(CodeClassifyValueVO s) ->{ //鍙互鍦ㄨ繖閲屽鐞嗘爲鑺傜偣鐨勬樉绀� - return s.getId() + " " + s.getName() + (FrameworkDataLCStatus.DISABLED.getValue().equalsIgnoreCase(s + return s.getId() + " " + (Func.isNotEmpty(s.getName()) ? s.getName():"") + (FrameworkDataLCStatus.DISABLED.getValue().equalsIgnoreCase(s .getLcStatus()) ? (" 銆愬仠鐢ㄣ�� ") : ""); }); } diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeRuleServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeRuleServiceImpl.java index 5d8bd08..f02f7e6 100644 --- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeRuleServiceImpl.java +++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeRuleServiceImpl.java @@ -119,9 +119,6 @@ @Resource private ICodeFixedValueService codeFixedValueService; - @Resource - private ICodeClassifyValueService codeClassifyValueService; - /** * 鍒嗛〉鏌ヨ * @param query @@ -129,7 +126,7 @@ * @return */ @Override - public IPage<CodeRuleVO> gridCodeRule(Query query, Map<String,Object> conidtionMap) { + public IPage<CodeRuleVO> gridCodeRule(Query query, Map<String,Object> conidtionMap) throws VciBaseException { //濡傛灉绛変簬鑷繁閰嶇疆鐨勭鐞嗙粍绉熸埛id鍜岀鐞嗙粍瓒呯璐﹀彿锛屽氨涓嶉渶瑕佹寜鐓ц鍒欐墍鏈夎�呮潵杩涜鏌ヨ if(!(AuthUtil.getTenantId().equals(nacosConfigCache.getAdminUserInfo().getTenantId()) && AuthUtil.getUserId().toString().equals(nacosConfigCache.getAdminUserInfo().getUserId().toString())) @@ -170,7 +167,7 @@ * @return 杩斿洖false琛ㄧず鏈噸澶� */ @Override - public boolean checkCodeRuleRepeat(CodeRuleDTO codeRuleDTO){ + public boolean checkCodeRuleRepeat(CodeRuleDTO codeRuleDTO)throws VciBaseException { LambdaQueryWrapper<CodeRule> wrapper = Wrappers.<CodeRule>query() .lambda().eq(CodeRule::getId, codeRuleDTO.getId()); if(AuthUtil.getTenantId().equals(nacosConfigCache.getAdminUserInfo().getTenantId())){ @@ -331,7 +328,7 @@ * @return true琛ㄧず宸茬粡浣跨敤锛宖alse琛ㄧず鏈浣跨敤 */ @Override - public boolean isAlreadyInUse(String oid) { + public boolean isAlreadyInUse(String oid) throws VciBaseException { Collection<CodeClassifyVO> codeClassifyVOS = listUseRangeInCodeClassify(oid); if (codeClassifyVOS.size() > 0) { return true; @@ -347,7 +344,7 @@ * @return 涓婚搴撳垎绫讳娇鐢ㄥ埌璇ョ紪鐮佽鍒欑殑鎵�鏈夐泦鍚� */ @Override - public Collection<CodeClassifyVO> listUseRangeInCodeClassify(String oid) { + public Collection<CodeClassifyVO> listUseRangeInCodeClassify(String oid) throws VciBaseException { List<CodeClassify> codeClassifies = codeClassifyServcie.selectByWrapper(Wrappers.<CodeClassify>query().lambda().eq(CodeClassify::getCodeRuleOid, oid)); return CodeClassifyWrapper.build().listVO(codeClassifies); } @@ -400,7 +397,7 @@ * @param oidCollections 涓婚敭鐨勯泦鍚� * @return 鏁版嵁瀵硅薄鍒楄〃 */ - private List<CodeRule> listCodeRuleDOByOidCollections(Collection<String> oidCollections) { + private List<CodeRule> listCodeRuleDOByOidCollections(Collection<String> oidCollections) throws VciBaseException { List<CodeRule> codeRuleDOList = new ArrayList<CodeRule>(); if (!CollectionUtils.isEmpty(oidCollections)) { Collection<Collection<String>> oidCollectionsList = VciBaseUtil.switchCollectionForOracleIn(oidCollections); @@ -434,7 +431,7 @@ * @return 鎵ц缁撴灉 */ @Override - public R updateStatus(String oid, String update) { + public R updateStatus(String oid, String update) throws VciBaseException { int count = 0; //鍏堟煡璇㈠璞� CodeRule codeRuleDO = selectByOid(oid); @@ -545,7 +542,7 @@ * @return 瑙勫垯鐨勬樉绀哄璞� */ @Override - public CodeRuleVO getObjectHasSecByOid(String oid) { + public CodeRuleVO getObjectHasSecByOid(String oid) throws VciBaseException { CodeRule ruleDO = selectByOid(oid); return codeRuleDO2VO(ruleDO, true); } diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmEngineServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmEngineServiceImpl.java index b0163b3..3c693e1 100644 --- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmEngineServiceImpl.java +++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmEngineServiceImpl.java @@ -2408,7 +2408,6 @@ return phaseAttrService.listAttrByTemplateOidAndPhaseId(templateVO.getOid(), phase); } - /** * 璺緞涓婂寘鍚綋鍓嶅垎绫荤殑鎵�鏈夊垎绫讳俊鎭� * @@ -2756,13 +2755,13 @@ CodeSecTypeEnum.CODE_FIXED_SEC.getValue(), CodeSecTypeEnum.CODE_VARIABLE_SEC.getValue(), CodeSecTypeEnum.CODE_CLASSIFY_SEC.getValue(), - CodeSecTypeEnum.CODE_REFER_SEC.getValue() + CodeSecTypeEnum.CODE_REFER_SEC.getValue(), + CodeSecTypeEnum.CODE_DATE_SEC.getValue() ); // 鍙鐮佹绫诲瀷 List<String> readOnlyTypes = Arrays.asList( CodeSecTypeEnum.CODE_LEVEL_SEC.getValue(), - CodeSecTypeEnum.CODE_ATTR_SEC.getValue(), - CodeSecTypeEnum.CODE_DATE_SEC.getValue() + CodeSecTypeEnum.CODE_ATTR_SEC.getValue() ); // 闅愯棌鐮佹绫诲瀷 /*List<String> hideType = Arrays.asList( 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 692c097..5134140 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 @@ -1,8 +1,12 @@ package com.vci.ubcs.code.service.impl; import com.vci.ubcs.code.service.IPasswordFreeLoginService; +import com.vci.ubcs.code.util.HttpUtils; import org.apache.commons.collections4.MultiValuedMap; import org.apache.commons.collections4.multimap.ArrayListValuedHashMap; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.cloud.client.ServiceInstance; +import org.springframework.cloud.client.discovery.DiscoveryClient; import org.springframework.http.HttpEntity; import org.springframework.http.HttpHeaders; import org.springframework.http.MediaType; @@ -13,6 +17,9 @@ import org.springframework.http.HttpMethod; import org.springframework.web.client.RestTemplate; +import javax.annotation.Resource; +import java.util.List; + /** * 鍏嶅瘑鐧诲綍鏈嶅姟 * @author ludc @@ -21,8 +28,22 @@ @Service public class PasswordFreeLoginServiceImpl implements IPasswordFreeLoginService { - private RestTemplate restTemplate; + // 閫氳繃鏈嶅姟娉ㄥ唽涓績鑾峰彇缃戝叧鐨勭鍙e彿 + @Autowired + private DiscoveryClient discoveryClient; + /** + * 鑾峰彇缃戝叧绔彛 + * @return + */ + public String getGatewayPort() { + List<ServiceInstance> instances = discoveryClient.getInstances("ubcs-gateway"); + if (!instances.isEmpty()) { + ServiceInstance gatewayInstance = instances.get(0); + return String.valueOf(gatewayInstance.getPort()); + } + return "80"; + } /** * 鍏嶅瘑鐧诲綍 @@ -32,7 +53,7 @@ @Override public boolean passwordFreeLogin(String account) { // 鍏嶅瘑鐧诲綍鎺ュ彛鍦板潃 - String loginUrl = "http://ubcs-auth/auth/login"; + String loginUrl = "http://localhost:"+this.getGatewayPort()+"/ubcs-auth/oauth/passwordFreeLogin?username=admin&grant_type=captcha&scope=all&type=account"; // 璁剧疆璇锋眰澶� HttpHeaders headers = new HttpHeaders(); @@ -42,13 +63,9 @@ MultiValueMap<String,String> bodyParams = new LinkedMultiValueMap<String,String>(); bodyParams.add("account",account); - // 鍒涘缓璇锋眰瀹炰綋 - HttpEntity<MultiValueMap<String, String>> requestEntity = new HttpEntity<>(bodyParams, headers); - // 鍙戦�丳OST璇锋眰 - ResponseEntity<String> responseEntity = restTemplate.exchange(loginUrl, HttpMethod.POST, requestEntity, String.class); - String responseBody = responseEntity.getBody(); - + String responseBody = HttpUtils.post(loginUrl, bodyParams); + System.out.println(responseBody); //鎷垮埌鍝嶅簲浣撳皢token瀛樺叆鍒皉edis涓紝浠ccount浣滀负瀛樺偍鐨刱ey // 瑙f瀽鍝嶅簲浣撹幏鍙栦护鐗� -- Gitblit v1.9.3