|
@@ -82,10 +82,14 @@ public class ExecutorMeter extends FormulaExecutor {
|
|
|
/*获取动态行最大行数,codeFind为相关元素码集合 */
|
|
|
public Integer getLineSize(List<String> codeFind){
|
|
|
int line=19;
|
|
|
- Optional<FormData> formDataOp= tec.getFormDataMap().values().stream().filter(e->e.executable()&& BaseUtils.inChain(codeFind,e.getFormula().getRely())).findAny();
|
|
|
- if(formDataOp.isPresent()){
|
|
|
- FormData target = formDataOp.get();
|
|
|
- line= target.getCoordsList().size();
|
|
|
+ Optional<Integer> intOp= tec.getFormDataMap().values().stream()
|
|
|
+ .filter(e->e.executable()&& BaseUtils.inChain(codeFind,e.getFormula().getRely())).map(e->e.getCoordsList().size())
|
|
|
+ .collect(Collectors.groupingBy(i -> i, Collectors.counting()))
|
|
|
+ .entrySet().stream()
|
|
|
+ .max(Map.Entry.comparingByValue())
|
|
|
+ .map(Map.Entry::getKey);
|
|
|
+ if(intOp.isPresent()){
|
|
|
+ line= intOp.get();
|
|
|
}
|
|
|
return line;
|
|
|
}
|
|
@@ -146,20 +150,8 @@ public class ExecutorMeter extends FormulaExecutor {
|
|
|
|
|
|
@Data
|
|
|
public class MaterialCalc implements Special{
|
|
|
-/* private FormData index;
|
|
|
- private FormData materialName;
|
|
|
- private FormData unit;
|
|
|
- private FormData meterAmount;
|
|
|
- private FormData price;*/
|
|
|
private FormData sum;
|
|
|
- /* private FormData ratio;*/
|
|
|
private FormData advancePayment;
|
|
|
-/* private FormData source;
|
|
|
- private FormData materialConform;
|
|
|
- private FormData storagePlace;
|
|
|
- private FormData storageStatus;
|
|
|
- private FormData storageConform;
|
|
|
- private FormData remark;*/
|
|
|
/**材料合计*/
|
|
|
private String total;
|
|
|
/**预付款合计*/
|
|
@@ -792,6 +784,7 @@ public class ExecutorMeter extends FormulaExecutor {
|
|
|
BeanUtils.copyProperties(payment,imps);
|
|
|
imps.setItemName(payment.getName());
|
|
|
imps.setFormNumber(payment.getNumber());
|
|
|
+ imps.setCompleted(StringUtils.handleNull(payment.getCompleted()));
|
|
|
dataList.add(imps);
|
|
|
}
|
|
|
if(dataList.size()>0){
|
|
@@ -883,6 +876,8 @@ public class ExecutorMeter extends FormulaExecutor {
|
|
|
FormData pageFd = fdm.get(FormulaUtils.getPageCode(clazz));
|
|
|
if(pageFd!=null) {
|
|
|
int total = totalPage();
|
|
|
+ /*页面不重复*/
|
|
|
+ tec.getFormDataMap().values().stream().filter(e->e.executable()&& pageFd.getCode().equals(e.getFormula().getRely())).forEach(e->e.setRepeat(false));
|
|
|
String pageTmp = "第$1页 共" + total + "页";
|
|
|
pageFd.setValues(IntStream.rangeClosed(1, total).boxed().map(i -> new ElementData(pageTmp.replace("$1", i.toString()))).collect(Collectors.toList()));
|
|
|
}
|