From 46c63acfdb4bfa54c5f2a6eb42d80e5dd853488a Mon Sep 17 00:00:00 2001 From: jz385p Date: Thu, 30 Jan 2020 19:36:10 +0530 Subject: Angular upgrade - Dynamic widget,widget catalog Angular upgrade Issue-ID: PORTAL-815 Change-Id: If3db891f2d02efa1d86b71198de97a322ddd0cfa Signed-off-by: jz385p --- .../app/pages/get-access/get-access.component.html | 98 +++++++++++++++ .../app/pages/get-access/get-access.component.scss | 0 .../pages/get-access/get-access.component.spec.ts | 25 ++++ .../app/pages/get-access/get-access.component.ts | 136 +++++++++++++++++++++ 4 files changed, 259 insertions(+) create mode 100644 portal-FE-common/src/app/pages/get-access/get-access.component.html create mode 100644 portal-FE-common/src/app/pages/get-access/get-access.component.scss create mode 100644 portal-FE-common/src/app/pages/get-access/get-access.component.spec.ts create mode 100644 portal-FE-common/src/app/pages/get-access/get-access.component.ts (limited to 'portal-FE-common/src/app/pages/get-access') diff --git a/portal-FE-common/src/app/pages/get-access/get-access.component.html b/portal-FE-common/src/app/pages/get-access/get-access.component.html new file mode 100644 index 00000000..8719ea41 --- /dev/null +++ b/portal-FE-common/src/app/pages/get-access/get-access.component.html @@ -0,0 +1,98 @@ + +
+
+

Get Access

+
+ Visit {{getAccessName}} + {{getAccessInfo}} + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Function +
+ {{element.ecomp_function}}
+
+ {{element.ecomp_function}}
+
Application Name {{element.app_name}} + Role Name {{element.role_name}} + Current Role +
+ +
+
Request Status +
{{element.request_type}}
+
+ +
\ No newline at end of file diff --git a/portal-FE-common/src/app/pages/get-access/get-access.component.scss b/portal-FE-common/src/app/pages/get-access/get-access.component.scss new file mode 100644 index 00000000..e69de29b diff --git a/portal-FE-common/src/app/pages/get-access/get-access.component.spec.ts b/portal-FE-common/src/app/pages/get-access/get-access.component.spec.ts new file mode 100644 index 00000000..ae61740d --- /dev/null +++ b/portal-FE-common/src/app/pages/get-access/get-access.component.spec.ts @@ -0,0 +1,25 @@ +import { async, ComponentFixture, TestBed } from '@angular/core/testing'; + +import { GetAccessComponent } from './get-access.component'; + +describe('GetAccessComponent', () => { + let component: GetAccessComponent; + let fixture: ComponentFixture; + + beforeEach(async(() => { + TestBed.configureTestingModule({ + declarations: [ GetAccessComponent ] + }) + .compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(GetAccessComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/portal-FE-common/src/app/pages/get-access/get-access.component.ts b/portal-FE-common/src/app/pages/get-access/get-access.component.ts new file mode 100644 index 00000000..a7454894 --- /dev/null +++ b/portal-FE-common/src/app/pages/get-access/get-access.component.ts @@ -0,0 +1,136 @@ +/*- + * ============LICENSE_START========================================== + * ONAP Portal + * =================================================================== + * Copyright (C) 2019 AT&T Intellectual Property. All rights reserved. + * =================================================================== + * + * Unless otherwise specified, all software contained herein is licensed + * under the Apache License, Version 2.0 (the "License"); + * you may not use this software 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. + * + * Unless otherwise specified, all documentation contained herein is licensed + * under the Creative Commons License, Attribution 4.0 Intl. (the "License"); + * you may not use this documentation except in compliance with the License. + * You may obtain a copy of the License at + * + * https://creativecommons.org/licenses/by/4.0/ + * + * Unless required by applicable law or agreed to in writing, documentation + * 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. + * + * ============LICENSE_END============================================ + * + * + */ + +import { Component, OnInit, ViewChild } from '@angular/core'; +import { GetAccessService } from 'src/app/shared/services/get-access/get-access.service'; +import { MatTableDataSource, MatPaginator } from '@angular/material'; +import { environment } from '../../../environments/environment'; + +@Component({ + selector: 'app-get-access', + templateUrl: './get-access.component.html', + styleUrls: ['./get-access.component.scss'] +}) +export class GetAccessComponent implements OnInit { + + isLoadingTable: boolean; + appTable: any[]; + displayedColumns: string[] = ['function', 'applicationName', 'roleName', 'currentRole', 'requestStatus']; + getAccessDataSource = new MatTableDataSource(this.appTable); + @ViewChild(MatPaginator) paginator: MatPaginator; + showSpinner: boolean; + getAccessUrl = environment.getAccessUrl; + getAccessName = environment.getAccessName; + getAccessInfo = environment.getAccessInfo; + + constructor(private getAccessService: GetAccessService) { } + + ngOnInit() { + this.appTable = []; + this.getAccessAppsList(); + } + + applyFilter(filterValue: string) { + this.getAccessDataSource.filter = filterValue.trim().toLowerCase(); + } + + // Convert this code to typescript after mylogins feature is back again + // var resultAccessValue = null; + + // $scope.openAppRoleModal = (itemData) => { + // if(resultAccessValue){ + // let data = null; + // data = { + // dialogState: 2, + // selectedUser:{ + // orgUserId: $scope.orgUserId, + // firstName: $scope.firstName, + // lastName: $scope.lastName, + // headerText: itemData.app_name, + // } + // } + // ngDialog.open({ + // templateUrl: 'app/views/catalog/request-access-catalog-dialogs/request-access-catalog.modal.html', + // controller: 'ExternalRequestAccessCtrl', + // controllerAs: 'userInfo', + // data: data + // }); + // } + // } + + // userProfileService.getUserProfile().then( + // function(profile) { + // $scope.orgUserId = profile.orgUserId; + // $scope.firstName = profile.firstName; + // $scope.lastName = profile.lastName; + // }); + + getAccessAppsList() { + this.showSpinner = true; + this.getAccessService.getListOfApp().subscribe((_res: any) => { + var tableData = []; + // $log.info('GetAccessCtrl::updateAppsList: getting res'); + var result = (typeof (_res) != "undefined" && _res != null) ? _res : null; + this.showSpinner = false; + // $log.info('GetAccessCtrl::updateAppsList: result',result); + // $log.info('GetAccessCtrl::updateAppsList: done'); + var source = result; + // $log.info('GetAccessCtrl::updateAppsList source: ', source); + for (var i = 0; i < source.length; i++) { + var dataArr = source[i]; + var checkEcompFuncAvail = 'Function Not Available'; + var reqStatus = 'Pending'; + dataArr.ecompFunction = (dataArr.ecompFunction === null) ? checkEcompFuncAvail : dataArr.ecompFunction; + dataArr.reqType = (dataArr.reqType === 'P') ? reqStatus : dataArr.reqType; + var dataTemp = { + ecomp_function: dataArr.ecompFunction, + app_name: dataArr.appName, + role_name: dataArr.roleName, + current_role: dataArr.roleActive, + request_type: dataArr.reqType + } + tableData.push(dataTemp); + } + this.appTable = tableData; + this.getAccessDataSource = new MatTableDataSource(this.appTable); + this.getAccessDataSource.paginator = this.paginator; + }, (_err) => { + this.isLoadingTable = false; + }) + } +} -- cgit 1.2.3-korg