1.需求
用户购买从做市商账户上购买一定量的合约,下单后在第二天8点之后为用户发放前一天的挖矿收益。发放收益过程经过财务部分审核才可发放。每个购买用户有财务记录及发放记录。用户购买的合约电价可进行配置。合约而且还支持冻结发放,依据用户电价和平台电价的差值计算平台收入,还需要支持用购买的合约每天的电费能够使用钱包中的数字资产进行抵扣,按照实际的收益进行发放。
2.表结构设计思路:
用户资金表:用户记录用户的资金以及所拥有合约份数,用户持有的合约也相当于持有一定的数字资产。
用户余额记录表:用户所持有的合约会发生变化,所以每天需要记录用户的每天8点用户的余额快照。
定时任务执行记录表:余额快照需要定时任务来执行,判断定时任务是否执行了,在定时任务在真正执行业务逻辑之前,做判断,即使多台机器都执行了业务逻辑,在数据库中也加了唯一索引,保证数据不会重复。
合约收益记录:该表主要是通过定时任务查询用户每日余额快照表合约卖出的总份数,录入收益,减去费用,得到净收益,每份净收益后,然后经过财务部门审核之后发放收益。在执行定时任务之前,需要判断该定时任务是否已经执行了。
合约收益审核记录:主要记录合约收益审核记录日志,包括中间数据的变化。
用户收益发放记录:记录每日用户发放的记录,而且在发放用户收益之前需要校验该表是否已经存在,如果存在就不能发放了。
合约表:主要记录合约的信息,已经生成合约code,合约code就相当于数字资产code。
电价表:与合约关联,主要有起始结束时间,已经用户电价及平台电价。
3.用户资金模块表结构设计
用户余额表:余额,冻结金额,活动奖励金额,活动奖励冻结金额
交易表:相当于用户余额变化的记录表,存储有用户的交易类型,交易类型有充值,体现,otc买入,otc卖出,合约交易,收益交易
event表:具体对账户操作的事件记录表
冻结请求表:相当于请求参数的记录表,event表会查询该表,然后再进一步进行处理账户余额。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。