fix (farm): 集成测试 修复问题

- 生命周期-中文字符展示
- 面积值取整
This commit is contained in:
达富斌
2025-09-09 15:12:37 +08:00
parent 68d05b44e9
commit 7707a70a45
5 changed files with 31 additions and 10 deletions

View File

@@ -28,6 +28,8 @@ public class TenantInfoRespVO {
@AllArgsConstructor @AllArgsConstructor
@NoArgsConstructor @NoArgsConstructor
public static class TenantInfo { public static class TenantInfo {
@Schema(description = "商户名称")
private String tenantName;
@Schema(description = "商户所属-基地总数") @Schema(description = "商户所属-基地总数")
private Integer baseCount; private Integer baseCount;
@Schema(description = "商户所属-在种作物总数") @Schema(description = "商户所属-在种作物总数")

View File

@@ -1,7 +1,5 @@
package cn.iocoder.yudao.module.farm.enums; package cn.iocoder.yudao.module.farm.enums;
import io.swagger.v3.oas.models.security.SecurityScheme;
import java.util.HashMap; import java.util.HashMap;
import java.util.Map; import java.util.Map;
@@ -43,6 +41,7 @@ public class CommonConstants {
PLAN_MAP.put(PLAN_STATUS_7, "已结束"); PLAN_MAP.put(PLAN_STATUS_7, "已结束");
LIFE_CYCLE_MAP.put("1", "一年生"); LIFE_CYCLE_MAP.put("1", "一年生");
LIFE_CYCLE_MAP.put("2", "半年生");
LIFE_CYCLE_MAP.put("10", "多年生"); LIFE_CYCLE_MAP.put("10", "多年生");
GRID_TYPE.put("1", "养殖类型"); GRID_TYPE.put("1", "养殖类型");

View File

@@ -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.api.vo.FarmBaseOverviewRespVO;
import cn.iocoder.yudao.module.farm.controller.admin.baseinfo.vo.*; 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.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.gridinfo.GridInfoDO;
import cn.iocoder.yudao.module.farm.dal.dataobject.personnelmanagement.PersonnelManagementDO; import cn.iocoder.yudao.module.farm.dal.dataobject.personnelmanagement.PersonnelManagementDO;
import cn.iocoder.yudao.module.farm.dal.dataobject.plotinfo.PlotInfoDO; 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.personnelmanagement.PersonnelManagementMapper;
import cn.iocoder.yudao.module.farm.dal.mysql.specieslibrary.SpeciesLibraryMapper; import cn.iocoder.yudao.module.farm.dal.mysql.specieslibrary.SpeciesLibraryMapper;
import cn.iocoder.yudao.module.farm.enums.CommonConstants; 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.personnelmanagement.PersonnelManagementService;
import cn.iocoder.yudao.module.farm.service.plotinfo.PlotInfoService; 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.productionplan.ProductionPlanService;
import cn.iocoder.yudao.module.farm.service.specieslibrary.SpeciesLibraryService; 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.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.fasterxml.jackson.databind.JsonNode; import com.fasterxml.jackson.databind.JsonNode;
@@ -71,6 +74,8 @@ public class BaseInfoServiceImpl implements BaseInfoService {
private ProductionPlanService productionPlanService; private ProductionPlanService productionPlanService;
@Resource @Resource
private PlotInfoService plotInfoService; private PlotInfoService plotInfoService;
@Resource
private CompanyInfoService companyInfoService;
@SneakyThrows @SneakyThrows
@Override @Override
@@ -228,14 +233,16 @@ public class BaseInfoServiceImpl implements BaseInfoService {
Object result = baseInfoMapper.selectObjs(wrapper).stream().findFirst().orElse(BigDecimal.ZERO); Object result = baseInfoMapper.selectObjs(wrapper).stream().findFirst().orElse(BigDecimal.ZERO);
areaCount = (BigDecimal) result; 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<BaseInfoRespVO> respVOS, Map<String, String> employeeMap) { private void packageBaseInfo(long tenantId, List<BaseInfoRespVO> respVOS, Map<String, String> employeeMap) {
for (BaseInfoRespVO obj : respVOS) { for (BaseInfoRespVO obj : respVOS) {
String baseId = obj.getId(); String baseId = obj.getId();
String baseName = obj.getName(); String baseName = obj.getName();
BigDecimal baseArea = obj.getArea(); BigDecimal baseArea = BigDecimalUtil.roundedViaMath(obj.getArea());
List<PlotInfoDO> plotList = plotInfoService.getPlotInfos(baseId); List<PlotInfoDO> plotList = plotInfoService.getPlotInfos(baseId);
// 基地概述 // 基地概述
@@ -267,7 +274,7 @@ public class BaseInfoServiceImpl implements BaseInfoService {
for (PlotInfoDO aDo : plotList) { for (PlotInfoDO aDo : plotList) {
String plotManager = employeeMap.getOrDefault(aDo.getEmployeeId(), "系统"); String plotManager = employeeMap.getOrDefault(aDo.getEmployeeId(), "系统");
List<BaseInfoRespVO.GridInfo> gridInfos = this.packageGridInfo(aDo.getId()); List<BaseInfoRespVO.GridInfo> 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); targetList.add(target);
} }
return targetList; return targetList;

View File

@@ -93,11 +93,7 @@ public class ModelManagementServiceImpl implements ModelManagementService {
SpeciesLibraryDO speciesLibrary = speciesLibraryService.getSpeciesLibrary(createReqVO.getSpeciesId()); SpeciesLibraryDO speciesLibrary = speciesLibraryService.getSpeciesLibrary(createReqVO.getSpeciesId());
modelManagement.setSpeciesName(speciesLibrary.getSpeciesName() + "/" + speciesLibrary.getCultivarName()); modelManagement.setSpeciesName(speciesLibrary.getSpeciesName() + "/" + speciesLibrary.getCultivarName());
modelManagement.setCycle(speciesLibrary.getLifeCycle().toString()); modelManagement.setCycle(speciesLibrary.getLifeCycle().toString());
// if (speciesLibrary.getLifeCycle() == 1) { modelManagement.setCycleName(LIFE_CYCLE_MAP.getOrDefault(speciesLibrary.getLifeCycle().toString(),""));
// modelManagement.setCycleName("一年生");
// } else if (speciesLibrary.getLifeCycle() == 10) {
// modelManagement.setCycleName("多年生");
// }
modelManagement.setSpeciesImage(speciesLibrary.getImage()); modelManagement.setSpeciesImage(speciesLibrary.getImage());
// 处理suitablePlantingAreas字段,优先使用集合 // 处理suitablePlantingAreas字段,优先使用集合
if (createReqVO.getSuitablePlantingAreas() != null && !createReqVO.getSuitablePlantingAreas().isEmpty()) { if (createReqVO.getSuitablePlantingAreas() != null && !createReqVO.getSuitablePlantingAreas().isEmpty()) {

View File

@@ -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);
}
}