diff --git a/src/main/java/com/xly/service/QuoService.java b/src/main/java/com/xly/service/QuoService.java index 724ae9e..8ea411d 100644 --- a/src/main/java/com/xly/service/QuoService.java +++ b/src/main/java/com/xly/service/QuoService.java @@ -48,16 +48,27 @@ public class QuoService { List> productList = new ArrayList<>(); Map finalArgsOld = args; dataProduct.forEach(p->{ - Map product = new HashMap<>(); - Object sValue = getValue( p,finalArgsOld); - product.put("sName",p.getSParamValue()); - product.put("showName",p.getSParam()); - product.put("bEmpty",p.getBEmpty()); - product.put("sValue", sValue); - product.put("sParamMissMemo", p.getSParamMissMemo()==null?StrUtil.EMPTY:p.getSParamMissMemo()); - product.put("iOrder", p.getIOrder()); - product.put("sParamConfigValue",p.getSParamConfigValue()==null?StrUtil.EMPTY:p.getSParamConfigValue()); - productList.add(product); + Object sVal = getValue( p,finalArgsOld); + List addValue = new ArrayList<>(); + if(JSONUtil.isTypeJSONArray(sVal.toString())){ + addValue = JSONUtil.toList(sVal.toString(),String.class); + }else{ + addValue.add(sVal.toString()); + } + for(String sValue:addValue){ + Map product = new HashMap<>(); + product.put("sProductName",finalArgsOld.get("产品名称")); + product.put("sName",p.getSParamValue()); + product.put("showName",p.getSParam()); + product.put("bEmpty",p.getBEmpty()); + product.put("sValue", sValue); + product.put("sParamMissMemo", p.getSParamMissMemo()==null?StrUtil.EMPTY:p.getSParamMissMemo()); + product.put("iOrder", p.getIOrder()); + product.put("sParamConfigValue",p.getSParamConfigValue()==null?StrUtil.EMPTY:p.getSParamConfigValue()); + //获取动态参数 + adddynamicData( sValue, dataAll, p, finalArgsOld, sAll, product); + productList.add(product); + } }); List> partList = new ArrayList<>(); dataPart.forEach(p->{ @@ -163,11 +174,11 @@ public class QuoService { Map dynamicOne = new HashMap<>(); Object dynamicValue = getValue(dynamic,finalArgsOld); dynamicOne.put("sName",dynamic.getSParamValue()); - dynamicOne.put("showName",dynamic.getSParam()); + dynamicOne.put("showName",dynamic.getSParam().split("-").length>1?dynamic.getSParam().split("-")[1]:dynamic.getSParam().split("-")[0]); dynamicOne.put("bEmpty",dynamic.getBEmpty()); dynamicOne.put("sValue", dynamicValue); dynamicOne.put("iOrder", dynamic.getIOrder()); - dynamicOne.put("sGroup",dynamic.getSGroup()); + dynamicOne.put("sGroup",dynamic.getSGroup()==null?sValue:dynamic.getSGroup()); dynamicOne.put("sParamMissMemo", dynamic.getSParamMissMemo()==null?StrUtil.EMPTY:dynamic.getSParamMissMemo()); dynamicOne.put("sParamConfigValue",dynamic.getSParamConfigValue()==null?StrUtil.EMPTY:dynamic.getSParamConfigValue()); //获取动态参数 diff --git a/src/main/java/com/xly/tool/DynamicToolProvider.java b/src/main/java/com/xly/tool/DynamicToolProvider.java index 365791e..92760d8 100644 --- a/src/main/java/com/xly/tool/DynamicToolProvider.java +++ b/src/main/java/com/xly/tool/DynamicToolProvider.java @@ -334,6 +334,12 @@ public class DynamicToolProvider implements ToolProvider { if(ObjectUtil.isNotEmpty(dynamicParamRuleOne)){ dynamicParamRuleOne.forEach(dynamicParamRuleData->{ ParamRule paramRule = BeanUtil.toBean(dynamicParamRuleData,ParamRule.class); + if(!RuleCode.CONST.getCode().equals(paramRule.getSRule()) + && ObjectUtil.isNotEmpty(paramRule.getSParamConfig()) + && JSONUtil.isTypeJSON(paramRule.getSParamConfig()) + ){ + try{getConstMeg(paramRule);}catch (Exception e){ e.printStackTrace();} + } dynamicParamRule.add(paramRule); }); } @@ -352,7 +358,8 @@ public class DynamicToolProvider implements ToolProvider { session.getCurrentTool().setParamRuleListCheck(paramRuleListCheck); session.getCurrentTool().setParamRuleList(paramRuleList); }catch (Exception e){ - + e.printStackTrace(); + log.error(e.getMessage()); } return dynamicParamRule;