From 604d00f67ddcf25a9d079ceddd1c668b2a4e5288 Mon Sep 17 00:00:00 2001 From: mitao <2763622819@qq.com> Date: 星期五, 19 四月 2024 15:08:22 +0800 Subject: [PATCH] bug修复 --- ruoyi-system/src/main/java/com/ruoyi/system/utils/FieldBuildUtil.java | 41 +++++++++++++++++++++++++++++++++++++---- 1 files changed, 37 insertions(+), 4 deletions(-) diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/utils/FieldBuildUtil.java b/ruoyi-system/src/main/java/com/ruoyi/system/utils/FieldBuildUtil.java index 47fbb5a..11e3494 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/utils/FieldBuildUtil.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/utils/FieldBuildUtil.java @@ -1,10 +1,12 @@ package com.ruoyi.system.utils; +import com.ruoyi.common.enums.FieldInputTypeEnum; +import com.ruoyi.common.enums.FieldTypeEnum; import com.ruoyi.common.utils.StringUtils; import com.ruoyi.system.domain.TbBasicDataField; import com.ruoyi.system.domain.TbField; import com.ruoyi.system.vo.FieldsTreeVO; - +import java.text.DecimalFormat; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -14,6 +16,7 @@ * @date 2024/4/3 */ public class FieldBuildUtil { + /** * 构建基础数据字段树形层级 * @@ -21,7 +24,8 @@ * @param fieldMap 字段Map * @param roots 返回的vo */ - public static void buildTreeStructure(List<TbBasicDataField> basicDataFields, Map<Long, TbField> fieldMap, List<FieldsTreeVO> roots) { + public static void buildTreeStructure(List<TbBasicDataField> basicDataFields, + Map<Long, TbField> fieldMap, List<FieldsTreeVO> roots) { Map<String, FieldsTreeVO> levelTwoMap = new HashMap<>(); Map<String, FieldsTreeVO> levelThreeMap = new HashMap<>(); @@ -39,6 +43,12 @@ field.setName(fieldName); field.setValue(fieldValue); field.setCategory(Boolean.FALSE); + field.setFieldType(tbField.getFieldType()); + if (tbField.getFieldType().equals(FieldTypeEnum.TEXT) && tbField.getTextInputType() + .equals(FieldInputTypeEnum.FIXED_CONTENT)) { + field.setDropdown(tbField.getTextContent()); + field.setDropdownState(Boolean.TRUE); + } FieldsTreeVO levelOneField = null; for (FieldsTreeVO root : roots) { if (root.getName().equals(levelOneCategory)) { @@ -62,7 +72,8 @@ } if (StringUtils.isNotBlank(levelThreeCategory)) { - FieldsTreeVO levelThreeField = levelThreeMap.getOrDefault(levelThreeCategory, null); + FieldsTreeVO levelThreeField = levelThreeMap.getOrDefault( + levelThreeCategory, null); if (levelThreeField == null) { levelThreeField = new FieldsTreeVO(); levelThreeField.setName(levelThreeCategory); @@ -85,7 +96,8 @@ * * @param tbFieldList 字段列表 */ - public static void buildTreeFromTbFieldList(List<TbField> tbFieldList, List<FieldsTreeVO> roots) { + public static void buildTreeFromTbFieldList(List<TbField> tbFieldList, + List<FieldsTreeVO> roots) { Map<String, FieldsTreeVO> levelOneMap = new HashMap<>(); Map<String, FieldsTreeVO> levelTwoMap = new HashMap<>(); @@ -99,6 +111,12 @@ field.setId(id); field.setName(fieldName); field.setCategory(Boolean.FALSE); + field.setFieldType(tbField.getFieldType()); + if (tbField.getFieldType().equals(FieldTypeEnum.TEXT) && + tbField.getTextInputType().equals(FieldInputTypeEnum.FIXED_CONTENT)) { + field.setDropdown(tbField.getTextContent()); + field.setDropdownState(Boolean.TRUE); + } FieldsTreeVO levelOneField = null; for (FieldsTreeVO root : roots) { if (root.getName().equals(levelOneCategory)) { @@ -134,4 +152,19 @@ } } } + + /** + * 数值类型格式化 数字类型字符串,每三位增加逗号 + * + * @param fieldValue 整数类型的字符串 + * @return 格式化后的值 + */ + public static String formatNumberWithCommas(String fieldValue) { + if (fieldValue != null && fieldValue.matches("\\d+")) { + DecimalFormat df = new DecimalFormat("#,###"); + return df.format(Long.parseLong(fieldValue)); + } else { + return fieldValue; // 不满足条件时返回传入的值 + } + } } \ No newline at end of file -- Gitblit v1.7.1