From 2f67dbf8e585cbff4ed5737c08d0b0061e8b4d50 Mon Sep 17 00:00:00 2001 From: Administrator <15274802129@163.com> Date: Wed, 23 Apr 2025 17:50:20 +0800 Subject: [PATCH] refactor(mall): 重构投票活动相关接口和数据结构 --- src/main/java/cc/mrbird/febs/mall/service/impl/HappyActivityServiceImpl.java | 45 ++++++++++----------------------------------- 1 files changed, 10 insertions(+), 35 deletions(-) diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/HappyActivityServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/HappyActivityServiceImpl.java index 773d5c5..a0df434 100644 --- a/src/main/java/cc/mrbird/febs/mall/service/impl/HappyActivityServiceImpl.java +++ b/src/main/java/cc/mrbird/febs/mall/service/impl/HappyActivityServiceImpl.java @@ -7,6 +7,7 @@ import cc.mrbird.febs.common.utils.MallUtils; import cc.mrbird.febs.common.utils.ShareCodeUtil; import cc.mrbird.febs.mall.dto.*; +import cc.mrbird.febs.mall.dto.activity.ApiVoteOptionInPageDto; import cc.mrbird.febs.mall.entity.*; import cc.mrbird.febs.mall.mapper.*; import cc.mrbird.febs.mall.service.HappyActivityService; @@ -134,37 +135,11 @@ } @Override - public FebsResponse voteOptionList(Long id) { - ArrayList<ApiActivityOptionListVo> apiActivityOptionListVos = new ArrayList<>(); - - - HappyActivity happyActivity = this.baseMapper.selectById(id); - if(StateUpDownEnum.ACTIVITY_TYPE_VOTE.getCode() != happyActivity.getType()){ - throw new FebsException("投票活动才可获取投票选项"); - } - - List<HappyActivityOption> happyActivityOptions = happyActivityOptionMapper.selectList( - new LambdaQueryWrapper<HappyActivityOption>() - .select( - HappyActivityOption::getId, - HappyActivityOption::getOptionName, - HappyActivityOption::getRank, - HappyActivityOption::getLikesCnt, - HappyActivityOption::getImage - ) - .eq(HappyActivityOption::getActivityId,id) - .eq(HappyActivityOption::getState,StateUpDownEnum.VOTE_OPTION_STATE_AUDIT_SUCCESS.getCode()) - .eq(HappyActivityOption::getDeleteFlag,StateUpDownEnum.DOWN.getCode()) - .orderByAsc(HappyActivityOption::getRank) - ); - if(CollUtil.isNotEmpty(happyActivityOptions)){ - happyActivityOptions.forEach(option -> { - ApiActivityOptionListVo apiActivityOptionListVo = new ApiActivityOptionListVo(); - BeanUtil.copyProperties(option, apiActivityOptionListVo); - apiActivityOptionListVos.add(apiActivityOptionListVo); - }); - } - return new FebsResponse().success().data(apiActivityOptionListVos); + public FebsResponse voteOptionInPage(ApiVoteOptionInPageDto dto) { + // 创建分页对象,传入当前页和每页大小 + Page<ApiActivityOptionListVo> page = new Page<>(dto.getPageNow(), dto.getPageSize()); + Page<ApiActivityOptionListVo> voteRecordInPage = this.baseMapper.getVoteOptionInPage(page, dto); + return new FebsResponse().success().data(voteRecordInPage); } @Override @@ -252,7 +227,7 @@ } HappyActivityOption happyActivityOption = happyActivityOptionMapper.selectById(sourceOptionId); - if (happyActivityOption == null) { + if (null == happyActivityOption) { throw new FebsException("投票对象不存在"); } if (StateUpDownEnum.VOTE_OPTION_STATE_AUDIT_SUCCESS.getCode() != happyActivityOption.getState()) { @@ -268,17 +243,17 @@ .gt(HappyFollow::getCreatedTime, DateUtil.beginOfDay(new Date())) ); if (CollUtil.isNotEmpty(happyFollows) && happyFollows.size() >= happyActivity.getVoteCnt()){ - throw new FebsException("今日已经投票"); + throw new FebsException("今日已经投完票"); } + this.baseMapper.updateHappyActivityOptionLikeCnt(sourceOptionId); this.operateDoVote(memberId, sourceType, sourceId, sourceOptionId, type); - this.addLikeCnt(sourceOptionId); return new FebsResponse().success(); } @Override public FebsResponse voteRecordInPage(ApiVoteRecordInPageDto dto) { // 创建分页对象,传入当前页和每页大小 - Page<ApiActivityInfoVo> page = new Page<>(dto.getPageNow(), dto.getPageSize()); + Page<ApiVoteRecordInPageVo> page = new Page<>(dto.getPageNow(), dto.getPageSize()); Page<ApiVoteRecordInPageVo> voteRecordInPage = this.baseMapper.getVoteRecordInPage(page, dto); List<ApiVoteRecordInPageVo> records = voteRecordInPage.getRecords(); -- Gitblit v1.9.1