立即购买功能架构详解

后台-系统设置-扩展变量-手机广告位-内容正文顶部

立即购买功能架构

需求要点

  原有需求变动:

  1.商品详情页面点击立即购买,直接进入到结算页面,不经过购物车。

  2.用户点击立即购买后,即使购物车已经有相同的商品,也不会影响购物车中商品的选中状态以及增加相同商品的数量。

思路

  增加一个缓存key区分开立即购买和购物车

  增加一个缓存key单独作为创建交易操作时使用,不再使用购物车数据

  增加一个枚举,标识数据获取方式

  在向缓存中放入购物车数据时,增加一个bool参数,标识是否是立即购买,如果是立即购买,则向缓存中放入立即购买数据,否则则放入购物车数据。

  在从缓存中取出购物车数据时,增加一个枚举参数,标识数据获取方式。如果是立即购买,则向取出立即购买数据并将数据以购物结算数据存入缓存。如果是购物车,则取出购物车数据并将数据以购物结算数据存入缓存。如果是创建交易,则取出购物结算数据。

架构设计

  增加两个缓存key

  立即购买数据key(当前会员购物车原始数据key+"_BUY_NOW")-用于在跳转到购物结算页面时区别与购物车数据,存储立即购买数据

  购物结算数据key(当前会员购物车原始数据key+"_TRADE")-用于在创建交易订单时读取的购物数据

  创建一个枚举类,标识数据获取方式

  • CART-表明是在购物车进行获取
  • BUY_NOW-表明是在立即购买进行结算
  • TRADE-表明是在创造交易进行获取

  "向缓存中放入购物车数据"方法中增加一个boolean参数buyNow,标识是否是立即购买。

  "从缓存中取出购物车数据"方法中增加一个枚举参数way,标识数据获取方式。

  如果是BUY_NOW,则从缓存中获取立即购买数据并将数据以购物结算数据存入缓存。

  如果是CART,则从缓存中获取购物车数据并将数据以购物结算数据存入缓存。

  如果是TRADE,则向缓存中获取购物结算数据。

  综上所述,可以大致的了解到立即购买功能架构的内容,想要了解更多技术架构方面的内容,可以持续关注易族智汇javashop技术文档栏目

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。

后台-系统设置-扩展变量-手机广告位-内容正文底部
留言与评论(共有 0 条评论)
   
验证码: