mirror of
https://github.com/Alfresco/alfresco-ng2-components.git
synced 2025-05-26 17:24:56 +00:00
parent
952df8d81c
commit
2cc124bb87
@ -132,6 +132,7 @@
|
||||
<span><h5>Report List</h5></span>
|
||||
<hr>
|
||||
<analytics-report-list
|
||||
[appId]="appId"
|
||||
(reportClick)="onReportClick($event)"
|
||||
#analyticsreportlist>
|
||||
</analytics-report-list>
|
||||
|
@ -35,6 +35,9 @@ export class AnalyticsReportListComponent implements OnInit {
|
||||
@Input()
|
||||
layoutType: string = AnalyticsReportListComponent.LAYOUT_LIST;
|
||||
|
||||
@Input()
|
||||
appId: string;
|
||||
|
||||
@Output()
|
||||
reportClick: EventEmitter<ReportParametersModel> = new EventEmitter<ReportParametersModel>();
|
||||
|
||||
@ -59,7 +62,7 @@ export class AnalyticsReportListComponent implements OnInit {
|
||||
ngOnInit() {
|
||||
this.initObserver();
|
||||
|
||||
this.getReportList();
|
||||
this.getReportList(this.appId);
|
||||
}
|
||||
|
||||
initObserver() {
|
||||
@ -73,14 +76,14 @@ export class AnalyticsReportListComponent implements OnInit {
|
||||
*/
|
||||
reload() {
|
||||
this.reset();
|
||||
this.getReportList();
|
||||
this.getReportList(this.appId);
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the report list
|
||||
*/
|
||||
getReportList() {
|
||||
this.analyticsService.getReportList().subscribe(
|
||||
getReportList(appId: string) {
|
||||
this.analyticsService.getReportList(appId).subscribe(
|
||||
(res: ReportParametersModel[]) => {
|
||||
if (res && res.length === 0) {
|
||||
this.createDefaultReports();
|
||||
@ -104,7 +107,7 @@ export class AnalyticsReportListComponent implements OnInit {
|
||||
createDefaultReports() {
|
||||
this.analyticsService.createDefaultReports().subscribe(
|
||||
() => {
|
||||
this.analyticsService.getReportList().subscribe(
|
||||
this.analyticsService.getReportList(this.appId).subscribe(
|
||||
(response: ReportParametersModel[]) => {
|
||||
response.forEach((report) => {
|
||||
this.reportObserver.next(report);
|
||||
|
@ -20,7 +20,15 @@ import { Observable } from 'rxjs/Rx';
|
||||
import { Response } from '@angular/http';
|
||||
import { AlfrescoApiService, LogService } from 'ng2-alfresco-core';
|
||||
import { ReportParametersModel, ParameterValueModel } from '../models/report.model';
|
||||
import { Chart, PieChart, TableChart, BarChart, HeatMapChart, MultiBarChart, DetailsTableChart } from '../models/chart.model';
|
||||
import {
|
||||
Chart,
|
||||
PieChart,
|
||||
TableChart,
|
||||
BarChart,
|
||||
HeatMapChart,
|
||||
MultiBarChart,
|
||||
DetailsTableChart
|
||||
} from '../models/chart.model';
|
||||
|
||||
@Injectable()
|
||||
export class AnalyticsService {
|
||||
@ -33,18 +41,28 @@ export class AnalyticsService {
|
||||
* Retrive all the Deployed app
|
||||
* @returns {Observable<any>}
|
||||
*/
|
||||
getReportList(): Observable<any> {
|
||||
getReportList(appId: string): Observable<any> {
|
||||
return Observable.fromPromise(this.apiService.getInstance().activiti.reportApi.getReportList())
|
||||
.map((res: any) => {
|
||||
let reports: ReportParametersModel[] = [];
|
||||
res.forEach((report: ReportParametersModel) => {
|
||||
let reportModel = new ReportParametersModel(report);
|
||||
if (this.isReportValid(appId, report)) {
|
||||
reports.push(reportModel);
|
||||
}
|
||||
});
|
||||
return reports;
|
||||
}).catch(err => this.handleError(err));
|
||||
}
|
||||
|
||||
private isReportValid(appId: string, report: ReportParametersModel) {
|
||||
let isValid: boolean = true;
|
||||
if (appId && appId !== '0' && report.name.includes('Process definition overview')) {
|
||||
isValid = false;
|
||||
}
|
||||
return isValid;
|
||||
}
|
||||
|
||||
getReportParams(reportId: string): Observable<any> {
|
||||
return Observable.fromPromise(this.apiService.getInstance().activiti.reportApi.getReportParams(reportId))
|
||||
.map((res: any) => {
|
||||
@ -126,7 +144,7 @@ export class AnalyticsService {
|
||||
}
|
||||
|
||||
getProcessDefinitionsValues(appId: string): Observable<any> {
|
||||
let options = { 'appDefinitionId': appId};
|
||||
let options = { 'appDefinitionId': appId };
|
||||
return Observable.fromPromise(this.apiService.getInstance().activiti.processDefinitionsApi.getProcessDefinitions(options))
|
||||
.map((res: any) => {
|
||||
let paramOptions: ParameterValueModel[] = [];
|
||||
|
Loading…
x
Reference in New Issue
Block a user