Commit 810c2a7ed3af17887481382a57cb7b06a54a1a6d

Authored by Vladyslav_Prykhodko
1 parent 5afc39eb

UI: Fixed bug, not disabled deleting alias used only in alarm widgets

@@ -98,24 +98,17 @@ export class EntityAliasesDialogComponent extends DialogComponent<EntityAliasesD @@ -98,24 +98,17 @@ export class EntityAliasesDialogComponent extends DialogComponent<EntityAliasesD
98 this.data.widgets.forEach((widget) => { 98 this.data.widgets.forEach((widget) => {
99 if (widget.type === widgetType.rpc) { 99 if (widget.type === widgetType.rpc) {
100 if (widget.config.targetDeviceAliasIds && widget.config.targetDeviceAliasIds.length > 0) { 100 if (widget.config.targetDeviceAliasIds && widget.config.targetDeviceAliasIds.length > 0) {
101 - const targetDeviceAliasId = widget.config.targetDeviceAliasIds[0];  
102 - widgetsTitleList = this.aliasToWidgetsMap[targetDeviceAliasId];  
103 - if (!widgetsTitleList) {  
104 - widgetsTitleList = [];  
105 - this.aliasToWidgetsMap[targetDeviceAliasId] = widgetsTitleList;  
106 - }  
107 - widgetsTitleList.push(widget.config.title); 101 + this.addWidgetTitleToWidgetsMap(widget.config.targetDeviceAliasIds[0], widget.config.title);
  102 + }
  103 + } else if (widget.type === widgetType.alarm) {
  104 + if (widget.config.alarmSource) {
  105 + this.addWidgetTitleToWidgetsMap(widget.config.alarmSource.entityAliasId, widget.config.title);
108 } 106 }
109 } else { 107 } else {
110 const datasources = this.utils.validateDatasources(widget.config.datasources); 108 const datasources = this.utils.validateDatasources(widget.config.datasources);
111 datasources.forEach((datasource) => { 109 datasources.forEach((datasource) => {
112 if (datasource.type === DatasourceType.entity && datasource.entityAliasId) { 110 if (datasource.type === DatasourceType.entity && datasource.entityAliasId) {
113 - widgetsTitleList = this.aliasToWidgetsMap[datasource.entityAliasId];  
114 - if (!widgetsTitleList) {  
115 - widgetsTitleList = [];  
116 - this.aliasToWidgetsMap[datasource.entityAliasId] = widgetsTitleList;  
117 - }  
118 - widgetsTitleList.push(widget.config.title); 111 + this.addWidgetTitleToWidgetsMap(datasource.entityAliasId, widget.config.title);
119 } 112 }
120 }); 113 });
121 } 114 }
@@ -141,6 +134,15 @@ export class EntityAliasesDialogComponent extends DialogComponent<EntityAliasesD @@ -141,6 +134,15 @@ export class EntityAliasesDialogComponent extends DialogComponent<EntityAliasesD
141 }); 134 });
142 } 135 }
143 136
  137 + private addWidgetTitleToWidgetsMap(aliasId: string, widgetTitle: string) {
  138 + let widgetsTitleList: Array<string> = this.aliasToWidgetsMap[aliasId];
  139 + if (!widgetsTitleList) {
  140 + widgetsTitleList = [];
  141 + this.aliasToWidgetsMap[aliasId] = widgetsTitleList;
  142 + }
  143 + widgetsTitleList.push(widgetTitle);
  144 + }
  145 +
144 private createEntityAliasFormControl(aliasId: string, entityAlias: EntityAlias): AbstractControl { 146 private createEntityAliasFormControl(aliasId: string, entityAlias: EntityAlias): AbstractControl {
145 const aliasFormControl = this.fb.group({ 147 const aliasFormControl = this.fb.group({
146 id: [aliasId], 148 id: [aliasId],