From b6373daa40c3dc17ca107f3666fd252f3b6b0778 Mon Sep 17 00:00:00 2001 From: xuhy <3313886187@qq.com> Date: 星期五, 03 一月 2025 18:34:52 +0800 Subject: [PATCH] 代码 --- ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TAppUserController.java | 53 ++++++++++++++++++++++++++++++++++++----------------- 1 files changed, 36 insertions(+), 17 deletions(-) diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TAppUserController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TAppUserController.java index 80c0040..5c14ec0 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TAppUserController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TAppUserController.java @@ -25,6 +25,7 @@ import com.ruoyi.web.controller.query.dto.RegisterDto; import io.swagger.annotations.ApiOperation; import org.apache.poi.ss.usermodel.Workbook; +import org.springframework.util.CollectionUtils; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; @@ -279,6 +280,11 @@ .orderByDesc(TAppUser::getCreateTime) .page(Page.of(appUserQuery.getPageNum(), appUserQuery.getPageSize())); + List<TRegion> regions = regionService.lambdaQuery().list(); + List<TTechnicalTitle> tTechnicalTitles = tTechnicalTitleService.lambdaQuery().list(); + List<TTitleMajor> tTitleMajors = majorService.lambdaQuery().list(); + List<TLevel> levels = levelService.lambdaQuery().list(); + for (TAppUser record : page.getRecords()) { List<String> newString = new ArrayList<>(); //拿到最新的change @@ -286,11 +292,11 @@ if (newest!=null){ List<TUserChangeDetail> list = tUserChangeDetailService.lambdaQuery().eq(TUserChangeDetail::getChangeId, newest.getId()).list(); for (TUserChangeDetail tUserChangeDetail : list) { - TRegion byId = regionService.getById(tUserChangeDetail.getRegionId()); - TTechnicalTitle byId1 = tTechnicalTitleService.getById(tUserChangeDetail.getTitleId()); - TTitleMajor byId2 = majorService.getById(tUserChangeDetail.getMajorId()); - TLevel byId3 = levelService.getById(tUserChangeDetail.getLevelId()); - newString.add(byId.getName()+"-"+byId1.getTitileName()+"-"+byId2.getMajorName()+"-"+byId3.getName()); + TRegion region = regions.stream().filter(e -> e.getId().equals(tUserChangeDetail.getRegionId())).findFirst().orElse(null); + TTechnicalTitle tTechnicalTitle = tTechnicalTitles.stream().filter(e -> e.getId().equals(tUserChangeDetail.getTitleId())).findFirst().orElse(null); + TTitleMajor tTitleMajor = tTitleMajors.stream().filter(e -> e.getId().equals(tUserChangeDetail.getMajorId())).findFirst().orElse(null); + TLevel tLevel = levels.stream().filter(e -> e.getId().equals(tUserChangeDetail.getLevelId())).findFirst().orElse(null); + newString.add(region.getName()+"-"+tTechnicalTitle.getTitileName()+"-"+tTitleMajor.getMajorName()+"-"+tLevel.getName()); } } @@ -301,11 +307,11 @@ if (latest!=null){ List<TUserChangeDetail> list = tUserChangeDetailService.lambdaQuery().eq(TUserChangeDetail::getChangeId, latest.getId()).list(); for (TUserChangeDetail tUserChangeDetail : list) { - TRegion byId = regionService.getById(tUserChangeDetail.getRegionId()); - TTechnicalTitle byId1 = tTechnicalTitleService.getById(tUserChangeDetail.getTitleId()); - TTitleMajor byId2 = majorService.getById(tUserChangeDetail.getMajorId()); - TLevel byId3 = levelService.getById(tUserChangeDetail.getLevelId()); - lateString.add(byId.getName()+"-"+byId1.getTitileName()+"-"+byId2.getMajorName()+"-"+byId3.getName()); + TRegion region = regions.stream().filter(e -> e.getId().equals(tUserChangeDetail.getRegionId())).findFirst().orElse(null); + TTechnicalTitle tTechnicalTitle = tTechnicalTitles.stream().filter(e -> e.getId().equals(tUserChangeDetail.getTitleId())).findFirst().orElse(null); + TTitleMajor tTitleMajor = tTitleMajors.stream().filter(e -> e.getId().equals(tUserChangeDetail.getMajorId())).findFirst().orElse(null); + TLevel tLevel = levels.stream().filter(e -> e.getId().equals(tUserChangeDetail.getLevelId())).findFirst().orElse(null); + lateString.add(region.getName()+"-"+tTechnicalTitle.getTitileName()+"-"+tTitleMajor.getMajorName()+"-"+tLevel.getName()); } } @@ -402,13 +408,26 @@ endTime = appUserQuery.getCreateTime2().atTime(23, 59, 59, 999999999); } - List<TAppUser> page = appUserService.lambdaQuery().like(appUserQuery.getName() != null, TAppUser::getName, appUserQuery.getName()) - .like(appUserQuery.getPhone() != null, TAppUser::getPhone, appUserQuery.getPhone()) - .eq(appUserQuery.getStatus() != null, TAppUser::getStatus, appUserQuery.getStatus()) - .ge(appUserQuery.getCreateTime1() != null, TAppUser::getCreateTime, startTime) - .le(appUserQuery.getCreateTime2() != null, TAppUser::getCreateTime, endTime) - .in(finalIds.size() > 0, TAppUser::getId, finalIds).list() - ; + int pageSize = 100; + int currentPage = 0; + List<TAppUser> page = new ArrayList<>(); + + while (true) { + Page<TAppUser> pageItems = appUserService.lambdaQuery().like(appUserQuery.getName() != null, TAppUser::getName, appUserQuery.getName()) + .like(appUserQuery.getPhone() != null, TAppUser::getPhone, appUserQuery.getPhone()) + .eq(appUserQuery.getStatus() != null, TAppUser::getStatus, appUserQuery.getStatus()) + .ge(appUserQuery.getCreateTime1() != null, TAppUser::getCreateTime,startTime) + .le(appUserQuery.getCreateTime2() != null, TAppUser::getCreateTime,endTime) + .in(finalIds.size() > 0, TAppUser::getId, finalIds) + .orderByDesc(TAppUser::getCreateTime) + .page(Page.of(currentPage * pageSize, pageSize)); + List<TAppUser> records = pageItems.getRecords(); + if (CollectionUtils.isEmpty(records)) { + break; // 没有更多数据,退出循环 + } + page.addAll(records); // 累加当前页数据 + currentPage++; // 进入下一页 + } List<Long> collect = page.stream().map(TAppUser::getId).collect(Collectors.toList()); Map<Long, TUserChange> collect1 = tUserChangeService.lambdaQuery() .in(TUserChange::getUserId, collect).orderByDesc(TUserChange::getCreateTime).list() -- Gitblit v1.7.1