zoukankan      html  css  js  c++  java
  • 商城业务流程小结

    最近近半年时间,都在做公司的自有商城,由于开始的时候,设计的不是很合理,导致后来代码比较杂乱,业务流程交叉,很是郁闷。。。所以抽时间做个小总结,本人小菜,高手请略过。。。。


    1.支付

    1.1 支付

    a)接收商品信息和用户信息

    b)生成订单

    c)向支付系统提交支付

    d)支付成功,插入支付表,向第三方下单,接收下单结果,下单成功,更新订单表为成功;下单失败,退款

    e)支付失败,插入支付表,更新订单表状态为:失败

    1.2 退款

    a)加载订单表,支付表和接口配置表

    b)判断订单表状态,成功或者在途状态的订单,可以退款,其他状态的订单不做退款处理。

    c)向支付系统提交退款交易

    d)根据退款结果,插入支付表记录,然后更新订单表状态为已退款。


    2.游戏点卡

    a)向用户展示商品数据

    b)接收用户提交的购买信息。 

    c)对用户提交的信息进行验证,包括商品单价、总价、数量等等,对非法信息进行记录,并决绝该次请求。

    d)合法交易,转到支付页面,进行支付。

    e)接收第三方的交易结果的通知,根据结果,如果成功,更新订单状态为成功,如果    失败,进行退款。

    f)定时查询订单为在途状态的交易,向第三方提起查询请求,根据结果,如果成功,更新订单状态为成功,如果       失败,进行退款。

    ***注意***

    c步骤,一定不要相信用户提交的数据,都要严格进行验证。

    e和f步骤,有可能几乎同时执行,这时候,先执行的那个,首先把订单状态改为“修改中”。因为两个流程在修改 时都会读取订单状态,只能修改“在途”状态的订单。这样就避免出现重复退款的可能。

    3.点券(天猫,京东)

    点券的业务和点卡的相似,重点注意要验证用户提交的信息的合法性。

    两种点券实验了两种不同的下单方式。

    a)当用户在前台页面选择要购买的商品数量,点击提交的时候,后台自动锁定相应数量的商品,用户完成支付后,完成出库。后台开启一个线程去查询用户放弃的商品,解锁。(缺点:效率低; 优点:保证提交后一定有货

    b)用户可直接购买任意数量的商品,在商品出库的时候,如果商品数量不足,提示用户“库存不足”。(缺点:体              验不好; 优点:效率高

    4.总结

    注意验证数据合法性。

    原文地址:http://blog.csdn.net/Mchange/article/details/19918625
  • 相关阅读:
    2019-2020-1 20175228 实验四 外设驱动程序设计
    2019-2020-1 20175228 实验三 实时系统
    2019-2020-1-20175332 20175323 20175228 实验一开发环境的熟悉
    2018-2019-2 20175228实验五《Java网络编程》实验报告
    2018-2019-2 20175228实验四《Android开发基础》实验报告
    2018-2019-2 20175228实验三《敏捷开发与XP实践》实验报告
    MyCP
    2018-2019-2 20175228实验二《面向对象程序设计》实验报告
    2018-2019-2 20175228实验一《Java开发环境的熟悉》实验报告
    转()析构函数
  • 原文地址:https://www.cnblogs.com/jpfss/p/8241524.html
Copyright © 2011-2022 走看看