#1174 Refresh the report list after edit report title

This commit is contained in:
mauriziovitale84 2016-12-14 15:14:37 +00:00
parent a12c370cc7
commit 8bfa71bc48
7 changed files with 51 additions and 9 deletions

View File

@ -92,10 +92,17 @@
<div class="page-content"> <div class="page-content">
<div class="mdl-grid"> <div class="mdl-grid">
<div class="mdl-cell mdl-cell--4-col task-column mdl-shadow--2dp"> <div class="mdl-cell mdl-cell--4-col task-column mdl-shadow--2dp">
<analytics-report-list (reportClick)="onReportClick($event)"></analytics-report-list> <analytics-report-list
(reportClick)="onReportClick($event)"
#analyticsreportlist >
</analytics-report-list>
</div> </div>
<div class="mdl-cell mdl-cell--8-col task-column mdl-shadow--2dp"> <div class="mdl-cell mdl-cell--8-col task-column mdl-shadow--2dp">
<activiti-analytics [appId]="appId" *ngIf="report" [reportId]="report.id"></activiti-analytics> <activiti-analytics *ngIf="report"
[appId]="appId"
[reportId]="report.id"
(editReport)="onEditReport($event)">
</activiti-analytics>
</div> </div>
</div> </div>
</div> </div>

View File

@ -30,6 +30,7 @@ import {
ActivitiStartProcessInstance, ActivitiStartProcessInstance,
ProcessInstance ProcessInstance
} from 'ng2-activiti-processlist'; } from 'ng2-activiti-processlist';
import { AnalyticsReportListComponent } from 'ng2-activiti-analytics';
import { ActivatedRoute } from '@angular/router'; import { ActivatedRoute } from '@angular/router';
import { Subscription } from 'rxjs/Rx'; import { Subscription } from 'rxjs/Rx';
import { import {
@ -75,6 +76,9 @@ export class ActivitiDemoComponent implements AfterViewInit {
@ViewChild(ActivitiStartProcessInstance) @ViewChild(ActivitiStartProcessInstance)
activitiStartProcess: ActivitiStartProcessInstance; activitiStartProcess: ActivitiStartProcessInstance;
@ViewChild(AnalyticsReportListComponent)
analyticsreportlist: AnalyticsReportListComponent;
@Input() @Input()
appId: number; appId: number;
@ -183,6 +187,10 @@ export class ActivitiDemoComponent implements AfterViewInit {
this.currentProcessInstanceId = processInstanceId; this.currentProcessInstanceId = processInstanceId;
} }
onEditReport(name: string) {
this.analyticsreportlist.reload();
}
navigateStartProcess() { navigateStartProcess() {
this.currentProcessInstanceId = currentProcessIdNew; this.currentProcessInstanceId = currentProcessIdNew;
} }

View File

@ -57,13 +57,21 @@ export class AnalyticsReportListComponent implements OnInit {
this.reports.push(report); this.reports.push(report);
}); });
this.getReportListByAppId(); this.getReportList();
} }
/** /**
* Get the report list by app id * Reload the component
*/ */
getReportListByAppId() { reload() {
this.reset();
this.getReportList();
}
/**
* Get the report list
*/
getReportList() {
this.analyticsService.getReportList().subscribe( this.analyticsService.getReportList().subscribe(
(res: ReportParametersModel[]) => { (res: ReportParametersModel[]) => {
if (res && res.length === 0) { if (res && res.length === 0) {
@ -108,6 +116,15 @@ export class AnalyticsReportListComponent implements OnInit {
return this.reports === undefined || (this.reports && this.reports.length === 0); return this.reports === undefined || (this.reports && this.reports.length === 0);
} }
/**
* Reset the list
*/
private reset() {
if (!this.isReportsEmpty()) {
this.reports = [];
}
}
/** /**
* Select the current report * Select the current report
* @param report * @param report

View File

@ -23,5 +23,5 @@
} }
.large { .large {
font-size: 44px; font-size: x-large;
} }

View File

@ -47,6 +47,9 @@ export class AnalyticsReportParametersComponent implements OnInit, OnChanges {
@Output() @Output()
onError = new EventEmitter(); onError = new EventEmitter();
@Output()
onEdit = new EventEmitter();
@Output() @Output()
onFormValueChanged = new EventEmitter(); onFormValueChanged = new EventEmitter();
@ -224,6 +227,7 @@ export class AnalyticsReportParametersComponent implements OnInit, OnChanges {
this.reportParamsSub = this.analyticsService.updateReport(this.reportParameters.id, this.reportParameters.name).subscribe( this.reportParamsSub = this.analyticsService.updateReport(this.reportParameters.id, this.reportParameters.name).subscribe(
(res: ReportParametersModel) => { (res: ReportParametersModel) => {
this.editDisable(); this.editDisable();
this.onEdit.emit(this.reportParameters.name);
}, },
(err: any) => { (err: any) => {
console.log(err); console.log(err);

View File

@ -1,6 +1,9 @@
<div class="col-md-6"> <div class="col-md-6">
<analytics-report-parameters [appId]="appId" [reportId]="reportId" <analytics-report-parameters [appId]="appId" [reportId]="reportId"
(onFormValueChanged)="reset()" (onSuccess)="showReport($event)"></analytics-report-parameters> (onFormValueChanged)="reset()"
(onSuccess)="showReport($event)"
(onEdit)="onEditReport($event)">
</analytics-report-parameters>
<div *ngIf="reports"> <div *ngIf="reports">
<div *ngFor="let report of reports"> <div *ngFor="let report of reports">

View File

@ -41,6 +41,9 @@ export class AnalyticsComponent implements OnChanges {
@Output() @Output()
onSuccess = new EventEmitter(); onSuccess = new EventEmitter();
@Output()
editReport = new EventEmitter();
@Output() @Output()
onError = new EventEmitter(); onError = new EventEmitter();
@ -108,7 +111,7 @@ export class AnalyticsComponent implements OnChanges {
report.datasets = clone.datasets; report.datasets = clone.datasets;
} }
public editReport(report: Chart) { public onEditReport(name: string) {
console.log(report); this.editReport.emit(name);
} }
} }