一、订单详情地址显示为null
原因:查看订单详情接口中,未设置收货地址信息,故地址返回为null。
解决方案:
1、OrderServiceImpl中创建一个私有方法专门获取订单收货地址
/*** 获取订单收获地址* @param addressBookId* @return*/private String getOrderAddress(Long addressBookId) {AddressBook addressObject = addressBookMapper.getById(addressBookId);String address = addressObject.getProvinceName() + addressObject.getCityName() + addressObject.getDistrictName() + addressObject.getDetail();return address;}
2、查询订单详情details接口中设置收获地址,完整代码如下所示:
/*** 查询订单详情** @param id* @return*/public OrderVO details(Long id) {// 根据id查询订单 包含address_book_idOrders orders = orderMapper.getById(id);// 查询该订单对应的菜品/套餐明细List<OrderDetail> orderDetailList = orderDetailMapper.getByOrderId(orders.getId());// 设置收获地址Long addressBookId = orders.getAddressBookId();String address = getOrderAddress(addressBookId);orders.setAddress(address);// 将该订单及其详情封装到OrderVO并返回OrderVO orderVO = new OrderVO();BeanUtils.copyProperties(orders, orderVO);orderVO.setOrderDetailList(orderDetailList);return orderVO;}
运行结果:
二、订单详情无备注信息
解决方案:
<view class="data-v-54d3589c"><view class="data-v-54d3589c">订单备注</view>
<view class="data-v-54d3589c">{{orderDetailsData.remark}}</view></view>
重新编译,运行结果: