diff --git a/src/main/java/com/xydl/cac/entity/WarnRule.java b/src/main/java/com/xydl/cac/entity/WarnRule.java index bb47808..220424c 100644 --- a/src/main/java/com/xydl/cac/entity/WarnRule.java +++ b/src/main/java/com/xydl/cac/entity/WarnRule.java @@ -111,7 +111,7 @@ public class WarnRule { } public boolean canDo() { - if (active != null && active.intValue() == 1 && actualComp != null) { + if (active != null && active.intValue() == 1 && actualComp != null && nSensor != null) { return true; } return false; diff --git a/src/main/java/com/xydl/cac/service/impl/NSensorServiceImpl.java b/src/main/java/com/xydl/cac/service/impl/NSensorServiceImpl.java index 17a5bcf..1bd7f17 100644 --- a/src/main/java/com/xydl/cac/service/impl/NSensorServiceImpl.java +++ b/src/main/java/com/xydl/cac/service/impl/NSensorServiceImpl.java @@ -152,7 +152,7 @@ public class NSensorServiceImpl implements NSensorService { public NSensor detail(Integer id) throws Exception { Optional optional = repository.findById(id); if (!optional.isPresent()) { - throw new BusinessException("未找到该装置id=" + id); + return null; } NSensor sensor = optional.get(); this.fillOtherName(sensor); diff --git a/src/main/java/com/xydl/cac/service/impl/WarnRuleServiceImpl.java b/src/main/java/com/xydl/cac/service/impl/WarnRuleServiceImpl.java index ad75300..5ba5090 100644 --- a/src/main/java/com/xydl/cac/service/impl/WarnRuleServiceImpl.java +++ b/src/main/java/com/xydl/cac/service/impl/WarnRuleServiceImpl.java @@ -58,6 +58,9 @@ public class WarnRuleServiceImpl implements WarnRuleService { item.setId(null); item.setLastDTime(null); NSensor sensor = sensorService.detail(item.getSensorId()); + if (sensor == null){ + throw new BusinessException("未找到该装置id=" + item.getSensorId()); + } Optional optionalModevTypePoint = typePointRepository.findById(item.getModevtypePointId()); if (!optionalModevTypePoint.isPresent()) { throw new BusinessException("未找到该监测装置类型(" + sensor.getTypeName() + ")的属性点" + item.getModevtypePointId());