summaryrefslogtreecommitdiffstats
path: root/usecaseui-portal/src/app/views/services/slicing-management/slicing-resource-management/slicing-business-management/slicing-business-table
diff options
context:
space:
mode:
authorcyuamber <xuranyjy@chinamobile.com>2019-12-04 20:29:15 +0800
committercyuamber <xuranyjy@chinamobile.com>2019-12-04 21:01:23 +0800
commit7a7b81477be87698d847f9424fa58d4cdf64a143 (patch)
tree3ffc53669abd0e44acfdc9a2739f8e0b67b2511c /usecaseui-portal/src/app/views/services/slicing-management/slicing-resource-management/slicing-business-management/slicing-business-table
parent60011b80da470f37bd1512b3fbd05b8243ed42b6 (diff)
feat:slicing business page basic functions code
Change-Id: Ifae9e28151a746c1258e181c05154e86b3f89aee Issue-ID: USECASEUI-352 Signed-off-by: cyuamber <xuranyjy@chinamobile.com>
Diffstat (limited to 'usecaseui-portal/src/app/views/services/slicing-management/slicing-resource-management/slicing-business-management/slicing-business-table')
-rw-r--r--usecaseui-portal/src/app/views/services/slicing-management/slicing-resource-management/slicing-business-management/slicing-business-table/slicing-business-table.component.html75
-rw-r--r--usecaseui-portal/src/app/views/services/slicing-management/slicing-resource-management/slicing-business-management/slicing-business-table/slicing-business-table.component.less22
-rw-r--r--usecaseui-portal/src/app/views/services/slicing-management/slicing-resource-management/slicing-business-management/slicing-business-table/slicing-business-table.component.spec.ts25
-rw-r--r--usecaseui-portal/src/app/views/services/slicing-management/slicing-resource-management/slicing-business-management/slicing-business-table/slicing-business-table.component.ts96
4 files changed, 218 insertions, 0 deletions
diff --git a/usecaseui-portal/src/app/views/services/slicing-management/slicing-resource-management/slicing-business-management/slicing-business-table/slicing-business-table.component.html b/usecaseui-portal/src/app/views/services/slicing-management/slicing-resource-management/slicing-business-management/slicing-business-table/slicing-business-table.component.html
new file mode 100644
index 00000000..fde155a5
--- /dev/null
+++ b/usecaseui-portal/src/app/views/services/slicing-management/slicing-resource-management/slicing-business-management/slicing-business-table/slicing-business-table.component.html
@@ -0,0 +1,75 @@
+<div class="slicing-resource-table">
+ <div nz-row>
+ <div nz-col nzSpan="12" class="task_status">
+ <span>Status : </span>
+ <nz-select nzShowSearch nzPlaceHolder="Select a processing status" [(ngModel)]="selectedValue"
+ (ngModelChange)="getListOfProcessingStatus()">
+ <nz-option *ngFor="let item of statusOptions" [nzLabel]="item" [nzValue]="item"></nz-option>
+ </nz-select>
+ </div>
+ </div>
+ <div>
+ <nz-table
+ #basicTable
+ [nzData]="listOfData"
+ [nzFrontPagination]="false"
+ [nzPageSizeOptions]="[5,10,15,20]"
+ [nzTotal]='total'
+ [(nzPageSize)]="pageSize"
+ [(nzPageIndex)]='pageIndex'
+ [nzLoading]="loading"
+ (nzPageIndexChange)="searchData()"
+ (nzPageSizeChange)="searchData(true)"
+ >
+ <thead>
+ <tr>
+ <th>Service_instance_id</th>
+ <th>Service_instance_name</th>
+ <th>Service_type</th>
+ <th>S-NSSAI</th>
+ <th>Orchestration_status</th>
+ <th>Aciton</th>
+ <th>Detail</th>
+ </tr>
+ </thead>
+ <tbody>
+ <ng-template ngFor let-data [ngForOf]="basicTable.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>
+
+ <span class="marginLeft10">
+ {{ data.last_operation_progress!==100?data.last_operation_type+'&nbsp;&nbsp;&nbsp;'+data.last_operation_progress+'%':data.orchestration_status }}
+ </span>
+ <nz-progress *ngIf="data.last_operation_progress !== 100"
+ [nzPercent]="data.last_operation_progress"
+ [nzShowInfo]="false" nzStatus="active"></nz-progress>
+ </td>
+ <td>
+ <nz-switch [ngModel]="switchStatusAll[i]==='activated'?true:false"
+ [nzDisabled]="data.last_operation_progress !== 100"
+ (ngModelChange)="switchChange(data,i)"
+ ></nz-switch>
+ <i [ngClass]="{'cannotclick':data.last_operation_progress !== 100}"
+ nz-icon
+ nzType="poweroff"
+ nzTheme="outline"
+ (click)="terminate(data)"
+ ></i>
+ </td>
+ <td>
+ <!--<i [ngClass]="{'cannotclick':data.last_operation_progress !== 100}"-->
+ <!--class="anticon anticon-bars"-->
+ <!--(click)="showdetail(data)">-->
+ <!--</i>-->
+ <i (click)="showdetail(data)" [ngClass]="{'cannotclick':data.last_operation_progress !== 100}">Detail</i>
+ </td>
+ </tr>
+ </ng-template>
+ </tbody>
+ </nz-table>
+ </div>
+</div> \ No newline at end of file
diff --git a/usecaseui-portal/src/app/views/services/slicing-management/slicing-resource-management/slicing-business-management/slicing-business-table/slicing-business-table.component.less b/usecaseui-portal/src/app/views/services/slicing-management/slicing-resource-management/slicing-business-management/slicing-business-table/slicing-business-table.component.less
new file mode 100644
index 00000000..b95d55e0
--- /dev/null
+++ b/usecaseui-portal/src/app/views/services/slicing-management/slicing-resource-management/slicing-business-management/slicing-business-table/slicing-business-table.component.less
@@ -0,0 +1,22 @@
+nz-select {
+ width: 200px;
+}
+.task_status{
+ margin-bottom: 20px;
+ span{
+ margin-right: 5%;
+ }
+}
+i.anticon {
+ cursor: pointer;
+ font-size: 18px;
+ padding: 2px;
+ &:hover{
+ color: #147dc2;
+ }
+}
+.cannotclick {
+ pointer-events: none;
+ color: #aaa;
+ opacity: 0.6;
+} \ No newline at end of file
diff --git a/usecaseui-portal/src/app/views/services/slicing-management/slicing-resource-management/slicing-business-management/slicing-business-table/slicing-business-table.component.spec.ts b/usecaseui-portal/src/app/views/services/slicing-management/slicing-resource-management/slicing-business-management/slicing-business-table/slicing-business-table.component.spec.ts
new file mode 100644
index 00000000..200a0fb3
--- /dev/null
+++ b/usecaseui-portal/src/app/views/services/slicing-management/slicing-resource-management/slicing-business-management/slicing-business-table/slicing-business-table.component.spec.ts
@@ -0,0 +1,25 @@
+import { async, ComponentFixture, TestBed } from '@angular/core/testing';
+
+import { SlicingBusinessTableComponent } from './slicing-business-table.component';
+
+describe('SlicingBusinessTableComponent', () => {
+ let component: SlicingBusinessTableComponent;
+ let fixture: ComponentFixture<SlicingBusinessTableComponent>;
+
+ beforeEach(async(() => {
+ TestBed.configureTestingModule({
+ declarations: [ SlicingBusinessTableComponent ]
+ })
+ .compileComponents();
+ }));
+
+ beforeEach(() => {
+ fixture = TestBed.createComponent(SlicingBusinessTableComponent);
+ 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/slicing-business-management/slicing-business-table/slicing-business-table.component.ts b/usecaseui-portal/src/app/views/services/slicing-management/slicing-resource-management/slicing-business-management/slicing-business-table/slicing-business-table.component.ts
new file mode 100644
index 00000000..0397de9c
--- /dev/null
+++ b/usecaseui-portal/src/app/views/services/slicing-management/slicing-resource-management/slicing-business-management/slicing-business-table/slicing-business-table.component.ts
@@ -0,0 +1,96 @@
+import {Component, OnInit} from '@angular/core';
+import {SlicingTaskServices} from '.././../../../../../core/services/slicingTaskServices';
+import {BUSINESS_STATUS} from '../../../../../../../constants/constants';
+import { NzModalService } from 'ng-zorro-antd';
+
+@Component({
+ selector: 'app-slicing-business-table',
+ templateUrl: './slicing-business-table.component.html',
+ styleUrls: ['./slicing-business-table.component.less']
+})
+export class SlicingBusinessTableComponent implements OnInit {
+
+ constructor(
+ private myhttp: SlicingTaskServices,
+ private modalService: NzModalService
+ ) {
+ }
+
+ ngOnInit() {
+ this.getBusinessList()
+ }
+
+ selectedValue = null;
+ switchStatusAll: any[] = [];
+ listOfData: any[] = [];
+ pageIndex: number = 1;
+ pageSize: number = 10;
+ total: number = 100;
+ loading = false;
+ statusOptions: any[] = BUSINESS_STATUS;
+
+
+ getBusinessList (): void{
+ this.loading = true;
+ let paramsObj = {
+ pageNo: this.pageIndex,
+ pageSize: this.pageSize
+ };
+ this.myhttp.getSlicingBusinessList(paramsObj).subscribe (res => {
+ const { result_header: { result_code }, result_body: { slicing_business_list } } = res;
+ if (+result_code === 200) {
+ this.listOfData = slicing_business_list;
+ this.total = slicing_business_list.length;
+ this.switchStatusAll = slicing_business_list.map((item)=>{
+ return item.orchestration_status
+ });
+ this.loading = false;
+ }
+ })
+ }
+ searchData(reset: boolean = false) {
+ this.getBusinessList();
+ }
+ switchChange(data,i){
+ console.log(data,i,"----- switchChange");
+ this.modalService.confirm({
+ nzTitle: '<i>Do you Want to'+(data.orchestration_status === 'activated'?'deactivated':'activated')+ 'slicing business?</i>',
+ nzContent: '<b>service_instance_id:'+data.service_instance_id+'</b>',
+ nzOnOk: () => {
+ let paramsObj = {
+ serviceId:data.service_instance_id
+ };
+ if(data.orchestration_status === 'activated'){
+ this.myhttp.changeActivateSlicingService(paramsObj,false).subscribe (res => {
+ const { result_header: { result_code }, result_body: { operation_id } } = res;
+ if (+result_code === 200) {
+ this.switchStatusAll[i] = 'deactivated';
+ console.log(operation_id,"operation_id")
+ }
+ })
+ }else {
+ this.myhttp.changeActivateSlicingService(paramsObj,true).subscribe (res => {
+ const { result_header: { result_code, result_message }} = res;
+ if (+result_code === 200) {
+ this.switchStatusAll[i] = 'activated';
+ console.log(result_message,"result_message")
+ }
+ })
+ }
+ },
+ nzCancelText: 'No',
+ nzOnCancel: () => {
+ this.switchStatusAll[i] = data.orchestration_status
+ }
+ });
+ }
+ terminate(data){
+
+ }
+ showdetail(data){
+
+ }
+ getListOfProcessingStatus(){
+
+ }
+}