From 0e2a59c08cf8797fbbb1acc2669773bea7de1711 Mon Sep 17 00:00:00 2001 From: Helius <wangdoubleone@gmail.com> Date: Tue, 23 Jan 2024 17:49:18 +0800 Subject: [PATCH] fix --- src/main/java/cc/mrbird/febs/vip/service/impl/MallVipConfigServiceImpl.java | 46 +++++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 45 insertions(+), 1 deletions(-) diff --git a/src/main/java/cc/mrbird/febs/vip/service/impl/MallVipConfigServiceImpl.java b/src/main/java/cc/mrbird/febs/vip/service/impl/MallVipConfigServiceImpl.java index c694413..d40e769 100644 --- a/src/main/java/cc/mrbird/febs/vip/service/impl/MallVipConfigServiceImpl.java +++ b/src/main/java/cc/mrbird/febs/vip/service/impl/MallVipConfigServiceImpl.java @@ -2,23 +2,67 @@ import cc.mrbird.febs.common.entity.QueryRequest; import cc.mrbird.febs.vip.entity.MallVipConfig; +import cc.mrbird.febs.vip.entity.MallVipConfigBenefits; +import cc.mrbird.febs.vip.mapper.MallVipConfigBenefitsMapper; import cc.mrbird.febs.vip.mapper.MallVipConfigMapper; +import cc.mrbird.febs.vip.service.IMallVipConfigBenefitsService; import cc.mrbird.febs.vip.service.IMallVipConfigService; +import cn.hutool.core.collection.CollUtil; +import cn.hutool.core.util.StrUtil; +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; + +import java.util.ArrayList; +import java.util.List; @Slf4j @Service @RequiredArgsConstructor public class MallVipConfigServiceImpl extends ServiceImpl<MallVipConfigMapper, MallVipConfig> implements IMallVipConfigService { + private final IMallVipConfigBenefitsService mallVipConfigBenefitsService; + @Override public IPage<MallVipConfig> vipConfigList(QueryRequest request) { - Page<MallVipConfig> page = new Page<>(request.getPageNum(), request.getPageNum()); + Page<MallVipConfig> page = new Page<>(request.getPageNum(), request.getPageSize()); return this.baseMapper.findVipConfigListInPage(page); } + + @Override + public List<MallVipConfig> findConfigList() { + return this.baseMapper.selectVipConfigList(); + } + + @Override + @Transactional + public void addVipConfig(MallVipConfig config) { + this.baseMapper.insert(config); + + List<MallVipConfigBenefits> configBenefitsList = new ArrayList<>(); + List<String> benefitsIds = StrUtil.split(config.getBenefitsIds(), ','); + benefitsIds.forEach(item -> { + MallVipConfigBenefits configBenefits = new MallVipConfigBenefits(); + configBenefits.setConfigId(config.getId()); + configBenefits.setBenefitsId(Long.parseLong(item)); + configBenefitsList.add(configBenefits); + }); + + mallVipConfigBenefitsService.saveBatch(configBenefitsList); + } + + @Override + @Transactional + public void delVipConfig(Long id) { + this.baseMapper.deleteById(id); + + LambdaQueryWrapper<MallVipConfigBenefits> delQuery = new LambdaQueryWrapper<>(); + delQuery.eq(MallVipConfigBenefits::getConfigId, id); + this.mallVipConfigBenefitsService.remove(delQuery); + } } -- Gitblit v1.9.1