| | |
| | | import cn.lili.modules.lmk.domain.entity.*; |
| | | import cn.lili.modules.lmk.domain.form.AddPrizeNumForm; |
| | | import cn.lili.modules.lmk.domain.query.PrizeRecordTimeQuery; |
| | | import cn.lili.modules.lmk.domain.vo.PrizeDetailVO; |
| | | import cn.lili.modules.lmk.domain.vo.PrizeProbabilityVO; |
| | | import cn.lili.modules.lmk.domain.vo.PrizeRecordTimeVO; |
| | | import cn.lili.modules.lmk.domain.vo.PrizeResultVO; |
| | | import cn.lili.modules.lmk.domain.vo.*; |
| | | import cn.lili.modules.lmk.enums.general.*; |
| | | import cn.lili.modules.lmk.service.*; |
| | | import cn.lili.modules.member.entity.dos.Member; |
| | |
| | | @Override |
| | | public Result getPrizeRule() { |
| | | List<AddPrizeRule> list = addPrizeRuleService.list(Wrappers.<AddPrizeRule>lambdaQuery().orderByDesc(AddPrizeRule::getId)); |
| | | AuthUser currentUser = UserContext.getCurrentUser(); |
| | | if (Objects.nonNull(currentUser)) { |
| | | String id = currentUser.getId(); |
| | | LambdaQueryWrapper<PrizeActivity> eq = Wrappers.<PrizeActivity>lambdaQuery() |
| | | .eq(PrizeActivity::getDeleteFlag, Boolean.FALSE) |
| | | .eq(PrizeActivity::getEnableStatus, PrizeActivityStatusEnum.ON.name()) |
| | | .eq(PrizeActivity::getPopup, Boolean.TRUE); |
| | | List<PrizeActivity> activities = prizeActivityService.list(eq); |
| | | PrizeActivity activity = activities.get(0); |
| | | if (Objects.nonNull(activity)) { |
| | | try { |
| | | List<PrizeNumber> prizeNumberList = getPrizeNumberList(activity.getId(), id); |
| | | Set<String> completedActionSet = prizeNumberList.stream().map(PrizeNumber::getUserAction).collect(Collectors.toSet()); |
| | | List<AddPrizeRule> finalRuleList = list.stream() |
| | | .map(rule -> { |
| | | if (Objects.isNull(rule.getRuleCode())) { |
| | | return rule; |
| | | } |
| | | boolean isCompleted = completedActionSet.contains(rule.getRuleCode()); |
| | | if (!isCompleted) { |
| | | return rule; |
| | | } |
| | | AddPrizeRule completedRule = new AddPrizeRule(); |
| | | BeanUtils.copyProperties(rule, completedRule); |
| | | String originalName = Optional.ofNullable(completedRule.getRuleName()).orElse(""); |
| | | if (!originalName.contains("(已完成)")) { |
| | | completedRule.setRuleName(originalName + "(已完成)"); |
| | | } |
| | | return completedRule; |
| | | }).collect(Collectors.toList()); |
| | | return Result.ok().data(finalRuleList); |
| | | } catch (Exception e) { |
| | | return Result.ok().data(list); |
| | | } |
| | | } |
| | | } |
| | | return Result.ok().data(list); |
| | | } |
| | | } |