diff --git a/alerter/src/main/java/com/usthe/alert/controller/AlertDefineController.java b/alerter/src/main/java/com/usthe/alert/controller/AlertDefineController.java index 33a07bb..200e23c 100644 --- a/alerter/src/main/java/com/usthe/alert/controller/AlertDefineController.java +++ b/alerter/src/main/java/com/usthe/alert/controller/AlertDefineController.java @@ -21,6 +21,7 @@ import org.springframework.web.bind.annotation.RestController; import javax.validation.Valid; import java.util.List; +import java.util.stream.Collectors; import static com.usthe.common.util.CommonConstants.MONITOR_NOT_EXIST_CODE; import static org.springframework.http.MediaType.APPLICATION_JSON_VALUE; @@ -94,6 +95,7 @@ public class AlertDefineController { public ResponseEntity>> getAlertDefineMonitorsBind( @ApiParam(value = "告警定义ID", example = "6565463543") @PathVariable("alertDefineId") long alertDefineId) { List defineBinds = alertDefineService.getBindAlertDefineMonitors(alertDefineId); + defineBinds = defineBinds.stream().filter(item -> item.getMonitor() != null).collect(Collectors.toList()); return ResponseEntity.ok(new Message<>(defineBinds)); } diff --git a/common/src/main/java/com/usthe/common/entity/alerter/AlertDefineMonitorBind.java b/common/src/main/java/com/usthe/common/entity/alerter/AlertDefineMonitorBind.java index 49d9a52..7aaee70 100644 --- a/common/src/main/java/com/usthe/common/entity/alerter/AlertDefineMonitorBind.java +++ b/common/src/main/java/com/usthe/common/entity/alerter/AlertDefineMonitorBind.java @@ -7,6 +7,8 @@ import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; import lombok.NoArgsConstructor; +import org.hibernate.annotations.NotFound; +import org.hibernate.annotations.NotFoundAction; import javax.persistence.Column; import javax.persistence.Entity; @@ -58,5 +60,6 @@ public class AlertDefineMonitorBind { @OneToOne(fetch = FetchType.EAGER) @JoinColumn(name = "monitor_id", referencedColumnName = "id", insertable = false, updatable = false) + @NotFound(action = NotFoundAction.IGNORE) private Monitor monitor; }