订单统计

This commit is contained in:
2025-09-29 14:53:02 +08:00
parent dd5603c450
commit 9b85e3a39f
2 changed files with 4 additions and 2 deletions

View File

@ -1067,6 +1067,7 @@ public class OrderServiceImpl implements OrderService {
//变更订单状态,记录结束订单时间,记录订单备注
LambdaUpdateWrapper<OrderMainPO> updateWrapper = new LambdaUpdateWrapper<>();
updateWrapper.set(OrderMainPO::getOrderStatus, OrderStatusEnum.MANUAL_END.getCode());
updateWrapper.set(OrderMainPO::getEndOrderTime, LocalDateTime.now());
updateWrapper.set(OrderMainPO::getActEndRentTime, LocalDateTime.now());
updateWrapper.eq(OrderMainPO::getOrderNo, rejectOrderReq.getOrderNo());
orderMainRepo.update(updateWrapper);
@ -1365,6 +1366,7 @@ public class OrderServiceImpl implements OrderService {
LambdaUpdateWrapper<OrderMainPO> updateWrapper = new LambdaUpdateWrapper<>();
updateWrapper.set(OrderMainPO::getOrderStatus, OrderStatusEnum.AUTO_END.getCode());
updateWrapper.set(OrderMainPO::getActEndRentTime, LocalDateTime.now());
updateWrapper.set(OrderMainPO::getEndOrderTime, LocalDateTime.now());
updateWrapper.set(Objects.nonNull(returnCarReq.getDamageAmount()),OrderMainPO::getDamageAmount, returnCarReq.getDamageAmount());
updateWrapper.set(StringUtils.isNotBlank(returnCarReq.getDamageDesc()),OrderMainPO::getDamageDesc, returnCarReq.getDamageDesc());
updateWrapper.set(rentalDuration != null,OrderMainPO::getRentalDuration, rentalDuration);

View File

@ -6,8 +6,8 @@
SELECT
store_id,
COUNT(*) as total_orders,
SUM(CASE WHEN (order_status = 'AUTO_END' OR order_status = 'MANUAL_END') AND DATE_FORMAT(end_order_time, '%Y-%m') = DATE_FORMAT(NOW(), '%Y-%m') THEN 1 ELSE 0 END) as monthly_completed_orders,
SUM(CASE WHEN (order_status = 'AUTO_END' OR order_status = 'MANUAL_END') AND DATE_FORMAT(end_order_time, '%Y-%m') = DATE_FORMAT(NOW(), '%Y-%m') THEN order_amount ELSE 0 END) as monthly_order_amount,
SUM(CASE WHEN (order_status = 'AUTO_END' OR order_status = 'MANUAL_END') AND DATE_FORMAT(ifnull(end_order_time,act_end_rent_time), '%Y-%m') = DATE_FORMAT(NOW(), '%Y-%m') THEN 1 ELSE 0 END) as monthly_completed_orders,
SUM(CASE WHEN (order_status = 'AUTO_END' OR order_status = 'MANUAL_END') AND DATE_FORMAT(ifnull(end_order_time,act_end_rent_time), '%Y-%m') = DATE_FORMAT(NOW(), '%Y-%m') THEN order_amount ELSE 0 END) as monthly_order_amount,
COUNT(CASE WHEN order_status = 'WAIT_PICK' THEN 1 END) as pending_pickup_count,
COUNT(CASE WHEN order_status = 'WAIT_RETURN' THEN 1 END) as pending_return_count,
COUNT(CASE WHEN order_status = 'RENT_OVERDUE' THEN 1 END) as overdue_count