From f8fe13b6f7d8ad1ae53e7bf6a6cf83f584d52a4d Mon Sep 17 00:00:00 2001
From: fujunling <2984387807@qq.com>
Date: 星期二, 06 六月 2023 17:39:24 +0800
Subject: [PATCH] 动态表单组件重构
---
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClassifyServiceImpl.java | 113 +++++++++++++++++++++++++++++++++++---------------------
1 files changed, 71 insertions(+), 42 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 1ed0304..31ea7b7 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
@@ -9,24 +9,24 @@
import com.vci.ubcs.code.bo.CodeClassifyFullInfoBO;
import com.vci.ubcs.code.entity.CodeClassify;
import com.vci.ubcs.code.entity.CodeClassifyTemplate;
-import com.vci.ubcs.code.entity.CodeOsbtmtypeEntity;
-import com.vci.ubcs.code.entity.CodeOsbtmtypeattributeEntity;
import com.vci.ubcs.code.enumpack.FrameworkDataLCStatus;
import com.vci.ubcs.code.mapper.CodeClassifyMapper;
import com.vci.ubcs.code.mapper.CodeClassifyTemplateMapper;
-import com.vci.ubcs.code.mapper.CodeOsbtmtypeMapper;
-import com.vci.ubcs.code.mapper.CodeOsbtmtypeattributeMapper;
import com.vci.ubcs.code.po.CodeClassifyPO;
import com.vci.ubcs.code.service.ICodeClassifyService;
import com.vci.ubcs.code.service.ICodeKeyAttrRepeatService;
-import com.vci.ubcs.code.service.ICodeOsattributeService;
import com.vci.ubcs.code.service.ICodeRuleService;
-import com.vci.ubcs.code.vo.CodeOsattributeVO;
-import com.vci.ubcs.code.vo.CodeOsbtmtypeVO;
import com.vci.ubcs.code.vo.pagemodel.CodeClassifyVO;
import com.vci.ubcs.code.vo.pagemodel.CodeKeyAttrRepeatRuleVO;
import com.vci.ubcs.code.vo.pagemodel.CodeRuleVO;
+<<<<<<< Updated upstream
+import com.vci.ubcs.omd.cache.EnumCache;
+import com.vci.ubcs.omd.enums.EnumEnum;
import com.vci.ubcs.omd.feign.IBtmTypeClient;
+import com.vci.ubcs.omd.vo.BtmTypeAttributeVO;
+=======
+import com.vci.ubcs.omd.feign.IBtmTypeClient;
+>>>>>>> Stashed changes
import com.vci.ubcs.omd.vo.BtmTypeVO;
import com.vci.ubcs.starter.bo.WriteExcelData;
import com.vci.ubcs.starter.exception.VciBaseException;
@@ -41,6 +41,7 @@
import com.vci.ubcs.starter.util.LocalFileUtil;
import com.vci.ubcs.starter.web.pagemodel.BaseQueryObject;
import com.vci.ubcs.starter.web.pagemodel.DataGrid;
+import com.vci.ubcs.starter.web.pagemodel.PageHelper;
import com.vci.ubcs.starter.web.pagemodel.Tree;
import com.vci.ubcs.starter.web.util.BeanUtilForVCI;
import com.vci.ubcs.starter.web.util.LangBaseUtil;
@@ -80,6 +81,9 @@
private ICodeRuleService codeRuleService;
@Resource
+<<<<<<< Updated upstream
+ private IBtmTypeClient btmTypeClient;
+=======
private CodeOsbtmtypeMapper codeOsbtmtypeMapper;
@Resource
@@ -88,11 +92,8 @@
@Resource
private IBtmTypeClient btmTypeClient;
- /**
- * 灞炴�ф湇鍔�
- */
-// @Autowired
-// private OsAttributeServiceI attributeService;
+
+>>>>>>> Stashed changes
/**
* 鏃ュ織
@@ -680,7 +681,6 @@
return excelName;
}
-
/**
* 瀵煎叆鍒嗙被
*
@@ -745,9 +745,10 @@
List<String> btmOids = poList.stream().filter(s -> StringUtils.isNotBlank(s.getKeyRepeatRuleId()))
.map(CodeClassifyPO::getBtmTypeId).collect(Collectors.toList());
- Map<String, CodeOsbtmtypeEntity> btmVOMap = Optional.ofNullable(btmOids.size()==0 ? null: codeOsbtmtypeMapper.selectBatchIds(btmOids)
- ).orElse(new ArrayList<>()).stream().collect(Collectors.toMap(s -> s.getId().toLowerCase(Locale.ROOT), t -> t,(o1,o2)->o2));
-// Map<String, CodeOsbtmtypeVO> btmVOMap = null;
+ Map<String, BtmTypeVO> btmVOMap = Optional
+ .ofNullable(btmOids.size()==0 ? null: btmTypeClient.selectByIdCollection(btmOids).getData())
+ .orElse(new ArrayList<BtmTypeVO>()).stream().collect(Collectors.toMap(s -> s.getId().toLowerCase(Locale.ROOT), t -> t,(o1,o2)->o2));
+ // Map<String, CodeOsbtmtypeVO> btmVOMap = null;
Map<String/**璺緞**/,String/**涓婚敭**/> oidPathMap = new HashMap<>();
//鎴戜滑闇�瑕佹煡璇㈡墍鏈夊凡缁忓瓨鍦ㄧ殑鍒嗙被锛屼富瑕佹槸璺緞锛岀敤鏉ュ垽鏂垎绫荤殑鏁版嵁
@@ -777,7 +778,7 @@
classify.setDescription(po.getDescription());
oidPathMap.put(po.getPath(),classify.getOid());
if(StringUtils.isNotBlank(po.getBtmTypeId())){
- CodeOsbtmtypeVO typeVO = (CodeOsbtmtypeVO)btmVOMap.get(po.getBtmTypeId().toLowerCase(Locale.ROOT));
+ BtmTypeVO typeVO = (BtmTypeVO)btmVOMap.get(po.getBtmTypeId().toLowerCase(Locale.ROOT));
classify.setBtmTypeId(typeVO.getId());
classify.setBtmTypeName(typeVO.getName());
}
@@ -888,7 +889,7 @@
* @return 灞炴�х殑淇℃伅锛屽寘鍚粯璁ょ殑灞炴��
*/
@Override
- public DataGrid<CodeOsattributeVO> listClassifyLinkAttr(BaseQueryObject baseQueryObject) {
+ public DataGrid<BtmTypeAttributeVO> listClassifyLinkAttr(BaseQueryObject baseQueryObject) throws ServiceException{
if(baseQueryObject == null){
baseQueryObject = new BaseQueryObject();
}
@@ -896,9 +897,13 @@
baseQueryObject.setConditionMap(new HashMap<>());
}
String classifyOid = baseQueryObject.getConditionMap().getOrDefault("codeClassifyOid","");
+ String btmTypeOid = baseQueryObject.getConditionMap().getOrDefault("btmTypeOid","");
String id = baseQueryObject.getConditionMap().getOrDefault("id","");
String name = baseQueryObject.getConditionMap().getOrDefault("name","");
if(StringUtils.isBlank(classifyOid)){
+ return new DataGrid<>();
+ }
+ if(StringUtils.isBlank(btmTypeOid)){
return new DataGrid<>();
}
CodeClassifyVO topClassifyVO = getTopClassifyVO(classifyOid);
@@ -908,19 +913,23 @@
Map<String,Object> condition = new HashMap<>(1);
condition.put("pkbtmtype",topClassifyVO.getBtmtypeid());
-
- List<CodeOsbtmtypeattributeEntity> unDefaultAttributes = codeOsbtmtypeattributeMapper.selectByMap(condition);
+ R<BtmTypeVO> btmTypeDetail = btmTypeClient.getDetail(btmTypeOid);
+ if(btmTypeDetail.getCode() != 200){
+ throw new ServiceException("涓氬姟绫诲瀷feign鎺ュ彛璋冪敤鍑洪敊");
+ }
+ List<BtmTypeAttributeVO> unDefaultAttributes = btmTypeDetail.getData().getAttributes();
+ // List<CodeOsbtmtypeattributeEntity> unDefaultAttributes = codeOsbtmtypeattributeMapper.selectByMap(condition);
// List<OsBtmTypeAttributeVO> unDefaultAttributes = btmService. (topClassifyVO.getBtmtypeid());
- List<CodeOsattributeVO> attributeVOS = new ArrayList<>();
+ List<BtmTypeAttributeVO> attributeVOS = new ArrayList<>();
if(!CollectionUtils.isEmpty(unDefaultAttributes)){
unDefaultAttributes.stream().forEach(attr->{
- CodeOsattributeVO attributeVO = new CodeOsattributeVO();
+ BtmTypeAttributeVO attributeVO = new BtmTypeAttributeVO();
BeanUtils.copyProperties(attr,attributeVO);
- attributeVO.setAttributedatatype(attr.getAttrdatatype());
- attributeVO.setAttrlength(Short.valueOf(attr.getAttributelength()));
- attributeVO.setBtmtypeid(attr.getReferbtmtypeid());
- attributeVO.setBtmtypename(attr.getReferbtmtypename());
- attributeVO.setAttributedatatypetext(attr.getReferbtmtypename());
+ attributeVO.setAttrDataType(attr.getAttrDataType());
+ attributeVO.setAttributeLength(attr.getAttributeLength());
+ attributeVO.setBtmTypeId(btmTypeDetail.getData().getId());
+ attributeVO.setBtmname(btmTypeDetail.getData().getName());
+ attributeVO.setAttrDataTypeText(EnumCache.getValue(EnumEnum.VCO_FIELD_TYPE,attr.getAttrDataType()));
boolean add = true;
if(StringUtils.isNotBlank(id) && !attributeVO.getId().contains(id.replace("*",""))){
add = false;
@@ -933,21 +942,26 @@
}
});
}
-// if(!CollectionUtils.isEmpty(codeOsattributeService.getDefaultAttributeVOs())){
-// codeOsattributeService.getDefaultAttributeVOs().stream().forEach(attr->{
-// boolean add = true;
-// if(StringUtils.isNotBlank(id) && !attr.getId().contains(id.replace("*",""))){
-// add = false;
-// }
-// if(StringUtils.isNotBlank(name) && !attr.getId().contains(name.replace("*",""))){
-// add = false;
-// }
-// if(add){
-// attributeVOS.add(attr);
-// }
-// });
-// }
- DataGrid<CodeOsattributeVO> dataGrid = new DataGrid<>();
+ R<BtmTypeVO> btmTypeVOR = btmTypeClient.getDefaultAttrByBtmId(topClassifyVO.getBtmtypeid());
+ if(btmTypeVOR.getCode() != 200){
+ throw new ServiceException("涓氬姟绫诲瀷feign鎺ュ彛璋冪敤鍑洪敊");
+ }
+ List<BtmTypeAttributeVO> defaultAttrVOS = btmTypeVOR.getData().getAttributes();
+ if(!CollectionUtils.isEmpty(defaultAttrVOS)){
+ defaultAttrVOS.stream().forEach(attr->{
+ boolean add = true;
+ if(StringUtils.isNotBlank(id) && !attr.getId().contains(id.replace("*",""))){
+ add = false;
+ }
+ if(StringUtils.isNotBlank(name) && !attr.getId().contains(name.replace("*",""))){
+ add = false;
+ }
+ if(add){
+ attributeVOS.add(attr);
+ }
+ });
+ }
+ DataGrid<BtmTypeAttributeVO> dataGrid = new DataGrid<>();
dataGrid.setData(attributeVOS);
dataGrid.setTotal(attributeVOS.size());
return dataGrid;
@@ -1033,7 +1047,11 @@
}
/**
+<<<<<<< Updated upstream
+ * 涓婚搴撶殑鏍�,宸茶仈璋冧笟鍔$被鍨嬫煡璇eign
+=======
* 涓婚搴撶殑鏍�,宸茬粡鑱旇皟涓氬姟绫诲瀷鏌ヨ
+>>>>>>> Stashed changes
*
* @param treeQueryObject 鏍戝舰鏌ヨ瀵硅薄
* @return 涓婚搴撴樉绀烘爲
@@ -1055,8 +1073,19 @@
if(Func.isEmpty(btmTypeVOS) || Func.isEmpty(trees)){
return null;
}
+<<<<<<< Updated upstream
+ List<Tree> treeList = trees.stream().filter(tree -> !CollectionUtils.isEmpty(btmTypeVOS.stream().filter(btmType -> {
+ if(Objects.equals(tree.getAttributes().get("id"), btmType.getId())){
+ tree.getAttributes().put("btmTypeOid",btmType.getOid());
+ return true;
+ }
+ return false;
+ }).collect(Collectors.toList())))
+ .collect(Collectors.toList());
+=======
List<Tree> treeList = trees.stream().filter(tree -> btmTypeVOS.stream().
anyMatch(btmType -> Objects.equals(tree.getAttributes().get("id"), btmType.getId()))).collect(Collectors.toList());
+>>>>>>> Stashed changes
return treeList;
}
--
Gitblit v1.9.3