From ab3413d4cd840aa9decf370dcac7f1ec42ae0c66 Mon Sep 17 00:00:00 2001
From: Hentua <wangdoubleone@gmail.com>
Date: Mon, 22 Jan 2024 22:29:58 +0800
Subject: [PATCH] fix

---
 src/main/java/cc/mrbird/febs/vip/service/impl/MallVipBenefitsServiceImpl.java |   37 +++++++++++++++++++++++++++++++++++++
 1 files changed, 37 insertions(+), 0 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 343c1b7..b6562dc 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
@@ -1,11 +1,17 @@
 package cc.mrbird.febs.vip.service.impl;
 
 import cc.mrbird.febs.common.entity.QueryRequest;
+import cc.mrbird.febs.common.exception.FebsException;
 import cc.mrbird.febs.mall.entity.MallNewsInfo;
 import cc.mrbird.febs.mall.vo.AdminMallNewsInfoVo;
 import cc.mrbird.febs.vip.entity.MallVipBenefits;
+import cc.mrbird.febs.vip.entity.MallVipBenefitsDetails;
+import cc.mrbird.febs.vip.mapper.MallVipBenefitsDetailsMapper;
 import cc.mrbird.febs.vip.mapper.MallVipBenefitsMapper;
+import cc.mrbird.febs.vip.service.IMallVipBenefitsDetailsService;
 import cc.mrbird.febs.vip.service.IMallVipBenefitsService;
+import cn.hutool.core.collection.CollUtil;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -18,6 +24,8 @@
 @RequiredArgsConstructor
 public class MallVipBenefitsServiceImpl extends ServiceImpl<MallVipBenefitsMapper, MallVipBenefits> implements IMallVipBenefitsService {
 
+    private final IMallVipBenefitsDetailsService mallVipBenefitsDetailsService;
+
     @Override
     public IPage<MallVipBenefits> vipBenefitsListInPage(QueryRequest request) {
         Page<MallVipBenefits> page = new Page<>(request.getPageNum(), request.getPageSize());
@@ -28,4 +36,33 @@
     public MallVipBenefits findVipBenefitsById(Long id) {
         return this.baseMapper.selectVipBenefitsById(id);
     }
+
+    @Override
+    public void addVipBenefits(MallVipBenefits mallVipBenefits) {
+        if (mallVipBenefits == null) {
+            return;
+        }
+
+        if (CollUtil.isEmpty(mallVipBenefits.getDetails())) {
+            throw new FebsException("权益明细不能为空");
+        }
+
+        this.baseMapper.insert(mallVipBenefits);
+
+        mallVipBenefits.getDetails().forEach(item -> {
+            item.setBenefitsId(mallVipBenefits.getId());
+        });
+        this.mallVipBenefitsDetailsService.saveBatch(mallVipBenefits.getDetails());
+    }
+
+    @Override
+    public void delVipBenefits(Long id) {
+        this.baseMapper.deleteById(id);
+
+        LambdaQueryWrapper<MallVipBenefitsDetails> delQuery = new LambdaQueryWrapper<>();
+        delQuery.eq(MallVipBenefitsDetails::getBenefitsId, id);
+        this.mallVipBenefitsDetailsService.remove(delQuery);
+    }
+
+
 }

--
Gitblit v1.9.1