一、导入地址簿功能代码
直接导
二、用户下单
1. 需求分析和设计
POST请求:/user/order/submit
请求参数JSON:订单数据
返回数据:下单时间,订单金额,订单id,订单号
2. 代码开发
OrderController:@RequestBody
OrderServiceImpl:@Transactional
(1)处理业务异常(购物车为空,地址为空);
根据地址id查询地址,根据用户id查询购物车
(2)向订单表插入一条数据
拷贝DTO的属性值给订单类,插入后回显订单id,订单号:时间戳(System.currentTimeMillis())
(3)向订单明细表插入多条数据
遍历购物车的list,属性拷贝给订单明细类,设置订单id,添加到订单明细list,动态sql添加
(4)清空当前用户购物车数据,封装VO返回
OrderMapper:insert(回显)
OrderDetailMapper:insert(foreach)
3. 功能测试
前端提交请求后返回未知错误,后端执行到添加订单表时卡住没反应(报异常)
原因:执行数据库语句时,有非空字段为空值(忘记把DTO属性值拷贝给orders了)
三、订单支付
在微信支付商户平台看文档
调用过程如何保证数据安全?
答:加密解密签名
微信后台如何调用到商户系统(后端)?
答:内网穿透获取临时公网ip
导!
读!
测!