zoukankan      html  css  js  c++  java
  • 商城技术重点分析

    1、分类和商品列出

      a、分类递归列出,只有叶子节点下拥有商品

      b、分类的递归删除,

      c、递归获取分类下面的商品

    2、购物车

      a、ecmall 使用了session key 作为标志,使用了数据库表来记录当前购物车,定期清除即可

      b、购物车应该有 增加、删除、清空、更新、查出数据

    3、订单入库

      a、购物车分开处理付款、生成订单,一个购物车中的数据,生成一个订单即可、

    empty($item['goods_image']) && $item['goods_image'] = Conf::get('default_goods_image');

    一个很赞的短路运算、

       订单入库需要做几个东西、

       算乏为:

      1、从购物车获取商品,

      2、获取商品的信息,检查库存,需要使用数据库锁机制

      3、判断商品信息

      4、处理优惠券,重新计算价格

      5、获取收货地址

      6、储存收获地址

      7、清理购物车

      8、发送订单信息  到卖家 买家

      9、更新统计数据

      10、开始付款

    4、跳转到付款界面

      1选择支付方式

      2、判断支付方式的状态

        支付部分细节:

             a、支付需要传入 $call_back_url, $notify_url, $merchant_url

             b、需要一个支付表,一个支付日志表,

             c、需要传入三个url  1、成功通知地址  2、异步通知 3、产品购买来源地址 另外需要一个时间

             d、记录1小时为超期,判断是否超期

             e、// 是否存在支付记录,不能重复支付

             f、创建支付记录,计算支付价格等相关信息

             g、

              

      3、跳转到支付接口

      4、写入日志

      5、回调

  • 相关阅读:
    Less简介及安装
    Less功能特性
    vue相关技术
    Vue+Bootstrap实现购物车程序(3)
    vue的[__ob__: Observer]
    Uncaught TypeError: Cannot assign to read only property 'exports' of object '#<Object>'
    Angular 中的 asyncPipe 源码探究
    Vue Template 修饰符和简写,让开发效率有所提高
    使用 React Testing Library 和 Jest 完成单元测试
    异步堆栈追踪:为什么 await 胜过 Promise?
  • 原文地址:https://www.cnblogs.com/linksgo2011/p/3181964.html
Copyright © 2011-2022 走看看