diff --git a/lottery-system/lottery-pojo/src/main/java/com/lottery/dto/SimpleQueryDto.java b/lottery-system/lottery-pojo/src/main/java/com/lottery/dto/SimpleQueryDto.java new file mode 100644 index 0000000..e88cd87 --- /dev/null +++ b/lottery-system/lottery-pojo/src/main/java/com/lottery/dto/SimpleQueryDto.java @@ -0,0 +1,19 @@ +package com.lottery.dto; + +import lombok.Data; + +/** + * @program: lottery + * @ClassName SimpleQueryDto + * @description: + * @author: wwl + * @create: 2025-07-24 16:06 + * @Version 1.0 + **/ +@Data +public class SimpleQueryDto { + + private Integer pageNum; + + private Integer pageSize; +} diff --git a/lottery-system/lottery-service/src/main/java/com/lottery/admin/service/AdminWinService.java b/lottery-system/lottery-service/src/main/java/com/lottery/admin/service/AdminWinService.java index 0cadb53..9d1a67f 100644 --- a/lottery-system/lottery-service/src/main/java/com/lottery/admin/service/AdminWinService.java +++ b/lottery-system/lottery-service/src/main/java/com/lottery/admin/service/AdminWinService.java @@ -28,5 +28,5 @@ public interface AdminWinService extends IService { void exportWinUser(WinUserQueryDto winUserQueryDto, HttpServletResponse response) throws IOException; - PageInfo listWinUserWin(); + PageInfo listWinUserWin(int pageNum, int pageSize); } diff --git a/lottery-system/lottery-service/src/main/java/com/lottery/admin/service/Impl/AdminWinServiceImpl.java b/lottery-system/lottery-service/src/main/java/com/lottery/admin/service/Impl/AdminWinServiceImpl.java index ed3fad6..54e6ce4 100644 --- a/lottery-system/lottery-service/src/main/java/com/lottery/admin/service/Impl/AdminWinServiceImpl.java +++ b/lottery-system/lottery-service/src/main/java/com/lottery/admin/service/Impl/AdminWinServiceImpl.java @@ -183,8 +183,8 @@ public class AdminWinServiceImpl extends ServiceImpl listWinUserWin() { - return this.listWinUser(1, Integer.MAX_VALUE, new WinUserQueryDto()); + public PageInfo listWinUserWin(int pageNum, int pageSize) { + return this.listWinUser(pageNum, pageSize, new WinUserQueryDto()); } diff --git a/lottery-system/lottery-service/src/main/java/com/lottery/api/controller/WinUserController.java b/lottery-system/lottery-service/src/main/java/com/lottery/api/controller/WinUserController.java index 084a642..508c6bd 100644 --- a/lottery-system/lottery-service/src/main/java/com/lottery/api/controller/WinUserController.java +++ b/lottery-system/lottery-service/src/main/java/com/lottery/api/controller/WinUserController.java @@ -3,6 +3,8 @@ package com.lottery.api.controller; import com.lottery.admin.mapper.AdminUserMapper; import com.lottery.admin.service.AdminWinService; import com.lottery.api.service.WinUserService; +import com.lottery.dto.SimpleQueryDto; +import com.lottery.dto.WinUserQueryDto; import com.lottery.result.Result; import com.lottery.vo.PageInfo; import com.lottery.vo.WinUserVo; @@ -32,9 +34,15 @@ public class WinUserController { private AdminWinService adminWinService; @PostMapping("/list") - public Result> list(){ - LOGGER.info("查询所有中奖用户"); - return Result.success(adminWinService.listWinUserWin()); + public Result> list(SimpleQueryDto simpleQueryDto){ + LOGGER.info("分页查询所有中奖用户"); + if (simpleQueryDto.getPageNum() == null) { + simpleQueryDto.setPageNum(1); + } + if (simpleQueryDto.getPageSize() == null) { + simpleQueryDto.setPageSize(10); + } + return Result.success(adminWinService.listWinUserWin(simpleQueryDto.getPageNum(), simpleQueryDto.getPageSize())); //return Result.success(); } } diff --git a/lottery-system/lottery-service/src/main/java/com/lottery/api/service/Impl/UserDetailServiceImpl.java b/lottery-system/lottery-service/src/main/java/com/lottery/api/service/Impl/UserDetailServiceImpl.java index cc4ff3f..40c3f3e 100644 --- a/lottery-system/lottery-service/src/main/java/com/lottery/api/service/Impl/UserDetailServiceImpl.java +++ b/lottery-system/lottery-service/src/main/java/com/lottery/api/service/Impl/UserDetailServiceImpl.java @@ -2,6 +2,7 @@ package com.lottery.api.service.Impl; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; +import com.baomidou.mybatisplus.core.toolkit.CollectionUtils; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.lottery.admin.controller.AdminPrizeController; import com.lottery.admin.mapper.AdminPrizeMapper; @@ -186,12 +187,12 @@ public class UserDetailServiceImpl extends ServiceImpl allAvailableUsers = getAllAvailableUsers(startLotteryDto.getGradeId()); // 再次确保不包含任何内定用户 - allAvailableUsers = allAvailableUsers.stream() - .filter(user -> { - UserDetail detail = userDetailMapper.selectById(user.getId()); - return detail == null || detail.getIsFixed() != 1; - }) - .collect(Collectors.toList()); +// allAvailableUsers = allAvailableUsers.stream() +// .filter(user -> { +// UserDetail detail = userDetailMapper.selectById(user.getId()); +// return detail == null || detail.getIsFixed() != 1; +// }) +// .collect(Collectors.toList()); List supplementWinners = randomSelectUsers( allAvailableUsers, @@ -222,7 +223,7 @@ public class UserDetailServiceImpl extends ServiceImpl getAvailableFixedUsers(List fixedUsers) { List availableUsers = new ArrayList<>(); for (UserDetail userDetail : fixedUsers) { @@ -237,6 +238,23 @@ public class UserDetailServiceImpl extends ServiceImpl getAvailableFixedUsers(List fixedUsers) { +// if (CollectionUtils.isEmpty(fixedUsers)) { +// return Collections.emptyList(); +// } +// +// List userIds = fixedUsers.stream() +// .map(UserDetail::getUserId) +// .collect(Collectors.toList()); +// +// LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>() +// .in(User::getId, userIds) +// .eq(User::getIsDel, 0) +// .eq(User::getIsWin, 0); +// +// return userMapper.selectList(wrapper); +// } + // 获取所有其他等奖的内定用户(排除当前等级) private List getOtherGradeFixedUsers(Long excludeGradeId) { LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>();