From da7c04ca11e77e02598f9ee5396b7b33225e25f1 Mon Sep 17 00:00:00 2001 From: Hannes Hansen Date: Fri, 12 Apr 2024 13:58:57 +0200 Subject: [PATCH] moved device ids and increased dialog width for edit device; fix #SNRGY-3219, #SNRGY-3246 --- .../device-instances.component.ts | 2 +- ...evice-instances-edit-dialog.component.html | 23 ------------------- .../device-instances-edit-dialog.component.ts | 5 ---- ...ice-instances-service-dialog.component.css | 9 ++++++++ ...ce-instances-service-dialog.component.html | 23 +++++++++++++++++++ ...vice-instances-service-dialog.component.ts | 17 ++++++++++---- .../shared/device-instances-dialog.service.ts | 7 ++++-- 7 files changed, 50 insertions(+), 36 deletions(-) diff --git a/src/app/modules/devices/device-instances/device-instances.component.ts b/src/app/modules/devices/device-instances/device-instances.component.ts index e145ed59..46a21a60 100644 --- a/src/app/modules/devices/device-instances/device-instances.component.ts +++ b/src/app/modules/devices/device-instances/device-instances.component.ts @@ -306,7 +306,7 @@ export class DeviceInstancesComponent implements OnInit, AfterViewInit { } showInfoOfDevice(device: DeviceInstancesModel): void { - this.deviceInstancesDialogService.openDeviceServiceDialog(device.device_type.id, device.id); + this.deviceInstancesDialogService.openDeviceServiceDialog(device); } editDevice(device: DeviceInstancesModel): void { diff --git a/src/app/modules/devices/device-instances/dialogs/device-instances-edit-dialog.component.html b/src/app/modules/devices/device-instances/dialogs/device-instances-edit-dialog.component.html index 3a4d0c49..7b738652 100644 --- a/src/app/modules/devices/device-instances/dialogs/device-instances-edit-dialog.component.html +++ b/src/app/modules/devices/device-instances/dialogs/device-instances-edit-dialog.component.html @@ -18,29 +18,6 @@

Edit Device

