From 61fc6b12f5231c50103849866fe2d094fc0b9936 Mon Sep 17 00:00:00 2001
From: 许鹏程 <1821349743@qq.com>
Date: 星期六, 08 二月 2025 18:40:40 +0800
Subject: [PATCH] 列表表单支持配置是否搜索该字段

---
 src/main/java/com/product/face/service/FaceCacheService.java |   13 ++-----------
 src/main/java/com/product/face/entity/FaceListEntity.java    |   17 +++++++++++++++--
 2 files changed, 17 insertions(+), 13 deletions(-)

diff --git a/src/main/java/com/product/face/entity/FaceListEntity.java b/src/main/java/com/product/face/entity/FaceListEntity.java
index c846e53..4040366 100644
--- a/src/main/java/com/product/face/entity/FaceListEntity.java
+++ b/src/main/java/com/product/face/entity/FaceListEntity.java
@@ -14,7 +14,6 @@
 import com.product.core.entity.FieldSetEntity;
 import com.product.core.spring.context.SpringBeanUtil;
 import com.product.core.spring.context.SpringMVCContextHolder;
-import com.product.face.config.FaceConst;
 import com.product.module.sys.entity.SystemUser;
 import com.product.util.BaseUtil;
 
@@ -108,8 +107,9 @@
 	 * @param columnWidth    鍒楀
 	 * @param sequence       鎺掑簭
 	 * @param fieldReference 鍙傜収
+	 * @param search        鏄惁鎼滅储
 	 */
-	public void addField(String fieldName, String faceUuid, String columnName, String columnWidth, Integer sequence, String fieldReference) {
+	public void addField(String fieldName, String faceUuid, String columnName, String columnWidth, Integer sequence, String fieldReference, boolean search) {
 		FaceField faceField = new FaceField();
 		faceField.setFieldName(fieldName);
 		faceField.setFieldUuid(faceUuid);
@@ -117,6 +117,7 @@
 		faceField.setColumnWidth(columnWidth);
 		faceField.setSequence(sequence);
 		faceField.setFieldReference(fieldReference);
+		faceField.setSearch(search);
 		if (this.faceFields == null) {
 			this.faceFields = Lists.newArrayList();
 		}
@@ -274,6 +275,9 @@
 		maps.put("filter", filters);
 		for (int i = 0; i < faceFields.size(); i++) {
 			FaceField faceField = faceFields.get(i);
+			if (!faceField.isSearch()) {
+				continue;
+			}
 			if (StringUtils.isEmpty(faceField.getFieldName()) || StringUtils.isEmpty(faceField.getFieldReference())) {
 				if (poolCache == null) {
 					poolCache = DataPoolCacheImpl.getInstance();
@@ -375,6 +379,8 @@
 		 */
 		private String fieldReference;
 
+		private boolean search;
+
 		public String getFieldReference() {
 			return fieldReference;
 		}
@@ -423,6 +429,13 @@
 			this.sequence = sequence;
 		}
 
+		public boolean isSearch() {
+			return search;
+		}
+
+		public void setSearch(boolean search) {
+			this.search = search;
+		}
 	}
 
 
diff --git a/src/main/java/com/product/face/service/FaceCacheService.java b/src/main/java/com/product/face/service/FaceCacheService.java
index eb8989a..85f00ad 100644
--- a/src/main/java/com/product/face/service/FaceCacheService.java
+++ b/src/main/java/com/product/face/service/FaceCacheService.java
@@ -3,7 +3,6 @@
 import cn.hutool.core.collection.CollectionUtil;
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
-import com.google.common.collect.Lists;
 import com.product.common.lang.StringUtils;
 import com.product.core.cache.util.RedisUtil;
 import com.product.core.entity.DataTableEntity;
@@ -12,7 +11,6 @@
 import com.product.face.config.FaceConst;
 import com.product.face.entity.FaceEntity;
 import com.product.face.entity.FaceListEntity;
-import com.product.face.entity.TableColumn;
 import com.product.face.util.FaceUtil;
 import com.product.util.BaseUtil;
 import org.springframework.stereotype.Service;
@@ -153,7 +151,6 @@
 		String treeDataSource = fse.getString("tree_datasource");
 		String treeLabelKey = fse.getString("tree_label_key");
 		String treeValueKey = fse.getString("tree_value_key");
-		List<TableColumn> result = Lists.newArrayList();
 		FaceListEntity faceListEntity = new FaceListEntity();
 		faceListEntity.setFaceName(faceNumber);
 		faceListEntity.setTableUuid(tableUuid);
@@ -164,7 +161,6 @@
 		faceListEntity.setTreeLabelKey(treeLabelKey);
 		faceListEntity.setTreeValueKey(treeValueKey);
 		for (int i = 0; i < tableColumns.size(); i++) {
-			TableColumn tableColumn = new TableColumn();
 			JSONObject columnJson = tableColumns.getJSONObject(i);
 			String fieldName = columnJson.getString(FaceConst.FIELD_PROPERTY_VMODEL);
 			if (StringUtils.isEmpty(fieldName)) {
@@ -175,21 +171,16 @@
 			JSONObject config = columnJson.getJSONObject(FaceConst.FIELD_PROPERTY_CONFIG);
 
 			Object setWidth = config.get("setWidth");
-			if (!StringUtils.isEmpty(setWidth)) {
-				tableColumn.setColumnWidth(setWidth + "%");
-			}
 			FieldSetEntity fieldInfo = BaseUtil.getSingleInfoByCache("琛ㄥ瓧娈典俊鎭�", new String[]{tableUuid, fieldName});
 			String label = config.getString(FaceConst.FIELD_PROPERTY_LABEL);
+			boolean search  = !"0".equals(config.getString("isSearch"));
 			String fieldUuid = null;
 			String fieldReference = null;
 			if (!FieldSetEntity.isEmpty(fieldInfo)) {
 				fieldUuid = fieldInfo.getString(FaceConst.UUID);
 				fieldReference = fieldInfo.getString(FaceConst.FIELD_FIELD_REFERENCE);
 			}
-			faceListEntity.addField(fieldName, fieldUuid, label, tableColumn.getColumnWidth(), i, fieldReference);
-			tableColumn.setField(fieldName);
-			tableColumn.setTitle(config.getString(FaceConst.FIELD_PROPERTY_LABEL));
-			result.add(tableColumn);
+			faceListEntity.addField(fieldName, fieldUuid, label, !StringUtils.isEmpty(setWidth)? setWidth+"%" : null, i, fieldReference,search);
 		}
 		//楠岃瘉琛ㄥ崟涓殑瀛楁鏄惁瀛樺湪
 		if (faceListEntity != null && !CollectionUtil.isEmpty(faceListEntity.getFaceFields())) {

--
Gitblit v1.9.2