zxl
昨天 f0893131c84e18a40daa04b73c0573aac989f9d2
framework/src/main/java/cn/lili/modules/lmk/service/impl/PrizeActivityServiceImpl.java
@@ -1,7 +1,6 @@
package cn.lili.modules.lmk.service.impl;
import cn.lili.common.utils.StringUtils;
import cn.lili.modules.lmk.domain.entity.ActivityRefPrize;
import cn.lili.modules.lmk.domain.vo.ActivityRefPrizeInfoVO;
import cn.lili.modules.lmk.enums.general.PrizeActivityStatusEnum;
import cn.lili.modules.lmk.service.ActivityRefPrizeService;
@@ -11,10 +10,14 @@
import cn.lili.modules.lmk.mapper.PrizeActivityMapper;
import cn.lili.modules.lmk.service.PrizeActivityService;
import cn.lili.base.Result;
import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper;
import com.baomidou.mybatisplus.extension.conditions.update.LambdaUpdateChainWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import cn.lili.modules.lmk.domain.form.PrizeActivityForm;
import cn.lili.modules.lmk.domain.vo.PrizeActivityVO;
import cn.lili.modules.lmk.domain.query.PrizeActivityQuery;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
import org.springframework.stereotype.Service;
import lombok.RequiredArgsConstructor;
import cn.lili.utils.PageUtil;
@@ -23,6 +26,7 @@
import org.springframework.util.CollectionUtils;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.stream.Collectors;
@@ -40,6 +44,45 @@
    private final PrizeActivityMapper prizeActivityMapper;
    private final COSUtil cOSUtil;
    @Override
    public Result getPopup() {
        //获得弹窗活动
        PrizeActivity prizeActivity = new LambdaQueryChainWrapper<>(baseMapper)
                .eq(PrizeActivity::getDeleteFlag,Boolean.FALSE)
                .eq(PrizeActivity::getPopup,Boolean.TRUE)
                .one();
        PrizeActivityVO prizeActivityVO = new PrizeActivityVO();
        PrizeActivityVO vo = PrizeActivityVO.getVoByEntity(prizeActivity, prizeActivityVO);
        if (StringUtils.isNotBlank(vo.getActivityCover())){
            vo.setActivityCoverUrl(cOSUtil.getPreviewUrl(vo.getActivityCover()));
        }
        return Result.ok().data(prizeActivityVO);
    }
    @Override
    public Result popup(String id){
        //设置id的活动为弹窗活动,将其他活动的弹窗状态改为false.
        PrizeActivity prizeActivity = baseMapper.selectById(id);
        if (prizeActivity.getPopup()){
            prizeActivity.setPopup(Boolean.FALSE);
            prizeActivityMapper.updateById(prizeActivity);
            return Result.ok("取消弹窗活动成功!");
        }else {
            prizeActivity.setPopup(Boolean.TRUE);
            //修改其他活动的推荐状态后,修改该对象的修改状态
            prizeActivityMapper.updateById(prizeActivity);
            new LambdaUpdateChainWrapper<>(baseMapper).eq(PrizeActivity::getPopup,Boolean.TRUE)
                    .eq(PrizeActivity::getDeleteFlag,Boolean.FALSE)
                    .set(PrizeActivity::getPopup, Boolean.FALSE)
                    .ne(PrizeActivity::getId, prizeActivity.getId())
                    .set(PrizeActivity::getUpdateTime, new Date())
                    .update();
            return Result.ok("弹窗活动开启成功");
        }
    }
    @Override
    public Result publishPrizeActivity(String id) {
@@ -83,6 +126,7 @@
    public Result add(PrizeActivityForm form) {
        PrizeActivity entity = PrizeActivityForm.getEntityByForm(form, null);
        entity.setEnableStatus(PrizeActivityStatusEnum.OFF.name());
        entity.setPopup(Boolean.FALSE);
        baseMapper.insert(entity);
        return Result.ok("添加成功");
    }
@@ -173,7 +217,6 @@
        Assert.notNull(vo, "记录不存在");
        return Result.ok().data(vo);
    }
    /**
     * 列表
     * @return