deleteIntentInstance: this.baseUrl + "/intent/deleteIntentInstance",
activeIntentInstance: this.baseUrl + "/intent/activeIntentInstance",
invalidIntentInstance: this.baseUrl + "/intent/invalidIntentInstance",
+ updateIntentInstance: this.baseUrl + "/intent/updateCCVPNInstance",
queryAccessNodeInfo: this.baseUrl + "/intent/queryAccessNodeInfo",
intentInstancePredict: this.baseUrl + "/intent/predict",
intentBasedUnifyPredict: this.baseUrl + "/intent/unifyPredict",
return this.http.post<any>(this.url["invalidIntentInstance"], requestBody);
}
+ updateIntentInstance(requestBody) {
+ return this.http.post<any>(this.url["updateIntentInstance"], requestBody);
+ }
+
queryAccessNodeInfo() {
return this.http.get<any>(this.url["queryAccessNodeInfo"]);
}
nz-tooltip
[id]="item.key"
[name]="item.key"
+ [disabled]="isUpdateFlag"
*ngIf="item.type === 'input'"
[(ngModel)]="cloud_leased_line_info[item.key]"
[placeholder]="item.placeholder ? item.placeholder : ''"
</nz-tooltip>
<nz-select
[name]="item.key"
+ [disabled]="isUpdateFlag"
[(ngModel)]="cloud_leased_line_info[item.key]"
*ngIf="item.type === 'select'"
>
<span>{{item.nodeName}}:</span>
<nz-select
[name]="item.nodeName"
+ [disabled]="isUpdateFlag"
[(ngModel)]="cloud_leased_line_info[item.key].name"
>
<nz-option
</div>
<nz-radio-group
[name]="item.key"
+ [disabled]="isUpdateFlag"
[(ngModel)]="cloud_leased_line_info[item.key]"
*ngIf="item.type === 'radio'"
>
@Input() cloudLeasedLineShowFlag: boolean;
@Output() cancelEmitter = new EventEmitter<boolean>();
comunicationFormItems = COMMUNICATION_FORM_ITEMS;
- isLoadingOne = false;
+ isUpdateFlag: boolean = false;
nodeLists: any[] = [];
cloudPointOptions: any[] = [];
cloud_leased_line_info = {
ngOnChanges() {
if (this.cloudLeasedLineShowFlag) {
if (this.modelParams) {
+ this.isUpdateFlag = this.modelParams.isUpdateFlag;
this.cloud_leased_line_info = { ...this.modelParams };
} else {
this.getInstanceId();
}
}
+ if (this.isUpdateFlag) {
+ this.updateIntentInstance();
+ return;
+ }
+ this.createIntentInstance();
+ }
+
+ updateIntentInstance(): void {
+ const { accessPointOne: { bandwidth } } = this.cloud_leased_line_info;
+ this.myHttp.updateIntentInstance({
+ instanceId: this.modelParams.instanceId,
+ bandwidth
+ }).subscribe(
+ (response) => {
+ const { code, message } = response;
+ if (code !== 200) {
+ this.nzMessage.error(message);
+ return;
+ }
+ this.nzMessage.success('Update IntentInstance Success!');
+ this.cancel();
+ },
+ (err) => {
+ console.log(err);
+ }
+ )
+ }
+
+ createIntentInstance(): void {
this.myHttp.createIntentInstance({
...this.cloud_leased_line_info
}).subscribe(
cancel(): void {
this.cloudLeasedLineShowFlag = false
+ this.isUpdateFlag = false
this.cloud_leased_line_info = {
name: '',
instanceId: '',
>
Inactive
</button>
+ <button
+ nz-button
+ nzType="primary"
+ class="buy-button"
+ (click)="modifyCloudLeasedLine(data)"
+ >
+ Modify
+ </button>
<button
nz-button
nzType="primary"
this.cloudLeasedLineShowFlag = false;
this.pageIndex = 1;
this.pageSize = 10;
+ this.resolveResult = null;
this.getCloudLeasedLineList();
}
// smart dialog show
});
}
+ modifyCloudLeasedLine(row): void {
+ this.resolveResult = {
+ name: row.name,
+ instanceId: row.instanceId,
+ protect: row.protectStatus ? true : false,
+ accessPointOne: {
+ name: row.accessPointOneName,
+ bandwidth: row.accessPointOneBandWidth
+ },
+ cloudPointName: row.cloudPointName,
+ isUpdateFlag: true
+ };
+ this.cloudLeasedLineShowFlag = true;
+ }
+
deleteCloudLeasedLine(row): void {
this.myHttp.deleteIntentInstance(row.instanceId).subscribe((data) => {
const { code, message } = data;