新增查询当前订单接口

This commit is contained in:
2025-08-03 19:44:25 +08:00
parent b39d33030e
commit 632da96f64
8 changed files with 44 additions and 7 deletions

View File

@ -22,6 +22,12 @@ public class ClientOrderController {
@Autowired
private OrderService orderService;
@ApiOperation(value = "查询客户当前未完成订单")
@GetMapping("/getCurrentNoEndOrder")
public Result<OrderDetailDTO> getCurrentNoEndOrder(@RequestParam(value = "customerId", required = false) Long customerId){
return Result.ok(orderService.getCurrentNoEndOrder(customerId));
}
@ApiOperation(value = "查询用户订单列表")
@PostMapping("/pageCustOrder")
public Result<IPage<OrderSimpleDTO>> pageCustOrder(@RequestParam(name = "pageNo", required = false, defaultValue = "1") Integer pageNo,
@ -41,4 +47,6 @@ public class ClientOrderController {
public Result<OrderDTO> requestReturnCar(@RequestBody ReturnCarReq returnCarReq){
return Result.ok(orderService.requestReturnCar(returnCarReq));
}
}

View File

@ -24,4 +24,7 @@ public class OrderQueryReq {
@ApiModelProperty("订单状态")
private List<OrderStatusEnum> orderStatusList;
@ApiModelProperty("查询品牌名称")
private String queryBrandName;
}

View File

@ -21,5 +21,5 @@ import java.util.List;
public interface OrderMainMapper extends BaseMapper<OrderMainPO> {
StoreOrderStatisticsDTO storeOrderStatistics(@Param("storeId") Long storeId);
IPage<OrderSimpleDTO> pageQueryOrder(Page<OrderSimpleDTO> page, @Param("customerId") Long customerId, @Param("storeId") Long storeId, @Param("orderStatusList") List<String> orderStatusList);
IPage<OrderSimpleDTO> pageQueryOrder(Page<OrderSimpleDTO> page, @Param("customerId") Long customerId, @Param("storeId") Long storeId, @Param("orderStatusList") List<String> orderStatusList, String queryBrandName);
}

View File

@ -27,7 +27,8 @@ public interface OrderMainRepo extends IService<OrderMainPO> {
* @param customerId 客户ID
* @param storeId 门店ID
* @param orderStatusList 订单状态
* @param queryBrandName 查询品牌名称
* @return
*/
IPage<OrderSimpleDTO> pageQueryOrder(Integer pageNo, Integer pageSize, Long customerId, Long storeId, List<String> orderStatusList);
IPage<OrderSimpleDTO> pageQueryOrder(Integer pageNo, Integer pageSize, Long customerId, Long storeId, List<String> orderStatusList, String queryBrandName);
}

View File

@ -29,8 +29,8 @@ public class OrderMainRepoImpl extends ServiceImpl<OrderMainMapper, OrderMainPO>
}
@Override
public IPage<OrderSimpleDTO> pageQueryOrder(Integer pageNo, Integer pageSize, Long customerId, Long storeId, List<String> orderStatusList) {
public IPage<OrderSimpleDTO> pageQueryOrder(Integer pageNo, Integer pageSize, Long customerId, Long storeId, List<String> orderStatusList, String queryBrandName) {
Page<OrderSimpleDTO> page = new Page<>(pageNo, pageSize);
return this.getBaseMapper().pageQueryOrder(page, customerId, storeId, orderStatusList);
return this.getBaseMapper().pageQueryOrder(page, customerId, storeId, orderStatusList, queryBrandName);
}
}

View File

@ -27,6 +27,15 @@ public interface OrderService {
*/
OrderDetailDTO getOrderDetailByOrderNo(String orderNo);
/**
* 查询用户当前未完成的订单
* @param customerId
* @return
*/
OrderDetailDTO getCurrentNoEndOrder(Long customerId);
/**
* 绑定车辆到订单
* @param bindCarToOrderReq

View File

@ -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<OrderMainPO> 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<OrderSimpleDTO> pageCustOrder(Integer pageNo, Integer pageSize, OrderQueryReq orderQueryReq) {
orderQueryReq.setCustomerId(Long.valueOf(jwtUtil.getUserInfoFromToken().getUserId().toString()));
List<String> 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<OrderSimpleDTO> pageStoreOrder(Integer pageNo, Integer pageSize, OrderQueryReq orderQueryReq) {
List<String> 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());
}
}

View File

@ -49,6 +49,9 @@
#{orderStatus}
</foreach>
</if>
<if test="queryBrandName != null and queryBrandName != ''">
and m.brand_name like concat('%', #{queryBrandName}, '%')
</if>
</where>
order by o.update_time desc