src/main/java/org/springblade/modules/lang/controller/LandController.java
@@ -30,6 +30,7 @@ import org.springblade.core.mp.support.Query; import org.springblade.core.tool.api.R; import org.springblade.core.tool.utils.Func; import org.springblade.core.tool.utils.StringUtil; import org.springblade.modules.farm.entity.Farm; import org.springblade.modules.farm.vo.FarmVO; import org.springblade.modules.resource.endpoint.OssEndpoint; @@ -314,7 +315,13 @@ @ApiOperationSupport(order = 7) @ApiOperation(value = "逻辑删除", notes = "传入ids") public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) { return R.status(landService.deleteLogic(Func.toLongList(ids))); //先要判断该地块是否还有正在种植的作物,先结束才能删除地块 List<LandVO> land= landService.findPlantInLand(ids); if (land.size()<=0) { return R.status(landService.deleteLogic(Func.toLongList(ids))); }else { throw new org.springblade.core.log.exception.ServiceException(StringUtil.format("请先结束该地块正在种养品种")); } } /** src/main/java/org/springblade/modules/lang/mapper/LandMapper.java
@@ -97,4 +97,6 @@ List<Land> selectByStrainId(@Param("strainId") String strainId,@Param("farmId") String farmId); List<Land> getByStrainIdFarmId(@Param("land")LandVO land); List<LandVO> findPlantInLand(String ids); } src/main/java/org/springblade/modules/lang/mapper/LandMapper.xml
@@ -246,5 +246,12 @@ AND sfp.status = #{land.sfpStatus} </if> </select> <select id="findPlantInLand" resultType="org.springblade.modules.lang.vo.LandVO"> SELECT land.*,sfp.id AS sfpId,sfp.strain_id FROM sys_land land LEFT JOIN sys_farm_plant sfp ON land.id = sfp.land_id WHERE land.is_deleted = 0 AND sfp.status = 1 AND land.id = #{ids} </select> </mapper> src/main/java/org/springblade/modules/lang/service/ILandService.java
@@ -106,4 +106,6 @@ * @return */ List<Land> getByStrainIdFarmId(LandVO land); List<LandVO> findPlantInLand(String ids); } src/main/java/org/springblade/modules/lang/service/impl/LandServiceImpl.java
@@ -128,4 +128,9 @@ public List<Land> getByStrainIdFarmId(LandVO land) { return baseMapper.getByStrainIdFarmId(land); } @Override public List<LandVO> findPlantInLand(String ids) { return baseMapper.findPlantInLand(ids); } } src/main/java/org/springblade/modules/lang/vo/LandVO.java
@@ -39,4 +39,5 @@ * 种养品种植状态 */ String sfpStatus; String sfpId; }