From d10302001c4a6776a190cf97a403dab3816ed4f9 Mon Sep 17 00:00:00 2001
From: jiangqs <jiangqs>
Date: 星期二, 04 七月 2023 21:59:30 +0800
Subject: [PATCH] 用户端活动商品

---
 ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java |   26 ++++++++++++++++++++++++--
 1 files changed, 24 insertions(+), 2 deletions(-)

diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java
index 9c6b785..db689f6 100644
--- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java
+++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java
@@ -529,11 +529,17 @@
      * @return
      */
     @Override
-    public MerVerifyOrderVo verifyOrder(String orderId) {
+    public MerVerifyOrderVo verifyOrder(String orderId,Long shopId) {
         // 创建返回对象
         MerVerifyOrderVo merVerifyOrderVo = new MerVerifyOrderVo();
         // 根据订单ID获取订单信息
         Order order = this.getById(orderId);
+        if(order.getOrderStatus()!=2){
+            throw new ServiceException(AppErrorConstant.VERIFY_USED);
+        }
+        if(!order.getShopId().equals(shopId)){
+            throw new ServiceException(AppErrorConstant.VERIFY_SHOP_ERROR);
+        }
         // 根据订单ID获取订单商品列表
         List<AppUserOrderGoodsPageVo> appUserOrderGoodsPageVoList = orderGoodsService.listAppVoByOrderId(orderId);
         // 设置返回对象的属性值
@@ -574,6 +580,9 @@
         Date nowTime = new Date();
         //更新订单信息
         Order order = this.getById(orderId);
+        if(order.getOrderStatus()!=2){
+            throw new ServiceException(AppErrorConstant.VERIFY_USED);
+        }
         order.setOrderStatus(3);
         order.setUseTime(nowTime);
         order.setUseUserId(merVerifyOrderDto.getUserId());
@@ -2000,11 +2009,24 @@
      * @date 2023/6/27 11:10
      */
     @Override
-    public MerVerifyCouponVo verifyCoupon(String verifyCode) {
+    public MerVerifyCouponVo verifyCoupon(String verifyCode,Long shopId) {
         // 创建MerVerifyCouponVo对象
         MerVerifyCouponVo merVerifyCouponVo = new MerVerifyCouponVo();
         // 调用remoteCouponService的getVerifyCoupon方法获取MerVerifyCouponGetVo对象
         MerVerifyCouponGetVo verifyCouponGetVo = remoteCouponService.getVerifyCoupon(verifyCode).getData();
+        MemberCoupon memberCoupon = verifyCouponGetVo.getMemberCoupon();
+        // 检查优惠券状态
+        int couponStatus = memberCoupon.getCouponStatus();
+        if (couponStatus == 0) {
+            throw new ServiceException(AppErrorConstant.COUPON_EXPIRED);
+        } else if (couponStatus == 2) {
+            throw new ServiceException(AppErrorConstant.COUPON_USED);
+        } else if (couponStatus != 0) {
+            throw new ServiceException(AppErrorConstant.COUPON_NO_FIND);
+        }
+        if(!memberCoupon.getShopId().equals(shopId)){
+            throw new ServiceException(AppErrorConstant.VERIFY_SHOP_ERROR);
+        }
         List<Goods> goodsList = verifyCouponGetVo.getGoodsList();
         Long userId = verifyCouponGetVo.getUserId();
         // 调用remoteMemberService的getMember方法获取Member对象

--
Gitblit v1.7.1