发表于: 2017-11-18 23:36:06
1 683
今天完成的任务
动手尝试写了一个还款计划的demo
用户新投资生效后,会在还款计划表生成完整的还款计划。之后每日定时执行批处理程序,查找还款计划表待还的记录,调用还款接口自动还款。
模拟的参数:
入参:投资金额(10万)、投资期限(3个月)、年化收益率(8%)、起息日期(7月1日)、到期日期(9月30日)、还款方式(按月付息)
返回:每期开始时间、每期还款时间、每期应还金额、偿还本金时间
第一期:7月1日~7月31日,679.45205479452元
第二期:8月1日~8月31日,679.45205479452元
第三期:9月1日~9月30日,657.53424657534元
还本金时间:9月30日
问题的关键在于:
1、怎么知道当前年是不是闰年
用GregorianCalendar类的isLeapYear(int year)方法,闰年返回true,平年返回false。
2、怎么知道当前月份有多少天
不需要知道当前月份有多少天,统一按照【每月30天】、【一季90天】、【半年180天】、【一年360天】计算每一期的开始日期、结束日期(还款日期)
3、具体的,是加29天还是加30天?
使用add(int field,int amount)增加天数,是不算当前日期的,直接在当前日期的基础上增加amount。经测试,应该使amount=30。
代码如下:
运行结果:
**时间是从每天的凌晨0点开始计算的,所以每一期的开始时间跟上一期的结束时间是同一天的凌晨12点
遇到的问题
还款计划的时间花了一些时间才梳理清楚
收获
前台的难点在于还款计划,demo成功了,问题就不大了
明天的计划
搭建环境,进入正式的代码编写阶段
进度
环境搭建
评论