mirror of
https://github.com/Alfresco/alfresco-ng2-components.git
synced 2025-05-19 17:14:57 +00:00
adf-insights 2.0.1
This commit is contained in:
parent
18dc0711f9
commit
933cee23e3
@ -77,7 +77,7 @@
|
|||||||
"@alfresco/adf-content-services": "2.0.0",
|
"@alfresco/adf-content-services": "2.0.0",
|
||||||
"@alfresco/adf-process-services": "2.0.0",
|
"@alfresco/adf-process-services": "2.0.0",
|
||||||
"@alfresco/adf-core": "2.0.0",
|
"@alfresco/adf-core": "2.0.0",
|
||||||
"@alfresco/adf-insights": "2.0.0",
|
"@alfresco/adf-insights": "2.0.1",
|
||||||
"chart.js": "2.5.0",
|
"chart.js": "2.5.0",
|
||||||
"classlist.js": "1.1.20150312",
|
"classlist.js": "1.1.20150312",
|
||||||
"core-js": "2.4.1",
|
"core-js": "2.4.1",
|
||||||
@ -102,7 +102,7 @@
|
|||||||
"@types/jasmine": "~2.5.53",
|
"@types/jasmine": "~2.5.53",
|
||||||
"@types/jasminewd2": "~2.0.2",
|
"@types/jasminewd2": "~2.0.2",
|
||||||
"@types/node": "~6.0.60",
|
"@types/node": "~6.0.60",
|
||||||
"codelyzer": "~3.2.0",
|
"codelyzer": "4.0.0",
|
||||||
"jasmine-core": "~2.6.2",
|
"jasmine-core": "~2.6.2",
|
||||||
"jasmine-spec-reporter": "~4.1.0",
|
"jasmine-spec-reporter": "~4.1.0",
|
||||||
"karma": "~1.7.0",
|
"karma": "~1.7.0",
|
||||||
|
@ -21,8 +21,8 @@ import { ChartsModule } from 'ng2-charts';
|
|||||||
import { MaterialModule } from '../../material.module';
|
import { MaterialModule } from '../../material.module';
|
||||||
|
|
||||||
import { DiagramsModule } from '../../diagram/diagram.module';
|
import { DiagramsModule } from '../../diagram/diagram.module';
|
||||||
import { Chart } from '../../diagram';
|
import { Chart } from '../../diagram/models/chart/chart.model';
|
||||||
import { ReportQuery } from '../../diagram';
|
import { ReportQuery } from '../../diagram/models/report/reportQuery.model';
|
||||||
import * as analyticMock from '../../mock';
|
import * as analyticMock from '../../mock';
|
||||||
import { AnalyticsGeneratorComponent } from '../components/analytics-generator.component';
|
import { AnalyticsGeneratorComponent } from '../components/analytics-generator.component';
|
||||||
import { AnalyticsProcessModule } from '../analytics-process.module';
|
import { AnalyticsProcessModule } from '../analytics-process.module';
|
||||||
|
@ -16,8 +16,8 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
import { Component, EventEmitter, Input, OnChanges, Output, ViewEncapsulation } from '@angular/core';
|
import { Component, EventEmitter, Input, OnChanges, Output, ViewEncapsulation } from '@angular/core';
|
||||||
import { ReportQuery } from '../../diagram';
|
import { ReportQuery } from '../../diagram/models/report/reportQuery.model';
|
||||||
import { Chart } from '../../diagram';
|
import { Chart } from '../../diagram/models/chart/chart.model';
|
||||||
import { AnalyticsService } from '../services/analytics.service';
|
import { AnalyticsService } from '../services/analytics.service';
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
|
@ -20,7 +20,7 @@ import { DiagramsModule } from '../../diagram/diagram.module';
|
|||||||
import { AnalyticsProcessModule } from '../analytics-process.module';
|
import { AnalyticsProcessModule } from '../analytics-process.module';
|
||||||
import { AnalyticsReportListComponent } from '../components/analytics-report-list.component';
|
import { AnalyticsReportListComponent } from '../components/analytics-report-list.component';
|
||||||
import { MaterialModule } from '../../material.module';
|
import { MaterialModule } from '../../material.module';
|
||||||
import { ReportParametersModel } from '../../diagram/models/report.model';
|
import { ReportParametersModel } from '../../diagram/models/report/reportParameters.model';
|
||||||
|
|
||||||
declare let jasmine: any;
|
declare let jasmine: any;
|
||||||
|
|
||||||
|
@ -18,7 +18,7 @@
|
|||||||
import { Component, EventEmitter, Input, OnInit, Output, ViewEncapsulation } from '@angular/core';
|
import { Component, EventEmitter, Input, OnInit, Output, ViewEncapsulation } from '@angular/core';
|
||||||
import { Observable } from 'rxjs/Observable';
|
import { Observable } from 'rxjs/Observable';
|
||||||
import { Observer } from 'rxjs/Observer';
|
import { Observer } from 'rxjs/Observer';
|
||||||
import { ReportParametersModel } from '../../diagram';
|
import { ReportParametersModel } from '../../diagram/models/report/reportParameters.model';
|
||||||
import { AnalyticsService } from '../services/analytics.service';
|
import { AnalyticsService } from '../services/analytics.service';
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
|
@ -17,7 +17,7 @@
|
|||||||
|
|
||||||
import { SimpleChange } from '@angular/core';
|
import { SimpleChange } from '@angular/core';
|
||||||
import { async, ComponentFixture, TestBed } from '@angular/core/testing';
|
import { async, ComponentFixture, TestBed } from '@angular/core/testing';
|
||||||
import { ReportParametersModel } from '../../diagram';
|
import { ReportParametersModel } from '../../diagram/models/report/reportParameters.model';
|
||||||
import * as analyticParamsMock from '../../mock';
|
import * as analyticParamsMock from '../../mock';
|
||||||
import { AnalyticsReportParametersComponent } from '../components/analytics-report-parameters.component';
|
import { AnalyticsReportParametersComponent } from '../components/analytics-report-parameters.component';
|
||||||
import { AnalyticsProcessModule } from '../analytics-process.module';
|
import { AnalyticsProcessModule } from '../analytics-process.module';
|
||||||
|
@ -32,7 +32,10 @@ import {
|
|||||||
import { FormBuilder, FormControl, FormGroup, Validators } from '@angular/forms';
|
import { FormBuilder, FormControl, FormGroup, Validators } from '@angular/forms';
|
||||||
import { MatDialog } from '@angular/material';
|
import { MatDialog } from '@angular/material';
|
||||||
import moment from 'moment-es6';
|
import moment from 'moment-es6';
|
||||||
import { ParameterValueModel, ReportParameterDetailsModel, ReportParametersModel, ReportQuery } from '../../diagram';
|
import { ParameterValueModel } from '../../diagram/models/report/parameterValue.model';
|
||||||
|
import { ReportParameterDetailsModel } from '../../diagram/models/report/reportParameterDetails.model';
|
||||||
|
import { ReportParametersModel } from '../../diagram/models/report/reportParameters.model';
|
||||||
|
import { ReportQuery } from '../../diagram/models/report/reportQuery.model';
|
||||||
import { AnalyticsService } from '../services/analytics.service';
|
import { AnalyticsService } from '../services/analytics.service';
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
@ -147,37 +150,37 @@ export class AnalyticsReportParametersComponent implements OnInit, OnChanges, On
|
|||||||
case 'processDefinition':
|
case 'processDefinition':
|
||||||
formBuilderGroup.processDefGroup = new FormGroup({
|
formBuilderGroup.processDefGroup = new FormGroup({
|
||||||
processDefinitionId: new FormControl(null, Validators.required, null)
|
processDefinitionId: new FormControl(null, Validators.required, null)
|
||||||
}, Validators.required);
|
}, Validators.required);
|
||||||
break;
|
break;
|
||||||
case 'duration':
|
case 'duration':
|
||||||
formBuilderGroup.durationGroup = new FormGroup({
|
formBuilderGroup.durationGroup = new FormGroup({
|
||||||
duration: new FormControl(null, Validators.required, null)
|
duration: new FormControl(null, Validators.required, null)
|
||||||
}, Validators.required);
|
}, Validators.required);
|
||||||
break;
|
break;
|
||||||
case 'dateInterval':
|
case 'dateInterval':
|
||||||
formBuilderGroup.dateIntervalGroup = new FormGroup({
|
formBuilderGroup.dateIntervalGroup = new FormGroup({
|
||||||
dateRangeInterval: new FormControl(null, Validators.required, null)
|
dateRangeInterval: new FormControl(null, Validators.required, null)
|
||||||
}, Validators.required);
|
}, Validators.required);
|
||||||
break;
|
break;
|
||||||
case 'boolean':
|
case 'boolean':
|
||||||
formBuilderGroup.typeFilteringGroup = new FormGroup({
|
formBuilderGroup.typeFilteringGroup = new FormGroup({
|
||||||
typeFiltering: new FormControl(null, Validators.required, null)
|
typeFiltering: new FormControl(null, Validators.required, null)
|
||||||
}, Validators.required);
|
}, Validators.required);
|
||||||
break;
|
break;
|
||||||
case 'task':
|
case 'task':
|
||||||
formBuilderGroup.taskGroup = new FormGroup({
|
formBuilderGroup.taskGroup = new FormGroup({
|
||||||
taskName: new FormControl(null, Validators.required, null)
|
taskName: new FormControl(null, Validators.required, null)
|
||||||
}, Validators.required);
|
}, Validators.required);
|
||||||
break;
|
break;
|
||||||
case 'integer':
|
case 'integer':
|
||||||
formBuilderGroup.processInstanceGroup = new FormGroup({
|
formBuilderGroup.processInstanceGroup = new FormGroup({
|
||||||
slowProcessInstanceInteger: new FormControl(null, Validators.required, null)
|
slowProcessInstanceInteger: new FormControl(null, Validators.required, null)
|
||||||
}, Validators.required);
|
}, Validators.required);
|
||||||
break;
|
break;
|
||||||
case 'status':
|
case 'status':
|
||||||
formBuilderGroup.statusGroup = new FormGroup({
|
formBuilderGroup.statusGroup = new FormGroup({
|
||||||
status: new FormControl(null, Validators.required, null)
|
status: new FormControl(null, Validators.required, null)
|
||||||
}, Validators.required);
|
}, Validators.required);
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
return;
|
return;
|
||||||
@ -245,7 +248,7 @@ export class AnalyticsReportParametersComponent implements OnInit, OnChanges, On
|
|||||||
|
|
||||||
public convertMomentDate(date: string) {
|
public convertMomentDate(date: string) {
|
||||||
return moment(date, AnalyticsReportParametersComponent.FORMAT_DATE_ACTIVITI, true)
|
return moment(date, AnalyticsReportParametersComponent.FORMAT_DATE_ACTIVITI, true)
|
||||||
.format(AnalyticsReportParametersComponent.FORMAT_DATE_ACTIVITI) + 'T00:00:00.000Z';
|
.format(AnalyticsReportParametersComponent.FORMAT_DATE_ACTIVITI) + 'T00:00:00.000Z';
|
||||||
}
|
}
|
||||||
|
|
||||||
public getTodayDate() {
|
public getTodayDate() {
|
||||||
@ -351,7 +354,7 @@ export class AnalyticsReportParametersComponent implements OnInit, OnChanges, On
|
|||||||
doExport(paramQuery: ReportQuery) {
|
doExport(paramQuery: ReportQuery) {
|
||||||
this.analyticsService.exportReportToCsv(this.reportId, paramQuery).subscribe(
|
this.analyticsService.exportReportToCsv(this.reportId, paramQuery).subscribe(
|
||||||
(data: any) => {
|
(data: any) => {
|
||||||
let blob: Blob = new Blob([data], {type: 'text/csv'});
|
let blob: Blob = new Blob([data], { type: 'text/csv' });
|
||||||
this.contentService.downloadBlob(blob, paramQuery.reportName + '.csv');
|
this.contentService.downloadBlob(blob, paramQuery.reportName + '.csv');
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
@ -365,7 +368,7 @@ export class AnalyticsReportParametersComponent implements OnInit, OnChanges, On
|
|||||||
deleteReport(reportId: string) {
|
deleteReport(reportId: string) {
|
||||||
this.analyticsService.deleteReport(reportId).subscribe(() => {
|
this.analyticsService.deleteReport(reportId).subscribe(() => {
|
||||||
this.deleteReportSuccess.emit(reportId);
|
this.deleteReportSuccess.emit(reportId);
|
||||||
}, error => this.logService.error(error));
|
}, error => this.logService.error(error));
|
||||||
}
|
}
|
||||||
|
|
||||||
ngAfterContentChecked() {
|
ngAfterContentChecked() {
|
||||||
|
@ -16,7 +16,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
import { Component, EventEmitter, Input, OnChanges, Output, SimpleChanges, ViewChild, ViewEncapsulation } from '@angular/core';
|
import { Component, EventEmitter, Input, OnChanges, Output, SimpleChanges, ViewChild, ViewEncapsulation } from '@angular/core';
|
||||||
import { ReportQuery } from '../../diagram';
|
import { ReportQuery } from '../../diagram/models/report/reportQuery.model';
|
||||||
import { AnalyticsGeneratorComponent } from './analytics-generator.component';
|
import { AnalyticsGeneratorComponent } from './analytics-generator.component';
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
|
@ -20,8 +20,8 @@
|
|||||||
/* tslint:disable::no-access-missing-member */
|
/* tslint:disable::no-access-missing-member */
|
||||||
import { Component, ElementRef, Input, OnInit, ViewEncapsulation } from '@angular/core';
|
import { Component, ElementRef, Input, OnInit, ViewEncapsulation } from '@angular/core';
|
||||||
import { FormControl, FormGroup, Validators } from '@angular/forms';
|
import { FormControl, FormGroup, Validators } from '@angular/forms';
|
||||||
import { ParameterValueModel } from '../../../../diagram/models/report.model';
|
import { ParameterValueModel } from '../../../../diagram/models/report/parameterValue.model';
|
||||||
import { ReportParameterDetailsModel } from '../../../../diagram/models/report.model';
|
import { ReportParameterDetailsModel } from '../../../../diagram/models/report/reportParameterDetails.model';
|
||||||
import { NumberWidgetAanlyticsComponent } from './../number/number.widget';
|
import { NumberWidgetAanlyticsComponent } from './../number/number.widget';
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
|
@ -20,10 +20,4 @@ export * from './components/analytics-generator.component';
|
|||||||
export * from './components/analytics-report-list.component';
|
export * from './components/analytics-report-list.component';
|
||||||
export * from './components/analytics-report-parameters.component';
|
export * from './components/analytics-report-parameters.component';
|
||||||
|
|
||||||
export * from './components/widgets/checkbox/checkbox.widget';
|
|
||||||
export * from './components/widgets/date-range/date-range.widget';
|
|
||||||
export * from './components/widgets/dropdown/dropdown.widget';
|
|
||||||
export * from './components/widgets/duration/duration.widget';
|
|
||||||
export * from './components/widgets/number/number.widget';
|
|
||||||
|
|
||||||
export * from './services/analytics.service';
|
export * from './services/analytics.service';
|
||||||
|
@ -19,16 +19,16 @@ import { AlfrescoApiService, LogService } from '@alfresco/adf-core';
|
|||||||
import { Injectable } from '@angular/core';
|
import { Injectable } from '@angular/core';
|
||||||
import { Response } from '@angular/http';
|
import { Response } from '@angular/http';
|
||||||
import { Observable } from 'rxjs/Observable';
|
import { Observable } from 'rxjs/Observable';
|
||||||
import { ParameterValueModel, ReportParametersModel } from '../../diagram';
|
import { ParameterValueModel } from '../../diagram/models/report/parameterValue.model';
|
||||||
import {
|
import { ReportParametersModel } from '../../diagram/models/report/reportParameters.model';
|
||||||
BarChart,
|
import { BarChart } from '../../diagram/models/chart/barChart.model';
|
||||||
Chart,
|
import { Chart } from '../../diagram/models/chart/chart.model';
|
||||||
DetailsTableChart,
|
import { DetailsTableChart } from '../../diagram/models/chart/detailsTableChart.model';
|
||||||
HeatMapChart,
|
import { HeatMapChart } from '../../diagram/models/chart/heatMapChart.model';
|
||||||
MultiBarChart,
|
import { MultiBarChart } from '../../diagram/models/chart/multiBarChart.model';
|
||||||
PieChart,
|
import { PieChart } from '../../diagram/models/chart/pieChart.model';
|
||||||
TableChart
|
import { TableChart } from '../../diagram/models/chart/tableChart.model';
|
||||||
} from '../../diagram';
|
|
||||||
import 'rxjs/add/observable/throw';
|
import 'rxjs/add/observable/throw';
|
||||||
|
|
||||||
@Injectable()
|
@Injectable()
|
||||||
@ -107,9 +107,9 @@ export class AnalyticsService {
|
|||||||
getProcessStatusValues(): Observable<any> {
|
getProcessStatusValues(): Observable<any> {
|
||||||
let paramOptions: ParameterValueModel[] = [];
|
let paramOptions: ParameterValueModel[] = [];
|
||||||
|
|
||||||
paramOptions.push(new ParameterValueModel({id: 'All', name: 'All'}));
|
paramOptions.push(new ParameterValueModel({ id: 'All', name: 'All' }));
|
||||||
paramOptions.push(new ParameterValueModel({id: 'Active', name: 'Active'}));
|
paramOptions.push(new ParameterValueModel({ id: 'Active', name: 'Active' }));
|
||||||
paramOptions.push(new ParameterValueModel({id: 'Complete', name: 'Complete'}));
|
paramOptions.push(new ParameterValueModel({ id: 'Complete', name: 'Complete' }));
|
||||||
|
|
||||||
return Observable.create(observer => {
|
return Observable.create(observer => {
|
||||||
observer.next(paramOptions);
|
observer.next(paramOptions);
|
||||||
@ -120,11 +120,11 @@ export class AnalyticsService {
|
|||||||
getDateIntervalValues(): Observable<any> {
|
getDateIntervalValues(): Observable<any> {
|
||||||
let paramOptions: ParameterValueModel[] = [];
|
let paramOptions: ParameterValueModel[] = [];
|
||||||
|
|
||||||
paramOptions.push(new ParameterValueModel({id: 'byHour', name: 'By hour'}));
|
paramOptions.push(new ParameterValueModel({ id: 'byHour', name: 'By hour' }));
|
||||||
paramOptions.push(new ParameterValueModel({id: 'byDay', name: 'By day'}));
|
paramOptions.push(new ParameterValueModel({ id: 'byDay', name: 'By day' }));
|
||||||
paramOptions.push(new ParameterValueModel({id: 'byWeek', name: 'By week'}));
|
paramOptions.push(new ParameterValueModel({ id: 'byWeek', name: 'By week' }));
|
||||||
paramOptions.push(new ParameterValueModel({id: 'byMonth', name: 'By month'}));
|
paramOptions.push(new ParameterValueModel({ id: 'byMonth', name: 'By month' }));
|
||||||
paramOptions.push(new ParameterValueModel({id: 'byYear', name: 'By year'}));
|
paramOptions.push(new ParameterValueModel({ id: 'byYear', name: 'By year' }));
|
||||||
|
|
||||||
return Observable.create(observer => {
|
return Observable.create(observer => {
|
||||||
observer.next(paramOptions);
|
observer.next(paramOptions);
|
||||||
@ -135,9 +135,9 @@ export class AnalyticsService {
|
|||||||
getMetricValues(): Observable<any> {
|
getMetricValues(): Observable<any> {
|
||||||
let paramOptions: ParameterValueModel[] = [];
|
let paramOptions: ParameterValueModel[] = [];
|
||||||
|
|
||||||
paramOptions.push(new ParameterValueModel({id: 'totalCount', name: 'Number of times a step is executed'}));
|
paramOptions.push(new ParameterValueModel({ id: 'totalCount', name: 'Number of times a step is executed' }));
|
||||||
paramOptions.push(new ParameterValueModel({id: 'totalTime', name: 'Total time spent in a process step'}));
|
paramOptions.push(new ParameterValueModel({ id: 'totalTime', name: 'Total time spent in a process step' }));
|
||||||
paramOptions.push(new ParameterValueModel({id: 'avgTime', name: 'Average time spent in a process step'}));
|
paramOptions.push(new ParameterValueModel({ id: 'avgTime', name: 'Average time spent in a process step' }));
|
||||||
|
|
||||||
return Observable.create(observer => {
|
return Observable.create(observer => {
|
||||||
observer.next(paramOptions);
|
observer.next(paramOptions);
|
||||||
@ -157,7 +157,7 @@ export class AnalyticsService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
getProcessDefinitionsValues(appId: number): Observable<any> {
|
getProcessDefinitionsValues(appId: number): 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[] = [];
|
||||||
@ -173,7 +173,7 @@ export class AnalyticsService {
|
|||||||
.map((res: any) => {
|
.map((res: any) => {
|
||||||
let paramOptions: ParameterValueModel[] = [];
|
let paramOptions: ParameterValueModel[] = [];
|
||||||
res.forEach((opt) => {
|
res.forEach((opt) => {
|
||||||
paramOptions.push(new ParameterValueModel({id: opt, name: opt}));
|
paramOptions.push(new ParameterValueModel({ id: opt, name: opt }));
|
||||||
});
|
});
|
||||||
return paramOptions;
|
return paramOptions;
|
||||||
}).catch(err => this.handleError(err));
|
}).catch(err => this.handleError(err));
|
||||||
|
@ -16,7 +16,8 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
import { Component, EventEmitter, Input, OnChanges, Output, SimpleChanges } from '@angular/core';
|
import { Component, EventEmitter, Input, OnChanges, Output, SimpleChanges } from '@angular/core';
|
||||||
import { DiagramElementModel, DiagramModel } from '../models/diagram.model';
|
import { DiagramElementModel } from '../models/diagram/diagramElement.model';
|
||||||
|
import { DiagramModel } from '../models/diagram/diagram.model';
|
||||||
import { DiagramColorService } from '../services/diagram-color.service';
|
import { DiagramColorService } from '../services/diagram-color.service';
|
||||||
import { DiagramsService } from '../services/diagrams.service';
|
import { DiagramsService } from '../services/diagrams.service';
|
||||||
import { RaphaelService } from './raphael/raphael.service';
|
import { RaphaelService } from './raphael/raphael.service';
|
||||||
|
@ -1,307 +0,0 @@
|
|||||||
/*!
|
|
||||||
* @license
|
|
||||||
* Copyright 2016 Alfresco Software, Ltd.
|
|
||||||
*
|
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
* you may not use this file except in compliance with the License.
|
|
||||||
* You may obtain a copy of the License at
|
|
||||||
*
|
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
*
|
|
||||||
* Unless required by applicable law or agreed to in writing, software
|
|
||||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
* See the License for the specific language governing permissions and
|
|
||||||
* limitations under the License.
|
|
||||||
*/
|
|
||||||
|
|
||||||
import moment from 'moment-es6';
|
|
||||||
|
|
||||||
export class Chart {
|
|
||||||
id: string;
|
|
||||||
type: string;
|
|
||||||
icon: string;
|
|
||||||
|
|
||||||
constructor(obj?: any) {
|
|
||||||
this.id = obj && obj.id || null;
|
|
||||||
if (obj && obj.type) {
|
|
||||||
this.type = this.convertType(obj.type);
|
|
||||||
this.icon = this.getIconType(this.type);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private convertType(type: string) {
|
|
||||||
let chartType = '';
|
|
||||||
switch (type) {
|
|
||||||
case 'pieChart':
|
|
||||||
chartType = 'pie';
|
|
||||||
break;
|
|
||||||
case 'table':
|
|
||||||
chartType = 'table';
|
|
||||||
break;
|
|
||||||
case 'line':
|
|
||||||
chartType = 'line';
|
|
||||||
break;
|
|
||||||
case 'barChart':
|
|
||||||
chartType = 'bar';
|
|
||||||
break;
|
|
||||||
case 'multiBarChart':
|
|
||||||
chartType = 'multiBar';
|
|
||||||
break;
|
|
||||||
case 'processDefinitionHeatMap':
|
|
||||||
chartType = 'HeatMap';
|
|
||||||
break;
|
|
||||||
case 'masterDetailTable':
|
|
||||||
chartType = 'masterDetailTable';
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
chartType = 'table';
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
return chartType;
|
|
||||||
}
|
|
||||||
|
|
||||||
private getIconType(type: string): string {
|
|
||||||
let typeIcon: string = '';
|
|
||||||
switch (type) {
|
|
||||||
case 'pie':
|
|
||||||
typeIcon = 'pie_chart';
|
|
||||||
break;
|
|
||||||
case 'table':
|
|
||||||
typeIcon = 'web';
|
|
||||||
break;
|
|
||||||
case 'line':
|
|
||||||
typeIcon = 'show_chart';
|
|
||||||
break;
|
|
||||||
case 'bar':
|
|
||||||
typeIcon = 'equalizer';
|
|
||||||
break;
|
|
||||||
case 'multiBar':
|
|
||||||
typeIcon = 'poll';
|
|
||||||
break;
|
|
||||||
case 'HeatMap':
|
|
||||||
typeIcon = 'share';
|
|
||||||
break;
|
|
||||||
case 'masterDetailTable':
|
|
||||||
typeIcon = 'subtitles';
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
typeIcon = 'web';
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
return typeIcon;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
export class LineChart extends Chart {
|
|
||||||
title: string;
|
|
||||||
titleKey: string;
|
|
||||||
labels: string[] = [];
|
|
||||||
datasets: any[] = [];
|
|
||||||
|
|
||||||
constructor(obj?: any) {
|
|
||||||
super(obj);
|
|
||||||
this.title = obj && obj.title || null;
|
|
||||||
this.titleKey = obj && obj.titleKey || null;
|
|
||||||
this.labels = obj && obj.columnNames.slice(1, obj.columnNames.length);
|
|
||||||
|
|
||||||
obj.rows.forEach((value: any) => {
|
|
||||||
this.datasets.push({data: value.slice(1, value.length), label: value[0]});
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
export class BarChart extends Chart {
|
|
||||||
title: string;
|
|
||||||
titleKey: string;
|
|
||||||
labels: any = [];
|
|
||||||
datasets: any[] = [];
|
|
||||||
data: any[] = [];
|
|
||||||
xAxisType: string;
|
|
||||||
yAxisType: string;
|
|
||||||
options: any = {
|
|
||||||
responsive: true,
|
|
||||||
scales: {
|
|
||||||
yAxes: [{
|
|
||||||
ticks: {
|
|
||||||
beginAtZero: true,
|
|
||||||
stepSize: 1
|
|
||||||
}
|
|
||||||
}],
|
|
||||||
xAxes: [{
|
|
||||||
ticks: {
|
|
||||||
},
|
|
||||||
stacked: false
|
|
||||||
}]
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
constructor(obj?: any) {
|
|
||||||
super(obj);
|
|
||||||
this.title = obj && obj.title || null;
|
|
||||||
this.titleKey = obj && obj.titleKey || null;
|
|
||||||
this.xAxisType = obj && obj.xAxisType || null;
|
|
||||||
this.yAxisType = obj && obj.yAxisType || null;
|
|
||||||
this.options.scales.xAxes[0].ticks.callback = this.xAxisTickFormatFunction(this.xAxisType);
|
|
||||||
this.options.scales.yAxes[0].ticks.callback = this.yAxisTickFormatFunction(this.yAxisType);
|
|
||||||
if (obj.values) {
|
|
||||||
obj.values.forEach((params: any) => {
|
|
||||||
let dataValue = [];
|
|
||||||
params.values.forEach((info: any) => {
|
|
||||||
info.forEach((value: any, index: any) => {
|
|
||||||
if (index % 2 === 0) {
|
|
||||||
if (!this.labels.includes(value)) {
|
|
||||||
this.labels.push(value);
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
dataValue.push(value);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
});
|
|
||||||
if (dataValue && dataValue.length > 0) {
|
|
||||||
this.datasets.push({data: dataValue, label: params.key});
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
xAxisTickFormatFunction = function (xAxisType) {
|
|
||||||
return function (value) {
|
|
||||||
if (xAxisType !== null && xAxisType !== undefined) {
|
|
||||||
if ('date_day' === xAxisType) {
|
|
||||||
return moment(new Date(value)).format('DD');
|
|
||||||
} else if ('date_month' === xAxisType) {
|
|
||||||
return moment(new Date(value)).format('MMMM');
|
|
||||||
} else if ('date_year' === xAxisType) {
|
|
||||||
return moment(new Date(value)).format('YYYY');
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return value;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
yAxisTickFormatFunction = function (yAxisType) {
|
|
||||||
return function (value) {
|
|
||||||
if (yAxisType !== null && yAxisType !== undefined) {
|
|
||||||
if ('count' === yAxisType) {
|
|
||||||
let label = '' + value;
|
|
||||||
if (label.indexOf('.') !== -1) {
|
|
||||||
return '';
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return value;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
hasDatasets() {
|
|
||||||
return this.datasets && this.datasets.length > 0 ? true : false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
export class MultiBarChart extends BarChart {
|
|
||||||
|
|
||||||
constructor(obj?: any) {
|
|
||||||
super(obj);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
export class TableChart extends Chart {
|
|
||||||
title: string;
|
|
||||||
titleKey: string;
|
|
||||||
labels: string[] = [];
|
|
||||||
datasets: any[] = [];
|
|
||||||
|
|
||||||
constructor(obj?: any) {
|
|
||||||
super(obj);
|
|
||||||
this.title = obj && obj.title || null;
|
|
||||||
this.titleKey = obj && obj.titleKey || null;
|
|
||||||
this.labels = obj && obj.columnNames;
|
|
||||||
if (obj.rows) {
|
|
||||||
this.datasets = obj && obj.rows;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
hasDatasets() {
|
|
||||||
return this.datasets && this.datasets.length > 0 ? true : false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
export class DetailsTableChart extends TableChart {
|
|
||||||
detailsTable: any;
|
|
||||||
showDetails: boolean = false;
|
|
||||||
|
|
||||||
constructor(obj?: any) {
|
|
||||||
super(obj);
|
|
||||||
if (obj.detailTables) {
|
|
||||||
this.detailsTable = new TableChart(obj.detailTables[0]);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
hasDetailsTable() {
|
|
||||||
return this.detailsTable ? true : false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
export class HeatMapChart extends Chart {
|
|
||||||
avgTimePercentages: string;
|
|
||||||
avgTimeValues: string;
|
|
||||||
processDefinitionId: string;
|
|
||||||
titleKey: string;
|
|
||||||
totalCountValues: string;
|
|
||||||
totalCountsPercentages: string;
|
|
||||||
totalTimePercentages: string;
|
|
||||||
totalTimeValues: string;
|
|
||||||
|
|
||||||
constructor(obj?: any) {
|
|
||||||
super(obj);
|
|
||||||
this.avgTimePercentages = obj && obj.avgTimePercentages || null;
|
|
||||||
this.avgTimeValues = obj && obj.avgTimeValues || null;
|
|
||||||
this.processDefinitionId = obj && obj.processDefinitionId || null;
|
|
||||||
this.totalCountValues = obj && obj.totalCountValues || null;
|
|
||||||
this.titleKey = obj && obj.titleKey || null;
|
|
||||||
this.totalCountsPercentages = obj && obj.totalCountsPercentages || null;
|
|
||||||
this.totalTimePercentages = obj && obj.totalTimePercentages || null;
|
|
||||||
this.totalTimeValues = obj && obj.totalTimeValues || null;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
export class PieChart extends Chart {
|
|
||||||
title: string;
|
|
||||||
titleKey: string;
|
|
||||||
labels: string[] = [];
|
|
||||||
data: string[] = [];
|
|
||||||
|
|
||||||
constructor(obj?: any) {
|
|
||||||
super(obj);
|
|
||||||
this.title = obj && obj.title || null;
|
|
||||||
this.titleKey = obj && obj.titleKey || null;
|
|
||||||
if (obj.values) {
|
|
||||||
obj.values.forEach((value: any) => {
|
|
||||||
this.add(value.key, value.y);
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
add(label: string, data: string) {
|
|
||||||
this.labels.push(label);
|
|
||||||
this.data.push(data);
|
|
||||||
}
|
|
||||||
|
|
||||||
hasData(): boolean {
|
|
||||||
return this.data && this.data.length > 0 ? true : false;
|
|
||||||
}
|
|
||||||
|
|
||||||
hasZeroValues(): boolean {
|
|
||||||
let isZeroValues: boolean = false;
|
|
||||||
if (this.hasData()) {
|
|
||||||
isZeroValues = true;
|
|
||||||
this.data.forEach((value) => {
|
|
||||||
if (value.toString() !== '0') {
|
|
||||||
isZeroValues = false;
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
return isZeroValues;
|
|
||||||
}
|
|
||||||
}
|
|
107
lib/insights/diagram/models/chart/barChart.model.ts
Normal file
107
lib/insights/diagram/models/chart/barChart.model.ts
Normal file
@ -0,0 +1,107 @@
|
|||||||
|
/*!
|
||||||
|
* @license
|
||||||
|
* Copyright 2016 Alfresco Software, Ltd.
|
||||||
|
*
|
||||||
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
* you may not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
import moment from 'moment-es6';
|
||||||
|
import { Chart } from './chart.model';
|
||||||
|
|
||||||
|
export class BarChart extends Chart {
|
||||||
|
title: string;
|
||||||
|
titleKey: string;
|
||||||
|
labels: any = [];
|
||||||
|
datasets: any[] = [];
|
||||||
|
data: any[] = [];
|
||||||
|
xAxisType: string;
|
||||||
|
yAxisType: string;
|
||||||
|
options: any = {
|
||||||
|
responsive: true,
|
||||||
|
scales: {
|
||||||
|
yAxes: [{
|
||||||
|
ticks: {
|
||||||
|
beginAtZero: true,
|
||||||
|
stepSize: 1
|
||||||
|
}
|
||||||
|
}],
|
||||||
|
xAxes: [{
|
||||||
|
ticks: {
|
||||||
|
},
|
||||||
|
stacked: false
|
||||||
|
}]
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
constructor(obj?: any) {
|
||||||
|
super(obj);
|
||||||
|
this.title = obj && obj.title || null;
|
||||||
|
this.titleKey = obj && obj.titleKey || null;
|
||||||
|
this.xAxisType = obj && obj.xAxisType || null;
|
||||||
|
this.yAxisType = obj && obj.yAxisType || null;
|
||||||
|
this.options.scales.xAxes[0].ticks.callback = this.xAxisTickFormatFunction(this.xAxisType);
|
||||||
|
this.options.scales.yAxes[0].ticks.callback = this.yAxisTickFormatFunction(this.yAxisType);
|
||||||
|
if (obj.values) {
|
||||||
|
obj.values.forEach((params: any) => {
|
||||||
|
let dataValue = [];
|
||||||
|
params.values.forEach((info: any) => {
|
||||||
|
info.forEach((value: any, index: any) => {
|
||||||
|
if (index % 2 === 0) {
|
||||||
|
if (!this.labels.includes(value)) {
|
||||||
|
this.labels.push(value);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
dataValue.push(value);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
if (dataValue && dataValue.length > 0) {
|
||||||
|
this.datasets.push({data: dataValue, label: params.key});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
xAxisTickFormatFunction = function (xAxisType) {
|
||||||
|
return function (value) {
|
||||||
|
if (xAxisType !== null && xAxisType !== undefined) {
|
||||||
|
if ('date_day' === xAxisType) {
|
||||||
|
return moment(new Date(value)).format('DD');
|
||||||
|
} else if ('date_month' === xAxisType) {
|
||||||
|
return moment(new Date(value)).format('MMMM');
|
||||||
|
} else if ('date_year' === xAxisType) {
|
||||||
|
return moment(new Date(value)).format('YYYY');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return value;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
yAxisTickFormatFunction = function (yAxisType) {
|
||||||
|
return function (value) {
|
||||||
|
if (yAxisType !== null && yAxisType !== undefined) {
|
||||||
|
if ('count' === yAxisType) {
|
||||||
|
let label = '' + value;
|
||||||
|
if (label.indexOf('.') !== -1) {
|
||||||
|
return '';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return value;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
hasDatasets() {
|
||||||
|
return this.datasets && this.datasets.length > 0 ? true : false;
|
||||||
|
}
|
||||||
|
}
|
92
lib/insights/diagram/models/chart/chart.model.ts
Normal file
92
lib/insights/diagram/models/chart/chart.model.ts
Normal file
@ -0,0 +1,92 @@
|
|||||||
|
/*!
|
||||||
|
* @license
|
||||||
|
* Copyright 2016 Alfresco Software, Ltd.
|
||||||
|
*
|
||||||
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
* you may not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
export class Chart {
|
||||||
|
id: string;
|
||||||
|
type: string;
|
||||||
|
icon: string;
|
||||||
|
|
||||||
|
constructor(obj?: any) {
|
||||||
|
this.id = obj && obj.id || null;
|
||||||
|
if (obj && obj.type) {
|
||||||
|
this.type = this.convertType(obj.type);
|
||||||
|
this.icon = this.getIconType(this.type);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private convertType(type: string) {
|
||||||
|
let chartType = '';
|
||||||
|
switch (type) {
|
||||||
|
case 'pieChart':
|
||||||
|
chartType = 'pie';
|
||||||
|
break;
|
||||||
|
case 'table':
|
||||||
|
chartType = 'table';
|
||||||
|
break;
|
||||||
|
case 'line':
|
||||||
|
chartType = 'line';
|
||||||
|
break;
|
||||||
|
case 'barChart':
|
||||||
|
chartType = 'bar';
|
||||||
|
break;
|
||||||
|
case 'multiBarChart':
|
||||||
|
chartType = 'multiBar';
|
||||||
|
break;
|
||||||
|
case 'processDefinitionHeatMap':
|
||||||
|
chartType = 'HeatMap';
|
||||||
|
break;
|
||||||
|
case 'masterDetailTable':
|
||||||
|
chartType = 'masterDetailTable';
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
chartType = 'table';
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
return chartType;
|
||||||
|
}
|
||||||
|
|
||||||
|
private getIconType(type: string): string {
|
||||||
|
let typeIcon: string = '';
|
||||||
|
switch (type) {
|
||||||
|
case 'pie':
|
||||||
|
typeIcon = 'pie_chart';
|
||||||
|
break;
|
||||||
|
case 'table':
|
||||||
|
typeIcon = 'web';
|
||||||
|
break;
|
||||||
|
case 'line':
|
||||||
|
typeIcon = 'show_chart';
|
||||||
|
break;
|
||||||
|
case 'bar':
|
||||||
|
typeIcon = 'equalizer';
|
||||||
|
break;
|
||||||
|
case 'multiBar':
|
||||||
|
typeIcon = 'poll';
|
||||||
|
break;
|
||||||
|
case 'HeatMap':
|
||||||
|
typeIcon = 'share';
|
||||||
|
break;
|
||||||
|
case 'masterDetailTable':
|
||||||
|
typeIcon = 'subtitles';
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
typeIcon = 'web';
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
return typeIcon;
|
||||||
|
}
|
||||||
|
}
|
34
lib/insights/diagram/models/chart/detailsTableChart.model.ts
Normal file
34
lib/insights/diagram/models/chart/detailsTableChart.model.ts
Normal file
@ -0,0 +1,34 @@
|
|||||||
|
/*!
|
||||||
|
* @license
|
||||||
|
* Copyright 2016 Alfresco Software, Ltd.
|
||||||
|
*
|
||||||
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
* you may not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
import { TableChart } from './tableChart.model';
|
||||||
|
|
||||||
|
export class DetailsTableChart extends TableChart {
|
||||||
|
detailsTable: any;
|
||||||
|
showDetails: boolean = false;
|
||||||
|
|
||||||
|
constructor(obj?: any) {
|
||||||
|
super(obj);
|
||||||
|
if (obj.detailTables) {
|
||||||
|
this.detailsTable = new TableChart(obj.detailTables[0]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
hasDetailsTable() {
|
||||||
|
return this.detailsTable ? true : false;
|
||||||
|
}
|
||||||
|
}
|
41
lib/insights/diagram/models/chart/heatMapChart.model.ts
Normal file
41
lib/insights/diagram/models/chart/heatMapChart.model.ts
Normal file
@ -0,0 +1,41 @@
|
|||||||
|
/*!
|
||||||
|
* @license
|
||||||
|
* Copyright 2016 Alfresco Software, Ltd.
|
||||||
|
*
|
||||||
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
* you may not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
import { Chart } from './chart.model';
|
||||||
|
|
||||||
|
export class HeatMapChart extends Chart {
|
||||||
|
avgTimePercentages: string;
|
||||||
|
avgTimeValues: string;
|
||||||
|
processDefinitionId: string;
|
||||||
|
titleKey: string;
|
||||||
|
totalCountValues: string;
|
||||||
|
totalCountsPercentages: string;
|
||||||
|
totalTimePercentages: string;
|
||||||
|
totalTimeValues: string;
|
||||||
|
|
||||||
|
constructor(obj?: any) {
|
||||||
|
super(obj);
|
||||||
|
this.avgTimePercentages = obj && obj.avgTimePercentages || null;
|
||||||
|
this.avgTimeValues = obj && obj.avgTimeValues || null;
|
||||||
|
this.processDefinitionId = obj && obj.processDefinitionId || null;
|
||||||
|
this.totalCountValues = obj && obj.totalCountValues || null;
|
||||||
|
this.titleKey = obj && obj.titleKey || null;
|
||||||
|
this.totalCountsPercentages = obj && obj.totalCountsPercentages || null;
|
||||||
|
this.totalTimePercentages = obj && obj.totalTimePercentages || null;
|
||||||
|
this.totalTimeValues = obj && obj.totalTimeValues || null;
|
||||||
|
}
|
||||||
|
}
|
36
lib/insights/diagram/models/chart/lineChart.model.ts
Normal file
36
lib/insights/diagram/models/chart/lineChart.model.ts
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
/*!
|
||||||
|
* @license
|
||||||
|
* Copyright 2016 Alfresco Software, Ltd.
|
||||||
|
*
|
||||||
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
* you may not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
import { Chart } from './chart.model';
|
||||||
|
|
||||||
|
export class LineChart extends Chart {
|
||||||
|
title: string;
|
||||||
|
titleKey: string;
|
||||||
|
labels: string[] = [];
|
||||||
|
datasets: any[] = [];
|
||||||
|
|
||||||
|
constructor(obj?: any) {
|
||||||
|
super(obj);
|
||||||
|
this.title = obj && obj.title || null;
|
||||||
|
this.titleKey = obj && obj.titleKey || null;
|
||||||
|
this.labels = obj && obj.columnNames.slice(1, obj.columnNames.length);
|
||||||
|
|
||||||
|
obj.rows.forEach((value: any) => {
|
||||||
|
this.datasets.push({data: value.slice(1, value.length), label: value[0]});
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
25
lib/insights/diagram/models/chart/multiBarChart.model.ts
Normal file
25
lib/insights/diagram/models/chart/multiBarChart.model.ts
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
/*!
|
||||||
|
* @license
|
||||||
|
* Copyright 2016 Alfresco Software, Ltd.
|
||||||
|
*
|
||||||
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
* you may not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
import { BarChart } from './barChart.model';
|
||||||
|
|
||||||
|
export class MultiBarChart extends BarChart {
|
||||||
|
|
||||||
|
constructor(obj?: any) {
|
||||||
|
super(obj);
|
||||||
|
}
|
||||||
|
}
|
58
lib/insights/diagram/models/chart/pieChart.model.ts
Normal file
58
lib/insights/diagram/models/chart/pieChart.model.ts
Normal file
@ -0,0 +1,58 @@
|
|||||||
|
/*!
|
||||||
|
* @license
|
||||||
|
* Copyright 2016 Alfresco Software, Ltd.
|
||||||
|
*
|
||||||
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
* you may not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
import { Chart } from './chart.model';
|
||||||
|
|
||||||
|
export class PieChart extends Chart {
|
||||||
|
title: string;
|
||||||
|
titleKey: string;
|
||||||
|
labels: string[] = [];
|
||||||
|
data: string[] = [];
|
||||||
|
|
||||||
|
constructor(obj?: any) {
|
||||||
|
super(obj);
|
||||||
|
this.title = obj && obj.title || null;
|
||||||
|
this.titleKey = obj && obj.titleKey || null;
|
||||||
|
if (obj.values) {
|
||||||
|
obj.values.forEach((value: any) => {
|
||||||
|
this.add(value.key, value.y);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
add(label: string, data: string) {
|
||||||
|
this.labels.push(label);
|
||||||
|
this.data.push(data);
|
||||||
|
}
|
||||||
|
|
||||||
|
hasData(): boolean {
|
||||||
|
return this.data && this.data.length > 0 ? true : false;
|
||||||
|
}
|
||||||
|
|
||||||
|
hasZeroValues(): boolean {
|
||||||
|
let isZeroValues: boolean = false;
|
||||||
|
if (this.hasData()) {
|
||||||
|
isZeroValues = true;
|
||||||
|
this.data.forEach((value) => {
|
||||||
|
if (value.toString() !== '0') {
|
||||||
|
isZeroValues = false;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
return isZeroValues;
|
||||||
|
}
|
||||||
|
}
|
39
lib/insights/diagram/models/chart/tableChart.model.ts
Normal file
39
lib/insights/diagram/models/chart/tableChart.model.ts
Normal file
@ -0,0 +1,39 @@
|
|||||||
|
/*!
|
||||||
|
* @license
|
||||||
|
* Copyright 2016 Alfresco Software, Ltd.
|
||||||
|
*
|
||||||
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
* you may not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
import { Chart } from './chart.model';
|
||||||
|
|
||||||
|
export class TableChart extends Chart {
|
||||||
|
title: string;
|
||||||
|
titleKey: string;
|
||||||
|
labels: string[] = [];
|
||||||
|
datasets: any[] = [];
|
||||||
|
|
||||||
|
constructor(obj?: any) {
|
||||||
|
super(obj);
|
||||||
|
this.title = obj && obj.title || null;
|
||||||
|
this.titleKey = obj && obj.titleKey || null;
|
||||||
|
this.labels = obj && obj.columnNames;
|
||||||
|
if (obj.rows) {
|
||||||
|
this.datasets = obj && obj.rows;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
hasDatasets() {
|
||||||
|
return this.datasets && this.datasets.length > 0 ? true : false;
|
||||||
|
}
|
||||||
|
}
|
@ -1,206 +0,0 @@
|
|||||||
/*!
|
|
||||||
* @license
|
|
||||||
* Copyright 2016 Alfresco Software, Ltd.
|
|
||||||
*
|
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
* you may not use this file except in compliance with the License.
|
|
||||||
* You may obtain a copy of the License at
|
|
||||||
*
|
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
*
|
|
||||||
* Unless required by applicable law or agreed to in writing, software
|
|
||||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
* See the License for the specific language governing permissions and
|
|
||||||
* limitations under the License.
|
|
||||||
*/
|
|
||||||
|
|
||||||
export class DiagramModel {
|
|
||||||
diagramBeginX: number;
|
|
||||||
diagramBeginY: number;
|
|
||||||
diagramHeight: number;
|
|
||||||
diagramWidth: number;
|
|
||||||
elements: DiagramElementModel[] = [];
|
|
||||||
flows: DiagramFlowElementModel[] = [];
|
|
||||||
pools: DiagramPoolElementModel[] = [];
|
|
||||||
|
|
||||||
constructor(obj?: any) {
|
|
||||||
if (obj) {
|
|
||||||
this.diagramBeginX = obj.diagramBeginX;
|
|
||||||
this.diagramBeginY = obj.diagramBeginY;
|
|
||||||
this.diagramHeight = obj.diagramHeight;
|
|
||||||
this.diagramWidth = obj.diagramWidth;
|
|
||||||
if (obj.elements) {
|
|
||||||
obj.elements.forEach((element: DiagramElementModel) => {
|
|
||||||
this.elements.push(new DiagramElementModel(element));
|
|
||||||
});
|
|
||||||
}
|
|
||||||
if (obj.flows) {
|
|
||||||
obj.flows.forEach((flow: DiagramFlowElementModel) => {
|
|
||||||
this.flows.push(new DiagramFlowElementModel(flow));
|
|
||||||
});
|
|
||||||
}
|
|
||||||
if (obj.pools) {
|
|
||||||
obj.pools.forEach((pool: DiagramPoolElementModel) => {
|
|
||||||
this.pools.push(new DiagramPoolElementModel(pool));
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
export class DiagramElementModel {
|
|
||||||
completed: boolean;
|
|
||||||
current: boolean;
|
|
||||||
height: string;
|
|
||||||
id: string;
|
|
||||||
name: string;
|
|
||||||
type: string;
|
|
||||||
width: string;
|
|
||||||
value: string;
|
|
||||||
x: string;
|
|
||||||
y: string;
|
|
||||||
properties: DiagramElementPropertyModel[] = [];
|
|
||||||
dataType: string = '';
|
|
||||||
eventDefinition: DiagramEventDefinitionModel;
|
|
||||||
taskType: string = '';
|
|
||||||
|
|
||||||
constructor(obj?: any) {
|
|
||||||
if (obj) {
|
|
||||||
this.completed = !!obj.completed;
|
|
||||||
this.current = !!obj.current;
|
|
||||||
this.height = obj.height || '';
|
|
||||||
this.id = obj.id || '';
|
|
||||||
this.name = obj.name || '';
|
|
||||||
this.type = obj.type || '';
|
|
||||||
this.width = obj.width || '';
|
|
||||||
this.value = obj.value || '';
|
|
||||||
this.x = obj.x || '';
|
|
||||||
this.y = obj.y || '';
|
|
||||||
this.taskType = obj.taskType || '';
|
|
||||||
if (obj.properties) {
|
|
||||||
obj.properties.forEach((property: DiagramElementPropertyModel) => {
|
|
||||||
this.properties.push(new DiagramElementPropertyModel(property));
|
|
||||||
});
|
|
||||||
}
|
|
||||||
this.dataType = obj.dataType || '';
|
|
||||||
if (obj.eventDefinition) {
|
|
||||||
this.eventDefinition = new DiagramEventDefinitionModel(obj.eventDefinition);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
export class DiagramElementPropertyModel {
|
|
||||||
name: string;
|
|
||||||
type: string;
|
|
||||||
value: any;
|
|
||||||
|
|
||||||
constructor(obj?: any) {
|
|
||||||
if (obj) {
|
|
||||||
this.name = obj.name;
|
|
||||||
this.type = obj.type;
|
|
||||||
this.value = obj.value;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
export class DiagramFlowElementModel {
|
|
||||||
completed: boolean;
|
|
||||||
current: boolean;
|
|
||||||
id: string;
|
|
||||||
properties: any[] = [];
|
|
||||||
sourceRef: string;
|
|
||||||
targetRef: string;
|
|
||||||
type: string;
|
|
||||||
waypoints: DiagramWayPointModel[] = [];
|
|
||||||
|
|
||||||
constructor(obj?: any) {
|
|
||||||
if (obj) {
|
|
||||||
this.completed = !!obj.completed;
|
|
||||||
this.current = !!obj.current;
|
|
||||||
this.id = obj.id;
|
|
||||||
this.properties = obj.properties;
|
|
||||||
this.sourceRef = obj.sourceRef;
|
|
||||||
this.targetRef = obj.targetRef;
|
|
||||||
this.type = obj.type;
|
|
||||||
if (obj.waypoints) {
|
|
||||||
obj.waypoints.forEach((waypoint: DiagramWayPointModel) => {
|
|
||||||
this.waypoints.push(new DiagramWayPointModel(waypoint));
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
export class DiagramWayPointModel {
|
|
||||||
x: number;
|
|
||||||
y: number;
|
|
||||||
|
|
||||||
constructor(obj?: any) {
|
|
||||||
if (obj) {
|
|
||||||
this.x = obj.x;
|
|
||||||
this.y = obj.y;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
export class DiagramEventDefinitionModel {
|
|
||||||
timeCycle: string;
|
|
||||||
type: string;
|
|
||||||
|
|
||||||
constructor(obj?: any) {
|
|
||||||
if (obj) {
|
|
||||||
this.timeCycle = obj.timeCycle;
|
|
||||||
this.type = obj.type;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
export class DiagramPoolElementModel {
|
|
||||||
height: string;
|
|
||||||
id: string;
|
|
||||||
name: string;
|
|
||||||
properties: any;
|
|
||||||
lanes: DiagramLaneElementModel[] = [];
|
|
||||||
width: string;
|
|
||||||
x: number;
|
|
||||||
y: number;
|
|
||||||
|
|
||||||
constructor(obj?: any) {
|
|
||||||
if (obj) {
|
|
||||||
this.height = obj.height;
|
|
||||||
this.id = obj.id;
|
|
||||||
this.name = obj.name;
|
|
||||||
this.properties = obj.properties;
|
|
||||||
this.width = obj.width;
|
|
||||||
this.x = obj.x;
|
|
||||||
this.y = obj.y;
|
|
||||||
if (obj.lanes) {
|
|
||||||
obj.lanes.forEach((lane: DiagramLaneElementModel) => {
|
|
||||||
this.lanes.push(new DiagramLaneElementModel(lane));
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
export class DiagramLaneElementModel {
|
|
||||||
height: number;
|
|
||||||
id: string;
|
|
||||||
name: string;
|
|
||||||
width: number;
|
|
||||||
x: number;
|
|
||||||
y: number;
|
|
||||||
|
|
||||||
constructor(obj?: any) {
|
|
||||||
if (obj) {
|
|
||||||
this.height = obj.height;
|
|
||||||
this.id = obj.id;
|
|
||||||
this.name = obj.name;
|
|
||||||
this.width = obj.width;
|
|
||||||
this.x = obj.x;
|
|
||||||
this.y = obj.y;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
54
lib/insights/diagram/models/diagram/diagram.model.ts
Normal file
54
lib/insights/diagram/models/diagram/diagram.model.ts
Normal file
@ -0,0 +1,54 @@
|
|||||||
|
/*!
|
||||||
|
* @license
|
||||||
|
* Copyright 2016 Alfresco Software, Ltd.
|
||||||
|
*
|
||||||
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
* you may not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
import { DiagramElementModel } from './diagramElement.model';
|
||||||
|
import { DiagramFlowElementModel } from './diagramFlowElement.model';
|
||||||
|
import { DiagramPoolElementModel } from './diagramPoolElement.model';
|
||||||
|
|
||||||
|
export class DiagramModel {
|
||||||
|
diagramBeginX: number;
|
||||||
|
diagramBeginY: number;
|
||||||
|
diagramHeight: number;
|
||||||
|
diagramWidth: number;
|
||||||
|
elements: DiagramElementModel[] = [];
|
||||||
|
flows: DiagramFlowElementModel[] = [];
|
||||||
|
pools: DiagramPoolElementModel[] = [];
|
||||||
|
|
||||||
|
constructor(obj?: any) {
|
||||||
|
if (obj) {
|
||||||
|
this.diagramBeginX = obj.diagramBeginX;
|
||||||
|
this.diagramBeginY = obj.diagramBeginY;
|
||||||
|
this.diagramHeight = obj.diagramHeight;
|
||||||
|
this.diagramWidth = obj.diagramWidth;
|
||||||
|
if (obj.elements) {
|
||||||
|
obj.elements.forEach((element: DiagramElementModel) => {
|
||||||
|
this.elements.push(new DiagramElementModel(element));
|
||||||
|
});
|
||||||
|
}
|
||||||
|
if (obj.flows) {
|
||||||
|
obj.flows.forEach((flow: DiagramFlowElementModel) => {
|
||||||
|
this.flows.push(new DiagramFlowElementModel(flow));
|
||||||
|
});
|
||||||
|
}
|
||||||
|
if (obj.pools) {
|
||||||
|
obj.pools.forEach((pool: DiagramPoolElementModel) => {
|
||||||
|
this.pools.push(new DiagramPoolElementModel(pool));
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
61
lib/insights/diagram/models/diagram/diagramElement.model.ts
Normal file
61
lib/insights/diagram/models/diagram/diagramElement.model.ts
Normal file
@ -0,0 +1,61 @@
|
|||||||
|
/*!
|
||||||
|
* @license
|
||||||
|
* Copyright 2016 Alfresco Software, Ltd.
|
||||||
|
*
|
||||||
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
* you may not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
import { DiagramElementPropertyModel } from './diagramElementProperty.model';
|
||||||
|
import { DiagramEventDefinitionModel } from './diagramEventDefinition.model';
|
||||||
|
|
||||||
|
export class DiagramElementModel {
|
||||||
|
completed: boolean;
|
||||||
|
current: boolean;
|
||||||
|
height: string;
|
||||||
|
id: string;
|
||||||
|
name: string;
|
||||||
|
type: string;
|
||||||
|
width: string;
|
||||||
|
value: string;
|
||||||
|
x: string;
|
||||||
|
y: string;
|
||||||
|
properties: DiagramElementPropertyModel[] = [];
|
||||||
|
dataType: string = '';
|
||||||
|
eventDefinition: DiagramEventDefinitionModel;
|
||||||
|
taskType: string = '';
|
||||||
|
|
||||||
|
constructor(obj?: any) {
|
||||||
|
if (obj) {
|
||||||
|
this.completed = !!obj.completed;
|
||||||
|
this.current = !!obj.current;
|
||||||
|
this.height = obj.height || '';
|
||||||
|
this.id = obj.id || '';
|
||||||
|
this.name = obj.name || '';
|
||||||
|
this.type = obj.type || '';
|
||||||
|
this.width = obj.width || '';
|
||||||
|
this.value = obj.value || '';
|
||||||
|
this.x = obj.x || '';
|
||||||
|
this.y = obj.y || '';
|
||||||
|
this.taskType = obj.taskType || '';
|
||||||
|
if (obj.properties) {
|
||||||
|
obj.properties.forEach((property: DiagramElementPropertyModel) => {
|
||||||
|
this.properties.push(new DiagramElementPropertyModel(property));
|
||||||
|
});
|
||||||
|
}
|
||||||
|
this.dataType = obj.dataType || '';
|
||||||
|
if (obj.eventDefinition) {
|
||||||
|
this.eventDefinition = new DiagramEventDefinitionModel(obj.eventDefinition);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,30 @@
|
|||||||
|
/*!
|
||||||
|
* @license
|
||||||
|
* Copyright 2016 Alfresco Software, Ltd.
|
||||||
|
*
|
||||||
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
* you may not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
export class DiagramElementPropertyModel {
|
||||||
|
name: string;
|
||||||
|
type: string;
|
||||||
|
value: any;
|
||||||
|
|
||||||
|
constructor(obj?: any) {
|
||||||
|
if (obj) {
|
||||||
|
this.name = obj.name;
|
||||||
|
this.type = obj.type;
|
||||||
|
this.value = obj.value;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,28 @@
|
|||||||
|
/*!
|
||||||
|
* @license
|
||||||
|
* Copyright 2016 Alfresco Software, Ltd.
|
||||||
|
*
|
||||||
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
* you may not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
export class DiagramEventDefinitionModel {
|
||||||
|
timeCycle: string;
|
||||||
|
type: string;
|
||||||
|
|
||||||
|
constructor(obj?: any) {
|
||||||
|
if (obj) {
|
||||||
|
this.timeCycle = obj.timeCycle;
|
||||||
|
this.type = obj.type;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,46 @@
|
|||||||
|
/*!
|
||||||
|
* @license
|
||||||
|
* Copyright 2016 Alfresco Software, Ltd.
|
||||||
|
*
|
||||||
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
* you may not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
import { DiagramWayPointModel } from './diagramWayPoint.model';
|
||||||
|
|
||||||
|
export class DiagramFlowElementModel {
|
||||||
|
completed: boolean;
|
||||||
|
current: boolean;
|
||||||
|
id: string;
|
||||||
|
properties: any[] = [];
|
||||||
|
sourceRef: string;
|
||||||
|
targetRef: string;
|
||||||
|
type: string;
|
||||||
|
waypoints: DiagramWayPointModel[] = [];
|
||||||
|
|
||||||
|
constructor(obj?: any) {
|
||||||
|
if (obj) {
|
||||||
|
this.completed = !!obj.completed;
|
||||||
|
this.current = !!obj.current;
|
||||||
|
this.id = obj.id;
|
||||||
|
this.properties = obj.properties;
|
||||||
|
this.sourceRef = obj.sourceRef;
|
||||||
|
this.targetRef = obj.targetRef;
|
||||||
|
this.type = obj.type;
|
||||||
|
if (obj.waypoints) {
|
||||||
|
obj.waypoints.forEach((waypoint: DiagramWayPointModel) => {
|
||||||
|
this.waypoints.push(new DiagramWayPointModel(waypoint));
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,36 @@
|
|||||||
|
/*!
|
||||||
|
* @license
|
||||||
|
* Copyright 2016 Alfresco Software, Ltd.
|
||||||
|
*
|
||||||
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
* you may not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
export class DiagramLaneElementModel {
|
||||||
|
height: number;
|
||||||
|
id: string;
|
||||||
|
name: string;
|
||||||
|
width: number;
|
||||||
|
x: number;
|
||||||
|
y: number;
|
||||||
|
|
||||||
|
constructor(obj?: any) {
|
||||||
|
if (obj) {
|
||||||
|
this.height = obj.height;
|
||||||
|
this.id = obj.id;
|
||||||
|
this.name = obj.name;
|
||||||
|
this.width = obj.width;
|
||||||
|
this.x = obj.x;
|
||||||
|
this.y = obj.y;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,46 @@
|
|||||||
|
/*!
|
||||||
|
* @license
|
||||||
|
* Copyright 2016 Alfresco Software, Ltd.
|
||||||
|
*
|
||||||
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
* you may not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
import { DiagramLaneElementModel } from './diagramLaneElement.model';
|
||||||
|
|
||||||
|
export class DiagramPoolElementModel {
|
||||||
|
height: string;
|
||||||
|
id: string;
|
||||||
|
name: string;
|
||||||
|
properties: any;
|
||||||
|
lanes: DiagramLaneElementModel[] = [];
|
||||||
|
width: string;
|
||||||
|
x: number;
|
||||||
|
y: number;
|
||||||
|
|
||||||
|
constructor(obj?: any) {
|
||||||
|
if (obj) {
|
||||||
|
this.height = obj.height;
|
||||||
|
this.id = obj.id;
|
||||||
|
this.name = obj.name;
|
||||||
|
this.properties = obj.properties;
|
||||||
|
this.width = obj.width;
|
||||||
|
this.x = obj.x;
|
||||||
|
this.y = obj.y;
|
||||||
|
if (obj.lanes) {
|
||||||
|
obj.lanes.forEach((lane: DiagramLaneElementModel) => {
|
||||||
|
this.lanes.push(new DiagramLaneElementModel(lane));
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
28
lib/insights/diagram/models/diagram/diagramWayPoint.model.ts
Normal file
28
lib/insights/diagram/models/diagram/diagramWayPoint.model.ts
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
/*!
|
||||||
|
* @license
|
||||||
|
* Copyright 2016 Alfresco Software, Ltd.
|
||||||
|
*
|
||||||
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
* you may not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
export class DiagramWayPointModel {
|
||||||
|
x: number;
|
||||||
|
y: number;
|
||||||
|
|
||||||
|
constructor(obj?: any) {
|
||||||
|
if (obj) {
|
||||||
|
this.x = obj.x;
|
||||||
|
this.y = obj.y;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -1,144 +0,0 @@
|
|||||||
/*!
|
|
||||||
* @license
|
|
||||||
* Copyright 2016 Alfresco Software, Ltd.
|
|
||||||
*
|
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
* you may not use this file except in compliance with the License.
|
|
||||||
* You may obtain a copy of the License at
|
|
||||||
*
|
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
*
|
|
||||||
* Unless required by applicable law or agreed to in writing, software
|
|
||||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
* See the License for the specific language governing permissions and
|
|
||||||
* limitations under the License.
|
|
||||||
*/
|
|
||||||
|
|
||||||
/**
|
|
||||||
*
|
|
||||||
* This object represent the report definition.
|
|
||||||
*
|
|
||||||
*
|
|
||||||
* @returns {ReportParametersModel} .
|
|
||||||
*/
|
|
||||||
export class ReportParametersModel {
|
|
||||||
id: number;
|
|
||||||
name: string;
|
|
||||||
definition: ReportDefinitionModel;
|
|
||||||
created: string;
|
|
||||||
|
|
||||||
constructor(obj?: any) {
|
|
||||||
this.id = obj && obj.id;
|
|
||||||
this.name = obj && obj.name || null;
|
|
||||||
if (obj && obj.definition) {
|
|
||||||
this.definition = new ReportDefinitionModel(JSON.parse(obj.definition));
|
|
||||||
}
|
|
||||||
this.created = obj && obj.created || null;
|
|
||||||
}
|
|
||||||
|
|
||||||
hasParameters() {
|
|
||||||
return (this.definition && this.definition.parameters && this.definition.parameters.length > 0) ? true : false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
export class ReportDefinitionModel {
|
|
||||||
parameters: ReportParameterDetailsModel[] = [];
|
|
||||||
|
|
||||||
constructor(obj?: any) {
|
|
||||||
obj.parameters.forEach((params: any) => {
|
|
||||||
let reportParamsModel = new ReportParameterDetailsModel(params);
|
|
||||||
this.parameters.push(reportParamsModel);
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
findParam(name: string): ReportParameterDetailsModel {
|
|
||||||
this.parameters.forEach((param) => {
|
|
||||||
return param.type === name ? param : null;
|
|
||||||
});
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
*
|
|
||||||
* This object represent the report parameter definition.
|
|
||||||
*
|
|
||||||
*
|
|
||||||
* @returns {ReportParameterDetailsModel} .
|
|
||||||
*/
|
|
||||||
export class ReportParameterDetailsModel {
|
|
||||||
id: string;
|
|
||||||
name: string;
|
|
||||||
nameKey: string;
|
|
||||||
type: string;
|
|
||||||
value: any;
|
|
||||||
options: ParameterValueModel[];
|
|
||||||
dependsOn: string;
|
|
||||||
|
|
||||||
constructor(obj?: any) {
|
|
||||||
this.id = obj && obj.id;
|
|
||||||
this.name = obj && obj.name || null;
|
|
||||||
this.nameKey = obj && obj.nameKey || null;
|
|
||||||
this.type = obj && obj.type || null;
|
|
||||||
this.value = obj && obj.value || null;
|
|
||||||
this.options = obj && obj.options || null;
|
|
||||||
this.dependsOn = obj && obj.dependsOn || null;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
export class ParameterValueModel {
|
|
||||||
id: string;
|
|
||||||
name: string;
|
|
||||||
version: string;
|
|
||||||
value: string;
|
|
||||||
|
|
||||||
constructor(obj?: any) {
|
|
||||||
this.id = obj && obj.id;
|
|
||||||
this.name = obj && obj.name || null;
|
|
||||||
this.value = obj && obj.value || null;
|
|
||||||
this.version = obj && obj.version || null;
|
|
||||||
}
|
|
||||||
|
|
||||||
get label () {
|
|
||||||
return this.version ? `${this.name} (v ${this.version}) ` : this.name;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
export class ReportQuery {
|
|
||||||
reportName: string;
|
|
||||||
processDefinitionId: string;
|
|
||||||
status: string;
|
|
||||||
taskName: string;
|
|
||||||
typeFiltering: boolean;
|
|
||||||
dateRange: ReportDateRange;
|
|
||||||
dateRangeInterval: string;
|
|
||||||
slowProcessInstanceInteger: number;
|
|
||||||
duration: number;
|
|
||||||
|
|
||||||
constructor(obj?: any) {
|
|
||||||
this.reportName = obj && obj.reportName || null;
|
|
||||||
this.processDefinitionId = obj && obj.processDefinitionId || null;
|
|
||||||
this.status = obj && obj.status || null;
|
|
||||||
this.taskName = obj && obj.taskName || null;
|
|
||||||
this.dateRangeInterval = obj && obj.dateRangeInterval || null;
|
|
||||||
this.typeFiltering = obj && (typeof obj.typeFiltering !== 'undefined') ? obj.typeFiltering : true;
|
|
||||||
this.slowProcessInstanceInteger = obj && obj.slowProcessInstanceInteger || 0;
|
|
||||||
this.duration = obj && obj.duration || 0;
|
|
||||||
this.dateRange = new ReportDateRange(obj);
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
export class ReportDateRange {
|
|
||||||
startDate: string;
|
|
||||||
endDate: string;
|
|
||||||
rangeId: string;
|
|
||||||
|
|
||||||
constructor(obj?: any) {
|
|
||||||
this.startDate = obj && obj.startDate || null;
|
|
||||||
this.endDate = obj && obj.endDate || null;
|
|
||||||
this.rangeId = obj && obj.rangeId || null;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
34
lib/insights/diagram/models/report/parameterValue.model.ts
Normal file
34
lib/insights/diagram/models/report/parameterValue.model.ts
Normal file
@ -0,0 +1,34 @@
|
|||||||
|
/*!
|
||||||
|
* @license
|
||||||
|
* Copyright 2016 Alfresco Software, Ltd.
|
||||||
|
*
|
||||||
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
* you may not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
export class ParameterValueModel {
|
||||||
|
id: string;
|
||||||
|
name: string;
|
||||||
|
version: string;
|
||||||
|
value: string;
|
||||||
|
|
||||||
|
constructor(obj?: any) {
|
||||||
|
this.id = obj && obj.id;
|
||||||
|
this.name = obj && obj.name || null;
|
||||||
|
this.value = obj && obj.value || null;
|
||||||
|
this.version = obj && obj.version || null;
|
||||||
|
}
|
||||||
|
|
||||||
|
get label () {
|
||||||
|
return this.version ? `${this.name} (v ${this.version}) ` : this.name;
|
||||||
|
}
|
||||||
|
}
|
29
lib/insights/diagram/models/report/reportDateRange.model.ts
Normal file
29
lib/insights/diagram/models/report/reportDateRange.model.ts
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
/*!
|
||||||
|
* @license
|
||||||
|
* Copyright 2016 Alfresco Software, Ltd.
|
||||||
|
*
|
||||||
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
* you may not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
export class ReportDateRange {
|
||||||
|
startDate: string;
|
||||||
|
endDate: string;
|
||||||
|
rangeId: string;
|
||||||
|
|
||||||
|
constructor(obj?: any) {
|
||||||
|
this.startDate = obj && obj.startDate || null;
|
||||||
|
this.endDate = obj && obj.endDate || null;
|
||||||
|
this.rangeId = obj && obj.rangeId || null;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
36
lib/insights/diagram/models/report/reportDefinition.model.ts
Normal file
36
lib/insights/diagram/models/report/reportDefinition.model.ts
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
/*!
|
||||||
|
* @license
|
||||||
|
* Copyright 2016 Alfresco Software, Ltd.
|
||||||
|
*
|
||||||
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
* you may not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
import { ReportParameterDetailsModel } from './reportParameterDetails.model';
|
||||||
|
|
||||||
|
export class ReportDefinitionModel {
|
||||||
|
parameters: ReportParameterDetailsModel[] = [];
|
||||||
|
|
||||||
|
constructor(obj?: any) {
|
||||||
|
obj.parameters.forEach((params: any) => {
|
||||||
|
let reportParamsModel = new ReportParameterDetailsModel(params);
|
||||||
|
this.parameters.push(reportParamsModel);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
findParam(name: string): ReportParameterDetailsModel {
|
||||||
|
this.parameters.forEach((param) => {
|
||||||
|
return param.type === name ? param : null;
|
||||||
|
});
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,38 @@
|
|||||||
|
/*!
|
||||||
|
* @license
|
||||||
|
* Copyright 2016 Alfresco Software, Ltd.
|
||||||
|
*
|
||||||
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
* you may not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
import { ParameterValueModel } from './parameterValue.model';
|
||||||
|
|
||||||
|
export class ReportParameterDetailsModel {
|
||||||
|
id: string;
|
||||||
|
name: string;
|
||||||
|
nameKey: string;
|
||||||
|
type: string;
|
||||||
|
value: any;
|
||||||
|
options: ParameterValueModel[];
|
||||||
|
dependsOn: string;
|
||||||
|
|
||||||
|
constructor(obj?: any) {
|
||||||
|
this.id = obj && obj.id;
|
||||||
|
this.name = obj && obj.name || null;
|
||||||
|
this.nameKey = obj && obj.nameKey || null;
|
||||||
|
this.type = obj && obj.type || null;
|
||||||
|
this.value = obj && obj.value || null;
|
||||||
|
this.options = obj && obj.options || null;
|
||||||
|
this.dependsOn = obj && obj.dependsOn || null;
|
||||||
|
}
|
||||||
|
}
|
38
lib/insights/diagram/models/report/reportParameters.model.ts
Normal file
38
lib/insights/diagram/models/report/reportParameters.model.ts
Normal file
@ -0,0 +1,38 @@
|
|||||||
|
/*!
|
||||||
|
* @license
|
||||||
|
* Copyright 2016 Alfresco Software, Ltd.
|
||||||
|
*
|
||||||
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
* you may not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
import { ReportDefinitionModel } from './reportDefinition.model';
|
||||||
|
|
||||||
|
export class ReportParametersModel {
|
||||||
|
id: number;
|
||||||
|
name: string;
|
||||||
|
definition: ReportDefinitionModel;
|
||||||
|
created: string;
|
||||||
|
|
||||||
|
constructor(obj?: any) {
|
||||||
|
this.id = obj && obj.id;
|
||||||
|
this.name = obj && obj.name || null;
|
||||||
|
if (obj && obj.definition) {
|
||||||
|
this.definition = new ReportDefinitionModel(JSON.parse(obj.definition));
|
||||||
|
}
|
||||||
|
this.created = obj && obj.created || null;
|
||||||
|
}
|
||||||
|
|
||||||
|
hasParameters() {
|
||||||
|
return (this.definition && this.definition.parameters && this.definition.parameters.length > 0) ? true : false;
|
||||||
|
}
|
||||||
|
}
|
43
lib/insights/diagram/models/report/reportQuery.model.ts
Normal file
43
lib/insights/diagram/models/report/reportQuery.model.ts
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
/*!
|
||||||
|
* @license
|
||||||
|
* Copyright 2016 Alfresco Software, Ltd.
|
||||||
|
*
|
||||||
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
* you may not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
import { ReportDateRange } from './reportDateRange.model';
|
||||||
|
|
||||||
|
export class ReportQuery {
|
||||||
|
reportName: string;
|
||||||
|
processDefinitionId: string;
|
||||||
|
status: string;
|
||||||
|
taskName: string;
|
||||||
|
typeFiltering: boolean;
|
||||||
|
dateRange: ReportDateRange;
|
||||||
|
dateRangeInterval: string;
|
||||||
|
slowProcessInstanceInteger: number;
|
||||||
|
duration: number;
|
||||||
|
|
||||||
|
constructor(obj?: any) {
|
||||||
|
this.reportName = obj && obj.reportName || null;
|
||||||
|
this.processDefinitionId = obj && obj.processDefinitionId || null;
|
||||||
|
this.status = obj && obj.status || null;
|
||||||
|
this.taskName = obj && obj.taskName || null;
|
||||||
|
this.dateRangeInterval = obj && obj.dateRangeInterval || null;
|
||||||
|
this.typeFiltering = obj && (typeof obj.typeFiltering !== 'undefined') ? obj.typeFiltering : true;
|
||||||
|
this.slowProcessInstanceInteger = obj && obj.slowProcessInstanceInteger || 0;
|
||||||
|
this.duration = obj && obj.duration || 0;
|
||||||
|
this.dateRange = new ReportDateRange(obj);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -21,6 +21,27 @@ export * from './components/diagram.component';
|
|||||||
export * from './services/diagram-color.service';
|
export * from './services/diagram-color.service';
|
||||||
export * from './services/diagrams.service';
|
export * from './services/diagrams.service';
|
||||||
|
|
||||||
export * from './models/diagram.model';
|
export * from './models/diagram/diagram.model';
|
||||||
export * from './models/chart.model';
|
export * from './models/diagram/diagramElement.model';
|
||||||
export * from './models/report.model';
|
export * from './models/diagram/diagramElementProperty.model';
|
||||||
|
export * from './models/diagram/diagramEventDefinition.model';
|
||||||
|
export * from './models/diagram/diagramFlowElement.model';
|
||||||
|
export * from './models/diagram/diagramLaneElement.model';
|
||||||
|
export * from './models/diagram/diagramPoolElement.model';
|
||||||
|
export * from './models/diagram/diagramWayPoint.model';
|
||||||
|
|
||||||
|
export * from './models/chart/barChart.model';
|
||||||
|
export * from './models/chart/chart.model';
|
||||||
|
export * from './models/chart/detailsTableChart.model';
|
||||||
|
export * from './models/chart/heatMapChart.model';
|
||||||
|
export * from './models/chart/lineChart.model';
|
||||||
|
export * from './models/chart/multiBarChart.model';
|
||||||
|
export * from './models/chart/pieChart.model';
|
||||||
|
export * from './models/chart/tableChart.model';
|
||||||
|
|
||||||
|
export * from './models/report/parameterValue.model';
|
||||||
|
export * from './models/report/reportDateRange.model';
|
||||||
|
export * from './models/report/reportDefinition.model';
|
||||||
|
export * from './models/report/reportParameterDetails.model';
|
||||||
|
export * from './models/report/reportParameters.model';
|
||||||
|
export * from './models/report/reportQuery.model';
|
||||||
|
@ -16,9 +16,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
export * from './insights.module';
|
export * from './insights.module';
|
||||||
|
//
|
||||||
export * from './diagram/diagram.module';
|
|
||||||
export * from './analytics-process/analytics-process.module';
|
export * from './analytics-process/analytics-process.module';
|
||||||
|
//
|
||||||
export * from './diagram';
|
|
||||||
export * from './analytics-process';
|
export * from './analytics-process';
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"name": "@alfresco/adf-insights",
|
"name": "@alfresco/adf-insights",
|
||||||
"description": "Alfresco ADF insights",
|
"description": "Alfresco ADF insights",
|
||||||
"version": "2.0.0",
|
"version": "2.0.1",
|
||||||
"author": "Alfresco Software, Ltd.",
|
"author": "Alfresco Software, Ltd.",
|
||||||
"main": "bundles/adf-insights.js",
|
"main": "bundles/adf-insights.js",
|
||||||
"repository": {
|
"repository": {
|
||||||
|
@ -14,8 +14,10 @@ eval EXEC_SLEEP=false
|
|||||||
eval SLEEP_TIME="0"
|
eval SLEEP_TIME="0"
|
||||||
eval EXEC_VERSION_JSAPI=false
|
eval EXEC_VERSION_JSAPI=false
|
||||||
eval JSAPI_VERSION=""
|
eval JSAPI_VERSION=""
|
||||||
|
eval EXEC_BUILD=true
|
||||||
|
|
||||||
eval projects=( "core"
|
eval projects=(
|
||||||
|
"core"
|
||||||
"insights"
|
"insights"
|
||||||
"content-services"
|
"content-services"
|
||||||
"process-services" )
|
"process-services" )
|
||||||
@ -29,6 +31,7 @@ show_help() {
|
|||||||
echo "-r or --registry to publish in an alternative npm registry -registry 'http://npm.local.me:8080/' "
|
echo "-r or --registry to publish in an alternative npm registry -registry 'http://npm.local.me:8080/' "
|
||||||
echo "-token auth token for publish in the npm registry"
|
echo "-token auth token for publish in the npm registry"
|
||||||
echo "-t or --tag to add a tag when publish a package"
|
echo "-t or --tag to add a tag when publish a package"
|
||||||
|
echo "-sb skip build"
|
||||||
echo "--sleep add a sleep before any publish"
|
echo "--sleep add a sleep before any publish"
|
||||||
echo "-gitjsapi to build all the components against a commit-ish version of the JS-API"
|
echo "-gitjsapi to build all the components against a commit-ish version of the JS-API"
|
||||||
echo "-vjsapi <commit-ish> Install different version from npm of JS-API defined in the package.json"
|
echo "-vjsapi <commit-ish> Install different version from npm of JS-API defined in the package.json"
|
||||||
@ -48,6 +51,10 @@ set_sleep(){
|
|||||||
EXEC_SLEEP=true
|
EXEC_SLEEP=true
|
||||||
}
|
}
|
||||||
|
|
||||||
|
skip_build(){
|
||||||
|
EXEC_BUILD=false
|
||||||
|
}
|
||||||
|
|
||||||
get_token_registry(){
|
get_token_registry(){
|
||||||
TOKEN_REGISTRY=$1
|
TOKEN_REGISTRY=$1
|
||||||
|
|
||||||
@ -109,6 +116,7 @@ while [[ $1 == -* ]]; do
|
|||||||
-f|--force) enable_force; shift;;
|
-f|--force) enable_force; shift;;
|
||||||
-token) get_token_registry $2; shift 2;;
|
-token) get_token_registry $2; shift 2;;
|
||||||
--sleep) set_sleep $2; shift 2;;
|
--sleep) set_sleep $2; shift 2;;
|
||||||
|
-sb) skip_build; shift;;
|
||||||
-r|--registry) enable_change_registry $2; shift 2;;
|
-r|--registry) enable_change_registry $2; shift 2;;
|
||||||
-gitjsapi) enable_js_api_git_link $2; shift 2;;
|
-gitjsapi) enable_js_api_git_link $2; shift 2;;
|
||||||
-vjsapi) version_js_api $2; shift 2;;
|
-vjsapi) version_js_api $2; shift 2;;
|
||||||
@ -116,10 +124,12 @@ while [[ $1 == -* ]]; do
|
|||||||
esac
|
esac
|
||||||
done
|
done
|
||||||
|
|
||||||
|
if $EXEC_BUILD == true; then
|
||||||
echo "====== INSTALL AND CLEAN ${PACKAGE} ===== "
|
echo "====== INSTALL AND CLEAN ${PACKAGE} ===== "
|
||||||
npm install rimraf
|
npm install rimraf
|
||||||
npm run clean
|
npm run clean
|
||||||
npm install
|
npm install
|
||||||
|
fi
|
||||||
|
|
||||||
if $EXEC_GIT_NPM_INSTALL_JSAPI == true; then
|
if $EXEC_GIT_NPM_INSTALL_JSAPI == true; then
|
||||||
echo "====== Use the alfresco JS-API '$GIT_ISH'====="
|
echo "====== Use the alfresco JS-API '$GIT_ISH'====="
|
||||||
@ -134,8 +144,10 @@ if $EXEC_VERSION_JSAPI == true; then
|
|||||||
npm install alfresco-js-api@${JSAPI_VERSION} --no-save
|
npm install alfresco-js-api@${JSAPI_VERSION} --no-save
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo "====== Build ADF ===== "
|
if $EXEC_BUILD == true; then
|
||||||
npm run new-build
|
echo "====== Build ADF ===== "
|
||||||
|
npm run new-build
|
||||||
|
fi
|
||||||
|
|
||||||
for PACKAGE in ${projects[@]}
|
for PACKAGE in ${projects[@]}
|
||||||
do
|
do
|
||||||
|
Loading…
x
Reference in New Issue
Block a user