added states chart
This commit is contained in:
parent
6721c75120
commit
d53b3b9952
@ -31,6 +31,16 @@
|
|||||||
noDataIcon="red:attribute"
|
noDataIcon="red:attribute"
|
||||||
></iqser-table>
|
></iqser-table>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<div class="right-container">
|
||||||
|
<redaction-simple-doughnut-chart
|
||||||
|
[config]="chartData"
|
||||||
|
[radius]="80"
|
||||||
|
[strokeWidth]="15"
|
||||||
|
[subtitle]="'dossier-states-listing.chart.dossier-states' | translate"
|
||||||
|
[totalType]="'count'"
|
||||||
|
></redaction-simple-doughnut-chart>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
@ -55,7 +65,7 @@
|
|||||||
<div *ngIf="cast(entity) as state">
|
<div *ngIf="cast(entity) as state">
|
||||||
<div class="cell">
|
<div class="cell">
|
||||||
<div class="flex-align-items-center">
|
<div class="flex-align-items-center">
|
||||||
<div class="dossier-state-square" [style.background-color]="state.description"></div>
|
<div [style.background-color]="state.description" class="dossier-state-square"></div>
|
||||||
<div class="state-name">{{ state.name }}</div>
|
<div class="state-name">{{ state.name }}</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@ -12,3 +12,7 @@
|
|||||||
line-height: 20px;
|
line-height: 20px;
|
||||||
color: variables.$grey-1;
|
color: variables.$grey-1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.right-container {
|
||||||
|
padding: 50px 26px 0;
|
||||||
|
}
|
||||||
|
|||||||
@ -18,6 +18,7 @@ import { AdminDialogService } from '../../services/admin-dialog.service';
|
|||||||
import { UserService } from '../../../../services/user.service';
|
import { UserService } from '../../../../services/user.service';
|
||||||
import { AppStateService } from '../../../../state/app-state.service';
|
import { AppStateService } from '../../../../state/app-state.service';
|
||||||
import { HttpStatusCode } from '@angular/common/http';
|
import { HttpStatusCode } from '@angular/common/http';
|
||||||
|
import { DoughnutChartConfig } from '../../../shared/components/simple-doughnut-chart/simple-doughnut-chart.component';
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
templateUrl: './dossier-states-listing-screen.component.html',
|
templateUrl: './dossier-states-listing-screen.component.html',
|
||||||
@ -37,6 +38,7 @@ export class DossierStatesListingScreenComponent extends ListingComponent<Dossie
|
|||||||
{ label: _('dossier-states-listing.table-col-names.name'), sortByKey: 'searchKey' },
|
{ label: _('dossier-states-listing.table-col-names.name'), sortByKey: 'searchKey' },
|
||||||
{ label: _('dossier-states-listing.table-col-names.dossiers-count'), sortByKey: 'dossierCount' },
|
{ label: _('dossier-states-listing.table-col-names.dossiers-count'), sortByKey: 'dossierCount' },
|
||||||
];
|
];
|
||||||
|
chartData: DoughnutChartConfig[];
|
||||||
|
|
||||||
constructor(
|
constructor(
|
||||||
protected readonly _injector: Injector,
|
protected readonly _injector: Injector,
|
||||||
@ -107,8 +109,18 @@ export class DossierStatesListingScreenComponent extends ListingComponent<Dossie
|
|||||||
this._dossierStateService.all.forEach(
|
this._dossierStateService.all.forEach(
|
||||||
state => (state.dossierCount = dossiers.filter(dossier => dossier.dossierStatusId === state.dossierStatusId).length),
|
state => (state.dossierCount = dossiers.filter(dossier => dossier.dossierStatusId === state.dossierStatusId).length),
|
||||||
);
|
);
|
||||||
|
this.chartData = this._loadChartData();
|
||||||
this.entitiesService.setEntities(dossierStates || []);
|
this.entitiesService.setEntities(dossierStates || []);
|
||||||
} catch (e) {}
|
} catch (e) {}
|
||||||
this._loadingService.stop();
|
this._loadingService.stop();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private _loadChartData(): DoughnutChartConfig[] {
|
||||||
|
const config: DoughnutChartConfig[] = [];
|
||||||
|
this._dossierStateService.all.forEach(state => {
|
||||||
|
config.push({ value: state.dossierCount, label: state.name, key: state.name, color: state.description });
|
||||||
|
});
|
||||||
|
|
||||||
|
return config;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -38,9 +38,4 @@ export class DossierStateService extends EntitiesService<DossierState, IDossierS
|
|||||||
const url = `${this._defaultModelPath}/${dossierStatusId}?replaceDossierStatusId=${replaceDossierStatusId}`;
|
const url = `${this._defaultModelPath}/${dossierStatusId}?replaceDossierStatusId=${replaceDossierStatusId}`;
|
||||||
return this.delete({}, url);
|
return this.delete({}, url);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Validate()
|
|
||||||
getById(@RequiredParam() id: string): Observable<DossierState> {
|
|
||||||
return this._getOne([id]);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -639,6 +639,9 @@
|
|||||||
"delete": "Delete Status",
|
"delete": "Delete Status",
|
||||||
"edit": "Edit Status"
|
"edit": "Edit Status"
|
||||||
},
|
},
|
||||||
|
"chart": {
|
||||||
|
"dossier-states": "Dossier States"
|
||||||
|
},
|
||||||
"error": {
|
"error": {
|
||||||
"conflict": "Dossier State with this name already exists!",
|
"conflict": "Dossier State with this name already exists!",
|
||||||
"generic": "Failed to add Dossier State"
|
"generic": "Failed to add Dossier State"
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user