From 32f4bb41c82ded759e7db18c9fa449b1442f15c8 Mon Sep 17 00:00:00 2001 From: fujunling <2984387807@qq.com> Date: 星期三, 21 六月 2023 16:39:12 +0800 Subject: [PATCH] Merge branch 'master' of http://dev.vci-tech.com:1065/r/ubcs --- Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClassifyServiceImpl.java | 110 ++++++++++++++++++++++++++++++++++++++++--------------- 1 files changed, 80 insertions(+), 30 deletions(-) diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClassifyServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClassifyServiceImpl.java index 24ae819..42cad8e 100644 --- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClassifyServiceImpl.java +++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClassifyServiceImpl.java @@ -57,9 +57,11 @@ import org.springframework.util.CollectionUtils; import javax.annotation.Resource; +import java.awt.event.ItemEvent; import java.io.File; import java.util.*; import java.util.stream.Collectors; +import java.util.stream.Stream; import static com.vci.ubcs.code.constant.FrameWorkDefaultValueConstant.*; @@ -103,6 +105,20 @@ public List<CodeClassify> selectByWrapper(Wrapper wrapper) { return codeClassifyMapper.selectList(wrapper); } + + /** + * 鏌ヨ + * @param wrapper 鏌ヨ灏佽鍣� + * @return + */ + @Override + public List<String> select1(Wrapper wrapper) { + + return codeClassifyMapper.selectObjs(wrapper); + } + + + @Override public IPage<CodeClassifyVO> selectPlCodeClassifyPage(IPage<CodeClassifyVO> page, CodeClassifyVO plCodeClassify) { @@ -438,13 +454,43 @@ } /** + * 涓婚敭鏌ヨ鏁版嵁瀵硅薄,鍏宠仈鏌ヨ + * @param oid 涓婚敭 + * @return 鏁版嵁瀵硅薄 + */ + private CodeClassify selectByOidRel(String oid){ + + List<CodeClassify> codeClassifyList = codeClassifyMapper.selectClassifyByKeyAndReseRel("'"+oid.trim()+"'"); +// CodeClassify codeClassifyEntity = (CodeClassify) codeClassifyList; + if(codeClassifyList.size() == 0 ){ + throw new ServiceException("dataNotExist");//鏍规嵁涓婚敭id鏈煡鍒扮浉鍏虫暟鎹� + } +// if(codeClassifyEntity == null || StringUtils.isBlank(codeClassifyEntity.getOid())){ +// throw new ServiceException("dataOidNotExist");//鏍规嵁涓婚敭id鏈煡鍒扮浉鍏虫暟鎹� +// } + return codeClassifyList.get(0); + } + + /** * 鏌ヨ涓婚搴撳垎绫� 鏍� * @param treeQueryObject 鏍戞煡璇㈠璞� * @return 涓婚搴撳垎绫� 鏄剧ず鏍� */ @Override public List<Tree> treeCodeClassify(TreeQueryObject treeQueryObject) { - List<CodeClassify> doList =codeClassifyMapper.selectCodeClassifyVOByTree(treeQueryObject.getParentOid()); + List<CodeClassify> doList = null; + String id = null; + String lcStatus = null; + if(!Objects.isNull(treeQueryObject.getConditionMap())){ + id = treeQueryObject.getConditionMap().getOrDefault("id",null); + lcStatus = treeQueryObject.getConditionMap().getOrDefault("lcStatus",null); + } + if(StringUtils.isNotBlank(id) || StringUtils.isNotBlank(lcStatus) ){ + doList = codeClassifyMapper + .selectCodeClassifyDOByTree(treeQueryObject.getConditionMap().get("id"),treeQueryObject.getConditionMap().get("lcStatus"),treeQueryObject.getParentOid()); + }else{ + doList =codeClassifyMapper.selectCodeClassifyVOByTree(treeQueryObject.getParentOid()); + } List<CodeClassifyVO> voList = codeClassifyDO2VOs(doList); TreeWrapperOptions treeWrapperOptions = new TreeWrapperOptions(PARENT_FIELD_NAME.toLowerCase(Locale.ROOT)); treeWrapperOptions.copyFromTreeQuery(treeQueryObject); @@ -501,8 +547,9 @@ */ @Override public List<CodeClassifyVO> getIdPathToNamePathByParentId(String classifyId, boolean enable) { - return null; + return codeClassifyMapper.getIdPathToNamePathByParentId(classifyId); } + // /** // * 鏍规嵁鏍戝舰鏌ヨ瀵硅薄鏉ユ煡璇㈡暟鎹璞� @@ -615,7 +662,7 @@ @Override public List<CodeClassifyVO> listChildrenClassify(String codeClassifyOid, boolean allLevel, String fieldInPath, boolean enable) { if(allLevel){ - List<CodeClassify> classifyDOS = codeClassifyMapper.selectAllLevelChildHasPath(codeClassifyOid); + List<CodeClassify> classifyDOS = codeClassifyMapper.selectAllLevelChildHasPath(codeClassifyOid,fieldInPath); if(!CollectionUtils.isEmpty(classifyDOS)){ classifyDOS = classifyDOS.stream().filter(s->FRAMEWORK_DATA_ENABLED.equalsIgnoreCase(s.getLcStatus())).collect(Collectors.toList()); } @@ -735,7 +782,7 @@ Map<String/**璺緞**/,String/**涓婚敭**/> oidPathMap = new HashMap<>(); //鎴戜滑闇�瑕佹煡璇㈡墍鏈夊凡缁忓瓨鍦ㄧ殑鍒嗙被锛屼富瑕佹槸璺緞锛岀敤鏉ュ垽鏂垎绫荤殑鏁版嵁 - List<CodeClassify> existClassifyDOs = codeClassifyMapper.selectAllLevelChildHasPath(""); + List<CodeClassify> existClassifyDOs = codeClassifyMapper.selectAllLevelChildHasPath("",null); Map<String/**璺緞**/, CodeClassify/**宸茬粡瀛樺湪鐨勬暟鎹�**/> pathDOMap = Optional.ofNullable(existClassifyDOs).orElse(new ArrayList<>()).stream().collect(Collectors.toMap(s -> { String path = s.getPath(); if(StringUtils.isNotBlank(path) && path.startsWith("#")){ @@ -912,12 +959,12 @@ attributeVO.setAttributeLength(attr.getAttributeLength()); attributeVO.setBtmTypeId(btmTypeDetail.getData().getId()); attributeVO.setBtmname(btmTypeDetail.getData().getName()); - attributeVO.setAttrDataTypeText(EnumCache.getValue(EnumEnum.VCO_FIELD_TYPE,attr.getAttrDataType())); + attributeVO.setAttrDataTypeText(EnumCache.getValue(EnumEnum.VCI_FIELD_TYPE,attr.getAttrDataType())); boolean add = true; if(StringUtils.isNotBlank(id) && !attributeVO.getId().contains(id.replace("*",""))){ add = false; } - if(StringUtils.isNotBlank(name) && !attributeVO.getId().contains(name.replace("*",""))){ + if(StringUtils.isNotBlank(name) && !attributeVO.getName().contains(name.replace("*",""))){ add = false; } if(add){ @@ -930,20 +977,31 @@ throw new ServiceException("涓氬姟绫诲瀷feign鎺ュ彛璋冪敤鍑洪敊"); } List<BtmTypeAttributeVO> defaultAttrVOS = btmTypeVOR.getData().getAttributes(); - if(!CollectionUtils.isEmpty(defaultAttrVOS)){ - defaultAttrVOS.stream().forEach(attr->{ + + // 鍙栦袱涓泦鍚堝樊闆� + List<String> ids = unDefaultAttributes.stream().map(BtmTypeAttributeVO::getId).collect(Collectors.toList()); + defaultAttrVOS.forEach(item->{ + if(!ids.contains(item.getId())){ + BtmTypeAttributeVO attributeVO = new BtmTypeAttributeVO(); + BeanUtils.copyProperties(item,attributeVO); + attributeVO.setAttrDataType(item.getAttrDataType()); + attributeVO.setAttributeLength(item.getAttributeLength()); + attributeVO.setBtmTypeId(btmTypeDetail.getData().getId()); + attributeVO.setBtmname(btmTypeDetail.getData().getName()); + attributeVO.setAttrDataTypeText(EnumCache.getValue(EnumEnum.VCI_FIELD_TYPE,item.getAttrDataType())); boolean add = true; - if(StringUtils.isNotBlank(id) && !attr.getId().contains(id.replace("*",""))){ + if(StringUtils.isNotBlank(id) && !item.getId().contains(id.replace("*",""))){ add = false; } - if(StringUtils.isNotBlank(name) && !attr.getId().contains(name.replace("*",""))){ + if(StringUtils.isNotBlank(name) && !item.getName().contains(name.replace("*",""))){ add = false; } if(add){ - attributeVOS.add(attr); + attributeVOS.add(attributeVO); } - }); - } + } + }); + DataGrid<BtmTypeAttributeVO> dataGrid = new DataGrid<>(); dataGrid.setData(attributeVOS); dataGrid.setTotal(attributeVOS.size()); @@ -993,10 +1051,15 @@ } //浣跨敤涓婚敭鏌ヨ涓�涓� - List<CodeClassify> classifyDOS = codeClassifyMapper.selectBatchIds(oidLevelMap.keySet()); + String oids = ""; + for (String s : oidLevelMap.keySet()) { + oids += "'"+s+"',"; + } + List<CodeClassify> classifyDOS = codeClassifyMapper.selectClassifyByKeyAndReseRel(oids.substring(0,oids.length()-1)); if(!CollectionUtils.isEmpty(classifyDOS)){ classifyDOS.stream().forEach(classifyDO->{ classifyDO.setDataLevel(VciBaseUtil.getInt(oidLevelMap.getOrDefault(classifyDO.getOid(),"0"))); + classifyDO.setLcStatusText(EnumCache.getValue("codeLcstatus",classifyDO.getLcStatus())); }); } return classifyDOS; @@ -1021,29 +1084,16 @@ */ @Override public CodeClassifyVO getObjectByIdPath(String idPath) { - List<Map<String, Object>> idPathValues = codeClassifyMapper.selectByFieldPath("/" + idPath); + List<Map<String, Object>> idPathValues = codeClassifyMapper.selectByFieldPath("#" + idPath); CodeClassify classifyDO = null; if (idPathValues != null){ - classifyDO = codeClassifyMapper.selectById(idPathValues.get(0).get("oid").toString()); + classifyDO = codeClassifyMapper.selectByIdRel(idPathValues.get(0).get("OID").toString()); } return codeClassifyDO2VO(classifyDO); } /** -<<<<<<< Updated upstream -<<<<<<< Updated upstream -<<<<<<< Updated upstream * 涓婚搴撶殑鏍�,宸茶仈璋冧笟鍔$被鍨嬫煡璇eign -======= - * 涓婚搴撶殑鏍�,宸茬粡鑱旇皟涓氬姟绫诲瀷鏌ヨ ->>>>>>> Stashed changes -======= - * 涓婚搴撶殑鏍�,宸茬粡鑱旇皟涓氬姟绫诲瀷鏌ヨ ->>>>>>> Stashed changes -======= - * 涓婚搴撶殑鏍�,宸茬粡鑱旇皟涓氬姟绫诲瀷鏌ヨ ->>>>>>> Stashed changes - * * @param treeQueryObject 鏍戝舰鏌ヨ瀵硅薄 * @return 涓婚搴撴樉绀烘爲 */ @@ -1123,7 +1173,7 @@ public CodeClassifyFullInfoBO getClassifyFullInfo(String codeClassifyOid) { VciBaseUtil.alertNotNull(codeClassifyOid,"鍒嗙被鐨勪富閿�"); CodeClassifyFullInfoBO fullInfo = new CodeClassifyFullInfoBO(); - CodeClassify classifyDO = selectByOid(codeClassifyOid); + CodeClassify classifyDO = selectByOidRel(codeClassifyOid); //鏌ヨ涓婄骇 fullInfo.setCurrentClassifyVO(codeClassifyDO2VO(classifyDO)); // List<Map<String, Object>> maps = codeClassifyMapper.selectAllLevelParentByOid(codeClassifyOid); -- Gitblit v1.9.3