|
|
@@ -493,64 +493,21 @@ public class ProductOrderInfoServiceImpl extends ServiceImpl<ProductOrderInfoMap
|
|
|
@Override
|
|
|
public ProductOrderDetailAdminVo getOrderDetailForAdmin(Long orderId) {
|
|
|
|
|
|
- ProductOrderInfo productOrderInfo = this.productOrderInfoMapper.selectById(orderId);
|
|
|
- if (ObjectUtil.isNull(productOrderInfo)) {
|
|
|
- throw new IllegalArgumentException("参数有误,订单不存在");
|
|
|
- }
|
|
|
-
|
|
|
ProductOrderDetailAdminVo vo = new ProductOrderDetailAdminVo();
|
|
|
|
|
|
// 1. 订单基础信息
|
|
|
- OrderBaseInfoVo orderBaseInfo = new OrderBaseInfoVo();
|
|
|
- BeanUtil.copyProperties(productOrderInfo, orderBaseInfo);
|
|
|
- orderBaseInfo.setBuyerRemark(productOrderInfo.getBuyerRemark());
|
|
|
-
|
|
|
- // 获取用户电话号码
|
|
|
- TWxUser wxUser = wxUserService.getByOpenId(productOrderInfo.getOpenId());
|
|
|
- if (ObjectUtil.isNotNull(wxUser)) {
|
|
|
- orderBaseInfo.setPhone(wxUser.getcPhone());
|
|
|
- }
|
|
|
-
|
|
|
- // 获取商品的信息
|
|
|
- LambdaQueryWrapper<ProductOrderItem> itemQuery = new LambdaQueryWrapper<>();
|
|
|
- itemQuery.eq(ProductOrderItem::getOrderId, productOrderInfo.getId());
|
|
|
- itemQuery.last("LIMIT 1");
|
|
|
- ProductOrderItem productOrderItem = productOrderItemMapper.selectOne(itemQuery);
|
|
|
- if (ObjectUtil.isNotNull(productOrderItem)) {
|
|
|
- BeanUtil.copyProperties(productOrderItem, orderBaseInfo);
|
|
|
+ OrderBaseInfoVo orderBaseInfo = this.productOrderInfoMapper.getOrderBaseInfoById(orderId);
|
|
|
+ if(ObjectUtil.isNull(orderBaseInfo)){
|
|
|
+ throw new ServiceException("订单不存在");
|
|
|
}
|
|
|
-
|
|
|
vo.setOrderBaseInfo(orderBaseInfo);
|
|
|
|
|
|
// 2. 收货人信息
|
|
|
- ReceiverInfoVo receiverInfo = new ReceiverInfoVo();
|
|
|
- if (ObjectUtil.isNotNull(productOrderInfo.getAddressId())) {
|
|
|
- ProductOrderAddress address = productOrderAddressService.getById(productOrderInfo.getAddressId());
|
|
|
- if (ObjectUtil.isNotNull(address)) {
|
|
|
- BeanUtil.copyProperties(address, receiverInfo);
|
|
|
- }
|
|
|
- }
|
|
|
+ ReceiverInfoVo receiverInfo = getReceiverInfo(orderBaseInfo.getAddressId());
|
|
|
vo.setReceiverInfo(receiverInfo);
|
|
|
|
|
|
// 3. 商品列表
|
|
|
- LambdaQueryWrapper<ProductOrderItem> itemListQuery = new LambdaQueryWrapper<>();
|
|
|
- itemListQuery.eq(ProductOrderItem::getOrderId, productOrderInfo.getId());
|
|
|
- ProductOrderItem orderItem = productOrderItemMapper.selectOne(itemListQuery);
|
|
|
- OrderItemVo itemVo = new OrderItemVo();
|
|
|
- if (ObjectUtil.isNotNull(orderItem)) {
|
|
|
- itemVo.setOrderNo(orderItem.getOrderNo());
|
|
|
- itemVo.setProductImage(orderItem.getSkuImage());
|
|
|
- itemVo.setProductName(orderItem.getProductName());
|
|
|
- itemVo.setSpecName(orderItem.getSkuSpec());
|
|
|
- itemVo.setPayAmount(orderItem.getActualAmount());
|
|
|
-
|
|
|
- // 获取商品价格信息
|
|
|
- ProductSku productSku = productSkuMapper.selectById(orderItem.getSkuId());
|
|
|
- if (productSku != null) {
|
|
|
- itemVo.setPriceMoney(productSku.getPriceMoney());
|
|
|
- itemVo.setPricePoint(productSku.getPricePoint());
|
|
|
- }
|
|
|
- }
|
|
|
+ OrderItemVo itemVo = productOrderItemMapper.getOrderItemVoByOrderId(orderId);
|
|
|
vo.setOrderItemInfo(itemVo);
|
|
|
|
|
|
// 4. 售后信息
|
|
|
@@ -586,4 +543,15 @@ public class ProductOrderInfoServiceImpl extends ServiceImpl<ProductOrderInfoMap
|
|
|
return orderInfo;
|
|
|
}
|
|
|
|
|
|
+ private ReceiverInfoVo getReceiverInfo(Long addressId) {
|
|
|
+ ReceiverInfoVo receiverInfo = new ReceiverInfoVo();
|
|
|
+ if (ObjectUtil.isNotNull(addressId)) {
|
|
|
+ ProductOrderAddress address = productOrderAddressService.getById(addressId);
|
|
|
+ if (ObjectUtil.isNotNull(address)) {
|
|
|
+ BeanUtil.copyProperties(address, receiverInfo);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return receiverInfo;
|
|
|
+ }
|
|
|
+
|
|
|
}
|