| | |
| | | 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; |
| | |
| | | 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; |
| | |
| | | import org.springframework.util.CollectionUtils; |
| | | |
| | | import java.util.ArrayList; |
| | | import java.util.Date; |
| | | import java.util.List; |
| | | import java.util.stream.Collectors; |
| | | |
| | |
| | | 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) { |
| | |
| | | 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("添加成功"); |
| | | } |
| | |
| | | Assert.notNull(vo, "记录不存在"); |
| | | return Result.ok().data(vo); |
| | | } |
| | | |
| | | /** |
| | | * 列表 |
| | | * @return |