Administrator
3 days ago d47ce28eb552612887f9b75c0ffe0d7471d0ab86
src/main/java/cc/mrbird/febs/mall/service/impl/AdminMemberLevelServiceImpl.java
@@ -3,18 +3,21 @@
import cc.mrbird.febs.common.entity.FebsResponse;
import cc.mrbird.febs.common.entity.QueryRequest;
import cc.mrbird.febs.common.enumerates.StateUpDownEnum;
import cc.mrbird.febs.mall.dto.memberLevel.AdminMemberLevelAddDto;
import cc.mrbird.febs.mall.dto.memberLevel.AdminMemberLevelDto;
import cc.mrbird.febs.mall.dto.memberLevel.AdminMemberLevelUpdateDto;
import cc.mrbird.febs.mall.entity.HappyActivityCategory;
import cc.mrbird.febs.mall.entity.HappyMemberLevel;
import cc.mrbird.febs.mall.dto.memberLevel.*;
import cc.mrbird.febs.mall.entity.*;
import cc.mrbird.febs.mall.mapper.HappyMemberLabelMapper;
import cc.mrbird.febs.mall.mapper.HappyMemberLabelRecordMapper;
import cc.mrbird.febs.mall.mapper.HappyMemberLevelMapper;
import cc.mrbird.febs.mall.mapper.HappySaleLevelMapper;
import cc.mrbird.febs.mall.service.AdminMemberLevelService;
import cc.mrbird.febs.mall.vo.memberLevel.AdminMemberLabelSetDto;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.ObjectUtil;
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.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import lombok.RequiredArgsConstructor;
@@ -31,6 +34,9 @@
public class AdminMemberLevelServiceImpl extends ServiceImpl<HappyMemberLevelMapper, HappyMemberLevel> implements AdminMemberLevelService {
    private final HappyMemberLevelMapper happyMemberLevelMapper;
    private final HappySaleLevelMapper happySaleLevelMapper;
    private final HappyMemberLabelMapper happyMemberLabelMapper;
    private final HappyMemberLabelRecordMapper happyMemberLabelRecordMapper;
    @Override
    public IPage<HappyMemberLevel> getLevelListInPage(AdminMemberLevelDto dto, QueryRequest request) {
@@ -42,11 +48,46 @@
    }
    @Override
    public IPage<HappyMemberLabel> getLabelListInPage(AdminMemberLabelDto dto, QueryRequest request) {
        Page<HappyMemberLabel> page = new Page<>(request.getPageNum(), request.getPageSize());
        LambdaQueryWrapper<HappyMemberLabel> lambdaQueryWrapper = new LambdaQueryWrapper<>();
        lambdaQueryWrapper.orderByAsc(HappyMemberLabel::getId);
        Page<HappyMemberLabel>  happyMemberLevelPage = happyMemberLabelMapper.selectPage(page, lambdaQueryWrapper);
        return happyMemberLevelPage;
    }
    @Override
    public FebsResponse levelAdd(AdminMemberLevelAddDto dto) {
        HappyMemberLevel happyMemberLevel = new HappyMemberLevel();
        BeanUtil.copyProperties(dto, happyMemberLevel);
        happyMemberLevelMapper.insert(happyMemberLevel);
        return new FebsResponse().success().message("操作成功");
    }
    @Override
    public FebsResponse labelAdd(AdminMemberLabelAddDto dto) {
        HappyMemberLabel happyMemberLabel = new HappyMemberLabel();
        BeanUtil.copyProperties(dto, happyMemberLabel);
        Integer code = 0;
        if(ObjectUtil.isEmpty(dto.getParentId())){
            code = dto.getCode();
        }
        happyMemberLabel.setCode(code);
        happyMemberLabelMapper.insert(happyMemberLabel);
        return new FebsResponse().success().message("操作成功");
    }
    @Override
    public FebsResponse parentAll() {
        List<HappyMemberLabel> happyMemberLabels = happyMemberLabelMapper.selectList(
                Wrappers.lambdaQuery(HappyMemberLabel.class)
                        .select(HappyMemberLabel::getId, HappyMemberLabel::getName)
                        .eq(HappyMemberLabel::getParentId, 0)
                .eq(HappyMemberLabel::getCode,1)
        );
        return new FebsResponse().success().data(happyMemberLabels);
    }
    @Override
@@ -60,12 +101,91 @@
    }
    @Override
    public FebsResponse labelUpdate(AdminMemberLabelUpdateDto dto) {
        HappyMemberLabel happyMemberLabel = happyMemberLabelMapper.selectById(dto.getId());
        if (ObjectUtil.isNotNull(happyMemberLabel)) {
            BeanUtil.copyProperties(dto, happyMemberLabel);
            Integer code = 0;
            Long parentId = 0L;
            if(ObjectUtil.isEmpty(dto.getParentId())){
                code = dto.getCode();
            }else{
                parentId = dto.getParentId();
            }
            happyMemberLabel.setCode(code);
            happyMemberLabel.setParentId(parentId);
            happyMemberLabelMapper.updateById(happyMemberLabel);
        }
        return new FebsResponse().success().message("操作成功");
    }
    @Override
    public FebsResponse labelMemberSet(AdminMemberLabelSetDto dto) {
        Long labelId = dto.getLabelId();
        List<Long> memberIdList = dto.getMemberIdList();
        HappyMemberLabel happyMemberLabel = happyMemberLabelMapper.selectById(labelId);
        if (ObjectUtil.isNotEmpty(happyMemberLabel)) {
            LambdaQueryWrapper<HappyMemberLabelRecord> happyMemberLabelRecordLambdaQueryWrapper = new LambdaQueryWrapper<>();
            happyMemberLabelRecordLambdaQueryWrapper.eq(HappyMemberLabelRecord::getLabelId,labelId);
            happyMemberLabelRecordMapper.delete(happyMemberLabelRecordLambdaQueryWrapper);
            if(CollUtil.isNotEmpty(memberIdList)){
                for (Long memberId:memberIdList){
                    HappyMemberLabelRecord happyMemberLabelRecord = new HappyMemberLabelRecord();
                    happyMemberLabelRecord.setMemberId(memberId);
                    happyMemberLabelRecord.setLabelId(labelId);
                    happyMemberLabelRecordMapper.insert(happyMemberLabelRecord);
                }
            }
        }
        return new FebsResponse().success().message("操作成功");
    }
    @Override
    public FebsResponse levelAll() {
        List<HappyMemberLevel> happyMemberLevels = happyMemberLevelMapper.selectList(
                new LambdaQueryWrapper<HappyMemberLevel>()
                        .select(HappyMemberLevel::getId, HappyMemberLevel::getName)
                        .select(HappyMemberLevel::getCode, HappyMemberLevel::getName)
                        .orderByAsc(HappyMemberLevel::getId)
        );
        return new FebsResponse().success().data(happyMemberLevels);
    }
    @Override
    public IPage<HappySaleLevel> getSaleLevelListInPage(AdminSaleLevelDto dto, QueryRequest request) {
        Page<HappySaleLevel> page = new Page<>(request.getPageNum(), request.getPageSize());
        LambdaQueryWrapper<HappySaleLevel> lambdaQueryWrapper = new LambdaQueryWrapper<>();
        lambdaQueryWrapper.orderByAsc(HappySaleLevel::getId);
        Page<HappySaleLevel>  happyMemberLevelPage = happySaleLevelMapper.selectPage(page, lambdaQueryWrapper);
        return happyMemberLevelPage;
    }
    @Override
    public FebsResponse saleAdd(AdminSaleLevelAddDto dto) {
        HappySaleLevel happySaleLevel = new HappySaleLevel();
        BeanUtil.copyProperties(dto, happySaleLevel);
        happySaleLevelMapper.insert(happySaleLevel);
        return new FebsResponse().success().message("操作成功");
    }
    @Override
    public FebsResponse saleUpdate(AdminSaleLevelUpdateDto dto) {
        HappySaleLevel happySaleLevel = happySaleLevelMapper.selectById(dto.getId());
        if (ObjectUtil.isNotNull(happySaleLevel)) {
            BeanUtil.copyProperties(dto, happySaleLevel);
            happySaleLevelMapper.updateById(happySaleLevel);
        }
        return new FebsResponse().success().message("操作成功");
    }
    @Override
    public FebsResponse saleLevelAll() {
        List<HappySaleLevel> happySaleLevels = happySaleLevelMapper.selectList(
                new LambdaQueryWrapper<HappySaleLevel>()
                        .select(HappySaleLevel::getCode, HappySaleLevel::getName)
                        .orderByAsc(HappySaleLevel::getId)
        );
        return new FebsResponse().success().data(happySaleLevels);
    }
}