Commit 6d5cff84ae4b9cd342f87004b5bb40d9ea3f0b12
1 parent
9fd4759e
1111
Showing
1 changed file
with
25 additions
and
5 deletions
src/main/java/com/xly/tool/DynamicToolProvider.java
| @@ -309,6 +309,7 @@ public class DynamicToolProvider implements ToolProvider { | @@ -309,6 +309,7 @@ public class DynamicToolProvider implements ToolProvider { | ||
| 309 | String sRuleArray = getArrrayBySql(paramRule); | 309 | String sRuleArray = getArrrayBySql(paramRule); |
| 310 | // 生产要求:数组类型,可多选枚举值[上光、复膜、烫金],无默认值 | 310 | // 生产要求:数组类型,可多选枚举值[上光、复膜、烫金],无默认值 |
| 311 | if (ObjectUtil.isNotEmpty(sRuleArray)) { | 311 | if (ObjectUtil.isNotEmpty(sRuleArray)) { |
| 312 | + sRuleArray = StrUtil.replace(sRuleArray,",","/"); | ||
| 312 | properties.add(JsonSchemaProperty.enums(sRuleArray.split("/"))); | 313 | properties.add(JsonSchemaProperty.enums(sRuleArray.split("/"))); |
| 313 | } | 314 | } |
| 314 | if(bEmpty){ | 315 | if(bEmpty){ |
| @@ -449,11 +450,30 @@ public class DynamicToolProvider implements ToolProvider { | @@ -449,11 +450,30 @@ public class DynamicToolProvider implements ToolProvider { | ||
| 449 | if(ObjectUtil.isEmpty(data)){ | 450 | if(ObjectUtil.isEmpty(data)){ |
| 450 | return StrUtil.EMPTY; | 451 | return StrUtil.EMPTY; |
| 451 | } | 452 | } |
| 452 | - data.forEach(one->{ | ||
| 453 | - if(ObjectUtil.isNotEmpty(one.get(paramRule.getSParamValue()))){ | ||
| 454 | - sb.append(one.get(paramRule.getSParamValue())).append("/"); | ||
| 455 | - } | ||
| 456 | - }); | 453 | + if(data.get(0).containsKey("sGroupName")){ |
| 454 | + Map<Object, List<Map<String, Object>>> groupData = data.stream() | ||
| 455 | + .collect(Collectors.groupingBy(map -> map.get("sGroupName"))); | ||
| 456 | + // 打印结果 | ||
| 457 | + Integer sUpKeySize =groupData.size(); | ||
| 458 | + groupData.forEach((key, value) -> { | ||
| 459 | +// System.out.println("key: " + key); | ||
| 460 | + value.forEach(one->{ | ||
| 461 | + sb.append(one.get(paramRule.getSParamValue())).append("/"); | ||
| 462 | + }); | ||
| 463 | + if(sUpKeySize>1 && ObjectUtil.isNotEmpty(sb)){ | ||
| 464 | + sb.delete(sb.length()-1,sb.length()); | ||
| 465 | + sb.append(","); | ||
| 466 | + } | ||
| 467 | + }); | ||
| 468 | + | ||
| 469 | + | ||
| 470 | + }else{ | ||
| 471 | + data.forEach(one->{ | ||
| 472 | + if(ObjectUtil.isNotEmpty(one.get(paramRule.getSParamValue()))){ | ||
| 473 | + sb.append(one.get(paramRule.getSParamValue())).append("/"); | ||
| 474 | + } | ||
| 475 | + }); | ||
| 476 | + } | ||
| 457 | if(ObjectUtil.isNotEmpty(sb)){ | 477 | if(ObjectUtil.isNotEmpty(sb)){ |
| 458 | sb.delete(sb.length()-1,sb.length()); | 478 | sb.delete(sb.length()-1,sb.length()); |
| 459 | paramRule.setSRuleTs(sb.toString()); | 479 | paramRule.setSRuleTs(sb.toString()); |