From 078930456bedf641e53e45981ee8830c7eeda9d5 Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Mon, 11 Mar 2024 15:36:11 +0800
Subject: [PATCH] fix

---
 src/main/java/cc/mrbird/febs/vip/service/impl/MallVipBenefitsServiceImpl.java |   38 +++++++++++++++++++++++++++++++-------
 1 files changed, 31 insertions(+), 7 deletions(-)

diff --git a/src/main/java/cc/mrbird/febs/vip/service/impl/MallVipBenefitsServiceImpl.java b/src/main/java/cc/mrbird/febs/vip/service/impl/MallVipBenefitsServiceImpl.java
index 0b90501..487441b 100644
--- a/src/main/java/cc/mrbird/febs/vip/service/impl/MallVipBenefitsServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/vip/service/impl/MallVipBenefitsServiceImpl.java
@@ -76,15 +76,17 @@
             return;
         }
 
-        if (CollUtil.isEmpty(mallVipBenefits.getDetails())) {
-            throw new FebsException("权益明细不能为空");
-        }
+//        if (CollUtil.isEmpty(mallVipBenefits.getDetails())) {
+//            throw new FebsException("权益明细不能为空");
+//        }
 
         this.baseMapper.insert(mallVipBenefits);
 
-        mallVipBenefits.getDetails().forEach(item -> {
-            item.setBenefitsId(mallVipBenefits.getId());
-        });
+        if (CollUtil.isNotEmpty(mallVipBenefits.getDetails())) {
+            mallVipBenefits.getDetails().forEach(item -> {
+                item.setBenefitsId(mallVipBenefits.getId());
+            });
+        }
         this.mallVipBenefitsDetailsService.saveBatch(mallVipBenefits.getDetails());
     }
 
@@ -129,6 +131,10 @@
             throw new FebsException("权益不存在");
         }
 
+        if (benefits.getIsClick() == 2) {
+            throw new FebsException("请联系客服,检查权益设置");
+        }
+
         MallVipBenefits vipBenefits = this.baseMapper.selectById(benefits.getBenefitsId());
         if (vipBenefits == null) {
             throw new FebsException("权益不存在");
@@ -166,7 +172,7 @@
         recordQuery.ge(MallVipBenefitsRecord::getReceiveTime, DateUtil.beginOfDay(new Date()))
                 .le(MallVipBenefitsRecord::getReceiveTime, DateUtil.endOfDay(new Date()))
                 .eq(MallVipBenefitsRecord::getMemberId, member.getId())
-                .eq(MallVipBenefitsRecord::getBenefitsType, vipBenefits.getType())
+                .eq(MallVipBenefitsRecord::getBenefitsType, vipBenefits.getGainType())
                 .eq(MallVipBenefitsRecord::getReceiveId, Long.parseLong(benefits.getContent()));
         List<MallVipBenefitsRecord> mallVipBenefitsRecords = mallVipBenefitsRecordMapper.selectList(recordQuery);
         if (CollUtil.isNotEmpty(mallVipBenefitsRecords)) {
@@ -179,6 +185,8 @@
         record.setReceiveTime(new Date());
         record.setReceiveType(linkType);
         record.setReceiveId(Long.parseLong(benefits.getContent()));
+        record.setMemberId(member.getId());
+        record.setReceiveCnt(1);
 
         // 商品
         if (linkType == 2) {
@@ -205,6 +213,7 @@
             orderInfo.setStatus(OrderStatusEnum.WAIT_SHIPPING.getValue());
             orderInfo.setOrderType(goods.getGoodsType());
             orderInfo.setDeliveryType(2);
+            orderInfo.setIsFree(1);
             orderInfo.setCarriage(BigDecimal.ZERO);
             orderInfo.setAmount(BigDecimal.ZERO);
             orderInfo.setAddressId(address.getId());
@@ -262,6 +271,7 @@
             memberCoupon.setInviteId(member.getInviteId());
             memberCoupon.setCouponUuid(IdUtil.simpleUUID());
             memberCoupon.setState(1);
+            memberCoupon.setFromType(2);
             memberCoupon.setExpireTime(DateUtil.offsetDay(DateUtil.date(), coupon.getExpireDay()));
             memberCoupon.setMemberId(member.getId());
             mallMemberCouponMapper.insert(memberCoupon);
@@ -272,4 +282,18 @@
         mallVipBenefitsRecordMapper.insert(record);
     }
 
+    @Override
+    public void switchBenefitsShow(Long id) {
+        MallVipBenefits vipBenefits = this.baseMapper.selectById(id);
+
+        MallVipBenefits update = new MallVipBenefits();
+        if (vipBenefits.getIsShow() == 1) {
+            update.setIsShow(2);
+        } else {
+            update.setIsShow(1);
+        }
+
+        update.setId(vipBenefits.getId());
+        this.baseMapper.updateById(update);
+    }
 }

--
Gitblit v1.9.1