wuxw
2022-07-19 05683f2b2bdbdbe21cf17ad523c21ab338bd1c54
service-fee/src/main/java/com/java110/fee/discount/impl/LateFeeZaoZhuangPropertyByDayRule.java
@@ -32,9 +32,12 @@
import java.util.Map;
/**
 * 枣庄 需求
 * select * from fee_discount_rule t where t.rule_id = '102020003';
 * 这里的实现类修改为 lateFeeZaoZhuangPropertyByDayRule
 * @desc add by 吴学文 12:43
 */
@Component(value = "lateFeeByDayRule")
@Component(value = "lateFeeZaoZhuangPropertyByDayRule")
public class LateFeeZaoZhuangPropertyByDayRule implements IComputeDiscount {
    /**
     * 89002020980001   102020001   月份
@@ -130,11 +133,19 @@
    }
    public static void main(String[] args) throws Exception {
        int day = 316;
        double money = 0.0;
        int day = 266;
        BigDecimal money = new BigDecimal(0);
        BigDecimal yearFee = null;
        BigDecimal monthFee = null;
        BigDecimal dayMoney = null;
        BigDecimal priceDec = new BigDecimal(118.24);
        for (int i = 1; i < day + 1; i++) {
            money += ((124.51 / 30 * (i - 1) + money) * 0.003);
            System.out.println("第" + i + "天 违约金 = " + money + ",计算公式为:(124.51/30 * (" + i + "-1) + " + money + ") * 0.003");
            yearFee = priceDec.multiply(new BigDecimal(12));
            monthFee = yearFee.divide(new BigDecimal(365), 2, BigDecimal.ROUND_HALF_UP);
            dayMoney = monthFee.multiply(new BigDecimal(i - 1));
            dayMoney = dayMoney.multiply(new BigDecimal(0.003));
            money = money.add(dayMoney).setScale(2, BigDecimal.ROUND_HALF_EVEN);
            System.out.println("第" + i + "天 违约金 = " + money.doubleValue() + ",计算公式为:(124.51/30 * (" + i + "-1) + " + money.doubleValue() + ") * 0.003");
        }
        System.out.println(money);