fix
Hentua
2024-01-22 ab3413d4cd840aa9decf370dcac7f1ec42ae0c66
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);
    }
}