黑马商城03
- 添加购物车
- 删除购物项
- 清空购物车
- 购物车变成订单
今日购物车 往session中存储的 浏览器关了 就没了
设计了对象
购物车对象 存放希望购买商品 (购物项)
购物车对象
{
购物项...
{
商品
购买数量
}
}
购物车---Cart
购物项---CartItem
设计三个方法:
添加购物项
添加一个新的购物项 判断之前有木有
之前有 数量改变
之前没有 往集合添加
总价格也得变化
删除购物项
从集合将该项删除
总价格减去
清空购物项
将购物车集合清空
总价格置为0
/
功能一:
-
步骤
- 前端
为加入购物车按钮绑定点击事件
把数量和pid带给服务器
服务器
成功----->跳转到购物车列表页面
失败了---->提示库存不足 - 后端
接受 pid 和count
查询库存 判断数量问题 没有自己mock一下 如果大于10 就认为库存不足 返回失败了
将购物信息添加购物车中
返回成功信息
- 前端
-
显示购物车列表:
-
前端
发请求
取出数据遍历拼接字符串 -
后端
接受请求 取出session购物车对象
返回用户
-
功能二 做删除购物项
幂等性 啥叫幂等性操作 无论操作多少次 数据不会变
页面交互过程中 只要是非幂等性操作 尤其是删除操作 一定要添加确认逻辑
前端:
发请求 带参数 一个pid
服务器成功
重载页面
后端
根据id从购物车删除
功能三 清空购物车
前端:
重载页面
后端:
map里的值,和总计全清空并返回
功能四 生成订单
前端:
为提交订单按钮绑定点击事件
发请求
服务器成功 跳转生成的那个订单页面
后端:
//生成订单 需要uid
//必须保证有人处于登录状态 返回错误告诉需要登录
//还得保证 你的购物车不是空
//也告诉你不行
就是从session取出你购物车
想办法 把它存到数据库中
返回成功