From 529b40cc4cd049ae3e96d3aedae3142e0effea60 Mon Sep 17 00:00:00 2001 From: xiejun <xj@2023> Date: 星期四, 30 十一月 2023 11:46:15 +0800 Subject: [PATCH] 标准申请集成接口添加 --- Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/applybz/ApplyBZDataVO.java | 92 ++++++++-- Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/MdmEngineService.java | 14 + Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/attrmap/标准..JSON | 79 +++++++++ Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/UniversalInterfaceImpl.java | 173 +++++++++++++++------ Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/CodeSyncUniversalController.java | 1 Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/attrmap/appcodeBZ.xml | 22 ++ Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmEngineServiceImpl.java | 3 Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/attrmap/result.xml | 13 + Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/attrmap/标准结果.json | 22 ++ Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/applybz/ClassfyBZVO.java | 15 + 10 files changed, 360 insertions(+), 74 deletions(-) diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/applybz/ApplyBZDataVO.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/applybz/ApplyBZDataVO.java index 56073cd..6766feb 100644 --- a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/applybz/ApplyBZDataVO.java +++ b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/applybz/ApplyBZDataVO.java @@ -4,6 +4,7 @@ import com.thoughtworks.xstream.annotations.XStreamAsAttribute; import com.thoughtworks.xstream.annotations.XStreamImplicit; import com.vci.ubcs.code.vo.webserviceModel.apply.ProppertyVO; +import org.springframework.beans.factory.annotation.Value; import java.util.List; @@ -41,20 +42,42 @@ @XStreamImplicit private List<ProppertyVO> prop; /*** - * 鏄惁淇 + * 鎿嶄綔绫诲瀷 */ - private boolean amendmentFlag; + @XStreamAsAttribute + private String operationType; /*** *鏄惁鏄郴鍒楁爣鍑� */ - private boolean seriesStandardFlag; - /** - * 鏄惁缁х画缂栧彿 + @XStreamAsAttribute + private boolean seriesFlag; + /*** + * 鍙戝竷鏃堕棿 */ - private boolean continueNumberFlag; + @XStreamAsAttribute + private String releaseTime; + + /*** + * 婧愭爣鍑嗗彿 + */ + @XStreamAsAttribute + private String oldCode; + + /*** + * 绯诲垪娴佹按 + */ + @XStreamAsAttribute + private String seriesFlow; + + /*** + * 鏄惁鍙樻洿绯诲垪 + */ + @XStreamAsAttribute + private boolean editSeriesFlag; /*** * 骞翠唬鍙� */ + @XStreamAsAttribute private String yearNumber; public String getId() { @@ -105,28 +128,52 @@ this.prop = prop; } - public boolean isAmendmentFlag() { - return amendmentFlag; + public String getOperationType() { + return operationType; } - public void setAmendmentFlag(boolean amendmentFlag) { - this.amendmentFlag = amendmentFlag; + public void setOperationType(String operationType) { + this.operationType = operationType; } - public boolean isSeriesStandardFlag() { - return seriesStandardFlag; + public boolean isSeriesFlag() { + return seriesFlag; } - public void setSeriesStandardFlag(boolean seriesStandardFlag) { - this.seriesStandardFlag = seriesStandardFlag; + public void setSeriesFlag(boolean seriesFlag) { + this.seriesFlag = seriesFlag; } - public boolean isContinueNumberFlag() { - return continueNumberFlag; + public String getReleaseTime() { + return releaseTime; } - public void setContinueNumberFlag(boolean continueNumberFlag) { - this.continueNumberFlag = continueNumberFlag; + public void setReleaseTime(String releaseTime) { + this.releaseTime = releaseTime; + } + + public String getOldCode() { + return oldCode; + } + + public void setOldCode(String oldCode) { + this.oldCode = oldCode; + } + + public String getSeriesFlow() { + return seriesFlow; + } + + public void setSeriesFlow(String seriesFlow) { + this.seriesFlow = seriesFlow; + } + + public boolean isEditSeriesFlag() { + return editSeriesFlag; + } + + public void setEditSeriesFlag(boolean editSeriesFlag) { + this.editSeriesFlag = editSeriesFlag; } public String getYearNumber() { @@ -146,9 +193,12 @@ ", creator='" + creator + '\'' + ", editor='" + editor + '\'' + ", prop=" + prop + - ", amendmentFlag=" + amendmentFlag + - ", seriesStandardFlag=" + seriesStandardFlag + - ", continueNumberFlag=" + continueNumberFlag + + ", operationType='" + operationType + '\'' + + ", seriesFlag=" + seriesFlag + + ", releaseTime='" + releaseTime + '\'' + + ", oldCode='" + oldCode + '\'' + + ", seriesFlow='" + seriesFlow + '\'' + + ", editSeriesFlag='" + editSeriesFlag + '\'' + ", yearNumber='" + yearNumber + '\'' + '}'; } diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/applybz/ClassfyBZVO.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/applybz/ClassfyBZVO.java index 88ae6d2..6110e1f 100644 --- a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/applybz/ClassfyBZVO.java +++ b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/applybz/ClassfyBZVO.java @@ -3,6 +3,7 @@ import com.thoughtworks.xstream.annotations.XStreamAlias; import com.thoughtworks.xstream.annotations.XStreamAsAttribute; import com.vci.ubcs.code.vo.webserviceModel.apply.ApplyDatasVO; +import com.vci.ubcs.code.vo.webserviceModel.apply.SectionsVO; /** * 鍒嗙被淇℃伅 @@ -24,6 +25,12 @@ */ @XStreamAsAttribute private String fullclsfNamePath; + + /** + * 鐮佹淇℃伅 + */ + private SectionsVO sections; + /** * 鏁版嵁闆嗗悎 */ @@ -61,6 +68,14 @@ this.objects = objects; } + public SectionsVO getSections() { + return sections; + } + + public void setSections(SectionsVO sections) { + this.sections = sections; + } + @Override public String toString() { return "ClassfyBZVO{" + diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/attrmap/appcodeBZ.xml b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/attrmap/appcodeBZ.xml new file mode 100644 index 0000000..c73deff --- /dev/null +++ b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/attrmap/appcodeBZ.xml @@ -0,0 +1,22 @@ +<?xml version="1.0" encoding="UTF-8"?> +<data systemId="ZZ"> + <user userName="weidy" trueName="榄忓ぇ鍕�" ip="127.0.0.1"/> + <classify classCode="QYBZ" library="standard" fullclsfNamePath="鏍囧噯##VCI##浼佷笟鏍囧噯"> + <sections> + <section name="鍥哄畾鐮佹" value="Q/3B"></section> + <section name="绯诲垪鍙�" value=""></section> + <section name="鍒嗗壊绗�" value="-"></section> + <section name="骞翠唬鍙�" value="2023"></section> + </sections> + <objects> + <object code="" id="0023401" status="Released" operate="create" creator="weidy" operationType="1" seriesFlag="false" releaseTime="2023-11-14" oldCode="" seriesFlow="" editSeriesFlag="false" yearNumber="2023" > + <prop key="name" text="鍚嶇О" value="娴嬭瘯鏍囧噯"/> + <prop key="approveDate" text="鎵瑰噯鏃ユ湡" value="2023-11-14"/> + <prop key="releaseDate" text="鍙戝竷鏃ユ湡" value="2023-11-14"/> + <prop key="ImplementationDate" text="瀹炴柦鏃ユ湡" value="2023-11-14"/> + <prop key="isSeries" text="鏄惁绯诲垪" value="false"/> + <prop key="reviseSeries" text="淇涓虹郴鍒�" value="false"/> + </object> + </objects> + </classify> +</data> diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/attrmap/result.xml b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/attrmap/result.xml new file mode 100644 index 0000000..cbf6c9e --- /dev/null +++ b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/attrmap/result.xml @@ -0,0 +1,13 @@ +<?xml version="1.0" encoding="UTF-8" ?> +<data errorid="0"> + <msg>缂栫爜鐢宠鎴愬姛:缂栫爜涓猴細Q/3B9-2023</msg> + <classifys> + <classify classCode="QYBZ" library="standard" fullclsfNamePath="鏍囧噯##VCI##浼佷笟鏍囧噯"> + <objects class="linked-list"> + <object id="0023401" errorid="0" code="Q/3B9-2023"> + <msg>缂栫爜鐢宠鎴愬姛:缂栫爜涓猴細Q/3B9-2023</msg> + </object> + </objects> + </classify> + </classifys> +</data> diff --git "a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/attrmap/\346\240\207\345\207\206..JSON" "b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/attrmap/\346\240\207\345\207\206..JSON" new file mode 100644 index 0000000..1e34e0c --- /dev/null +++ "b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/attrmap/\346\240\207\345\207\206..JSON" @@ -0,0 +1,79 @@ +{ + "data": { + "systemId": "ZZ", + "user": { + "ip": "127.0.0.1", + "trueName": "榄忓ぇ鍕�", + "userName": "weidy" + }, + "classify": { + "fullclsfNamePath": "鏍囧噯##VCI##浼佷笟鏍囧噯", + "library": "standard", + "classCode": "QYBZ", + "sections": { + "section": [ + { + "value": "Q/3B", + "name": "鍥哄畾鐮佹" + }, + { "name": "绯诲垪鍙�" }, + { + "value": "-", + "name": "鍒嗗壊绗�" + }, + { + "value": "2023", + "name": "骞翠唬鍙�" + } + ] + }, + "objects": { + "object": { + "yearNumber": "2023", + "editSeriesFlag": "false", + "releaseTime": "2023-11-14", + "seriesFlag": "false", + "oldCode": "", + "seriesFlow": "", + "operationType": "1", + "creator": "weidy", + "operate": "create", + "status": "Released", + "id": "0023401", + "prop": [ + { + "value": "娴嬭瘯鏍囧噯", + "text": "鍚嶇О", + "key": "name" + }, + { + "value": "2023-11-14", + "text": "鎵瑰噯鏃ユ湡", + "key": "approveDate" + }, + { + "value": "2023-11-14", + "text": "鍙戝竷鏃ユ湡", + "key": "releaseDate" + }, + { + "value": "2023-11-14", + "text": "瀹炴柦鏃ユ湡", + "key": "ImplementationDate" + }, + { + "value": "false", + "text": "鏄惁绯诲垪", + "key": "isSeries" + }, + { + "value": "false", + "text": "淇涓虹郴鍒�", + "key": "reviseSeries" + } + ] + } + } + } + } +} diff --git "a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/attrmap/\346\240\207\345\207\206\347\273\223\346\236\234.json" "b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/attrmap/\346\240\207\345\207\206\347\273\223\346\236\234.json" new file mode 100644 index 0000000..5fcb11f --- /dev/null +++ "b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/attrmap/\346\240\207\345\207\206\347\273\223\346\236\234.json" @@ -0,0 +1,22 @@ +{ + "data": { + "errorid": "0", + "msg": "缂栫爜鐢宠鎴愬姛:缂栫爜涓猴細Q/3B9-2023", + "classifys": { + "classify": { + "fullclsfNamePath": "鏍囧噯##VCI##浼佷笟鏍囧噯", + "library": "standard", + "classCode": "QYBZ", + "objects": { + "class": "linked-list", + "object": { + "id": "0023401", + "code": "Q/3B9-2023", + "errorid": "0", + "msg": "缂栫爜鐢宠鎴愬姛:缂栫爜涓猴細Q/3B9-2023" + } + } + } + } + } +} diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/CodeSyncUniversalController.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/CodeSyncUniversalController.java index 0f2f922..639fee7 100644 --- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/CodeSyncUniversalController.java +++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/CodeSyncUniversalController.java @@ -144,6 +144,7 @@ * @return * @throws Throwable */ + @PostMapping("/applyCodeForBZ") public String applyCodeForBZ(@RequestParam("dataString")String dataString,@RequestParam("dataType")String dataType, HttpServletRequest request){ String result=""; try { 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 edc073b..6e6f7a5 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 @@ -64,7 +64,12 @@ * @return 杩斿洖缂栫爜鐨勫唴瀹� */ String addSaveCode(CodeOrderDTO orderDTO) throws Exception; - + /** + * 鐢宠鍗曚竴缂栫爜 + * @param orderDTO 鐢宠鐨勪俊鎭紝闇�瑕佸寘鍚睘鎬х殑鍐呭鍜岀爜娈电浉鍏崇殑鍐呭 + * @param authUser 鏄惁妯℃嫙鐧诲綍锛宼rue锛屼笉妯℃嫙锛宖alse鏄ā鎷� + * @return 杩斿洖缂栫爜鐨勫唴瀹� + */ String addSaveCodeNotauthUser(CodeOrderDTO orderDTO, boolean authUser) throws Exception; /** @@ -501,4 +506,11 @@ * @return 鎵ц缁撴灉 */ String addSaveBZ(CodeBZApplyDTO codeBZApplyDTO) throws Exception; + /** + * 鏍囧噯鐢宠鍜屼慨璁㈢敤 + * @param codeBZApplyDTO 缂栫爜鐢宠鐩稿叧鐨勪俊鎭紝闇�瑕佹湁灞炴�у拰鐮佹鐩稿叧鐨勪俊鎭� + * @param authUser 鏄惁妯℃嫙鐧诲綍锛宼rue锛屼笉妯℃嫙锛宖alse鏄ā鎷� + * @return 鎵ц缁撴灉 + */ + String addSaveBZCodeNotauthUser(CodeBZApplyDTO codeBZApplyDTO, boolean authUser) throws Exception; } 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 c012248..749bcb2 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 @@ -886,7 +886,7 @@ * @param authUser * @return */ - private String addSaveBZCode(CodeBZApplyDTO codeBZApplyDTO, boolean authUser) throws Exception { + public String addSaveBZCode(CodeBZApplyDTO codeBZApplyDTO, boolean authUser) throws Exception { String code=""; VciBaseUtil.alertNotNull(codeBZApplyDTO.getCodeClassifyOid(), "涓婚搴撳垎绫荤殑涓婚敭", codeBZApplyDTO.getTemplateOid(), "妯℃澘鐨勪富閿�", codeBZApplyDTO.getCodeRuleOid(), "缂栫爜瑙勫垯鐨勪富閿�"); @@ -1112,6 +1112,7 @@ * @return * @throws Exception */ + @Override public String addSaveBZCodeNotauthUser(CodeBZApplyDTO codeBZApplyDTO, boolean authUser) throws Exception { return addSaveBZCode(codeBZApplyDTO,authUser); } 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 56d77fd..a51667b 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 @@ -8,6 +8,7 @@ import com.thoughtworks.xstream.io.xml.DomDriver; import com.vci.ubcs.code.bo.CodeClassifyFullInfoBO; import com.vci.ubcs.code.constant.MdmDuckingConstant; +import com.vci.ubcs.code.dto.CodeBZApplyDTO; import com.vci.ubcs.code.dto.CodeOrderDTO; import com.vci.ubcs.code.dto.CodeOrderSecDTO; import com.vci.ubcs.code.entity.*; @@ -37,7 +38,6 @@ import com.vci.ubcs.code.webService.annotation.VciWebservice; import com.vci.ubcs.code.webService.config.AttributeMapConfig; import com.vci.ubcs.code.webService.config.PersonAndDeptConfig; -import com.vci.ubcs.code.wrapper.CodeClassifyWrapper; import com.vci.ubcs.omd.feign.IBtmTypeClient; import com.vci.ubcs.omd.vo.BtmTypeVO; import com.vci.ubcs.starter.exception.VciBaseException; @@ -54,7 +54,6 @@ import com.vci.ubcs.system.vo.DeptVO; import com.vci.ubcs.system.vo.RoleVO; import lombok.extern.slf4j.Slf4j; -import org.apache.http.auth.AuthenticationException; import org.springblade.core.log.exception.ServiceException; import org.springblade.core.secure.utils.AuthUtil; import org.springblade.core.tool.api.R; @@ -72,6 +71,7 @@ import java.util.*; import java.util.concurrent.CopyOnWriteArrayList; import java.util.concurrent.atomic.AtomicBoolean; +import java.util.function.Function; import java.util.stream.Collectors; import static com.vci.ubcs.code.constant.MdmEngineConstant.DEFAULT_SYNC_ATTR_LIST; @@ -84,6 +84,50 @@ @Slf4j @VciWebservice(path = "/universalInterface") public class UniversalInterfaceImpl<IDockingLogeServiceing> implements UniversalInterfaceI { + + /*** + * 鎿嶄綔绫诲瀷 + */ + @Value("${bzApply.operationType:operationType}") + private String operationType; + /*** + * 鏄惁绯诲垪 + */ + @Value("${bzApply.isSeries:isSeries}") + private String isSeries; + /*** + *鍙戝竷鏃堕棿 + */ + @Value("${bzApply.releaseTime:releaseTime}") + private String releaseTime; + /*** + * 婧愭爣鍑嗗彿 + */ + @Value("${bzApply.oldCode:oldCode}") + private String oldCode; + + /*** + * 绯诲垪娴佹按 + */ + @Value("${bzApply.seriesFlow:seriesFlow}") + private String seriesFlow; + /*** + * 鏄惁鍙樻洿绯诲垪 + */ + @Value("${bzApply.isEditSeries:isEditSeries}") + private String isEditSeries; + /*** + * 鎺у埗鏄惁鍐欏叆鍊肩殑鐮佹鍚嶇О + */ + @Value("${bzApply.secName:绯诲垪鍙穧") + private String secName; + + /*** + * 鎺у埗鏄惁鍐欏叆鍊肩殑鐮佹鍚嶇О + */ + @Value("${bzApply.yearSecName:骞翠唬鍙穧") + private String yearSecName; + @Value("${code.universalinterface.checkSystemConfig:true}") public boolean CODE_CHECKCONFIG; @@ -858,6 +902,7 @@ orderDTO.setData(rowData.getFiledValue()); String code=engineService.addSaveCodeNotauthUser(orderDTO,false); if(StringUtils.isNotBlank(code)) { + //rowData.setCode(code); StringBuffer sqlsb = new StringBuffer(); sqlsb.append(" select * from "); sqlsb.append(tableName); @@ -1982,7 +2027,7 @@ try { if ("xml".equals(dataType)) { XStream xStream = new XStream(new DomDriver()); - xStream.processAnnotations(RootDataVO.class); + xStream.processAnnotations(ApplyBZVO.class); xStream.autodetectAnnotations(true); ApplyBZVO rootDataVO = (ApplyBZVO) xStream.fromXML(data); applyBZParamVO.setData(rootDataVO); @@ -1999,18 +2044,15 @@ //鍏嶅瘑鐧诲綍鐢宠token锛宺equest涓坊鍔犵敤鎴蜂俊鎭� //passwordFreeLoginService.pwdFreeLoginByBoolean(userVo.getUserName(), this.getRequest()); passwordFreeLoginService.pwdFreeLoginByBoolean(systemId.toLowerCase(),this.getRequest()); - AuthUtil.getUser(); //杩欐槸璐﹀彿淇℃伅 SessionInfo sessionInfo = new SessionInfo(); sessionInfo.setUserId(userVo.getUserName()); sessionInfo.setUserName(userVo.getTrueName()); sessionInfo.setIp(userVo.getIp()); VciBaseUtil.setCurrentUserSessionInfo(sessionInfo); -// List<XMLResultDataObjectDetailDO> allResultDataObjectDetailDOS=new ArrayList<>(); String finalSystemId = systemId; String libray=""; boolean isCodeOrGroupCode=false; - libray = classfyBZVO.getLibrary(); CodeClassifyVO codeClassifyVO = getClassfy(classfyBZVO,libray); log.info("end锛氬垎绫绘煡璇㈠畬姣�"); @@ -2032,8 +2074,8 @@ } CodeClassifyTemplateVO templateVO = engineService.getUsedTemplateByClassifyOid(codeClassifyVO.getOid()); if(templateVO==null||StringUtils.isBlank(templateVO.getOid())){ - objerrorCode="1"; - throw new Throwable ("鏍规嵁浼犺緭鐨勫垎绫伙紝鏈幏鍙朚DM绯荤粺涓搴旀ā鏉�"); + objerrorCode="100"; + throw new Throwable ("鏍规嵁浼犺緭鐨勫垎绫伙紝鏈幏鍙栫郴缁熶腑瀵瑰簲妯℃澘"); } log.info("end锛氭ā鏉挎煡璇㈠畬姣�"); ApplyBZDatasVO applyBZDatasVO = classfyBZVO.getObjects(); @@ -2041,54 +2083,76 @@ List<CodeClassifyTemplateAttrVO> attrVOS = templateVO.getAttributes().stream().filter(s -> !DEFAULT_SYNC_ATTR_LIST.contains(s.getId()) && VciBaseUtil.getBoolean(s.getFormDisplayFlag()) ).collect(Collectors.toList()); List<ApplyBZDataVO> applyBZDataVOList= applyBZDatasVO.getObject(); + if(applyBZDataVOList.size()>1){ + objerrorCode="1"; + throw new Throwable ("鏍囧噯鐢宠鍙敮鎸佷竴鏉℃暟鎹敵璇�"); + } String finalLibray = libray; ClassfyBZVO finalClassfyBZVO = classfyBZVO; + //瑙勫垯鐨勪富閿渶瑕佸幓鑾峰彇 + CodeClassifyFullInfoBO classifyFullInfo = classifyService.getClassifyFullInfo(codeClassifyVO.getOid()); + if(classifyFullInfo==null ||classifyFullInfo.getCurrentClassifyVO()==null || StringUtils.isBlank(classifyFullInfo.getCurrentClassifyVO().getOid())){ + objerrorCode="1"; + log.info("classifyFullInfo:"+"鏍规嵁浼犺緭鐨勫垎绫伙紝鏈幏鍙栧垎绫荤浉鍏充俊鎭�"); + throw new Throwable ("鏍规嵁浼犺緭鐨勫垎绫伙紝鏈幏鍙栧垎绫荤浉鍏充俊鎭�"); + } + CodeRuleVO ruleVO = engineService.getCodeRuleByClassifyFullInfo(classifyFullInfo); + if(ruleVO==null||StringUtils.isBlank(ruleVO.getOid())){ + objerrorCode="102"; + throw new Throwable ("鏍规嵁浼犺緭鐨勫垎绫伙紝鏈幏鍙朚DM绯荤粺涓搴旇鍒�"); + } + log.info("end锛氳鍒欒幏鍙栧畬姣�"); + List<CodeOrderSecDTO> codeOrderSecDTOList = getRuleCodeOrderSecDTOs(classfyBZVO.getSections().getSection(), ruleVO,classifyFullInfo); + log.info("end锛氱爜娈佃幏鍙栧畬姣�"); + CodeBZApplyDTO codeBZApplyDTO=new CodeBZApplyDTO(); + codeBZApplyDTO.setSecDTOList(codeOrderSecDTOList);//鍒嗙被鐮佹 applyBZDataVOList.stream().forEach(applyBZDataVO -> { + String code=""; + String id=applyBZDataVO.getId(); try { - this.getConfigDatas(finalSystemId, finalLibray, applyBZDatasVO, attrVOS, dataObjectVO); + List<ProppertyVO> proppertyVOList=applyBZDataVO.getProp(); + String oldCodeValue=applyBZDataVO.getOldCode(); + setPropertyValue(oldCode,oldCodeValue,proppertyVOList);//婧愭爣鍑嗗彿 + boolean editSeriesFlag= applyBZDataVO.isEditSeriesFlag(); + setPropertyValue(isEditSeries,String.valueOf(editSeriesFlag),proppertyVOList);//鏄惁鏇翠负绯诲垪 + boolean seriesFlag=applyBZDataVO.isSeriesFlag(); + setPropertyValue(isSeries,String.valueOf(seriesFlag),proppertyVOList);//婧愭爣鍑嗙被鍨� + String operationTypeValue=applyBZDataVO.getOperationType(); + setPropertyValue(operationType,operationTypeValue,proppertyVOList);//鎿嶄綔绫诲瀷1:鍒跺畾锛�2:淇 + String releaseTimeValue= applyBZDataVO.getReleaseTime(); + setPropertyValue(releaseTime,releaseTimeValue,proppertyVOList);//鍙戝竷鏃堕棿 + String seriesFlow=applyBZDataVO.getSeriesFlow();//绯诲垪娴佹按 + codeBZApplyDTO.setOldCode(oldCodeValue); + codeBZApplyDTO.setReleaseTime(releaseTimeValue); + codeBZApplyDTO.setEditSeries(editSeriesFlag); + codeBZApplyDTO.setSeries(seriesFlag); + codeBZApplyDTO.setOperationType(operationTypeValue); + codeBZApplyDTO.setSeriesFlow(seriesFlow); + codeBZApplyDTO.setCodeClassifyOid(codeClassifyVO.getOid()); + codeBZApplyDTO.setCodeRuleOid(ruleVO.getOid()); + codeBZApplyDTO.setTemplateOid(templateVO.getOid()); + codeBZApplyDTO.setCreator(applyBZDataVO.getCreator()); + codeBZApplyDTO.setLastModifier(applyBZDataVO.getEditor()); + codeBZApplyDTO.setLcStatus(applyBZDataVO.getStatus()); + ApplyBZDatasVO newApplyBZDatasVO=new ApplyBZDatasVO(); + newApplyBZDatasVO.setObject(Arrays.asList(applyBZDataVO)); log.info("end锛氭暟鎹粍缁囧畬姣�"); - //瑙勫垯鐨勪富閿渶瑕佸幓鑾峰彇 - CodeClassifyFullInfoBO classifyFullInfo = classifyService.getClassifyFullInfo(codeClassifyVO.getOid()); - if(classifyFullInfo==null ||classifyFullInfo.getCurrentClassifyVO()==null || StringUtils.isBlank(classifyFullInfo.getCurrentClassifyVO().getOid())){ - objerrorCode="1"; - log.info("classifyFullInfo:"+"鏍规嵁浼犺緭鐨勫垎绫伙紝鏈幏鍙栧垎绫荤浉鍏充俊鎭�"); - throw new Throwable ("鏍规嵁浼犺緭鐨勫垎绫伙紝鏈幏鍙栧垎绫荤浉鍏充俊鎭�"); - } - CodeRuleVO ruleVO = engineService.getCodeRuleByClassifyFullInfo(classifyFullInfo); - if(ruleVO==null||StringUtils.isBlank(ruleVO.getOid())){ - objerrorCode="102"; - throw new Throwable ("鏍规嵁浼犺緭鐨勫垎绫伙紝鏈幏鍙朚DM绯荤粺涓搴旇鍒�"); - } - log.info("end锛氳鍒欒幏鍙栧畬姣�"); - //List<CodeOrderSecDTO> codeOrderSecDTOList = getRuleCodeOrderSecDTOs(ruleVO,classifyFullInfo); - log.info("end锛氱爜娈佃幏鍙栧畬姣�"); - CodeOrderDTO orderDTO = new CodeOrderDTO(); - orderDTO.setCodeClassifyOid(codeClassifyVO.getOid());//鍒嗙被涓婚敭 - //orderDTO.setSecDTOList(codeOrderSecDTOList);//鍒嗙被鐮佹 - //mdmIOService.batchSyncApplyCode(orderDTO, dataObjectVO, resultDataObjectDetailDOs,isCodeOrGroupCode); - //allResultDataObjectDetailDOS.add(resultDataObjectDetailDOs); - log.info("end锛氱敵璇疯幏鍙栧畬姣�"); + this.getConfigDatas(finalSystemId, finalLibray, newApplyBZDatasVO, attrVOS, dataObjectVO); + log.info("end锛氭暟鎹粍缁囧畬姣�"); + codeBZApplyDTO.setData(dataObjectVO.getRowData().get(0).getFiledValue()); + code=engineService.addSaveBZCodeNotauthUser(codeBZApplyDTO,false); + msg="缂栫爜鐢宠鎴愬姛:缂栫爜涓猴細"+code; } catch (Throwable e) { - List<ApplyBZDataVO> applyDataVOList = finalClassfyBZVO.getObjects().getObject(); objerrorCode = "1"; - if (!CollectionUtils.isEmpty(applyDataVOList)) { - applyDataVOList.stream().forEach(applyDataVO -> { - XMLResultDataObjectDetailDO xmlResultDataObjectDetailDO = new XMLResultDataObjectDetailDO(); - xmlResultDataObjectDetailDO.setCode(""); - xmlResultDataObjectDetailDO.setId(applyDataVO.getId()); - xmlResultDataObjectDetailDO.setErrorid(objerrorCode); - xmlResultDataObjectDetailDO.setMsg("缂栫爜鐢宠澶辫触:" + e.getMessage()); - resultDataObjectDetailDOs.add(xmlResultDataObjectDetailDO); - }); - } else { - XMLResultDataObjectDetailDO xmlResultDataObjectDetailDO = new XMLResultDataObjectDetailDO(); - xmlResultDataObjectDetailDO.setCode(""); - xmlResultDataObjectDetailDO.setId(""); - xmlResultDataObjectDetailDO.setErrorid(objerrorCode); - xmlResultDataObjectDetailDO.setMsg("缂栫爜鐢宠澶辫触:" + e.getMessage()); - resultDataObjectDetailDOs.add(xmlResultDataObjectDetailDO); - } + msg="缂栫爜鐢宠澶辫触:" +e.getMessage(); e.printStackTrace(); + }finally { + XMLResultDataObjectDetailDO xmlResultDataObjectDetailDO = new XMLResultDataObjectDetailDO(); + xmlResultDataObjectDetailDO.setCode(code); + xmlResultDataObjectDetailDO.setId(id); + xmlResultDataObjectDetailDO.setErrorid(objerrorCode); + xmlResultDataObjectDetailDO.setMsg(msg); + resultDataObjectDetailDOs.add(xmlResultDataObjectDetailDO); } }); XMLResultClassfyVO resultClassfyVO = new XMLResultClassfyVO(); @@ -2106,7 +2170,6 @@ e.printStackTrace(); msg="鐢宠缂栫爜澶辫触:"+e.getMessage(); }finally { - XMLResultSystemVO xmlResultSystemVO=new XMLResultSystemVO(); xmlResultSystemVO.setClassifys(resultClassfyVOList); xmlResultSystemVO.setMsg(msg); @@ -2137,6 +2200,13 @@ log.info("杩斿洖鍙傛暟:"+resultStr); //璋冪敤闆嗗洟鐢宠鎺ュ彛鐢宠闆嗗洟鐮� return resultStr; + } + private void setPropertyValue(String key,String value,List<ProppertyVO> proppertyVOList){ + ProppertyVO proppertyVO=new ProppertyVO(); + proppertyVO.setKey(key); + proppertyVO.setValue(StringUtils.isBlank(value)?"":value); + proppertyVOList.add(proppertyVO); + } /*** * 鏌ヨ鏍¢獙鍒嗙被淇℃伅 @@ -2265,6 +2335,7 @@ Map<String,String> errorMap=new HashMap<>(); for(CodeBasicSecVO codeBasicSecVO: codeBasicSecVOS) { String sectype = codeBasicSecVO.getSecType(); + String newSecName=codeBasicSecVO.getName(); String classifySecOid= codeBasicSecVO.getOid(); String message=""; if (!sectype.equals(CodeSecTypeEnum.CODE_SERIAL_SEC.getValue())) { @@ -2294,7 +2365,7 @@ } } } - if(StringUtils.isBlank(sectypeValue)){ + if(StringUtils.isBlank(sectypeValue)&&!newSecName.equals(secName)){ message="浼犲叆鐨勫垎绫荤爜娈碉細銆�" + name + " 銆戠殑鍊间笉鍏佽涓虹┖"; errorMap.put("error",errorMap.getOrDefault("error","")+";"+message); } @@ -2384,7 +2455,7 @@ LinkedHashMap<Integer, String> integerValueMap = new LinkedHashMap<>(); Map<String, String> filedValueMap = new HashMap<>(); if (!CollectionUtils.isEmpty(proppertyVOList)) { - Map<String, String> sourceKeyValueMap = proppertyVOList.stream().collect(Collectors.toMap(ProppertyVO::getKey, ProppertyVO::getValue, (key1, key2) -> key2)); + Map<String, String> sourceKeyValueMap = proppertyVOList.stream().collect(Collectors.toMap(ProppertyVO::getKey, ProppertyVO::getValue, (key1, key2) -> key2)); Map<String, String> keyValueMap = new HashMap<>(); //鍒ゆ柇attrMapConfigMap鏄惁鏈夊�硷紝濡傛灉娌℃湁鍒欒鏄庡熀纭�榛樿鐨勬槸缂栫爜绯荤粺瀛楁 if (!CollectionUtils.isEmpty(attrMapConfigMap)) { -- Gitblit v1.9.3