qianxb преди 11 месеца
родител
ревизия
d2055355ef

+ 3 - 0
blade-service-api/blade-meter-api/src/main/java/org/springblade/meter/entity/ContractMaterialAdjust.java

@@ -114,6 +114,9 @@ public class ContractMaterialAdjust extends BaseEntity {
     @ApiModelProperty(value = "审批状态:0未完成1已完成(此处根据计量期状态)")
     private Integer approveStatus;
 
+    @ApiModelProperty(value = "调差金额(税前)")
+    private BigDecimal adjustMoneyPre;
+
     public BigDecimal getCurrentPrice() {
         if (currentPrice == null){
             return null;

+ 4 - 0
blade-service/blade-meter/src/main/java/org/springblade/meter/service/impl/ContractMaterialAdjustServiceImpl.java

@@ -252,6 +252,7 @@ public class ContractMaterialAdjustServiceImpl extends BaseServiceImpl<ContractM
             return ;
         }
         BigDecimal adjustMoney = BigDecimal.ZERO;
+        BigDecimal adjustMoneyPre = BigDecimal.ZERO;
         BigDecimal price = dto.getMaterialPrice();
         BigDecimal currentPrice = dto.getCurrentPrice();
         if (price.compareTo(currentPrice) == 1){
@@ -259,13 +260,16 @@ public class ContractMaterialAdjustServiceImpl extends BaseServiceImpl<ContractM
             adjustMoney = adjustTotal.multiply(currentPrice.subtract((price.multiply(new BigDecimal(1).subtract(material.getQuotaRatio().multiply(new BigDecimal("0.01"))))))).multiply(new BigDecimal("1.09")).setScale(2, RoundingMode.HALF_UP);
             str.append("调差公式(标准):调增金额=调差数量×[市场价-基准价×(1-风险幅度差%)]×(1+合同增值税税率)\n");
             str.append("调差公式(计算):"+adjustMoney+"="+adjustTotal+"*["+currentPrice+"-"+price+"*(1-"+material.getQuotaRatio()+"%)]*(1+9.0/100)");
+            adjustMoneyPre = adjustTotal.multiply(currentPrice.subtract((price.multiply(new BigDecimal(1).subtract(material.getQuotaRatio().multiply(new BigDecimal("0.01")))))));
         }else {
             //市场价高于基准价
             adjustMoney = adjustTotal.multiply(currentPrice.subtract((price.multiply(new BigDecimal(1).add(material.getQuotaRatio().multiply(new BigDecimal("0.01"))))))).multiply(new BigDecimal("1.09")).setScale(2, RoundingMode.HALF_UP);
             str.append("调差公式(标准):调增金额=调差数量×[市场价-基准价×(1+风险幅度差%)]×(1+合同增值税税率)\n");
             str.append("调差公式(计算):"+adjustMoney+"="+adjustTotal+"*["+currentPrice+"-"+price+"*(1+"+material.getQuotaRatio()+"%)]*(1+9.0/100)");
+            adjustMoneyPre = adjustTotal.multiply(currentPrice.subtract((price.multiply(new BigDecimal(1).add(material.getQuotaRatio().multiply(new BigDecimal("0.01")))))));
         }
         adjust.setAdjustMoney(adjustMoney.setScale(0,RoundingMode.HALF_UP));
+        adjust.setAdjustMoneyPre(adjustMoneyPre);
         adjust.setAdjustCalculation(str.toString());
     }
 }