From 167d2de1bd7b10ee05e5c35eab22f268477f37d2 Mon Sep 17 00:00:00 2001 From: Cauchy Date: Mon, 23 Oct 2023 17:41:38 +0800 Subject: [PATCH] bug fix --- .../book/controller/BuyOrderController.java | 39 +++++++++++++++- .../book/controller/ExpressController.java | 45 +++++++++++-------- .../service/impl/BuyOrderServiceImpl.java | 1 + .../book/vo/response/PrintTemplateVo.java | 20 +++++++++ .../book/vo/response/UserResponseVo.java | 1 + 5 files changed, 85 insertions(+), 21 deletions(-) create mode 100644 src/main/java/com/peanut/modules/book/vo/response/PrintTemplateVo.java 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 43da57a5..928327d1 100644 --- a/src/main/java/com/peanut/modules/book/controller/BuyOrderController.java +++ b/src/main/java/com/peanut/modules/book/controller/BuyOrderController.java @@ -351,8 +351,10 @@ public class BuyOrderController { * 删除 */ @RequestMapping("/delete") - public R delete(@RequestBody Integer[] orderIds) { - buyOrderService.removeByIds(Arrays.asList(orderIds)); + public R delete(@RequestBody List orderSnList) { + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.in("order_sn", orderSnList); + buyOrderService.remove(queryWrapper); return R.ok(); } @@ -389,6 +391,39 @@ public class BuyOrderController { return R.ok(); } + /** + * app 端 取消订单 + */ +// @RequestMapping("/cancelOrder") +// @Transactional +// public R appDelete(@RequestParam("orderSn") String orderSn) { +// QueryWrapper qu +// +// //1. 判断订单状态 +// BuyOrder byId = buyOrderService.getById(orderId); +// if (byId != null) { +// //2. 判断当前订单是否存在优惠券 进行 回显 +// Integer couponId = byId.getCouponId(); +// if (couponId != null) { +// +// CouponHistoryEntity byId1 = couponHistoryService.getById(couponId); +// byId1.setUseStatus(0); +// couponHistoryService.updateById(byId1); +// } +// // 库存回滚 +// List buyOrderDetailEntities = buyOrderDetailService.getBaseMapper().selectList(new QueryWrapper() +// .eq("order_id", byId.getOrderId())); +// for (BuyOrderDetail buyOrderDetailEntity : buyOrderDetailEntities) { +// Integer productId = buyOrderDetailEntity.getProductId(); +// ShopProduct product = shopProductService.getById(productId); +// product.setProductStock(product.getProductStock() + buyOrderDetailEntity.getQuantity()); +// shopProductService.updateById(product); +// } +// buyOrderService.removeById(orderId); +// } +// return R.ok(); +// } + /** * 充值专用订单生成接口 diff --git a/src/main/java/com/peanut/modules/book/controller/ExpressController.java b/src/main/java/com/peanut/modules/book/controller/ExpressController.java index 13620d8a..18ac4ac0 100644 --- a/src/main/java/com/peanut/modules/book/controller/ExpressController.java +++ b/src/main/java/com/peanut/modules/book/controller/ExpressController.java @@ -2,6 +2,7 @@ package com.peanut.modules.book.controller; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.peanut.common.utils.R; import com.peanut.modules.book.entity.BuyOrder; import com.peanut.modules.book.entity.BuyOrderProduct; @@ -11,14 +12,14 @@ import com.peanut.modules.book.service.BuyOrderService; import com.peanut.modules.book.service.ExpressCompanyService; import com.peanut.modules.book.service.ExpressOrderService; import com.peanut.modules.book.vo.ExpressCompanyVo; +import com.peanut.modules.book.vo.response.PrintTemplateVo; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; -import java.util.ArrayList; -import java.util.List; +import java.util.*; /** * @Description: 快递 Controller @@ -56,25 +57,31 @@ public class ExpressController { * @return */ @RequestMapping(path = "/getPrintTemplateList", method = RequestMethod.GET) - public R getPrintTemplate(String orderSn) { - QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.eq("order_sn", orderSn); - BuyOrder buyOrder = buyOrderService.getOne(queryWrapper); - QueryWrapper buyOrderProductQueryWrapper = new QueryWrapper<>(); - buyOrderProductQueryWrapper.eq("order_id", buyOrder.getOrderId()); - List buyOrderProductList = buyOrderProductService.list(buyOrderProductQueryWrapper); - List expressOrderIdList = new ArrayList<>(); - for (BuyOrderProduct buyOrderProduct : buyOrderProductList) { - expressOrderIdList.add(buyOrderProduct.getExpressOrderId()); - } + public R getPrintTemplate(@RequestParam(value = "expressOrderSn", required = false) String expressOrderSn, + @RequestParam(value = "pageSize", defaultValue = "10") Integer pageSize, + @RequestParam(value = "currentPage", defaultValue = "1") Integer currentPage) { + Page expressOrderPage = new Page<>(currentPage, pageSize); QueryWrapper expressOrderQueryWrapper = new QueryWrapper<>(); - expressOrderQueryWrapper.in("id", expressOrderIdList); - expressOrderQueryWrapper.select("print_template"); - List expressOrderList = expressOrderService.list(expressOrderQueryWrapper); - List result = new ArrayList<>(); - for (ExpressOrder expressOrder : expressOrderList) { - result.add(expressOrder.getPrintTemplate()); + if (expressOrderSn != null) { + expressOrderQueryWrapper.eq("express_order_sn", expressOrderSn); } + int totalDataSize = expressOrderService.count(expressOrderQueryWrapper); + int totalPage = totalDataSize / pageSize + 1; + Page page = expressOrderService.page(expressOrderPage, expressOrderQueryWrapper); + List expressOrderList = page.getRecords(); + List data = new ArrayList<>(); + for (ExpressOrder expressOrder : expressOrderList) { + PrintTemplateVo vo = new PrintTemplateVo(); + vo.setPrintTemplate(expressOrder.getPrintTemplate()); + vo.setExpressOrderSn(expressOrder.getExpressOrderSn()); + data.add(vo); + } + Map result = new HashMap<>(); + result.put("data", data); + result.put("currentPage", currentPage); + result.put("pageSize", pageSize); + result.put("totalDataSize", totalDataSize); + result.put("totalPage", totalPage); return R.ok().put("result", result); } 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 5212c551..3e4a9614 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 @@ -405,6 +405,7 @@ public class BuyOrderServiceImpl extends ServiceImpl impl MyUserEntity user = myUserService.getOne(userEntityQueryWrapper); if (user != null) { UserResponseVo userResponseVo = new UserResponseVo(); + userResponseVo.setUserId(user.getId()); userResponseVo.setUserPhone(user.getTel()); if (user.getName() != null) { userResponseVo.setUserName(user.getName()); diff --git a/src/main/java/com/peanut/modules/book/vo/response/PrintTemplateVo.java b/src/main/java/com/peanut/modules/book/vo/response/PrintTemplateVo.java new file mode 100644 index 00000000..3ed8c897 --- /dev/null +++ b/src/main/java/com/peanut/modules/book/vo/response/PrintTemplateVo.java @@ -0,0 +1,20 @@ +package com.peanut.modules.book.vo.response; + +import lombok.Data; + +/** + * @Description: 面单响应 value object + * @Author: Cauchy + * @CreateTime: 2023/10/23 + */ +@Data +public class PrintTemplateVo { + /** + * 快递单号 + */ + private String expressOrderSn; + /** + * 面单 + */ + private String printTemplate; +} diff --git a/src/main/java/com/peanut/modules/book/vo/response/UserResponseVo.java b/src/main/java/com/peanut/modules/book/vo/response/UserResponseVo.java index 6454c8c3..581a4422 100644 --- a/src/main/java/com/peanut/modules/book/vo/response/UserResponseVo.java +++ b/src/main/java/com/peanut/modules/book/vo/response/UserResponseVo.java @@ -9,6 +9,7 @@ import lombok.Data; */ @Data public class UserResponseVo { + private Integer userId; /** * 用户姓名 */