X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=webapp-frontend%2Fsrc%2Fapp%2Fpolicy-control%2Fpolicy-instance-dialog.component.ts;h=72a2041af9356724f4b932836fec72156c1d4aa4;hb=a3e0f85eff3e8203612c547045e11f8d83639df1;hp=47c95b9c7e7f7373981dec76dc90091db6dbfa23;hpb=b78d2c9ac49341c5354c4e591ee72da320a30481;p=portal%2Fnonrtric-controlpanel.git diff --git a/webapp-frontend/src/app/policy-control/policy-instance-dialog.component.ts b/webapp-frontend/src/app/policy-control/policy-instance-dialog.component.ts index 47c95b9..72a2041 100644 --- a/webapp-frontend/src/app/policy-control/policy-instance-dialog.component.ts +++ b/webapp-frontend/src/app/policy-control/policy-instance-dialog.component.ts @@ -23,7 +23,7 @@ import { MatDialogConfig, MatDialogRef, MAT_DIALOG_DATA } from '@angular/materia import { MatMenuTrigger } from '@angular/material/menu'; import { JsonPointer } from 'angular6-json-schema-form'; import * as uuid from 'uuid'; -import { PolicyInstance, PolicyTypeSchema } from '../interfaces/policy.types'; +import { CreatePolicyInstance, PolicyInstance, PolicyTypeSchema } from '../interfaces/policy.types'; import { PolicyService } from '../services/policy/policy.service'; import { ErrorDialogService } from '../services/ui/error-dialog.service'; import { NotificationService } from './../services/ui/notification.service'; @@ -31,6 +31,7 @@ import { UiService } from '../services/ui/ui.service'; import { HttpErrorResponse } from '@angular/common/http'; import { FormGroup, FormControl, Validators } from '@angular/forms'; import { ChangeDetectorRef } from '@angular/core'; +import { Ric } from '../interfaces/ric'; @Component({ @@ -85,14 +86,14 @@ export class PolicyInstanceDialogComponent implements OnInit, AfterViewInit { policyTypeName: string; darkMode: boolean; ric: string; - allRics: string[]; + allRics: Ric[]; private fetchRics() { console.log('fetchRics ' + this.policyTypeName); const self: PolicyInstanceDialogComponent = this; this.dataService.getRics(this.policyTypeName).subscribe( { - next(value) { + next(value: Ric[]) { self.allRics = value; console.log(value); }, @@ -147,7 +148,8 @@ export class PolicyInstanceDialogComponent implements OnInit, AfterViewInit { } const policyJson: string = this.prettyLiveFormData; const self: PolicyInstanceDialogComponent = this; - this.dataService.putPolicy(this.policyTypeName, this.policyInstanceId, policyJson, this.ric).subscribe( + let createPolicyInstance = this.createPolicyInstance(policyJson); + this.dataService.putPolicy(createPolicyInstance).subscribe( { next(_) { self.notificationService.success('Policy ' + self.policyTypeName + ':' + self.policyInstanceId + @@ -160,6 +162,16 @@ export class PolicyInstanceDialogComponent implements OnInit, AfterViewInit { }); } + private createPolicyInstance(policyJson: string) { + let createPolicyInstance = {} as CreatePolicyInstance; + createPolicyInstance.policy_data = JSON.parse(policyJson); + createPolicyInstance.policy_id = this.policyInstanceId; + createPolicyInstance.policytype_id = this.policyTypeName; + createPolicyInstance.ric_id = (!this.ricSelector.value.ric_id) ? this.ric : this.ricSelector.value.ric_id; + createPolicyInstance.service_id = 'controlpanel'; + return createPolicyInstance; + } + onClose() { this.dialogRef.close(); }