From 9423f2936340d82b046ec615381c1c5e03698557 Mon Sep 17 00:00:00 2001
From: yuxc <yuxc@vci-tech.com>
Date: 星期五, 27 九月 2024 17:56:53 +0800
Subject: [PATCH] 1、主要完成对获取UI上下文的定义接口的优化,优化的方向为对多次获取业务类型对象进行转换而导致耗时较久的问题继续修改,还有对多次获取属性对象进行转换对象导致耗时过长问题进行修改。 2、对树的数据查询接口的优化,对多次获取属性对象进行转换对象导致耗时过长问题进行修改。

---
 Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsAttributeServiceImpl.java |   31 +++++++++++++++++++++++++++++++
 1 files changed, 31 insertions(+), 0 deletions(-)

diff --git a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsAttributeServiceImpl.java b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsAttributeServiceImpl.java
index ec96cc5..31b4c62 100644
--- a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsAttributeServiceImpl.java
+++ b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsAttributeServiceImpl.java
@@ -28,6 +28,7 @@
 import com.vci.starter.web.pagemodel.*;
 import com.vci.starter.web.util.*;
 import com.vci.model.OsAttributeDO;
+import com.vci.web.enumpck.ItemTypeEnum;
 import com.vci.web.enumpck.PortalVITypeFlag;
 import com.vci.web.properties.UsedNames;
 import com.vci.web.service.OsAttributeServiceI;
@@ -347,6 +348,10 @@
 			attributeVO.setDescription(attribItem.description);
 			attributeVO.setAttributeDataType(attribItem.vtDataType);
 			attributeVO.setAttributeDataTypeText(VciFieldTypeEnum.getTextByValue(attribItem.vtDataType));
+			//鑾峰彇UI灞炴�х被鍨�
+			attributeVO.setAttributeUIType(ItemTypeEnum.convertAttributeTypeTOUITypeTextByValue(attribItem.vtDataType,false));
+			//鑾峰彇UI灞炴�х被鍨嬫枃鏈�
+			attributeVO.setAttributeUITypeText(ItemTypeEnum.convertAttributeTypeTOUITypeTextByValue(attribItem.vtDataType,true));
 			attributeVO.setDefaultValue(attribItem.defValue);
 			if(Func.isNotBlank(attribItem.rage)){
 				attributeVO.setRange(attribItem.rage.replace("&lt;","<"));
@@ -512,6 +517,32 @@
 	}
 
 	/**
+	 * 浣跨敤灞炴�х紪鍙疯幏鍙栧璞�--鎵归噺
+	 *
+	 * @param attrCodes 灞炴�х殑鑻辨枃鍚嶇О
+	 * @param attributeVOMap 灞炴�у璞�
+	 * @return 灞炴�х殑鏄剧ず瀵硅薄
+	 */
+	@Override
+	public List<OsAttributeVO> listAttrByIds(Collection<String> attrCodes,Map<String, OsAttributeVO> attributeVOMap) {
+		if(CollectionUtils.isEmpty(attrCodes)){
+			return null;
+		}
+		if(attributeVOMap == null){
+			attributeVOMap = self.selectAllAttributeMap();
+		}
+		List<OsAttributeVO> attributeVOS = new ArrayList<>();
+		Map<String, OsAttributeVO> finalAttributeVOMap = attributeVOMap;
+		attrCodes.stream().forEach(attrCode->{
+			OsAttributeVO attributeVO = finalAttributeVOMap.getOrDefault(attrCode.toLowerCase(),null);
+			if(attributeVO!=null){
+				attributeVOS.add(attributeVO);
+			}
+		});
+		return attributeVOS;
+	}
+
+	/**
 	 * 鎵归噺娣诲姞灞炴��
 	 *
 	 * @param attribItemList 灞炴�х殑鍒楄〃

--
Gitblit v1.9.3