From 29f1a0a5d9bc184fa497a88ec11c37f10a45df92 Mon Sep 17 00:00:00 2001 From: 许鹏程 <1821349743@qq.com> Date: 星期二, 26 十一月 2024 15:25:39 +0800 Subject: [PATCH] 排序 parent --- src/main/java/com/product/face/service/FaceDesignService.java | 41 +++++++++++++++++++++++++++++++++++------ 1 files changed, 35 insertions(+), 6 deletions(-) diff --git a/src/main/java/com/product/face/service/FaceDesignService.java b/src/main/java/com/product/face/service/FaceDesignService.java index 1f89e1b..9daf37d 100644 --- a/src/main/java/com/product/face/service/FaceDesignService.java +++ b/src/main/java/com/product/face/service/FaceDesignService.java @@ -6,6 +6,7 @@ import com.alibaba.fastjson.JSONObject; import com.product.admin.service.PublicService; import com.product.common.lang.StringUtils; +import com.product.core.cache.DataPoolCacheImpl; import com.product.core.config.CoreConst; import com.product.core.entity.DataTableEntity; import com.product.core.entity.FieldSetEntity; @@ -17,6 +18,8 @@ import com.product.face.service.ide.IFaceDesignService; import com.product.face.util.FaceUtil; import com.product.util.BaseUtil; +import org.apache.poi.hdgf.pointers.Pointer; +import org.apache.poi.ss.formula.functions.T; import org.springframework.stereotype.Service; import javax.annotation.Resource; @@ -51,10 +54,31 @@ List<JSONObject> result = FaceUtil.getFaceControlList(fse, fieldPropertyDt); Map<String, Object> other = new HashMap<>(); other.put("drawingList", result); + DataTableEntity faceCustomField = fse.getSubDataTable("product_sys_face_custom_field"); + if (!DataTableEntity.isEmpty(faceCustomField)) { + for (int i = 0; i < faceCustomField.getRows(); i++) { + faceCustomField.setFieldValue(i, "customField", true); + faceCustomField.setFieldValue(i, "added", true); + } + other.put("product_sys_face_custom_field", BaseUtil.dataTableEntityToJson(faceCustomField)); + } else { + other.put("product_sys_face_custom_field", new String[]{}); + } fse.getSubData().clear(); return BaseUtil.success(fse, other); } + public class Pointer { + int data = 0; + + public int getData() { + return ++data; + } + + public void setData(int data) { + this.data = data; + } + } /** * 淇濆瓨琛ㄥ崟鍐呭鏁版嵁 @@ -71,15 +95,17 @@ 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"); - if(DataTableEntity.isEmpty(subDataTable)){ + if (DataTableEntity.isEmpty(subDataTable)) { continue; } 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); BaseUtil.createCreatorAndCreationTime(fse); @@ -89,12 +115,15 @@ if (!StringUtils.isEmpty(fse.getUUID())) { getBaseDao().delete(FaceConst.TABLE_FACE_FIELD_CONTROL_PROPERTY, "master_uuid=?", new Object[]{fse.getUUID()}); } + if (StringUtils.isEmpty(fse.getString("terminal_type"))) { + fse.setValue("terminal_type", 1); + } getBaseDao().saveFieldSetEntity(fse); fse.getSubData().clear(); 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) { @@ -103,7 +132,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(); @@ -120,7 +149,7 @@ int propertyType = fs.getInteger(FaceConst.FIELD_PROPERTY_TYPE).intValue(); 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(); @@ -132,7 +161,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