From 35c390431b4ffa1e3f50371a46b4e9ac63d9aa70 Mon Sep 17 00:00:00 2001
From: 杜洪波 <1074825718@qq.com>
Date: 星期五, 17 四月 2026 09:45:08 +0800
Subject: [PATCH] Merge branch 'saas' of http://nonxin.cn:8090/r/product/product-server-tool-face/V2.0.0 into saas

---
 src/main/java/com/product/face/service/FaceDesignService.java |   43 ++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 38 insertions(+), 5 deletions(-)

diff --git a/src/main/java/com/product/face/service/FaceDesignService.java b/src/main/java/com/product/face/service/FaceDesignService.java
index 30ca858..464d7d4 100644
--- a/src/main/java/com/product/face/service/FaceDesignService.java
+++ b/src/main/java/com/product/face/service/FaceDesignService.java
@@ -34,6 +34,14 @@
 	@Resource
 	public PublicService publicService;
 
+	public DataTableEntity listAllTable(){
+		return getBaseDao().listTable("product_sys_datamodel_table", null, "table_type ASC");
+	}
+	
+	public DataTableEntity listAllDesignFace(){
+		return getBaseDao().listTable(FaceConst.TABLE_FACE_CONFIG);
+	}
+	
 	/**
 	 * 鑾峰彇琛ㄥ崟閰嶇疆璇︽儏
 	 *
@@ -62,9 +70,24 @@
 			other.put("product_sys_face_custom_field", new String[]{});
 		}
 		fse.getSubData().clear();
+		//澶у啓瀛楁鍊兼樉绀鸿浆鎹�
+//		fse.setValue("formRules", fse.getString("form_rules"));
+//		fse.setValue("formModel", fse.getString("form_model"));
+//		fse.setValue("labelWidth", fse.getString("label_width"));
 		return BaseUtil.success(fse, other);
 	}
 
+	public class Pointer {
+		int data = 0;
+
+		public int getData() {
+			return ++data;
+		}
+
+		public void setData(int data) {
+			this.data = data;
+		}
+	}
 
 	/**
 	 * 淇濆瓨琛ㄥ崟鍐呭鏁版嵁
@@ -81,6 +104,8 @@
 			ErrorCode.SAVE_EMPTY_FACE_FAIL.throwException();
 		}
 		List<FieldSetEntity> fieldSetEntityList = new ArrayList<>();
+		//澹版槑涓�涓甫鎸囬拡鐨刬nt鍙橀噺
+		Pointer pointer = new Pointer();
 		for (int i = 0; i < fields.getRows(); i++) {
 			if (fields.getBoolean(i, "event_property")) {
 				DataTableEntity subDataTable = fields.getFieldSetEntity(i).getSubDataTable("event_array");
@@ -89,9 +114,13 @@
 				}
 				fields.setFieldValue(i, "event_array", BaseUtil.dataTableEntityToJson(subDataTable));
 			}
-			fieldSetEntityList.addAll(controlTraverse(new JSONObject((Map) fields.getFieldSetEntity(i).getValues()), null, i));
+			fieldSetEntityList.addAll(controlTraverse(new JSONObject((Map) fields.getFieldSetEntity(i).getValues()), null, i, pointer));
 		}
 		fse.removeSubData(FaceConst.FACE_FIELD);
+		//澶у啓瀛楁鍊间繚瀛樿浆鎹�
+//		fse.setValue("form_rules", fse.getString("formRules"));
+//		fse.setValue("form_model", fse.getString("formModel"));
+//		fse.setValue("label_width", fse.getString("labelWidth"));
 		BaseUtil.createCreatorAndCreationTime(fse);
 		fields.setData(fieldSetEntityList);
 		fse.addSubDataTable(fields);
@@ -107,7 +136,7 @@
 		return fse;
 	}
 
-	public List<FieldSetEntity> controlTraverse(Object o, String parentUuid, Integer sequence) {
+	public List<FieldSetEntity> controlTraverse(Object o, String parentUuid, Integer sequence, Pointer pointer) {
 		List<FieldSetEntity> fieldSetList = new ArrayList<>();
 		try {
 			if (o instanceof JSONArray) {
@@ -116,7 +145,7 @@
 				try {
 					for (int i = 0; i < jsonArray.size(); i++) {
 						Object obj = jsonArray.get(i);
-						fieldSetList.addAll(controlTraverse(obj, parentUuid, i));
+						fieldSetList.addAll(controlTraverse(obj, parentUuid, i, pointer));
 					}
 				} catch (Exception e) {
 					e.printStackTrace();
@@ -131,9 +160,13 @@
 					FieldSetEntity fs = getTemplateFieldSet(entry.getKey(), entry.getValue(), groupUuid);
 					if (fs != null) {
 						int propertyType = fs.getInteger(FaceConst.FIELD_PROPERTY_TYPE).intValue();
+						// 2025骞�6鏈�16鏃� 14:28:39 绉诲姩绔� 浜哄憳閫夋嫨瀛楁鏈�夛紝榛樿涓�0 bug瑙e喅锛堟湰韬槸false锛屼絾鏄暟鎹簱淇濆瓨涓�0锛�
+						if (5 == propertyType && "defaultValue".equals(fs.getString("property_name")) && !fs.getBoolean("property_value")) {
+							continue;
+						}
 						if ((4 == propertyType || 3 == propertyType) && (entry.getValue() instanceof JSONArray || entry.getValue() instanceof JSONObject)) {
 							try {
-								fieldSetList.addAll(controlTraverse(entry.getValue(), fs.getUUID(), null));
+								fieldSetList.addAll(controlTraverse(entry.getValue(), fs.getUUID(), null, pointer));
 								fs.remove(FaceConst.FIELD_PROPERTY_VALUE);
 							} catch (Exception e) {
 								e.printStackTrace();
@@ -145,7 +178,7 @@
 					}
 				}
 				if (sequence != null) {
-					FieldSetEntity fs = getTemplateFieldSet(FaceConst.CONTROL_SEQUENCE, sequence, groupUuid);
+					FieldSetEntity fs = getTemplateFieldSet(FaceConst.CONTROL_SEQUENCE, pointer.getData(), groupUuid);
 					fs.setValue(FaceConst.FIELD_PARENT_UUID, parentUuid);
 					fieldSetList.add(fs);
 				}

--
Gitblit v1.9.2