summaryrefslogtreecommitdiffstats
path: root/portal-FE-common/src/app/pages/notification-history
diff options
context:
space:
mode:
authorSudarshan Kumar <sudarshan.kumar@att.com>2020-01-30 15:43:53 +0530
committerSudarshan Kumar <sudarshan.kumar@att.com>2020-01-30 15:45:15 +0530
commite0b464f75666b80976466437fa1057c3b4efd39f (patch)
tree40597d80bc74547d21342c972bbbbcc34404f535 /portal-FE-common/src/app/pages/notification-history
parente08934d7ee33d6a22ce746e6e9a2270d87115345 (diff)
Added new componetnts inside page modules
Added catalog-modal, role, roles-function, scheduler, user-notification-admin, users, widgets componetnts. Issue-ID: PORTAL-795 Change-Id: I4b5d781bb91224d7f4f3b00025443b906a4b4e5b Signed-off-by: Sudarshan Kumar <sudarshan.kumar@att.com>
Diffstat (limited to 'portal-FE-common/src/app/pages/notification-history')
-rw-r--r--portal-FE-common/src/app/pages/notification-history/notification-history.component.html112
-rw-r--r--portal-FE-common/src/app/pages/notification-history/notification-history.component.scss37
-rw-r--r--portal-FE-common/src/app/pages/notification-history/notification-history.component.spec.ts63
-rw-r--r--portal-FE-common/src/app/pages/notification-history/notification-history.component.ts91
4 files changed, 303 insertions, 0 deletions
diff --git a/portal-FE-common/src/app/pages/notification-history/notification-history.component.html b/portal-FE-common/src/app/pages/notification-history/notification-history.component.html
new file mode 100644
index 00000000..24203a76
--- /dev/null
+++ b/portal-FE-common/src/app/pages/notification-history/notification-history.component.html
@@ -0,0 +1,112 @@
+<!--
+ ============LICENSE_START==========================================
+ ONAP Portal
+ ===================================================================
+ Copyright (C) 2017 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============================================
+
+
+ -->
+
+<div class="container">
+
+ <!-- Heading -->
+ <div class="onap-main-view-title">
+ <h1 class="heading-page">Recent Notifications</h1>
+ </div>
+ <br />
+ <div>
+ This table shows notifications published in the last 30 days.
+ </div>
+ &nbsp;
+
+ <!--Filter Search Box -->
+ <mat-form-field>
+ <input matInput type="text" (keyup)="applyFilter($event.target.value)" placeholder="Search in entire table">
+ </mat-form-field>
+
+ <!-- Recent Notification History table -->
+ <table mat-table [dataSource]="notificationsDataSource" matSort>
+ <!-- Message Source Column -->
+ <ng-container matColumnDef="messageSource">
+ <th id="col1" mat-header-cell *matHeaderCellDef> Message Source </th>
+ <td id="rowheader_t1_{{i}}-messageSource" mat-cell *matCellDef="let element; let i = index;"> {{element.msgSource}}
+ </td>
+ </ng-container>
+
+ <!-- Message Column -->
+ <ng-container matColumnDef="message">
+ <th id="col2" mat-header-cell *matHeaderCellDef> Message </th>
+ <td id="rowheader_t1_{{i}}-message" mat-cell *matCellDef="let element; let i=index;"> {{element.msgDescription}}
+ </td>
+ </ng-container>
+
+ <!-- Start Date (Local Time) Column -->
+ <ng-container matColumnDef="startDateLocalTime">
+ <th id="col3" mat-header-cell *matHeaderCellDef> Start Date (Local Time) </th>
+ <td id="rowheader_t1_{{i}}-startDateLocalTime" mat-cell *matCellDef="let element; let i=index;"> {{element.startTime}}
+ </td>
+ </ng-container>
+
+ <!-- End Date (Local Time) Column -->
+ <ng-container matColumnDef="endDateLocalTime">
+ <th id="col4" mat-header-cell *matHeaderCellDef> End Date (Local Time) </th>
+ <td id="rowheader_t1_{{i}}-endDateLocalTime" mat-cell *matCellDef="let element; let i=index;">{{element.endTime}}
+ </td>
+ </ng-container>
+
+ <!-- Priority Column -->
+ <ng-container matColumnDef="priority">
+ <th id="col4" mat-header-cell *matHeaderCellDef> Priority </th>
+ <td id="rowheader_t1_{{i}}-priority" mat-cell *matCellDef="let element; let i=index;"> {{element.priority}}
+ </td>
+ </ng-container>
+
+ <!-- Created By Column -->
+ <ng-container matColumnDef="createdBy">
+ <th id="col4" mat-header-cell *matHeaderCellDef> Created By </th>
+ <td id="rowheader_t1_{{i}}-createdBy" mat-cell *matCellDef="let element; let i=index;"> {{element.loginId}}
+ </td>
+ </ng-container>
+
+ <!-- Created Time Column -->
+ <ng-container matColumnDef="createdTime">
+ <th id="col4" mat-header-cell *matHeaderCellDef> Created Time </th>
+ <td id="rowheader_t1_{{i}}-createdTime" mat-cell *matCellDef="let element; let i=index;"> {{element.createdDate}}
+ </td>
+ </ng-container>
+
+ <tr mat-header-row *matHeaderRowDef="displayedColumns"></tr>
+ <tr mat-row *matRowDef="let row; columns: displayedColumns;"></tr>
+ </table>
+ <mat-paginator [pageSizeOptions]="[10, 20]" showFirstLastButtons></mat-paginator>
+
+</div> \ No newline at end of file
diff --git a/portal-FE-common/src/app/pages/notification-history/notification-history.component.scss b/portal-FE-common/src/app/pages/notification-history/notification-history.component.scss
new file mode 100644
index 00000000..7a773398
--- /dev/null
+++ b/portal-FE-common/src/app/pages/notification-history/notification-history.component.scss
@@ -0,0 +1,37 @@
+/*-
+ * ============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============================================
+ *
+ *
+ */ \ No newline at end of file
diff --git a/portal-FE-common/src/app/pages/notification-history/notification-history.component.spec.ts b/portal-FE-common/src/app/pages/notification-history/notification-history.component.spec.ts
new file mode 100644
index 00000000..6896359a
--- /dev/null
+++ b/portal-FE-common/src/app/pages/notification-history/notification-history.component.spec.ts
@@ -0,0 +1,63 @@
+/*-
+ * ============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 { async, ComponentFixture, TestBed } from '@angular/core/testing';
+
+import { NotificationHistoryComponent } from './notification-history.component';
+
+describe('NotificationHistoryComponent', () => {
+ let component: NotificationHistoryComponent;
+ let fixture: ComponentFixture<NotificationHistoryComponent>;
+
+ beforeEach(async(() => {
+ TestBed.configureTestingModule({
+ declarations: [ NotificationHistoryComponent ]
+ })
+ .compileComponents();
+ }));
+
+ beforeEach(() => {
+ fixture = TestBed.createComponent(NotificationHistoryComponent);
+ component = fixture.componentInstance;
+ fixture.detectChanges();
+ });
+
+ it('should create', () => {
+ expect(component).toBeTruthy();
+ });
+});
diff --git a/portal-FE-common/src/app/pages/notification-history/notification-history.component.ts b/portal-FE-common/src/app/pages/notification-history/notification-history.component.ts
new file mode 100644
index 00000000..bad509c8
--- /dev/null
+++ b/portal-FE-common/src/app/pages/notification-history/notification-history.component.ts
@@ -0,0 +1,91 @@
+/*-
+ * ============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 { MatTableDataSource } from '@angular/material';
+import { MatSort, MatPaginator } from '@angular/material';
+import { NotificationService } from '../../shared/services/index';
+
+@Component({
+ selector: 'app-notification-history',
+ templateUrl: './notification-history.component.html',
+ styleUrls: ['./notification-history.component.scss']
+})
+export class NotificationHistoryComponent implements OnInit {
+
+ result: any;
+ notificationHistory: any= [];
+ displayedColumns: string[] = ['messageSource', 'message', 'startDateLocalTime','endDateLocalTime', 'priority', 'createdBy', 'createdTime'];
+ notificationsDataSource = new MatTableDataSource(this.notificationHistory);
+ @ViewChild(MatSort) sort: MatSort;
+ @ViewChild(MatPaginator) paginator: MatPaginator;
+
+ constructor(public notificationService: NotificationService) { }
+
+ ngOnInit() {
+ this.getNotificationHistory();
+ }
+
+ getNotificationHistory(){
+ //console.log("getNotificationHistory called");
+ this.notificationService.getNotificationHistory()
+ .subscribe(_data => {
+ this.result = _data;
+ if (this.result == null || this.result == 'undefined') {
+ console.log('NotificationService::getNotificationHistory Failed: Result or result.data is null');
+ }else {
+ //console.log('Notification Data ::',this.result);
+ this.notificationHistory = this.result;
+ this.populateTableData(this.notificationHistory);
+ }
+ }, error =>{
+ console.log(error);
+ });
+ }
+
+ populateTableData(notificationHistory: Array<Object>){
+ this.notificationsDataSource = new MatTableDataSource(notificationHistory);
+ this.notificationsDataSource.sort = this.sort;
+ this.notificationsDataSource.paginator = this.paginator;
+ }
+
+ applyFilter(filterValue: string) {
+ this.notificationsDataSource.filter = filterValue.trim().toLowerCase();
+ }
+
+}