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/TConsultationController.java | 24 ++++++++++++++++++------ 1 files changed, 18 insertions(+), 6 deletions(-) diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TConsultationController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TConsultationController.java index 509b651..21b28ea 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TConsultationController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TConsultationController.java @@ -15,6 +15,7 @@ import com.ruoyi.web.controller.query.ConsultationQuery; import com.ruoyi.web.controller.query.InformationQuery; import io.swagger.annotations.ApiOperation; +import org.springframework.util.CollectionUtils; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; @@ -182,14 +183,25 @@ } } - + List<TConsultation> records = page.getRecords(); + if(CollectionUtils.isEmpty(records)){ + return R.ok(new Page<>()); + } Set<Long> cacheSet = redisCache.getCacheSet("Consultation:" + userId); - List<TRegion> regions = regionService.lambdaQuery().list(); - List<TTechnicalTitle> tTechnicalTitles = tTechnicalTitleService.lambdaQuery().list(); - List<TTitleMajor> tTitleMajors = majorService.lambdaQuery().list(); - List<TConsultationClassification> consultationClassifications = consultationClassificationService.lambdaQuery().list(); - for (TConsultation record : page.getRecords()) { + List<Integer> regionIds = records.stream().map(TConsultation::getRegionId).collect(Collectors.toList()); + List<TRegion> regions = regionService.lambdaQuery().in(TRegion::getId, regionIds).list(); + + List<Long> technicalIds = records.stream().map(TConsultation::getTitleId).collect(Collectors.toList()); + List<TTechnicalTitle> tTechnicalTitles = tTechnicalTitleService.lambdaQuery().in(TTechnicalTitle::getId, technicalIds).list(); + + List<Long> majorIds = records.stream().map(TConsultation::getMajorId).collect(Collectors.toList()); + List<TTitleMajor> tTitleMajors = majorService.lambdaQuery().in(TTitleMajor::getId, majorIds).list(); + + List<Long> classificationIds = records.stream().map(TConsultation::getClassificationId).collect(Collectors.toList()); + List<TConsultationClassification> consultationClassifications = consultationClassificationService.lambdaQuery().in(TConsultationClassification::getId, classificationIds).list(); + + for (TConsultation record : records) { TRegion region = regions.stream().filter(e -> e.getId().equals(record.getRegionId())).findFirst().orElse(null); TTechnicalTitle tTechnicalTitle = tTechnicalTitles.stream().filter(e -> e.getId().equals(record.getTitleId())).findFirst().orElse(null); TTitleMajor tTitleMajor = tTitleMajors.stream().filter(e -> e.getId().equals(record.getMajorId())).findFirst().orElse(null); -- Gitblit v1.7.1