From b0dea11271108564632bd83e7c225be5b3817248 Mon Sep 17 00:00:00 2001 From: 田源 <lastanimals@163.com> Date: 星期三, 13 九月 2023 16:46:30 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClassifyValueServiceImpl.java | 26 Source/UBCS/ubcs-auth/src/main/java/com/vci/ubcs/auth/endpoint/BladeTokenEndPoint.java | 22 + Source/UBCS-WEB/src/components/code-dialog-page/cloneRuleDialog.vue | 1 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CodeClassifyValueMapper.java | 2 Source/UBCS/ubcs-codeApply/src/main/resources/properties/conf.properties | 3 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/UniversalInterfaceImpl.java | 118 ++++-- Source/UBCS/ubcs-codeApply/src/main/java/com/vci/rmip/code/client/codeapply/Apply410/CodeApplyPanelFor410.java | 15 Source/UBCS/ubcs-codeApply/src/main/java/com/vci/rmip/code/client/codeapply/Apply410/CodeApplyFor410MainPanel.java | 114 +++++- Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/CodeClassifyValueVO.java | 14 Source/UBCS/ubcs-codeApply/src/main/java/com/vci/rmip/code/client/codeapply/Apply410/RMDataReferTempDialogActionListener.java | 8 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/PasswordFreeLoginServiceImpl.java | 33 + Source/UBCS-WEB/src/components/code-dialog-page/referConfigCrudDialog.vue | 1 Source/UBCS/ubcs-auth/src/main/java/com/vci/ubcs/auth/endpoint/PwdFreeLoginEndpoint.java | 95 +++++ Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/config/WebConfig.java | 21 + Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/web/pagemodel/Tree.java | 1 Source/UBCS-WEB/src/components/code-dialog-page/cloneOtherBasicSecDialog.vue | 1 Source/UBCS/ubcs-codeApply/pom.xml | 18 + 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/MdmIOServiceImpl.java | 38 + Source/UBCS-WEB/src/components/code-dialog-page/referBtmTypeCrudDialog.vue | 1 Source/UBCS/ubcs-codeApply/src/main/java/com/vci/rmip/code/client/codeapply/Apply410/object/IPage.java | 85 ++-- Source/UBCS-WEB/src/components/refer/vciWebReferDefalut.vue | 13 Source/UBCS/ubcs-codeApply/src/main/java/com/vci/rmip/code/client/codeapply/Apply410/CodeApplyPanelFor410ActionListener.java | 38 ++ Source/UBCS-WEB/src/components/code-dialog-page/referConfigFormDialog.vue | 1 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/CodeApplySwingController.java | 11 Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CodeCLassifyMapper.xml | 7 Source/UBCS/ubcs-auth/src/main/java/com/vci/ubcs/auth/config/BladeResourceServerConfiguration.java | 1 Source/UBCS/ubcs-codeApply/src/main/java/com/vci/rmip/code/client/codeapply/Apply410/CodeApplyFor410SearchProvider.java | 15 Source/UBCS/ubcs-codeApply/src/main/java/com/vci/rmip/code/client/codeapply/Apply410/object/Page.java | 37 +- Source/UBCS-WEB/src/components/code-dialog-page/referSelectBtmAttrDialog.vue | 1 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/MdmEngineService.java | 8 Source/UBCS-WEB/src/components/refer/vciWebReferTable.vue | 12 Source/UBCS/ubcs-codeApply/src/main/java/com/vci/rmip/code/client/codeapply/Apply410/object/OrderItem.java | 16 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmEngineServiceImpl.java | 35 + Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CodeClassifyValueMapper.xml | 3 Source/UBCS-WEB/src/App.vue | 5 Source/UBCS-WEB/src/components/code-dialog-page/formulaEditor.vue | 1 Source/UBCS/ubcs-codeApply/src/main/java/com/vci/rmip/code/client/codeapply/Apply410/CodeApplyFor410Dialog.java | 33 + Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeRuleServiceImpl.java | 17 Source/UBCS/ubcs-codeApply/src/main/java/com/vci/rmip/code/client/codeapply/Apply410/CodeDataMainPanelDataProvider.java | 23 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/PasswordFreeLoginController.java | 33 + Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CodeClassifyMapper.java | 8 42 files changed, 723 insertions(+), 240 deletions(-) diff --git a/Source/UBCS-WEB/src/App.vue b/Source/UBCS-WEB/src/App.vue index ea73e65..916c298 100644 --- a/Source/UBCS-WEB/src/App.vue +++ b/Source/UBCS-WEB/src/App.vue @@ -29,7 +29,10 @@ margin-bottom: 0; } .avue-dialog .el-dialog__body { - margin-bottom: 10px + margin-bottom: 40px +} +.avue-dialog__footer{ + z-index: 1000; } .avue-crud__pagination { padding: 10px 0 2px 20px; diff --git a/Source/UBCS-WEB/src/components/code-dialog-page/cloneOtherBasicSecDialog.vue b/Source/UBCS-WEB/src/components/code-dialog-page/cloneOtherBasicSecDialog.vue index 5a85239..2338530 100644 --- a/Source/UBCS-WEB/src/components/code-dialog-page/cloneOtherBasicSecDialog.vue +++ b/Source/UBCS-WEB/src/components/code-dialog-page/cloneOtherBasicSecDialog.vue @@ -1,5 +1,6 @@ <template> <el-dialog + :close-on-click-modal="false" :visible.sync="cloneOtherCodeRuleSettingBox" append-to-body class="avue-dialog avue-dialog--top" diff --git a/Source/UBCS-WEB/src/components/code-dialog-page/cloneRuleDialog.vue b/Source/UBCS-WEB/src/components/code-dialog-page/cloneRuleDialog.vue index 897c547..c58274e 100644 --- a/Source/UBCS-WEB/src/components/code-dialog-page/cloneRuleDialog.vue +++ b/Source/UBCS-WEB/src/components/code-dialog-page/cloneRuleDialog.vue @@ -1,5 +1,6 @@ <template> <el-dialog + :close-on-click-modal="false" :visible.sync="cloneSettingBox" append-to-body class="avue-dialog avue-dialog--top" diff --git a/Source/UBCS-WEB/src/components/code-dialog-page/formulaEditor.vue b/Source/UBCS-WEB/src/components/code-dialog-page/formulaEditor.vue index 965e500..14c0691 100644 --- a/Source/UBCS-WEB/src/components/code-dialog-page/formulaEditor.vue +++ b/Source/UBCS-WEB/src/components/code-dialog-page/formulaEditor.vue @@ -3,6 +3,7 @@ <el-dialog title="鍏紡缂栬緫妗�" append-to-body + :close-on-click-modal="false" :visible.sync="isShowformulaEdit" @close="closeFormulaEdit" width="75%" diff --git a/Source/UBCS-WEB/src/components/code-dialog-page/referBtmTypeCrudDialog.vue b/Source/UBCS-WEB/src/components/code-dialog-page/referBtmTypeCrudDialog.vue index 14ea0a5..8e21b44 100644 --- a/Source/UBCS-WEB/src/components/code-dialog-page/referBtmTypeCrudDialog.vue +++ b/Source/UBCS-WEB/src/components/code-dialog-page/referBtmTypeCrudDialog.vue @@ -1,5 +1,6 @@ <template> <el-dialog + :close-on-click-modal="false" title="涓恒�愬弬鐓у紩鐢ㄧ殑涓氬姟绫诲瀷銆戦�夊彇鍊�" append-to-body :visible.sync="referBtmDialogParams.isShowDialog" diff --git a/Source/UBCS-WEB/src/components/code-dialog-page/referConfigCrudDialog.vue b/Source/UBCS-WEB/src/components/code-dialog-page/referConfigCrudDialog.vue index 0d5e6f2..5b0c3f7 100644 --- a/Source/UBCS-WEB/src/components/code-dialog-page/referConfigCrudDialog.vue +++ b/Source/UBCS-WEB/src/components/code-dialog-page/referConfigCrudDialog.vue @@ -1,5 +1,6 @@ <template> <el-dialog + :close-on-click-modal="false" title="閫夋嫨鍙傜収閰嶇疆" append-to-body :visible.sync="isShowReferConfigCrud" diff --git a/Source/UBCS-WEB/src/components/code-dialog-page/referConfigFormDialog.vue b/Source/UBCS-WEB/src/components/code-dialog-page/referConfigFormDialog.vue index 134682f..9e75512 100644 --- a/Source/UBCS-WEB/src/components/code-dialog-page/referConfigFormDialog.vue +++ b/Source/UBCS-WEB/src/components/code-dialog-page/referConfigFormDialog.vue @@ -1,6 +1,7 @@ <template> <!-- 绗簩灞傚璇濇,灞炴�х爜娈碉紝鍏紡缂栬緫妗嗗脊绐� --> <el-dialog + :close-on-click-modal="false" title="鍙傜収閰嶇疆" append-to-body :visible.sync="isShowReferConfigForm" diff --git a/Source/UBCS-WEB/src/components/code-dialog-page/referSelectBtmAttrDialog.vue b/Source/UBCS-WEB/src/components/code-dialog-page/referSelectBtmAttrDialog.vue index 10c166d..ef651fa 100644 --- a/Source/UBCS-WEB/src/components/code-dialog-page/referSelectBtmAttrDialog.vue +++ b/Source/UBCS-WEB/src/components/code-dialog-page/referSelectBtmAttrDialog.vue @@ -1,5 +1,6 @@ <template> <el-dialog + :close-on-click-modal="false" :title="options.title" append-to-body :visible.sync="crudParams.isShowDialog" diff --git a/Source/UBCS-WEB/src/components/refer/vciWebReferDefalut.vue b/Source/UBCS-WEB/src/components/refer/vciWebReferDefalut.vue index 66e133e..4427e05 100644 --- a/Source/UBCS-WEB/src/components/refer/vciWebReferDefalut.vue +++ b/Source/UBCS-WEB/src/components/refer/vciWebReferDefalut.vue @@ -5,8 +5,8 @@ :visible.sync="visible" top="0" class="avue-dialog avue-dialog--top" - :width="options.width|| '80%'"> - + :width="options.width|| '80%'" + :height="options.height|| 'auto'"> <avue-crud :option="option" :table-loading="loading" :data="data" @@ -247,7 +247,7 @@ this.selectionList.forEach((item,_index) =>{ if(isMutiValue){ var valueFieldArray = _that.props.value.split(","); - valueFieldArray.forEach((_itemField,_indexFiel)=>{ + valueFieldArray.forEach((_itemField,_indexField)=>{ value.push( (item[_itemField] || item['data'][_itemField]) + (_that.referConfig.valueSep?_that.referConfig.valueSep:' ')); }) }else { @@ -313,14 +313,15 @@ } } getList(Object.assign(params,this.params,this.query, query),page.currentPage, page.pageSize, this.url, this.method).then(res => { + let data=[] if(res.data.records){ - this.data = res.data.records + data = res.data.records this.page.total=res.data.total ; }else{ - this.data = res.data.data.records; + data = res.data.data.records; this.page.total=res.data.data.total; } - this.data=this.data.map(item => { + this.data=data.map(item => { item.data=item.data || {} return { ...item diff --git a/Source/UBCS-WEB/src/components/refer/vciWebReferTable.vue b/Source/UBCS-WEB/src/components/refer/vciWebReferTable.vue index 70ccbae..7bc31f2 100644 --- a/Source/UBCS-WEB/src/components/refer/vciWebReferTable.vue +++ b/Source/UBCS-WEB/src/components/refer/vciWebReferTable.vue @@ -5,7 +5,8 @@ :visible.sync="visible" top="0" class="avue-dialog avue-dialog--top" - :width="options.width|| '80%'"> + :width="options.width|| '80%'" + :height="options.height|| 'auto'"> <avue-crud :option="option" :table-loading="loading" :data="data" @@ -305,7 +306,7 @@ this.selectionList.forEach((item,_index) =>{ if(isMutiValue){ var valueFieldArray = _that.props.value.split(","); - valueFieldArray.forEach((_itemField,_indexFiel)=>{ + valueFieldArray.forEach((_itemField,_indexField)=>{ value.push( (item[_itemField] || item['data'][_itemField]) + (_that.referConfig.valueSep?_that.referConfig.valueSep:' ')); }) }else { @@ -371,14 +372,15 @@ } } getList(Object.assign(params,this.params,this.query, query),page.currentPage, page.pageSize, this.url).then(res => { + let data=[] if(res.data.records){ - this.data = res.data.records + data = res.data.records this.page.total=res.data.total ; }else{ - this.data = res.data.data.records; + data = res.data.data.records; this.page.total=res.data.data.total; } - this.data=this.data.map(item => { + this.data=data.map(item => { item.data=item.data || {} return { ...item 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..df1a80c --- /dev/null +++ b/Source/UBCS/ubcs-auth/src/main/java/com/vci/ubcs/auth/endpoint/PwdFreeLoginEndpoint.java @@ -0,0 +1,95 @@ +//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(); +// return null; +// } +// +// 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); +// return null; +// } + +//} diff --git a/Source/UBCS/ubcs-codeApply/pom.xml b/Source/UBCS/ubcs-codeApply/pom.xml index 28cb216..54e1c4c 100644 --- a/Source/UBCS/ubcs-codeApply/pom.xml +++ b/Source/UBCS/ubcs-codeApply/pom.xml @@ -12,7 +12,9 @@ <vciplt.version>2022.RELEASE</vciplt.version> <old.spring.version>3.2.0.RELEASE</old.spring.version> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> - <java.version>1.8</java.version> + <java.version>1.7</java.version> + <maven.compiler.source>7</maven.compiler.source> + <maven.compiler.target>7</maven.compiler.target> </properties> <artifactId>ubcs-codeApply</artifactId> <dependencies> @@ -66,4 +68,18 @@ <url>http://nexus.vci-tech.com:9000/repository/maven-snapshots/</url> </snapshotRepository> </distributionManagement> +<!-- <build>--> +<!-- <plugins>--> +<!-- <plugin>--> +<!-- <groupId>org.apache.maven.plugins</groupId>--> +<!-- <artifactId>maven-compiler-plugin</artifactId>--> +<!-- <version>3.10.1</version>--> +<!-- <configuration>--> +<!-- <source>1.7</source>--> +<!-- <target>1.7</target>--> +<!-- </configuration>--> +<!-- </plugin>--> +<!-- </plugins>--> +<!-- </build>--> + </project> diff --git a/Source/UBCS/ubcs-codeApply/src/main/java/com/vci/rmip/code/client/codeapply/Apply410/CodeApplyFor410Dialog.java b/Source/UBCS/ubcs-codeApply/src/main/java/com/vci/rmip/code/client/codeapply/Apply410/CodeApplyFor410Dialog.java index 1e32400..f69c4b8 100644 --- a/Source/UBCS/ubcs-codeApply/src/main/java/com/vci/rmip/code/client/codeapply/Apply410/CodeApplyFor410Dialog.java +++ b/Source/UBCS/ubcs-codeApply/src/main/java/com/vci/rmip/code/client/codeapply/Apply410/CodeApplyFor410Dialog.java @@ -32,7 +32,7 @@ private Map<String, String> attrNameAndValMap = new LinkedHashMap();//瀛樺偍灞炴�у悕绉帮紙鍖呭惈鍐呴儴鍚嶇О鍜屽閮ㄥ悕绉帮級鍜屽搴旂殑鍊� private String tokenUrl= ConfigUtils.getConfigValue("410.code.token.url","http://127.0.0.1:37000/ubcs-auth/oauth/token"); private String[] fields; - private String[] Values; + private String[] values; /** * 瀛樺偍鍒嗙被鐨凪ap,key:鍒嗙被鍚嶇О锛寁alue锛氬垎绫诲�� */ @@ -50,6 +50,9 @@ public CodeApplyFor410Dialog(JDialog dialog, String clsfName, String deptName) { this(dialog, "pdmUser", clsfName, deptName,new String[]{}); } + public CodeApplyFor410Dialog(JDialog dialog, String clsfName, String deptName,String[] fields,String[] values) { + this(dialog, "pdmUser", clsfName, deptName,new String[]{},fields,values); + } public CodeApplyFor410Dialog(Frame frame, String clsfName, String deptName,String[] fields,String[] values){ this.setModal(true); parentComponet = frame; @@ -57,7 +60,7 @@ this.clsfName = clsfName; this.deptName = deptName; this.fields=fields; - this.Values=values; + this.values=values; //this.libName = libName; init(); @@ -89,6 +92,23 @@ this.deptName = deptName; // this.libName = libName; + init(); + } catch (Exception e) { + e.printStackTrace(); + } + } + + public CodeApplyFor410Dialog(JDialog dialog, String userName, String clsfName, String deptName, String[] libName,String[] fields,String[] values) { + super(dialog, true); + VCISwingUtil.setClientMainFrame(new Frame()); + try { + this.setModal(true); + parentComponet = dialog; + this.userName = userName; + this.clsfName = clsfName; + this.deptName = deptName; + this.fields = fields; + this.values = values; init(); } catch (Exception e) { e.printStackTrace(); @@ -152,7 +172,14 @@ private void bulidPal() throws Exception { this.setDefaultCloseOperation(DISPOSE_ON_CLOSE); this.setTitle("浠g爜鐢宠"); - mainPal = new CodeApplyPanelFor410(this,tokenUserObject, true, clsfName, deptName,libName); + Map<String , String> displayValues = new HashMap<>(); + if(fields != null && fields.length > 0 && values !=null && values.length > 0){ + for (int i = 0; i < fields.length; i++) { + displayValues.put(fields[i] , values[i]); + } + } + + mainPal = new CodeApplyPanelFor410(this,tokenUserObject, true, clsfName, deptName,libName,displayValues); VCIJPanel btnPal = new VCIJPanel(); btnPal.add(okBtn); diff --git a/Source/UBCS/ubcs-codeApply/src/main/java/com/vci/rmip/code/client/codeapply/Apply410/CodeApplyFor410MainPanel.java b/Source/UBCS/ubcs-codeApply/src/main/java/com/vci/rmip/code/client/codeapply/Apply410/CodeApplyFor410MainPanel.java index c648cc4..69e582e 100644 --- a/Source/UBCS/ubcs-codeApply/src/main/java/com/vci/rmip/code/client/codeapply/Apply410/CodeApplyFor410MainPanel.java +++ b/Source/UBCS/ubcs-codeApply/src/main/java/com/vci/rmip/code/client/codeapply/Apply410/CodeApplyFor410MainPanel.java @@ -32,7 +32,6 @@ import java.util.*; import java.util.List; import java.util.regex.Pattern; -import java.util.stream.Collectors; public class CodeApplyFor410MainPanel extends VCIJPanel { @@ -84,8 +83,12 @@ private StringBuffer tempStr= new StringBuffer();//鍙彉鐮佹鐨勫��; private String levelRes=""; private String[] specialSecVals = new String[0]; - private RMDataTransmitObject transmitForRMData = null; + private RMDataTransmitObject transmitForRMData = new RMDataTransmitObject(); private CodeRuleVO codeRuleVO=null; + /** + * 瀛樺偍灞炴�у拰鍊肩殑Map,key,鐢ㄤ簬榛樿鍊肩殑鏄剧ず + */ + private Map<String,String> displayValues = new HashMap<>(); /** * 灞炴�D涓庡睘鎬у搴旂殑鎺т欢涔嬮棿鐨勬槧灏凪AP */ @@ -117,11 +120,12 @@ this.currentCodeClassifyTemplateVO=currentCodeClassifyTemplateVO; } - public CodeApplyFor410MainPanel(TransmitTreeObject transTreeObject,TokenUserObject tokenUserObject,String deptName,CodeClassifyTemplateVO currentCodeClassifyTemplateVO) { + public CodeApplyFor410MainPanel(TransmitTreeObject transTreeObject,TokenUserObject tokenUserObject,String deptName,CodeClassifyTemplateVO currentCodeClassifyTemplateVO,Map displayValues) { this.transTreeObject = transTreeObject; this.tokenUserObject = tokenUserObject; this.deptName = deptName; this.currentCodeClassifyTemplateVO=currentCodeClassifyTemplateVO; + this.displayValues = displayValues; } /** @@ -163,8 +167,10 @@ } } }else{ - VCIOptionPane.showMessage(this,r.getMsg()); - } + if(!r.getMsg().equals("褰撳墠涓婚搴撳垎绫伙紝浠ュ強瀹冪殑鎵�鏈夌殑涓婄骇鍒嗙被閮芥病鏈夎缃紪鐮佽鍒�")){ + VCIOptionPane.showMessage(this,r.getMsg()); + } + } /**鍔犺浇瑙勫垯瀵瑰簲鐨勭爜娈典俊鎭�**/ if(codeRuleVO!=null){ List<CodeBasicSecVO> codeBasicSecVOList=codeRuleVO.getSecVOList(); @@ -590,10 +596,10 @@ if(codeClassifyValueList.size()>1) { secCombo.addItem(new CodeClassifyValue()); } - codeClassifyValueList.stream().forEach(codeClassifyValue -> { + for (CodeClassifyValue codeClassifyValue : codeClassifyValueList) { secCombo.addItem(codeClassifyValue); valueOidList.add(codeClassifyValue.getOid()); - }); + } } secIdTOListValueOidMap.put(secObj.getOid(),valueOidList); /**浠g爜椤逛笅鎷変簨浠�**/ @@ -632,11 +638,11 @@ if(fixedValueVOList.size() >1) { secCombo.addItem(new CodeFixedValue()); } - fixedValueVOList.stream().forEach(codeFixedValueVO -> { + for (CodeFixedValueVO codeFixedValueVO : fixedValueVOList) { CodeFixedValue codeFixedValue=new CodeFixedValue(); BeanUtilForVCI.copyPropertiesIgnoreCase(codeFixedValueVO,codeFixedValue); secCombo.addItem(codeFixedValue); - }); + } /**褰撶郴缁熼�夋嫨鐨勬槸鎸囧畾鐮佹鍊兼椂锛岀粍鍒唬鍙风殑鐮佹绯荤粺涓嶆樉绀� Begin**/ /*FixCodeValObject selObj = (FixCodeValObject) secCombo.getSelectedItem(); if(isSpecialRuleFlag && (secObj.getName().equals(specialControlSecName) && secValMap.containsKey(selObj.getValue())) || secValMap.containsKey(getControlSecSelectValue())) { @@ -742,10 +748,16 @@ transmit.setRmTypeObject(codeClassify); if(currentCodeClassifyTemplateVO!=null) { transmit.setTemplateId(templateId); - Map<String, CodeClassifyTemplateAttrVO> tempPropObjMapsByInnerName = currentCodeClassifyTemplateVO.getAttributes().stream().collect(Collectors.toMap(s -> s.getId().toLowerCase(Locale.ROOT), t -> t)); + Map<String, CodeClassifyTemplateAttrVO> tempPropObjMapsByInnerName = new HashMap<>(); + for (CodeClassifyTemplateAttrVO attribute : currentCodeClassifyTemplateVO.getAttributes()) { + tempPropObjMapsByInnerName.put(attribute.getId().toLowerCase(Locale.ROOT),attribute); + } transmit.setClassifyCode(codeClassify.getId()); transmit.setTempPropObjMapsByInnerName(tempPropObjMapsByInnerName); - Map<String, CodeClassifyTemplateAttrVO> tempPropObjsMap = currentCodeClassifyTemplateVO.getAttributes().stream().collect(Collectors.toMap(s -> s.getOid().toLowerCase(Locale.ROOT), t -> t)); + Map<String, CodeClassifyTemplateAttrVO> tempPropObjsMap = new HashMap<>(); + for (CodeClassifyTemplateAttrVO attribute : currentCodeClassifyTemplateVO.getAttributes()) { + tempPropObjsMap.put(attribute.getOid().toLowerCase(Locale.ROOT),attribute); + } transmit.setTempPropObjsMap(tempPropObjsMap); transmit.setTemplateObject(currentCodeClassifyTemplateVO); transmit.setTempPropObjsList(this.currentCodeClassifyTemplateVO.getAttributes()); @@ -785,7 +797,7 @@ if (index >= realAttrs.length) { break; } - CodeClassifyTemplateAttrVO attrObj = realAttrs[index]; + final CodeClassifyTemplateAttrVO attrObj = realAttrs[index]; /***濡傛灉妯℃澘閰嶇疆浜嗗紩鐢ㄦā鏉匡紝灞炴�у悕绉板垪琛ㄦ坊鍔犻摼鎺ヨ繘琛屽鐞� BEGIN**/ //ADD BY liujw @@ -951,10 +963,19 @@ for (int i = 0; i < objs.length; i++) { objs[i] = new AttrRangObjectWarper(keyValues[i]); model.addElement(objs[i]); - specMap.put(objs[i].toString(), comboBoxIndex++); } cbx.setModel(model); + if(displayValues.containsKey(attrObj.getId())){ +// cbx.setSelectedItem(displayValues.get(attrObj.getId())); +// cbx.setSelectedIndex(3); + for (int i = 0; i < objs.length; i++) { + if(objs[i].getKeyValue().getKey().equals(displayValues.get(attrObj.getId()))){ + cbx.setSelectedIndex(i); + } + } + cbx.setEnabled(false); + } compt = cbx; } } else if(StringUtils.isNotBlank(attrObj.getReferConfig())){//鍙傜収鐨勯渶瑕佽缃垚涓嬫媺妗嗭紝骞朵笖鍙 @@ -968,34 +989,69 @@ cbx.setModel(model); compt = cbx; } else { // 涓嶅瓨鍦ㄥ彇鍊艰寖鍥村垯鎸夌被鍨嬬敓鎴愪笉鍚岀殑鎺т欢 - if (attrObj.getAttributeDataType().equals(VciFieldTypeEnum.VTBoolean)) { // Boolean绫诲瀷 + if (attrObj.getAttributeDataType().equals(VciFieldTypeEnum.VTBoolean.toString())) { // Boolean绫诲瀷 VCIJComboBox cbx = new VCIJComboBox(); DefaultComboBoxModel model = new DefaultComboBoxModel(); model.addElement("0"); model.addElement("1"); cbx.setModel(model); + if(displayValues.containsKey(attrObj.getId())){ + cbx.setSelectedIndex(Integer.parseInt(displayValues.get(attrObj.getId()))); + cbx.setEnabled(false); + return cbx; + } compt = cbx; - } else if (attrObj.getAttributeDataType().equals(VciFieldTypeEnum.VTDate)) { // 鏃ユ湡绫诲瀷 - compt = new VCIJCalendarPanel("yyyy-MM-dd", - attrObj.getRequireFlag().equals("true"), true, false); - } else if (attrObj.getAttributeDataType().equals(VciFieldTypeEnum.VTDateTime)) { // 鏃ユ湡绫诲瀷 - compt = new VCIJCalendarPanel("yyyy-MM-dd HH:mm:ss", + } else if (attrObj.getAttributeDataType().equals(VciFieldTypeEnum.VTDate.toString())) { // 鏃ユ湡绫诲瀷 + VCIJCalendarPanel aTrue = new VCIJCalendarPanel("yyyy-MM-dd", attrObj.getRequireFlag().equals("true"), true, false); - }else if (attrObj.getAttributeDataType().equals(VciFieldTypeEnum.VTTime)) { // 鏃ユ湡绫诲瀷 - compt = new VCIJCalendarPanel("HH:mm:ss", + if(displayValues.containsKey(attrObj.getId())){ + aTrue.setDateString(displayValues.get(attrObj.getId())); + aTrue.setEnabled(false); + return aTrue; + } + compt = aTrue; + } else if (attrObj.getAttributeDataType().equals(VciFieldTypeEnum.VTDateTime.toString())) { // 鏃ユ湡绫诲瀷 + VCIJCalendarPanel aTrue = new VCIJCalendarPanel("yyyy-MM-dd HH:mm:ss", attrObj.getRequireFlag().equals("true"), true, false); + if(displayValues.containsKey(attrObj.getId())){ + aTrue.setDateString(displayValues.get(attrObj.getId())); + aTrue.setEnabled(false); + return aTrue; + } + compt = aTrue; + }else if (attrObj.getAttributeDataType().equals(VciFieldTypeEnum.VTTime.toString())) { // 鏃ユ湡绫诲瀷 + VCIJCalendarPanel aTrue = new VCIJCalendarPanel("HH:mm:ss", + attrObj.getRequireFlag().equals("true"), true, false); + if(displayValues.containsKey(attrObj.getId())){ + aTrue.setDateString(displayValues.get(attrObj.getId())); + aTrue.setEnabled(false); + return aTrue; + } + compt = aTrue; } - else if (attrObj.getAttributeDataType().equals(VciFieldTypeEnum.VTDouble)||attrObj.getAttributeDataType().equals(VciFieldTypeEnum.VTLong)) { // Real绫诲瀷 + else if (attrObj.getAttributeDataType().equals(VciFieldTypeEnum.VTDouble.toString())||attrObj.getAttributeDataType().equals(VciFieldTypeEnum.VTLong.toString())) { // Real绫诲瀷 RealTextField txt = new RealTextField(""); txt.setRequired(attrObj.getRequireFlag().equals("true")); + if(displayValues.containsKey(attrObj.getId())){ + txt.setText(displayValues.get(attrObj.getId())); + txt.setEditable(false); + } compt = txt; - } else if (attrObj.getAttributeDataType().equals(VciFieldTypeEnum.VTInteger)) { // Integer绫诲瀷 + } else if (attrObj.getAttributeDataType().equals(VciFieldTypeEnum.VTInteger.toString())) { // Integer绫诲瀷 IntegerTextField txt = new IntegerTextField(""); txt.setRequired(attrObj.getRequireFlag().equals("true")); + if(displayValues.containsKey(attrObj.getId())){ + txt.setText(displayValues.get(attrObj.getId())); + txt.setEditable(false); + } compt = txt; } else{ VCIJTextField txt = new VCIJTextField(this,attrObj.getRequireFlag().equals("true")); + if(displayValues.containsKey(attrObj.getId())){ + txt.setText(displayValues.get(attrObj.getId())); + txt.setEditable(false); + } compt = txt; textCompts.add(txt); } @@ -1153,7 +1209,8 @@ private void getComptAttrValue( CodeClassifyTemplateAttrVO tempPropObj, LinkedHashMap<String, JComponent> attrIdToCtrlMaps) { Map<String,String> dataMap=new HashMap<>(); Map<String,String> condtionMap=new HashMap<>(); - attrIdToCtrlMaps.forEach((key,compt)->{ + for(String key: attrIdToCtrlMaps.keySet()){ + JComponent compt = attrIdToCtrlMaps.get(key); String value = ""; if (compt instanceof JTextComponent) { value = ((JTextComponent) compt).getText(); @@ -1170,7 +1227,7 @@ } dataMap.put(key,value); condtionMap.put("dataMap["+key+"]",value); - }); + } condtionMap.put("componentRuleValue",tempPropObj.getComponentRule()); Map<String,String> headerMap=new HashMap<>(); headerMap.put("Blade-Auth",this.tokenUserObject.getAccess_token()); @@ -1263,7 +1320,7 @@ dialog.setVisible(true); } - private void doSearch(VCIJComboxBox comboxBox,CodeBasicSecVO secObj){ + private void doSearch(final VCIJComboxBox comboxBox, CodeBasicSecVO secObj){ if(StringUtils.isBlank(secObj.getReferConfig())){ VCIOptionPane.showMessage(this,"鍙傜収閰嶇疆淇℃伅涓嶆纭�,璇锋牳瀵癸紒"); return; @@ -1552,7 +1609,10 @@ LinkedList<String> listValues = new LinkedList<String>(); // 鍚勫睘鎬х殑绫诲瀷 LinkedList<String> listDataTypes = new LinkedList<String>(); - Map<String,CodeClassifyTemplateAttrVO> codeClassifyTemplateAttrVOMap=transmitForRMData.getTempPropObjsList().stream().collect(Collectors.toMap(s -> s.getId(), t -> t)); + Map<String,CodeClassifyTemplateAttrVO> codeClassifyTemplateAttrVOMap = new HashMap<>(); + for (CodeClassifyTemplateAttrVO codeClassifyTemplateAttrVO : transmitForRMData.getTempPropObjsList()) { + codeClassifyTemplateAttrVOMap.put(codeClassifyTemplateAttrVO.getId(),codeClassifyTemplateAttrVO); + } Iterator<String> keys = attrIdToCtrlMaps.keySet().iterator(); JComponent compt = null; JComponent firstCompt = null; diff --git a/Source/UBCS/ubcs-codeApply/src/main/java/com/vci/rmip/code/client/codeapply/Apply410/CodeApplyFor410SearchProvider.java b/Source/UBCS/ubcs-codeApply/src/main/java/com/vci/rmip/code/client/codeapply/Apply410/CodeApplyFor410SearchProvider.java index ad3d323..ced587b 100644 --- a/Source/UBCS/ubcs-codeApply/src/main/java/com/vci/rmip/code/client/codeapply/Apply410/CodeApplyFor410SearchProvider.java +++ b/Source/UBCS/ubcs-codeApply/src/main/java/com/vci/rmip/code/client/codeapply/Apply410/CodeApplyFor410SearchProvider.java @@ -13,6 +13,7 @@ import com.vci.rmip.code.client.codeapply.Apply410.object.R; import com.vci.rmip.code.client.codeapply.Apply410.utils.HttpUtil; import com.vci.rmip.code.client.codeapply.Apply410.utils.ListUtil; +import com.vci.ubcs.code.vo.pagemodel.CodeClassifyTemplateAttrVO; import com.vci.ubcs.code.vo.pagemodel.CodeClassifyTemplateVO; import com.vci.rmip.code.client.codeapply.Apply410.utils.ConfigUtils; import com.vci.ubcs.starter.web.util.VciBaseUtil; @@ -36,10 +37,10 @@ CodeClassifyTemplateVO codeClassifyTemplateVO=this.dialog.getOwnerPanel().getCurrentCodeClassifyTemplateVO(); if(codeClassifyTemplateVO!=null){ if(!CollectionUtils.isEmpty(codeClassifyTemplateVO.getAttributes())){ - codeClassifyTemplateVO.getAttributes().stream().forEach(codeClassifyTemplateAttrVO -> { + for (CodeClassifyTemplateAttrVO codeClassifyTemplateAttrVO : codeClassifyTemplateVO.getAttributes()) { fieldList.add(codeClassifyTemplateAttrVO.getId()); nameList.add(codeClassifyTemplateAttrVO.getName()); - }); + } } } fields = fieldList.toArray(new String[]{}); @@ -61,11 +62,11 @@ String data=""; for (String field:fields){ if(defaultDataMap.containsKey(field+"_text")){ - data=defaultDataMap.getOrDefault(field+"_text",""); + data=defaultDataMap.get(field+"_text") ; }else if(defaultDataMap.containsKey(field+"Text")){ - data=defaultDataMap.getOrDefault(field+"Text",""); + data=defaultDataMap.get(field+"Text") ; }else{ - data=defaultDataMap.getOrDefault(field,""); + data=defaultDataMap.get(field); } res.setPropertyValue(getColumns()[i++], data); @@ -108,11 +109,11 @@ List<Map> dataList= dataGrid.getData(); List<BaseModel> hostInfos=new ArrayList<>(); //List<BaseModel> hostInfos= ListUtil.listMapParseListObj(dataList, BaseModel.class); - dataList.stream().forEach(map->{ + for (Map map : dataList) { BaseModel baseModel= ListUtil.mapParseJavaBean(map,BaseModel.class); baseModel.setData(map); hostInfos.add(baseModel); - }); + } //List<BaseModel> hostInfos = (List<BaseModel>) dataList.stream().map(entity -> JSONUtil.toBean(JSONUtil.parseObj(entity), BaseModel.class)).collect(Collectors.toList()); diff --git a/Source/UBCS/ubcs-codeApply/src/main/java/com/vci/rmip/code/client/codeapply/Apply410/CodeApplyPanelFor410.java b/Source/UBCS/ubcs-codeApply/src/main/java/com/vci/rmip/code/client/codeapply/Apply410/CodeApplyPanelFor410.java index 5e0fa87..c63e3ee 100644 --- a/Source/UBCS/ubcs-codeApply/src/main/java/com/vci/rmip/code/client/codeapply/Apply410/CodeApplyPanelFor410.java +++ b/Source/UBCS/ubcs-codeApply/src/main/java/com/vci/rmip/code/client/codeapply/Apply410/CodeApplyPanelFor410.java @@ -59,6 +59,10 @@ * 瀛樺偍灞炴�у拰鍊肩殑Map,key:灞炴�у悕绉帮紝value锛氬睘鎬у�� */ private String deptName = null; + /** + * 瀛樺偍灞炴�у拰鍊肩殑Map,key,鐢ㄤ簬榛樿鍊肩殑鏄剧ず + */ + private Map displayValues = new HashMap<String,String>(); private String[] libName = new String[]{};//浠g爜椤瑰悕绉� private VCIBaseTree leftTree = null; @@ -78,7 +82,7 @@ * @param deptName * @param libName */ - public CodeApplyPanelFor410(CodeApplyFor410Dialog owner , TokenUserObject tokenUserObject, boolean isIntegrate, String clsfName, String deptName, String[] libName){ + public CodeApplyPanelFor410(CodeApplyFor410Dialog owner , TokenUserObject tokenUserObject, boolean isIntegrate, String clsfName, String deptName, String[] libName,Map displayValues){ this.tokenUserObject = tokenUserObject; this.owner =owner; rightMainPanel = new CodeApplyFor410MainPanel(transmitTreeObject,tokenUserObject,getCurrentCodeClassifyTemplateVO()); @@ -86,6 +90,7 @@ this.clsfName = clsfName; this.deptName = deptName; this.libName = libName; + this.displayValues = displayValues; init(); initActionListener(); } @@ -188,9 +193,9 @@ VCIOptionPane.showMessage(this,r.getMsg()); } if(!CollectionUtils.isEmpty(codeClassifyList)){ - codeClassifyList.stream().forEach(codeClassify -> { + for (CodeClassify codeClassify : codeClassifyList) { codeItemCombo.addItem(codeClassify); - }); + } codeItemCombo.setSelectedIndex(0); } initLeftPanel(); @@ -293,7 +298,7 @@ initBtnStatus(res); } } - rightMainPanel = new CodeApplyFor410MainPanel(transmitTreeObject,tokenUserObject,deptName,getCurrentCodeClassifyTemplateVO()); + rightMainPanel = new CodeApplyFor410MainPanel(transmitTreeObject,tokenUserObject,deptName,getCurrentCodeClassifyTemplateVO(),displayValues); scrollPane.setViewportView(rightMainPanel); rightMainPanel.buildMainPanel(1); int location = jspLeftToRight.getDividerLocation(); @@ -358,7 +363,7 @@ transmitTreeObject.setCurrentTreeNode(selectedTreeNode); if(selectedTreeNode.isRoot() && selectedTreeNode.getObj() instanceof String) return; scrollPane = new JScrollPane(); - rightMainPanel = new CodeApplyFor410MainPanel(transmitTreeObject,tokenUserObject,deptName,getCurrentCodeClassifyTemplateVO()); + rightMainPanel = new CodeApplyFor410MainPanel(transmitTreeObject,tokenUserObject,deptName,getCurrentCodeClassifyTemplateVO(),displayValues); scrollPane.setViewportView(rightMainPanel); rightMainPanel.buildMainPanel(1); VCIJPanel rightPanel = new VCIJPanel(); diff --git a/Source/UBCS/ubcs-codeApply/src/main/java/com/vci/rmip/code/client/codeapply/Apply410/CodeApplyPanelFor410ActionListener.java b/Source/UBCS/ubcs-codeApply/src/main/java/com/vci/rmip/code/client/codeapply/Apply410/CodeApplyPanelFor410ActionListener.java index d262684..cf9b98f 100644 --- a/Source/UBCS/ubcs-codeApply/src/main/java/com/vci/rmip/code/client/codeapply/Apply410/CodeApplyPanelFor410ActionListener.java +++ b/Source/UBCS/ubcs-codeApply/src/main/java/com/vci/rmip/code/client/codeapply/Apply410/CodeApplyPanelFor410ActionListener.java @@ -25,6 +25,7 @@ private LinkedHashMap<String, Runnable> actionMaps = new LinkedHashMap<String, Runnable>(); boolean codeAlreadExist = false; private String url= ConfigUtils.getConfigValue("410.code.url","http://127.0.0.1:36014/codeApplySwingController"); + private String classifyGroupCode= ConfigUtils.getConfigValue("410.code.codeApply.classifyGroupCode"); public CodeApplyPanelFor410ActionListener(CodeApplyPanelFor410 owner){ this.owner = owner; this.initActionMap(); @@ -103,12 +104,12 @@ codeOrderDTO.setTemplateOid(codeClassifyTemplateVO.getOid()); codeOrderDTO.setCodeRuleOid(codeRuleVO.getOid()); List<CodeOrderSecDTO> secDTOList=new ArrayList<>(); - keyValueList.stream().forEach(keyValue -> { + for (KeyValue keyValue : keyValueList) { CodeOrderSecDTO codeOrderSecDTO=new CodeOrderSecDTO(); codeOrderSecDTO.setSecOid(keyValue.getKey()); codeOrderSecDTO.setSecValue(keyValue.getValue()); secDTOList.add(codeOrderSecDTO); - }); + } codeOrderDTO.setLcStatus("Released"); codeOrderDTO.setSecDTOList(secDTOList); codeOrderDTO.setData(dataMap); @@ -119,6 +120,9 @@ String code=""; //鏍¢獙鍏抽敭灞炴�у瓨鍦ㄧ殑鏁版嵁鐩存帴杩斿洖缂栫爜 R checkKeyAttrOnOrderR= HttpUtil.sendPost(url+"/checkKeyAttrOnOrderFordatas",object.toString(),headerMap); + //鏌ヨ褰撳墠鐢宠缂栫爜鐨勭被鍨� + R checkGroupCode= HttpUtil.sendGet(url+"/checkGroupCode?oid="+codeClassify.getOid()+ + "&classifyGroupCode="+classifyGroupCode,null,headerMap); if(checkKeyAttrOnOrderR.isSuccess()){ List<Map> list=(List)checkKeyAttrOnOrderR.getData(); if(!CollectionUtils.isEmpty(list)) { @@ -127,6 +131,15 @@ this.owner.getApplyTxt().requestFocusInWindow(); this.owner.getApplyTxt().selectAll(); this.owner.setAttrNameAndValMap(attrNameAndValMap); + if(checkGroupCode.isSuccess()){ + if(checkGroupCode.getData().equals("true")){ + VCIOptionPane.showMessage(this.owner, "褰撳墠鍒嗙被鐨勪紒涓氱紪鐮佷负锛�"+list.get(0).get("GROUPCODE")); + }else{ + VCIOptionPane.showMessage(this.owner, "褰撳墠缂栫爜鍒嗙被鏈壘鍒扮浉搴旂殑闆嗗洟锛岃妫�鏌ワ紒锛�"); + } + }else { + VCIOptionPane.showMessage(this.owner, "杩滅▼璋冪敤澶辫触锛岃閲嶈瘯锛�"); + } return; } } @@ -139,6 +152,22 @@ this.owner.setAttrNameAndValMap(attrNameAndValMap); }else{ VCIOptionPane.showMessage(this.owner,r.getMsg()); + } + if(checkGroupCode.isSuccess()){ + if(checkGroupCode.getData().equals("false")){ + Map<String,String> applyMap = new HashMap<>(); + applyMap.put("oids",codeClassify.getOid()); + applyMap.put("btmName",codeClassify.getBtmname()); + Object applyGroupCodeData = JSONObject.toJSON(applyMap); + R applyResult= HttpUtil.sendPost(url+"/DockingPreApplyCode/applyGroupCode",applyGroupCodeData.toString(),headerMap); + if(!applyResult.isSuccess()){ + VCIOptionPane.showMessage(this.owner, "闆嗗洟鐮佺敵璇峰け璐ワ紝"+r.getMsg()); + }else{ + VCIOptionPane.showMessage(this.owner, "淇濆瓨鏁版嵁鎴愬姛锛岀瓑寰呴泦鍥㈢爜鐢宠锛�"); + } + } + }else { + VCIOptionPane.showMessage(this.owner, "杩滅▼璋冪敤澶辫触锛岃娉ㄦ剰锛�"); } } @@ -161,7 +190,8 @@ CodeApplyFor410MainPanel rightMainPanel2 = this.owner.getRightMainPanel(); LinkedHashMap<String, JComponent> attrInnerNameToCtrlMaps = rightMainPanel2.getAttrInnerNameToCtrlMaps(); if(attrInnerNameToCtrlMaps!=null&&attrInnerNameToCtrlMaps.size()>0){ - attrInnerNameToCtrlMaps.forEach((key,component)->{ + for(String key : attrInnerNameToCtrlMaps.keySet()){ + JComponent component = attrInnerNameToCtrlMaps.get(key); if(component instanceof JTextComponent){ if(((JTextComponent) component).isEnabled()) ((JTextComponent) component).setText(""); @@ -169,7 +199,7 @@ if(((VCIJComboBox) component).isEnabled()) ((VCIJComboBox) component).setSelectedIndex(0); } - }); + } } String applyCode = this.owner.getApplyCode(); if(StringUtils.isBlank(applyCode)) { diff --git a/Source/UBCS/ubcs-codeApply/src/main/java/com/vci/rmip/code/client/codeapply/Apply410/CodeDataMainPanelDataProvider.java b/Source/UBCS/ubcs-codeApply/src/main/java/com/vci/rmip/code/client/codeapply/Apply410/CodeDataMainPanelDataProvider.java index 23c6a08..31f6b45 100644 --- a/Source/UBCS/ubcs-codeApply/src/main/java/com/vci/rmip/code/client/codeapply/Apply410/CodeDataMainPanelDataProvider.java +++ b/Source/UBCS/ubcs-codeApply/src/main/java/com/vci/rmip/code/client/codeapply/Apply410/CodeDataMainPanelDataProvider.java @@ -20,7 +20,6 @@ import org.apache.commons.collections4.CollectionUtils; import java.util.*; -import java.util.stream.Collectors; public class CodeDataMainPanelDataProvider extends AbstractVCIJTableDataProvider<BaseModel> { private CodeDataMainPanel ownerPanel; @@ -37,12 +36,12 @@ LinkedList<String> nameList = new LinkedList<>(); LinkedList<String> fieldList = new LinkedList<>(); List<CodeShowFieldConfigVO> colsList=ownerPanel.getUiFormRefer().getCodeShowFieldConfigVOS(); - colsList.stream().forEach(columns->{ + for (CodeShowFieldConfigVO columns : colsList) { String title= columns.getTitle(); String field=columns.getField(); nameList.add(title); fieldList.add(field); - }); + } specialColumns = nameList.toArray(new String[]{}); fields = fieldList.toArray(new String[]{}); return specialColumns; @@ -61,7 +60,7 @@ VCIJTableNode<BaseModel> res = new VCIJTableNode<BaseModel>(model); int i=dataColumnStartIndex; for (String field:fields){ - String data=defaultDataMap.getOrDefault(field,""); + String data=defaultDataMap.containsKey(field) ? defaultDataMap.get(field) : "" ; res.setPropertyValue(getColumns()[i++], data); } return res; @@ -81,19 +80,18 @@ List<CodeSrchCondConfigVO> codeSrchCondConfigVOS=uiFormRefer.getCodeSrchCondConfigVOS(); JSONObject jsonObject=new JSONObject(); if(!CollectionUtils.isEmpty(codeSrchCondConfigVOS)){ - codeSrchCondConfigVOS.stream().forEach(codeSrchCondConfigVO -> { + for (CodeSrchCondConfigVO codeSrchCondConfigVO : codeSrchCondConfigVOS) { String field=codeSrchCondConfigVO.getFilterField(); String value=codeSrchCondConfigVO.getFilterValue(); String filterType= codeSrchCondConfigVO.getFilterType(); condtionMap.put("conditionMap["+field+"]",value); - }); + } } Map<String, String> customCondtionMap=ownerPanel.getCustomCondtionMap(); if(customCondtionMap!=null&&customCondtionMap.size()>0){ - customCondtionMap.forEach((field, value) -> { - condtionMap.put("conditionMap["+field+"]",value); - }); - + for(String field : customCondtionMap.keySet()){ + condtionMap.put("conditionMap["+field+"]",customCondtionMap.get(field)); + } } Map<String,String> headerMap=new HashMap<>(); headerMap.put("Blade-Auth",this.ownerPanel.getTokenUserObject().getAccess_token()); @@ -116,7 +114,10 @@ List dataList= iPage.getRecords(); BaseModel [] baseModels=new BaseModel[]{}; if(!CollectionUtils.isEmpty(dataList)) { - List<BaseModel> hostInfos = (List<BaseModel>) dataList.stream().map(entity -> JSONUtil.toBean(JSONUtil.parseObj(entity), BaseModel.class)).collect(Collectors.toList()); + List<BaseModel> hostInfos = new ArrayList<>(); + for (Object entity : dataList) { + hostInfos.add(JSONUtil.toBean(JSONUtil.parseObj(entity),BaseModel.class)); + } baseModels = hostInfos.toArray(new BaseModel[]{}); } return baseModels; diff --git a/Source/UBCS/ubcs-codeApply/src/main/java/com/vci/rmip/code/client/codeapply/Apply410/RMDataReferTempDialogActionListener.java b/Source/UBCS/ubcs-codeApply/src/main/java/com/vci/rmip/code/client/codeapply/Apply410/RMDataReferTempDialogActionListener.java index 96e4caa..8af7e4f 100644 --- a/Source/UBCS/ubcs-codeApply/src/main/java/com/vci/rmip/code/client/codeapply/Apply410/RMDataReferTempDialogActionListener.java +++ b/Source/UBCS/ubcs-codeApply/src/main/java/com/vci/rmip/code/client/codeapply/Apply410/RMDataReferTempDialogActionListener.java @@ -65,8 +65,8 @@ if(treeNode.getObj() instanceof Tree) { Tree tree =(Tree)treeNode.getObj(); Map<String,String> attibuteMap= tree.getAttributes(); - String fieldValue=attibuteMap.getOrDefault(valueField,""); - String textValue=attibuteMap.getOrDefault(textField,""); + String fieldValue=attibuteMap.containsKey(valueField) ? attibuteMap.get(valueField) : ""; + String textValue=attibuteMap.containsKey(textField) ? attibuteMap.get(textField) : ""; KeyValue keyValue=new KeyValue(); keyValue.setKey(fieldValue); keyValue.setValue(textValue); @@ -85,8 +85,8 @@ BaseModel baseModel=list.get(0); Map<String, String> defaultDataMap= VciBaseUtil.objectToMapString(list.get(0)); defaultDataMap.putAll(baseModel.getData()); - String fieldValue=defaultDataMap.getOrDefault(valueField,""); - String textValue=defaultDataMap.getOrDefault(textField,""); + String fieldValue=defaultDataMap.containsKey(valueField) ? defaultDataMap.get(valueField) : ""; + String textValue=defaultDataMap.containsKey(textField) ? defaultDataMap.get(textField) : ""; KeyValue keyValue=new KeyValue(); keyValue.setKey(fieldValue); keyValue.setValue(textValue); diff --git a/Source/UBCS/ubcs-codeApply/src/main/java/com/vci/rmip/code/client/codeapply/Apply410/object/IPage.java b/Source/UBCS/ubcs-codeApply/src/main/java/com/vci/rmip/code/client/codeapply/Apply410/object/IPage.java index 9a6cdfc..5255a5f 100644 --- a/Source/UBCS/ubcs-codeApply/src/main/java/com/vci/rmip/code/client/codeapply/Apply410/object/IPage.java +++ b/Source/UBCS/ubcs-codeApply/src/main/java/com/vci/rmip/code/client/codeapply/Apply410/object/IPage.java @@ -1,49 +1,48 @@ package com.vci.rmip.code.client.codeapply.Apply410.object; + import java.io.Serializable; import java.util.List; -import java.util.function.Function; -import java.util.stream.Collectors; public interface IPage<T> extends Serializable { List<OrderItem> orders(); - default boolean optimizeCountSql() { - return true; - } +// default boolean optimizeCountSql() { +// return true; +// } - default boolean optimizeJoinOfCountSql() { - return true; - } +// default boolean optimizeJoinOfCountSql() { +// return true; +// } +// +// default boolean searchCount() { +// return true; +// } +// +// default long offset() { +// long current = this.getCurrent(); +// return current <= 1L ? 0L : Math.max((current - 1L) * this.getSize(), 0L); +// } - default boolean searchCount() { - return true; - } +// default Long maxLimit() { +// return null; +// } +// +// default long getPages() { +// if (this.getSize() == 0L) { +// return 0L; +// } else { +// long pages = this.getTotal() / this.getSize(); +// if (this.getTotal() % this.getSize() != 0L) { +// ++pages; +// } +// +// return pages; +// } +// } - default long offset() { - long current = this.getCurrent(); - return current <= 1L ? 0L : Math.max((current - 1L) * this.getSize(), 0L); - } - - default Long maxLimit() { - return null; - } - - default long getPages() { - if (this.getSize() == 0L) { - return 0L; - } else { - long pages = this.getTotal() / this.getSize(); - if (this.getTotal() % this.getSize() != 0L) { - ++pages; - } - - return pages; - } - } - - default IPage<T> setPages(long pages) { - return this; - } +// default IPage<T> setPages(long pages) { +// return this; +// } List<T> getRecords(); @@ -61,11 +60,11 @@ IPage<T> setCurrent(long current); - default <R> IPage<T> convert(Function<? super T, ? extends R> mapper) { - List<T> collect = (List)this.getRecords().stream().map(mapper).collect(Collectors.toList()); - return this.setRecords(collect); - } - default String countId() { - return null; - } +// default <R> IPage<T> convert(Function<? super T, ? extends R> mapper) { +// List<T> collect = (List)this.getRecords().stream().map(mapper).collect(Collectors.toList()); +// return this.setRecords(collect); +// } +// default String countId() { +// return null; +// } } diff --git a/Source/UBCS/ubcs-codeApply/src/main/java/com/vci/rmip/code/client/codeapply/Apply410/object/OrderItem.java b/Source/UBCS/ubcs-codeApply/src/main/java/com/vci/rmip/code/client/codeapply/Apply410/object/OrderItem.java index 2a35b8f..0f4058b 100644 --- a/Source/UBCS/ubcs-codeApply/src/main/java/com/vci/rmip/code/client/codeapply/Apply410/object/OrderItem.java +++ b/Source/UBCS/ubcs-codeApply/src/main/java/com/vci/rmip/code/client/codeapply/Apply410/object/OrderItem.java @@ -1,7 +1,7 @@ package com.vci.rmip.code.client.codeapply.Apply410.object; +import java.util.ArrayList; import java.util.Arrays; import java.util.List; -import java.util.stream.Collectors; public class OrderItem { @@ -18,11 +18,21 @@ } public static List<OrderItem> ascs(String... columns) { - return (List) Arrays.stream(columns).map(OrderItem::asc).collect(Collectors.toList()); + List<OrderItem> orderItems = new ArrayList<>(); + for (String column : columns) { + orderItems.add(asc(column)); + } + return orderItems; +// (List) Arrays.stream(columns).map(OrderItem::asc).collect(Collectors.toList()); } public static List<OrderItem> descs(String... columns) { - return (List)Arrays.stream(columns).map(OrderItem::desc).collect(Collectors.toList()); + List<OrderItem> orderItems = new ArrayList<>(); + for (String column : columns) { + orderItems.add(desc(column)); + } + return orderItems; +// (List)Arrays.stream(columns).map(OrderItem::desc).collect(Collectors.toList()); } private static OrderItem build(String column, boolean asc) { diff --git a/Source/UBCS/ubcs-codeApply/src/main/java/com/vci/rmip/code/client/codeapply/Apply410/object/Page.java b/Source/UBCS/ubcs-codeApply/src/main/java/com/vci/rmip/code/client/codeapply/Apply410/object/Page.java index 0f2d41b..db7c639 100644 --- a/Source/UBCS/ubcs-codeApply/src/main/java/com/vci/rmip/code/client/codeapply/Apply410/object/Page.java +++ b/Source/UBCS/ubcs-codeApply/src/main/java/com/vci/rmip/code/client/codeapply/Apply410/object/Page.java @@ -3,7 +3,6 @@ import java.util.Arrays; import java.util.Collections; import java.util.List; -import java.util.function.Predicate; public class Page<T> { private static final long serialVersionUID = 8545996863226528798L; @@ -113,25 +112,25 @@ return this.maxLimit; } - private String[] mapOrderToArray(Predicate<OrderItem> filter) { - List<String> columns = new ArrayList(this.orders.size()); - this.orders.forEach((i) -> { - if (filter.test(i)) { - columns.add(i.getColumn()); - } +// private String[] mapOrderToArray(Predicate<OrderItem> filter) { +// List<String> columns = new ArrayList(this.orders.size()); +// this.orders.forEach((i) -> { +// if (filter.test(i)) { +// columns.add(i.getColumn()); +// } +// +// }); +// return (String[])columns.toArray(new String[0]); +// } - }); - return (String[])columns.toArray(new String[0]); - } - - private void removeOrder(Predicate<OrderItem> filter) { - for(int i = this.orders.size() - 1; i >= 0; --i) { - if (filter.test(this.orders.get(i))) { - this.orders.remove(i); - } - } - - } +// private void removeOrder(Predicate<OrderItem> filter) { +// for(int i = this.orders.size() - 1; i >= 0; --i) { +// if (filter.test(this.orders.get(i))) { +// this.orders.remove(i); +// } +// } +// +// } public Page<T> addOrder(OrderItem... items) { this.orders.addAll(Arrays.asList(items)); diff --git a/Source/UBCS/ubcs-codeApply/src/main/resources/properties/conf.properties b/Source/UBCS/ubcs-codeApply/src/main/resources/properties/conf.properties index 83342df..9057012 100644 --- a/Source/UBCS/ubcs-codeApply/src/main/resources/properties/conf.properties +++ b/Source/UBCS/ubcs-codeApply/src/main/resources/properties/conf.properties @@ -26,5 +26,4 @@ 410.code.token.tenantId=000000 410.code.token.authorization=Basic c3dvcmQ6c3dvcmRfc2VjcmV0 410.code.token.contentType=application/x-www-form-urlencoded - - +410.code.codeApply.classifyGroupCode=wupin#appendix#renyuanku 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/CodeApplySwingController.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/CodeApplySwingController.java index 0634134..52d55bb 100644 --- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/CodeApplySwingController.java +++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/CodeApplySwingController.java @@ -237,4 +237,15 @@ public R checkKeyAttrOnOrderFordatas(@RequestBody CodeOrderDTO orderDTO) throws Exception { return R.data(mdmEngineService.checkKeyAttrOnOrderFordatas(orderDTO)); } + + /** + * 闆嗗洟/浼佷笟鐮佹鍒ゆ柇 + * @param parameter 浼犲叆鏁版嵁 ,classifyGroupCode:閰嶇疆鐨勪腑鐨勫垎绫婚《鑺傜偣锛宱id锛氶�夋嫨鑺傜偣鐨刼id--锛宯owApplyCode锛氬綋鍓嶇敵璇风紪鐮佺殑鍒嗙被 + * @return 鎵ц缁撴灉 + */ + @GetMapping("/checkGroupCode") + @VciBusinessLog(operateName = "闆嗗洟/浼佷笟鐮佹鍒ゆ柇") + public R checkGroupCode(Map<String,String> parameter) throws Exception { + return R.data(mdmEngineService.checkGroupCode(parameter)); + } } 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/mapper/CodeClassifyMapper.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CodeClassifyMapper.java index 547f5a7..a7c9b89 100644 --- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CodeClassifyMapper.java +++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CodeClassifyMapper.java @@ -161,4 +161,12 @@ * @param classifyList */ void batchUpdateLcStatus(@Param("records") List<CodeClassify> classifyList); + + /** + * 鍚戜笂鏌ヨ鏍戝舰缁撴瀯 + * + * @param oid 鍒嗙被鐨勪富閿� + * @return 鏁版嵁闆嗗悎 + */ + List<CodeClassify> selectAllParents(@Param("oid") String oid); } diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CodeClassifyValueMapper.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CodeClassifyValueMapper.java index a8047ce..e9f569b 100644 --- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CodeClassifyValueMapper.java +++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CodeClassifyValueMapper.java @@ -16,6 +16,8 @@ List<String> selectAllLevelChildOid(@Param("oid") String oid); + List<String> selectChildOid(@Param("oid") String oid); + Long countAllLevelChildOid(@Param("oid") String oid); String getClassifyValueStr(@Param("oid") String oid); diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/MdmEngineService.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/MdmEngineService.java index e723eb7..3174c1e 100644 --- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/MdmEngineService.java +++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/MdmEngineService.java @@ -454,4 +454,10 @@ */ public List<Map> checkKeyAttrOnOrderFordatas(CodeOrderDTO orderDTO) ; - } + /** + * 鏍规嵁褰撳墠鐢宠缂栫爜鐨勫垎绫伙紝閫愬眰寰�涓婃牎楠屾槸鍚︾鍚堝睘浜庨厤缃殑涓殑鍒嗙被瀛愯妭鐐圭殑鍒� + * 绫伙紝濡傛灉绗﹀悎锛屽垯璇ュ垎绫荤敵璇风殑缂栫爜涓洪泦鍥㈢爜杩斿洖true锛屽弽涔嬪垯涓轰紒涓氱紪鐮佽繑鍥瀎alse + * @param parameter 浼犲叆鏁版嵁,classifyGroupCode:閰嶇疆鐨勪腑鐨勫垎绫婚《鑺傜偣锛宱id锛氶�夋嫨鑺傜偣鐨刼id + */ + R checkGroupCode(Map<String, String> parameter); +} 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..a586780 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()) ? (" 銆愬仠鐢ㄣ�� ") : ""); }); } @@ -130,11 +130,15 @@ BeanUtilForVCI.copyPropertiesIgnoreCase(codeClassifyValueDTO,codeClassifyValueDO); //濉厖涓�浜涢粯璁ゅ�� DefaultAttrAssimtUtil.addDefaultAttrAssimt(codeClassifyValueDO, MdmBtmTypeConstant.CODE_CLASSIFY_VALUE); + LambdaQueryWrapper<CodeClassifyValue> wrapper = Wrappers.<CodeClassifyValue>query() + .lambda().eq(CodeClassifyValue::getCodeClassifySecOid, codeClassifyValueDO.getCodeClassifySecOid()); + if(Func.isEmpty(codeClassifyValueDO.getParentClassifyValueOid())){ + wrapper.isNull(CodeClassifyValue::getParentClassifyValueOid); + }else{ + wrapper.eq(CodeClassifyValue::getParentClassifyValueOid, codeClassifyValueDO.getParentClassifyValueOid()); + } //鏌ヨ - List<CodeClassifyValue> existList = codeClassifyValueMapper.selectList(Wrappers.<CodeClassifyValue>query() - .lambda().eq(CodeClassifyValue::getCodeClassifySecOid, codeClassifyValueDO.getCodeClassifySecOid()) - .eq(CodeClassifyValue::getParentClassifyValueOid, codeClassifyValueDO.getParentClassifyValueOid()) - ); + List<CodeClassifyValue> existList = codeClassifyValueMapper.selectList(wrapper); codeClassifyValueDO.setOrderNum(existList.size() + 1); boolean resBoolean = codeClassifyValueMapper.insert(codeClassifyValueDO) > 0; return resBoolean; @@ -244,19 +248,17 @@ VciBaseUtil.alertNotNull(codeClassifyValueDTO,"鍒嗙被鐮佹鐨勭爜鍊兼暟鎹璞�",codeClassifyValueDTO.getOid(),"鍒嗙被鐮佹鐨勭爜鍊肩殑涓婚敭"); CodeClassifyValue codeClassifyValueDO = selectByOid(codeClassifyValueDTO.getOid()); R baseResult = checkIsCanDeleteForDO(codeClassifyValueDTO,codeClassifyValueDO); - if(!baseResult.isSuccess()) { - //鎵句笅绾х殑锛岃繖涓槸鍙互鍒犻櫎鐨勬椂鍊橰 - List<String> childrenOids = codeClassifyValueMapper.selectAllLevelChildOid(codeClassifyValueDO.getOid().trim()); + if(baseResult.isSuccess()) { + //鍏堝垹闄や笅绾х爜鍊硷紝鎵句笅绾х殑锛岃繖涓槸鍙互鍒犻櫎鐨勬椂鍊� + List<String> childrenOids = codeClassifyValueMapper.selectChildOid(codeClassifyValueDO.getOid().trim()); if (!CollectionUtils.isEmpty(childrenOids)) { Collection<Collection<String>> childrenCollections = VciBaseUtil.switchCollectionForOracleIn(childrenOids); for(Collection<String> s : childrenCollections){ - codeClassifyValueMapper.delete(Wrappers.<CodeClassifyValue>query().lambda().eq(CodeClassifyValue::getOid,s)); + codeClassifyValueMapper.deleteBatchIds(s); } } - }else{ - return baseResult; } - //鎵ц鍒犻櫎鎿嶄綔 + //鎵ц鍒犻櫎鎿嶄綔锛屽啀鍒犻櫎鐖剁殑鐮佸�� boolean resBoolean = codeClassifyValueMapper.deleteById(codeClassifyValueDO.getOid()) > 0; return R.status(resBoolean); } 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..4bb8339 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 @@ -746,7 +746,29 @@ return dataList; } - /** + /** + * 鏍规嵁褰撳墠鐢宠缂栫爜鐨勫垎绫伙紝閫愬眰寰�涓婃牎楠屾槸鍚︾鍚堝睘浜庨厤缃殑涓殑鍒嗙被瀛愯妭鐐圭殑鍒� + * 绫伙紝濡傛灉绗﹀悎锛屽垯璇ュ垎绫荤敵璇风殑缂栫爜涓洪泦鍥㈢爜杩斿洖true锛屽弽涔嬪垯涓轰紒涓氱紪鐮佽繑鍥瀎alse + * @param parameter 浼犲叆鏁版嵁,classifyGroupCode:閰嶇疆鐨勪腑鐨勫垎绫婚《鑺傜偣锛宱id锛氶�夋嫨鑺傜偣鐨刼id + */ + @Override + public R checkGroupCode(Map<String, String> parameter) { + List<CodeClassify> codeClassifyList = classifyService.selectAllLevelParents(parameter.get("oid")); + Set<String> configGroupCode = Arrays.stream(parameter.get("classifyGroupCode").split("#")).collect(Collectors.toSet()); +// Boolean checkGroupFlag = false;//鏄惁鏌ヨ鍒伴厤缃殑椤跺眰鍒嗙被涓� + for (int i = codeClassifyList.size()-1; i >= 0; i--) { + if(configGroupCode.contains(codeClassifyList.get(i).getId())){ +// checkGroupFlag = true; + return R.data("true"); + } +// if(checkGroupFlag && parameter.get("nowApplyCode").equals(codeClassifyList.get(i).getId())){ +// return R.data(true); +// } + } + return R.data("false"); + } + + /** * 灏佽鍏抽敭灞炴�х殑鏌ヨ璇彞 * * @param value 褰撳墠鐨勫�� @@ -2408,7 +2430,6 @@ return phaseAttrService.listAttrByTemplateOidAndPhaseId(templateVO.getOid(), phase); } - /** * 璺緞涓婂寘鍚綋鍓嶅垎绫荤殑鎵�鏈夊垎绫讳俊鎭� * @@ -2756,13 +2777,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( @@ -2846,7 +2867,7 @@ } else { if (CollectionUtils.isEmpty(fullInfoBO.getParentClassifyVOs())) { //璇存槑宸茬粡鏄渶楂樺眰绾�, - throw new VciBaseException("褰撳墠涓婚搴撳垎绫伙紝浠ュ強瀹冪殑鎵�鏈夌殑涓婄骇鍒嗙被閮芥病鏈夎缃紪鐮佽鍒�"); + throw new ServiceException("褰撳墠涓婚搴撳垎绫伙紝浠ュ強瀹冪殑鎵�鏈夌殑涓婄骇鍒嗙被閮芥病鏈夎缃紪鐮佽鍒�"); } List<CodeClassifyVO> parentClassifyVOList = fullInfoBO.getParentClassifyVOs().stream().sorted((o1, o2) -> o1.getDataLevel().compareTo(o2.getDataLevel())).collect(Collectors.toList()); //浠庢渶楂樼殑level寮�濮嬭幏鍙� @@ -2858,7 +2879,7 @@ } } if (StringUtils.isBlank(codeRuleOid)) { - throw new VciBaseException("褰撳墠涓婚搴撳垎绫伙紝浠ュ強瀹冪殑鎵�鏈夌殑涓婄骇鍒嗙被閮芥病鏈夎缃紪鐮佽鍒�"); + throw new ServiceException("褰撳墠涓婚搴撳垎绫伙紝浠ュ強瀹冪殑鎵�鏈夌殑涓婄骇鍒嗙被閮芥病鏈夎缃紪鐮佽鍒�"); } } return ruleService.getObjectHasSecByOid(codeRuleOid); diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmIOServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmIOServiceImpl.java index d83fddc..16ee22f 100644 --- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmIOServiceImpl.java +++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmIOServiceImpl.java @@ -2329,12 +2329,17 @@ sb.append(" where 1=1 "); sb.append(" and lastr=1 and lastv=1" ); if(isCodeOrGroupCode) { - sb.append(" and groupcode in ("); + sb.append(" and ( groupcode in ("); + sb.append(VciBaseUtil.toInSql(codeDataMap.keySet().toArray(new String[0]))); + sb.append(")"); + sb.append(" or id in ("); + sb.append(VciBaseUtil.toInSql(codeDataMap.keySet().toArray(new String[0]))); + sb.append("))"); }else{ sb.append(" and id in ("); + sb.append(VciBaseUtil.toInSql(codeDataMap.keySet().toArray(new String[0]))); + sb.append(")"); } - sb.append(VciBaseUtil.toInSql(codeDataMap.keySet().toArray(new String[0]))); - sb.append(")"); List<Map<String,String>> dataMapList=commonsMapper.queryByOnlySqlForMap(sb.toString()); List<ClientBusinessObject> cboList= ChangeMapTOClientBusinessObjects(dataMapList); @@ -2424,7 +2429,7 @@ List<CodeAllCode>newCodeAllCodeList= codeAllCodeService.selectByWrapper(Wrappers.<CodeAllCode>query().lambda().eq(CodeAllCode::getCreateCodeOid, cbo.getOid())); log.info("codeCbos size:" + newCodeAllCodeList.size()); if (!CollectionUtils.isEmpty(newCodeAllCodeList)) { - CodeAllCode codeCbo = codeAllCodeList.get(0); + CodeAllCode codeCbo = newCodeAllCodeList.get(0); log.info("codeCbos code:" + codeCbo.getId()); codeCbo.setLcStatus(CodeDefaultLC.TASK_BACK.getValue()); codeAllCodeList.add(codeCbo); @@ -2616,7 +2621,21 @@ //娌℃湁闄愬埗鍒嗙被锛屼絾鏄竴涓ā鏉垮彧鍙兘鍦ㄤ竴涓笟鍔$被鍨嬮噷闈紝鎵�浠ョ洿鎺ユ煡璇㈣繖涓笟鍔$被鍨嬪嵆鍙� if (!CollectionUtils.isEmpty(conditionMap)) { - final String[] sql = {"select count(*) from " + VciBaseUtil.getTableName(classifyFullInfo.getTopClassifyVO().getBtmTypeId()) + " t where 1 = 1 "}; + String tableName=""; + R<BtmTypeVO> r = btmTypeClient.getAllAttributeByBtmId(templateVO.getBtmTypeId()); + if(r.isSuccess()) { + BtmTypeVO btmTypeVO = r.getData(); + if (btmTypeVO != null) { + tableName = btmTypeVO.getTableName(); + + } + } + if (StringUtils.isBlank(tableName)) { + String errormsg="鏍规嵁涓氬姟绫诲瀷涓烘煡璇㈠埌鐩稿叧涓氬姟琛�"; + errorMap.put(orderDTO.getId(),errorMap.getOrDefault(orderDTO.getId(),"")+errormsg); + return; + } + final String[] sql = {"select count(*) from " + tableName + " t where 1 = 1 "}; conditionMap.forEach((key, value) -> { if(StringUtils.isBlank(value)||value.equals(QueryOptionConstant.ISNULL)){ sql[0] += " and " + key + " is null "; @@ -2836,6 +2855,9 @@ ClientBusinessObject sysDataObject= codeSystemObjectMap.get(code); if(isCodeOrGroupCode){ code=sysDataObject.getAttributeValue("GROUPCODE"); + if(StringUtils.isBlank(code)){ + code=sysDataObject.getId(); + } } CodeOrderDTO orderDTO = new CodeOrderDTO(); if(codeDataMap.containsKey(code)){ @@ -2844,11 +2866,7 @@ orderDTO.setCodeClassifyOid(codeClassifyVO.getOid());//鍒嗙被涓婚敭 orderDTO.setOid(sysDataObject.getOid());//鏁版嵁oid orderDTO.setLcStatus(rowDatas.getStatus());//鐘舵�� - if(isCodeOrGroupCode){ - orderDTO.setId(sysDataObject.getId()); - }else{ - orderDTO.setId(code); - } + orderDTO.setId(code); orderDTO.setTs(sysDataObject.getTs()); orderDTO.setBtmname(codeClassifyVO.getBtmname());//涓氬姟绫诲瀷 orderDTO.setDescription("闆嗘垚璋冪敤:鏇存柊");//鏁版嵁鎻忚堪 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瀽鍝嶅簲浣撹幏鍙栦护鐗� 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 58a119c..8381d07 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 @@ -61,10 +61,10 @@ import javax.annotation.Resource; import java.util.*; import java.util.concurrent.CopyOnWriteArrayList; +import java.util.concurrent.atomic.AtomicBoolean; import java.util.stream.Collectors; import static com.vci.ubcs.code.constant.MdmEngineConstant.DEFAULT_SYNC_ATTR_LIST; -import static com.vci.ubcs.code.constant.MdmEngineConstant.IMPORT_ROW_INDEX; import static com.vci.ubcs.code.enumpack.CodeSecTypeEnum.CODE_CLASSIFY_SEC; /*** @@ -359,9 +359,9 @@ boolean isPersonApplyGroupCode= personAndDeptConfig.isPersonApplyGroupCode(); String systemCode=personData.getSystemCode(); List<ResultMdMapping> resultMdMappingList=new ArrayList<>(); - boolean success=true; String message=""; if(isUsedFlag){ + AtomicBoolean success= new AtomicBoolean(true); List<PersonMasterData> masterDataList=new ArrayList<>(); List<String> fields= VciBaseUtil.str2List(personAndDeptConfig.getPersonFields()); try { @@ -371,7 +371,7 @@ masterDataList = personData.getMasterData(); String personLibrary = personAndDeptConfig.getPersonLibrary(); if (StringUtils.isBlank(personLibrary)) { - success=false; + success.set(false); log.info("闆嗘垚閰嶇疆缂哄皯浜哄憳搴撹妭鐐逛俊鎭�,personLibrary->" + personLibrary); throw new Throwable("闆嗘垚閰嶇疆缂哄皯浜哄憳搴撹妭鐐逛俊鎭�,personLibrary->" + personLibrary); } @@ -383,12 +383,12 @@ log.info("end锛氬垎绫绘煡璇㈠畬姣�"); //鑾峰彇鍒嗙被妯℃澘淇℃伅 if(codeClassifyVO==null || StringUtils.isBlank(codeClassifyVO.getOid())){ - success=false; + success.set(false); throw new Throwable ("鏍规嵁閰嶇疆鍒嗙被鐨勫垎绫荤紪鍙凤紝鏈幏鍙栧埌鍒嗙被淇℃伅"); } CodeClassifyTemplateVO templateVO = engineService.getUsedTemplateByClassifyOid(codeClassifyVO.getOid()); if(templateVO==null||StringUtils.isBlank(templateVO.getOid())){ - success=false; + success.set(false); throw new Throwable ("鏍规嵁浼犺緭鐨勫垎绫伙紝鏈幏鍙朚DM绯荤粺涓搴旀ā鏉�"); } @@ -440,10 +440,11 @@ deleteDataVOList.add(object); }else{ String worker_category=personMasterData.getWorker_category(); - codeList.add(personMasterData.getLm_code()); + object.setOperate("create"); applyDataVOList.add(object); } + codeList.add(personMasterData.getLm_code()); }); R<BtmTypeVO> r = btmTypeClient.getAllAttributeByBtmId(templateVO.getBtmTypeId()); @@ -532,10 +533,31 @@ orderDTO.setCodeRuleOid(ruleVO.getOid()); orderDTO.setSecDTOList(codeOrderSecDTOList);//瀛樺偍缂栫爜 orderDTO.setData(rowData.getFiledValue()); - engineService.addSaveCode(orderDTO); + String code=engineService.addSaveCode(orderDTO); + if(StringUtils.isNotBlank(code)) { + StringBuffer sqlsb = new StringBuffer(); + sqlsb.append(" select * from "); + sqlsb.append(tableName); + sqlsb.append(" where 1=1 "); + sqlsb.append(" and lastr=1 and lastv=1"); + sqlsb.append(" and id in ("); + sqlsb.append(VciBaseUtil.toInSql(code)); + sqlsb.append(")"); + List<Map<String, String>> newDataMapList = commonsMapper.queryByOnlySqlForMap(sqlsb.toString()); + if (!CollectionUtils.isEmpty(newDataMapList)) { + String oid = StringUtils.isBlank(newDataMapList.get(0).get("OID")) ? "" : newDataMapList.get(0).get("OID"); + List<String> oidList = new ArrayList<>(); + oidList.add(oid); + //濡傛灉鏈夌敵璇峰氨鍘昏皟鐢ㄧ敵璇烽泦鍥㈢爜 + if (isPersonApplyGroupCode) { + mdmIOService.sendApplyGroupcode(oidList, templateVO.getBtmTypeId(), sysIntegrationPushTypeEnum.ACCPET_APPCODE.getValue()); + success.set(true); + mesg = "鏁版嵁淇濆瓨鎴愬姛锛岀瓑寰呯敵璇烽泦鍥㈢爜"; + } + } + } } catch (Exception e) { mesg=e.getMessage(); - e.getMessage(); e.printStackTrace(); }finally { XMLResultDataObjectDetailDO x=new XMLResultDataObjectDetailDO(); @@ -547,7 +569,7 @@ } }); resultDataObjectDetailDOs.addAll(xDOs); - boolean finalSuccess1 = success; + boolean finalSuccess1 = success.get(); String finalMessage1 = message; resultDataObjectDetailDOs.stream().forEach(resultDataObjectDetailDO->{ ResultMdMapping resultMdMapping=new ResultMdMapping(); @@ -560,17 +582,12 @@ resultMdMappingList.add(resultMdMapping); }); log.info("end锛氱敵璇疯幏鍙栧畬姣�"); - //濡傛灉鏈夌敵璇峰氨鍘昏皟鐢ㄧ敵璇烽泦鍥㈢爜 - if(isPersonApplyGroupCode){ - List<String> oidList=new ArrayList<>(); - mdmIOService.sendApplyGroupcode(oidList,templateVO.getBtmTypeId(),sysIntegrationPushTypeEnum.ACCPET_APPCODE.getValue()); - } } }catch (Throwable e){ - success=false; + success.set(false); message="浜哄憳鏁版嵁鎺ュ彈澶辫触:"+e.getMessage(); //缁勭粐杩斿洖缁撴灉 - boolean finalSuccess = success; + boolean finalSuccess = success.get(); String finalMessage = message; masterDataList.stream().forEach(masterData -> { ResultMdMapping resultMdMapping=new ResultMdMapping(); @@ -583,7 +600,7 @@ }); }finally { resultOrgData.setMessage(message); - resultOrgData.setSuccess(success); + resultOrgData.setSuccess(success.get()); resultOrgData.setMdMappings(resultMdMappingList); Object object = JSONObject.toJSON(resultOrgData); } @@ -591,7 +608,7 @@ String data = JSONObject.toJSONString(personData); try { //璁板綍鏃ュ織 - this.saveLogs(systemCode, systemCode, data, resultStr, success, msg, "syncDataForPerson"); + this.saveLogs(systemCode, systemCode, data, resultStr, success.get(), msg, "syncDataForPerson"); }catch (Throwable e){ e.printStackTrace(); } @@ -609,10 +626,9 @@ public ResultOrgData syncDataForOrg(OrgData orgData) { boolean isUsedFlag= personAndDeptConfig.isUsedFlag(); ResultOrgData resultOrgData=new ResultOrgData(); - boolean isPersonApplyGroupCode= personAndDeptConfig.isPersonApplyGroupCode(); List<ResultMdMapping> resultMdMappingList=new ArrayList<>(); - boolean success=true; + AtomicBoolean success= new AtomicBoolean(true); String message=""; String systemCode=""; if(isUsedFlag){ @@ -626,7 +642,7 @@ orgMasterDataList = orgData.getMasterData(); String personLibrary = personAndDeptConfig.getPersonLibrary(); if (StringUtils.isBlank(personLibrary)) { - success=false; + success.set(false); log.info("闆嗘垚閰嶇疆缂哄皯浜哄憳搴撹妭鐐逛俊鎭�,personLibrary->" + personLibrary); throw new Throwable("闆嗘垚閰嶇疆缂哄皯浜哄憳搴撹妭鐐逛俊鎭�,personLibrary->" + personLibrary); } @@ -638,12 +654,12 @@ log.info("end锛氬垎绫绘煡璇㈠畬姣�"); //鑾峰彇鍒嗙被妯℃澘淇℃伅 if(codeClassifyVO==null || StringUtils.isBlank(codeClassifyVO.getOid())){ - success=false; + success.set(false); throw new Throwable ("鏍规嵁閰嶇疆鍒嗙被鐨勫垎绫荤紪鍙凤紝鏈幏鍙栧埌鍒嗙被淇℃伅"); } CodeClassifyTemplateVO templateVO = engineService.getUsedTemplateByClassifyOid(codeClassifyVO.getOid()); if(templateVO==null||StringUtils.isBlank(templateVO.getOid())){ - success=false; + success.set(false); throw new Throwable ("鏍规嵁浼犺緭鐨勫垎绫伙紝鏈幏鍙朚DM绯荤粺涓搴旀ā鏉�"); } @@ -653,14 +669,14 @@ List<String> codeList=new ArrayList<>(); List<ApplyDataVO> applyDataVOList=new ArrayList<>(); List<ApplyDataVO> deleteDataVOList=new ArrayList<>(); - orgMasterDataList.stream().forEach(personMasterData -> { + orgMasterDataList.stream().forEach(orgMasterData -> { ApplyDataVO object=new ApplyDataVO(); - object.setCode(personMasterData.getMdm_code());//缂栫爜 - object.setCreator(personMasterData.getCreator());//鍒涘缓鑰� - object.setEditor(personMasterData.getModifier());//淇敼鑰� - object.setId(personMasterData.getPk_mdm());//涓婚敭 + object.setCode(orgMasterData.getMdm_code());//缂栫爜 + object.setCreator(orgMasterData.getCreator());//鍒涘缓鑰� + object.setEditor(orgMasterData.getModifier());//淇敼鑰� + object.setId(orgMasterData.getPk_mdm());//涓婚敭 object.setStatus(CodeDefaultLC.RELEASED.getValue());//鐘舵�佸垯闇�瑕佸垽鏂� - Map<String,String> dataMap= VciBaseUtil.objectToMapString(personMasterData); + Map<String,String> dataMap= VciBaseUtil.objectToMapString(orgMasterData); List<ProppertyVO> proppertyVOList=new ArrayList<>(); /*** * 鏍规嵁閰嶇疆鏂囦欢鑾峰彇鏋氫妇鍊� @@ -686,14 +702,15 @@ }); object.setProp(proppertyVOList); - if(personMasterData.getDr()==1){ + if(orgMasterData.getDr()==1){ object.setOperate("delete");//鎿嶄綔绫诲瀷 deleteDataVOList.add(object); }else{ - codeList.add(personMasterData.getMdm_code()); + object.setOperate("create"); applyDataVOList.add(object); } + codeList.add(orgMasterData.getMdm_code()); }); R<BtmTypeVO> r = btmTypeClient.getAllAttributeByBtmId(templateVO.getBtmTypeId()); @@ -782,7 +799,29 @@ orderDTO.setCodeRuleOid(ruleVO.getOid()); orderDTO.setSecDTOList(codeOrderSecDTOList);//瀛樺偍缂栫爜 orderDTO.setData(rowData.getFiledValue()); - engineService.addSaveCode(orderDTO); + String code=engineService.addSaveCode(orderDTO); + if(StringUtils.isNotBlank(code)) { + StringBuffer sqlsb = new StringBuffer(); + sqlsb.append(" select * from "); + sqlsb.append(tableName); + sqlsb.append(" where 1=1 "); + sqlsb.append(" and lastr=1 and lastv=1"); + sqlsb.append(" and id in ("); + sqlsb.append(VciBaseUtil.toInSql(code)); + sqlsb.append(")"); + List<Map<String, String>> newDataMapList = commonsMapper.queryByOnlySqlForMap(sqlsb.toString()); + if (!CollectionUtils.isEmpty(newDataMapList)) { + String oid = StringUtils.isBlank(newDataMapList.get(0).get("OID")) ? "" : newDataMapList.get(0).get("OID"); + List<String> oidList = new ArrayList<>(); + oidList.add(oid); + //濡傛灉鏈夌敵璇峰氨鍘昏皟鐢ㄧ敵璇烽泦鍥㈢爜 + if (isPersonApplyGroupCode) { + mdmIOService.sendApplyGroupcode(oidList, templateVO.getBtmTypeId(), sysIntegrationPushTypeEnum.ACCPET_APPCODE.getValue()); + success.set(true); + mesg = "鏁版嵁淇濆瓨鎴愬姛锛岀瓑寰呯敵璇烽泦鍥㈢爜"; + } + } + } } catch (Exception e) { mesg=e.getMessage(); e.getMessage(); @@ -797,7 +836,7 @@ } }); resultDataObjectDetailDOs.addAll(xDOs); - boolean finalSuccess1 = success; + boolean finalSuccess1 = success.get(); String finalMessage1 = message; resultDataObjectDetailDOs.stream().forEach(resultDataObjectDetailDO->{ ResultMdMapping resultMdMapping=new ResultMdMapping(); @@ -810,17 +849,12 @@ resultMdMappingList.add(resultMdMapping); }); log.info("end锛氱敵璇疯幏鍙栧畬姣�"); - //濡傛灉鏈夌敵璇峰氨鍘昏皟鐢ㄧ敵璇烽泦鍥㈢爜 - if(isPersonApplyGroupCode){ - List<String> oidList=new ArrayList<>(); - mdmIOService.sendApplyGroupcode(oidList,templateVO.getBtmTypeId(),sysIntegrationPushTypeEnum.ACCPET_APPCODE.getValue()); - } } }catch (Throwable e){ - success=false; + success.set(false); message="浜哄憳鏁版嵁鎺ュ彈澶辫触:"+e.getMessage(); //缁勭粐杩斿洖缁撴灉 - boolean finalSuccess = success; + boolean finalSuccess = success.get(); String finalMessage = message; orgMasterDataList.stream().forEach(masterData -> { ResultMdMapping resultMdMapping=new ResultMdMapping(); @@ -833,7 +867,7 @@ }); }finally { resultOrgData.setMessage(message); - resultOrgData.setSuccess(success); + resultOrgData.setSuccess(success.get()); resultOrgData.setMdMappings(resultMdMappingList); Object object = JSONObject.toJSON(resultOrgData); } @@ -841,7 +875,7 @@ String data = JSONObject.toJSONString(orgData); try { //璁板綍鏃ュ織 - this.saveLogs(systemCode, systemCode, data, resultStr, success, msg, "syncDataForOrg"); + this.saveLogs(systemCode, systemCode, data, resultStr, success.get(), msg, "syncDataForOrg"); }catch (Throwable e){ e.printStackTrace(); } diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CodeCLassifyMapper.xml b/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CodeCLassifyMapper.xml index 69dba1b..4d6f43b 100644 --- a/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CodeCLassifyMapper.xml +++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CodeCLassifyMapper.xml @@ -510,4 +510,11 @@ </foreach> ;END; </update> + + <select id="selectAllParents" resultMap="plCodeClassifyResultMap"> + select * from PL_CODE_CLASSIFY p + start with p.OID =#{oid} + connect by p.oid = prior p.PARENTCODECLASSIFYOID + </select> + </mapper> diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CodeClassifyValueMapper.xml b/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CodeClassifyValueMapper.xml index 402eb75..25fe4da 100644 --- a/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CodeClassifyValueMapper.xml +++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CodeClassifyValueMapper.xml @@ -9,6 +9,9 @@ CONNECT BY PRIOR PARENTCLASSIFYVALUEOID = OID </select> + <select id="selectChildOid" resultType="java.lang.String"> + select OID from PL_CODE_CLASSIFYVALUE where PARENTCLASSIFYVALUEOID =#{oid} + </select> <select id="countAllLevelChildOid" resultType="java.lang.Long"> select count(OID) countsize -- Gitblit v1.9.3