From 7707a70a45420257dce170879ad7f0fa91208c55 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=BE=BE=E5=AF=8C=E6=96=8C?= Date: Tue, 9 Sep 2025 15:12:37 +0800 Subject: [PATCH] =?UTF-8?q?fix=20(farm):=20=E9=9B=86=E6=88=90=E6=B5=8B?= =?UTF-8?q?=E8=AF=95=20=E4=BF=AE=E5=A4=8D=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 生命周期-中文字符展示 - 面积值取整 --- .../admin/baseinfo/vo/TenantInfoRespVO.java | 2 ++ .../module/farm/enums/CommonConstants.java | 3 +-- .../service/baseinfo/BaseInfoServiceImpl.java | 13 ++++++++++--- .../ModelManagementServiceImpl.java | 6 +----- .../yudao/module/farm/utils/BigDecimalUtil.java | 17 +++++++++++++++++ 5 files changed, 31 insertions(+), 10 deletions(-) create mode 100644 yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/utils/BigDecimalUtil.java diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/baseinfo/vo/TenantInfoRespVO.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/baseinfo/vo/TenantInfoRespVO.java index df521a04..196b8f07 100644 --- a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/baseinfo/vo/TenantInfoRespVO.java +++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/baseinfo/vo/TenantInfoRespVO.java @@ -28,6 +28,8 @@ public class TenantInfoRespVO { @AllArgsConstructor @NoArgsConstructor public static class TenantInfo { + @Schema(description = "商户名称") + private String tenantName; @Schema(description = "商户所属-基地总数") private Integer baseCount; @Schema(description = "商户所属-在种作物总数") diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/enums/CommonConstants.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/enums/CommonConstants.java index 1c749591..37cdfa19 100644 --- a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/enums/CommonConstants.java +++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/enums/CommonConstants.java @@ -1,7 +1,5 @@ package cn.iocoder.yudao.module.farm.enums; -import io.swagger.v3.oas.models.security.SecurityScheme; - import java.util.HashMap; import java.util.Map; @@ -43,6 +41,7 @@ public class CommonConstants { PLAN_MAP.put(PLAN_STATUS_7, "已结束"); LIFE_CYCLE_MAP.put("1", "一年生"); + LIFE_CYCLE_MAP.put("2", "半年生"); LIFE_CYCLE_MAP.put("10", "多年生"); GRID_TYPE.put("1", "养殖类型"); 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 ca3bfb52..dc8e6b69 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 @@ -12,6 +12,7 @@ import cn.iocoder.yudao.module.farm.controller.admin.api.vo.FarmBaseOverviewReqV import cn.iocoder.yudao.module.farm.controller.admin.api.vo.FarmBaseOverviewRespVO; import cn.iocoder.yudao.module.farm.controller.admin.baseinfo.vo.*; import cn.iocoder.yudao.module.farm.dal.dataobject.baseinfo.BaseInfoDO; +import cn.iocoder.yudao.module.farm.dal.dataobject.companyinfo.CompanyInfoDO; import cn.iocoder.yudao.module.farm.dal.dataobject.gridinfo.GridInfoDO; import cn.iocoder.yudao.module.farm.dal.dataobject.personnelmanagement.PersonnelManagementDO; import cn.iocoder.yudao.module.farm.dal.dataobject.plotinfo.PlotInfoDO; @@ -20,10 +21,12 @@ import cn.iocoder.yudao.module.farm.dal.mysql.gridinfo.GridInfoMapper; import cn.iocoder.yudao.module.farm.dal.mysql.personnelmanagement.PersonnelManagementMapper; import cn.iocoder.yudao.module.farm.dal.mysql.specieslibrary.SpeciesLibraryMapper; import cn.iocoder.yudao.module.farm.enums.CommonConstants; +import cn.iocoder.yudao.module.farm.service.companyinfo.CompanyInfoService; import cn.iocoder.yudao.module.farm.service.personnelmanagement.PersonnelManagementService; import cn.iocoder.yudao.module.farm.service.plotinfo.PlotInfoService; import cn.iocoder.yudao.module.farm.service.productionplan.ProductionPlanService; import cn.iocoder.yudao.module.farm.service.specieslibrary.SpeciesLibraryService; +import cn.iocoder.yudao.module.farm.utils.BigDecimalUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.fasterxml.jackson.databind.JsonNode; @@ -71,6 +74,8 @@ public class BaseInfoServiceImpl implements BaseInfoService { private ProductionPlanService productionPlanService; @Resource private PlotInfoService plotInfoService; + @Resource + private CompanyInfoService companyInfoService; @SneakyThrows @Override @@ -228,14 +233,16 @@ public class BaseInfoServiceImpl implements BaseInfoService { Object result = baseInfoMapper.selectObjs(wrapper).stream().findFirst().orElse(BigDecimal.ZERO); areaCount = (BigDecimal) result; } - return new TenantInfoRespVO.TenantInfo(baseCount, cropCount, areaCount, employeeCount); + // 租户公司名称 + CompanyInfoDO companyInfo = companyInfoService.getCompanyInfo(); + return new TenantInfoRespVO.TenantInfo(companyInfo.getName(),baseCount, cropCount, areaCount, employeeCount); } private void packageBaseInfo(long tenantId, List respVOS, Map employeeMap) { for (BaseInfoRespVO obj : respVOS) { String baseId = obj.getId(); String baseName = obj.getName(); - BigDecimal baseArea = obj.getArea(); + BigDecimal baseArea = BigDecimalUtil.roundedViaMath(obj.getArea()); List plotList = plotInfoService.getPlotInfos(baseId); // 基地概述 @@ -267,7 +274,7 @@ public class BaseInfoServiceImpl implements BaseInfoService { for (PlotInfoDO aDo : plotList) { String plotManager = employeeMap.getOrDefault(aDo.getEmployeeId(), "系统"); List gridInfos = this.packageGridInfo(aDo.getId()); - BaseInfoRespVO.PlotInfo target = new BaseInfoRespVO.PlotInfo(aDo.getId(), aDo.getPlotName(), aDo.getPlotColor(), aDo.getPlotArea(), plotManager, aDo.getPoint(), gridInfos); + BaseInfoRespVO.PlotInfo target = new BaseInfoRespVO.PlotInfo(aDo.getId(), aDo.getPlotName(), aDo.getPlotColor(), BigDecimalUtil.roundedViaMath( aDo.getPlotArea()), plotManager, aDo.getPoint(), gridInfos); targetList.add(target); } return targetList; diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/service/modelmanagement/ModelManagementServiceImpl.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/service/modelmanagement/ModelManagementServiceImpl.java index 7d6fd664..d77ef043 100644 --- a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/service/modelmanagement/ModelManagementServiceImpl.java +++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/service/modelmanagement/ModelManagementServiceImpl.java @@ -93,11 +93,7 @@ public class ModelManagementServiceImpl implements ModelManagementService { SpeciesLibraryDO speciesLibrary = speciesLibraryService.getSpeciesLibrary(createReqVO.getSpeciesId()); modelManagement.setSpeciesName(speciesLibrary.getSpeciesName() + "/" + speciesLibrary.getCultivarName()); modelManagement.setCycle(speciesLibrary.getLifeCycle().toString()); -// if (speciesLibrary.getLifeCycle() == 1) { -// modelManagement.setCycleName("一年生"); -// } else if (speciesLibrary.getLifeCycle() == 10) { -// modelManagement.setCycleName("多年生"); -// } + modelManagement.setCycleName(LIFE_CYCLE_MAP.getOrDefault(speciesLibrary.getLifeCycle().toString(),"")); modelManagement.setSpeciesImage(speciesLibrary.getImage()); // 处理suitablePlantingAreas字段,优先使用集合 if (createReqVO.getSuitablePlantingAreas() != null && !createReqVO.getSuitablePlantingAreas().isEmpty()) { diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/utils/BigDecimalUtil.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/utils/BigDecimalUtil.java new file mode 100644 index 00000000..762824f3 --- /dev/null +++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/utils/BigDecimalUtil.java @@ -0,0 +1,17 @@ +package cn.iocoder.yudao.module.farm.utils; + +import java.math.BigDecimal; + +/** + * @description: + * @author: binda + * @date: 2025/9/9 14:43 + */ +public class BigDecimalUtil { + + public static BigDecimal roundedViaMath(BigDecimal num) { + long roundedLong = Math.round(num.doubleValue()); + return new BigDecimal(roundedLong); + } + +}