From 3cf3900affbc4d5c06a9eb8b8028f164712a324f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=BE=BE=E5=AF=8C=E6=96=8C?= Date: Thu, 6 Nov 2025 21:29:31 +0800 Subject: [PATCH] =?UTF-8?q?fix=20(farm):=20=E9=A6=96=E9=A1=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 展示网箱集合,修复取值范围bug --- .../farm/service/home/HomeServiceImpl.java | 21 ++++++++++++++++--- 1 file changed, 18 insertions(+), 3 deletions(-) diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/service/home/HomeServiceImpl.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/service/home/HomeServiceImpl.java index 68d29ab4..2abe8add 100644 --- a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/service/home/HomeServiceImpl.java +++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/service/home/HomeServiceImpl.java @@ -218,6 +218,22 @@ public class HomeServiceImpl implements HomeService { List targetList = new ArrayList<>(); PlotInfoDO plotObj = plotInfoService.getPlotInfoByPlotId(plotId); List plans = productionPlanService.getProductionPlans(baseId,plotId); + // 网格信息 + List gridOverviewList = baseInfoService.getGridInfo(plotId); + Map> gridOverviewMap = gridOverviewList.stream() + .collect(Collectors.groupingBy(item -> { + String planNumber = item.getPlanNumber(); + if (planNumber == null) { + return "null"; + } + // 按 "(" 截取,取第一部分,并去空格 + int index = planNumber.indexOf("("); + if (index != -1) { + return planNumber.substring(0, index).trim(); + } + return planNumber.trim(); + })); + for (ProductionPlanDO e : plans) { SpeciesLibraryDO speciesLibrary = speciesLibraryService.getSpeciesLibrary(e.getPlantSpeciesCode()); if (ObjectUtils.isEmpty(speciesLibrary)) { @@ -233,8 +249,7 @@ public class HomeServiceImpl implements HomeService { int progressBarDenominator = modelManagementService.getFarmRecordCount(e.getSpeciesModelId()); // 任务进度 String progressBar = progressBarNumerator +"/"+progressBarDenominator; - // 网格信息 - List gridOverviewList = baseInfoService.getGridInfo(plotId); + PlanInfo target = new PlanInfo(); target.setBaseId(e.getBaseId()); @@ -257,7 +272,7 @@ public class HomeServiceImpl implements HomeService { String pointsInPolygon = LeafletjsUtil.generateRandomPointsInPolygon(plotObj.getPoint()); target.setPlanModelPoint(pointsInPolygon); target.setPlanModelImage(speciesLibrary.getImageList()); - target.setGridOverviewList(gridOverviewList); + target.setGridOverviewList(gridOverviewMap.get(e.getPlanNumber())); targetList.add(target); } return targetList;