|
|
@@ -8,9 +8,9 @@ import { ServerApiService } from './../../services/server-api.service';
|
|
|
styleUrls: ['./home.component.scss']
|
|
|
})
|
|
|
export class HomeComponent implements OnInit {
|
|
|
- public servers?: Server[];
|
|
|
- public dataTypes?: { [id: number]: ServerDataTypesConfig[] };
|
|
|
- public data?: { [id: number]: { [type: string]: ServerData[] } };
|
|
|
+ public servers?: Array<
|
|
|
+ Server & { types?: Array<ServerDataTypesConfig & { data?: ServerData[]; subtypes?: Array<ServerDataTypesConfig & { data?: ServerData[] }> }> }
|
|
|
+ >;
|
|
|
|
|
|
constructor(private serverApi: ServerApiService) {}
|
|
|
|
|
|
@@ -19,24 +19,16 @@ export class HomeComponent implements OnInit {
|
|
|
const end = new Date();
|
|
|
const start = new Date(end.getTime() - 1000 * 60 * 60 * 4);
|
|
|
this.servers = await this.serverApi.getAllServerConfigs();
|
|
|
- this.dataTypes = {};
|
|
|
- this.data = {};
|
|
|
for (const server of this.servers) {
|
|
|
- this.dataTypes[server.id] = await this.serverApi.getServerDataTypes(server.id);
|
|
|
+ server.types = await this.serverApi.getServerDataTypes(server.id);
|
|
|
|
|
|
- this.data[server.id] = {};
|
|
|
- for (const dataType of this.dataTypes[server.id]) {
|
|
|
+ for (const dataType of server.types) {
|
|
|
if (dataType.subtypes) {
|
|
|
for (const sub of dataType.subtypes) {
|
|
|
- this.data[server.id][`${dataType.type}:${sub.type}`] = await this.serverApi.queryServerData(
|
|
|
- server.id,
|
|
|
- `${dataType.type}:${sub.type}`,
|
|
|
- start,
|
|
|
- end
|
|
|
- );
|
|
|
+ sub.data = await this.serverApi.queryServerData(server.id, `${dataType.type}:${sub.type}`, start, end);
|
|
|
}
|
|
|
} else {
|
|
|
- this.data[server.id][dataType.type] = await this.serverApi.queryServerData(server.id, dataType.type, start, end);
|
|
|
+ dataType.data = await this.serverApi.queryServerData(server.id, dataType.type, start, end);
|
|
|
}
|
|
|
}
|
|
|
}
|