From 1bff7bcb0c0f5471033942a74c88cb00f60960e3 Mon Sep 17 00:00:00 2001
From: Hentua <wangdoubleone@gmail.com>
Date: Wed, 24 Jan 2024 19:19:50 +0800
Subject: [PATCH] fix
---
src/main/java/cc/mrbird/febs/vip/service/impl/MallVipBenefitsServiceImpl.java | 60 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 60 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..07d20cb 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,22 +1,31 @@
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;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
@Slf4j
@Service
@RequiredArgsConstructor
public class MallVipBenefitsServiceImpl extends ServiceImpl<MallVipBenefitsMapper, MallVipBenefits> implements IMallVipBenefitsService {
+
+ private final IMallVipBenefitsDetailsService mallVipBenefitsDetailsService;
@Override
public IPage<MallVipBenefits> vipBenefitsListInPage(QueryRequest request) {
@@ -28,4 +37,55 @@
public MallVipBenefits findVipBenefitsById(Long id) {
return this.baseMapper.selectVipBenefitsById(id);
}
+
+ @Override
+ @Transactional
+ 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
+ @Transactional
+ public void delVipBenefits(Long id) {
+ this.baseMapper.deleteById(id);
+
+ LambdaQueryWrapper<MallVipBenefitsDetails> delQuery = new LambdaQueryWrapper<>();
+ delQuery.eq(MallVipBenefitsDetails::getBenefitsId, id);
+ this.mallVipBenefitsDetailsService.remove(delQuery);
+ }
+
+ @Override
+ @Transactional
+ public void editVipBenefits(MallVipBenefits mallVipBenefits) {
+ if (mallVipBenefits.getId() == null) {
+ throw new FebsException("缺少重要参数");
+ }
+
+ this.baseMapper.updateById(mallVipBenefits);
+
+ LambdaQueryWrapper<MallVipBenefitsDetails> delQuery = new LambdaQueryWrapper<>();
+ delQuery.eq(MallVipBenefitsDetails::getBenefitsId, mallVipBenefits.getId());
+ this.mallVipBenefitsDetailsService.remove(delQuery);
+
+ mallVipBenefits.getDetails().forEach(item -> {
+ item.setBenefitsId(mallVipBenefits.getId());
+ });
+ this.mallVipBenefitsDetailsService.saveBatch(mallVipBenefits.getDetails());
+
+ }
+
+
}
--
Gitblit v1.9.1