[monitor] 告警中心-告警删除
This commit is contained in:
@@ -3,11 +3,13 @@ package com.usthe.alert.service.impl;
|
|||||||
import com.usthe.alert.dao.AlertDao;
|
import com.usthe.alert.dao.AlertDao;
|
||||||
import com.usthe.alert.pojo.entity.Alert;
|
import com.usthe.alert.pojo.entity.Alert;
|
||||||
import com.usthe.alert.service.AlertService;
|
import com.usthe.alert.service.AlertService;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.data.domain.Page;
|
import org.springframework.data.domain.Page;
|
||||||
import org.springframework.data.domain.PageRequest;
|
import org.springframework.data.domain.PageRequest;
|
||||||
import org.springframework.data.jpa.domain.Specification;
|
import org.springframework.data.jpa.domain.Specification;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
|
|
||||||
import java.util.HashSet;
|
import java.util.HashSet;
|
||||||
|
|
||||||
@@ -17,6 +19,8 @@ import java.util.HashSet;
|
|||||||
* @date 2021/12/10 15:39
|
* @date 2021/12/10 15:39
|
||||||
*/
|
*/
|
||||||
@Service
|
@Service
|
||||||
|
@Transactional(rollbackFor = Exception.class)
|
||||||
|
@Slf4j
|
||||||
public class AlertServiceImpl implements AlertService {
|
public class AlertServiceImpl implements AlertService {
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
|
|||||||
@@ -13,10 +13,6 @@
|
|||||||
</nz-breadcrumb>
|
</nz-breadcrumb>
|
||||||
<nz-divider></nz-divider>
|
<nz-divider></nz-divider>
|
||||||
|
|
||||||
<button nz-button nzType="primary" (click)="onRestoreAlerts()" >
|
|
||||||
<i nz-icon nzType="up-circle" nzTheme="outline"></i>
|
|
||||||
恢复告警
|
|
||||||
</button>
|
|
||||||
<button nz-button nzType="primary" (click)="onDeleteAlerts()">
|
<button nz-button nzType="primary" (click)="onDeleteAlerts()">
|
||||||
<i nz-icon nzType="delete" nzTheme="outline"></i>
|
<i nz-icon nzType="delete" nzTheme="outline"></i>
|
||||||
删除告警
|
删除告警
|
||||||
@@ -68,9 +64,6 @@
|
|||||||
<td nzAlign="center">{{ data.content }}</td>
|
<td nzAlign="center">{{ data.content }}</td>
|
||||||
<td nzAlign="center">{{ data.gmtCreate }}</td>
|
<td nzAlign="center">{{ data.gmtCreate }}</td>
|
||||||
<td nzAlign="center" nzRight>
|
<td nzAlign="center" nzRight>
|
||||||
<button nz-button nzType="primary" (click)="onRestoreOneAlert(data.id)">
|
|
||||||
<i nz-icon nzType="up-circle" nzTheme="outline"></i>
|
|
||||||
</button>
|
|
||||||
<button nz-button nzType="primary" (click)="onDeleteOneAlert(data.id)">
|
<button nz-button nzType="primary" (click)="onDeleteOneAlert(data.id)">
|
||||||
<i nz-icon nzType="delete" nzTheme="outline"></i>
|
<i nz-icon nzType="delete" nzTheme="outline"></i>
|
||||||
</button>
|
</button>
|
||||||
|
|||||||
@@ -2,8 +2,8 @@ import { Component, OnInit } from '@angular/core';
|
|||||||
import {NzTableQueryParams} from "ng-zorro-antd/table";
|
import {NzTableQueryParams} from "ng-zorro-antd/table";
|
||||||
import {Alert} from "../../../pojo/Alert";
|
import {Alert} from "../../../pojo/Alert";
|
||||||
import {NzNotificationService} from "ng-zorro-antd/notification";
|
import {NzNotificationService} from "ng-zorro-antd/notification";
|
||||||
import {NzMessageService} from "ng-zorro-antd/message";
|
|
||||||
import {AlertService} from "../../../service/alert.service";
|
import {AlertService} from "../../../service/alert.service";
|
||||||
|
import {NzModalService} from "ng-zorro-antd/modal";
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'app-alert-center',
|
selector: 'app-alert-center',
|
||||||
@@ -14,7 +14,7 @@ import {AlertService} from "../../../service/alert.service";
|
|||||||
export class AlertCenterComponent implements OnInit {
|
export class AlertCenterComponent implements OnInit {
|
||||||
|
|
||||||
constructor(private notifySvc: NzNotificationService,
|
constructor(private notifySvc: NzNotificationService,
|
||||||
private msg: NzMessageService,
|
private modal: NzModalService,
|
||||||
private alertSvc: AlertService) { }
|
private alertSvc: AlertService) { }
|
||||||
|
|
||||||
pageIndex: number = 1;
|
pageIndex: number = 1;
|
||||||
@@ -50,18 +50,53 @@ export class AlertCenterComponent implements OnInit {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
onRestoreAlerts() {
|
|
||||||
|
|
||||||
}
|
|
||||||
onRestoreOneAlert(alertId: number) {
|
|
||||||
|
|
||||||
}
|
|
||||||
onDeleteAlerts() {
|
onDeleteAlerts() {
|
||||||
|
if (this.checkedAlertIds == null || this.checkedAlertIds.size === 0) {
|
||||||
|
this.notifySvc.warning("未选中任何待删除项!","");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
this.modal.confirm({
|
||||||
|
nzTitle: '请确认是否批量删除!',
|
||||||
|
nzOkText: '确定',
|
||||||
|
nzCancelText: '取消',
|
||||||
|
nzOkDanger: true,
|
||||||
|
nzOkType: "primary",
|
||||||
|
nzOnOk: () => this.deleteAlerts(this.checkedAlertIds)
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
onDeleteOneAlert(alertId: number) {
|
onDeleteOneAlert(alertId: number) {
|
||||||
|
let alerts = new Set<number>();
|
||||||
|
alerts.add(alertId);
|
||||||
|
this.modal.confirm({
|
||||||
|
nzTitle: '请确认是否删除!',
|
||||||
|
nzOkText: '确定',
|
||||||
|
nzCancelText: '取消',
|
||||||
|
nzOkDanger: true,
|
||||||
|
nzOkType: "primary",
|
||||||
|
nzOnOk: () => this.deleteAlerts(alerts)
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
deleteAlerts(alertIds: Set<number>) {
|
||||||
|
this.tableLoading = true;
|
||||||
|
const deleteAlerts$ = this.alertSvc.deleteAlerts(alertIds)
|
||||||
|
.subscribe(message => {
|
||||||
|
deleteAlerts$.unsubscribe();
|
||||||
|
if (message.code === 0) {
|
||||||
|
this.notifySvc.success("删除成功!", "");
|
||||||
|
this.loadAlertsTable();
|
||||||
|
} else {
|
||||||
|
this.tableLoading = false;
|
||||||
|
this.notifySvc.error("删除失败!", message.msg);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
error => {
|
||||||
|
this.tableLoading = false;
|
||||||
|
deleteAlerts$.unsubscribe();
|
||||||
|
this.notifySvc.error("删除失败!", error.msg)
|
||||||
|
}
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
// begin: 列表多选分页逻辑
|
// begin: 列表多选分页逻辑
|
||||||
|
|||||||
@@ -28,4 +28,16 @@ export class AlertService {
|
|||||||
const options = { params: httpParams };
|
const options = { params: httpParams };
|
||||||
return this.http.get<Message<Page<Alert>>>(alerts_uri, options);
|
return this.http.get<Message<Page<Alert>>>(alerts_uri, options);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public deleteAlerts(alertIds: Set<number>) : Observable<Message<any>> {
|
||||||
|
let httpParams = new HttpParams();
|
||||||
|
alertIds.forEach(alertId => {
|
||||||
|
// 注意HttpParams是不可变对象 需要保存append后返回的对象为最新对象
|
||||||
|
// append方法可以叠加同一key, set方法会把key之前的值覆盖只留一个key-value
|
||||||
|
httpParams = httpParams.append('ids', alertId);
|
||||||
|
})
|
||||||
|
const options = { params: httpParams };
|
||||||
|
return this.http.delete<Message<any>>(alerts_uri, options);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user