From d5e73e245492efe38759ed8d466048fd3261ed27 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:07:26 +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 - 展示网箱集合 --- .../module/farm/controller/admin/home/vo/HomeInfo.java | 5 +++++ .../module/farm/service/baseinfo/BaseInfoService.java | 7 +++++++ .../module/farm/service/baseinfo/BaseInfoServiceImpl.java | 5 +++++ .../yudao/module/farm/service/home/HomeServiceImpl.java | 8 +++++++- 4 files changed, 24 insertions(+), 1 deletion(-) diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/home/vo/HomeInfo.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/home/vo/HomeInfo.java index 2d36194c..7f350e1d 100644 --- a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/home/vo/HomeInfo.java +++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/home/vo/HomeInfo.java @@ -1,5 +1,6 @@ package cn.iocoder.yudao.module.farm.controller.admin.home.vo; +import cn.iocoder.yudao.module.farm.controller.admin.cropfarmingcenter.vo.grid.ProductionPlanGridRespVO; import cn.iocoder.yudao.module.farm.controller.admin.managementcenter.baseinfo.vo.PlotLesseeDetailsRespVO; import io.swagger.v3.oas.annotations.media.Schema; import lombok.AllArgsConstructor; @@ -164,6 +165,8 @@ public class HomeInfo { private String manager; @Schema(description = "二维码Url") private String qrCodeUrl; + @Schema(description = "网箱总数") + private String gridRatio; @Schema(description = "计划集合") private List planInfos; } @@ -210,5 +213,7 @@ public class HomeInfo { private String planModelPoint; @Schema(description = "计划模型-物种图片") private List planModelImage; + @Schema(description = "网格信息") + private List gridOverviewList; } } diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/service/baseinfo/BaseInfoService.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/service/baseinfo/BaseInfoService.java index f5f6dc48..4e6afb2e 100644 --- a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/service/baseinfo/BaseInfoService.java +++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/service/baseinfo/BaseInfoService.java @@ -6,6 +6,7 @@ import cn.iocoder.yudao.module.farm.controller.admin.api.vo.FarmBaseInfoReqVO; import cn.iocoder.yudao.module.farm.controller.admin.api.vo.FarmBaseInfoRespVO; import cn.iocoder.yudao.module.farm.controller.admin.api.vo.FarmBaseOverviewReqVO; import cn.iocoder.yudao.module.farm.controller.admin.api.vo.FarmBaseOverviewRespVO; +import cn.iocoder.yudao.module.farm.controller.admin.cropfarmingcenter.vo.grid.ProductionPlanGridRespVO; import cn.iocoder.yudao.module.farm.controller.admin.digitalcockpit.vo.BaseStatisticsInfoRespVO; import cn.iocoder.yudao.module.farm.controller.admin.managementcenter.baseinfo.vo.*; import cn.iocoder.yudao.module.farm.controller.admin.managementcenter.baseinfo.vo.wx.BaseInfoForWxRespVO; @@ -85,6 +86,12 @@ public interface BaseInfoService { */ TenantInfoRespVO getBaseOverviewInfo(); + /** + * 获取网箱信息 + * @param plotId + * @return + */ + List getGridInfo(String plotId); /** * 数字驾驶舱-获取基地概要信息 * diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/service/baseinfo/BaseInfoServiceImpl.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/service/baseinfo/BaseInfoServiceImpl.java index 984a8784..70739327 100644 --- a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/service/baseinfo/BaseInfoServiceImpl.java +++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/service/baseinfo/BaseInfoServiceImpl.java @@ -340,6 +340,11 @@ public class BaseInfoServiceImpl implements BaseInfoService { } return targetList; } + @Override + public List getGridInfo(String plotId) { + String plotCode = plotId; + return this.packageGridInfo(plotCode); + } private List packageGridInfo(String plotId) { List res = new ArrayList<>(); 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 edecc275..68d29ab4 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 @@ -1,6 +1,7 @@ package cn.iocoder.yudao.module.farm.service.home; import cn.iocoder.yudao.framework.security.core.LoginUser; +import cn.iocoder.yudao.module.farm.controller.admin.cropfarmingcenter.vo.grid.ProductionPlanGridRespVO; import cn.iocoder.yudao.module.farm.controller.admin.digitalcockpit.vo.DeviceMonitorDataRespVO; import cn.iocoder.yudao.module.farm.controller.admin.home.vo.BaseNameVO; import cn.iocoder.yudao.module.farm.controller.admin.home.vo.HomeInfo; @@ -11,7 +12,6 @@ import cn.iocoder.yudao.module.farm.dal.dataobject.baseinfo.BaseInfoDO; import cn.iocoder.yudao.module.farm.dal.dataobject.plotinfo.PlotInfoDO; import cn.iocoder.yudao.module.farm.dal.dataobject.productionplan.ProductionPlanDO; import cn.iocoder.yudao.module.farm.dal.dataobject.specieslibrary.SpeciesLibraryDO; -import cn.iocoder.yudao.module.farm.manager.equipmentproducer.service.DeviceService; import cn.iocoder.yudao.module.farm.service.baseinfo.BaseInfoService; import cn.iocoder.yudao.module.farm.service.cropFarmingCenter.CropFarmingCenterService; import cn.iocoder.yudao.module.farm.service.deviceinfo.DeviceInfoService; @@ -193,6 +193,8 @@ public class HomeServiceImpl implements HomeService { Integer iotCount = deviceService.countDevice(e.getBaseId() , getLoginUser().getTenantId().toString()); // 物种数量 // int speciesNum = modelManagementService.getSpeciesNum(getLoginUser().getTenantId().toString()); + // 网箱使用占比 + String gridRatio = "100/500"; // TODO: 2025/11/6 PlotOrCropInfo t = new PlotOrCropInfo(); t.setLabel(label); @@ -207,6 +209,7 @@ public class HomeServiceImpl implements HomeService { t.setLotCount(iotCount); t.setManager(employeeName); t.setQrCodeUrl(e.getBaseId()); + t.setGridRatio(gridRatio); t.setPlanInfos(this.getPlanInfoList(e.getBaseId(), e.getPlotId(), employeeName)); return t; } @@ -230,6 +233,8 @@ 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()); @@ -252,6 +257,7 @@ public class HomeServiceImpl implements HomeService { String pointsInPolygon = LeafletjsUtil.generateRandomPointsInPolygon(plotObj.getPoint()); target.setPlanModelPoint(pointsInPolygon); target.setPlanModelImage(speciesLibrary.getImageList()); + target.setGridOverviewList(gridOverviewList); targetList.add(target); } return targetList;