|
@@ -244,8 +244,9 @@ public class ExecutorMeter extends FormulaExecutor {
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
- @EqualsAndHashCode(callSuper = true)
|
|
|
|
|
|
+
|
|
@Data
|
|
@Data
|
|
|
|
+ @EqualsAndHashCode(callSuper = true)
|
|
public class InterimPayCert extends BaseSpecial<InterimPaymentCertificate> implements Special{
|
|
public class InterimPayCert extends BaseSpecial<InterimPaymentCertificate> implements Special{
|
|
|
|
|
|
@Override
|
|
@Override
|
|
@@ -331,8 +332,10 @@ public class ExecutorMeter extends FormulaExecutor {
|
|
|
|
|
|
|
|
|
|
}
|
|
}
|
|
- @EqualsAndHashCode(callSuper = true)
|
|
|
|
|
|
+
|
|
|
|
+
|
|
@Data
|
|
@Data
|
|
|
|
+ @EqualsAndHashCode(callSuper = true)
|
|
public class InterimSum extends BaseSpecial<InterimPaymentSummary> implements Special{
|
|
public class InterimSum extends BaseSpecial<InterimPaymentSummary> implements Special{
|
|
@Override
|
|
@Override
|
|
public boolean ready() {
|
|
public boolean ready() {
|
|
@@ -370,8 +373,10 @@ public class ExecutorMeter extends FormulaExecutor {
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
- @EqualsAndHashCode(callSuper = true)
|
|
|
|
|
|
+
|
|
|
|
+
|
|
@Data
|
|
@Data
|
|
|
|
+ @EqualsAndHashCode(callSuper = true)
|
|
public class SubIPaySum extends BaseSpecial<SubprojectInterimPaymentSummary> implements Special{
|
|
public class SubIPaySum extends BaseSpecial<SubprojectInterimPaymentSummary> implements Special{
|
|
/*分项工程中期支付汇总表*/
|
|
/*分项工程中期支付汇总表*/
|
|
@Override
|
|
@Override
|
|
@@ -484,8 +489,6 @@ public class ExecutorMeter extends FormulaExecutor {
|
|
|
|
|
|
LinkedHashMap<String,List<SubprojectInterimPaymentSummary>> chapterGroup= totalList.stream().collect(Collectors.groupingBy(e->getPrefix(e.getFormNumber()),LinkedHashMap::new,Collectors.toList()));
|
|
LinkedHashMap<String,List<SubprojectInterimPaymentSummary>> chapterGroup= totalList.stream().collect(Collectors.groupingBy(e->getPrefix(e.getFormNumber()),LinkedHashMap::new,Collectors.toList()));
|
|
AtomicInteger loop = new AtomicInteger(chapterGroup.size());
|
|
AtomicInteger loop = new AtomicInteger(chapterGroup.size());
|
|
- AtomicInteger pn = new AtomicInteger();
|
|
|
|
- List<String> pageList= new ArrayList<>();
|
|
|
|
chapterGroup.forEach((k,v)->{
|
|
chapterGroup.forEach((k,v)->{
|
|
int extra=loop.getAndDecrement()>0?1:2;
|
|
int extra=loop.getAndDecrement()>0?1:2;
|
|
/*每章小结或总结等价一行数据*/
|
|
/*每章小结或总结等价一行数据*/
|
|
@@ -520,14 +523,10 @@ public class ExecutorMeter extends FormulaExecutor {
|
|
}
|
|
}
|
|
dataList.addAll(tmp);
|
|
dataList.addAll(tmp);
|
|
tmp.clear();
|
|
tmp.clear();
|
|
- pn.incrementAndGet();
|
|
|
|
}
|
|
}
|
|
});
|
|
});
|
|
- FormData pageFd = fdm.get(FormulaUtils.getPageCode(SubprojectInterimPaymentSummary.class));
|
|
|
|
- String pageTmp="第$1页 共"+pn.get()+"页";
|
|
|
|
- pageFd.setValues(IntStream.range(0,pn.get()).boxed().map(i->new ElementData(pageTmp.replace("$1",i.toString()))).collect(Collectors.toList()));
|
|
|
|
/*内容输出*/
|
|
/*内容输出*/
|
|
- putOut();
|
|
|
|
|
|
+ putOut(SubprojectInterimPaymentSummary.class);
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
@@ -540,8 +539,10 @@ public class ExecutorMeter extends FormulaExecutor {
|
|
|
|
|
|
}
|
|
}
|
|
|
|
|
|
- @EqualsAndHashCode(callSuper = true)
|
|
|
|
|
|
+
|
|
|
|
+
|
|
@Data
|
|
@Data
|
|
|
|
+ @EqualsAndHashCode(callSuper = true)
|
|
public class SubIMeterPay extends BaseSpecial<SubInterimMeterPaySummary> implements Special{
|
|
public class SubIMeterPay extends BaseSpecial<SubInterimMeterPaySummary> implements Special{
|
|
/*分项工程中期计量支付表*/
|
|
/*分项工程中期计量支付表*/
|
|
@Override
|
|
@Override
|
|
@@ -610,7 +611,7 @@ public class ExecutorMeter extends FormulaExecutor {
|
|
return tmp.stream();
|
|
return tmp.stream();
|
|
}).collect(Collectors.toList());
|
|
}).collect(Collectors.toList());
|
|
/*内容输出*/
|
|
/*内容输出*/
|
|
- putOut();
|
|
|
|
|
|
+ putOut(SubInterimMeterPaySummary.class);
|
|
}
|
|
}
|
|
}catch (Exception e){
|
|
}catch (Exception e){
|
|
e.printStackTrace();
|
|
e.printStackTrace();
|
|
@@ -675,8 +676,10 @@ public class ExecutorMeter extends FormulaExecutor {
|
|
|
|
|
|
}
|
|
}
|
|
|
|
|
|
- @EqualsAndHashCode(callSuper = true)
|
|
|
|
|
|
+
|
|
|
|
+
|
|
@Data
|
|
@Data
|
|
|
|
+ @EqualsAndHashCode(callSuper = true)
|
|
public class IMeterPaySummary extends BaseSpecial<InterimMeterPaySummary> implements Special{
|
|
public class IMeterPaySummary extends BaseSpecial<InterimMeterPaySummary> implements Special{
|
|
/*private Integer capacity=20;*/
|
|
/*private Integer capacity=20;*/
|
|
@Override
|
|
@Override
|
|
@@ -700,12 +703,13 @@ public class ExecutorMeter extends FormulaExecutor {
|
|
summary.setMoney(StringUtils.number2StringZero(sum,2));
|
|
summary.setMoney(StringUtils.number2StringZero(sum,2));
|
|
dataList.add(summary);
|
|
dataList.add(summary);
|
|
}
|
|
}
|
|
- putOut();
|
|
|
|
|
|
+ putOut(InterimMeterPaySummary.class);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
- @EqualsAndHashCode(callSuper = true)
|
|
|
|
|
|
+
|
|
@Data
|
|
@Data
|
|
|
|
+ @EqualsAndHashCode(callSuper = true)
|
|
public class IMeter extends BaseSpecial<InterimMeter> implements Special{
|
|
public class IMeter extends BaseSpecial<InterimMeter> implements Special{
|
|
private Integer capacity=7;
|
|
private Integer capacity=7;
|
|
@Override
|
|
@Override
|
|
@@ -743,7 +747,7 @@ public class ExecutorMeter extends FormulaExecutor {
|
|
dataList.add(iim);
|
|
dataList.add(iim);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
- putOut();
|
|
|
|
|
|
+ putOut(InterimMeter.class);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
@@ -773,10 +777,27 @@ public class ExecutorMeter extends FormulaExecutor {
|
|
tec.getFormDataMap().putAll(fdm);
|
|
tec.getFormDataMap().putAll(fdm);
|
|
dataList=new ArrayList<>();
|
|
dataList=new ArrayList<>();
|
|
}
|
|
}
|
|
|
|
+ /*总页数*/
|
|
|
|
+ public int totalPage(){
|
|
|
|
+ return (int)Math.ceil(dataList.size()/(double)capacity);
|
|
|
|
+ }
|
|
|
|
+ /*页码计算*/
|
|
|
|
+ public void pageNumber(Class<T> clazz){
|
|
|
|
+ FormData pageFd = fdm.get(FormulaUtils.getPageCode(clazz));
|
|
|
|
+ if(pageFd!=null) {
|
|
|
|
+ int total = totalPage();
|
|
|
|
+ String pageTmp = "第$1页 共" + total + "页";
|
|
|
|
+ pageFd.setValues(IntStream.range(0, total).boxed().map(i -> new ElementData(pageTmp.replace("$1", i.toString()))).collect(Collectors.toList()));
|
|
|
|
+ }
|
|
|
|
+ }
|
|
/*写入对应的元素*/
|
|
/*写入对应的元素*/
|
|
public void putOut(){
|
|
public void putOut(){
|
|
FormulaUtils.put2FormData(fdm, fieldDataFcMap,dataList);
|
|
FormulaUtils.put2FormData(fdm, fieldDataFcMap,dataList);
|
|
};
|
|
};
|
|
|
|
+ public void putOut(Class<T> clazz){
|
|
|
|
+ pageNumber(clazz);
|
|
|
|
+ FormulaUtils.put2FormData(fdm, fieldDataFcMap,dataList);
|
|
|
|
+ };
|
|
}
|
|
}
|
|
interface Special{
|
|
interface Special{
|
|
/**是否满足执行条件*/
|
|
/**是否满足执行条件*/
|