summaryrefslogtreecommitdiffstats
path: root/ecomp-sdk/epsdk-app-overlay/src/main/webapp/ngapp/src/app/report-run/run/run-report-result-set/run-report-result-set.component.ts
diff options
context:
space:
mode:
Diffstat (limited to 'ecomp-sdk/epsdk-app-overlay/src/main/webapp/ngapp/src/app/report-run/run/run-report-result-set/run-report-result-set.component.ts')
-rw-r--r--ecomp-sdk/epsdk-app-overlay/src/main/webapp/ngapp/src/app/report-run/run/run-report-result-set/run-report-result-set.component.ts139
1 files changed, 139 insertions, 0 deletions
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/ngapp/src/app/report-run/run/run-report-result-set/run-report-result-set.component.ts b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/ngapp/src/app/report-run/run/run-report-result-set/run-report-result-set.component.ts
new file mode 100644
index 00000000..4f18ff8e
--- /dev/null
+++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/ngapp/src/app/report-run/run/run-report-result-set/run-report-result-set.component.ts
@@ -0,0 +1,139 @@
+import { AfterViewInit, Component, OnInit, ViewChild, Input, SimpleChange } from '@angular/core';
+import { MatPaginator } from '@angular/material/paginator';
+import { MatSort } from '@angular/material/sort';
+import { MatTable } from '@angular/material/table';
+import { RunReportFinalTableDataSource, RunReportFinalTableItem } from './run-report-result-set-datasource';
+import { ActivatedRoute } from '@angular/router';
+import { HttpClient } from '@angular/common/http';
+import { RunService } from '../run.service';
+
+@Component({
+ selector: 'app-run-report-result-set',
+ templateUrl: './run-report-result-set.component.html',
+ styleUrls: ['./run-report-result-set.component.css']
+})
+export class RunReportResultSetComponent implements AfterViewInit, OnInit {
+
+ @Input("reportId") reportId1 : string;
+
+
+ @ViewChild(MatPaginator, {static: false} as any) paginator: MatPaginator;
+ @ViewChild(MatSort, {static: false} as any) sort: MatSort;
+ @ViewChild(MatTable, {static: false} as any) table: MatTable<RunReportFinalTableItem>;
+ dataSource: RunReportFinalTableDataSource;
+
+ /** Columns displayed in the table. Columns IDs can be added, removed, or reordered. */
+ displayedColumns : string[];
+ IncomingReportId : string;
+ displayedColumnsArr : string[];
+ displayedRowObj : RunReportFinalTableItem[];
+
+ constructor(private _http : HttpClient, private _route : ActivatedRoute, private _runService : RunService){
+ this.displayedColumnsArr = new Array();
+ this.displayedRowObj = new Array();
+ this.displayedColumns = new Array();
+ }
+
+ ngOnInit() {
+ this.dataSource = new RunReportFinalTableDataSource();
+
+ this._route.params.subscribe(params => {
+
+ this.IncomingReportId = params["reportId"];
+ });
+ this._runService.getReportData(this.reportId1)
+ .subscribe((response) => {
+ console.log(response);
+
+ let i=0;
+ while(response["reportDataColumns"][i])
+ {
+ this.displayedColumnsArr.push(response["reportDataColumns"][i]["columnTitle"] +","+ response["reportDataColumns"][i]["colId"]);
+ i++;
+ }
+
+ let j=0;
+ while(response["reportDataRows"][j])
+ {
+ let k=0;
+ let obj = new Object();
+ while(this.displayedColumnsArr[k])
+ {
+ if(response["reportDataRows"][j][this.displayedColumnsArr[k].split(",")[1]])
+ {
+ obj[response["reportDataRows"][j][this.displayedColumnsArr[k].split(",")[1]]["colId"]] = response["reportDataRows"][j][this.displayedColumnsArr[k].split(",")[1]]["displayValue"];
+ }
+ k++;
+ }
+ this.displayedRowObj.push(obj);
+ j++;
+ }
+
+ console.log(this.displayedColumnsArr);
+ console.log(this.displayedRowObj);
+
+ for(let l=0; l<this.displayedColumnsArr.length; l++)
+ {
+ this.displayedColumns.push(this.displayedColumnsArr[l].split(",")[1]);
+ }
+
+
+ this.dataSource.data = this.displayedRowObj;
+ this.dataSource.sort = this.sort;
+ this.dataSource.paginator = this.paginator;
+ this.table.dataSource = this.dataSource;
+
+ });
+
+
+ }
+
+ ngAfterViewInit() {
+ this._runService.getReportData(this.reportId1)
+ .subscribe((response) => {
+ console.log(response);
+
+ let i=0;
+ while(response["reportDataColumns"][i])
+ {
+ this.displayedColumnsArr.push(response["reportDataColumns"][i]["columnTitle"] +","+ response["reportDataColumns"][i]["colId"]);
+ i++;
+ }
+
+ let j=0;
+ while(response["reportDataRows"][j])
+ {
+ let k=0;
+ let obj = new Object();
+ while(this.displayedColumnsArr[k])
+ {
+ if(response["reportDataRows"][j][this.displayedColumnsArr[k].split(",")[1]])
+ {
+ obj[response["reportDataRows"][j][this.displayedColumnsArr[k].split(",")[1]]["colId"]] = response["reportDataRows"][j][this.displayedColumnsArr[k].split(",")[1]]["displayValue"];
+ }
+ k++;
+ }
+ this.displayedRowObj.push(obj);
+ j++;
+ }
+
+ console.log(this.displayedColumnsArr);
+ console.log(this.displayedRowObj);
+
+ for(let l=0; l<this.displayedColumnsArr.length; l++)
+ {
+ this.displayedColumns.push(this.displayedColumnsArr[l].split(",")[1]);
+ }
+
+ this.dataSource.data = this.displayedRowObj;
+ this.dataSource.sort = this.sort;
+ this.dataSource.paginator = this.paginator;
+ this.table.dataSource = this.dataSource;
+
+ });
+
+
+ }
+
+
+}