为了数据的准确性和校对的快速性。
1、用户账户余额不随着历史订单的变动而变动。(单个用户实施结算功能)
2、支付宝订单有3种状态,1、失败 2 成功 3、等待确认。
3、如何做到浮动平衡。 所有用户钱包总额=期初+新增收入-新增支出(成功和等待确认)
1、期初的值必须准确。
2、用户钱包的钱,是从用户个人账户信息进行汇总。
3、新增收入计算 是从期初开始算。
这么做的话,可以自己定义审计的范围大小,而且我不用怕因为有用户串改了历史订单会变动我的余额。我可以是一天,1周 或者几小时审核1次。其次要是出现非法串改了个人账户余额,只需要在审计范围内查找变动因素就可以了。
//如何查找变动因素?
用户当前余额=用户期初余额(固化)+用户新增收入-新增支出
//期初值我可以只保留7天什么的 节省存储空间
//核心
校对当前所有用户钱包总额=期初(固化)+新增收入-新的支出