From 30d06cd40ab7c59a0bb8641f5d28e219af2c085c Mon Sep 17 00:00:00 2001
From: 许鹏程 <1821349743@qq.com>
Date: 星期三, 24 五月 2023 16:59:23 +0800
Subject: [PATCH] 协同个人已办
---
src/main/java/com/product/face/entity/FaceListEntity.java | 574 +++++++++++++++++++++++++++++----------------------------
1 files changed, 291 insertions(+), 283 deletions(-)
diff --git a/src/main/java/com/product/face/entity/FaceListEntity.java b/src/main/java/com/product/face/entity/FaceListEntity.java
index e2fbd06..047830c 100644
--- a/src/main/java/com/product/face/entity/FaceListEntity.java
+++ b/src/main/java/com/product/face/entity/FaceListEntity.java
@@ -28,319 +28,327 @@
*/
public class FaceListEntity implements Serializable {
- private static final long serialVersionUID = -6777140406080679771L;
- /**
- * 琛╱uid
- */
- private String tableUuid;
- /**
- * face_uuid
- */
- private String uuid;
- /**
- * 琛ㄥ崟鍚�
- */
- private String faceName;
- /**
- * 鍔熻兘uuid
- */
- @Deprecated
- private String functionUuid;
- /**
- * 瀛楁闆嗗悎
- */
- private List<FaceField> faceFields;
- /**
- * 琛ㄥ悕
- */
- private String tableName;
+ private static final long serialVersionUID = -6777140406080679771L;
+ /**
+ * 琛╱uid
+ */
+ private String tableUuid;
+ /**
+ * face_uuid
+ */
+ private String uuid;
+ /**
+ * 琛ㄥ崟鍚�
+ */
+ private String faceName;
+ /**
+ * 鍔熻兘uuid
+ */
+ @Deprecated
+ private String functionUuid;
+ /**
+ * 瀛楁闆嗗悎
+ */
+ private List<FaceField> faceFields;
+ /**
+ * 琛ㄥ悕
+ */
+ private String tableName;
- /**
- * 鑾峰彇琛ㄥ悕
- *
- * @return
- */
- public String getTableName() {
- if (this.tableName == null && this.tableUuid != null) {
- //浠庣紦瀛樹腑鑾峰彇
- DataTableEntity cacheData = DataPoolCacheImpl.getInstance().getCacheData("鎵�鏈夎〃淇℃伅(uuid)", new String[]{this.tableUuid});
- if (cacheData != null && cacheData.getRows() > 0) {
- String table_name = cacheData.getString(0, "table_name");
- this.tableName = table_name;
- }
- }
- return tableName;
- }
+ /**
+ * 鑾峰彇琛ㄥ悕
+ *
+ * @return
+ */
+ public String getTableName() {
+ if (this.tableName == null && this.tableUuid != null) {
+ //浠庣紦瀛樹腑鑾峰彇
+ DataTableEntity cacheData = DataPoolCacheImpl.getInstance().getCacheData("鎵�鏈夎〃淇℃伅(uuid)", new String[]{this.tableUuid});
+ if (cacheData != null && cacheData.getRows() > 0) {
+ String table_name = cacheData.getString(0, "table_name");
+ this.tableName = table_name;
+ }
+ }
+ return tableName;
+ }
- /**
- * 鏉′欢瀛楁
- *
- * @param fieldName 瀛楁鍚嶇О
- * @param faceUuid 瀛楁uuid
- * @param columnName 鍒楀悕
- * @param columnWidth 鍒楀
- * @param sequence 鎺掑簭
- * @param fieldReference 鍙傜収
- */
- public void addField(String fieldName, String faceUuid, String columnName, String columnWidth, Integer sequence, String fieldReference) {
- FaceField faceField = new FaceField();
- faceField.setFieldName(fieldName);
- faceField.setFieldUuid(faceUuid);
- faceField.setColumnName(columnName);
- faceField.setColumnWidth(columnWidth);
- faceField.setSequence(sequence);
- faceField.setFieldReference(fieldReference);
- if (this.faceFields == null) {
- this.faceFields = Lists.newArrayList();
- }
- this.faceFields.add(faceField);
- }
+ /**
+ * 鏉′欢瀛楁
+ *
+ * @param fieldName 瀛楁鍚嶇О
+ * @param faceUuid 瀛楁uuid
+ * @param columnName 鍒楀悕
+ * @param columnWidth 鍒楀
+ * @param sequence 鎺掑簭
+ * @param fieldReference 鍙傜収
+ */
+ public void addField(String fieldName, String faceUuid, String columnName, String columnWidth, Integer sequence, String fieldReference) {
+ FaceField faceField = new FaceField();
+ faceField.setFieldName(fieldName);
+ faceField.setFieldUuid(faceUuid);
+ faceField.setColumnName(columnName);
+ faceField.setColumnWidth(columnWidth);
+ faceField.setSequence(sequence);
+ faceField.setFieldReference(fieldReference);
+ if (this.faceFields == null) {
+ this.faceFields = Lists.newArrayList();
+ }
+ this.faceFields.add(faceField);
+ }
- /**
- * 瀛楁鎺掑簭鏂规硶
- */
- public void sortField() {
- if (this.faceFields != null && this.faceFields.size() > 0) {
- this.faceFields.sort((a, b) -> {
- return a.getSequence().compareTo(b.getSequence());
- });
- }
- }
+ /**
+ * 瀛楁鎺掑簭鏂规硶
+ */
+ public void sortField() {
+ if (this.faceFields != null && this.faceFields.size() > 0) {
+ this.faceFields.sort((a, b) -> {
+ return a.getSequence().compareTo(b.getSequence());
+ });
+ }
+ }
- public String getTableUuid() {
- return tableUuid;
- }
+ public String getTableUuid() {
+ return tableUuid;
+ }
- public void setTableUuid(String tableUuid) {
- this.tableUuid = tableUuid;
- }
+ public void setTableUuid(String tableUuid) {
+ this.tableUuid = tableUuid;
+ }
- public String getUuid() {
- return uuid;
- }
+ public String getUuid() {
+ return uuid;
+ }
- public void setUuid(String uuid) {
- this.uuid = uuid;
- }
+ public void setUuid(String uuid) {
+ this.uuid = uuid;
+ }
- public String getFaceName() {
- return faceName;
- }
+ public String getFaceName() {
+ return faceName;
+ }
- public void setFaceName(String faceName) {
- this.faceName = faceName;
- }
+ public void setFaceName(String faceName) {
+ this.faceName = faceName;
+ }
- public String getFunctionUuid() {
- return functionUuid;
- }
+ public String getFunctionUuid() {
+ return functionUuid;
+ }
- public void setFunctionUuid(String functionUuid) {
- this.functionUuid = functionUuid;
- }
+ public void setFunctionUuid(String functionUuid) {
+ this.functionUuid = functionUuid;
+ }
- public List<FaceField> getFaceFields() {
- return faceFields;
- }
+ public List<FaceField> getFaceFields() {
+ return faceFields;
+ }
- public void setFaceFields(List<FaceField> faceFields) {
- this.faceFields = faceFields;
- }
+ public void setFaceFields(List<FaceField> faceFields) {
+ this.faceFields = faceFields;
+ }
- /**
- * 鑾峰彇鍙傜収鏉′欢
- *
- * @param fieldName
- * @param dictName
- * @return
- */
- private String getDictFilter(String fieldName, String dictName) {
- StringBuilder filter = new StringBuilder();
- DictService bean = SpringBeanUtil.getBean(DictService.class);
- String manager_type = null;
- SystemUser currentUser = SpringMVCContextHolder.getCurrentUser();
- if (currentUser != null && currentUser.getCurrentManager() != null) {
- manager_type = currentUser.getCurrentManager().getString(CmnConst.MANAGER_TYPE);
- } else {
- manager_type = null;
- }
- //鎷艰鏅�氬弬鐓ф煡璇㈡墍闇�鍙傛暟
- FieldSetEntity fse = new FieldSetEntity();
- fse.setTableName(CmnConst.PRODUCT_SYS_DICT);
- fse.setValue(CmnConst.DICT_NAME, dictName);
- fse.setValue(CoreConst.SYSTEM_CLIENT_TYPE_, currentUser.getClientType());
- //鑾峰彇鍙傜収闆嗗悎
- DataTableEntity dataTableEntity = bean.listDictByname(fse, manager_type);
- if (!BaseUtil.dataTableIsEmpty(dataTableEntity)) {
- //缁勬垚鏉′欢
- Object[] uuids = dataTableEntity.getUuids();
- filter.append(fieldName);
- filter.append(" in (SELECT dict_value FROM product_sys_dict where ");
- filter.append(BaseUtil.buildQuestionMarkFilter("uuid", uuids, true));
- filter.append(" and dict_label like concat('%','~val~','%') ) ");
- }
- return filter.toString();
- }
+ /**
+ * 鑾峰彇鍙傜収鏉′欢
+ *
+ * @param fieldName
+ * @param dictName
+ * @return
+ */
+ private String getDictFilter(String fieldName, String dictName) {
+ StringBuilder filter = new StringBuilder();
+ DictService bean = SpringBeanUtil.getBean(DictService.class);
+ String manager_type = null;
+ SystemUser currentUser = SpringMVCContextHolder.getCurrentUser();
+ if (currentUser != null && currentUser.getCurrentManager() != null) {
+ manager_type = currentUser.getCurrentManager().getString(CmnConst.MANAGER_TYPE);
+ } else {
+ manager_type = null;
+ }
+ //鎷艰鏅�氬弬鐓ф煡璇㈡墍闇�鍙傛暟
+ FieldSetEntity fse = new FieldSetEntity();
+ fse.setTableName(CmnConst.PRODUCT_SYS_DICT);
+ fse.setValue(CmnConst.DICT_NAME, dictName);
+ fse.setValue(CoreConst.SYSTEM_CLIENT_TYPE_, currentUser.getClientType());
+ //鑾峰彇鍙傜収闆嗗悎
+ DataTableEntity dataTableEntity = bean.listDictByname(fse, manager_type);
+ if (!BaseUtil.dataTableIsEmpty(dataTableEntity)) {
+ //缁勬垚鏉′欢
+ Object[] uuids = dataTableEntity.getUuids();
+ filter.append(fieldName);
+ filter.append(" in (SELECT dict_value FROM product_sys_dict where ");
+ filter.append(BaseUtil.buildQuestionMarkFilter("uuid", uuids, true));
+ filter.append(" and dict_label like concat('%','~val~','%') ) ");
+ }
+ return filter.toString();
+ }
- /**
- * 鑾峰彇鏉′欢
- *
- * @param tableAlias 琛ㄥ埆鍚�
- * @param aliasField 瀛楁鍒悕
- * @return
- */
- public Map<String, List<String>> getFilters(String tableAlias, Map<String, List<String>> aliasField) {
- DataPoolCacheImpl poolCache = null;
- //鎵�鏈夊瓧娈甸泦鍚�
- List<FaceField> faceFields = this.getFaceFields();
- //鏅�氭ā绯婃煡璇㈠瓧娈甸泦鍚�
- List<String> fieldNames = Lists.newArrayList();
- //鍙傜収妯$硦鏌ヨ鏉′欢闆嗗悎
- List<String> filters = Lists.newArrayList();
- //杩斿洖鐨勭粨鏋滈泦
- Map<String, List<String>> maps = Maps.newHashMap();
- maps.put("fields", fieldNames);
- maps.put("filter", filters);
- for (int i = 0; i < faceFields.size(); i++) {
- FaceField faceField = faceFields.get(i);
- if (StringUtils.isEmpty(faceField.getFieldName()) || StringUtils.isEmpty(faceField.getFieldReference())) {
- if (poolCache == null) {
- poolCache = DataPoolCacheImpl.getInstance();
- }
- DataTableEntity dt = poolCache.getCacheData("琛ㄥ瓧娈典俊鎭�", new String[]{getTableUuid(), faceField.getFieldName()});
- if (BaseUtil.dataTableIsEmpty(dt)) {
- } else {
- FieldSetEntity f = dt.getFieldSetEntity(0);
- faceField.setFieldName(f.getString(CmnConst.FIELD_NAME));
- faceField.setFieldReference(f.getString("field_reference"));
- }
- }
- //瀛楁鍚嶇О
- String fieldName = faceField.getFieldName();
- 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;
- }
- }
- }
- //鍙傜収澶勭悊
- String field_reference = faceField.getFieldReference();
- if (!StringUtils.isEmpty(field_reference)) {
- if (field_reference.indexOf("銆�") == 0 && field_reference.indexOf("銆�") > 0) {
- //鏅�氬弬鐓�
- filters.add(getDictFilter(fieldName, field_reference.replace("銆�", "").replace("銆�", "")));
- continue;
- } else {
- if (poolCache == null) {
- poolCache = DataPoolCacheImpl.getInstance();
- }
- //楂樼骇鍙傜収
- DataTableEntity prompt = poolCache.getCacheData("楂樼骇鍙傜収閰嶇疆淇℃伅", new String[]{field_reference});
- if (BaseUtil.dataTableIsEmpty(prompt)) {
- continue;
- }
- FieldSetEntity ff = prompt.getFieldSetEntity(0);
- StringBuilder p = new StringBuilder();
- p.append(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;
- }
- }
+ /**
+ * 鑾峰彇鏉′欢
+ *
+ * @param tableAlias 琛ㄥ埆鍚�
+ * @param aliasField 瀛楁鍒悕
+ * @return
+ */
+ public Map<String, List<String>> getFilters(String tableAlias, Map<String, List<String>> aliasField) {
+ DataPoolCacheImpl poolCache = null;
+ //鎵�鏈夊瓧娈甸泦鍚�
+ List<FaceField> faceFields = this.getFaceFields();
+ //鏅�氭ā绯婃煡璇㈠瓧娈甸泦鍚�
+ List<String> fieldNames = Lists.newArrayList();
+ //鍙傜収妯$硦鏌ヨ鏉′欢闆嗗悎
+ List<String> filters = Lists.newArrayList();
+ //杩斿洖鐨勭粨鏋滈泦
+ Map<String, List<String>> maps = Maps.newHashMap();
+ maps.put("fields", fieldNames);
+ maps.put("filter", filters);
+ for (int i = 0; i < faceFields.size(); i++) {
+ FaceField faceField = faceFields.get(i);
+ if (StringUtils.isEmpty(faceField.getFieldName()) || StringUtils.isEmpty(faceField.getFieldReference())) {
+ if (poolCache == null) {
+ poolCache = DataPoolCacheImpl.getInstance();
+ }
+ DataTableEntity dt = poolCache.getCacheData("琛ㄥ瓧娈典俊鎭�", new String[]{getTableUuid(), faceField.getFieldName()});
+ if (BaseUtil.dataTableIsEmpty(dt)) {
+ } else {
+ FieldSetEntity f = dt.getFieldSetEntity(0);
+ faceField.setFieldName(f.getString(CmnConst.FIELD_NAME));
+ faceField.setFieldReference(f.getString("field_reference"));
+ }
+ }
+ //瀛楁鍚嶇О
+ String fieldName = faceField.getFieldName();
+ 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;
+ }
+ }
+ }
+ //鍙傜収澶勭悊
+ String field_reference = faceField.getFieldReference();
+ if (!StringUtils.isEmpty(field_reference)) {
+ if (field_reference.indexOf("銆�") == 0 && field_reference.indexOf("銆�") > 0) {
+ //鏅�氬弬鐓�
+ filters.add(getDictFilter(getFieldName(tableAlias, fieldName), field_reference.replace("銆�", "").replace("銆�", "")));
+ continue;
+ } else {
+ if (poolCache == null) {
+ poolCache = DataPoolCacheImpl.getInstance();
+ }
+ //楂樼骇鍙傜収
+ DataTableEntity prompt = poolCache.getCacheData("楂樼骇鍙傜収閰嶇疆淇℃伅", new String[]{field_reference});
+ if (BaseUtil.dataTableIsEmpty(prompt)) {
+ continue;
+ }
+ 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(" WHERE ").append(ff.getString("view_fields")).append(" like concat('%','~val~','%') )");
+ filters.add(p.toString());
+ continue;
+ }
+ }
- if (!StringUtils.isEmpty(faceField.getFieldName())) {
- fieldNames.add(StringUtils.isEmpty(tableAlias) ? faceField.getFieldName() : ("`" + tableAlias + "`.`" + fieldName + "`"));
- }
- }
- //鑾峰彇redis 璧峰key
- String faceListKey = SystemFaceService.FACE_LIST_KEY;
- //閲嶆柊鏀惧叆redis
- RedisUtil.set(faceListKey + getUuid(), this);
- return maps;
- }
+ if (!StringUtils.isEmpty(faceField.getFieldName())) {
+ fieldNames.add(getFieldName(tableAlias, fieldName));
+ }
+ }
+ //鑾峰彇redis 璧峰key
+ String faceListKey = SystemFaceService.FACE_LIST_KEY;
+ //閲嶆柊鏀惧叆redis
+ RedisUtil.set(faceListKey + getUuid(), this);
+ return maps;
+ }
- /**
- * 瀛楁瀹炰綋绫�
- */
- public class FaceField implements Serializable {
+ private String getFieldName(String tableAlias, String fieldName) {
+ fieldName = "`" + fieldName + "`";
+ if (!StringUtils.isEmpty(tableAlias)) {
+ return "`" + tableAlias + "`." + fieldName;
+ }
+ return fieldName;
+ }
- private static final long serialVersionUID = 3154509166818911568L;
- /**
- * 瀛楁鍚嶇О
- */
- private String fieldName;
- /**
- * 瀛楁uuid
- */
- private String fieldUuid;
- /**
- * 鍒楀悕
- */
- private String columnName;
- /**
- * 鍒楀
- */
- private String columnWidth;
- /**
- * 鎺掑簭
- */
- private Integer sequence;
- /**
- * 瀛楁鍙傜収
- */
- private String fieldReference;
+ /**
+ * 瀛楁瀹炰綋绫�
+ */
+ public class FaceField implements Serializable {
- public String getFieldReference() {
- return fieldReference;
- }
+ private static final long serialVersionUID = 3154509166818911568L;
+ /**
+ * 瀛楁鍚嶇О
+ */
+ private String fieldName;
+ /**
+ * 瀛楁uuid
+ */
+ private String fieldUuid;
+ /**
+ * 鍒楀悕
+ */
+ private String columnName;
+ /**
+ * 鍒楀
+ */
+ private String columnWidth;
+ /**
+ * 鎺掑簭
+ */
+ private Integer sequence;
+ /**
+ * 瀛楁鍙傜収
+ */
+ private String fieldReference;
- public void setFieldReference(String fieldReference) {
- this.fieldReference = fieldReference;
- }
+ public String getFieldReference() {
+ return fieldReference;
+ }
- public String getFieldName() {
- return fieldName;
- }
+ public void setFieldReference(String fieldReference) {
+ this.fieldReference = fieldReference;
+ }
- public void setFieldName(String fieldName) {
- this.fieldName = fieldName;
- }
+ public String getFieldName() {
+ return fieldName;
+ }
- public String getFieldUuid() {
- return fieldUuid;
- }
+ public void setFieldName(String fieldName) {
+ this.fieldName = fieldName;
+ }
- public void setFieldUuid(String fieldUuid) {
- this.fieldUuid = fieldUuid;
- }
+ public String getFieldUuid() {
+ return fieldUuid;
+ }
- public String getColumnName() {
- return columnName;
- }
+ public void setFieldUuid(String fieldUuid) {
+ this.fieldUuid = fieldUuid;
+ }
- public void setColumnName(String columnName) {
- this.columnName = columnName;
- }
+ public String getColumnName() {
+ return columnName;
+ }
- public String getColumnWidth() {
- return columnWidth;
- }
+ public void setColumnName(String columnName) {
+ this.columnName = columnName;
+ }
- public void setColumnWidth(String columnWidth) {
- this.columnWidth = columnWidth;
- }
+ public String getColumnWidth() {
+ return columnWidth;
+ }
- public Integer getSequence() {
- return sequence;
- }
+ public void setColumnWidth(String columnWidth) {
+ this.columnWidth = columnWidth;
+ }
- public void setSequence(Integer sequence) {
- this.sequence = sequence;
- }
+ public Integer getSequence() {
+ return sequence;
+ }
- }
+ public void setSequence(Integer sequence) {
+ this.sequence = sequence;
+ }
+
+ }
}
--
Gitblit v1.9.2