Просмотр исходного кода

预定订单支付成功之后,需要将用户预约信息表中预约状态 设置为1:已确认

zhangchen 1 месяц назад
Родитель
Сommit
33a2423e5a

+ 10 - 0
alien-store/src/main/java/shop/alien/store/strategy/merchantPayment/impl/MerchantAlipayPaymentStrategyImpl.java

@@ -23,6 +23,7 @@ import shop.alien.entity.result.R;
 import shop.alien.entity.store.MerchantPaymentOrder;
 import shop.alien.entity.store.RefundRecord;
 import shop.alien.entity.store.StorePaymentConfig;
+import shop.alien.entity.store.UserReservation;
 import shop.alien.entity.store.UserReservationOrder;
 import shop.alien.store.service.MerchantPaymentOrderService;
 import shop.alien.store.service.RefundRecordService;
@@ -30,6 +31,7 @@ import shop.alien.store.service.StorePaymentConfigService;
 import shop.alien.store.service.ReservationOrderPaymentTimeoutService;
 import shop.alien.store.service.ReservationVerificationQrService;
 import shop.alien.store.service.UserReservationOrderService;
+import shop.alien.store.service.UserReservationService;
 import shop.alien.store.strategy.merchantPayment.MerchantPaymentStrategy;
 import shop.alien.util.common.UniqueRandomNumGenerator;
 import shop.alien.util.common.constant.PaymentEnum;
@@ -71,6 +73,7 @@ public class MerchantAlipayPaymentStrategyImpl implements MerchantPaymentStrateg
     private final RefundRecordService refundRecordService;
     private final ReservationOrderPaymentTimeoutService reservationOrderPaymentTimeoutService;
     private final ReservationVerificationQrService reservationVerificationQrService;
+    private final UserReservationService userReservationService;
     private final StringRedisTemplate stringRedisTemplate;
 
     @Override
@@ -261,6 +264,13 @@ public class MerchantAlipayPaymentStrategyImpl implements MerchantPaymentStrateg
                 }
                 order.setUpdatedTime(now);
                 userReservationOrderService.updateById(order);
+                if (order.getReservationId() != null) {
+                    UserReservation reservation = userReservationService.getById(order.getReservationId());
+                    if (reservation != null) {
+                        reservation.setStatus(1);
+                        userReservationService.updateById(reservation);
+                    }
+                }
                 reservationOrderPaymentTimeoutService.cancelReservationOrderPaymentTimeout(order.getOrderSn());
                 return R.success("支付成功");
             }

+ 10 - 0
alien-store/src/main/java/shop/alien/store/strategy/merchantPayment/impl/MerchantWechatPaymentStrategyImpl.java

@@ -12,6 +12,7 @@ import shop.alien.entity.result.R;
 import shop.alien.entity.store.MerchantPaymentOrder;
 import shop.alien.entity.store.RefundRecord;
 import shop.alien.entity.store.StorePaymentConfig;
+import shop.alien.entity.store.UserReservation;
 import shop.alien.entity.store.UserReservationOrder;
 import shop.alien.store.service.MerchantPaymentOrderService;
 import shop.alien.store.service.RefundRecordService;
@@ -19,6 +20,7 @@ import shop.alien.store.service.StorePaymentConfigService;
 import shop.alien.store.service.ReservationOrderPaymentTimeoutService;
 import shop.alien.store.service.ReservationVerificationQrService;
 import shop.alien.store.service.UserReservationOrderService;
+import shop.alien.store.service.UserReservationService;
 import shop.alien.store.strategy.merchantPayment.MerchantPaymentStrategy;
 import shop.alien.store.strategy.payment.impl.WeChatPaymentStrategyImpl;
 import shop.alien.store.util.WXPayUtility;
@@ -68,6 +70,7 @@ public class MerchantWechatPaymentStrategyImpl implements MerchantPaymentStrateg
     private final RefundRecordService refundRecordService;
     private final ReservationOrderPaymentTimeoutService reservationOrderPaymentTimeoutService;
     private final ReservationVerificationQrService reservationVerificationQrService;
+    private final UserReservationService userReservationService;
     private final StringRedisTemplate stringRedisTemplate;
 
     @Override
@@ -243,6 +246,13 @@ public class MerchantWechatPaymentStrategyImpl implements MerchantPaymentStrateg
                 }
                 order.setUpdatedTime(now);
                 userReservationOrderService.updateById(order);
+                if (order.getReservationId() != null) {
+                    UserReservation reservation = userReservationService.getById(order.getReservationId());
+                    if (reservation != null) {
+                        reservation.setStatus(1);
+                        userReservationService.updateById(reservation);
+                    }
+                }
                 reservationOrderPaymentTimeoutService.cancelReservationOrderPaymentTimeout(order.getOrderSn());
                 return R.success("支付成功");
             }