diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/dict/vo/DisasterDataReqVO.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/dict/vo/DisasterDataReqVO.java new file mode 100644 index 00000000..ee58e2da --- /dev/null +++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/dict/vo/DisasterDataReqVO.java @@ -0,0 +1,25 @@ +package cn.iocoder.yudao.module.farm.controller.admin.dict.vo; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @description: + * @author: binda + * @date: 2025/8/25 11:00 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +public class DisasterDataReqVO { + + @Schema(description = "ID") + private String id; + @Schema(description = "灾害类型 1:一般灾害; 2:气象灾害") + private Integer type; + @Schema(description = "灾害名称") + private String name; + +} diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/dict/vo/sys/SysDictReqVO.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/dict/vo/sys/SysDictReqVO.java index 9c555922..029d0814 100644 --- a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/dict/vo/sys/SysDictReqVO.java +++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/dict/vo/sys/SysDictReqVO.java @@ -17,8 +17,11 @@ public class SysDictReqVO { private Integer id; private String dictTypeCode; private String field1Code; + private String field1Name; private String field2Code; + private String field2Name; private String field3Code; + private String field3Name; private Integer deleted; public SysDictReqVO(String dictTypeCode, String field1Code,Integer deleted) { 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 d37a5f45..6ade953d 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 @@ -1,5 +1,6 @@ package cn.iocoder.yudao.module.farm.dal.mysql.disasterdata; +import cn.iocoder.yudao.module.farm.controller.admin.dict.vo.DisasterDataReqVO; import cn.iocoder.yudao.module.farm.controller.admin.disasterdata.vo.DisasterDataPageReqVO; import cn.iocoder.yudao.module.farm.dal.dataobject.disasterdata.DisasterDataDO; import org.apache.ibatis.annotations.Mapper; @@ -19,7 +20,6 @@ public interface DisasterDataMapper { long selectDisasterDataCount(@Param("req") DisasterDataPageReqVO reqVO); - DisasterDataDO selectById(String id); void deleteByIds(List ids); @@ -29,4 +29,6 @@ public interface DisasterDataMapper { void updateById(DisasterDataDO updateObj); void insert(DisasterDataDO disasterData); + + DisasterDataDO selectOne(DisasterDataReqVO reqVO); } \ No newline at end of file diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/sysDict/SysDictMapper.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/sysDict/SysDictMapper.java index f69f2e2c..408cb137 100644 --- a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/sysDict/SysDictMapper.java +++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/sysDict/SysDictMapper.java @@ -30,6 +30,8 @@ public interface SysDictMapper { List groupByTypeCode(); + List groupByFieldCode(@Param("dictTypeCode") String dictTypeCode); + void insertOne(SysDictDO reqVO); void updateById(SysDictDO reqVO); 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 c432b217..14051dc2 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 @@ -41,6 +41,14 @@ public class CommonConstants { public final static String DICT_TYPE_CODE_1 = "common_disaster"; // 一般灾害 public final static String DICT_TYPE_CODE_2 = "weather_disaster"; // 气象灾害 public final static String DICT_TYPE_CODE_3 = "species_classify_library"; // 物种类别 + public final static String DICT_TYPE_CODE_4 = "invest_goods_type"; // 投入品 + public final static String DICT_TYPE_CODE_4_1 = "invest_goods_unit_1"; // 投入品单位-1 + public final static String DICT_TYPE_CODE_4_2 = "invest_goods_unit_2"; // 投入品单位-2 + public final static String DICT_TYPE_CODE_5 = "farming_type"; // 农事类型 + public final static String DICT_TYPE_CODE_6 = "farming_name"; // 农事名称 + public final static String DICT_TYPE_CODE_7 = "drug_type"; // 药物类型 + public final static String COMMON_DISASTER = "1"; // 一般灾害 + public final static String WEATHER_DISASTER = "2"; // 气象灾害 } diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/service/disasterdata/DisasterDataServiceImpl.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/service/disasterdata/DisasterDataServiceImpl.java index 4082d5c8..591ea828 100644 --- a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/service/disasterdata/DisasterDataServiceImpl.java +++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/service/disasterdata/DisasterDataServiceImpl.java @@ -3,6 +3,8 @@ package cn.iocoder.yudao.module.farm.service.disasterdata; 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.module.farm.controller.admin.dict.vo.DisasterDataReqVO; +import cn.iocoder.yudao.module.farm.controller.admin.dict.vo.sys.SysDictReqVO; import cn.iocoder.yudao.module.farm.controller.admin.disasterdata.vo.DisasterDataPageReqVO; import cn.iocoder.yudao.module.farm.controller.admin.disasterdata.vo.DisasterDataSaveReqVO; import cn.iocoder.yudao.module.farm.dal.dataobject.disasterdata.DisasterDataDO; @@ -11,7 +13,9 @@ import cn.iocoder.yudao.module.farm.dal.mysql.sysDict.SysDictDO; import cn.iocoder.yudao.module.farm.dal.mysql.sysDict.SysDictMapper; import cn.iocoder.yudao.module.farm.enums.CommonConstants; import cn.iocoder.yudao.module.farm.framework.util.ImageCollectionUtil; +import cn.iocoder.yudao.module.farm.utils.StrHelperUtil; import jakarta.annotation.Resource; +import org.apache.commons.lang3.ObjectUtils; import org.springframework.stereotype.Service; import org.springframework.validation.annotation.Validated; @@ -22,6 +26,7 @@ import java.util.stream.Collectors; import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; import static cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils.getLoginUser; +import static cn.iocoder.yudao.module.farm.enums.CommonConstants.*; import static cn.iocoder.yudao.module.farm.enums.ErrorCodeConstants.DISASTER_DATA_NOT_EXISTS; /** @@ -41,6 +46,13 @@ public class DisasterDataServiceImpl implements DisasterDataService { @Override public String createDisasterData(DisasterDataSaveReqVO createReqVO) { + // 名称查重 + DisasterDataReqVO reqVO = new DisasterDataReqVO(); + reqVO.setName(createReqVO.getName()); + DisasterDataDO obj = disasterDataMapper.selectOne(reqVO); + if (ObjectUtils.isNotEmpty(obj)) { + return "灾害名称重复"; + } // 插入 DisasterDataDO disasterData = BeanUtils.toBean(createReqVO, DisasterDataDO.class); // 将图片集合转换为数据库存储的字符串,仅当前端传了列表时进行转换 @@ -52,15 +64,59 @@ public class DisasterDataServiceImpl implements DisasterDataService { disasterData.setCreator(getLoginUser().getId().toString()); disasterData.setTenantId(getLoginUser().getTenantId().toString()); disasterDataMapper.insert(disasterData); - + // 同步 + this.syncCreateDict(disasterData.getId()); // 返回 return disasterData.getId(); } + private void syncCreateDict(String id) { + + DisasterDataReqVO reqVO = new DisasterDataReqVO(); + reqVO.setId(id); + DisasterDataDO obj = disasterDataMapper.selectOne(reqVO); + Integer type = obj.getType(); // 灾害类型 + String name = obj.getName(); // 灾害名称 + + SysDictDO insertObj = new SysDictDO(); + if (type == 1) { + // 一般灾害 父类编号 + String category = obj.getCategory(); + // 一般灾害 + List list = sysDictMapper.groupByFieldCode(DICT_TYPE_CODE_1); + Map parentMap = list.stream().collect(Collectors.toMap(SysDictDO::getField1Code, SysDictDO::getField1Name, (v1, v2) -> v1)); + + insertObj.setDictTypeCode(DICT_TYPE_CODE_1); + insertObj.setDictTypeName("一般灾害"); + insertObj.setField1Code(category); + insertObj.setField1Name(parentMap.get(category)); + insertObj.setField2Code(StrHelperUtil.generate()); + insertObj.setField2Name(name); + } else { + // 气象灾害 + insertObj.setDictTypeCode(DICT_TYPE_CODE_2); + insertObj.setDictTypeName("气象灾害"); + insertObj.setField1Code(StrHelperUtil.generate()); + insertObj.setField1Name(name); + + } + insertObj.setStatus(CommonConstants.YES_CODE); + insertObj.setDeleted(true); + sysDictMapper.insertOne(insertObj); + + } + @Override public void updateDisasterData(DisasterDataSaveReqVO updateReqVO) { // 校验存在 validateDisasterDataExists(updateReqVO.getId()); + // 名称查重 + DisasterDataReqVO reqVO = new DisasterDataReqVO(); + reqVO.setName(updateReqVO.getName()); + DisasterDataDO obj = disasterDataMapper.selectOne(reqVO); + if (ObjectUtils.isNotEmpty(obj)) { + return; + } // 更新 DisasterDataDO updateObj = BeanUtils.toBean(updateReqVO, DisasterDataDO.class); // 将图片集合转换为数据库存储的字符串,仅当前端传了列表时进行转换 @@ -70,8 +126,55 @@ public class DisasterDataServiceImpl implements DisasterDataService { updateObj.setUpdater(getLoginUser().getId().toString()); updateObj.setUpdateTime(LocalDateTime.now()); disasterDataMapper.updateById(updateObj); + // 同步 + this.syncUpdateDict(updateObj.getId()); } + private void syncUpdateDict(String id) { + + DisasterDataReqVO reqVO = new DisasterDataReqVO(); + reqVO.setId(id); + DisasterDataDO obj = disasterDataMapper.selectOne(reqVO); + Integer type = obj.getType(); // 灾害类型 + String name = obj.getName(); // 灾害名称 + + + if (type == 1) { + // 一般灾害 + List list = sysDictMapper.groupByFieldCode(DICT_TYPE_CODE_1); + Map parentMap = list.stream().collect(Collectors.toMap(SysDictDO::getField1Code, SysDictDO::getField1Name, (v1, v2) -> v1)); + + SysDictReqVO query = new SysDictReqVO(); + query.setDictTypeCode(DICT_TYPE_CODE_1); + query.setField2Name(name); + SysDictDO aDo = sysDictMapper.getDictByField3Code(query); + + // 一般灾害 父类编号 + String category = obj.getCategory(); + SysDictDO updateObj = new SysDictDO(); + updateObj.setId(aDo.getId()); + updateObj.setField1Code(category); + updateObj.setField1Name(parentMap.get(category)); + updateObj.setField2Code(aDo.getField2Code()); + updateObj.setField2Name(name); + sysDictMapper.updateById(updateObj); + } else { + // 气象灾害 + SysDictReqVO query = new SysDictReqVO(); + query.setDictTypeCode(DICT_TYPE_CODE_2); + query.setField1Name(name); + SysDictDO aDo = sysDictMapper.getDictByField3Code(query); + + SysDictDO updateObj = new SysDictDO(); + updateObj.setId(aDo.getId()); + updateObj.setField1Code(aDo.getField1Code()); + updateObj.setField1Name(name); + sysDictMapper.updateById(updateObj); + } + + } + + @Override public void deleteDisasterData(String id) { // 校验存在 @@ -81,6 +184,24 @@ public class DisasterDataServiceImpl implements DisasterDataService { aDo.setId(id); aDo.setDeleted(true); disasterDataMapper.updateById(aDo); + // 同步 + this.syncDeleteDict(id); + } + + private void syncDeleteDict(String id) { + DisasterDataReqVO reqVO = new DisasterDataReqVO(); + reqVO.setId(id); + DisasterDataDO aDo = disasterDataMapper.selectOne(reqVO); + String name = aDo.getName(); + + SysDictReqVO query = new SysDictReqVO(); + query.setField2Name(name); + SysDictDO obj = sysDictMapper.selectDictByMaxField2Code(query); + + SysDictDO updateObj = new SysDictDO(); + updateObj.setId(obj.getId()); + updateObj.setDeleted(false); + sysDictMapper.updateById(obj); } @Override @@ -108,7 +229,7 @@ public class DisasterDataServiceImpl implements DisasterDataService { @Override public PageResult getDisasterDataPage(DisasterDataPageReqVO reqVO) { - List dictList = sysDictMapper.getByTypeCode(CommonConstants.DICT_TYPE_CODE_1); + List dictList = sysDictMapper.getByTypeCode(DICT_TYPE_CODE_1); Map dictMap = dictList.stream() .collect(Collectors.toMap( SysDictDO::getField1Code, // key: field1Code diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/service/inputlibrary/InputLibraryServiceImpl.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/service/inputlibrary/InputLibraryServiceImpl.java index e84de810..4b18e351 100644 --- a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/service/inputlibrary/InputLibraryServiceImpl.java +++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/service/inputlibrary/InputLibraryServiceImpl.java @@ -1,28 +1,33 @@ package cn.iocoder.yudao.module.farm.service.inputlibrary; -import cn.hutool.core.collection.CollUtil; import cn.hutool.core.util.IdUtil; +import cn.iocoder.yudao.module.farm.controller.admin.dict.vo.sys.SysDictReqVO; import cn.iocoder.yudao.module.farm.controller.admin.inputlibrary.vo.InputLibraryPageReqVO; import cn.iocoder.yudao.module.farm.controller.admin.inputlibrary.vo.InputLibrarySaveReqVO; +import cn.iocoder.yudao.module.farm.dal.mysql.sysDict.SysDictDO; +import cn.iocoder.yudao.module.farm.dal.mysql.sysDict.SysDictMapper; +import cn.iocoder.yudao.module.farm.enums.CommonConstants; +import cn.iocoder.yudao.module.farm.utils.StrHelperUtil; +import org.apache.commons.lang3.ObjectUtils; import org.springframework.stereotype.Service; import jakarta.annotation.Resource; import org.springframework.validation.annotation.Validated; -import org.springframework.transaction.annotation.Transactional; import cn.iocoder.yudao.module.farm.dal.dataobject.inputlibrary.InputLibraryDO; import cn.iocoder.yudao.framework.common.pojo.PageResult; -import cn.iocoder.yudao.framework.common.pojo.PageParam; import cn.iocoder.yudao.framework.common.util.object.BeanUtils; import cn.iocoder.yudao.framework.security.core.LoginUser; import cn.iocoder.yudao.module.farm.dal.mysql.inputlibrary.InputLibraryMapper; import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; -import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.convertList; -import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.diffList; import static cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils.getLoginUser; +import static cn.iocoder.yudao.module.farm.enums.CommonConstants.DICT_TYPE_CODE_3; +import static cn.iocoder.yudao.module.farm.enums.CommonConstants.DICT_TYPE_CODE_4; import static cn.iocoder.yudao.module.farm.enums.ErrorCodeConstants.INPUT_LIBRARY_NOT_EXISTS; /** @@ -36,44 +41,124 @@ public class InputLibraryServiceImpl implements InputLibraryService { @Resource private InputLibraryMapper inputLibraryMapper; + @Resource + private SysDictMapper sysDictMapper; @Override public String createInputLibrary(InputLibrarySaveReqVO createReqVO) { + // 投入品名称查重 + InputLibraryDO aDo = inputLibraryMapper.selectOne("asset_name", createReqVO.getAssetName()); + if (ObjectUtils.isNotEmpty(aDo)) { + return "物种名称重复"; + } LoginUser user = getLoginUser(); // 插入 + String id = IdUtil.fastUUID(); InputLibraryDO inputLibrary = BeanUtils.toBean(createReqVO, InputLibraryDO.class); - inputLibrary.setId(IdUtil.fastUUID()); + inputLibrary.setId(id); inputLibrary.setTenantId(String.valueOf(user.getTenantId())); inputLibraryMapper.insert(inputLibrary); - + // 同步 + this.syncCreateDict(id); // 返回 return inputLibrary.getId(); } + private void syncCreateDict(String id) { + List list = sysDictMapper.groupByFieldCode(DICT_TYPE_CODE_4); + Map parentMap = list.stream().collect(Collectors.toMap(SysDictDO::getField1Code, SysDictDO::getField1Name, (v1, v2) -> v1)); + + InputLibraryDO aDo = inputLibraryMapper.selectById(id); + String assetType = aDo.getAssetType();// 父类编号 + String assetName = aDo.getAssetName();// 子类名称 + + SysDictDO insertObj = new SysDictDO(); + insertObj.setDictTypeCode(DICT_TYPE_CODE_4); + insertObj.setDictTypeName("投入品"); + insertObj.setField1Code(assetType); + insertObj.setField1Name(parentMap.get(assetType)); + insertObj.setField2Code(StrHelperUtil.generate()); + insertObj.setField2Name(assetName); + insertObj.setStatus(CommonConstants.YES_CODE); + insertObj.setDeleted(true); + sysDictMapper.insertOne(insertObj); + } + @Override public void updateInputLibrary(InputLibrarySaveReqVO updateReqVO) { // 校验存在 validateInputLibraryExists(updateReqVO.getId()); + // 投入品名称查重 + InputLibraryDO aDo = inputLibraryMapper.selectOne("asset_name", updateReqVO.getAssetName()); + if (ObjectUtils.isNotEmpty(aDo)) { + return ; + } // 更新 InputLibraryDO updateObj = BeanUtils.toBean(updateReqVO, InputLibraryDO.class); inputLibraryMapper.updateById(updateObj); + // 同步 + this.syncUpdateDict(updateObj.getId()); } - @Override + private void syncUpdateDict(String id) { + + InputLibraryDO aDo = inputLibraryMapper.selectById(id); + String assetType = aDo.getAssetType();// 父类编号 + String assetName = aDo.getAssetName();// 子类名称 + + List list = sysDictMapper.groupByFieldCode(DICT_TYPE_CODE_4); + Map parentMap = list.stream().collect(Collectors.toMap(SysDictDO::getField1Code, SysDictDO::getField1Name, (v1, v2) -> v1)); + + SysDictReqVO query = new SysDictReqVO(); + query.setDictTypeCode(DICT_TYPE_CODE_4); + query.setField2Name(assetName); + SysDictDO obj = sysDictMapper.selectDictByMaxField2Code(query); + + SysDictDO updateObj = new SysDictDO(); + updateObj.setId(Integer.valueOf(id)); + updateObj.setField1Code(assetType); + updateObj.setField1Name(parentMap.get(assetType)); + updateObj.setField2Code(obj.getField2Code()); + updateObj.setField2Name(assetName); + sysDictMapper.updateById(updateObj); + + } + + @Override public void deleteInputLibrary(String id) { // 校验存在 validateInputLibraryExists(id); // 删除 inputLibraryMapper.deleteById(id); + // 同步 + this.syncDeleteDict(id); + + } + + private void syncDeleteDict(String id) { + + InputLibraryDO aDo = inputLibraryMapper.selectById(id); + String assetName = aDo.getAssetName();// 子类名称 + + SysDictReqVO query = new SysDictReqVO(); + query.setDictTypeCode(DICT_TYPE_CODE_3); + query.setField2Name(assetName); + SysDictDO obj = sysDictMapper.selectDictByMaxField2Code(query); + + SysDictDO updateObj = new SysDictDO(); + updateObj.setId(obj.getId()); + updateObj.setDeleted(false); + sysDictMapper.updateById(obj); + } @Override - public void deleteInputLibraryListByIds(List ids) { + public void deleteInputLibraryListByIds(List ids) { // 删除 inputLibraryMapper.deleteByIds(ids); - } + } -private void validateInputLibraryExists(String id) { + private void validateInputLibraryExists(String id) { if (inputLibraryMapper.selectById(id) == null) { throw exception(INPUT_LIBRARY_NOT_EXISTS); } diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/service/specieslibrary/SpeciesLibraryServiceImpl.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/service/specieslibrary/SpeciesLibraryServiceImpl.java index 210a3336..9e5a0c41 100644 --- a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/service/specieslibrary/SpeciesLibraryServiceImpl.java +++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/service/specieslibrary/SpeciesLibraryServiceImpl.java @@ -86,13 +86,13 @@ public class SpeciesLibraryServiceImpl implements SpeciesLibraryService { @Override public void updateSpeciesLibrary(SpeciesLibrarySaveReqVO updateReqVO) { + // 校验存在 + validateSpeciesLibraryExists(updateReqVO.getId()); // 名称重复验证 SpeciesLibraryDO obj = speciesLibraryMapper.selectOne("cultivar_name", updateReqVO.getCultivarName()); if (ObjectUtils.isNotEmpty(obj)) { return ; } - // 校验存在 - validateSpeciesLibraryExists(updateReqVO.getId()); // 更新 SpeciesLibraryDO updateObj = BeanUtils.toBean(updateReqVO, SpeciesLibraryDO.class); speciesLibraryMapper.updateById(updateObj); diff --git a/yudao-module-farm/src/main/resources/mapper/SysDictMapper.xml b/yudao-module-farm/src/main/resources/mapper/SysDictMapper.xml index 5b54acdd..375be726 100644 --- a/yudao-module-farm/src/main/resources/mapper/SysDictMapper.xml +++ b/yudao-module-farm/src/main/resources/mapper/SysDictMapper.xml @@ -33,7 +33,7 @@ SELECT id,field1_code, field1_name, field2_name, field3_code FROM farm_sys_dict - WHERE dict_type_code = #{dictTypeCode} AND field2_code = #{field2Code} + ORDER BY field3_code DESC LIMIT 1 @@ -45,6 +45,12 @@ SELECT field1_code, field1_name, field2_name, field2_code, field3_code, field3_name FROM farm_sys_dict + + DESC LIMIT 1 + + + + deleted = 0 @@ -56,13 +62,14 @@ AND field2_code = #{field2Code} + + AND field2_name = #{field2Name} + AND field3_code = #{field3Code} - DESC LIMIT 1 - - + + + SELECT field1_code,field1_name + FROM farm_sys_dict + + deleted = 0 + + AND dict_type_code = #{dictTypeCode} + + + GROUP BY field1_code,field1_name + + + INSERT INTO farm_sys_dict diff --git a/yudao-module-farm/src/main/resources/mapper/disasterdata/DisasterDataMapper.xml b/yudao-module-farm/src/main/resources/mapper/disasterdata/DisasterDataMapper.xml index cc33e97f..e4960537 100644 --- a/yudao-module-farm/src/main/resources/mapper/disasterdata/DisasterDataMapper.xml +++ b/yudao-module-farm/src/main/resources/mapper/disasterdata/DisasterDataMapper.xml @@ -195,4 +195,18 @@ + + + \ No newline at end of file