Browse Source

Update event clearing API

pull/5814/head
Viacheslav Klimov 5 years ago
parent
commit
4d86a61580
  1. 9
      application/src/main/java/org/thingsboard/server/controller/EventController.java
  2. 9
      ui-ngx/src/app/core/http/event.service.ts
  3. 6
      ui-ngx/src/app/modules/home/components/event/event-table-config.ts
  4. 3
      ui-ngx/src/app/modules/home/components/event/event-table.component.ts
  5. 2
      ui-ngx/src/assets/locale/locale.constant-en_US.json

9
application/src/main/java/org/thingsboard/server/controller/EventController.java

@ -242,7 +242,7 @@ public class EventController extends BaseController {
@ApiOperation(value = "Clear Events (clearEvents)", notes = "Clears events for specified entity.")
@PreAuthorize("hasAnyAuthority('SYS_ADMIN', 'TENANT_ADMIN', 'CUSTOMER_USER')")
@RequestMapping(value = "/events/{entityType}/{entityId}/{eventType}/clear", method = RequestMethod.DELETE)
@RequestMapping(value = "/events/{entityType}/{entityId}/{eventType}/clear", method = RequestMethod.POST)
@ResponseStatus(HttpStatus.OK)
public void clearEvents(
@ApiParam(value = ENTITY_TYPE_PARAM_DESCRIPTION, required = true)
@ -250,13 +250,14 @@ public class EventController extends BaseController {
@ApiParam(value = ENTITY_ID_PARAM_DESCRIPTION, required = true)
@PathVariable(ENTITY_ID) String strEntityId,
@ApiParam(value = TENANT_ID_PARAM_DESCRIPTION, required = true)
@RequestParam("tenantId") String strTenantId,
@ApiParam(value = "A string value representing event type", example = "STATS", required = true)
@PathVariable("eventType") String eventType,
@ApiParam(value = EVENT_START_TIME_DESCRIPTION)
@RequestParam("tenantId") String strTenantId,
@ApiParam(value = "A string value representing event type", example = "STATS", required = true)
@RequestParam(required = false) Long startTime,
@ApiParam(value = EVENT_END_TIME_DESCRIPTION)
@RequestParam(required = false) Long endTime) throws ThingsboardException {
@RequestParam(required = false) Long endTime,
@RequestBody EventFilter eventFilter) throws ThingsboardException {
checkParameter("EntityId", strEntityId);
checkParameter("EntityType", strEntityType);
try {

9
ui-ngx/src/app/core/http/event.service.ts

@ -44,5 +44,12 @@ export class EventService {
return this.http.post<PageData<Event>>(`/api/events/${entityId.entityType}/${entityId.id}` +
`${pageLink.toQuery()}&tenantId=${tenantId}`, {...filters, eventType}, defaultHttpOptionsFromConfig(config));
}
public clearEvents(entityId: EntityId, eventType: EventType | DebugEventType, filters: FilterEventBody, tenantId: string,
startTime?: number, endTime?: number, config?: RequestConfig) {
return this.http.post(`/api/events/${entityId.entityType}/${entityId.id}/${eventType}/clear&tenantId=${tenantId}` +
(startTime ? `&startTime=${startTime}` : ``) + (endTime ? `&endTime=${endTime}` : ``), {...filters, eventType},
defaultHttpOptionsFromConfig(config));
}
}

6
ui-ngx/src/app/modules/home/components/event/event-table-config.ts

@ -48,7 +48,6 @@ import {
EventFilterPanelData,
FilterEntityColumn
} from '@home/components/event/event-filter-panel.component';
import { HttpClient } from '@angular/common/http';
export class EventTableConfig extends EntityTableConfig<Event, TimePageLink> {
@ -83,8 +82,7 @@ export class EventTableConfig extends EntityTableConfig<Event, TimePageLink> {
private debugEventTypes: Array<DebugEventType> = null,
private overlay: Overlay,
private viewContainerRef: ViewContainerRef,
private cd: ChangeDetectorRef,
private http: HttpClient) {
private cd: ChangeDetectorRef) {
super();
this.loadDataOnInit = false;
this.tableTitle = '';
@ -143,7 +141,7 @@ export class EventTableConfig extends EntityTableConfig<Event, TimePageLink> {
icon: 'delete',
isEnabled: () => true,
onAction: ($event, entity) => {
this.http.delete(`/events/${entity.entityId.entityType}/${entity.entityId.id}/${entity.eventTypeValue}/clear`).subscribe();
this.eventService.clearEvents(entity.entityId, entity.eventType, entity.filterParams, entity.tenantId, , ).subscribe();
}
});
}

3
ui-ngx/src/app/modules/home/components/event/event-table.component.ts

@ -104,8 +104,7 @@ export class EventTableComponent implements OnInit {
this.debugEventTypes,
this.overlay,
this.viewContainerRef,
this.cd,
this.http
this.cd
);
}

2
ui-ngx/src/assets/locale/locale.constant-en_US.json

@ -1853,7 +1853,7 @@
"event": {
"event-type": "Event type",
"events-filter": "Events Filter",
"clean-events": "Clean Events",
"clean-events": "Clear Events",
"type-error": "Error",
"type-lc-event": "Lifecycle event",
"type-stats": "Statistics",

Loading…
Cancel
Save