package com.sunxung.factoring.service.financing.review;

import com.baomidou.mybatisplus.extension.service.IService;
import com.sunxung.factoring.entity.financing.review.ReviewFinancingInfo;
import com.sunxung.factoring.entity.financing.review.ReviewIncomeExpenditurePlan;
import com.sunxung.factoring.entity.financing.review.ReviewQuotaDisburse;
import com.sunxung.factoring.entity.sys.Dictionary;

import java.io.IOException;
import java.text.ParseException;
import java.util.List;

/**
 * @Description : 额度支用service
 * @Author : L.Jia
 * @Date: 2024-01-08 09:29
 */
public interface ReviewQuotaDisburseService extends IService<ReviewQuotaDisburse> {

    /**
     * 根据融资信息生成收支计划
     *
     * @param reviewFinancingInfo
     * @return
     */
    List<ReviewIncomeExpenditurePlan> generateIncomeExpenditurePlan(ReviewFinancingInfo reviewFinancingInfo);

    /**
     * 根据收支计划信息：计算IRR
     *
     * @param quotaDisburse
     * @return
     */
    String calculateIrr(ReviewQuotaDisburse quotaDisburse);

    /**
     * 获取相关还款责任人类型
     *
     * @param code
     * @return
     */
    List<Dictionary> findArlpType(String code);

    /**
     * 新增额度支用信息
     *
     * @param reviewQuotaDisburse 额度支用实体类
     * @return ReviewQuotaDisburse 额度支用实体类
     */
    void editReviewQuotaDisburse(ReviewQuotaDisburse reviewQuotaDisburse) throws Exception;
}
