From 9ebbc056f347bdb93c5d0548b67f51b0b5545476 Mon Sep 17 00:00:00 2001
From: cb <275647614@qq.com>
Date: Tue, 14 Oct 2025 16:43:01 +0800
Subject: [PATCH] no message
---
.../controller/order/OrderMasterController.java | 2 ++
.../resources/mapper/order/OrderMasterMapper.xml | 5 ++++-
.../ghy/quartz/service/impl/OrderServiceImpl.java | 15 +++++++++++++++
3 files changed, 21 insertions(+), 1 deletion(-)
diff --git a/ghy-admin/src/main/java/com/ghy/web/controller/order/OrderMasterController.java b/ghy-admin/src/main/java/com/ghy/web/controller/order/OrderMasterController.java
index d22c117d..7e534855 100644
--- a/ghy-admin/src/main/java/com/ghy/web/controller/order/OrderMasterController.java
+++ b/ghy-admin/src/main/java/com/ghy/web/controller/order/OrderMasterController.java
@@ -1231,6 +1231,7 @@ public class OrderMasterController extends BaseController {
}
// 编辑返回属性
+ orderListResponse.setGoodsOrderMasterId(master.getGoodsOrderMasterId());
orderListResponse.setWorkerRemark(master.getWorkerRemark());
orderListResponse.setIsNeedBill(master.getIsNeedBill());
orderListResponse.setIsMonitoredOrder(master.getIsMonitoredOrder());
@@ -2463,6 +2464,7 @@ public class OrderMasterController extends BaseController {
OrderMaster goodsOrderUpdate = new OrderMaster();
goodsOrderUpdate.setId(orderMasterInfo.getGoodsOrderMasterId());
goodsOrderUpdate.setHasServiceOrder(0); // 重置为未派发状态
+ goodsOrderUpdate.setServiceShopId((long) -1);
orderMasterService.updateOrderMaster(goodsOrderUpdate);
}
diff --git a/ghy-order/src/main/resources/mapper/order/OrderMasterMapper.xml b/ghy-order/src/main/resources/mapper/order/OrderMasterMapper.xml
index ed24931f..0df579a0 100644
--- a/ghy-order/src/main/resources/mapper/order/OrderMasterMapper.xml
+++ b/ghy-order/src/main/resources/mapper/order/OrderMasterMapper.xml
@@ -522,7 +522,10 @@
timeout_ = #{timeout},
insurance_id = #{insuranceId},
server_goods_id = #{serverGoodsId},
- service_shop_id = #{serviceShopId},
+ service_shop_id = #{serviceShopId},
+
+ service_shop_id = NULL,
+
goods_order_master_id = #{goodsOrderMasterId},
tracking_number = #{trackingNumber},
server_goods_money = #{serverGoodsMoney},
diff --git a/ghy-quartz/src/main/java/com/ghy/quartz/service/impl/OrderServiceImpl.java b/ghy-quartz/src/main/java/com/ghy/quartz/service/impl/OrderServiceImpl.java
index 0d9c4dcd..72acdd6f 100644
--- a/ghy-quartz/src/main/java/com/ghy/quartz/service/impl/OrderServiceImpl.java
+++ b/ghy-quartz/src/main/java/com/ghy/quartz/service/impl/OrderServiceImpl.java
@@ -1498,6 +1498,21 @@ public class OrderServiceImpl implements OrderService {
// 检查是否到达目标时间
if (now.after(targetTime) && orderMaster.getPayStatus() == 1) {
+ // 检查是否存在对应的服务订单,如果存在则必须也是确认中状态
+ if (orderMaster.getHasServiceOrder() != null && orderMaster.getHasServiceOrder() == 1) {
+ OrderMaster serviceOrderMaster = orderMasterService.selectByGoodsOrderMasterId(orderMaster.getId());
+ if (serviceOrderMaster != null) {
+ if (serviceOrderMaster.getOrderStatus() != OrderStatus.FINISH_CHECK.code()) {
+ log.info("订单[{}]对应的服务订单[{}]尚未进入确认中状态,跳过商品订单状态更新",
+ orderDetail.getCode(), serviceOrderMaster.getCode());
+ continue;
+ } else {
+ log.info("订单[{}]对应的服务订单[{}]已进入确认中状态,可以更新商品订单状态",
+ orderDetail.getCode(), serviceOrderMaster.getCode());
+ }
+ }
+ }
+
log.info("订单[{}]确认截止时间已到,开始转为确认中状态", orderDetail.getCode());
Date workFinishTime = new Date();
orderDetail.setWorkFinishTime(workFinishTime);