1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
|
import { Component, OnInit, SimpleChanges } from '@angular/core';
import { HttpClient, HttpHeaders, HttpParams, HttpResponse } from '@angular/common/http';
import { baseUrl } from '../../../../datainterface';
@Component({
selector: 'app-manage-service',
templateUrl: './manage-service.component.html',
styleUrls: ['./manage-service.component.less']
})
export class ManageServiceComponent implements OnInit {
selectedSubscriptionType: string = "";
serviceSubscriptionList = [] as Array<any>;
selectedServiceInstance: string = "" ;
serviceInstanceList = [] as Array<any>;
expandDataSet = [
{ rowIdx: 1, name: 'i18nTextDefine_serviceInformation', expand: true },
{ rowIdx: 2, name: 'i18nTextDefine_vpnInformation', expand: true },
{ rowIdx: 3, name: 'i18nTextDefine_uniInformation', expand: true }
];
summaryInfo:object = {};
serviceList:object = {};
vpnInfo = [];
uniInfo = [];
mapped: any;
myKeys = [] as Array<any>;
baseUrl = baseUrl.baseUrl
constructor(private http: HttpClient) { }
ngOnInit() {
this.getSubscribeTypes();
}
//Get SubscriptionType
getSubscribeTypes() {
let httpOptions = {
headers: new HttpHeaders({
'Content-Type': 'application/json'
})
};
let url = this.baseUrl + "/uui-lcm/customers/service-subscriptions";
this.http.get<any>(url, httpOptions).subscribe((data) => {
this.serviceSubscriptionList = data.subscriptions;
}, (err) => {
console.log(err);
});
}
//Get subscription instanceID by calling With Subscription Type
getServiceInstanceList(subscriptionType) {
let httpOptions = {
headers: new HttpHeaders({
'Content-Type': 'application/json'
})
};
this.serviceInstanceList = [];
this.selectedServiceInstance="";
let url = this.baseUrl + "/uui-lcm/Sotnservices/ServiceInstances/"+subscriptionType;
this.http.get<any>(url,httpOptions).subscribe((data) => {
this.serviceInstanceList = data.serviceInstanceList;
}, (err) => {
console.log(err);
});
}
deleteSelectedService() {
let url = this.baseUrl + "/uui-lcm/Sotnservices/servicesubscription/"+this.selectedSubscriptionType+'/serviceinstance/'+this.selectedServiceInstance;
let httpOptions = {
headers: new HttpHeaders({
'Content-Type': 'application/json'
})
};
this.http.delete<any>(url,httpOptions).subscribe((data) => {
this.serviceInstanceList = [];
this.selectedServiceInstance = "";
this.getServiceInstanceList(this.selectedSubscriptionType);
}, (err) => {
console.log(err);
});
}
getSubscribedSites() {
console.log("on change");
let httpOptions = {
headers: new HttpHeaders({
'Content-Type': 'application/json'
})
};
if (this.selectedServiceInstance) {
let url = this.baseUrl + "/uui-lcm/Sotnservices/servicesubscription/"+this.selectedSubscriptionType+'/serviceinstance/'+this.selectedServiceInstance;
this.http.get<any>(url, httpOptions).subscribe((data) => {
this.assignData(data, false);
}, (err) => {
console.log(err);
});
}
else {
const httpOptions = {
headers: new HttpHeaders({
'Content-Type': 'application/json',
})
};
let body = JSON.stringify({}); //this.orderServiceData
let url = this.baseUrl + "/uui-lcm/Sotnservices/cost";
return this.http.post<any>(url,body,httpOptions).subscribe((data) => {
this.assignData(data, true);
}, (err) => {
console.log(err);
});
}
}
assignData(data,isCost) {
this.summaryInfo = data.service;
this.mapped = JSON.parse(JSON.stringify(this.summaryInfo));
delete this.mapped.vpninformations;
delete this.mapped.vpnInformations;
this.myKeys = Object.keys(this.mapped);
this.vpnInfo = this.summaryInfo["parameters"]["requestInputs"]["sotnUnderlay"][0].l2vpn[0];
this.uniInfo = this.summaryInfo["parameters"]["requestInputs"]["sotnUnderlay"][0].sotnUni;
}
}
|