| | |
| | | import com.ruoyi.goods.domain.dto.MgtActivityEditDto; |
| | | import com.ruoyi.goods.domain.dto.MgtActivityGoodsEditDto; |
| | | import com.ruoyi.goods.domain.dto.MgtActivityPageDto; |
| | | import com.ruoyi.goods.domain.dto.MgtActivityRecordPageDto; |
| | | import com.ruoyi.goods.domain.pojo.activity.Activity; |
| | | import com.ruoyi.goods.domain.pojo.activity.ActivityTotal; |
| | | import com.ruoyi.goods.domain.vo.MgtActivityGetVo; |
| | | import com.ruoyi.goods.domain.vo.MgtActivityGoodsListVo; |
| | | import com.ruoyi.goods.domain.vo.MgtActivityPageVo; |
| | | import com.ruoyi.goods.domain.vo.MgtActivityRecordPageVo; |
| | | import com.ruoyi.goods.mapper.activity.ActivityMapper; |
| | | import com.ruoyi.goods.service.activity.ActivityGoodsService; |
| | | import com.ruoyi.goods.service.activity.ActivityService; |
| | |
| | | import com.ruoyi.goods.service.activity.ActivityTotalService; |
| | | import com.ruoyi.system.api.constant.AppErrorConstant; |
| | | import com.ruoyi.system.api.domain.dto.MgtBaseBathDto; |
| | | import com.ruoyi.system.api.domain.dto.MgtUserIdByKeywordDto; |
| | | import com.ruoyi.system.api.domain.poji.activity.ActivityGoods; |
| | | import com.ruoyi.system.api.domain.vo.MgtSimpleMemberVo; |
| | | import com.ruoyi.system.api.domain.vo.MgtSimpleShopVo; |
| | | import com.ruoyi.system.api.domain.vo.MgtUserIdByKeywordVo; |
| | | import com.ruoyi.system.api.service.RemoteMemberService; |
| | | import com.ruoyi.system.api.service.RemoteShopService; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | import javax.annotation.Resource; |
| | | import java.math.BigDecimal; |
| | | import java.util.Date; |
| | | import java.util.HashSet; |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | import java.util.function.Function; |
| | | import java.util.stream.Collectors; |
| | | |
| | | /** |
| | |
| | | |
| | | @Resource |
| | | private RemoteShopService remoteShopService; |
| | | |
| | | @Resource |
| | | private RemoteMemberService remoteMemberService; |
| | | |
| | | /** |
| | | * @param mgtActivityEditDto |
| | | * @return void |
| | |
| | | activity.setActivityStatus(-1); |
| | | this.saveOrUpdate(activity); |
| | | } |
| | | |
| | | /** |
| | | * @description 分页获取活动参与记录列表 |
| | | * @param mgtActivityRecordPageDto |
| | | * @return MgtActivityRecordPageVo |
| | | * @author jqs34 |
| | | * @date 2023/6/24 16:58 |
| | | */ |
| | | @Override |
| | | public List<MgtActivityRecordPageVo> pageMgtActivityRecord(Page page, MgtActivityRecordPageDto mgtActivityRecordPageDto){ |
| | | if(StringUtils.isNotBlank(mgtActivityRecordPageDto.getKeyword())){ |
| | | MgtUserIdByKeywordDto mgtUserIdByKeywordDto = new MgtUserIdByKeywordDto(); |
| | | mgtUserIdByKeywordDto.setKeyword(mgtActivityRecordPageDto.getKeyword()); |
| | | MgtUserIdByKeywordVo mgtUserIdByKeywordVo = remoteMemberService.getUserIdByKeyword(mgtUserIdByKeywordDto).getData(); |
| | | if(StringUtils.isNotBlank(mgtUserIdByKeywordVo.getUserIds())){ |
| | | mgtActivityRecordPageDto.setUserIds(mgtUserIdByKeywordVo.getUserIds()); |
| | | } |
| | | } |
| | | List<MgtActivityRecordPageVo> activityRecordPageVoList = activityMapper.pageMgtActivityRecord(page, mgtActivityRecordPageDto); |
| | | if(!activityRecordPageVoList.isEmpty()){ |
| | | // 定义变量 |
| | | HashSet<Long> userIdSet = new HashSet<>(); |
| | | // 遍历列表,用户 ID |
| | | for (MgtActivityRecordPageVo mgtActivityRecordPageVo : activityRecordPageVoList) { |
| | | userIdSet.add(mgtActivityRecordPageVo.getUserId()); |
| | | } |
| | | // 将店铺 ID 和用户 ID 转换为逗号分隔的字符串 |
| | | String userJoinedString = String.join(",", userIdSet.stream().map(Object::toString).collect(Collectors.toList())); |
| | | // 从远程服务获取店铺和用户信息 |
| | | MgtBaseBathDto mgtBaseBathDto = new MgtBaseBathDto(); |
| | | mgtBaseBathDto = new MgtBaseBathDto(); |
| | | mgtBaseBathDto.setIds(userJoinedString); |
| | | List<MgtSimpleMemberVo> simpleMemberVoList = remoteMemberService.listSimpleVoByIds(mgtBaseBathDto).getData(); |
| | | Map<Long, MgtSimpleMemberVo> userMap = simpleMemberVoList.stream() |
| | | .collect(Collectors.toMap(MgtSimpleMemberVo::getUserId, Function.identity())); |
| | | for (MgtActivityRecordPageVo mgtActivityRecordPageVo : activityRecordPageVoList) { |
| | | mgtActivityRecordPageVo.setNickName(userMap.get(mgtActivityRecordPageVo.getUserId()).getNickName()+"/"+(userMap.get(mgtActivityRecordPageVo.getUserId()).getRealName())); |
| | | mgtActivityRecordPageVo.setMobile(userMap.get(mgtActivityRecordPageVo.getUserId()).getUserMobile()); |
| | | } |
| | | } |
| | | return activityRecordPageVoList; |
| | | } |
| | | } |