-
- - ID - - - - Short ID - - - - Devicetype ID - - - - Devicetype Name - - - - Origin Name - - -
-
Display Name diff --git a/src/app/modules/devices/device-instances/dialogs/device-instances-edit-dialog.component.ts b/src/app/modules/devices/device-instances/dialogs/device-instances-edit-dialog.component.ts index 20274218..b1a98be8 100644 --- a/src/app/modules/devices/device-instances/dialogs/device-instances-edit-dialog.component.ts +++ b/src/app/modules/devices/device-instances/dialogs/device-instances-edit-dialog.component.ts @@ -39,7 +39,6 @@ export class DeviceInstancesEditDialogComponent implements OnInit { constructor( private dialogRef: MatDialogRef, - private deviceInstancesService: DeviceInstancesService, private deviceTypeService: DeviceTypeService, @Inject(MAT_DIALOG_DATA) private data: { @@ -77,10 +76,6 @@ export class DeviceInstancesEditDialogComponent implements OnInit { ngOnInit() {} - getShortId(id: string): string { - return this.deviceInstancesService.convertToShortId(id); - } - close(): void { this.dialogRef.close(); } diff --git a/src/app/modules/devices/device-instances/dialogs/device-instances-service-dialog.component.css b/src/app/modules/devices/device-instances/dialogs/device-instances-service-dialog.component.css index 5ed3eb93..0f46d991 100644 --- a/src/app/modules/devices/device-instances/dialogs/device-instances-service-dialog.component.css +++ b/src/app/modules/devices/device-instances/dialogs/device-instances-service-dialog.component.css @@ -25,3 +25,12 @@ ::ng-deep .example-custom-date-class { background:rgba(0,0,0,.38)!important; } + +#id-container { + display: flex; + justify-content: space-between; +} + +#id-container mat-form-field { + width: 18%; +} \ No newline at end of file diff --git a/src/app/modules/devices/device-instances/dialogs/device-instances-service-dialog.component.html b/src/app/modules/devices/device-instances/dialogs/device-instances-service-dialog.component.html index 177da751..b04113ed 100644 --- a/src/app/modules/devices/device-instances/dialogs/device-instances-service-dialog.component.html +++ b/src/app/modules/devices/device-instances/dialogs/device-instances-service-dialog.component.html @@ -22,6 +22,29 @@
+
+ + ID + + + + Short ID + + + + Devicetype ID + + + + Devicetype Name + + + + Origin Name + + +
+ diff --git a/src/app/modules/devices/device-instances/dialogs/device-instances-service-dialog.component.ts b/src/app/modules/devices/device-instances/dialogs/device-instances-service-dialog.component.ts index ac3bf09c..ed52746f 100644 --- a/src/app/modules/devices/device-instances/dialogs/device-instances-service-dialog.component.ts +++ b/src/app/modules/devices/device-instances/dialogs/device-instances-service-dialog.component.ts @@ -30,6 +30,8 @@ import {FormBuilder, FormControl, FormGroup} from '@angular/forms'; import {environment} from '../../../../../environments/environment'; import {AuthorizationService} from '../../../../core/services/authorization.service'; import {ErrorHandlerService} from '../../../../core/services/error-handler.service'; +import { DeviceInstancesModel } from '../shared/device-instances.model'; +import { DeviceInstancesService } from '../shared/device-instances.service'; @Component({ templateUrl: './device-instances-service-dialog.component.html', @@ -49,7 +51,7 @@ export class DeviceInstancesServiceDialogComponent implements OnInit { from: [{value: new Date(new Date().setHours(new Date().getTimezoneOffset() / -60, 0, 0, 0)), disabled: true}], to: [{value: new Date(new Date().setHours(new Date().getTimezoneOffset() / -60, 0, 0, 0)), disabled: true}], }); - deviceId = ''; + device: DeviceInstancesModel; descriptions: string[][]; availability: { serviceId: string; from?: Date; to?: Date; groupType?: string; groupTime?: string }[] = []; availabilityControl = new FormControl<{ @@ -60,7 +62,7 @@ export class DeviceInstancesServiceDialogComponent implements OnInit { constructor( private dialogRef: MatDialogRef, @Inject(MAT_DIALOG_DATA) data: { - deviceId: string; + device: DeviceInstancesModel; services: DeviceTypeServiceModel[]; lastValueElements: LastValuesRequestElementTimescaleModel[]; deviceType: DeviceTypeModel; @@ -71,12 +73,13 @@ export class DeviceInstancesServiceDialogComponent implements OnInit { private fb: FormBuilder, private errorHandlerService: ErrorHandlerService, private authorizationService: AuthorizationService, + private deviceInstancesService: DeviceInstancesService ) { this.services = data.services; this.lastValueElements = data.lastValueElements; this.deviceType = data.deviceType; this.serviceOutputCounts = data.serviceOutputCounts; - this.deviceId = data.deviceId; + this.device = data.device; this.descriptions = data.descriptions; } @@ -105,7 +108,7 @@ export class DeviceInstancesServiceDialogComponent implements OnInit { counter += this.serviceOutputCounts[serviceIndex]; }); }); - this.exportDataService.getTimescaleDataAvailability(this.deviceId).subscribe(availability => { + this.exportDataService.getTimescaleDataAvailability(this.device.id).subscribe(availability => { this.availability = availability; }); } @@ -123,7 +126,7 @@ export class DeviceInstancesServiceDialogComponent implements OnInit { const token = await this.authorizationService.getToken(); const f = await fetch(environment.timescaleAPIURL + '/prepare-download?query=' + JSON.stringify({ serviceId: this.services[i].id, - deviceId: this.deviceId, + deviceId: this.device.id, columns, time: { start: fromIso, @@ -204,4 +207,8 @@ export class DeviceInstancesServiceDialogComponent implements OnInit { }): boolean { return a.groupTime === b.groupTime && a.groupType === b.groupType; } + + getShortId(id: string): string { + return this.deviceInstancesService.convertToShortId(id); + } } diff --git a/src/app/modules/devices/device-instances/shared/device-instances-dialog.service.ts b/src/app/modules/devices/device-instances/shared/device-instances-dialog.service.ts index 3c41fcd1..843457fb 100644 --- a/src/app/modules/devices/device-instances/shared/device-instances-dialog.service.ts +++ b/src/app/modules/devices/device-instances/shared/device-instances-dialog.service.ts @@ -60,8 +60,10 @@ export class DeviceInstancesDialogService { return editDialogRef.afterClosed(); } - openDeviceServiceDialog(deviceTypeId: string, deviceId: string): void { + openDeviceServiceDialog(device: DeviceInstancesModel): void { const obs: Observable[] = []; + const deviceTypeId = device.device_type.id; + const deviceId = device.id; obs.push(this.deviceTypeService.getMeasuringFunctions()); obs.push(this.deviceTypeService.getAspectNodesWithMeasuringFunction()); obs.push(this.deviceTypeService.getLeafCharacteristics()); @@ -117,7 +119,7 @@ export class DeviceInstancesDialogService { dialogConfig.minWidth = '650px'; if (deviceType) { dialogConfig.data = { - deviceId, + device, services: deviceType.services, lastValueElements, deviceType, @@ -135,6 +137,7 @@ export class DeviceInstancesDialogService { display_name: string; } const dialogConfig = new MatDialogConfig(); + dialogConfig.width = "50vh"; dialogConfig.disableClose = false; dialogConfig.data = { device: JSON.parse(JSON.stringify(device)), // create copy of object