Async MSO error visibility: let open "retry" from Audit-info
[vid.git] / vid-webpack-master / src / app / shared / components / auditInfoModal / auditInfoModal.component.ts
index cf385d7..3a7f4ec 100644 (file)
@@ -10,6 +10,7 @@ import {IframeService} from "../../utils/iframe.service";
 import {NgRedux} from "@angular-redux/store";
 import {AppState} from "../../store/reducers";
 import {AuditInfoModalComponentService} from "./auditInfoModal.component.service";
+import {FeatureFlagsService, Features} from "../../services/featureFlag/feature-flags.service";
 
 @Component({
   selector: 'audit-info-modal',
@@ -18,12 +19,14 @@ import {AuditInfoModalComponentService} from "./auditInfoModal.component.service
 })
 export class AuditInfoModalComponent {
   static openModal: Subject<ServiceInfoModel> = new Subject<ServiceInfoModel>();
-  static openInstanceAuditInfoModal: Subject<{instanceId , type, model, instance, isInstanceFailed?, trackById?}> = new Subject<{instanceId , type, model, instance, isInstanceFailed, trackById}>();
-  @ViewChild('auditInfoModal') public auditInfoModal: ModalDirective;
+  static openInstanceAuditInfoModal: Subject<{instanceId , type, model, instance}> = new Subject<{instanceId , type, model, instance}>();
+  @ViewChild('auditInfoModal', {static: false}) public auditInfoModal: ModalDirective;
   title: string = 'Service Instantiation Information';
   modelInfoItems: ModelInformationItem[] = [];
   serviceModel: ServiceModel;
   serviceModelName: string;
+  serviceModelId: string;
+  jobId: string;
   vidInfoData: AuditStatus[] = [];
   msoInfoData: AuditStatus[] = [];
   isAlaCarte: boolean;
@@ -32,15 +35,18 @@ export class AuditInfoModalComponent {
   model: any;
   instanceId: string;
   isALaCarteFlagOn: boolean;
+  showMoreAuditInfoLink: boolean;
   type : string = "Service";
   showVidStatus : boolean = true;
   auditInfoModalComponentService : AuditInfoModalComponentService;
   constructor(private _serviceInfoService: ServiceInfoService, private _iframeService : IframeService,
               private _auditInfoModalComponentService : AuditInfoModalComponentService,
+              private _featureFlagsService: FeatureFlagsService,
               private store: NgRedux<AppState>) {
     this.auditInfoModalComponentService = this._auditInfoModalComponentService;
     AuditInfoModalComponent.openModal.subscribe((jobData: ServiceInfoModel) => {
       this.isALaCarteFlagOn = this.store.getState().global.flags['FLAG_A_LA_CARTE_AUDIT_INFO'];
+      this.showMoreAuditInfoLink = _featureFlagsService.getFlagState(Features.FLAG_MORE_AUDIT_INFO_LINK_ON_AUDIT_INFO);
       this.initializeProperties();
       this.showVidStatus = true;
       if (jobData) {
@@ -48,6 +54,8 @@ export class AuditInfoModalComponent {
         this.openAuditInfoModal(jobData);
         _iframeService.addClassOpenModal(this.parentElementClassName);
         this.serviceModelName = jobData.serviceModelName ? jobData.serviceModelName : '';
+        this.serviceModelId = jobData.serviceModelId;
+        this.jobId = jobData.jobId;
         this.auditInfoModal.show();
       } else {
         _iframeService.removeClassCloseModal(this.parentElementClassName);
@@ -55,14 +63,15 @@ export class AuditInfoModalComponent {
       }
     });
 
-    AuditInfoModalComponent.openInstanceAuditInfoModal.subscribe(({instanceId  , type ,  model, instance, isInstanceFailed, trackById}) => {
+    AuditInfoModalComponent.openInstanceAuditInfoModal.subscribe(({instanceId  , type ,  model, instance}) => {
       this.showVidStatus = false;
+      this.showMoreAuditInfoLink = false;
       this.initializeProperties();
       this.setModalTitles(type);
       this.serviceModelName = AuditInfoModalComponentService.getInstanceModelName(model);
 
-      if (isInstanceFailed) {
-        this._serviceInfoService.getAuditStatusForRetry(trackById).subscribe((res: AuditStatus) => {
+      if (instance.isFailed) {
+        this._serviceInfoService.getAuditStatusForRetry(instance.trackById).subscribe((res: AuditStatus) => {
           this.msoInfoData = [res];
         });
       }else{
@@ -116,7 +125,10 @@ export class AuditInfoModalComponent {
 
 
   onNavigate(){
-    window.open("https://wiki.onap.org/display/DW/SO+Building+blocks", "_blank");
+    window.open("http://ecompguide.web.att.com:8000/#ecomp_ug/c_ecomp_ops_vid.htmll#r_ecomp_ops_vid_bbglossary", "_blank");
   }
+
+  readOnlyRetryUrl = (): string =>
+    `../../serviceModels.htm?more#/servicePlanning/RETRY?serviceModelId=${this.serviceModelId}&jobId=${this.jobId}`
 }