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>
|
<span><h5>Report List</h5></span>
|
||||||
<hr>
|
<hr>
|
||||||
<analytics-report-list
|
<analytics-report-list
|
||||||
|
[appId]="appId"
|
||||||
(reportClick)="onReportClick($event)"
|
(reportClick)="onReportClick($event)"
|
||||||
#analyticsreportlist>
|
#analyticsreportlist>
|
||||||
</analytics-report-list>
|
</analytics-report-list>
|
||||||
|
@ -35,6 +35,9 @@ export class AnalyticsReportListComponent implements OnInit {
|
|||||||
@Input()
|
@Input()
|
||||||
layoutType: string = AnalyticsReportListComponent.LAYOUT_LIST;
|
layoutType: string = AnalyticsReportListComponent.LAYOUT_LIST;
|
||||||
|
|
||||||
|
@Input()
|
||||||
|
appId: string;
|
||||||
|
|
||||||
@Output()
|
@Output()
|
||||||
reportClick: EventEmitter<ReportParametersModel> = new EventEmitter<ReportParametersModel>();
|
reportClick: EventEmitter<ReportParametersModel> = new EventEmitter<ReportParametersModel>();
|
||||||
|
|
||||||
@ -59,7 +62,7 @@ export class AnalyticsReportListComponent implements OnInit {
|
|||||||
ngOnInit() {
|
ngOnInit() {
|
||||||
this.initObserver();
|
this.initObserver();
|
||||||
|
|
||||||
this.getReportList();
|
this.getReportList(this.appId);
|
||||||
}
|
}
|
||||||
|
|
||||||
initObserver() {
|
initObserver() {
|
||||||
@ -73,14 +76,14 @@ export class AnalyticsReportListComponent implements OnInit {
|
|||||||
*/
|
*/
|
||||||
reload() {
|
reload() {
|
||||||
this.reset();
|
this.reset();
|
||||||
this.getReportList();
|
this.getReportList(this.appId);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get the report list
|
* Get the report list
|
||||||
*/
|
*/
|
||||||
getReportList() {
|
getReportList(appId: string) {
|
||||||
this.analyticsService.getReportList().subscribe(
|
this.analyticsService.getReportList(appId).subscribe(
|
||||||
(res: ReportParametersModel[]) => {
|
(res: ReportParametersModel[]) => {
|
||||||
if (res && res.length === 0) {
|
if (res && res.length === 0) {
|
||||||
this.createDefaultReports();
|
this.createDefaultReports();
|
||||||
@ -104,7 +107,7 @@ export class AnalyticsReportListComponent implements OnInit {
|
|||||||
createDefaultReports() {
|
createDefaultReports() {
|
||||||
this.analyticsService.createDefaultReports().subscribe(
|
this.analyticsService.createDefaultReports().subscribe(
|
||||||
() => {
|
() => {
|
||||||
this.analyticsService.getReportList().subscribe(
|
this.analyticsService.getReportList(this.appId).subscribe(
|
||||||
(response: ReportParametersModel[]) => {
|
(response: ReportParametersModel[]) => {
|
||||||
response.forEach((report) => {
|
response.forEach((report) => {
|
||||||
this.reportObserver.next(report);
|
this.reportObserver.next(report);
|
||||||
|
@ -20,7 +20,15 @@ import { Observable } from 'rxjs/Rx';
|
|||||||
import { Response } from '@angular/http';
|
import { Response } from '@angular/http';
|
||||||
import { AlfrescoApiService, LogService } from 'ng2-alfresco-core';
|
import { AlfrescoApiService, LogService } from 'ng2-alfresco-core';
|
||||||
import { ReportParametersModel, ParameterValueModel } from '../models/report.model';
|
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()
|
@Injectable()
|
||||||
export class AnalyticsService {
|
export class AnalyticsService {
|
||||||
@ -33,18 +41,28 @@ export class AnalyticsService {
|
|||||||
* Retrive all the Deployed app
|
* Retrive all the Deployed app
|
||||||
* @returns {Observable<any>}
|
* @returns {Observable<any>}
|
||||||
*/
|
*/
|
||||||
getReportList(): Observable<any> {
|
getReportList(appId: string): Observable<any> {
|
||||||
return Observable.fromPromise(this.apiService.getInstance().activiti.reportApi.getReportList())
|
return Observable.fromPromise(this.apiService.getInstance().activiti.reportApi.getReportList())
|
||||||
.map((res: any) => {
|
.map((res: any) => {
|
||||||
let reports: ReportParametersModel[] = [];
|
let reports: ReportParametersModel[] = [];
|
||||||
res.forEach((report: ReportParametersModel) => {
|
res.forEach((report: ReportParametersModel) => {
|
||||||
let reportModel = new ReportParametersModel(report);
|
let reportModel = new ReportParametersModel(report);
|
||||||
reports.push(reportModel);
|
if (this.isReportValid(appId, report)) {
|
||||||
|
reports.push(reportModel);
|
||||||
|
}
|
||||||
});
|
});
|
||||||
return reports;
|
return reports;
|
||||||
}).catch(err => this.handleError(err));
|
}).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> {
|
getReportParams(reportId: string): Observable<any> {
|
||||||
return Observable.fromPromise(this.apiService.getInstance().activiti.reportApi.getReportParams(reportId))
|
return Observable.fromPromise(this.apiService.getInstance().activiti.reportApi.getReportParams(reportId))
|
||||||
.map((res: any) => {
|
.map((res: any) => {
|
||||||
@ -126,7 +144,7 @@ export class AnalyticsService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
getProcessDefinitionsValues(appId: string): Observable<any> {
|
getProcessDefinitionsValues(appId: string): Observable<any> {
|
||||||
let options = { 'appDefinitionId': appId};
|
let options = { 'appDefinitionId': appId };
|
||||||
return Observable.fromPromise(this.apiService.getInstance().activiti.processDefinitionsApi.getProcessDefinitions(options))
|
return Observable.fromPromise(this.apiService.getInstance().activiti.processDefinitionsApi.getProcessDefinitions(options))
|
||||||
.map((res: any) => {
|
.map((res: any) => {
|
||||||
let paramOptions: ParameterValueModel[] = [];
|
let paramOptions: ParameterValueModel[] = [];
|
||||||
|
Loading…
x
Reference in New Issue
Block a user