From c37592f87c700d7301d595af7a8259c4f78040e7 Mon Sep 17 00:00:00 2001 From: peng <peng.com> Date: 星期三, 27 八月 2025 10:25:53 +0800 Subject: [PATCH] 抽奖活动 --- framework/src/main/java/cn/lili/modules/lmk/service/impl/PrizeActivityServiceImpl.java | 53 +++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 51 insertions(+), 2 deletions(-) diff --git a/framework/src/main/java/cn/lili/modules/lmk/service/impl/PrizeActivityServiceImpl.java b/framework/src/main/java/cn/lili/modules/lmk/service/impl/PrizeActivityServiceImpl.java index 08175bd..9ca5f23 100644 --- a/framework/src/main/java/cn/lili/modules/lmk/service/impl/PrizeActivityServiceImpl.java +++ b/framework/src/main/java/cn/lili/modules/lmk/service/impl/PrizeActivityServiceImpl.java @@ -1,8 +1,8 @@ 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.domain.vo.PrizeDetailVO; import cn.lili.modules.lmk.enums.general.PrizeActivityStatusEnum; import cn.lili.modules.lmk.service.ActivityRefPrizeService; import cn.lili.utils.COSUtil; @@ -11,10 +11,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 +27,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 +45,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鐨勬椿鍔ㄤ负寮圭獥娲诲姩锛屽皢鍏朵粬娲诲姩鐨勫脊绐楃姸鎬佹敼涓篺alse. + 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 +127,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 +218,6 @@ Assert.notNull(vo, "璁板綍涓嶅瓨鍦�"); return Result.ok().data(vo); } - /** * 鍒楄〃 * @return @@ -186,4 +230,9 @@ .collect(Collectors.toList()); return Result.ok().data(vos); } + + @Override + public PrizeDetailVO prizeInfo(String id) { + return prizeActivityMapper.prizeInfo(id); + } } -- Gitblit v1.8.0