From 632da96f64a8d2c4494f1a4247f1037ef2878320 Mon Sep 17 00:00:00 2001 From: zhangli <123879394@qq.com> Date: Sun, 3 Aug 2025 19:44:25 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E6=9F=A5=E8=AF=A2=E5=BD=93?= =?UTF-8?q?=E5=89=8D=E8=AE=A2=E5=8D=95=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/ClientOrderController.java | 8 ++++++++ .../com/sczx/order/dto/OrderQueryReq.java | 3 +++ .../sczx/order/mapper/OrderMainMapper.java | 2 +- .../sczx/order/repository/OrderMainRepo.java | 3 ++- .../repository/impl/OrderMainRepoImpl.java | 4 ++-- .../com/sczx/order/service/OrderService.java | 9 +++++++++ .../order/service/impl/OrderServiceImpl.java | 19 ++++++++++++++++--- src/main/resources/mapper/OrderMainMapper.xml | 3 +++ 8 files changed, 44 insertions(+), 7 deletions(-) diff --git a/src/main/java/com/sczx/order/controller/ClientOrderController.java b/src/main/java/com/sczx/order/controller/ClientOrderController.java index 62df748..9124d71 100644 --- a/src/main/java/com/sczx/order/controller/ClientOrderController.java +++ b/src/main/java/com/sczx/order/controller/ClientOrderController.java @@ -22,6 +22,12 @@ public class ClientOrderController { @Autowired private OrderService orderService; + @ApiOperation(value = "查询客户当前未完成订单") + @GetMapping("/getCurrentNoEndOrder") + public Result getCurrentNoEndOrder(@RequestParam(value = "customerId", required = false) Long customerId){ + return Result.ok(orderService.getCurrentNoEndOrder(customerId)); + } + @ApiOperation(value = "查询用户订单列表") @PostMapping("/pageCustOrder") public Result> pageCustOrder(@RequestParam(name = "pageNo", required = false, defaultValue = "1") Integer pageNo, @@ -41,4 +47,6 @@ public class ClientOrderController { public Result requestReturnCar(@RequestBody ReturnCarReq returnCarReq){ return Result.ok(orderService.requestReturnCar(returnCarReq)); } + + } diff --git a/src/main/java/com/sczx/order/dto/OrderQueryReq.java b/src/main/java/com/sczx/order/dto/OrderQueryReq.java index 5270d65..d136568 100644 --- a/src/main/java/com/sczx/order/dto/OrderQueryReq.java +++ b/src/main/java/com/sczx/order/dto/OrderQueryReq.java @@ -24,4 +24,7 @@ public class OrderQueryReq { @ApiModelProperty("订单状态") private List orderStatusList; + + @ApiModelProperty("查询品牌名称") + private String queryBrandName; } diff --git a/src/main/java/com/sczx/order/mapper/OrderMainMapper.java b/src/main/java/com/sczx/order/mapper/OrderMainMapper.java index 9b71e87..6b09cfe 100644 --- a/src/main/java/com/sczx/order/mapper/OrderMainMapper.java +++ b/src/main/java/com/sczx/order/mapper/OrderMainMapper.java @@ -21,5 +21,5 @@ import java.util.List; public interface OrderMainMapper extends BaseMapper { StoreOrderStatisticsDTO storeOrderStatistics(@Param("storeId") Long storeId); - IPage pageQueryOrder(Page page, @Param("customerId") Long customerId, @Param("storeId") Long storeId, @Param("orderStatusList") List orderStatusList); + IPage pageQueryOrder(Page page, @Param("customerId") Long customerId, @Param("storeId") Long storeId, @Param("orderStatusList") List orderStatusList, String queryBrandName); } diff --git a/src/main/java/com/sczx/order/repository/OrderMainRepo.java b/src/main/java/com/sczx/order/repository/OrderMainRepo.java index 88dc4b3..7999358 100644 --- a/src/main/java/com/sczx/order/repository/OrderMainRepo.java +++ b/src/main/java/com/sczx/order/repository/OrderMainRepo.java @@ -27,7 +27,8 @@ public interface OrderMainRepo extends IService { * @param customerId 客户ID * @param storeId 门店ID * @param orderStatusList 订单状态 + * @param queryBrandName 查询品牌名称 * @return */ - IPage pageQueryOrder(Integer pageNo, Integer pageSize, Long customerId, Long storeId, List orderStatusList); + IPage pageQueryOrder(Integer pageNo, Integer pageSize, Long customerId, Long storeId, List orderStatusList, String queryBrandName); } diff --git a/src/main/java/com/sczx/order/repository/impl/OrderMainRepoImpl.java b/src/main/java/com/sczx/order/repository/impl/OrderMainRepoImpl.java index 2bd142a..fe2cdac 100644 --- a/src/main/java/com/sczx/order/repository/impl/OrderMainRepoImpl.java +++ b/src/main/java/com/sczx/order/repository/impl/OrderMainRepoImpl.java @@ -29,8 +29,8 @@ public class OrderMainRepoImpl extends ServiceImpl } @Override - public IPage pageQueryOrder(Integer pageNo, Integer pageSize, Long customerId, Long storeId, List orderStatusList) { + public IPage pageQueryOrder(Integer pageNo, Integer pageSize, Long customerId, Long storeId, List orderStatusList, String queryBrandName) { Page page = new Page<>(pageNo, pageSize); - return this.getBaseMapper().pageQueryOrder(page, customerId, storeId, orderStatusList); + return this.getBaseMapper().pageQueryOrder(page, customerId, storeId, orderStatusList, queryBrandName); } } diff --git a/src/main/java/com/sczx/order/service/OrderService.java b/src/main/java/com/sczx/order/service/OrderService.java index 90bda85..06826d4 100644 --- a/src/main/java/com/sczx/order/service/OrderService.java +++ b/src/main/java/com/sczx/order/service/OrderService.java @@ -27,6 +27,15 @@ public interface OrderService { */ OrderDetailDTO getOrderDetailByOrderNo(String orderNo); + /** + * 查询用户当前未完成的订单 + * @param customerId + * @return + */ + OrderDetailDTO getCurrentNoEndOrder(Long customerId); + + + /** * 绑定车辆到订单 * @param bindCarToOrderReq diff --git a/src/main/java/com/sczx/order/service/impl/OrderServiceImpl.java b/src/main/java/com/sczx/order/service/impl/OrderServiceImpl.java index 98cdab1..8a40c5f 100644 --- a/src/main/java/com/sczx/order/service/impl/OrderServiceImpl.java +++ b/src/main/java/com/sczx/order/service/impl/OrderServiceImpl.java @@ -249,6 +249,20 @@ public class OrderServiceImpl implements OrderService { return orderDetailDTO; } + @Override + public OrderDetailDTO getCurrentNoEndOrder(Long customerId) { + if(customerId==null){ + SimpleUserInfoDTO userInfoDTO = jwtUtil.getUserInfoFromToken(); + customerId = Long.valueOf(userInfoDTO.getUserId()); + } + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(OrderMainPO::getCustomerId, customerId) + .notIn(OrderMainPO::getOrderStatus, Arrays.asList(OrderStatusEnum.AUTO_END.getCode(), OrderStatusEnum.MANUAL_END.getCode())) + .orderByDesc(OrderMainPO::getOrderId).last(" limit 1"); + OrderMainPO orderMainPO = orderMainRepo.getOne(queryWrapper); + return getOrderDetailByOrderNo(orderMainPO.getOrderNo()); + } + @Transactional(rollbackFor = Exception.class) @Override public OrderDTO bindCarToOrder(BindCarToOrderReq bindCarToOrderReq) { @@ -320,17 +334,16 @@ public class OrderServiceImpl implements OrderService { return orderMainRepo.storeOrderStatistics(storeId); } - @Override public IPage pageCustOrder(Integer pageNo, Integer pageSize, OrderQueryReq orderQueryReq) { orderQueryReq.setCustomerId(Long.valueOf(jwtUtil.getUserInfoFromToken().getUserId().toString())); List orderStatusList = orderQueryReq.getOrderStatusList().stream().map(OrderStatusEnum::getCode).collect(Collectors.toList()); - return orderMainRepo.pageQueryOrder(pageNo, pageSize, orderQueryReq.getCustomerId(), orderQueryReq.getStoreId(), orderStatusList); + return orderMainRepo.pageQueryOrder(pageNo, pageSize, orderQueryReq.getCustomerId(), orderQueryReq.getStoreId(), orderStatusList, orderQueryReq.getQueryBrandName()); } @Override public IPage pageStoreOrder(Integer pageNo, Integer pageSize, OrderQueryReq orderQueryReq) { List orderStatusList = orderQueryReq.getOrderStatusList().stream().map(OrderStatusEnum::getCode).collect(Collectors.toList()); - return orderMainRepo.pageQueryOrder(pageNo, pageSize, orderQueryReq.getCustomerId(), orderQueryReq.getStoreId(), orderStatusList); + return orderMainRepo.pageQueryOrder(pageNo, pageSize, orderQueryReq.getCustomerId(), orderQueryReq.getStoreId(), orderStatusList, orderQueryReq.getQueryBrandName()); } } diff --git a/src/main/resources/mapper/OrderMainMapper.xml b/src/main/resources/mapper/OrderMainMapper.xml index 7813297..6f1b3ad 100644 --- a/src/main/resources/mapper/OrderMainMapper.xml +++ b/src/main/resources/mapper/OrderMainMapper.xml @@ -49,6 +49,9 @@ #{orderStatus} + + and m.brand_name like concat('%', #{queryBrandName}, '%') + order by o.update_time desc