From a9f5becb47b768c1b7704efc580182dfd089c44a Mon Sep 17 00:00:00 2001 From: 田源 <lastanimals@163.com> Date: 星期二, 29 八月 2023 11:32:50 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingSystemConfigServiceImpl.java | 5 ++ Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmIOServiceImpl.java | 58 +++++++++++++++++++--------- Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/attrmap/edit.xml | 34 +++++++++++++++++ 3 files changed, 77 insertions(+), 20 deletions(-) diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/attrmap/edit.xml b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/attrmap/edit.xml new file mode 100644 index 0000000..61b25a1 --- /dev/null +++ b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/attrmap/edit.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<data systemId="MPM"> + <user userName="weidy" trueName="榄忓ぇ鍕�" ip="127.0.0.1"/> + <classifys> + <classify classCode="020101" library="wupin" fullclsfNamePath="鐗╁搧##VCI##鏍囧噯浠�##VCI##铻烘爴"> + <objects> + <object code="02010100039" id="0023401" status="Released" operate="update" editor="weidy" > + <prop key="partname" text="鍚嶇О" value="娓╁害璋冭妭鍣�1"/> + <prop key="use" text="涓昏鍔熻兘" value="瀵肩數杩炴帴1"/> + <prop key="xinghaoguige" text="涓昏鍔熻兘" value="TH-003274"/> + </object> + <object code="02010100040" id="0023402" status="Released" operate="update" editor="weidy"> + <prop key="partname" text="鎵�灞炵粨鏋�" value="娓╁害璋冭妭鍣�2"/> + <prop key="use" text="涓昏鍔熻兘" value="瀵肩數杩炴帴2"/> + <prop key="xinghaoguige" text="涓昏鍔熻兘" value="GGXH-003274"/> + </object> + </objects> + </classify> + <classify classCode="020102" library="wupin" fullclsfNamePath="鐗╁搧##VCI##鏍囧噯浠�##VCI##铻烘瘝"> + <objects> + <object code="02010200033" id="0023401" status="Released" operate="update" editor="weidy"> + <prop key="partname" text="鍚嶇О" value="娓╁害璋冭妭鍣�1"/> + <prop key="use" text="涓昏鍔熻兘" value="瀵肩數杩炴帴1"/> + <prop key="xinghaoguige" text="涓昏鍔熻兘" value="GGXH-003274"/> + </object> + <object code="02010200034" id="0023402" status="Released" operate="update" editor="weidy"> + <prop key="partname" text="鎵�灞炵粨鏋�" value="娓╁害璋冭妭鍣�2"/> + <prop key="use" text="涓昏鍔熻兘" value="瀵肩數杩炴帴2"/> + <prop key="xinghaoguige" text="涓昏鍔熻兘" value="GGXH-003274"/> + </object> + </objects> + </classify> + </classifys> +</data> diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingSystemConfigServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingSystemConfigServiceImpl.java index a256faf..21c60ed 100644 --- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingSystemConfigServiceImpl.java +++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingSystemConfigServiceImpl.java @@ -367,7 +367,10 @@ @Override public boolean deleteDataById(String oids) { - return false; + VciBaseUtil.alertNotNull(oids, "鏁版嵁涓婚敭涓虹┖"); + List<String> oidList=VciBaseUtil.str2List(oids); + int i=dockingSystemConfigMapper.deleteBatchIds(oidList); + return i>0?true:false; } /** 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 c81e986..b59621a 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 @@ -2090,6 +2090,7 @@ XMLResultDataObjectDetailDO resultDataObjectDetailDO = new XMLResultDataObjectDetailDO(); if(isCodeOrGroupCode) { if(StringUtils.isBlank(groupCode)){ + errorid="1"; mes+="锛涚敵璇风殑缂栫爜绫诲瀷涓洪泦鍥㈢爜锛岀瓑寰呴泦鍥㈢紪鐮佽祴鍊�"; } resultDataObjectDetailDO.setCode(groupCode); @@ -2157,14 +2158,16 @@ } if(isCodeOrGroupCode) { if(StringUtils.isBlank(groupCode)){ + resultDataObjectDetailDO.setErrorid("1"); msg="鐢宠鐨勭紪鐮佺被鍨嬩负闆嗗洟鐮侊紝绛夊緟闆嗗洟缂栫爜璧嬪��"; } resultDataObjectDetailDO.setCode(groupCode); }else{ resultDataObjectDetailDO.setCode(code); + resultDataObjectDetailDO.setErrorid("0"); } resultDataObjectDetailDO.setId(sourceOid); - resultDataObjectDetailDO.setErrorid("0"); + resultDataObjectDetailDO.setMsg(msg); resultDataObjectDetailDOs.add(resultDataObjectDetailDO); //澶勭悊浼犻�佺殑鏁版嵁涓叧閿睘鎬ч噸澶嶇殑锛岀洿鎺ユ嬁鍒板凡缁忕敵璇峰埌缂栫爜鐨勬暟鎹紪鐮佺洿鎺ュ皢璧嬬粰鍏抽敭灞炴�ч噸澶嶇殑鏁版嵁 @@ -2324,15 +2327,20 @@ sb.append(" select * from "); sb.append(tableName); sb.append(" where 1=1 "); - sb.append(" id in ("); + if(isCodeOrGroupCode) { + sb.append(" and groupcode in ("); + }else{ + sb.append(" and id in ("); + } 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); Map<String, ClientBusinessObject> codeSystemObjectMap = cboList.stream().filter(systeDataObject -> systeDataObject != null && StringUtils.isNotBlank(systeDataObject.getId())).collect(Collectors.toList()).stream().collect(Collectors.toMap(s -> s.getId(), t -> t)); Map<String, String> errorMap = new HashMap<>(); List<CodeOrderDTO> codeOrderDTOList = new ArrayList<>(); - this.getCodeOrderDTOs(codeClassifyVO, templateVO, codeDataMap, codeSystemObjectMap, codeOrderDTOList, errorMap); + this.getCodeOrderDTOs(codeClassifyVO, templateVO, codeDataMap, codeSystemObjectMap, codeOrderDTOList, errorMap,isCodeOrGroupCode); // List<CodeClassifyProcessTempVO> codeClassifyProcessTempVOS=codeClassifyProcessTempService.listProcessTemplate(templateVO.getOid(),"code_cls_flow_use_order"); boolean isProcess=false; /** if(!CollectionUtils.isEmpty(codeClassifyProcessTempVOS)){ @@ -2354,7 +2362,7 @@ RowDatas rowData=codeDataMap.get(code); String status=rowData.getStatus(); String operation=rowData.getOperation(); - if (cbo.getTs().compareTo(orderDTO.getTs())==0?true:false) { + if (cbo.getTs().compareTo(orderDTO.getTs())==0?false:true) { // throw new VciBaseException("鏁版嵁涓嶆槸鏈�鏂扮殑锛屽彲鑳戒粬浜哄凡缁忎慨鏀癸紝璇峰埛鏂板悗鍐嶈瘯"); errorMap.put(orderDTO.getId(),errorMap.getOrDefault(orderDTO.getId(),"")+";鏁版嵁涓嶆槸鏈�鏂扮殑锛屽彲鑳戒粬浜哄凡缁忎慨鏀癸紝璇峰埛鏂板悗鍐嶈瘯"); } @@ -2396,7 +2404,7 @@ List<CodeAllCode>newCodeAllCodeList= codeAllCodeService.selectByWrapper(Wrappers.<CodeAllCode>query().lambda().eq(CodeAllCode::getCreateCodeOid, cbo.getOid())); if (!CollectionUtils.isEmpty(newCodeAllCodeList)) { - CodeAllCode codeCbo = codeAllCodeList.get(0); + CodeAllCode codeCbo = newCodeAllCodeList.get(0); log.info("codeCbos code:" + codeCbo.getId()); codeCbo.setLcStatus(status); codeAllCodeList.add(codeCbo); @@ -2473,7 +2481,7 @@ //瀛樺偍鏁版嵁 try { engineService.updateBatchByBaseModel(classifyFullInfo.getTopClassifyVO().getBtmTypeId(),updateList); - codeAllCodeService.saveBatch(codeAllCodeList); + codeAllCodeService.saveOrUpdateBatch(codeAllCodeList); if(deleteList.size()>0) { commonsMapper.deleteByTaleAndOid(tableName, VciBaseUtil.array2String(deleteList.toArray(new String[]{}))); } @@ -2607,17 +2615,22 @@ //娌℃湁闄愬埗鍒嗙被锛屼絾鏄竴涓ā鏉垮彧鍙兘鍦ㄤ竴涓笟鍔$被鍨嬮噷闈紝鎵�浠ョ洿鎺ユ煡璇㈣繖涓笟鍔$被鍨嬪嵆鍙� if (!CollectionUtils.isEmpty(conditionMap)) { - final String[] sql = {"select count(*) from " + VciBaseUtil.getTableName(classifyFullInfo.getTopClassifyVO().getBtmTypeId()) + " where 1 = 1 "}; + final String[] sql = {"select count(*) from " + VciBaseUtil.getTableName(classifyFullInfo.getTopClassifyVO().getBtmTypeId()) + " t where 1 = 1 "}; conditionMap.forEach((key, value) -> { - sql[0] += " and " + key + " = " + value; + if(StringUtils.isBlank(value)||value.equals(QueryOptionConstant.ISNULL)){ + sql[0] += " and " + key + " is null "; + }else{ + sql[0] += " and " + key + " = " + value; + } + }); if (StringUtils.isNotBlank(orderDTO.getOid())) { //淇敼鐨勬椂鍊欙紝闇�瑕佹帓闄よ嚜宸� - sql[0] += " and oid != '" + orderDTO.getOid() + "'"; + sql[0] += " and t.oid != '" + orderDTO.getOid() + "'"; } else if (StringUtils.isNotBlank(orderDTO.getCopyFromVersion())) { - sql[0] += " and oid != '" + orderDTO.getCopyFromVersion() + "'"; + sql[0] += " and t.oid != '" + orderDTO.getCopyFromVersion() + "'"; } - sql[0] += " and lastR = '1' and lastV = '1' "; + sql[0] += " and t.lastR = '1' and t.lastV = '1' "; if (commonsMapper.queryCountBySql(sql[0]) > 0) { String ruleInfoMsg = keyRuleVO == null ? "" : "鏌ヨ瑙勫垯锛氬幓闄ょ┖鏍�--{0},蹇界暐澶у皬鍐�--{1},蹇界暐鍏ㄥ崐瑙�--{2},蹇界暐鍏ㄩ儴绌烘牸--{3}"; String[] objs = new String[]{trim ? "鏄�" : "鍚�", ignoreCase ? "鏄�" : "鍚�", ignoreWidth ? "鏄�" : "鍚�", trimAll ? "鏄�" : "鍚�"}; @@ -2817,17 +2830,24 @@ * @param errorMap * @return */ - private void getCodeOrderDTOs(CodeClassifyVO codeClassifyVO,CodeClassifyTemplateVO templateVO,Map<String ,RowDatas>codeDataMap,Map<String, ClientBusinessObject> codeSystemObjectMap,List<CodeOrderDTO> codeOrderDTOList,Map<String,String> errorMap){ - codeDataMap.keySet().forEach(code->{ - RowDatas rowDatas=codeDataMap.get(code); - Map<String, String> data= rowDatas.getFiledValue(); + private void getCodeOrderDTOs(CodeClassifyVO codeClassifyVO,CodeClassifyTemplateVO templateVO,Map<String ,RowDatas>codeDataMap,Map<String, ClientBusinessObject> codeSystemObjectMap,List<CodeOrderDTO> codeOrderDTOList,Map<String,String> errorMap,boolean isCodeOrGroupCode){ + codeSystemObjectMap.keySet().forEach(code->{ + ClientBusinessObject sysDataObject= codeSystemObjectMap.get(code); + if(isCodeOrGroupCode){ + code=sysDataObject.getAttributeValue("GROUPCODE"); + } CodeOrderDTO orderDTO = new CodeOrderDTO(); - if(codeSystemObjectMap.containsKey(code)){ - ClientBusinessObject sysDataObject= codeSystemObjectMap.get(code); + if(codeDataMap.containsKey(code)){ + RowDatas rowDatas=codeDataMap.get(code); + Map<String, String> data= rowDatas.getFiledValue(); orderDTO.setCodeClassifyOid(codeClassifyVO.getOid());//鍒嗙被涓婚敭 orderDTO.setOid(sysDataObject.getOid());//鏁版嵁oid orderDTO.setLcStatus(rowDatas.getStatus());//鐘舵�� - orderDTO.setId(code); + if(isCodeOrGroupCode){ + orderDTO.setId(sysDataObject.getId()); + }else{ + orderDTO.setId(code); + } orderDTO.setTs(sysDataObject.getTs()); orderDTO.setBtmname(codeClassifyVO.getBtmname());//涓氬姟绫诲瀷 orderDTO.setDescription("闆嗘垚璋冪敤:鏇存柊");//鏁版嵁鎻忚堪 @@ -4001,7 +4021,7 @@ DefaultAttrAssimtUtil.copplyDefaultAttrAssimt(dataMap,clientBusinessObject); for (String key:dataMap.keySet()){ Object value= dataMap.getOrDefault(key,""); - clientBusinessObject.setAttributeValue(key,value.toString()); + clientBusinessObject.setAttributeValue(key,value==null?"":value.toString()); } clientBusinessObjectList.add(clientBusinessObject); }); -- Gitblit v1.9.3