购物车添加商品这个add.do这儿方法.谁能简单说下逻辑,有点混乱

来源:9-3 加入购物车功能开发2

qq_爱睡觉的Koala_0

2018-10-19

跟着老师敲好是敲好了,但是还是有点蒙.................

写回答

1回答

qq_爱睡觉的Koala_0

提问者

2018-10-19

逻辑:首先通过传入session获取用户信息,校验是否登录,接着从user里提取userId与传入的productId一并传给service层
* service层首先校验传入的两个参数是否为空,接着通过userId和productId查询购物车表并返回购物车里该商品的对象.如果为null,说明表中没有该商品,进行更新
*通过new一个购物车里商品对象,然后封装对应参数插入数据库购物车表里. 如果商品存在,那就更新该商品对象的数量!购物车里查的商品数量加上用户输入的数量
* 注意(前端还需要其他数据;如:商品总价格,购物车总价格,是否全选等数据)我们需要新建VO类(vo类可以理解成专门用于展示给用户看的类)
* 为了逻辑清晰:我们需要将查询购物车得到的商品对象放进cartList集合,然后遍历得到每个对象.
* 然后new一个前台用户展示的类(前端需要的类)cartProductVo,将对应数据封装到cartProductVo类里.(细节,通过遍历得到cartItem,然后取出它的productId,查询得出产品信息)
* 然后将查询出的产品信息在封装到cartProductVo,也就是前端需要展示的类! 注意(还要写判断库存的逻辑,写完也封装到cartProductVo里)
* 最后将cartProductVo封装进购物车CartVo里,(购物车总价格cartTotalPrice;是否是全选getAllCheckedStatus逻辑书写,写完也封装进CartVo里.)
* 然后返回CartVo给controller,返回给前端.我认为这里cartProductVo,CartVo都是需要展示给用户看的类,所以数据需要我们封装,CartVo可以看做是个大盒子,里面装的都是具体数据的集合.这样逻辑就清晰.

3
2
慕码人7211748
可以的
2019-03-05
共2条回复

从0开始 独立完成企业级Java电商网站服务端开发

前后端分离,数据库接口设计,架构设计,功能开发,上线运维

9476 学习 · 8804 问题

查看课程