V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
LinkedIn
JasonTsang
V2EX  ›  程序员

请教一个关于程序设计的问题

  •  
  •   JasonTsang · 2019-09-17 16:35:41 +08:00 · 2100 次点击
    这是一个创建于 1106 天前的主题,其中的信息可能已经有所发展或是发生改变。

    一般系统都会有余额 ,请问大家是怎么设计这个余额的呢?

    比如用户要提现 ,是立刻把用户余额字段里的金额减掉么?

    还是弄多一个字段来 作为冻结这个余额 ?等确定提现成功后再去减掉这个余额的数值呢?

    12 条回复    2019-09-18 11:24:43 +08:00
    fengtons
        1
    fengtons  
       2019-09-17 16:44:56 +08:00 via Android
    这个要看业务流程啊,一般来说直接减就行了
    JasonTsang
        2
    JasonTsang  
    OP
       2019-09-17 16:50:24 +08:00
    @fengtons 不怕出错么?我第一次写 我怕哪里出问题了 。哪不是大问题。毕竟关于金额的东西
    arrow8899
        3
    arrow8899  
       2019-09-17 16:52:38 +08:00
    跟普通订单逻辑保持一致,提现可以理解为给银行卡充值。不过还是得看你们的业务
    smallpython
        4
    smallpython  
       2019-09-17 16:53:48 +08:00
    没有涉及过钱的经验
    不过有问题的话测试测出来你再改就好了
    先完成,在优化
    annielong
        5
    annielong  
       2019-09-17 17:12:41 +08:00
    提现流程返回正确后再减余额,我一般都用一个单独字段记录余额,积分类的没用单独字段。,
    maichael
        6
    maichael  
       2019-09-17 17:17:49 +08:00
    扣款 /充值记录要做一个单独的表,用户余额这个字段不能用做保底,一般是用扣款+充值记录校对出来的值保底。
    MarkOrca
        7
    MarkOrca  
       2019-09-17 17:18:51 +08:00
    有完成的交易历史记录就行,至于这个余额要看业务需求
    wangsyi13
        8
    wangsyi13  
       2019-09-17 17:58:46 +08:00
    印象中,银行的系统,取款、转账、圈存,都是 atm 发起交易,收到请求-->后台处理成功-->扣款-->发送消息给 ATM-->ATM 出款\写卡(转账只有后台成功就成功)||-->成功-->结束 ||-->失败-->发起冲正交易-->后台撤销扣款|||->冲正成功->结束 |||->冲正失败重试
    wangsyi13
        9
    wangsyi13  
       2019-09-17 17:59:16 +08:00
    互联网的交易不清楚,没做过。。
    guyeu
        10
    guyeu  
       2019-09-17 21:03:05 +08:00
    了解一下事务
    hspeed18
        11
    hspeed18  
       2019-09-18 11:22:29 +08:00
    不要冻结吧,那样有点复杂了。单独设计一个流水表,记录下每一笔入账出账,出现问题时也方便查。然后做好补偿措施,比如提现失败时再把余额补回来就是。
    Pythondr
        12
    Pythondr  
       2019-09-18 11:24:43 +08:00
    交易流水表 +1
    关于   ·   帮助文档   ·   API   ·   FAQ   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   1623 人在线   最高记录 5497   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 44ms · UTC 23:52 · PVG 07:52 · LAX 16:52 · JFK 19:52
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.