From d9fd3d5a5b6f33e25e8596be74b0db1585a77e68 Mon Sep 17 00:00:00 2001 From: Cauchy Date: Mon, 23 Oct 2023 15:01:07 +0800 Subject: [PATCH] bug fix --- .../book/controller/BuyOrderController.java | 6 ++ .../modules/book/service/BuyOrderService.java | 1 + .../service/impl/BuyOrderServiceImpl.java | 57 +++++-------------- 3 files changed, 21 insertions(+), 43 deletions(-) diff --git a/src/main/java/com/peanut/modules/book/controller/BuyOrderController.java b/src/main/java/com/peanut/modules/book/controller/BuyOrderController.java index 53aaf5ad..18e8f768 100644 --- a/src/main/java/com/peanut/modules/book/controller/BuyOrderController.java +++ b/src/main/java/com/peanut/modules/book/controller/BuyOrderController.java @@ -107,6 +107,12 @@ public class BuyOrderController { return R.ok().put("result", page); } + /** + * 订单详情 + * + * @param orderSn 订单号 + * @return R + */ @RequestMapping(path = "/orderDetail", method = RequestMethod.GET) public R orderDetail(@RequestParam("orderSn") String orderSn) { BuyOrderResponseVo buyOrderResponseVo = buyOrderService.orderDetail(orderSn); diff --git a/src/main/java/com/peanut/modules/book/service/BuyOrderService.java b/src/main/java/com/peanut/modules/book/service/BuyOrderService.java index bed65e79..03b4d497 100644 --- a/src/main/java/com/peanut/modules/book/service/BuyOrderService.java +++ b/src/main/java/com/peanut/modules/book/service/BuyOrderService.java @@ -1,5 +1,6 @@ package com.peanut.modules.book.service; +import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; import com.peanut.common.utils.PageUtils; diff --git a/src/main/java/com/peanut/modules/book/service/impl/BuyOrderServiceImpl.java b/src/main/java/com/peanut/modules/book/service/impl/BuyOrderServiceImpl.java index d186c32f..7140fe99 100644 --- a/src/main/java/com/peanut/modules/book/service/impl/BuyOrderServiceImpl.java +++ b/src/main/java/com/peanut/modules/book/service/impl/BuyOrderServiceImpl.java @@ -313,48 +313,7 @@ public class BuyOrderServiceImpl extends ServiceImpl impl buyOrderQueryWrapper.lt(requestVo.getEndTime() != null, "create_time", requestVo.getStartTime()); List buyOrderList = list(buyOrderQueryWrapper); for (BuyOrder buyOrder : buyOrderList) { - BuyOrderResponseVo responseVo = new BuyOrderResponseVo(); - Integer userId = buyOrder.getUserId(); - QueryWrapper userEntityQueryWrapper = new QueryWrapper<>(); - userEntityQueryWrapper.eq("id",userId); - MyUserEntity user = myUserService.getOne(userEntityQueryWrapper); - UserResponseVo userResponseVo = new UserResponseVo(); - userResponseVo.setUserPhone(user.getTel()); - userResponseVo.setUserName(user.getName()); - responseVo.setUserInfo(userResponseVo); - responseVo.setOrderPrice(buyOrder.getOrderMoney()); - BeanUtil.copyProperties(buyOrder, responseVo); - ConsigneeVo consigneeVo = new ConsigneeVo(); - consigneeVo.setConsigneeName(buyOrder.getShippingUser()); - consigneeVo.setConsigneeMobile(buyOrder.getUserPhone()); - consigneeVo.setProvince(buyOrder.getProvince()); - consigneeVo.setCity(buyOrder.getCity()); - consigneeVo.setCounty(buyOrder.getDistrict()); - consigneeVo.setAddress(buyOrder.getAddress()); - responseVo.setConsignee(consigneeVo); - QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.eq("order_id", buyOrder.getOrderId()); - List buyOrderProductList = buyOrderProductService.list(queryWrapper); - List goodsResponseVoList = new ArrayList<>(); - for (BuyOrderProduct buyOrderProduct : buyOrderProductList) { - GoodsResponseVo goodsResponseVo = new GoodsResponseVo(); - QueryWrapper shopProductQueryWrapper = new QueryWrapper<>(); - shopProductQueryWrapper.eq("product_id", buyOrderProduct.getProductId()); - ShopProduct shopProduct = shopProductService.getOne(shopProductQueryWrapper); - goodsResponseVo.setProductName(shopProduct.getProductName()); - goodsResponseVo.setProductImage(shopProduct.getProductImages()); - goodsResponseVo.setProductPrice(shopProduct.getPrice()); - QueryWrapper expressOrderQueryWrapper = new QueryWrapper<>(); - expressOrderQueryWrapper.eq("id", buyOrderProduct.getExpressOrderId()); - ExpressOrder expressOrder = expressOrderService.getOne(expressOrderQueryWrapper); - ExpressResponseVo expressResponseVo = new ExpressResponseVo(); - expressResponseVo.setExpressCompany(expressOrder.getExpressCompanyCode()); - expressResponseVo.setExpressOrderSn(expressOrder.getExpressOrderSn()); - expressResponseVo.setPrintTemplate(expressOrder.getPrintTemplate()); - goodsResponseVo.setExpressInfo(expressResponseVo); - goodsResponseVoList.add(goodsResponseVo); - } - responseVo.setGoodsList(goodsResponseVoList); + BuyOrderResponseVo responseVo = setBuyOrderInfo(buyOrder); result.add(responseVo); } return new PageUtils(result, buyOrderList.size(), requestVo.getPageSize(), requestVo.getPageIndex()); @@ -389,7 +348,6 @@ public class BuyOrderServiceImpl extends ServiceImpl impl // 计算快递费用 BigDecimal expressFee = expressFeeService.calculateExpressFee(expressCompanyCode, totalWeight, county.getRegionCode()); ExpressOrder expressOrder = new ExpressOrder(); -// expressOrder.setOrderId(buyOrderDetailList.get(0).getOrderId()); expressOrder.setExpressFee(expressFee); expressOrder.setCreateTime(new Date()); expressOrder.setTotalWeight(totalWeight); @@ -418,7 +376,20 @@ public class BuyOrderServiceImpl extends ServiceImpl impl QueryWrapper buyOrderQueryWrapper = new QueryWrapper<>(); buyOrderQueryWrapper.eq("order_sn", orderSn); BuyOrder buyOrder = getOne(buyOrderQueryWrapper); + return setBuyOrderInfo(buyOrder); + } + + private BuyOrderResponseVo setBuyOrderInfo(BuyOrder buyOrder) { BuyOrderResponseVo responseVo = new BuyOrderResponseVo(); + Integer userId = buyOrder.getUserId(); + QueryWrapper userEntityQueryWrapper = new QueryWrapper<>(); + userEntityQueryWrapper.eq("id", userId); + MyUserEntity user = myUserService.getOne(userEntityQueryWrapper); + UserResponseVo userResponseVo = new UserResponseVo(); + userResponseVo.setUserPhone(user.getTel()); + userResponseVo.setUserName(user.getName()); + responseVo.setUserInfo(userResponseVo); + responseVo.setOrderPrice(buyOrder.getOrderMoney()); BeanUtil.copyProperties(buyOrder, responseVo); ConsigneeVo consigneeVo = new ConsigneeVo(); consigneeVo.setConsigneeName(buyOrder.getShippingUser());