问:关于金额提现模块的设计/开发思路

2016-12-17 14:35:44 +08:00
 phpdever
每个用户的账户里都会有一个模块 [提现] ,先简单说下提现金额怎么来的:

消费者通过线下实体店购买商品后,我们会给他线上的账户自动添加相应返现金额 (通过扫描二维码识别用户身份)。

那么问题来了:

例如一位消费者购买一款商品,返现操作也已经完成,但消费者过了几个小时突然找到收银员想退货,这个时候相应的返现也要减掉(这是正常的逻辑),那么要是在此期间他申请提现了,假设用户原账户有 100 元可提现金额,系统返现后变为 110 元,他已经全部申请提现,此时账户中已经变为 0 元,这个时候他来申请退货,那系统再进行减少 10 元的操作,就会变成-10 元,该如何避免这个问题呢?

我的解决方法是,业务方面限定退货时间,例如多少天之后实体店不接受退货 /退款,只有过了保护期限系统再进行返现。

请问各位 V 友,是否有好的方法来解决此问题? 还请不吝赐教!
1526 次点击
所在节点    问与答
3 条回复
onlyhot
2016-12-17 14:37:52 +08:00
冻结。整个流程完了再释放。
mantout
2016-12-17 15:51:42 +08:00
1 、不能退货;

2 、能退货,但要扣除返现金额,账户余额不够时不能退货;

3 、返现不能马上提现,过了楼主说的保护期才可以。

我个人倾向于第三种。
mantout
2016-12-17 16:09:05 +08:00
第 2 点说的不准确,退货时返现肯定是要扣的,区别在于从什么地方扣:账上余额够返现时直接扣除,不够时从货款里扣。
这应该没什么问题了…

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/328276

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX