feat:add detail model of slicing nsi page and add nssi detail model Base code 09/99309/2
authorcyuamber <xuranyjy@chinamobile.com>
Mon, 9 Dec 2019 02:51:11 +0000 (10:51 +0800)
committercyuamber <xuranyjy@chinamobile.com>
Mon, 9 Dec 2019 03:33:57 +0000 (11:33 +0800)
Change-Id: I1636bc07415a8e6588bfa742333c684351082d62
Issue-ID: USECASEUI-369
Signed-off-by: cyuamber <xuranyjy@chinamobile.com>
usecaseui-portal/src/app/app.module.ts
usecaseui-portal/src/app/core/services/slicingTaskServices.ts
usecaseui-portal/src/app/views/services/slicing-management/slicing-resource-management/nsi-management/nsi-model/nsi-model.component.html
usecaseui-portal/src/app/views/services/slicing-management/slicing-resource-management/nsi-management/nsi-model/nsi-model.component.ts
usecaseui-portal/src/app/views/services/slicing-management/slicing-resource-management/nsi-management/nsi-table/nsi-table.component.ts
usecaseui-portal/src/app/views/services/slicing-management/slicing-resource-management/nssi-management/nssi-model/nssi-model.component.html [new file with mode: 0644]
usecaseui-portal/src/app/views/services/slicing-management/slicing-resource-management/nssi-management/nssi-model/nssi-model.component.less [new file with mode: 0644]
usecaseui-portal/src/app/views/services/slicing-management/slicing-resource-management/nssi-management/nssi-model/nssi-model.component.spec.ts [new file with mode: 0644]
usecaseui-portal/src/app/views/services/slicing-management/slicing-resource-management/nssi-management/nssi-model/nssi-model.component.ts [new file with mode: 0644]

index 37a9eaa..1beb9c7 100644 (file)
@@ -98,6 +98,7 @@ import { NsiTableComponent } from './views/services/slicing-management/slicing-r
 import { NssiTableComponent } from './views/services/slicing-management/slicing-resource-management/nssi-management/nssi-table/nssi-table.component'
 import { SlicingBusinessModelComponent } from './views/services/slicing-management/slicing-resource-management/slicing-business-management/slicing-business-model/slicing-business-model.component';
 import { NsiModelComponent } from './views/services/slicing-management/slicing-resource-management/nsi-management/nsi-model/nsi-model.component';
+import { NssiModelComponent } from './views/services/slicing-management/slicing-resource-management/nssi-management/nssi-model/nssi-model.component'
 
 @NgModule({
   providers: [
@@ -161,6 +162,7 @@ import { NsiModelComponent } from './views/services/slicing-management/slicing-r
       NssiTableComponent,
       SlicingBusinessModelComponent,
       NsiModelComponent,
+      NssiModelComponent
   ],
   imports: [
     BrowserModule,
@@ -181,7 +183,8 @@ import { NsiModelComponent } from './views/services/slicing-management/slicing-r
   bootstrap: [AppComponent],
     entryComponents: [
         SlicingBusinessModelComponent,
-        NsiModelComponent
-           ]
+        NsiModelComponent,
+        NssiModelComponent
+    ]
 })
 export class AppModule { }
\ No newline at end of file
index 7c50e56..852dbf0 100644 (file)
@@ -143,6 +143,11 @@ export class SlicingTaskServices {
         }\r
         return this.http.get<any>(url);\r
     }\r
