|
@@ -184,10 +184,21 @@ public class MiddleMeterApplyServiceImpl extends BaseServiceImpl<MiddleMeterAppl
|
|
|
vo.setOtherPayRatio(vo.getOtherMeterTotal().divide(vo.getChangeTotal(), 4, RoundingMode.DOWN).multiply(new BigDecimal(100)).setScale(2));
|
|
|
//设置施工图数量是否大于合同数量
|
|
|
vo.setIsBuildThanContract(vo.getChangeTotal().compareTo(vo.getContractChangeAllTotal()) == 1 ? 1 : 0);
|
|
|
+ //设置累计计量量是否超了
|
|
|
+ if(safeSubtract(vo.getContractChangeAllTotal(),vo.getPoseNum()).compareTo(BigDecimal.ZERO)<0){
|
|
|
+ vo.setIsBuildThanContract(1);
|
|
|
+ }
|
|
|
+
|
|
|
}
|
|
|
return vos;
|
|
|
}
|
|
|
|
|
|
+ public static BigDecimal safeSubtract(BigDecimal a, BigDecimal b) {
|
|
|
+ // Treat null as zero for both parameters
|
|
|
+ BigDecimal num1 = (a != null) ? a : BigDecimal.ZERO;
|
|
|
+ BigDecimal num2 = (b != null) ? b : BigDecimal.ZERO;
|
|
|
+ return num1.subtract(num2);
|
|
|
+ }
|
|
|
/**
|
|
|
* 新增 中间计量申请表
|
|
|
*/
|