From 336265194a47bcbdbd5f8d2274d10a6284ee1246 Mon Sep 17 00:00:00 2001
From: mamc <1428594221@qq.com>
Date: 星期三, 28 六月 2023 14:43:26 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClassifyServiceImpl.java | 66 +++++++++++++++++++++++++++++----
1 files changed, 58 insertions(+), 8 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 224a3f1..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
@@ -106,6 +106,20 @@
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) {
return page.setRecords(codeClassifyMapper.selectPlCodeClassifyPage(page, plCodeClassify));
@@ -440,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);
@@ -503,8 +547,9 @@
*/
@Override
public List<CodeClassifyVO> getIdPathToNamePathByParentId(String classifyId, boolean enable) {
- return null;
+ return codeClassifyMapper.getIdPathToNamePathByParentId(classifyId);
}
+
// /**
// * 鏍规嵁鏍戝舰鏌ヨ瀵硅薄鏉ユ煡璇㈡暟鎹璞�
@@ -617,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());
}
@@ -737,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("#")){
@@ -1006,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;
@@ -1034,10 +1084,10 @@
*/
@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);
}
@@ -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