ipink-util
Version:
util.js
80 lines (79 loc) • 2.2 kB
TypeScript
/**
* 常见的四种贷款计算
* 先息后本, 等本等金, 等额本金, 等额本息
* @Author: Gavin New
* @Create: 2024/03/11 15:11
*/
export interface LoanOptionType {
/** @desc 贷款日利率 **/
dayRate?: number;
/** @desc 贷款年利率 **/
yearRate?: number;
/** @desc 总金额 **/
amount?: number;
/** @desc 贷款期数 **/
months?: number;
}
export interface LoanPlanType {
/** @desc 当前多少期 **/
num?: number;
/** @desc 当期月供 **/
total?: number | string;
/** @desc 当前期还款利息 **/
interest?: number | string;
/** @desc 当前期还款本金 **/
capital?: number | string;
/** @desc 剩余本金 **/
remainingLoan?: number | string;
}
export interface LoanResultType {
/** @desc 还款计划 **/
plan?: LoanPlanType[];
/** @desc 贷款详情 **/
info?: {
/** @desc 最高月供 **/
monthly?: number | string;
/** @desc 累计还款总额 **/
totalRepayment?: number | string;
/** @desc 累计还款利息总额 **/
totalInterest?: number | string;
};
}
/**
* 贷款计算
* 涉及的入参类型 { LoanOptionType }
* 涉及的 dayRate,yearRate两个日化年华需要*100;例如年华12%, 则 yearRate 传 12;日利率同
* 先息后本 xxhb
* 等本等金 dbdx
* 等额本金 debj
* 等额本息 debx
*/
export declare class Loan {
static instance: Loan | null;
static getInstance(): Loan;
constructor();
/**
* @desc 先息后本
* @param options { LoanOptionType }
* @return: { LoanResultType }
*/
xxhb(options: LoanOptionType): LoanResultType;
/**
* @desc 等本等金
* @param options { LoanOptionType }
* @return: { LoanResultType }
*/
dbdx(options: LoanOptionType): LoanResultType;
/**
* @desc 等额本金
* @param options { LoanOptionType }
* @return: { LoanResultType }
*/
debj(options: LoanOptionType): LoanResultType;
/**
* @desc 等额本息
* @param options { LoanOptionType }
* @return: { LoanResultType }
*/
debx(options: LoanOptionType): LoanResultType;
}