From 3b3ac1fc72e2849eb500840fd9d61e9b8f1960e1 Mon Sep 17 00:00:00 2001
From: yuxc <yuxc@vci-tech.com>
Date: 星期四, 17 十月 2024 16:31:45 +0800
Subject: [PATCH] 1、查询所有的action线程变量用于优化,只查一次平台。 2、新增文件柜管理的controller,servicel以及文件管理的分页查询卷、增加卷、修改卷等接口

---
 Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/UIEngineServiceImpl.java |   17 +++++++++++++++--
 1 files changed, 15 insertions(+), 2 deletions(-)

diff --git a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/UIEngineServiceImpl.java b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/UIEngineServiceImpl.java
index f2b6086..a91ac07 100644
--- a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/UIEngineServiceImpl.java
+++ b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/UIEngineServiceImpl.java
@@ -16,6 +16,7 @@
 import com.vci.web.enumpck.UIComponentTypeEnum;
 import com.vci.web.enumpck.UIFieldTypeEnum;
 import com.vci.web.enumpck.UILayoutAreaTypeEnum;
+import com.vci.web.other.AllActionThreadLocal;
 import com.vci.web.service.OsAttributeServiceI;
 import com.vci.web.service.OsBtmServiceI;
 import com.vci.web.service.UIEngineServiceI;
@@ -1080,6 +1081,11 @@
 		Map<String, OsAttributeVO> attributeVOMap;
 		if(pages != null && pages.size() > 0){
 			attributeVOMap = attrService.selectAllAttributeMap();
+			Map<String, UIActionVO> actionVOMap = AllActionThreadLocal.get();
+			if(actionVOMap == null || actionVOMap.isEmpty()){
+				actionVOMap = selectAllActionMap();
+				AllActionThreadLocal.set(actionVOMap);
+			}
 		}else{
 			attributeVOMap = null;
 		}
@@ -1097,6 +1103,7 @@
 				}
 			});
 		}
+		AllActionThreadLocal.remove();
 		return contentVOS;
 	}
 
@@ -1456,9 +1463,15 @@
 	public List<UIButtonDefineVO> buttonDO2VOs(Collection<com.vci.corba.portal.data.PLTabButton> buttons){
 		List<UIButtonDefineVO> buttonDefineVOS = new ArrayList<>();
 		if(buttons != null && buttons.size() > 0){
-			Map<String, UIActionVO> actionVOMap = self.selectAllActionMap();
+//			Map<String, UIActionVO> actionVOMap = self.selectAllActionMap();
+			Map<String, UIActionVO> actionVOMap = null;
+			actionVOMap = AllActionThreadLocal.get();
+			if(actionVOMap == null ){
+				actionVOMap = self.selectAllActionMap();
+			}
+			Map<String, UIActionVO> finalActionVOMap = actionVOMap;
 			Optional.ofNullable(buttons).orElseGet(()->new ArrayList<>()).stream().forEach(button->{
-				buttonDefineVOS.add(buttonDO2VO(button, actionVOMap));
+				buttonDefineVOS.add(buttonDO2VO(button, finalActionVOMap));
 			});
 		}
 

--
Gitblit v1.9.3