diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/modelpestdiseaseweed/vo/ModelPestDiseaseWeedPageReqVO.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/modelpestdiseaseweed/vo/ModelPestDiseaseWeedPageReqVO.java index 1a3880ad..399f7d8c 100644 --- a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/modelpestdiseaseweed/vo/ModelPestDiseaseWeedPageReqVO.java +++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/modelpestdiseaseweed/vo/ModelPestDiseaseWeedPageReqVO.java @@ -6,6 +6,7 @@ import io.swagger.v3.oas.annotations.media.Schema; import cn.iocoder.yudao.framework.common.pojo.PageParam; import org.springframework.format.annotation.DateTimeFormat; import java.time.LocalDateTime; +import java.util.List; import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND; @@ -46,5 +47,6 @@ public class ModelPestDiseaseWeedPageReqVO extends PageParam { @Schema(description = "租户id", example = "31930") private String tenantId; - + private String image; + private List imageList; } \ No newline at end of file diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/modelpestdiseaseweed/vo/ModelPestDiseaseWeedRespVO.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/modelpestdiseaseweed/vo/ModelPestDiseaseWeedRespVO.java index bb021ec8..12857e30 100644 --- a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/modelpestdiseaseweed/vo/ModelPestDiseaseWeedRespVO.java +++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/modelpestdiseaseweed/vo/ModelPestDiseaseWeedRespVO.java @@ -5,6 +5,8 @@ import lombok.*; import org.springframework.format.annotation.DateTimeFormat; import java.time.LocalDateTime; +import java.util.List; + import cn.idev.excel.annotation.*; @Schema(description = "管理后台 - 模型管理-病虫草害 Response VO") @@ -59,5 +61,6 @@ public class ModelPestDiseaseWeedRespVO { @Schema(description = "租户id", example = "31930") @ExcelProperty("租户id") private String tenantId; - + private String image; + private List imageList; } diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/modelpestdiseaseweed/vo/ModelPestDiseaseWeedSaveReqVO.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/modelpestdiseaseweed/vo/ModelPestDiseaseWeedSaveReqVO.java index a3f71171..a8179fe2 100644 --- a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/modelpestdiseaseweed/vo/ModelPestDiseaseWeedSaveReqVO.java +++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/modelpestdiseaseweed/vo/ModelPestDiseaseWeedSaveReqVO.java @@ -3,6 +3,8 @@ package cn.iocoder.yudao.module.farm.controller.admin.modelpestdiseaseweed.vo; import io.swagger.v3.oas.annotations.media.Schema; import lombok.*; +import java.util.List; + @Schema(description = "管理后台 - 模型管理-病虫草害新增/修改 Request VO") @Data public class ModelPestDiseaseWeedSaveReqVO { @@ -40,4 +42,6 @@ public class ModelPestDiseaseWeedSaveReqVO { @Schema(description = "租户id", example = "31930") private String tenantId; + private String image; + private List imageList; } \ No newline at end of file diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/modelweatherdisaster/vo/ModelWeatherDisasterPageReqVO.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/modelweatherdisaster/vo/ModelWeatherDisasterPageReqVO.java index 287928ed..eb5eaad2 100644 --- a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/modelweatherdisaster/vo/ModelWeatherDisasterPageReqVO.java +++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/modelweatherdisaster/vo/ModelWeatherDisasterPageReqVO.java @@ -6,6 +6,7 @@ import io.swagger.v3.oas.annotations.media.Schema; import cn.iocoder.yudao.framework.common.pojo.PageParam; import org.springframework.format.annotation.DateTimeFormat; import java.time.LocalDateTime; +import java.util.List; import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND; @@ -46,5 +47,5 @@ public class ModelWeatherDisasterPageReqVO extends PageParam { @Schema(description = "租户id", example = "3725") private String tenantId; - + private List imageList; } \ No newline at end of file diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/modelweatherdisaster/vo/ModelWeatherDisasterRespVO.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/modelweatherdisaster/vo/ModelWeatherDisasterRespVO.java index a4034db7..d55c8780 100644 --- a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/modelweatherdisaster/vo/ModelWeatherDisasterRespVO.java +++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/modelweatherdisaster/vo/ModelWeatherDisasterRespVO.java @@ -1,63 +1,65 @@ -package cn.iocoder.yudao.module.farm.controller.admin.modelweatherdisaster.vo; - -import io.swagger.v3.oas.annotations.media.Schema; -import lombok.*; - -import org.springframework.format.annotation.DateTimeFormat; -import java.time.LocalDateTime; -import cn.idev.excel.annotation.*; - -@Schema(description = "管理后台 - 模型管理-气象灾害 Response VO") -@Data -@ExcelIgnoreUnannotated -public class ModelWeatherDisasterRespVO { - - @Schema(description = "基础id", requiredMode = Schema.RequiredMode.REQUIRED, example = "5402") - @ExcelProperty("基础id") - private String id; - - @Schema(description = "周期id", example = "26687") - @ExcelProperty("周期id") - private String cycleId; - - @Schema(description = "气象灾害名称", example = "李四") - @ExcelProperty("气象灾害名称") - private String name; - - @Schema(description = "气象灾害id", example = "20911") - @ExcelProperty("气象灾害id") - private String weatherId; - - @Schema(description = "预警摘要说明", example = "你猜") - @ExcelProperty("预警摘要说明") - private String description; - - @Schema(description = "气象灾害图片") - @ExcelProperty("气象灾害图片") - private String image; - - @Schema(description = "创建时间") - @ExcelProperty("创建时间") - private LocalDateTime createTime; - - @Schema(description = "基地id", example = "28186") - @ExcelProperty("基地id") - private String baseId; - - @Schema(description = "基地", example = "王五") - @ExcelProperty("基地") - private String baseName; - - @Schema(description = "地块ID", example = "29489") - @ExcelProperty("地块ID") - private String plotId; - - @Schema(description = "地块", example = "李四") - @ExcelProperty("地块") - private String plotName; - - @Schema(description = "租户id", example = "3725") - @ExcelProperty("租户id") - private String tenantId; - -} \ No newline at end of file +package cn.iocoder.yudao.module.farm.controller.admin.modelweatherdisaster.vo; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.*; + +import org.springframework.format.annotation.DateTimeFormat; +import java.time.LocalDateTime; +import java.util.List; + +import cn.idev.excel.annotation.*; + +@Schema(description = "管理后台 - 模型管理-气象灾害 Response VO") +@Data +@ExcelIgnoreUnannotated +public class ModelWeatherDisasterRespVO { + + @Schema(description = "基础id", requiredMode = Schema.RequiredMode.REQUIRED, example = "5402") + @ExcelProperty("基础id") + private String id; + + @Schema(description = "周期id", example = "26687") + @ExcelProperty("周期id") + private String cycleId; + + @Schema(description = "气象灾害名称", example = "李四") + @ExcelProperty("气象灾害名称") + private String name; + + @Schema(description = "气象灾害id", example = "20911") + @ExcelProperty("气象灾害id") + private String weatherId; + + @Schema(description = "预警摘要说明", example = "你猜") + @ExcelProperty("预警摘要说明") + private String description; + + @Schema(description = "气象灾害图片") + @ExcelProperty("气象灾害图片") + private String image; + + @Schema(description = "创建时间") + @ExcelProperty("创建时间") + private LocalDateTime createTime; + + @Schema(description = "基地id", example = "28186") + @ExcelProperty("基地id") + private String baseId; + + @Schema(description = "基地", example = "王五") + @ExcelProperty("基地") + private String baseName; + + @Schema(description = "地块ID", example = "29489") + @ExcelProperty("地块ID") + private String plotId; + + @Schema(description = "地块", example = "李四") + @ExcelProperty("地块") + private String plotName; + + @Schema(description = "租户id", example = "3725") + @ExcelProperty("租户id") + private String tenantId; + private List imageList; +} diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/modelweatherdisaster/vo/ModelWeatherDisasterSaveReqVO.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/modelweatherdisaster/vo/ModelWeatherDisasterSaveReqVO.java index 794c2191..324d9464 100644 --- a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/modelweatherdisaster/vo/ModelWeatherDisasterSaveReqVO.java +++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/modelweatherdisaster/vo/ModelWeatherDisasterSaveReqVO.java @@ -1,7 +1,9 @@ package cn.iocoder.yudao.module.farm.controller.admin.modelweatherdisaster.vo; import io.swagger.v3.oas.annotations.media.Schema; -import lombok.*; +import lombok.Data; + +import java.util.List; @Schema(description = "管理后台 - 模型管理-气象灾害新增/修改 Request VO") @Data @@ -39,5 +41,5 @@ public class ModelWeatherDisasterSaveReqVO { @Schema(description = "租户id", example = "3725") private String tenantId; - + private List imageList; } \ No newline at end of file diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/dataobject/modelpestdiseaseweed/ModelPestDiseaseWeedDO.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/dataobject/modelpestdiseaseweed/ModelPestDiseaseWeedDO.java index 96e1747a..f5f8917c 100644 --- a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/dataobject/modelpestdiseaseweed/ModelPestDiseaseWeedDO.java +++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/dataobject/modelpestdiseaseweed/ModelPestDiseaseWeedDO.java @@ -1,9 +1,12 @@ package cn.iocoder.yudao.module.farm.dal.dataobject.modelpestdiseaseweed; +import cn.iocoder.yudao.module.farm.framework.util.ImageCollectionUtil; import lombok.*; import java.time.LocalDateTime; import java.time.LocalDateTime; +import java.util.List; + import com.baomidou.mybatisplus.annotation.*; import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; @@ -55,6 +58,10 @@ public class ModelPestDiseaseWeedDO extends BaseDO { * 防止建议 */ private String treatmentSuggestion; + + private String image; + @TableField(exist = false) + private List imageList; /** * 基地id */ @@ -73,4 +80,22 @@ public class ModelPestDiseaseWeedDO extends BaseDO { private String plotName; private String tenantId; + + /** + * 获取图片集合 + */ + public List getImageList() { + if (imageList == null) { + imageList = ImageCollectionUtil.toImageList(this.image); + } + return imageList; + } + + /** + * 设置图片集合 + */ + public void setImageList(List imageList) { + this.imageList = imageList; + this.image = ImageCollectionUtil.toDatabaseString(imageList); + } } \ No newline at end of file diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/dataobject/modelweatherdisaster/ModelWeatherDisasterDO.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/dataobject/modelweatherdisaster/ModelWeatherDisasterDO.java index 11af2514..c4475ef9 100644 --- a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/dataobject/modelweatherdisaster/ModelWeatherDisasterDO.java +++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/dataobject/modelweatherdisaster/ModelWeatherDisasterDO.java @@ -1,9 +1,12 @@ package cn.iocoder.yudao.module.farm.dal.dataobject.modelweatherdisaster; +import cn.iocoder.yudao.module.farm.framework.util.ImageCollectionUtil; import lombok.*; import java.time.LocalDateTime; import java.time.LocalDateTime; +import java.util.List; + import com.baomidou.mybatisplus.annotation.*; import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; @@ -55,6 +58,8 @@ public class ModelWeatherDisasterDO extends BaseDO { * 气象灾害图片 */ private String image; + @TableField(exist = false) + private List imageList; /** * 基地id */ @@ -73,4 +78,22 @@ public class ModelWeatherDisasterDO extends BaseDO { private String plotName; private String tenantId; + + /** + * 获取图片集合 + */ + public List getImageList() { + if (imageList == null) { + imageList = ImageCollectionUtil.toImageList(this.image); + } + return imageList; + } + + /** + * 设置图片集合 + */ + public void setImageList(List imageList) { + this.imageList = imageList; + this.image = ImageCollectionUtil.toDatabaseString(imageList); + } } \ No newline at end of file diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/disasterdata/DisasterDataMapper.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/disasterdata/DisasterDataMapper.java index fff9a352..28cf464d 100644 --- a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/disasterdata/DisasterDataMapper.java +++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/disasterdata/DisasterDataMapper.java @@ -23,6 +23,7 @@ public interface DisasterDataMapper extends BaseMapperX { .eqIfPresent(DisasterDataDO::getType, reqVO.getType()) .eqIfPresent(DisasterDataDO::getUseStatus, reqVO.getUseStatus()) .eqIfPresent(DisasterDataDO::getCategory, reqVO.getCategory()) + .likeIfPresent(DisasterDataDO::getName, reqVO.getName()) .orderByDesc(DisasterDataDO::getId)); } 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 329bc906..437044e8 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 @@ -10,6 +10,7 @@ import cn.iocoder.yudao.module.farm.controller.admin.modelfarmingoperation.vo.Mo import cn.iocoder.yudao.module.farm.controller.admin.modelmanagement.vo.ModelManagementPageReqVO; import cn.iocoder.yudao.module.farm.controller.admin.modelmanagement.vo.ModelManagementRespVO; import cn.iocoder.yudao.module.farm.controller.admin.modelmanagement.vo.ModelManagementSaveReqVO; +import cn.iocoder.yudao.module.farm.dal.dataobject.inputlibrary.InputLibraryDO; import cn.iocoder.yudao.module.farm.dal.dataobject.modelcycle.ModelCycleDO; import cn.iocoder.yudao.module.farm.dal.dataobject.modelenvironmentindex.ModelEnvironmentIndexDO; import cn.iocoder.yudao.module.farm.dal.dataobject.modelfarmingoperation.ModelFarmingOperationDO; @@ -27,11 +28,11 @@ import cn.iocoder.yudao.module.farm.dal.mysql.modelpestdiseaseweed.ModelPestDise import cn.iocoder.yudao.module.farm.dal.mysql.modelweatherdisaster.ModelWeatherDisasterMapper; import cn.iocoder.yudao.module.farm.enums.CommonConstants; import cn.iocoder.yudao.module.farm.framework.util.ModelManagementConvertUtil; -import cn.iocoder.yudao.module.farm.service.disasterdata.DisasterDataService; +import cn.iocoder.yudao.module.farm.service.inputlibrary.InputLibraryService; import cn.iocoder.yudao.module.farm.service.specieslibrary.SpeciesLibraryService; -import cn.iocoder.yudao.module.farm.service.sysDict.SysDictService; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import jakarta.annotation.Resource; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.validation.annotation.Validated; @@ -66,13 +67,10 @@ public class ModelManagementServiceImpl implements ModelManagementService { private ModelFarmingOperationMapper modelFarmingOperationMapper; @Resource private ModelFarmingOperationInputMapper modelFarmingOperationInputMapper; - @Resource - private SysDictService sysDictService; - @Resource - private DisasterDataService disasterDataService; - @Resource private SpeciesLibraryService speciesLibraryService; + @Autowired + private InputLibraryService inputLibraryService; @Override public String createModelManagement(ModelManagementSaveReqVO createReqVO) { @@ -87,11 +85,11 @@ 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("多年生"); - } +// if (speciesLibrary.getLifeCycle() == 1) { +// modelManagement.setCycleName("一年生"); +// } else if (speciesLibrary.getLifeCycle() == 10) { +// modelManagement.setCycleName("多年生"); +// } modelManagement.setSpeciesImage(speciesLibrary.getImage()); // 处理suitablePlantingAreas字段,优先使用集合 if (createReqVO.getSuitablePlantingAreas() != null && !createReqVO.getSuitablePlantingAreas().isEmpty()) { @@ -296,7 +294,8 @@ public class ModelManagementServiceImpl implements ModelManagementService { ModelFarmingOperationRespVO respVO = BeanUtils.toBean(e, ModelFarmingOperationRespVO.class); List farmingOperationInputDOS = modelFarmingOperationInputMapper.selectByFarmingId(e.getId()); for (ModelFarmingOperationInputDO aDo : farmingOperationInputDOS) { - aDo.setInputsName(DictFrameworkUtils.parseDictDataLabel("asset_type", aDo.getInputsId())); + InputLibraryDO inputLibrary = inputLibraryService.getInputLibrary(aDo.getInputsId()); + aDo.setInputsName(inputLibrary.getAssetName()); aDo.setUnitName(DictFrameworkUtils.parseDictDataLabel("asset_unit", aDo.getUnit())); aDo.setPackageUnitName(DictFrameworkUtils.parseDictDataLabel("asset_price", aDo.getPackageUnit())); } diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/service/modelpestdiseaseweed/ModelPestDiseaseWeedServiceImpl.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/service/modelpestdiseaseweed/ModelPestDiseaseWeedServiceImpl.java index eaa03fd2..29d6b31e 100644 --- a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/service/modelpestdiseaseweed/ModelPestDiseaseWeedServiceImpl.java +++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/service/modelpestdiseaseweed/ModelPestDiseaseWeedServiceImpl.java @@ -6,7 +6,9 @@ import cn.iocoder.yudao.framework.common.util.object.BeanUtils; import cn.iocoder.yudao.framework.security.core.LoginUser; import cn.iocoder.yudao.module.farm.controller.admin.modelpestdiseaseweed.vo.ModelPestDiseaseWeedPageReqVO; import cn.iocoder.yudao.module.farm.controller.admin.modelpestdiseaseweed.vo.ModelPestDiseaseWeedSaveReqVO; +import cn.iocoder.yudao.module.farm.dal.dataobject.disasterdata.DisasterDataDO; import cn.iocoder.yudao.module.farm.dal.dataobject.modelpestdiseaseweed.ModelPestDiseaseWeedDO; +import cn.iocoder.yudao.module.farm.dal.mysql.disasterdata.DisasterDataMapper; import cn.iocoder.yudao.module.farm.dal.mysql.modelpestdiseaseweed.ModelPestDiseaseWeedMapper; import jakarta.annotation.Resource; import org.springframework.stereotype.Service; @@ -29,6 +31,8 @@ public class ModelPestDiseaseWeedServiceImpl implements ModelPestDiseaseWeedServ @Resource private ModelPestDiseaseWeedMapper modelPestDiseaseWeedMapper; + @Resource + private DisasterDataMapper disasterDataMapper; @Override public String createModelPestDiseaseWeed(ModelPestDiseaseWeedSaveReqVO createReqVO) { @@ -37,6 +41,14 @@ public class ModelPestDiseaseWeedServiceImpl implements ModelPestDiseaseWeedServ ModelPestDiseaseWeedDO modelPestDiseaseWeed = BeanUtils.toBean(createReqVO, ModelPestDiseaseWeedDO.class); modelPestDiseaseWeed.setId(IdUtil.fastUUID()); modelPestDiseaseWeed.setTenantId(String.valueOf(user.getTenantId())); + DisasterDataDO disasterDataDO = disasterDataMapper.selectById(createReqVO.getPestsId()); + modelPestDiseaseWeed.setDisasterDescription(disasterDataDO.getDisasterDescription()); + modelPestDiseaseWeed.setTreatmentSuggestion(disasterDataDO.getTreatmentSuggestion()); + if (createReqVO.getImage() != null) { + modelPestDiseaseWeed.setImage(createReqVO.getImage() + "," + disasterDataDO.getImgUrl()); + } else { + modelPestDiseaseWeed.setImage(disasterDataDO.getImgUrl()); + } modelPestDiseaseWeedMapper.insert(modelPestDiseaseWeed); // 返回 @@ -49,6 +61,14 @@ public class ModelPestDiseaseWeedServiceImpl implements ModelPestDiseaseWeedServ validateModelPestDiseaseWeedExists(updateReqVO.getId()); // 更新 ModelPestDiseaseWeedDO updateObj = BeanUtils.toBean(updateReqVO, ModelPestDiseaseWeedDO.class); + DisasterDataDO disasterDataDO = disasterDataMapper.selectById(updateReqVO.getPestsId()); + updateObj.setDisasterDescription(disasterDataDO.getDisasterDescription()); + updateObj.setTreatmentSuggestion(disasterDataDO.getTreatmentSuggestion()); + if (updateReqVO.getImage() != null) { + updateObj.setImage(updateReqVO.getImage() + "," + disasterDataDO.getImgUrl()); + } else { + updateObj.setImage(disasterDataDO.getImgUrl()); + } modelPestDiseaseWeedMapper.updateById(updateObj); } @@ -61,12 +81,12 @@ public class ModelPestDiseaseWeedServiceImpl implements ModelPestDiseaseWeedServ } @Override - public void deleteModelPestDiseaseWeedListByIds(List ids) { + public void deleteModelPestDiseaseWeedListByIds(List ids) { // 删除 modelPestDiseaseWeedMapper.deleteByIds(ids); - } + } -private void validateModelPestDiseaseWeedExists(String id) { + private void validateModelPestDiseaseWeedExists(String id) { if (modelPestDiseaseWeedMapper.selectById(id) == null) { throw exception(MODEL_PEST_DISEASE_WEED_NOT_EXISTS); } diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/service/modelweatherdisaster/ModelWeatherDisasterServiceImpl.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/service/modelweatherdisaster/ModelWeatherDisasterServiceImpl.java index 675958e6..1a8a9f56 100644 --- a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/service/modelweatherdisaster/ModelWeatherDisasterServiceImpl.java +++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/service/modelweatherdisaster/ModelWeatherDisasterServiceImpl.java @@ -1,21 +1,19 @@ package cn.iocoder.yudao.module.farm.service.modelweatherdisaster; - + import cn.hutool.core.util.IdUtil; +import cn.iocoder.yudao.framework.common.pojo.PageResult; +import cn.iocoder.yudao.framework.common.util.object.BeanUtils; import cn.iocoder.yudao.framework.security.core.LoginUser; import cn.iocoder.yudao.module.farm.controller.admin.modelweatherdisaster.vo.ModelWeatherDisasterPageReqVO; import cn.iocoder.yudao.module.farm.controller.admin.modelweatherdisaster.vo.ModelWeatherDisasterSaveReqVO; -import org.springframework.stereotype.Service; -import jakarta.annotation.Resource; -import org.springframework.validation.annotation.Validated; - - +import cn.iocoder.yudao.module.farm.dal.dataobject.disasterdata.DisasterDataDO; import cn.iocoder.yudao.module.farm.dal.dataobject.modelweatherdisaster.ModelWeatherDisasterDO; -import cn.iocoder.yudao.framework.common.pojo.PageResult; - -import cn.iocoder.yudao.framework.common.util.object.BeanUtils; - +import cn.iocoder.yudao.module.farm.dal.mysql.disasterdata.DisasterDataMapper; import cn.iocoder.yudao.module.farm.dal.mysql.modelweatherdisaster.ModelWeatherDisasterMapper; +import jakarta.annotation.Resource; +import org.springframework.stereotype.Service; +import org.springframework.validation.annotation.Validated; import java.util.List; @@ -34,6 +32,8 @@ public class ModelWeatherDisasterServiceImpl implements ModelWeatherDisasterServ @Resource private ModelWeatherDisasterMapper modelWeatherDisasterMapper; + @Resource + private DisasterDataMapper disasterDataMapper; @Override public String createModelWeatherDisaster(ModelWeatherDisasterSaveReqVO createReqVO) { @@ -42,6 +42,14 @@ public class ModelWeatherDisasterServiceImpl implements ModelWeatherDisasterServ ModelWeatherDisasterDO modelWeatherDisaster = BeanUtils.toBean(createReqVO, ModelWeatherDisasterDO.class); modelWeatherDisaster.setId(IdUtil.fastUUID()); modelWeatherDisaster.setTenantId(String.valueOf(user.getTenantId())); + DisasterDataDO disasterDataDO = disasterDataMapper.selectById(createReqVO.getWeatherId()); + modelWeatherDisaster.setDisasterDescription(disasterDataDO.getDisasterDescription()); + modelWeatherDisaster.setTreatmentSuggestion(disasterDataDO.getTreatmentSuggestion()); + if (createReqVO.getImage() != null) { + modelWeatherDisaster.setImage(createReqVO.getImage() + "," + disasterDataDO.getImgUrl()); + } else { + modelWeatherDisaster.setImage(disasterDataDO.getImgUrl()); + } modelWeatherDisasterMapper.insert(modelWeatherDisaster); // 返回 @@ -54,6 +62,14 @@ public class ModelWeatherDisasterServiceImpl implements ModelWeatherDisasterServ validateModelWeatherDisasterExists(updateReqVO.getId()); // 更新 ModelWeatherDisasterDO updateObj = BeanUtils.toBean(updateReqVO, ModelWeatherDisasterDO.class); + DisasterDataDO disasterDataDO = disasterDataMapper.selectById(updateReqVO.getWeatherId()); + updateObj.setDisasterDescription(disasterDataDO.getDisasterDescription()); + updateObj.setTreatmentSuggestion(disasterDataDO.getTreatmentSuggestion()); + if (updateReqVO.getImage() != null) { + updateObj.setImage(updateReqVO.getImage() + "," + disasterDataDO.getImgUrl()); + } else { + updateObj.setImage(disasterDataDO.getImgUrl()); + } modelWeatherDisasterMapper.updateById(updateObj); } @@ -66,12 +82,12 @@ public class ModelWeatherDisasterServiceImpl implements ModelWeatherDisasterServ } @Override - public void deleteModelWeatherDisasterListByIds(List ids) { + public void deleteModelWeatherDisasterListByIds(List ids) { // 删除 modelWeatherDisasterMapper.deleteByIds(ids); - } + } -private void validateModelWeatherDisasterExists(String id) { + private void validateModelWeatherDisasterExists(String id) { if (modelWeatherDisasterMapper.selectById(id) == null) { throw exception(MODEL_WEATHER_DISASTER_NOT_EXISTS); }