合同租金计算方法
需求:根据下面的条件生成每个月的月租金
递增周期:1年
租金递增率:6%
租赁开始时间 2021-03-01
租赁结束时间 2022-03-01
免租开始时间:
免租结束时间:
开始月租金:600
递增周期的时间是从租赁开始时间计算。(不是从免租结束时间计算)
说明租金计算逻辑。
// 1、生成每个月的月租金
caculateAllMonethRentMoney(合同信息){
计算租金递增周期列表 getPeriodList()
从租赁开始时间开始循环到租赁结束时间(每个月份循环)
循环计算所有月份数据 caculateMonthRentMoney()
}
// 1.1、计算每个递增周期的截止时间和改变后的租金递增列表
getPeriodList (合同信息){
(截止日期,改变后租金)
}
// 1.2计算当前月份需要交纳的月租金。
function caculateMonthRentMoney(指定月份,免租开始时间,免租结束时间,租金递增列表)
{
获取当前月份的开始日期和结束日期,该月份总天数
判断当前月份时间是否在免租时间内。
全部时,直接返回租金0
部分时, 开始日期=免租结束日期
开始日期大于截止日期的租金列表数据,来获取当前租金
调用租金计算方法:
计算该月租金方法(开始日期,结束日期,该月份总天数,下一个截止日期,当前租金,下一个周期租金)
}
// 1.2.1计算该月租金方法(开始日期,结束日期,该月份总天数,下一个截止日期,当前租金,下一个周期租金)
function caculateRentMoney(开始日期,结束日期,该月份总天数,下一个截止日期,当前租金,下一个周期租金)
{
如果当前的结束日期大于下一个租金截止日期,则分开计算改月的前半部分和后半部分租金。
否则,计算开始日期到结束日期的总天数 ÷ 该月份总天数 = 租金比例
当月应收租金 = 当前租金 x 租金比例
}