三菱编程PRG什么意思 2025-05-27 23:21:59
熟饺子冷藏可以放多久 2025-06-01 12:01:47
[门派玩法]【门派解读篇之辅助篇】+辅助系浅看 2025-06-02 17:26:40
贝组词(140个词语) 2025-06-20 22:52:01
奇鱼旅行app 2025-05-22 21:17:28
5 个方法,教你如何在研究生期间赚钱养家 2025-05-12 03:09:05
推特怎么看18+内容怎么搜索方法详解 推特怎么看中文内容 2025-07-22 02:38:08
LOL:“瓜皮中单”Faker?职业选手的外号都是怎么来的? 2025-07-18 18:27:19
聊一款“保值”的笔记本电脑 2025-07-03 13:28:44
哪些APP可以领流量移动用户 2025-07-07 09:04:01

积分平台之七[积分回滚和积分冻结]

背景#

积分回滚

针对特定的积分操作回滚,避免用户使用回滚刷新积分有效期。例如积分加钱购买商品。

之前发生退单时,需要重新赠送积分,会导致原来使用的积分重置有效期。

积分冻结

有的平台用户消耗积分需要先冻结,在确认使用或者取消,两阶段。

如果直接采用积分加减操作,再逆向操作,会产生两笔积分日志。

设计#

要求#

积分回滚需要支持特定积分回滚,过期时间不刷新

赠送的回滚,需要优先扣减同一笔赠送,再差值补齐

扣减的回滚,需要回滚每一笔当时扣减的积分和有效期

积分冻结后,支持按照唯一标识进行实际扣减或者取消扣减

实现#

赠送积分回滚

限制特定业务类型支持回滚

回滚记录到明细表

回滚时优先扣减特定记录,可能已经被使用

再走正常扣减,产生多条记录

扣减回滚

限制特定业务支持回滚

扣减记录到回滚明细,包含具体扣减的guid、积分值、过期时间

回滚时赠送积分,并按照具体的回滚记录还原明细

冻结积分

扣减时不产生日志,但是更新用户积分值,并记录预扣记录。

冻结最长时效1天,一天后自动返还,由定时任务处理。

实际扣减

按照预扣记录积分值执行扣减,删除预扣记录

取消预扣

更新用户积分值,删除预扣记录