|
@@ -222,10 +222,15 @@ public class ExecutorMeter extends FormulaExecutor {
|
|
for(Material m:materials){
|
|
for(Material m:materials){
|
|
m.setIndex(n++);
|
|
m.setIndex(n++);
|
|
m.setRatio(StringUtils.number2StringZero(baseInfo.getDeductRatio(),tec.getPayRadicScale())+"%");
|
|
m.setRatio(StringUtils.number2StringZero(baseInfo.getDeductRatio(),tec.getPayRadicScale())+"%");
|
|
- m.setAdvancePayment(StringUtils.number2StringZero(Double.parseDouble(m.getSum())*baseInfo.getDeductRatio(),2));
|
|
|
|
}
|
|
}
|
|
this.total=StringUtils.number2StringZero(materials.stream().mapToDouble(m->Double.parseDouble(m.getSum())).sum(),tec.getScale());
|
|
this.total=StringUtils.number2StringZero(materials.stream().mapToDouble(m->Double.parseDouble(m.getSum())).sum(),tec.getScale());
|
|
this.totalAdvance=StringUtils.number2StringZero(materials.stream().mapToDouble(m->Double.parseDouble(m.getAdvancePayment())).sum(),tec.getScale());
|
|
this.totalAdvance=StringUtils.number2StringZero(materials.stream().mapToDouble(m->Double.parseDouble(m.getAdvancePayment())).sum(),tec.getScale());
|
|
|
|
+
|
|
|
|
+ //避免取整影响到total,totalAdvance
|
|
|
|
+ for(Material m:materials){
|
|
|
|
+ m.setAdvancePayment(StringUtils.number2StringZero(Double.parseDouble(m.getSum())*baseInfo.getDeductRatio(),tec.getScale()));
|
|
|
|
+ m.setSum(StringUtils.number2StringZero(m.getSum(),tec.getScale()));
|
|
|
|
+ }
|
|
/*合计*/
|
|
/*合计*/
|
|
Material summary= new Material();
|
|
Material summary= new Material();
|
|
summary.setMaterialName("合计");
|
|
summary.setMaterialName("合计");
|