package com.sunxung.factoring.component.util;

import java.math.BigDecimal;

/**
 * @Description:先息后本工具类
 * @Author:wanxiangZhou
 * @E_mail:303526821@qq.com
 * @Date:2017年7月20日 下午9:15:00
 */
public class BIAfterPrincipalUtil {

    /**
     * 还款总利息：融资总额*年利率*实际占用天数/年化天数. <br/>
     *
     * @param invest     融资总额
     * @param yearRate   年利率
     * @param actualDays 实际占用天数
     * @param yearDays   一年的天数
     * @return 总利息
     */
    public static BigDecimal getInterestCount(BigDecimal invest, BigDecimal yearRate, int actualDays, int yearDays) {
        if (null != invest && yearRate != null && actualDays != 0 && yearDays != 0) {
            return invest.multiply(yearRate).multiply(new BigDecimal(actualDays))
                    .divide(new BigDecimal(yearDays), 2, BigDecimal.ROUND_HALF_UP);
        }
        return null;
    }

    /**
     * 还本期限：每期偿还本金. <br/>
     *
     * @param invest 总借款额（贷款本金）
     * @param period 还款总期数
     * @return
     */
    public static BigDecimal getPerPeriodPrincipal(BigDecimal invest, int period) {
        return invest.divide(new BigDecimal(period), 2, BigDecimal.ROUND_HALF_UP);
    }
}
