|
@@ -90,7 +90,7 @@ public class FormulaTurnPoint implements FormulaStrategy {
|
|
|
/*插值分页*/
|
|
|
List<Object> data = paginate(cur,result,configMap);
|
|
|
/*数据回写*/
|
|
|
- write(data,dataSourceMap,configMap.size());
|
|
|
+ write(data,dataSourceMap,configMap.size(),cur,tec);
|
|
|
|
|
|
}
|
|
|
}
|
|
@@ -147,6 +147,9 @@ public class FormulaTurnPoint implements FormulaStrategy {
|
|
|
tmp=new ArrayList<>();
|
|
|
}
|
|
|
}
|
|
|
+ if(!tmp.isEmpty()){
|
|
|
+ total.add(tmp);
|
|
|
+ }
|
|
|
return total;
|
|
|
}
|
|
|
|
|
@@ -161,10 +164,15 @@ public class FormulaTurnPoint implements FormulaStrategy {
|
|
|
}).collect(Collectors.toList());
|
|
|
}
|
|
|
/**把结果写入各个元素*/
|
|
|
- private void write(List<Object> data,LinkedHashMap<String, FormData> dataSourceMap,int len){
|
|
|
+ private void write(List<Object> data,LinkedHashMap<String, FormData> dataSourceMap,int len,FormData cur,TableElementConverter tec){
|
|
|
if (Func.isNotEmpty(data)) {
|
|
|
AtomicInteger ai = new AtomicInteger();
|
|
|
Map<Integer, List<Object>> dataMap = data.stream().collect(Collectors.groupingBy(e -> ai.getAndAdd(1) % len));
|
|
|
+ int pageSize = data.size()/(len*cur.getCoordsList().size());
|
|
|
+ List<NodeTable> list = tec.getTableByName(cur.getTableName());
|
|
|
+ if(list.size()>pageSize){
|
|
|
+ List<NodeTable> removeList = list.stream().skip(pageSize).collect(Collectors.toList());
|
|
|
+ }
|
|
|
ai.set(0);
|
|
|
dataSourceMap.forEach((k, v) -> {
|
|
|
List<Object> dl = dataMap.get(ai.getAndIncrement());
|