Browse Source

Add correct sort dataKey

pull/3415/head
Vladyslav_Prykhodko 6 years ago
parent
commit
903080f4f3
  1. 7
      ui-ngx/src/app/core/api/widget-subscription.ts
  2. 4
      ui-ngx/src/app/modules/home/components/widget/legend.component.html
  3. 5
      ui-ngx/src/app/modules/home/components/widget/legend.component.ts

7
ui-ngx/src/app/core/api/widget-subscription.ts

@ -575,7 +575,7 @@ export class WidgetSubscription implements IWidgetSubscription {
updateDataVisibility(index: number): void {
if (this.displayLegend) {
const hidden = this.legendData.keys[index].dataKey.hidden;
const hidden = this.legendData.keys.find(key => key.dataIndex === index).dataKey.hidden;
if (hidden) {
this.hiddenData[index].data = this.data[index].data;
this.data[index].data = [];
@ -1226,6 +1226,9 @@ export class WidgetSubscription implements IWidgetSubscription {
});
});
}
if (this.displayLegend) {
this.legendData.keys = this.legendData.keys.sort((key1, key2) => key1.dataKey.label.localeCompare(key2.dataKey.label));
}
if (this.caulculateLegendData) {
this.data.forEach((dataSetHolder, keyIndex) => {
this.updateLegend(keyIndex, dataSetHolder.data, false);
@ -1328,7 +1331,7 @@ export class WidgetSubscription implements IWidgetSubscription {
}
private updateLegend(dataIndex: number, data: DataSet, detectChanges: boolean) {
const dataKey = this.legendData.keys[dataIndex].dataKey;
const dataKey = this.legendData.keys.find(key => key.dataIndex === dataIndex).dataKey;
const decimals = isDefined(dataKey.decimals) ? dataKey.decimals : this.decimals;
const units = dataKey.units && dataKey.units.length ? dataKey.units : this.units;
const legendKeyData = this.legendData.data[dataIndex];

4
ui-ngx/src/app/modules/home/components/widget/legend.component.html

@ -32,7 +32,7 @@
<td><span class="tb-legend-line" [ngStyle]="{backgroundColor: legendKey.dataKey.color}"></span></td>
<td class="tb-legend-label"
(click)="toggleHideData(legendKey.dataIndex)"
[ngClass]="{ 'tb-hidden-label': legendData.keys[legendKey.dataIndex].dataKey.hidden, 'tb-horizontal': isHorizontal }">
[ngClass]="{ 'tb-hidden-label': legendKey.dataKey.hidden, 'tb-horizontal': isHorizontal }">
{{ legendKey.dataKey.label }}
</td>
<td class="tb-legend-value" *ngIf="legendConfig.showMin === true">{{ legendData.data[legendKey.dataIndex].min }}</td>
@ -47,7 +47,7 @@
<span class="tb-legend-line" [ngStyle]="{backgroundColor: legendKey.dataKey.color}"></span>
<span class="tb-legend-label"
(click)="toggleHideData(legendKey.dataIndex)"
[ngClass]="{ 'tb-hidden-label': legendData.keys[legendKey.dataIndex].dataKey.hidden}">
[ngClass]="{ 'tb-hidden-label': legendKey.dataKey.hidden}">
{{ legendKey.dataKey.label }}
</span>
</td>

5
ui-ngx/src/app/modules/home/components/widget/legend.component.ts

@ -52,8 +52,9 @@ export class LegendComponent implements OnInit {
}
toggleHideData(index: number) {
if (!this.legendData.keys[index].dataKey.settings.disableDataHiding) {
this.legendData.keys[index].dataKey.hidden = !this.legendData.keys[index].dataKey.hidden;
const dataKey = this.legendData.keys.find(key => key.dataIndex === index).dataKey;
if (!dataKey.settings.disableDataHiding) {
dataKey.hidden = !dataKey.hidden;
this.legendKeyHiddenChange.emit(index);
}
}

Loading…
Cancel
Save