黑马苍穹外卖7 用户下单+订单支付(微信小程序支付流程图)

地址簿

数据库表设计
在这里插入图片描述
就是基本增删改查,与前面的类似。

用户下单

用户点餐业务流程:
在这里插入图片描述
购物车-订单提交-订单支付-下单成功

展示购物车数据,不需要提交到后端
在这里插入图片描述
数据库设计:两个表【订单表orders,订单明细表order_detail】
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
DTO:
在这里插入图片描述
VO:
在这里插入图片描述
controller:

@RestController("UserOrderController")//作为Bean名称,避免与admin端名称重复
@RequestMapping("/user/order")
@Api(tags = "B端用户订单接口")
public class OrderController {
   

    @Autowired
    private OrderService orderService;

    @PostMapping("/submit")
    @ApiOperation("用户下单")
    public Result<OrderSubmitVO> submit(@RequestBody OrdersSubmitDTO submitDTO){
   
        return Result.success(orderService.submit(submitDTO));//传入DTO返回VO
    }

service :
@Transactional//设计几多个数据表,需要保证数据一致性,需要事务注解–保证原子性,全成功或全失败

@Transactional//事务注解 -方法执行完提交才插入
    @Override
    public OrderSubmitVO submit(OrdersSubmitDTO submitDTO) {
   
    //处理各种业务异常检查(地址是否为空,购物车是否为空)
        AddressBook addressBook = addressBookMapper.getById(submitDTO.getAddressBookId());
        if (addressBook == null) {
   
            throw new AddressBookBusinessException(MessageConstant.ADDRESS_BOOK_IS_NULL);
        
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值