From 8b589b8e762f496730ac4c282fbb625c587c72e8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=BE=BE=E5=AF=8C=E6=96=8C?= Date: Mon, 1 Sep 2025 16:35:19 +0800 Subject: [PATCH] =?UTF-8?q?fix=20(farm):=20=E5=86=9C=E5=9C=BA=E9=A6=96?= =?UTF-8?q?=E9=A1=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 修改请求入参方式 - 删除弃用的接口 --- .../controller/admin/home/HomeController.java | 18 +++---------- .../controller/admin/home/vo/HomeInfo.java | 20 ++++++++++++-- .../farm/service/home/HomeServiceImpl.java | 27 ++++++++++++------- 3 files changed, 39 insertions(+), 26 deletions(-) diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/home/HomeController.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/home/HomeController.java index 51f91433..2336bde3 100644 --- a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/home/HomeController.java +++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/home/HomeController.java @@ -31,30 +31,18 @@ public class HomeController { @Resource private HomeService homeService; - @Parameter(name = "baseId", description = "基地ID", required = true) @Operation(summary = "农场首页") - @GetMapping("/{baseId}") - public CommonResult getBaseInfo(@PathVariable("baseId") String baseId) { + @GetMapping("") + @Parameter(name = "baseId", description = "基地ID") + public CommonResult getBaseInfo(@RequestParam("baseId") String baseId) { return success(homeService.getHomeInfo(baseId)); } - @Parameter(name = "baseId", description = "基地ID", required = true) - @Operation(summary = "农场首页-概要信息") - @GetMapping("/outlined/{baseId}") - public CommonResult getWeatherInfo(@PathVariable("baseId") String baseId) { - return success(homeService.getOutlinedInfo(baseId)); - } - @Operation(summary = "农场首页-基地名称列表") @GetMapping("/baseNames") public CommonResult> getBaseNameList() { return success(homeService.getBaseNameList()); } - @Operation(summary = "农场首页-公司基地及种植") - @GetMapping("/companyBaseFarming") - public CommonResult getCompanyBaseFarming() { - return success(homeService.getCompanyBaseFarming()); - } } 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 98b120cc..3612d8d0 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 @@ -18,6 +18,8 @@ import java.util.List; @NoArgsConstructor public class HomeInfo { + @Schema(description = "租户信息概述") + private TenantInfo tenantInfo; @Schema(description = "基地统计信息概述") private BaseOverviewInfo baseOverviewInfo; @Schema(description = "基地弹框信息") @@ -29,8 +31,22 @@ public class HomeInfo { @Schema(description = "统计信息") private StatisticalInfo statisticalInfo; - public HomeInfo(BaseOverviewInfo baseOverviewInfo) { - this.baseOverviewInfo = baseOverviewInfo; + public HomeInfo(TenantInfo tenantInfo) { + this.tenantInfo = tenantInfo; + } + + @Data + @AllArgsConstructor + @NoArgsConstructor + public static class TenantInfo { + @Schema(description = "基地数量") + private Integer baseCount; + @Schema(description = "总面积") + private Integer cropCount; + @Schema(description = "在种作物数量") + private Double totalArea; + @Schema(description = "在职员工人数") + private Integer personnelCount; } @Data 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 9ab74172..8566f0e8 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 @@ -16,7 +16,6 @@ import cn.iocoder.yudao.module.farm.service.personnelmanagement.PersonnelManagem import cn.iocoder.yudao.module.farm.service.plotinfo.PlotInfoService; import cn.iocoder.yudao.module.farm.service.productionplan.ProductionPlanService; import org.apache.commons.lang3.ObjectUtils; -import org.apache.commons.lang3.StringUtils; import org.springframework.stereotype.Service; import java.util.ArrayList; @@ -57,21 +56,22 @@ public class HomeServiceImpl implements HomeService { @Override public HomeInfo getHomeInfo(String baseId) { - if (StringUtils.isEmpty(baseId)) { - BaseOverviewInfo baseOverviewInfo = new BaseOverviewInfo(); - return new HomeInfo(baseOverviewInfo); + if (baseId.trim().isEmpty()) { + return new HomeInfo(this.getCompanyInfo()); } // 员工集合 Map employeeNameMap = personnelManagementService.getEmployeeNameMap(); BaseInfoDO baseObj = baseInfoService.getBaseInfo(baseId); + + TenantInfo tenantInfo = this.getCompanyInfo(); BaseOverviewInfo baseOverviewInfo = this.getBaseOverviewInfo(baseObj, employeeNameMap); List plotPopupFrames = this.getPlotPopupFrame(baseObj, employeeNameMap); - List plotInfos = this.getPlotInfoList(baseId,employeeNameMap); - List planInfos = this.getPlanInfoList(baseId,"",null); + List plotInfos = this.getPlotInfoList(baseId, employeeNameMap); + List planInfos = this.getPlanInfoList(baseId, "", null); StatisticalInfo statisticalInfo = this.getStatisticalInfo(baseId); - return new HomeInfo(baseOverviewInfo, plotPopupFrames, plotInfos, planInfos, statisticalInfo); + return new HomeInfo(tenantInfo, baseOverviewInfo, plotPopupFrames, plotInfos, planInfos, statisticalInfo); } private StatisticalInfo getStatisticalInfo(String baseId) { @@ -132,7 +132,7 @@ public class HomeServiceImpl implements HomeService { return targetList; } - private PlotOrCropInfo getPlotOrCropInfoList(PlotInfoDO e ,String label,String employeeName) { + private PlotOrCropInfo getPlotOrCropInfoList(PlotInfoDO e, String label, String employeeName) { Double predictedArea = productionPlanService.getBeingPlotArea(e.getPlotId()); if (ObjectUtils.isEmpty(predictedArea)) { predictedArea = 0.00; @@ -152,7 +152,7 @@ public class HomeServiceImpl implements HomeService { t.setLotCount(0); // TODO: 2025/8/31 物联设备数量 t.setManager(employeeName); t.setQrCodeUrl(""); // TODO: 2025/8/31 暂无 - t.setPlanInfos(this.getPlanInfoList(e.getBaseId(),e.getPlotId(),employeeName)); + t.setPlanInfos(this.getPlanInfoList(e.getBaseId(), e.getPlotId(), employeeName)); return t; } @@ -215,4 +215,13 @@ public class HomeServiceImpl implements HomeService { map.put("personnelCount", personnelCount); return map; } + + private TenantInfo getCompanyInfo() { + LoginUser user = getLoginUser(); + int baseCount = baseInfoService.getBaseCount(user.getTenantId()); // 基地数量 + int cropCount = cropFarmingCenterService.getCropCount(user.getTenantId()); // 作物数量 + Double totalArea = cropFarmingCenterService.getTotalArea(user.getTenantId()); // 总面积 + int personnelCount = personnelManagementService.personnelCount(user.getTenantId()); // 在职人员 + return new TenantInfo(baseCount,cropCount,totalArea,personnelCount); + } }