From 99c693af3da1391d00872f89ebd18fcc85278200 Mon Sep 17 00:00:00 2001 From: 许鹏程 <1821349743@qq.com> Date: 星期一, 17 二月 2025 22:08:37 +0800 Subject: [PATCH] 归档支持自定义文件夹路径(多层级) --- src/main/java/com/product/face/entity/FaceListEntity.java | 96 ++++++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 92 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/product/face/entity/FaceListEntity.java b/src/main/java/com/product/face/entity/FaceListEntity.java index 047830c..4040366 100644 --- a/src/main/java/com/product/face/entity/FaceListEntity.java +++ b/src/main/java/com/product/face/entity/FaceListEntity.java @@ -1,5 +1,6 @@ package com.product.face.entity; +import com.alibaba.fastjson.JSON; import com.google.common.collect.Lists; import com.google.common.collect.Maps; import com.product.admin.config.CmnConst; @@ -56,6 +57,31 @@ private String tableName; /** + * 鏄惁鏄剧ず鏍� + */ + private String treeShow; + + /** + * 鏍戞暟鎹簮绫诲瀷 + */ + private String treeDataType; + + /** + * 鏁版嵁婧� + */ + private String treeDataSource; + + /** + * 鏍憀abel key + */ + private String treeLabelKey; + + /** + * 鏍憊alue key + */ + private String treeValueKey; + + /** * 鑾峰彇琛ㄥ悕 * * @return @@ -81,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); @@ -90,6 +117,7 @@ faceField.setColumnWidth(columnWidth); faceField.setSequence(sequence); faceField.setFieldReference(fieldReference); + faceField.setSearch(search); if (this.faceFields == null) { this.faceFields = Lists.newArrayList(); } @@ -145,6 +173,50 @@ public void setFaceFields(List<FaceField> faceFields) { this.faceFields = faceFields; + } + + public void setTableName(String tableName) { + this.tableName = tableName; + } + + public String getTreeShow() { + return treeShow; + } + + public void setTreeShow(String treeShow) { + this.treeShow = treeShow; + } + + public String getTreeDataType() { + return treeDataType; + } + + public void setTreeDataType(String treeDataType) { + this.treeDataType = treeDataType; + } + + public String getTreeDataSource() { + return treeDataSource; + } + + public void setTreeDataSource(String treeDataSource) { + this.treeDataSource = treeDataSource; + } + + public String getTreeLabelKey() { + return treeLabelKey; + } + + public void setTreeLabelKey(String treeLabelKey) { + this.treeLabelKey = treeLabelKey; + } + + public String getTreeValueKey() { + return treeValueKey; + } + + public void setTreeValueKey(String treeValueKey) { + this.treeValueKey = treeValueKey; } /** @@ -203,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(); @@ -217,12 +292,15 @@ } //瀛楁鍚嶇О String fieldName = faceField.getFieldName(); + if (!StringUtils.isEmpty(fieldName)) { + fieldName.trim(); + } if (aliasField != null && !StringUtils.isEmpty(fieldName)) { List<String> fieldAlias = aliasField.get(getTableName() + "." + fieldName); if (fieldAlias != null && fieldAlias.size() > 0) { String alias = fieldAlias.get(0); if (!StringUtils.isEmpty(alias)) { - fieldName = alias; + fieldName = alias.trim(); } } } @@ -244,7 +322,7 @@ } FieldSetEntity ff = prompt.getFieldSetEntity(0); StringBuilder p = new StringBuilder(); - p.append(getFieldName(tableAlias, fieldName)).append("` in ").append(" ( SELECT `").append(ff.getString("value_field")).append("` FROM ").append(ff.getString("source_table")); + p.append(getFieldName(tableAlias, fieldName)).append(" in ").append(" ( SELECT ").append(ff.getString("value_field")).append(" FROM ").append(ff.getString("source_table")); p.append(" WHERE ").append(ff.getString("view_fields")).append(" like concat('%','~val~','%') )"); filters.add(p.toString()); continue; @@ -258,7 +336,7 @@ //鑾峰彇redis 璧峰key String faceListKey = SystemFaceService.FACE_LIST_KEY; //閲嶆柊鏀惧叆redis - RedisUtil.set(faceListKey + getUuid(), this); + RedisUtil.set(faceListKey + getUuid(), JSON.parseObject(JSON.toJSONString(this), com.product.admin.entity.FaceListEntity.class)); return maps; } @@ -300,6 +378,8 @@ * 瀛楁鍙傜収 */ private String fieldReference; + + private boolean search; public String getFieldReference() { return fieldReference; @@ -349,6 +429,14 @@ this.sequence = sequence; } + public boolean isSearch() { + return search; + } + + public void setSearch(boolean search) { + this.search = search; + } } + } -- Gitblit v1.9.2