From 1e3cfb229f54298f4ef27fa73dc05affaf1b9dcb Mon Sep 17 00:00:00 2001 From: yuxc <653031404@qq.com> Date: 星期二, 13 六月 2023 17:27:55 +0800 Subject: [PATCH] 1、MDM服务发布、停用、回收、启用等功能测试修改。 2、对相应联调进行修改。 --- Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/MdmEngineService.java | 6 Source/UBCS/ubcs-service-api/ubcs-dict-api/src/main/java/com/vci/ubcs/system/feign/IDictBizClient.java | 2 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmEngineServiceImpl.java | 148 ++++++++++++++++++++++-------------- Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CommonsMapper.java | 11 ++ Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CommonsMapper.xml | 4 + Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClstemplateServiceImpl.java | 69 +++++++++------- 6 files changed, 145 insertions(+), 95 deletions(-) diff --git a/Source/UBCS/ubcs-service-api/ubcs-dict-api/src/main/java/com/vci/ubcs/system/feign/IDictBizClient.java b/Source/UBCS/ubcs-service-api/ubcs-dict-api/src/main/java/com/vci/ubcs/system/feign/IDictBizClient.java index ce51779..59c2b25 100644 --- a/Source/UBCS/ubcs-service-api/ubcs-dict-api/src/main/java/com/vci/ubcs/system/feign/IDictBizClient.java +++ b/Source/UBCS/ubcs-service-api/ubcs-dict-api/src/main/java/com/vci/ubcs/system/feign/IDictBizClient.java @@ -34,7 +34,7 @@ * @author Chill */ @FeignClient( - value = AppConstant.APPLICATION_NAME_OMD, + value = AppConstant.APPLICATION_SYSTEM_NAME, fallback = IDictBizClientFallback.class ) public interface IDictBizClient { diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CommonsMapper.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CommonsMapper.java index e2f6a78..1de1374 100644 --- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CommonsMapper.java +++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CommonsMapper.java @@ -31,7 +31,8 @@ * @param mapList 闇�瑕佹彃鍏ョ殑鎵�鏈夎褰� * @return 鎻掑叆鎴愬姛鐨勬潯鏁� */ - Integer insertByBaseModel(String tableName,Map<String,String> columnMap,List<Map<String,String>> mapList);/** + Integer insertByBaseModel(String tableName,Map<String,String> columnMap,List<Map<String,String>> mapList); + /** * 浼犲叆琛ㄥ悕锛宮ap锛宭ist<map>瀹屾垚鎵归噺鏇存柊鎿嶄綔 * @param tableName 琛ㄥ悕 * @param mapList 闇�瑕佹洿鏂扮殑鎵�鏈夎褰� @@ -40,4 +41,12 @@ @InterceptorIgnore(tenantLine = "true") Integer updateBatchByBaseModel(String tableName,List<Map<String,String>> mapList); + /** + * 浼犲叆琛ㄥ悕锛宮ap锛宱ids瀹屾垚鎵归噺鍒犻櫎鎿嶄綔 + * @param tableName 琛ㄥ悕 + * @param oids 闇�瑕佸垹闄ょ殑鎵�鏈夎褰� + * @return 鍒犻櫎鎴愬姛鐨勬潯鏁� + */ + Integer deleteByTaleAndOid(String tableName,String oids); + } 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 bacba02..3b79f45 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 @@ -377,7 +377,7 @@ * @param baseModels 澶勭悊鏁版嵁 * @return 澶勭悊鎴愬姛鏁版嵁鏉℃暟 */ - Integer insertBatchByType(String btmType, List<BaseModel> baseModels) throws Exception; + Integer insertBatchByType(String btmType, List<BaseModel> baseModels); /** * 浼犲叆涓氬姟绫诲瀷浠ュ強鐩竜id闆嗗悎鏌ヨ鏁版嵁杩涜杩斿洖 * @@ -385,7 +385,7 @@ * @param oids 闇�瑕佹煡璇㈢殑oid闆嗗悎 閫楀彿鍒嗗紑 * @return 鏌ヨ鍑虹殑鏁版嵁 */ - List<BaseModel> selectByTypeAndOid(String btmType, String oids) throws IllegalAccessException, NoSuchFieldException, InstantiationException, InvocationTargetException, IntrospectionException, SQLException; + List<BaseModel> selectByTypeAndOid(String btmType, String oids) ; /** * 浼犲叆涓氬姟绫诲瀷浠ュ強鐩稿叧鏁版嵁杩涜鎵归噺鏇存柊鎿嶄綔 * @@ -393,6 +393,6 @@ * @param baseModels 澶勭悊鏁版嵁 * @return 澶勭悊鐘舵�� */ - R updateBatchByBaseModel(String btmType, List<BaseModel> baseModels) throws Exception; + R updateBatchByBaseModel(String btmType, List<BaseModel> baseModels); } diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClstemplateServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClstemplateServiceImpl.java index bfb5344..7071514 100644 --- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClstemplateServiceImpl.java +++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClstemplateServiceImpl.java @@ -89,7 +89,7 @@ private CodeClassifyTemplateButtonServiceImpl codeTempbuttonServiceImpl; @Autowired(required = false) private ICodeClassifyProcessTempService codeClsflowtempServiceImpl; -// @Autowired(required = false) + // @Autowired(required = false) // private CodeClsflowtempMapper codeClsflowtempMapper; @Autowired(required = false) private CodeTemplatePhaseMapper codeTempphaseMapper; @@ -493,34 +493,34 @@ // ClientBusinessObject clientBusinessObject_template_insert = null; // try { // clientBusinessObject_template_insert = clientBusinessObjectOperation.reviseBusinessObject(clientBusinessObject_template, ""); - codeCls_template_insert.setOid(VciBaseUtil.getPk()); - codeCls_template_insert.setRevisionOid(VciBaseUtil.getPk()); - codeCls_template_insert.setNameOid(codeCls_template.getNameOid()); - codeCls_template_insert.setBtmname(codeCls_template.getBtmname()); - codeCls_template_insert.setLastR(String.valueOf(1)); - codeCls_template_insert.setFirstR(String.valueOf(0)); - codeCls_template_insert.setFirstV(String.valueOf(1)); - codeCls_template_insert.setLastV(String.valueOf(1)); - codeCls_template_insert.setCreator(AuthUtil.getUser().getUserName()); - codeCls_template_insert.setCreateTime(new Date()); - codeCls_template_insert.setLastModifier(AuthUtil.getUser().getUserName()); - codeCls_template_insert.setLastModifyTime(new Date()); - codeCls_template_insert.setRevisionRule(codeCls_template.getRevisionRule()); - codeCls_template_insert.setVersionRule(codeCls_template.getVersionRule()); - Map rvObj = baseMapper.getNextRevision(codeCls_template.getNameOid()); - codeCls_template_insert.setRevisionSeq(Integer.parseInt(rvObj.get("REVISIONSEQ").toString())); - codeCls_template_insert.setRevisionValue(rvObj.get("REVISIONVAL").toString()); + codeCls_template_insert.setOid(VciBaseUtil.getPk()); + codeCls_template_insert.setRevisionOid(VciBaseUtil.getPk()); + codeCls_template_insert.setNameOid(codeCls_template.getNameOid()); + codeCls_template_insert.setBtmname(codeCls_template.getBtmname()); + codeCls_template_insert.setLastR(String.valueOf(1)); + codeCls_template_insert.setFirstR(String.valueOf(0)); + codeCls_template_insert.setFirstV(String.valueOf(1)); + codeCls_template_insert.setLastV(String.valueOf(1)); + codeCls_template_insert.setCreator(AuthUtil.getUser().getUserName()); + codeCls_template_insert.setCreateTime(new Date()); + codeCls_template_insert.setLastModifier(AuthUtil.getUser().getUserName()); + codeCls_template_insert.setLastModifyTime(new Date()); + codeCls_template_insert.setRevisionRule(codeCls_template.getRevisionRule()); + codeCls_template_insert.setVersionRule(codeCls_template.getVersionRule()); + Map rvObj = baseMapper.getNextRevision(codeCls_template.getNameOid()); + codeCls_template_insert.setRevisionSeq(Integer.parseInt(rvObj.get("REVISIONSEQ").toString())); + codeCls_template_insert.setRevisionValue(rvObj.get("REVISIONVAL").toString()); // VersionValueObject versionObj = this.getVersionValue(item.verRuleName); - codeCls_template_insert.setVersionSeq(Integer.parseInt(rvObj.get("VERSIONSEQ").toString())); - codeCls_template_insert.setVersionValue(rvObj.get("VERSIONVAL").toString()); - codeCls_template_insert.setLctid(codeCls_template.getLctid()); - codeCls_template_insert.setLcStatus("Editing"); - codeCls_template_insert.setId(codeCls_template.getId()); - codeCls_template_insert.setName(codeCls_template.getName()); - codeCls_template_insert.setDescription(codeCls_template.getDescription()); - codeCls_template_insert.setOwner(AuthUtil.getUser().getUserName()); + codeCls_template_insert.setVersionSeq(Integer.parseInt(rvObj.get("VERSIONSEQ").toString())); + codeCls_template_insert.setVersionValue(rvObj.get("VERSIONVAL").toString()); + codeCls_template_insert.setLctid(codeCls_template.getLctid()); + codeCls_template_insert.setLcStatus("Editing"); + codeCls_template_insert.setId(codeCls_template.getId()); + codeCls_template_insert.setName(codeCls_template.getName()); + codeCls_template_insert.setDescription(codeCls_template.getDescription()); + codeCls_template_insert.setOwner(AuthUtil.getUser().getUserName()); // codeCls_template_insert.setCheckinBy(userName); - codeCls_template_insert.setCopyFromVersion(codeCls_template.getOid()); + codeCls_template_insert.setCopyFromVersion(codeCls_template.getOid()); // }catch (VCIError e){ // e.printStackTrace(); // logger.error("===============>鍒嗙被妯℃澘-鍗囩増澶嶅埗鍑洪敊oid锛� "+templateOldOid+",mes"+e.error_message); @@ -919,6 +919,13 @@ @Override public R<CodeClassifyTemplateVO> addSave(CodeClassifyTemplateDTO codeClassifyTemplateDTO) throws VciBaseException{ VciBaseUtil.alertNotNull(codeClassifyTemplateDTO,"闇�瑕佹坊鍔犵殑鏁版嵁瀵硅薄"); + + QueryWrapper<CodeClassifyTemplate> wrapper = new QueryWrapper<>(); + wrapper.eq("CODECLASSIFYOID",codeClassifyTemplateDTO.getCodeclassifyoid()); + Long aLong = baseMapper.selectCount(wrapper); + if(aLong > 0){ + return R.fail("璇ュ垎绫讳笅宸叉湁瀛愭ā鐗堬紝鏃犳硶鏂板锛屼粎鑳借繘琛屽崌鐗堟搷浣滐紒"); + } //灏咲TO杞崲涓篋O CodeClassifyTemplate codeClassifyTemplateDO = new CodeClassifyTemplate(); BeanUtilForVCI.copyPropertiesIgnoreCase(codeClassifyTemplateDTO,codeClassifyTemplateDO); @@ -937,7 +944,7 @@ codeClassifyTemplateDO.setBtmTypeName(codeClassifyDO.getBtmTypeName()); codeClassifyTemplateDO.setLcStatus(FRAMEWORK_RELEASE_EDITING); codeClassifyTemplateDO.setTs(new Date()); - codeClassifyTemplateDO.setOwner(AuthUtil.getUser().getUserName()); + codeClassifyTemplateDO.setOwner(String.valueOf(AuthUtil.getUser().getUserId())); codeClassifyTemplateDO.setLctid("codeClsTempLc"); codeClassifyTemplateDO.setVersionValue("1"); codeClassifyTemplateDO.setVersionSeq(1); @@ -946,8 +953,8 @@ codeClassifyTemplateDO.setVersionRule("0"); codeClassifyTemplateDO.setRevisionRule("numberversionrule"); codeClassifyTemplateDO.setLastModifyTime(new Date()); - codeClassifyTemplateDO.setLastModifier(AuthUtil.getUser().getUserName()); - codeClassifyTemplateDO.setCreator(AuthUtil.getUser().getUserName()); + codeClassifyTemplateDO.setLastModifier(String.valueOf(AuthUtil.getUser().getUserId())); + codeClassifyTemplateDO.setCreator(String.valueOf(AuthUtil.getUser().getUserId())); codeClassifyTemplateDO.setCreateTime(new Date()); codeClassifyTemplateDO.setLastV("1"); codeClassifyTemplateDO.setLastR("1"); @@ -1043,7 +1050,7 @@ // condition.put("ts",codeClassifyTemplateDOCopyFromDTO.getTs()); CodeClassifyTemplate detail = baseMapper .selectById(codeClassifyTemplateDOCopyFromDTO.getOid()); - // boolean tsBoolean = boService.checkTs(codeClassifyTemplateAttrDOListemplateDOCopyFromDTO); + // boolean tsBoolean = boService.checkTs(codeClassifyTemplateAttrDOListemplateDOCopyFromDTO); if(detail.getTs().compareTo(codeClassifyTemplateDOCopyFromDTO.getTs()) != 0){//涓嶆槸鏈�鏂扮殑涓嶈鏀� return R.fail("褰撳墠鏁版嵁涓嶆槸鏈�鏂帮紝璇峰埛鏂板悗鍐嶄慨鏀癸紒"); } 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 a660ef9..8bc42d2 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 @@ -57,6 +57,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.cache.Cache; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; import org.springframework.util.CollectionUtils; import javax.annotation.Resource; @@ -326,15 +327,19 @@ * * @param baseModelDTO 鏁版嵁浼犺緭瀵硅薄 */ + @Transactional @Override public void changeStatus(BaseModelDTO baseModelDTO) { VciBaseUtil.alertNotNull(baseModelDTO, "鏁版嵁淇℃伅", baseModelDTO.getOid(), "涓婚敭", baseModelDTO.getBtmname(), "涓氬姟绫诲瀷", baseModelDTO.getLcStatus(), "鐩爣鐘舵��"); List<String> oids = VciBaseUtil.str2List(baseModelDTO.getOid()); // List<ClientBusinessObject> cboList = boService.selectCBOByOidCollection(oids, baseModelDTO.getBtmname()); //鎻掍釜鐐� 涓氬姟绫诲瀷瀹屾垚鍚庨渶瑕佷慨鏀� - QueryWrapper<BtmTypeVO> wrapper = new QueryWrapper<>(); - wrapper.eq("BTMNAME",baseModelDTO.getBtmname()); - wrapper.in("OID",oids); +// QueryWrapper<BtmTypeVO> wrapper = new QueryWrapper<>(); + List<BaseModel> baseModels = new ArrayList<>(); + baseModels = selectByTypeAndOid(baseModelDTO.getBtmname(), baseModelDTO.getOid()); + if(baseModels.size() == 0){ + throw new VciBaseException("鏈煡璇㈠埌鐩稿叧鏁版嵁銆�"); + } // 寰呭畬鍠� List<BtmTypeVO> cboList = null; // btmTypeClient.selectList(wrapper); //杩橀渶瑕佷慨鏀筧llCode鐨勭敓鍛藉懆鏈� @@ -348,16 +353,23 @@ // List<ClientBusinessObject> codeCbos = boService.queryCBO(MdmBtmTypeConstant.CODE_ALL_CODE, conditionMap); // 鍥炴敹闇�瑕佷笟鍔℃暟鎹垹闄� if (CodeDefaultLC.TASK_BACK.getValue().equals(baseModelDTO.getLcStatus())) { + R<List<BtmTypeVO>> listR = btmTypeClient.selectByIdCollection(Collections.singletonList(baseModelDTO.getBtmname())); +// String referTable = listR.getData().get(0).getTableName(); + commonsMapper.deleteByTaleAndOid(listR.getData().get(0).getTableName(),VciBaseUtil.toInSql(baseModelDTO.getOid())); // BatchCBO batchCBO = new BatchCBO(); // batchCBO.getDeleteCbos().addAll(cboList); - - // 寰呭畬鍠� - //btmTypeClient.deleteBatchIds(cboList); - //boService.persistenceBatch(batchCBO); } else { + for (BaseModel baseModel : baseModels) { + baseModel.setLcStatus(baseModelDTO.getLcStatus()); + } + updateBatchByBaseModel(baseModelDTO.getBtmname(),baseModels); // lifeCycleService.transCboStatus(cboList, baseModelDTO.getLcStatus()); } + for (CodeAllCode codeCbo : codeCbos) { + codeCbo.setLcStatus(baseModelDTO.getLcStatus()); + } + codeAllCodeService.updateBatchById(codeCbos); // lifeCycleService.transCboStatus(codeCbos, baseModelDTO.getLcStatus()); } @@ -1407,31 +1419,45 @@ DataGrid<Map<String, String>> dataGrid = new DataGrid<>(); List<Map<String, String>> dataList = new ArrayList<>(); -// if (!CollectionUtils.isEmpty(maps)) { -// maps.stream().forEach(map -> { -// Map<String, String> data = new HashMap<>(); -// map.forEach((key, value) -> { -// data.put(((String) key).toLowerCase(Locale.ROOT), String.valueOf(value)); -// }); -// dataList.add(data); -// }); -// } -// dataGrid.setData(dataList); if (!CollectionUtils.isEmpty(maps)) { - wrapperData(maps, templateVO, sqlBO.getSelectFieldList(), false); maps.stream().forEach(map -> { Map<String, String> data = new HashMap<>(); + for (String s : map.keySet()) { + data.put(s.toLowerCase(Locale.ROOT), String.valueOf(map.get(s))); + } // map.forEach((key, value) -> { // data.put(((String) key).toLowerCase(Locale.ROOT), String.valueOf(value)); // }); - for (String s : map.keySet()) { - data.put(((String) s).toLowerCase(Locale.ROOT), String.valueOf(map.get(s))); - } dataList.add(data); }); - dataGrid.setData(dataList); - dataGrid.setTotal(Long.parseLong(commonsMapper.selectBySql(sqlBO.getSqlCount()).get(0).values().toArray()[0].toString())); + wrapperData(dataList, templateVO, sqlBO.getSelectFieldList(), false); +// maps.stream().forEach(map -> { +// Map<String, String> data = new HashMap<>(); +//// map.forEach((key, value) -> { +//// data.put(((String) key).toLowerCase(Locale.ROOT), String.valueOf(value)); +//// }); +// for (String s : map.keySet()) { +// data.put(((String) s).toLowerCase(Locale.ROOT), String.valueOf(map.get(s))); +// } +// dataList.add(data); +// }); } +// dataGrid.setData(dataList); +// if (!CollectionUtils.isEmpty(maps)) { +// wrapperData(maps, templateVO, sqlBO.getSelectFieldList(), false); +// maps.stream().forEach(map -> { +// Map<String, String> data = new HashMap<>(); +//// map.forEach((key, value) -> { +//// data.put(((String) key).toLowerCase(Locale.ROOT), String.valueOf(value)); +//// }); +// for (String s : map.keySet()) { +// data.put(((String) s).toLowerCase(Locale.ROOT), String.valueOf(map.get(s))); +// } +// dataList.add(data); +// }); + dataGrid.setData(dataList); + dataGrid.setTotal(Long.parseLong(commonsMapper.selectBySql(sqlBO.getSqlCount()).get(0).values().toArray()[0].toString())); +// } return dataGrid; } @@ -2157,15 +2183,15 @@ //pageHelper.addDefaultDesc("createTime"); pageHelper.addDefaultDesc("id"); if (!classifyService.checkHasChild(codeClassifyOid)) { - conditionMap.put(CODE_CLASSIFY_OID_FIELD, codeClassifyOid); + conditionMap.put("t."+CODE_CLASSIFY_OID_FIELD, codeClassifyOid); } else { //琛ㄩ渶瑕佹敼 // conditionMap.put(CODE_CLASSIFY_OID_FIELD, QueryOptionConstant.IN + "(select oid from " + VciBaseUtil.getTableName(MdmBtmTypeConstant.CODE_CLASSIFY) - conditionMap.put(CODE_CLASSIFY_OID_FIELD, QueryOptionConstant.IN + "(select oid from pl_code_classify where lcstatus='" + FrameWorkDefaultValueConstant.FRAMEWORK_DATA_ENABLED + + conditionMap.put("t."+CODE_CLASSIFY_OID_FIELD, QueryOptionConstant.IN + "(select oid from pl_code_classify where lcstatus='" + FrameWorkDefaultValueConstant.FRAMEWORK_DATA_ENABLED + "' start with parentCodeClassifyOid = '" + codeClassifyOid + "' CONNECT BY PRIOR OID = parentCodeClassifyOid )"); } - conditionMap.put("lastr", "1"); - conditionMap.put("lastv", "1"); + conditionMap.put("t.lastr", "1"); + conditionMap.put("t.lastv", "1"); return queryGrid(btmTypeId, templateVO, conditionMap, pageHelper); // List<String> selectFieldList = templateVO.getAttributes().stream().map(CodeClassifyTemplateAttrVO::getId).collect(Collectors.toList()); // //鍙傜収璁╁钩鍙扮洿鎺ユ煡璇㈠氨琛� @@ -3001,7 +3027,7 @@ * @return 澶勭悊鎴愬姛鏁版嵁鏉℃暟 */ @Override - public Integer insertBatchByType(String btmType, List<BaseModel> baseModels) throws Exception { + public Integer insertBatchByType(String btmType, List<BaseModel> baseModels) { //浣跨敤浼犲叆鐨勪笟鍔$被鍨嬫煡璇㈣〃 R<List<BtmTypeVO>> listR = btmTypeClient.selectByIdCollection(Collections.singletonList(btmType)); if(listR.getData().size() == 0){ @@ -3027,7 +3053,7 @@ * @return 鏌ヨ鍑虹殑鏁版嵁 */ @Override - public List<BaseModel> selectByTypeAndOid(String btmType, String oids) throws IllegalAccessException, NoSuchFieldException, InstantiationException, InvocationTargetException, IntrospectionException, SQLException { + public List<BaseModel> selectByTypeAndOid(String btmType, String oids) { //浣跨敤浼犲叆鐨勪笟鍔$被鍨嬫煡璇㈣〃 R<List<BtmTypeVO>> listR = btmTypeClient.selectByIdCollection(Collections.singletonList(btmType)); @@ -3040,38 +3066,42 @@ List<BaseModel> baseModels = new ArrayList<>(); //灏嗘煡璇㈠埌鐨勬暟鎹浆鎹负basemodel锛屼娇鐢ㄧ殑鍙嶅皠鏂瑰紡鏉ヨ繘琛屽垱寤虹殑 - for (Map map : maps) { - Object obj = BaseModel.class.newInstance(); - BeanInfo beanInfo = Introspector.getBeanInfo(obj.getClass()); - PropertyDescriptor[] propertyDescriptors = beanInfo.getPropertyDescriptors(); - for (PropertyDescriptor property : propertyDescriptors) { - Method setter = property.getWriteMethod(); - if (setter != null) { - //oracle鐨勬椂闂翠负TIMESTAMP鐨勶紝闇�瑕佽繘琛岃浆鎹㈡垚data锛屽惁鍒欏皢鎶ラ敊 - if(map.get(property.getName().toUpperCase()) instanceof TIMESTAMP){ - LocalDateTime localDateTime = ((TIMESTAMP) map.get(property.getName().toUpperCase())).toLocalDateTime(); - ZoneId zoneId = ZoneId.systemDefault(); - ZonedDateTime zdt = localDateTime.atZone(zoneId); - Date date = Date.from(zdt.toInstant()); - setter.invoke(obj,date); - map.remove(property.getName().toUpperCase()); - } //oracle鐨勬暟瀛椾负BigDecimal鐨勶紝闇�瑕佽繘琛岃浆鎹㈡垚Integer锛屽惁鍒欏皢鎶ラ敊 - else if (map.get(property.getName().toUpperCase()) instanceof BigDecimal - && ("Integer").equals(setter.getParameterTypes()[0].getSimpleName())){ - setter.invoke(obj, ((BigDecimal)map.get(property.getName().toUpperCase())).intValue()); - map.remove(property.getName().toUpperCase()); - }else if(map.get(property.getName().toUpperCase()) != null){ - setter.invoke(obj, map.get(property.getName().toUpperCase())); - map.remove(property.getName().toUpperCase()); + try{ + for (Map map : maps) { + Object obj = BaseModel.class.newInstance(); + BeanInfo beanInfo = Introspector.getBeanInfo(obj.getClass()); + PropertyDescriptor[] propertyDescriptors = beanInfo.getPropertyDescriptors(); + for (PropertyDescriptor property : propertyDescriptors) { + Method setter = property.getWriteMethod(); + if (setter != null) { + //oracle鐨勬椂闂翠负TIMESTAMP鐨勶紝闇�瑕佽繘琛岃浆鎹㈡垚data锛屽惁鍒欏皢鎶ラ敊 + if(map.get(property.getName().toUpperCase()) instanceof TIMESTAMP){ + LocalDateTime localDateTime = ((TIMESTAMP) map.get(property.getName().toUpperCase())).toLocalDateTime(); + ZoneId zoneId = ZoneId.systemDefault(); + ZonedDateTime zdt = localDateTime.atZone(zoneId); + Date date = Date.from(zdt.toInstant()); + setter.invoke(obj,date); + map.remove(property.getName().toUpperCase()); + } //oracle鐨勬暟瀛椾负BigDecimal鐨勶紝闇�瑕佽繘琛岃浆鎹㈡垚Integer锛屽惁鍒欏皢鎶ラ敊 + else if (map.get(property.getName().toUpperCase()) instanceof BigDecimal + && ("Integer").equals(setter.getParameterTypes()[0].getSimpleName())){ + setter.invoke(obj, ((BigDecimal)map.get(property.getName().toUpperCase())).intValue()); + map.remove(property.getName().toUpperCase()); + }else if(map.get(property.getName().toUpperCase()) != null){ + setter.invoke(obj, map.get(property.getName().toUpperCase())); + map.remove(property.getName().toUpperCase()); + } } } - } - for (Object key : map.keySet()) { - map.put(key,String.valueOf(map.get(key))); - } + for (Object key : map.keySet()) { + map.put(key,String.valueOf(map.get(key))); + } - ((BaseModel) obj).setData(map); - baseModels.add((BaseModel) obj); + ((BaseModel) obj).setData(map); + baseModels.add((BaseModel) obj); + } + }catch (Exception e){ + throw new VciBaseException("鏌ヨ澶辫触锛�" + e.getMessage()); } return baseModels; } @@ -3147,7 +3177,7 @@ * @return 澶勭悊鐘舵�� */ @Override - public R updateBatchByBaseModel(String btmType, List<BaseModel> baseModels) throws Exception { + public R updateBatchByBaseModel(String btmType, List<BaseModel> baseModels) { //浣跨敤浼犲叆鐨勪笟鍔$被鍨嬫煡璇㈣〃 R<List<BtmTypeVO>> listR = btmTypeClient.selectByIdCollection(Collections.singletonList(btmType)); if(listR.getData().size() == 0){ diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CommonsMapper.xml b/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CommonsMapper.xml index e53c1fc..76cb9cc 100644 --- a/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CommonsMapper.xml +++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CommonsMapper.xml @@ -41,6 +41,10 @@ </foreach> </insert> + <insert id="deleteByTaleAndOid" > + delete from ${tableName} where oid in (${oids}) + </insert> + <update id="updateBatchByBaseModel" parameterType="java.util.List" > BEGIN <foreach collection="mapList" item="columnMap" index="index" separator=";"> -- Gitblit v1.9.3