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 283bf2c..1443bb2 100644 --- a/src/main/java/com/sczx/order/service/impl/OrderServiceImpl.java +++ b/src/main/java/com/sczx/order/service/impl/OrderServiceImpl.java @@ -1067,6 +1067,7 @@ public class OrderServiceImpl implements OrderService { //变更订单状态,记录结束订单时间,记录订单备注 LambdaUpdateWrapper 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 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); diff --git a/src/main/resources/mapper/OrderMainMapper.xml b/src/main/resources/mapper/OrderMainMapper.xml index f63a05f..2593fcb 100644 --- a/src/main/resources/mapper/OrderMainMapper.xml +++ b/src/main/resources/mapper/OrderMainMapper.xml @@ -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