+    //get slicingNsiDetail\r
+    getSlicingNsiDetail(nsiId: string){\r
+        let url = this.url.slicingNsiDetail.replace("{nsiId}",nsiId);\r
+        return this.http.get<any>(url);\r
+    }\r
     // Get slicing nssi list\r
     getSlicingNssiList (paramsObj,isSelect: boolean) {\r
         let url = this.url.slicingNssiList .replace("{pageNo}", paramsObj.pageNo)\r
index a90a90d..47bd9e5 100644 (file)
@@ -1,4 +1,64 @@
-<p>
-  nsi-model works!
-  <button (click)="button()">我是nsi--button</button>
-</p>
+<nz-list class="taskmodel_list"  nzBordered [nzHeader]="'Carry Slicing Businress List :'" [nzFooter]="null">
+  <nz-table
+          #businessTable
+          [nzData]="businessList"
+          [nzShowPagination]="false"
+          nzHideOnSinglePage
+  >
+    <thead>
+    <tr>
+      <th>Service Instance Id</th>
+      <th>Service Instance Name</th>
+      <th>Service Type</th>
+      <th>Status</th>
+      <th width="100px">Detail</th>
+    </tr>
+    </thead>
+    <tbody>
+    <ng-template ngFor let-data [ngForOf]="businessTable.data" let-i="index">
+      <tr>
+        <td>{{ data.service_instance_id }}</td>
+        <td>{{ data.service_instance_name }}</td>
+        <td>{{ data.service_type }}</td>
+        <td>{{ data.service_snssai }}</td>
+        <td>{{ data.orchestration_status }}</td>
+        <td>
+          <a (click)="showBusinessDetail(data)">detail</a>
+        </td>
+      </tr>
+    </ng-template>
+    </tbody>
+  </nz-table>
+</nz-list>
+<nz-list class="taskmodel_list"  nzBordered [nzHeader]="'Include Slicing NSSI List :'" [nzFooter]="null">
+  <nz-table
+          #nssiTable
+          [nzData]="nssiList"
+          [nzShowPagination]="false"
+          nzHideOnSinglePage
+  >
+    <thead>
+    <tr>
+      <th>Service Instance Id</th>
+      <th>Service Instance Name</th>
+      <th>Service Type</th>
+      <th>Status</th>
+      <th width="100px">Detail</th>
+    </tr>
+    </thead>
+    <tbody>
+    <ng-template ngFor let-data [ngForOf]="nssiTable.data" let-i="index">
+      <tr>
+        <td>{{ data.service_instance_id }}</td>
+        <td>{{ data.service_instance_name }}</td>
+        <td>{{ data.service_type }}</td>
+        <td>{{ data.environment_context }}</td>
+        <td>{{ data.orchestration_status }}</td>
+        <td>
+          <a (click)="showNssiDetail(data)">detail</a>
+        </td>
+      </tr>
+    </ng-template>
+    </tbody>
+  </nz-table>
+</nz-list>
\ No newline at end of file
index 1b8a662..070a483 100644 (file)
@@ -1,6 +1,8 @@
-import { Component, OnInit } from '@angular/core';
+import {Component, Input, OnInit} from '@angular/core';
 import {NzModalService} from "ng-zorro-antd";
+import {SlicingTaskServices} from '.././../../../../../core/services/slicingTaskServices';
 import { SlicingBusinessModelComponent } from '../../slicing-business-management/slicing-business-model/slicing-business-model.component';
+import { NssiModelComponent } from '../../nssi-management/nssi-model/nssi-model.component';
 @Component({
   selector: 'app-nsi-model',
   templateUrl: './nsi-model.component.html',
@@ -9,14 +11,47 @@ import { SlicingBusinessModelComponent } from '../../slicing-business-management
 export class NsiModelComponent implements OnInit {
 
     constructor(
+        private myhttp: SlicingTaskServices,
         private modalService: NzModalService
     ) {
     }
-
+    @Input() nsiId;
+    businessList: any[];
+    nssiList: any[];
   ngOnInit() {
+      this.getNsiDetail()
   }
-    button(){
-        this.modalService.create({nzContent:SlicingBusinessModelComponent});
-        console.log(2222)
+    getNsiDetail() {
+        this.myhttp.getSlicingNsiDetail(this.nsiId).subscribe(res => {
+            const {result_header: {result_code}, result_body: {hosted_business_list,included_nssi_list} } = res;
+            if (+result_code === 200) {
+                this.businessList = hosted_business_list;
+                this.nssiList = included_nssi_list;
+            }
+        })
+    }
+    showBusinessDetail(data){
+        this.modalService.create({
+            nzContent:SlicingBusinessModelComponent,
+            nzTitle:"Detail",
+            nzWidth:"70%",
+            nzOkText: null,
+            nzCancelText: null,
+            nzComponentParams:{
+                businessId:data.service_instance_id
+            }
+        });
+    }
+    showNssiDetail(data){
+        this.modalService.create({
+            nzContent:NssiModelComponent,
+            nzTitle:"Detail",
+            nzWidth:"70%",
+            nzOkText: null,
+            nzCancelText: null,
+            nzComponentParams:{
+                nssiId:data.service_instance_id
+            }
+        });
     }
 }
index 48c8d5a..22cc3ee 100644 (file)
@@ -1,6 +1,8 @@
 import { Component, OnInit } from '@angular/core';
 import {BUSINESS_STATUS} from '../../../../../../../constants/constants';
 import {SlicingTaskServices} from "../../../../../../core/services/slicingTaskServices";
+import {NsiModelComponent} from "../nsi-model/nsi-model.component";
+import { NzModalService } from 'ng-zorro-antd';
 @Component({
   selector: 'app-nsi-table',
   templateUrl: './nsi-table.component.html',
@@ -9,7 +11,8 @@ import {SlicingTaskServices} from "../../../../../../core/services/slicingTaskSe
 export class NsiTableComponent implements OnInit {
 
     constructor(
-        private myhttp: SlicingTaskServices
+        private myhttp: SlicingTaskServices,
+        private modalService: NzModalService
     ) {
     }
 
@@ -53,7 +56,16 @@ export class NsiTableComponent implements OnInit {
     searchData(reset: boolean = false) {
         this.getNsiList();
     }
-    showdetail(data){
-
+    showdetail(data) {
+        const nsiModal = this.modalService.create({
+            nzTitle:"Detail",
+            nzContent: NsiModelComponent,
+            nzWidth:"70%",
+            nzOkText: null,
+            nzCancelText: null,
+            nzComponentParams:{
+                nsiId:data.service_instance_id
+            }
+        })
     }
 }
diff --git a/usecaseui-portal/src/app/views/services/slicing-management/slicing-resource-management/nssi-management/nssi-model/nssi-model.component.html b/usecaseui-portal/src/app/views/services/slicing-management/slicing-resource-management/nssi-management/nssi-model/nssi-model.component.html
new file mode 100644 (file)
index 0000000..b661e26
--- /dev/null
@@ -0,0 +1,3 @@
+<p>
+  nssi-model works!
+</p>
diff --git a/usecaseui-portal/src/app/views/services/slicing-management/slicing-resource-management/nssi-management/nssi-model/nssi-model.component.less b/usecaseui-portal/src/app/views/services/slicing-management/slicing-resource-management/nssi-management/nssi-model/nssi-model.component.less
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/usecaseui-portal/src/app/views/services/slicing-management/slicing-resource-management/nssi-management/nssi-model/nssi-model.component.spec.ts b/usecaseui-portal/src/app/views/services/slicing-management/slicing-resource-management/nssi-management/nssi-model/nssi-model.component.spec.ts
new file mode 100644 (file)
index 0000000..2fc1336
--- /dev/null
@@ -0,0 +1,25 @@
+import { async, ComponentFixture, TestBed } from '@angular/core/testing';
+
+import { NssiModelComponent } from './nssi-model.component';
+
+describe('NssiModelComponent', () => {
+  let component: NssiModelComponent;
+  let fixture: ComponentFixture<NssiModelComponent>;
+
+  beforeEach(async(() => {
+    TestBed.configureTestingModule({
+      declarations: [ NssiModelComponent ]
+    })
+    .compileComponents();
+  }));
+
+  beforeEach(() => {
+    fixture = TestBed.createComponent(NssiModelComponent);
+    component = fixture.componentInstance;
+    fixture.detectChanges();
+  });
+
+  it('should create', () => {
+    expect(component).toBeTruthy();
+  });
+});
diff --git a/usecaseui-portal/src/app/views/services/slicing-management/slicing-resource-management/nssi-management/nssi-model/nssi-model.component.ts b/usecaseui-portal/src/app/views/services/slicing-management/slicing-resource-management/nssi-management/nssi-model/nssi-model.component.ts
new file mode 100644 (file)
index 0000000..11da908
--- /dev/null
@@ -0,0 +1,15 @@
+import { Component, OnInit } from '@angular/core';
+
+@Component({
+  selector: 'app-nssi-model',
+  templateUrl: './nssi-model.component.html',
+  styleUrls: ['./nssi-model.component.less']
+})
+export class NssiModelComponent implements OnInit {
+
+  constructor() { }
+
+  ngOnInit() {
+  }
+
+}