|
@@ -695,22 +695,6 @@ public class ExecutorMeter extends FormulaExecutor {
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
- /* if("实际支付金额".equals(k)){
|
|
|
|
- sc.setCurrentAmount(currentStart);
|
|
|
|
- sc.setPeriodEndAmount(sumStart);
|
|
|
|
- if(dy.compareTo(BigDecimal.ZERO)>0){
|
|
|
|
- if(StringUtils.isNotEmpty(currentStart)&&!currentStart.contains("-")) {
|
|
|
|
- sc.setPreviousEndAmount(subtractFc.apply(sumStart, currentStart));
|
|
|
|
- sc.setPreviousEndRatio(ratioFc.apply(sc.getPreviousEndAmount(),dy.toPlainString()));
|
|
|
|
- }
|
|
|
|
- if(StringUtils.isNotEmpty(currentStart)) {
|
|
|
|
- sc.setCurrentRatio(ratioFc.apply(currentStart,dy.toPlainString()));
|
|
|
|
- }
|
|
|
|
- if(StringUtils.isNotEmpty(sumStart)) {
|
|
|
|
- sc.setPeriodEndRatio(ratioFc.apply(sumStart,dy.toPlainString()));
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
- }*/
|
|
|
|
dataList.add(sc);
|
|
dataList.add(sc);
|
|
});
|
|
});
|
|
/*分行合计列,合计的时候需要计入手填部分*/
|
|
/*分行合计列,合计的时候需要计入手填部分*/
|
|
@@ -941,12 +925,16 @@ public class ExecutorMeter extends FormulaExecutor {
|
|
List<InterimPayCertificateItem> itemList = tec.meterInfo.getInterimPayCertificateItems();
|
|
List<InterimPayCertificateItem> itemList = tec.meterInfo.getInterimPayCertificateItems();
|
|
itemList.clear();
|
|
itemList.clear();
|
|
InterimPaymentCertificate blj=null;
|
|
InterimPaymentCertificate blj=null;
|
|
|
|
+ /*合同工程清单*/
|
|
|
|
+ tec.meterInfo.getBaseInfo().setBOQAmount(tec.meterInfo.getInventoryForms().stream().map(e->BaseUtils.str2BigDecimal(e.getChangeMoney())).reduce(BigDecimal.ZERO,BigDecimal::add).toPlainString());
|
|
if(Func.isNotEmpty(midPayItemList)){
|
|
if(Func.isNotEmpty(midPayItemList)){
|
|
/*暂定金编号,纠正*/
|
|
/*暂定金编号,纠正*/
|
|
chapters.stream().filter(e->e.getFormName().contains("暂")).findFirst().ifPresent(t->{
|
|
chapters.stream().filter(e->e.getFormName().contains("暂")).findFirst().ifPresent(t->{
|
|
midPayItemList.stream().filter(e->e.getPayName().contains("暂")).findFirst().ifPresent(k->{
|
|
midPayItemList.stream().filter(e->e.getPayName().contains("暂")).findFirst().ifPresent(k->{
|
|
k.setPayNumber(t.getFormNumber());
|
|
k.setPayNumber(t.getFormNumber());
|
|
tec.meterInfo.getBaseInfo().setProvisionalSum(paymentCertificateMap.get(t.getFormNumber()).getContractAmount());
|
|
tec.meterInfo.getBaseInfo().setProvisionalSum(paymentCertificateMap.get(t.getFormNumber()).getContractAmount());
|
|
|
|
+ BigDecimal BOQAmount= tec.meterInfo.getInventoryForms().stream().filter(e->!t.getFormNumber().equals(e.getFormNumber())).map(e->BaseUtils.str2BigDecimal(e.getChangeMoney())).reduce(BigDecimal.ZERO,BigDecimal::add);
|
|
|
|
+ tec.meterInfo.getBaseInfo().setBOQAmount(BOQAmount.toPlainString());
|
|
});
|
|
});
|
|
});
|
|
});
|
|
/*合计后回显*/
|
|
/*合计后回显*/
|
|
@@ -1648,18 +1636,17 @@ public class ExecutorMeter extends FormulaExecutor {
|
|
/*已过去*/
|
|
/*已过去*/
|
|
String passDay=CustomFunction.join(CustomFunction.daysPassed(baseInfo.getStartDate(), LocalDate.now()),"").toString();
|
|
String passDay=CustomFunction.join(CustomFunction.daysPassed(baseInfo.getStartDate(), LocalDate.now()),"").toString();
|
|
|
|
|
|
- BigDecimal provisionalSum=tec.meterInfo.getInventoryForms().stream().filter(e->"ZLJE".equals(e.getFormNumber())).map(e->BaseUtils.str2BigDecimal(e.getBidPrice())).reduce(BigDecimal.ZERO,BigDecimal::add);
|
|
|
|
- BigDecimal BOQAmount=tec.meterInfo.getInventoryForms().stream().filter(e->!"ZLJE".equals(e.getFormNumber())).map(e->BaseUtils.str2BigDecimal(e.getBidPrice())).reduce(BigDecimal.ZERO,BigDecimal::add);
|
|
|
|
- baseInfo.setProvisionalSum(provisionalSum.toPlainString());
|
|
|
|
- baseInfo.setBOQAmount(BOQAmount.toPlainString());
|
|
|
|
- BigDecimal changeTokenTotal=tec.meterInfo.getChangeTokenListMap().values().stream().flatMap(Collection::stream).map(ChangeToken::getTotalChangeMoney).reduce(BigDecimal.ZERO,BigDecimal::add);
|
|
|
|
- double totalMoney = BaseUtils.obj2DoubleZero(baseInfo.getProvisionalSum())+BaseUtils.obj2DoubleZero(baseInfo.getBOQAmount())+BaseUtils.obj2DoubleZero(changeTokenTotal);
|
|
|
|
|
|
+ String provisionalSum=tec.meterInfo.getBaseInfo().getProvisionalSum();
|
|
|
|
+ String BOQAmount=tec.meterInfo.getBaseInfo().getBOQAmount();
|
|
|
|
+ BigDecimal contractTotal=tec.meterInfo.getInventoryForms().stream().map(e->BaseUtils.str2BigDecimal(e.getContractMoney())).reduce(BigDecimal.ZERO,BigDecimal::add);
|
|
|
|
+ BigDecimal changeTotal=tec.meterInfo.getInventoryForms().stream().map(e->BaseUtils.str2BigDecimal(e.getChangeMoney())).reduce(BigDecimal.ZERO,BigDecimal::add);
|
|
|
|
+ String totalMoney = addFc.apply(provisionalSum,BOQAmount);
|
|
String brief="开工日期:"+baseInfo.getStartDatePlan()+" 始算工期日:"+baseInfo.getStartDate()
|
|
String brief="开工日期:"+baseInfo.getStartDatePlan()+" 始算工期日:"+baseInfo.getStartDate()
|
|
+" 合同完成日期:"+baseInfo.getEndDatePlan()+" 合同期限"+contractDay+"天 时间延长"+extended+"天 修改后合同期限"+ totalDay
|
|
+" 合同完成日期:"+baseInfo.getEndDatePlan()+" 合同期限"+contractDay+"天 时间延长"+extended+"天 修改后合同期限"+ totalDay
|
|
+"天(即至"+baseInfo.getEndDate()+")"
|
|
+"天(即至"+baseInfo.getEndDate()+")"
|
|
+ "\n 合同总价"+CustomFunction.xN(baseInfo.getContractAmount(),0.0001)+"万元、暂定金"
|
|
+ "\n 合同总价"+CustomFunction.xN(baseInfo.getContractAmount(),0.0001)+"万元、暂定金"
|
|
+CustomFunction.xN(baseInfo.getProvisionalSum(),0.0001)+"万元、工程量清单金额"
|
|
+CustomFunction.xN(baseInfo.getProvisionalSum(),0.0001)+"万元、工程量清单金额"
|
|
- +CustomFunction.xN(baseInfo.getBOQAmount(),0.0001)+"万元、工程量变更("+CustomFunction.xN(changeTokenTotal,0.0001)+")万元、估计最终金额"+CustomFunction.xN(totalMoney,0.0001)+"万元,时间已过"
|
|
|
|
|
|
+ +CustomFunction.xN(baseInfo.getBOQAmount(),0.0001)+"万元、工程量变更("+CustomFunction.xN(subtractFc.apply(changeTotal.toEngineeringString(),contractTotal.toPlainString()),0.0001)+")万元、估计最终金额"+CustomFunction.xN(totalMoney,0.0001)+"万元,时间已过"
|
|
+passDay+"天,占合同工期"+StringUtils.number2String(ratioFc.apply(passDay,totalDay),2)+"%";
|
|
+passDay+"天,占合同工期"+StringUtils.number2String(ratioFc.apply(passDay,totalDay),2)+"%";
|
|
elementWriter.write(t,brief);
|
|
elementWriter.write(t,brief);
|
|
});
|
|
});
|