|
@@ -564,6 +564,22 @@ public class FormulaServiceImpl extends BaseServiceImpl<FormulaMapper, Formula>
|
|
|
}else{
|
|
|
fd.getFormula().setFormula(StringPool.EMPTY);
|
|
|
}
|
|
|
+ }else if(f.contains(".ladder(")){
|
|
|
+ String tf=f.replace(CustomFunction.CLASS_CALL+"ladder","").replaceAll("[()]","");
|
|
|
+ String[] tfa=tf.split(",");
|
|
|
+ List<FormData> target = new ArrayList<>();
|
|
|
+ for(String code:tfa){
|
|
|
+ code=code.replace("E['","").replace("']","");
|
|
|
+ target.add(this.formDataMap.get(code));
|
|
|
+ }
|
|
|
+ if(Func.isNotEmpty(target)){
|
|
|
+ Object data= CustomFunction.ladder(target.stream().map(FormData::getValues).filter(Func::isNotEmpty).map(e->e.get(0)).collect(Collectors.toList()));
|
|
|
+ String key ="HA"+HashUtil.identityHashCode(data);
|
|
|
+ this.constantMap.put(key,data);
|
|
|
+ fd.getFormula().setFormula(key);
|
|
|
+ }else{
|
|
|
+ fd.getFormula().setFormula(StringPool.EMPTY);
|
|
|
+ }
|
|
|
}
|
|
|
System.out.println("聚合处理");
|
|
|
}
|