diff --git a/src/main/java/com/xly/tool/DynamicToolProvider.java b/src/main/java/com/xly/tool/DynamicToolProvider.java index e1322b7..43c0ae9 100644 --- a/src/main/java/com/xly/tool/DynamicToolProvider.java +++ b/src/main/java/com/xly/tool/DynamicToolProvider.java @@ -309,6 +309,7 @@ public class DynamicToolProvider implements ToolProvider { String sRuleArray = getArrrayBySql(paramRule); // 生产要求:数组类型,可多选枚举值[上光、复膜、烫金],无默认值 if (ObjectUtil.isNotEmpty(sRuleArray)) { + sRuleArray = StrUtil.replace(sRuleArray,",","/"); properties.add(JsonSchemaProperty.enums(sRuleArray.split("/"))); } if(bEmpty){ @@ -449,11 +450,30 @@ public class DynamicToolProvider implements ToolProvider { if(ObjectUtil.isEmpty(data)){ return StrUtil.EMPTY; } - data.forEach(one->{ - if(ObjectUtil.isNotEmpty(one.get(paramRule.getSParamValue()))){ - sb.append(one.get(paramRule.getSParamValue())).append("/"); - } - }); + if(data.get(0).containsKey("sGroupName")){ + Map>> groupData = data.stream() + .collect(Collectors.groupingBy(map -> map.get("sGroupName"))); + // 打印结果 + Integer sUpKeySize =groupData.size(); + groupData.forEach((key, value) -> { +// System.out.println("key: " + key); + value.forEach(one->{ + sb.append(one.get(paramRule.getSParamValue())).append("/"); + }); + if(sUpKeySize>1 && ObjectUtil.isNotEmpty(sb)){ + sb.delete(sb.length()-1,sb.length()); + sb.append(","); + } + }); + + + }else{ + data.forEach(one->{ + if(ObjectUtil.isNotEmpty(one.get(paramRule.getSParamValue()))){ + sb.append(one.get(paramRule.getSParamValue())).append("/"); + } + }); + } if(ObjectUtil.isNotEmpty(sb)){ sb.delete(sb.length()-1,sb.length()); paramRule.setSRuleTs(sb.toString());