diff --git a/web-app/src/main/java/com/zcloud/fire/check/command/FireDeviceRemoveExe.java b/web-app/src/main/java/com/zcloud/fire/check/command/FireDeviceRemoveExe.java index 46d556b..ed894f4 100644 --- a/web-app/src/main/java/com/zcloud/fire/check/command/FireDeviceRemoveExe.java +++ b/web-app/src/main/java/com/zcloud/fire/check/command/FireDeviceRemoveExe.java @@ -3,6 +3,7 @@ package com.zcloud.fire.check.command; import com.alibaba.cola.exception.BizException; import com.zcloud.fire.check.domain.gateway.FireDeviceGateway; import com.zcloud.fire.check.persistence.dataobject.FireDeviceDO; +import com.zcloud.fire.check.persistence.repository.FireCheckListItemRepository; import com.zcloud.fire.check.persistence.repository.FireDeviceRepository; import lombok.AllArgsConstructor; import org.springframework.stereotype.Component; @@ -20,6 +21,7 @@ import org.springframework.transaction.annotation.Transactional; public class FireDeviceRemoveExe { private final FireDeviceGateway fireDeviceGateway; private final FireDeviceRepository fireDeviceRepository; + private final FireCheckListItemRepository fireCheckListItemRepository; @Transactional(rollbackFor = Exception.class) public boolean execute(Long id) { @@ -33,8 +35,10 @@ public class FireDeviceRemoveExe { } //TODO 级联删除关联的检查表记录 - - + Long count = fireCheckListItemRepository.countByDeviceId(fireDeviceDO.getFireDeviceId()); + if(count>0){ + throw new BizException("请先删除关联的检查表记录"); + } return true; } diff --git a/web-infrastructure/src/main/java/com/zcloud/fire/check/persistence/repository/FireCheckListItemRepository.java b/web-infrastructure/src/main/java/com/zcloud/fire/check/persistence/repository/FireCheckListItemRepository.java index d9f4a85..c1647da 100644 --- a/web-infrastructure/src/main/java/com/zcloud/fire/check/persistence/repository/FireCheckListItemRepository.java +++ b/web-infrastructure/src/main/java/com/zcloud/fire/check/persistence/repository/FireCheckListItemRepository.java @@ -22,5 +22,7 @@ public interface FireCheckListItemRepository extends BaseRepository statisticListByFireCheckIdList(List fireCheckIdList); + + Long countByDeviceId(String fireDeviceId); } diff --git a/web-infrastructure/src/main/java/com/zcloud/fire/check/persistence/repository/impl/FireCheckListItemRepositoryImpl.java b/web-infrastructure/src/main/java/com/zcloud/fire/check/persistence/repository/impl/FireCheckListItemRepositoryImpl.java index c3d1bd4..79fbfab 100644 --- a/web-infrastructure/src/main/java/com/zcloud/fire/check/persistence/repository/impl/FireCheckListItemRepositoryImpl.java +++ b/web-infrastructure/src/main/java/com/zcloud/fire/check/persistence/repository/impl/FireCheckListItemRepositoryImpl.java @@ -55,5 +55,12 @@ public class FireCheckListItemRepositoryImpl extends BaseRepositoryImpl statisticListByFireCheckIdList(List fireCheckIdList) { return fireCheckListItemMapper.statisticListByFireCheckIdList(fireCheckIdList); } + + @Override + public Long countByDeviceId(String fireDeviceId) { + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("fire_device_id", fireDeviceId); + return fireCheckListItemMapper.selectCount(queryWrapper); + } }