做现金贷功能模块,被提了几个比较严重的bug,主要是由于前期设计和开发的时候没有想清楚,现做如下总结:
1.风控返回审核结果是针对一个身份证号而言的,不是对一个CC而言,所以这个审核结果信息应该记录在一个身份证号上,如果一个身份证号码对应多个passport_id,那么这多个passport_id都需要修改审核状态
2.怎样记录和判断一个CC某天以及某个月的使用次数是否超过限制:
前提:风控审核之后回调我的接口,我需要记录审核状态以及分配的次数信息(每天多少次,每个月多少次,每个月的次数,比一个月每天的次数加起来要少!),同时风控可能随时修改分配的次数,修改后会再次调用我们的回调接口。
基于此,我需要记录的信息如下:
1.风控分配的次数信息:每天分配次数,本月分配次数
2.记录天级的使用次数,记录天级使用次数的时间,(比如说:8月24日 使用5次)
3.记录月级的使用次数,记录月级使用次数的时间,(比如说:8月份 使用35次)
(为什么记使用次数而不是记剩余次数,因为,如果风控修改了分配的次数,那么剩余次数是会改变的,但是已经使用的次数是不会改变的)
解决:
将分配次数写到数据库中,与一个身份证号码对应。
将天级使用次数的时间,以及这个时间对应的天级的使用次数记录到redis缓存中(比如:8月24日 使用5次)
将月级使用次数的时间,以及这个时间对应的月级的使用次数记录到redis缓存中(比如:8月 使用35次)