{"version":3,"file":"james_jayaraj-test-npm.mjs","sources":["../../../projects/hola-rx/src/lib/hola-rx.service.ts","../../../projects/hola-rx/src/lib/environments/config.ts","../../../projects/hola-rx/src/lib/environments/environment.ts","../../../projects/hola-rx/src/lib/services/api.service.ts","../../../projects/hola-rx/src/lib/splashscreen/splashscreen.component.ts","../../../projects/hola-rx/src/lib/splashscreen/splashscreen.component.html","../../../projects/hola-rx/src/lib/referral-rx/referral-rx.component.ts","../../../projects/hola-rx/src/lib/referral-rx/referral-rx.component.html","../../../projects/hola-rx/src/lib/brand-include/brand-include.component.ts","../../../projects/hola-rx/src/lib/brand-include/brand-include.component.html","../../../projects/hola-rx/src/lib/brand-include/available-formulations/available-formulations.component.ts","../../../projects/hola-rx/src/lib/brand-include/available-formulations/available-formulations.component.html","../../../projects/hola-rx/src/lib/is-authority/is-authority.component.ts","../../../projects/hola-rx/src/lib/is-authority/is-authority.component.html","../../../projects/hola-rx/src/lib/real-time-prescription-monitoring/real-time-prescription-monitoring.component.ts","../../../projects/hola-rx/src/lib/real-time-prescription-monitoring/real-time-prescription-monitoring.component.html","../../../projects/hola-rx/src/lib/confirm-patient-contact-details/confirm-patient-contact-details.component.ts","../../../projects/hola-rx/src/lib/confirm-patient-contact-details/confirm-patient-contact-details.component.html","../../../projects/hola-rx/src/lib/password/password.component.ts","../../../projects/hola-rx/src/lib/password/password.component.html","../../../projects/hola-rx/src/lib/cease-popup/cease-popup.component.ts","../../../projects/hola-rx/src/lib/cease-popup/cease-popup.component.html","../../../projects/hola-rx/src/lib/reissue-popup/reissue-popup.component.ts","../../../projects/hola-rx/src/lib/reissue-popup/reissue-popup.component.html","../../../projects/hola-rx/src/lib/close-popup/close-popup.component.ts","../../../projects/hola-rx/src/lib/close-popup/close-popup.component.html","../../../projects/hola-rx/src/lib/rx/rx.component.ts","../../../projects/hola-rx/src/lib/rx/rx.component.html","../../../projects/hola-rx/src/lib/services/common.ts","../../../projects/hola-rx/src/lib/hola-rx.component.ts","../../../projects/hola-rx/src/lib/hola-rx.component.html","../../../projects/hola-rx/src/lib/alert-popup/alert-popup.component.ts","../../../projects/hola-rx/src/lib/alert-popup/alert-popup.component.html","../../../projects/hola-rx/src/lib/hola-rx.module.ts","../../../projects/hola-rx/src/public-api.ts","../../../projects/hola-rx/src/james_jayaraj-test-npm.ts"],"sourcesContent":["import { Injectable} from '@angular/core';\r\n\r\n@Injectable({\r\n  providedIn: 'root'\r\n})\r\nexport class HolaRxService {\r\n\r\n  constructor() { }\r\n\r\n}\r\n","export const config = {\r\n  STAGING_URL: \"https://sydcapi.hlhlth.com.au/packapill\",\r\n  LIVE_URL: \"https://sydcapi.hlhlth.com.au/packapill\",\r\n  GET_MEDS_BY_SEARCH: \"api/rxwidget/searchMedicines\",\r\n  GET_MEDS_BY_SMART_SEARCH: \"api/rxwidget/smartSearchMedicines\",\r\n  GET_MEDS_BY_NAME: \"api/rxwidget/searchMedicinesByName\",\r\n  CREATE_CONSULTATION: \"api/rxwidget/createConsultation\",\r\n  CREATE_LOG_EXCEPTION: \"api/audit/saveExceptions\",\r\n  AUDIT_LOG: \"api/audit/saveAudit\",\r\n  PHYSICIAN: {\r\n    GET_ALTERNATE_NAME_VALUE: 'api/rxwidget/searchMedicinesByAlternateName',\r\n    GET_INSTRUCTION_VALUE: 'api/rxwidget/instructions',\r\n    ADD_INSTRUCTION_VALUE: 'api/rxwidget/add/instructions',\r\n    UPDATE_INSTRUCTION_VALUE: 'api/rxwidget/update/instruction?userId=',\r\n    DELETE_INSTRUCTION_VALUE: 'api/rxwidget/delete/instructions?userId=',\r\n    RE_AUTHENTICATION: \"api/rxwidget/reAuthentication\",\r\n    PRESCRIBE: \"api/rxwidget/prescribe\",\r\n    M_PRESCRIBE: \"api/rxwidget/save/prescriptions/history\",\r\n    PATHOLOGY_SEND_REFERRAL: \"api/rxwidget/send/referral?vendorPatientId=\",\r\n    GET_ALLMIMSVALUE: 'api/rxwidget/getAllMimsConfigs?userId=',\r\n    GET_MED_DET_BY_ID: \"api/rxwidget/getProductDetailsByIdWithRxId\",\r\n    RX_CANCEL: \"api/rxwidget/cancel?rxId=\",\r\n    RX_RE_ISSUE: \"api/rxwidget/reissue?rxId=\",\r\n    RX_CEASE: \"api/rxwidget/cease?rxId=\",\r\n    RX_PRINT: \"api/rxwidget/downloadPrescriptionFile?rxid=\",\r\n    REFERRAL_PRINT: \"api/rxwidget/downloadReferralFile?referralId=\",\r\n    RX_CANCEL_DRAFT: \"api/rxwidget/delete/prescription?rxId=\",\r\n    RX_PRESCRIBE_ABORT: \"api/rxwidget/abort\",\r\n    GET_RESTRICTED_MEDICINE:\"api/rxwidget/getRestrictedMedicines\",\r\n    ADD_FAVOURITE_MEDICINE: \"api/rxwidget/addtofavorites\",\r\n    GET_FAVOURITE_MEDICINE_LIST: \"api/rxwidget/getfavoriteslist\",\r\n  }\r\n};\r\n\r\nexport const errorconfig = {\r\n\r\n  error_1: {\r\n    code: \"HRX001\", message: \"Unable to validate this client. Please contact support.\"\r\n  },\r\n  error_2: {\r\n    code: \"HRX002\", message: \"Invalid consultation ID\"\r\n  },\r\n  error_3: {\r\n    code: \"HRX003\", message: \"Invalid practice\"\r\n  },\r\n  error_4: {\r\n    code: \"HRX004\", message: \"Invalid practice ID\"\r\n  },\r\n  error_5: {\r\n    code: \"HRX005\", message: \"Invalid practice name\"\r\n  },\r\n  error_6: {\r\n    code: \"HRX006\", message: \"Invalid practice email\"\r\n  },\r\n  error_7: {\r\n    code: \"HRX007\", message: \"Invalid practice phone\"\r\n  },\r\n  error_8: {\r\n    code: \"HRX008\", message: \"Invalid practice street number\"\r\n  },\r\n  error_9: {\r\n    code: \"HRX009\", message: \"Invalid practice street\"\r\n  },\r\n  error_10: {\r\n    code: \"HRX010\", message: \"Invalid practice suburb\"\r\n  },\r\n  error_11: {\r\n    code: \"HRX011\", message: \"Invalid practice postcode\"\r\n  },\r\n  error_12: {\r\n    code: \"HRX012\", message: \"Invalid practice state\"\r\n  },\r\n  error_13: {\r\n    code: \"HRX013\", message: \"Invalid practitioner\"\r\n  },\r\n  error_14: {\r\n    code: \"HRX014\", message: \"Invalid practitioner ID\"\r\n  },\r\n  error_15: {\r\n    code: \"HRX015\", message: \"Invalid practitioner first name\"\r\n  },\r\n  error_16: {\r\n    code: \"HRX016\", message: \"Invalid practitioner last name\"\r\n  },\r\n  error_17: {\r\n    code: \"HRX017\", message: \"Invalid practitioner gender\"\r\n  },\r\n  error_18: {\r\n    code: \"HRX018\", message: \"Invalid practitioner dob\"\r\n  },\r\n  error_19: {\r\n    code: \"HRX019\", message: \"Invalid practitioner email\"\r\n  },\r\n  error_20: {\r\n    code: \"HRX020\", message: \"Invalid practitioner mobile phone\"\r\n  },\r\n  error_21: {\r\n    code: \"HRX021\", message: \"Invalid practitioner street number\"\r\n  },\r\n  error_22: {\r\n    code: \"HRX022\", message: \"Invalid practitioner street\"\r\n  },\r\n  error_23: {\r\n    code: \"HRX023\", message: \"Invalid practitioner suburb\"\r\n  },\r\n  error_24: {\r\n    code: \"HRX024\", message: \"Invalid practitioner postcode\"\r\n  },\r\n  error_25: {\r\n    code: \"HRX025\", message: \"Invalid practitioner state\"\r\n  },\r\n  error_27: {\r\n    code: \"HRX027\", message: \"Invalid practitioner provider number\"\r\n  },\r\n  error_28: {\r\n    code: \"HRX028\", message: \"Invalid practitioner signature image\"\r\n  },\r\n  error_29: {\r\n    code: \"HRX029\", message: \"Invalid patient\"\r\n  },\r\n  error_30: {\r\n    code: \"HRX030\", message: \"Invalid patient ID\"\r\n  },\r\n  error_31: {\r\n    code: \"HRX031\", message: \"Invalid patient first name\"\r\n  },\r\n  error_32: {\r\n    code: \"HRX032\", message: \"Invalid patient last name\"\r\n  },\r\n  error_33: {\r\n    code: \"HRX033\", message: \"Invalid patient gender\"\r\n  },\r\n  error_34: {\r\n    code: \"HRX034\", message: \"Invalid patient dob\"\r\n  },\r\n  error_35: {\r\n    code: \"HRX035\", message: \"Invalid patient email\"\r\n  },\r\n  error_36: {\r\n    code: \"HRX036\", message: \"Invalid patient mobile phone\"\r\n  },\r\n  error_37: {\r\n    code: \"HRX037\", message: \"Invalid patient timezone\"\r\n  },\r\n  error_38: {\r\n    code: \"HRX038\", message: \"Invalid patient street number\"\r\n  },\r\n  error_39: {\r\n    code: \"HRX039\", message: \"Invalid patient street\"\r\n  },\r\n  error_40: {\r\n    code: \"HRX040\", message: \"Invalid patient suburb\"\r\n  },\r\n  error_41: {\r\n    code: \"HRX041\", message: \"Invalid patient postcode\"\r\n  },\r\n  error_42: {\r\n    code: \"HRX042\", message: \"Invalid patient state\"\r\n  },\r\n  error_43: {\r\n    code: \"HRX043\", message: \"Invalid referral ID\"\r\n  },\r\n  error_44: {\r\n    code: \"HRX044\", message: \"Please enter test to be conducted\"\r\n  },\r\n  error_45: {\r\n    code: \"HRX045\", message: \"Please enter clinical notes\"\r\n  },\r\n  error_46: {\r\n    code: \"HRX046\", message: \"Invalid Rx ID\"\r\n  },\r\n  error_47: {\r\n    code: \"HRX047\", message: \"Please enter script date\"\r\n  },\r\n  error_48: {\r\n    code: \"HRX048\", message: \"Please enter start date\"\r\n  },\r\n  error_49: {\r\n    code: \"HRX049\", message: \"Please enter end date\"\r\n  },\r\n  error_50: {\r\n    code: \"HRX050\", message: \"Please search and select formulation for next step\"\r\n  },\r\n  error_51: {\r\n    code: \"HRX051\", message: \"Please enter the complex instruction description\"\r\n  },\r\n  error_52: {\r\n    code: \"HRX052\", message: \"Please enter the complex instruction\"\r\n  },\r\n  error_53: {\r\n    code: \"HRX053\", message: \"Please enter the approval number\"\r\n  },\r\n  error_54: {\r\n    code: \"HRX054\", message: \"Please select dose\"\r\n  },\r\n  error_55: {\r\n    code: \"HRX055\", message: \"Please add quantity\"\r\n  },\r\n  error_56: {\r\n    code: \"HRX056\", message: \"You have selected an S8 medicine in $0. Please enter the days between repeats\"\r\n  },\r\n  error_57: {\r\n    code: \"HRX057\", message: \"Please enter phone number\"\r\n  },\r\n  error_58: {\r\n    code: \"HRX058\", message: \"Invalid phone number\"\r\n  },\r\n  error_59: {\r\n    code: \"HRX059\", message: \"Please enter email\"\r\n  },\r\n  error_60: {\r\n    code: \"HRX060\", message: \"Please enter valid email address\"\r\n  },\r\n  error_61: {\r\n    code: \"HRX061\", message: \"Invalid password\"\r\n  },\r\n  error_64: {\r\n    code: \"HRX064\", message: \"Something went wrong. Please try again.\"\r\n  },\r\n  error_65: {\r\n    code: \"HRX065\", message: \"Connection with main module failed - \"\r\n  },\r\n  error_66: {\r\n    code: \"HRX066\", message: \"Please select a value for 'Send to Pharmacy' field\"\r\n  },\r\n  error_67: {\r\n    code: \"HRX067\", message: \"Invalid patient addressline1\"\r\n  },\r\n  error_68: {\r\n    code: \"HRX068\", message: \"You have selected an S4D medicine in TAS. Please enter the days between repeats\"\r\n  },\r\n  error_69: {\r\n    code: \"HRX069\", message: \"You have selected an S4B medicine in NSW. Please enter the days between repeats\"\r\n  },\r\n  error_71: {\r\n    code: \"HRX071\", message: \"Invalid practice addressline1\"\r\n  },\r\n  error_72: {\r\n    code: \"HRX072\", message: \"Invalid practitioner addressline1\"\r\n  },\r\n  error_74: {\r\n    code: \"HRX074\", message: \"Please enter dispensing pharmacy name\"\r\n  },\r\n  error_75: {\r\n    code: \"HRX075\", message: \"Please enter or select Route\"\r\n  },\r\n};\r\n","\r\nexport const environment = {\r\n  production: true,\r\n  apiEndpoint: 'https://ica.hlhlth.app/packapill'\r\n};\r\n\r\n","import { HttpClient, HttpErrorResponse, HttpHeaders } from \"@angular/common/http\";\r\nimport { Injectable } from \"@angular/core\";\r\nimport { environment } from \"../environments/environment\";\r\nimport { CommonServices } from \"./common\";\r\nimport { Observable, catchError, empty, of, throwError } from \"rxjs\";\r\n\r\n@Injectable(\r\n  {\r\n    providedIn: 'root'\r\n  }\r\n)\r\nexport class ApiService {\r\n  unAuthorizedFlag = false;\r\n  constructor(public http: HttpClient, private commonServices: CommonServices) { }\r\n\r\n  public Post(data: any, url: any) {\r\n    try {\r\n      var value = this.interceptorassign(url);\r\n      if (value != null && value.header != undefined && value.header != null) {\r\n        return this.http.post<any>(value.url, data, { headers: value.header }).pipe(catchError((err) => this.handleError(err)));\r\n      }\r\n      else {\r\n        return this.http.post<any>(value.url, data).pipe(catchError((err) => this.handleError(err)));\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"ApiService\", \"Post\");\r\n      return throwError(() => new Error(ex));\r\n    }\r\n  }\r\n  public Get(url: any) {\r\n    try {\r\n      var value = this.interceptorassign(url);\r\n      if (value != null && value.header != undefined && value.header != null) {\r\n        return this.http.get<any>(value.url, { headers: value.header }).pipe(catchError((err) => this.handleError(err)));\r\n      }\r\n      else {\r\n        return this.http.get<any>(value.url).pipe(catchError((err) => this.handleError(err)));\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"ApiService\", \"Get\");\r\n      return throwError(() => new Error(ex));\r\n    }\r\n  }\r\n  public PutNew(data: any, url: any) {\r\n    try {\r\n      var value = this.interceptorassign(url);\r\n      if (value != null && value.header != undefined && value.header != null) {\r\n        return this.http.put<any>(value.url, data, { headers: value.header }).pipe(catchError((err) => this.handleError(err)));\r\n      }\r\n      else {\r\n        return this.http.put<any>(value.url, data).pipe(catchError((err) => this.handleError(err)));\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"ApiService\", \"PutNew\");\r\n      return throwError(() => new Error(ex));\r\n    }\r\n  }\r\n\r\n  private interceptorassign(url: any) {\r\n    try {\r\n      if (url.endsWith(\"authenticate\") || url.endsWith(\"saveExceptions\") || url.endsWith(\"saveAudit\")) {\r\n        return { url: environment.apiEndpoint + \"/\" + url };\r\n      }\r\n      else {\r\n        var header: any = {\r\n          'Authorization': `bearer ${this.commonServices.HolaRxToken}`,\r\n        }\r\n        return { header: header, url: environment.apiEndpoint + \"/\" + url }\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"ApiService\", \"interceptorassign\");\r\n      return { url: \"\" };\r\n    }\r\n  }\r\n\r\n  private handleError(error: HttpErrorResponse): Observable<any> {\r\n    try {\r\n      if (error.status === 401) {\r\n        if (error.statusText.toLowerCase() == \"unauthorized\".toLowerCase()) {\r\n          this.unAuthorizedFlag = true;\r\n          return of(null);\r\n        }\r\n        return throwError(() => new Error(error.statusText));\r\n      }\r\n      else if (error.status === 404) {\r\n        return throwError(() => new Error('Not Found'));\r\n      }\r\n      else if (error.error && error.error.message) {\r\n        return throwError(() => new Error(error.error.message));\r\n      }\r\n      else if (error.error && error.error.error_description) {\r\n        return throwError(() => new Error(error.error.error_description));\r\n      } else {\r\n        return throwError(() => new Error('Error occurred'));\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"ApiService\", \"handleError\");\r\n      return throwError(() => new Error(ex));\r\n    }\r\n  }\r\n\r\n\r\n}\r\n","import { Component, Input, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n  selector: 'app-splashscreen',\r\n  templateUrl: './splashscreen.component.html',\r\n  styleUrls: ['./splashscreen.component.css']\r\n})\r\nexport class SplashscreenComponent implements OnInit {\r\n\r\n  @Input() public height!: string;\r\n  constructor() { }\r\n\r\n  ngOnInit(): void {\r\n  }\r\n\r\n}\r\n","<div style=\"background-color: white;border-radius: 10px 10px 0px 0px;\" [class]=\"height\">\r\n  <div class=\"innerpopupspin\">\r\n    <div style=\"text-align: center;\"> <img class=\"spinner-img\"\r\n        src=\"https://passets.hola.health/rx-widgets/rx-hola-health-spinner-1.png\" alt=\"hola_health\">\r\n    </div>\r\n    <div>Loading...</div>\r\n  </div>\r\n</div>\r\n","import { Component, ElementRef, EventEmitter, Inject, OnInit, Output, TemplateRef, ViewChild, ChangeDetectorRef } from '@angular/core';\r\nimport { ApiService } from '../services/api.service';\r\nimport { config, errorconfig } from '../environments/config';\r\nimport { CommonServices } from '../services/common';\r\n\r\n@Component({\r\n  selector: 'lib-referral-rx',\r\n  templateUrl: './referral-rx.component.html',\r\n  styleUrls: ['./referral-rx.component.scss']\r\n})\r\nexport class ReferralRxComponent implements OnInit {\r\n  testsToBeConducted: string = \"\";\r\n  clinicalNotes: string = \"\";\r\n  PopupScreenLoader = false;\r\n  clientId = \"\";\r\n  @Output() closeEvent = new EventEmitter();\r\n  @Output() submitEvent = new EventEmitter();\r\n  @ViewChild('rxwidgets', { static: true }) content!: TemplateRef<any>;\r\n  constructor(private elementRef: ElementRef, private apiService: ApiService, public commonServices: CommonServices, public cdRef: ChangeDetectorRef) { }\r\n\r\n  ngOnInit(): void {\r\n    try {\r\n      this.commonServices.closeErrorResponse = null;\r\n      this.commonServices.prescribeMedLoader = false; this.cdRef.detectChanges();\r\n      document.documentElement.style.setProperty('--pop_wid', `55%`);\r\n      document.documentElement.style.setProperty('--popupw', `800px`);\r\n      document.documentElement.style.setProperty('--headerpadding', `8px`);\r\n      document.documentElement.style.setProperty('--popuph', `350px`);\r\n      document.documentElement.style.setProperty('--headerfontweight', `700`);\r\n      this.clientId = this.commonServices.getCredetial();\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"ReferralRxComponent\", \"ngOnInit\");\r\n    }\r\n  }\r\n\r\n  close(data: any) {\r\n    try {\r\n      this.elementRef.nativeElement.remove();\r\n      var value = data != null ? data : this.commonServices.closeErrorResponse != null || this.commonServices.closeErrorResponse != undefined ? this.commonServices.closeErrorResponse : null;\r\n      this.commonServices.closeErrorResponse = null;\r\n      this.commonServices.removeErrToast();\r\n      console.log(value);\r\n      this.closeEvent.emit(value);\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"ReferralRxComponent\", \"close\");\r\n    }\r\n  }\r\n\r\n  Submit() {\r\n    var payload = {};\r\n    try {\r\n      this.cdRef.detectChanges();\r\n      this.testsToBeConducted = String(this.testsToBeConducted).trim();\r\n      this.clinicalNotes = String(this.clinicalNotes).trim();\r\n      this.cdRef.detectChanges();\r\n      if (this.commonServices.IsNullOrEmpty(this.testsToBeConducted)) {\r\n        this.commonServices.toastopen(errorconfig.error_44.message, \"error\", errorconfig.error_44.code);\r\n        this.commonServices.errorResponse(errorconfig.error_44.code, errorconfig.error_44.message);\r\n        return;\r\n      }\r\n      if (this.commonServices.IsNullOrEmpty(this.clinicalNotes)) {\r\n        this.commonServices.toastopen(errorconfig.error_45.message, \"error\", errorconfig.error_45.code);\r\n        this.commonServices.errorResponse(errorconfig.error_45.code, errorconfig.error_45.message);\r\n        return;\r\n      }\r\n      this.commonServices.removeErrToast();\r\n      this.commonServices.prescribeMedLoader = true;\r\n      this.PopupScreenLoader = true;\r\n      this.cdRef.detectChanges();\r\n      payload = {\r\n        request_type: \"parameter\",\r\n        vendorPatientId: this.commonServices.vendorPatientId,\r\n        vendorPhysicianId: this.commonServices.vendorPhysicianId,\r\n        vendorFacilityId: this.commonServices.vendorFacilityId,\r\n        cNotes: String(this.clinicalNotes),\r\n        reason: String(this.testsToBeConducted),\r\n        type: \"Pathology\",\r\n        visitId: String(this.commonServices.visitId),\r\n        clientId: this.clientId\r\n      }\r\n      this.apiService.Get(config.PHYSICIAN.PATHOLOGY_SEND_REFERRAL + this.commonServices.vendorPatientId + \"&vendorPhysicianId=\" + this.commonServices.vendorPhysicianId + \"&vendorFacilityId=\" + this.commonServices.vendorFacilityId + \"&cNotes=\" + String(this.clinicalNotes) + \"&reason=\" + String(this.testsToBeConducted) + \"&type=Pathology&visitId=\" + String(this.commonServices.visitId) + \"&clientId=\" + this.clientId).subscribe((res: any) => {\r\n        try {\r\n          if (this.commonServices.IsNullOrEmpty(res)) {\r\n            this.PopupScreenLoader = false;\r\n            this.commonServices.prescribeMedLoader = false; this.cdRef.detectChanges();\r\n            this.commonServices.setlogvalue(false, \"\", \"\", \"ReferralRxComponent\", \"Submit\", payload);\r\n            this.commonServices.toastopen(errorconfig.error_64.message, 'error', errorconfig.error_64.code);\r\n            this.commonServices.errorResponse(errorconfig.error_64.code, errorconfig.error_64.message);\r\n            return;\r\n          }\r\n          if (res.response_code == 0) {\r\n            this.elementRef.nativeElement.remove();\r\n            this.PopupScreenLoader = false;\r\n            this.commonServices.prescribeMedLoader = false; this.cdRef.detectChanges();\r\n            this.commonServices.toastopen(res.response_message, \"success\");\r\n            this.commonServices.errorResponse(\"\", res.response_message, true, res.data);\r\n            this.close(res.data);\r\n          } else {\r\n            this.PopupScreenLoader = false;\r\n            this.commonServices.prescribeMedLoader = false; this.cdRef.detectChanges();\r\n            this.commonServices.setlogvalue(false, res.response_message, res.response_message, \"ReferralRxComponent\", \"Submit\", payload);\r\n            this.commonServices.toastopen(res.response_message, \"error\", res.error_code);\r\n            this.commonServices.errorResponse(res.error_code, res.response_message);\r\n          }\r\n        }\r\n        catch (ex: any) {\r\n          this.PopupScreenLoader = false;\r\n          this.cdRef.detectChanges();\r\n          this.commonServices.prescribeMedLoader = false; this.cdRef.detectChanges();\r\n          this.commonServices.setlogvalue(false, ex.message, ex.stack, \"ReferralRxComponent\", \"Submit\", payload);\r\n        }\r\n      }, error => {\r\n        this.PopupScreenLoader = false;\r\n        this.cdRef.detectChanges();\r\n        this.commonServices.prescribeMedLoader = false; this.cdRef.detectChanges();\r\n        this.commonServices.setlogvalue(false, error.message, error.stack, \"ReferralRxComponent\", \"Submit\", payload);\r\n        this.commonServices.toastopen(errorconfig.error_65.message + error, \"error\", errorconfig.error_65.code);\r\n        this.commonServices.errorResponse(errorconfig.error_65.code, errorconfig.error_65.message + error);\r\n      })\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"ReferralRxComponent\", \"Submit\", payload);\r\n    }\r\n  }\r\n}\r\n","<div class=\"overlay\">\r\n    <div class=\"popup_referal_pathology\">\r\n        <app-splashscreen *ngIf=\"PopupScreenLoader\" [height]=\"'height-referral-spin'\"> </app-splashscreen>\r\n        <div *ngIf=\"!PopupScreenLoader\" class=\"page-content\" id=\"qwer\">\r\n            <div class=\"new_rx_popup_header_box\">\r\n                <div class=\"mdl-grid pathology_header\">\r\n                    <div>\r\n                        <h3 class=\"new_rx_popup_header_box_text\">\r\n                            <img src=\"https://passets.hola.health/rx-widgets/rx-hola-health-logo-1.png\" alt=\"hola_health\" style=\"width: auto;height: 37px;border-radius: 5px;\">\r\n                            Pathology Referral Form\r\n                        </h3>\r\n                    </div>\r\n                    <div>\r\n                        <button (click)=\"close(null)\"\r\n                            class=\"mdl-button mdl-js-button mdl-button--raised mdl-button--colored backButton\"\r\n                            [disabled]=\"this.commonServices.prescribeMedLoader\">\r\n                            Close\r\n                        </button>\r\n                    </div>\r\n                </div>\r\n            </div>\r\n            <div class=\"new_rx_popup_tab_1\">\r\n                <div class=\"mdl-cell mdl-cell--12-col mdl-cell--8-col-tablet mdl-cell--4-col-phone\">\r\n                    <p class=\"font_f\"><span class=\"new_rx_popup_label\">Send to:\r\n                        </span>{{commonServices.patientDetails.email}}</p>\r\n                    <p class=\"new_rx_popup_label\">Tests to Be Conducted<span style=\"color: red !important;\">*</span></p>\r\n                    <textarea autocomplete=\"off\" [(ngModel)]=\"testsToBeConducted\" name=\"\" id=\"\" rows=\"4\" maxlength=\"500\"\r\n                        placeholder=\"Tests to Be Conducted (500 characters maximum)\"\r\n                        class=\"w-100 new_rx_popup_tab_textarea\"></textarea>\r\n                </div>\r\n                <div class=\"mdl-cell mdl-cell--12-col mdl-cell--8-col-tablet mdl-cell--4-col-phone\">\r\n                    <p class=\"new_rx_popup_label\">Clinical Notes<span style=\"color: red !important;\">*</span></p>\r\n                    <textarea autocomplete=\"off\" [(ngModel)]=\"clinicalNotes\" name=\"\" id=\"\" rows=\"3\" maxlength=\"500\"\r\n                        placeholder=\"Clinical Notes\" class=\"w-100 new_rx_popup_tab_textarea\"></textarea>\r\n                </div>\r\n                <div\r\n                    class=\"mdl-cell mdl-cell--12-col mdl-cell--12-col-tablet mdl-cell--12-col-phone new_rx_popup_header_box_col new_rx_popup_header_box_col_padding\">\r\n                    <!-- <button class=\"mdl-button mdl-js-button mdl-button--raised mdl-button--colored nextButton\" (click)=\"Submit()\">\r\n                        Send Referral\r\n                    </button> -->\r\n                    <button class=\"mdl-button mdl-js-button mdl-button--raised mdl-button--colored nextButton\"\r\n                        style=\"position: relative;padding: 0;\"\r\n                        [disabled]=\"this.commonServices.prescribeMedLoader\" (click)=\"Submit()\">\r\n                        <ng-container *ngIf=\"this.commonServices.prescribeMedLoader \">\r\n                            <p class=\"rx_loader_button m-v4\"\r\n                                style=\"position: absolute;margin: 0; top: 8px;left: 45%;width: 20px; height: 20px;\">\r\n                            </p>\r\n                        </ng-container>\r\n                        <ng-container *ngIf=\"!this.commonServices.prescribeMedLoader\">\r\n                            Send Referral\r\n                        </ng-container><i class=\"fa fa-angle-down\" style=\"margin-left: 5px; color: #fff\"></i>\r\n                    </button>\r\n                </div>\r\n            </div>\r\n        </div>\r\n        <div class=\"rx_footer\">\r\n            <p class=\"mt-15p\"><span class=\"rx_popup_footer_text\">© 2026 Hola Health, a brand of Packapill Pty Ltd | v 1.1.4 | <a href=\"https://hola.health/consult-terms\"\r\n                        target=\"_blank\">Terms</a> | <a href=\"https://hola.health/consult-privacy-policy\" target=\"_blank\">Privacy Policy</a> | <a href=\"mailto:support@hola.health\"\r\n                        target=\"_blank\">Help</a></span>\r\n            </p>\r\n        </div>\r\n    </div>\r\n</div>\r\n<ng-template #rxwidgets> </ng-template>\r\n","import { Component, ElementRef, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\nimport { CommonServices } from '../services/common';\r\n\r\n\r\n@Component({\r\n  selector: 'app-brand-include',\r\n  templateUrl: './brand-include.component.html',\r\n  styleUrls: ['./brand-include.component.css']\r\n})\r\nexport class BrandIncludeComponent implements OnInit {\r\n  @Output() closeEvent = new EventEmitter();\r\n  @Output() submitEvent = new EventEmitter();\r\n  constructor(private elementRef: ElementRef, private commonservice: CommonServices) {\r\n    document.documentElement.style.setProperty('--subpop_wid', `400px`);\r\n  }\r\n\r\n  ngOnInit(): void {\r\n  }\r\n\r\n  close(): void {\r\n    try {\r\n      this.elementRef.nativeElement.remove();\r\n      this.closeEvent.emit(false);\r\n    }\r\n    catch (ex: any) {\r\n      this.commonservice.setlogvalue(false,ex.message, ex.stack, \"BrandIncludeComponent\", \"close\");\r\n    }\r\n  }\r\n\r\n  submit() {\r\n    try {\r\n      this.elementRef.nativeElement.remove();\r\n      this.closeEvent.emit(true);\r\n    }\r\n    catch (ex: any) {\r\n      this.commonservice.setlogvalue(false,ex.message, ex.stack, \"BrandIncludeComponent\", \"submit\");\r\n    }\r\n  }\r\n\r\n}\r\n","\r\n\r\n<div class=\"ReactModal__Overlay ReactModal__Overlay--after-open open_popup\">\r\n    <div class=\"ReactModal__Content ReactModal__Content--after-open view_pop include_brand_box_popup\" tabindex=\"-1\" role=\"dialog\" aria-modal=\"true\">\r\n        <div>\r\n            <div class=\"new_rx_IncludeBrand_popup_text\">The selected product is on LMBC drugs list. Is the inclusion of the brand name on the prescription for this patient clinically necessary?</div>\r\n        </div>\r\n            <div class=\"mdl-cell mdl-cell--12-col mdl-cell--12-col-tablet mdl-cell--12-col-phone new_rx_popup_header_box_col new_rx_popup_header_box_col_padding\" style=\"text-align: center !important;\"><button\r\n                class=\"mdl-button mdl-js-button mdl-button--raised mdl-button--colored backButton rx_popup_margin_mobile_top\" style=\"margin-left: 0px !important;\"\r\n                (click)=close()>Don't Include\r\n                Brand</button><button\r\n                class=\"mdl-button mdl-js-button mdl-button--raised mdl-button--colored nextButton\" (click)=\"submit()\">Include\r\n                Brand</button>\r\n        </div>\r\n    </div>\r\n</div>\r\n","import { ChangeDetectorRef, Component, ElementRef, EventEmitter, Output, TemplateRef, ViewChild, ViewEncapsulation } from '@angular/core';\r\nimport { ApiService } from '../../services/api.service';\r\nimport { config, errorconfig } from '../../environments/config';\r\nimport { CommonServices } from '../../services/common';\r\n@Component({\r\n  selector: 'app-available-formulations',\r\n  templateUrl: './available-formulations.component.html',\r\n  styleUrls: ['./available-formulations.component.css'],\r\n  encapsulation: ViewEncapsulation.None\r\n})\r\nexport class AvailableFormulationsComponent {\r\n  @Output() closeEvent = new EventEmitter();\r\n  @Output() submitEvent = new EventEmitter();\r\n  showRXFullPageSpinner = false;\r\n  modaldata: any;\r\n  selectedBrandList: any = [];\r\n  brandMedicproductId = '';\r\n  brandMedicpbsCode = '';\r\n  brandMedicQty = '';\r\n  brandMedicRep = '';\r\n  flag = false;\r\n  searchScroll = false;\r\n  searchBrandPageNumber = 1;\r\n  searchBrandLength: any = \"\";\r\n  @ViewChild(\"rxwidgets\", { static: true }) content!: TemplateRef<any>;\r\n  constructor(private elementRef: ElementRef, private apiservice: ApiService, private changedetect: ChangeDetectorRef, public commonservice: CommonServices) {\r\n    document.documentElement.style.setProperty('--subpop_wid', `700px`);\r\n  }\r\n\r\n  ngOnInit(): void {\r\n    var payload = {};\r\n    try {\r\n      this.showRXFullPageSpinner = true;\r\n      payload = {\r\n        request_type: \"parameter\",\r\n        searchName: this.modaldata.moleculeNameText,\r\n        type: this.modaldata.moleculeNameType\r\n      }\r\n      this.apiservice.Get(config.PHYSICIAN.GET_ALTERNATE_NAME_VALUE + '?searchName=' + this.modaldata.moleculeNameText + '&type=' + this.modaldata.moleculeNameType + '&page=1&noOfRec=10').subscribe(res => {\r\n        try {\r\n          var ListByIngredientsFinal = [];\r\n          if (this.commonservice.IsNullOrEmpty(res)) {\r\n            this.showRXFullPageSpinner = false; this.selectedBrandList = null; this.changedetect.detectChanges();\r\n            this.commonservice.setlogvalue(false, \"\", \"\", \"AvailableFormulationsComponent\", \"ngOnInit\", payload);\r\n            this.commonservice.toastopen(errorconfig.error_64.message, 'error', errorconfig.error_64.code);\r\n            this.commonservice.errorResponse(errorconfig.error_64.code, errorconfig.error_64.message);\r\n            return;\r\n          }\r\n          if (res.response_code == 0) {\r\n            if (res.response.length == 0) {\r\n              ListByIngredientsFinal.push(this.commonservice.selectedBrandFormulation);\r\n            } else {\r\n              var ListByIngredients = res.response;\r\n              ListByIngredientsFinal = ListByIngredients.filter((e: any) => {\r\n                return e.moleculeStrength.trim() == this.modaldata.moleculeStrengthText.trim();\r\n              })\r\n            }\r\n            this.searchBrandLength = res.response.length;\r\n            this.selectedBrandList = ListByIngredientsFinal;\r\n            if (res.response.length == 0 || this.selectedBrandList.length >= 3) {\r\n              this.showRXFullPageSpinner = false;\r\n              this.changedetect.detectChanges();\r\n            }\r\n            if (res.response.length != 0) { //&& this.selectedBrandList.length <= 3\r\n              this.MIMSBrandSearch();\r\n            } else {\r\n              this.showRXFullPageSpinner = false;\r\n            }\r\n            this.brandMedicproductId = this.commonservice.selectedBrandFormulation != null && this.commonservice.selectedBrandFormulation != \"\" ? this.commonservice.selectedBrandFormulation.productId : \"\";\r\n            this.brandMedicpbsCode = this.commonservice.selectedBrandFormulation != null && this.commonservice.selectedBrandFormulation != \"\" ? this.commonservice.selectedBrandFormulation.pbsCode : \"\";\r\n            this.brandMedicQty = this.commonservice.selectedBrandFormulation != null && this.commonservice.selectedBrandFormulation != \"\" ? this.commonservice.selectedBrandFormulation.maxQtyUnits : '';\r\n            this.brandMedicRep = this.commonservice.selectedBrandFormulation != null && this.commonservice.selectedBrandFormulation != \"\" ? this.commonservice.selectedBrandFormulation.repeats : '';\r\n          } else {\r\n            this.showRXFullPageSpinner = false;\r\n            this.commonservice.setlogvalue(false, res.response_message, res.response_message, \"AvailableFormulationsComponent\", \"ngOnInit\", payload);\r\n            this.commonservice.toastopen(res.response_message, \"error\", res.error_code);\r\n            this.commonservice.errorResponse(res.error_code, res.response_message);\r\n            this.selectedBrandList = null;\r\n          }\r\n          this.changedetect.detectChanges();\r\n        }\r\n        catch (ex: any) {\r\n          this.selectedBrandList = null;\r\n          this.showRXFullPageSpinner = false;\r\n          this.changedetect.detectChanges();\r\n          this.commonservice.setlogvalue(false, ex.message, ex.stack, \"AvailableFormulationsComponent\", \"ngOnInit\", payload);\r\n        }\r\n      }, error => {\r\n        this.selectedBrandList = null;\r\n        this.showRXFullPageSpinner = false;\r\n        this.changedetect.detectChanges();\r\n        this.commonservice.setlogvalue(false, error.message, error.stack, \"AvailableFormulationsComponent\", \"ngOnInit\", payload);\r\n        this.commonservice.toastopen(errorconfig.error_65.message + error, \"error\", errorconfig.error_65.code);\r\n        this.commonservice.errorResponse(errorconfig.error_65.code, errorconfig.error_65.message + error);\r\n      })\r\n    }\r\n    catch (ex: any) {\r\n      this.selectedBrandList = null;\r\n      this.showRXFullPageSpinner = false;\r\n      this.changedetect.detectChanges();\r\n      this.commonservice.setlogvalue(false, ex.message, ex.stack, \"AvailableFormulationsComponent\", \"ngOnInit\", payload);\r\n    }\r\n  }\r\n\r\n  close(): void {\r\n    try {\r\n      this.elementRef.nativeElement.remove();\r\n      this.closeEvent.emit(false);\r\n    }\r\n    catch (ex: any) {\r\n      this.commonservice.setlogvalue(false, ex.message, ex.stack, \"AvailableFormulationsComponent\", \"close\");\r\n    }\r\n  }\r\n\r\n  submit() {\r\n    try {\r\n      this.elementRef.nativeElement.remove();\r\n      this.closeEvent.emit({ responseflag: true, flag: this.flag });\r\n    }\r\n    catch (ex: any) {\r\n      this.commonservice.setlogvalue(false, ex.message, ex.stack, \"AvailableFormulationsComponent\", \"submit\");\r\n    }\r\n  }\r\n\r\n  selectFormulation(med: any, index: number) {\r\n    try {\r\n      this.commonservice.selectedBrandFormulation = med;\r\n      this.commonservice.selectedBrandFormulation.restrictions = med.Restrictions && med.Restrictions.length != 0 ? med.Restrictions[0] : null;\r\n      this.flag = true;\r\n      this.changedetect.detectChanges();\r\n    }\r\n    catch (ex: any) {\r\n      this.commonservice.setlogvalue(false, ex.message, ex.stack, \"AvailableFormulationsComponent\", \"selectFormulation\");\r\n    }\r\n  }\r\n\r\n  getRestrictions(restrictions: any) {\r\n    try {\r\n      var restrictionList = [];\r\n      for (let i = 0; i < restrictions.length; i++) {\r\n        var ind = restrictionList.indexOf(restrictions[i]['restrictionType'])\r\n        if (ind == -1) {\r\n          restrictionList.push(restrictions[i]['restrictionType']);\r\n        }\r\n      }\r\n      return restrictionList.toString();\r\n      //    let restrictions = [];\r\n    }\r\n    catch (ex: any) {\r\n      this.commonservice.setlogvalue(false, ex.message, ex.stack, \"AvailableFormulationsComponent\", \"getRestrictions\");\r\n      return \"\";\r\n    }\r\n  }\r\n\r\n  MIMSBrandSearch() {\r\n    try {\r\n      if (this.searchBrandLength != 0) { // &&\r\n        var payload = {\r\n          request_type: \"parameter\",\r\n          searchName: this.modaldata.moleculeNameText,\r\n          type: this.modaldata.moleculeNameType\r\n        }\r\n        this.searchScroll = true;\r\n        this.searchBrandPageNumber += 1;\r\n        this.changedetect.detectChanges();\r\n        this.apiservice.Get(config.PHYSICIAN.GET_ALTERNATE_NAME_VALUE + '?searchName=' + this.modaldata.moleculeNameText + '&type=' + this.modaldata.moleculeNameType + '&page=' + this.searchBrandPageNumber + '&noOfRec=10').subscribe(res => {\r\n          try {\r\n            var ListByIngredientsFinal = [];\r\n            if (this.commonservice.IsNullOrEmpty(res)) {\r\n              this.showRXFullPageSpinner = false;\r\n              this.searchBrandLength = 0; this.searchScroll = false; this.changedetect.detectChanges();\r\n              this.commonservice.setlogvalue(false, \"\", \"\", \"AvailableFormulationsComponent\", \"MIMSBrandSearch\", payload);\r\n              this.commonservice.toastopen(errorconfig.error_64.message, 'error', errorconfig.error_64.code);\r\n              this.commonservice.errorResponse(errorconfig.error_64.code, errorconfig.error_64.message);\r\n              return;\r\n            }\r\n            if (res.response_code == 0) {\r\n              if (res.response.length == 0) {\r\n                this.showRXFullPageSpinner = false;\r\n                this.searchBrandPageNumber = 1;\r\n              }\r\n              if (res.response.length > 0) {\r\n                var ListByIngredients = res.response;\r\n                ListByIngredientsFinal = ListByIngredients.filter((e: any) => {\r\n                  return e.moleculeStrength.trim() == this.modaldata.moleculeStrengthText.trim();\r\n                })\r\n              }\r\n              this.searchBrandLength = res.response.length;\r\n              ListByIngredientsFinal.forEach((element: any) => {\r\n                this.selectedBrandList.push(element);\r\n              });\r\n              if (res.response.length == 0 || this.selectedBrandList.length >= 3) {\r\n                this.showRXFullPageSpinner = false;\r\n                this.changedetect.detectChanges();\r\n              }\r\n              if (res.response.length != 0) { //&& this.selectedBrandList.length <= 3\r\n                this.MIMSBrandSearch();\r\n              }\r\n              else if (res.response.length == 0 && this.selectedBrandList.length == 0) {\r\n                ListByIngredientsFinal.push(this.commonservice.selectedBrandFormulation);\r\n                this.selectedBrandList = ListByIngredientsFinal;\r\n                this.showRXFullPageSpinner = false;\r\n                this.changedetect.detectChanges();\r\n              }\r\n              this.brandMedicproductId = this.commonservice.selectedBrandFormulation != null && this.commonservice.selectedBrandFormulation != \"\" ? this.commonservice.selectedBrandFormulation.productId : \"\";\r\n              this.brandMedicpbsCode = this.commonservice.selectedBrandFormulation != null && this.commonservice.selectedBrandFormulation != \"\" ? this.commonservice.selectedBrandFormulation.pbsCode : \"\";\r\n              this.brandMedicQty = this.commonservice.selectedBrandFormulation != null && this.commonservice.selectedBrandFormulation != \"\" ? this.commonservice.selectedBrandFormulation.maxQtyUnits : '';\r\n              this.brandMedicRep = this.commonservice.selectedBrandFormulation != null && this.commonservice.selectedBrandFormulation != \"\" ? this.commonservice.selectedBrandFormulation.repeats : '';\r\n            } else {\r\n              this.showRXFullPageSpinner = false;\r\n              this.searchBrandLength = 0;\r\n              this.commonservice.setlogvalue(false, res.response_message, res.response_message, \"AvailableFormulationsComponent\", \"MIMSBrandSearch\", payload);\r\n              this.commonservice.toastopen(res.response_message, \"error\", res.error_code);\r\n              this.commonservice.errorResponse(res.error_code, res.response_message);\r\n            }\r\n            this.searchScroll = false;\r\n            this.changedetect.detectChanges();\r\n          }\r\n          catch (ex: any) {\r\n            this.showRXFullPageSpinner = false;\r\n            this.searchBrandLength = 0;\r\n            this.searchScroll = false;\r\n            this.changedetect.detectChanges();\r\n            this.commonservice.setlogvalue(false, ex.message, ex.stack, \"AvailableFormulationsComponent\", \"MIMSBrandSearch\", payload);\r\n          }\r\n        }, error => {\r\n          var ListByIngredientsFinal = [];\r\n          this.showRXFullPageSpinner = false;\r\n          this.searchBrandLength = 0;\r\n          this.searchScroll = false;\r\n          ListByIngredientsFinal.push(this.commonservice.selectedBrandFormulation);\r\n          this.selectedBrandList = ListByIngredientsFinal;\r\n          this.changedetect.detectChanges();\r\n          this.commonservice.setlogvalue(false, error.message, error.stack, \"AvailableFormulationsComponent\", \"MIMSBrandSearch\", payload);\r\n          this.commonservice.toastopen(errorconfig.error_65.message + error, \"error\", errorconfig.error_65.code);\r\n          this.commonservice.errorResponse(errorconfig.error_65.code, errorconfig.error_65.message + error);\r\n        })\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.commonservice.setlogvalue(false, ex.message, ex.stack, \"AvailableFormulationsComponent\", \"MIMSBrandSearch\");\r\n    }\r\n  }\r\n}\r\n","<ng-template #rxwidgets>\r\n</ng-template>\r\n<div class=\"ReactModal__Overlay ReactModal__Overlay--after-open open_popup\">\r\n    <div class=\"ReactModal__Content ReactModal__Content--after-open view_pop include_brand_box_popup\" style=\"width: 80vh\" tabindex=\"-1\"\r\n        role=\"dialog\" aria-modal=\"true\">\r\n        <div\r\n            class=\"mdl-cell mdl-cell--12-col mdl-cell--12-col-tablet mdl-cell--12-col-phone new_rx_popup_header_box_col new_rx_popup_header_box_col_padding\">\r\n            <button class=\"mdl-button mdl-js-button mdl-button--raised mdl-button--colored backButton\" (click)=close()\r\n                [disabled]=\"showRXFullPageSpinner\">Cancel</button><button\r\n                class=\"mdl-button mdl-js-button mdl-button--raised mdl-button--colored nextButton\" (click)=\"submit()\"\r\n                [disabled]=\"showRXFullPageSpinner\">Save</button>\r\n        </div>\r\n        <div class=\"mdl-grid\" style=\"width: 100%; padding: 0px;\">\r\n            <div\r\n                class=\"mdl-cell mdl-cell--12-col mdl-cell--8-col-tablet mdl-cell--4-col-phone hone new_rx_mobile_fullwidth\">\r\n                <div class=\"new_rx_popup_table_box\">\r\n                    <p class=\"new_rx_popup_tab_title\" style=\"padding: 5px 10px; margin: 0px;\">Available Formulations:\r\n                    </p>\r\n                    <div *ngIf=\"showRXFullPageSpinner\" class=\"loader m-v4\"></div>\r\n                    <div *ngIf=\"!showRXFullPageSpinner\">\r\n                        <tr *ngIf=\"selectedBrandList.length==0\">\r\n                            <div class=\"noDataPrescribe\"><span>No Data</span></div>\r\n                        </tr>\r\n                        <div class=\"new_rx_popup_box_container\" *ngFor=\"let med of selectedBrandList; index as i;\">\r\n                            <div class=\"mdl-grid new_rx_popup_box\" [class]=\"{'RX_highlight':commonservice.selectedBrandFormulation != null &&\r\n                            this.commonservice.selectedBrandFormulation.productId != null &&\r\n                            med.productId === this.commonservice.selectedBrandFormulation.productId &&\r\n                            med.pbsCode === this.commonservice.selectedBrandFormulation.pbsCode &&\r\n                            med.productName === this.commonservice.selectedBrandFormulation.productName &&\r\n                            med.repeats === this.commonservice.selectedBrandFormulation.repeats &&\r\n                            med.maxQtyUnits === this.commonservice.selectedBrandFormulation.maxQtyUnits}\"\r\n                                (click)=\"selectFormulation(med,i)\">\r\n                                <div class=\"mdl-cell mdl-cell--12-col mdl-cell--8-col-tablet mdl-cell--4-col-phone\">\r\n                                    <p class=\"new_rx_popup_box_header\" [innerHTML]=\"med.productName\"></p>\r\n                                    <p class=\"new_rx_popup_box_text\">\r\n                                        <span><b>Quantity:</b> {{med['pbsType'].toLowerCase() == \"non pbs\" ? med['numberOfPack'] +\r\n                                            \"x\" + med['unitPerPack'] : med['maxQtyUnits']}}</span><span><b>Rpts:</b>\r\n                                            {{med.repeats}}</span><span><b>Restriction:</b>\r\n                                            {{med['Restrictions'] != null && med['Restrictions'] != \"\"\r\n                                            ? med['pbsType'] + \" (\" + getRestrictions(med['Restrictions']) + \") \"\r\n                                            : med['pbsType']}} </span><span><b>Generic Name:</b>\r\n                                            <span [innerHTML]=\"med.genericName\"></span></span>\r\n                                    </p>\r\n                                </div>\r\n                            </div>\r\n                        </div>\r\n                        <div *ngIf=\"searchScroll\" class=\"loader m-v4 ml-load-45\"></div>\r\n                    </div>\r\n                </div>\r\n            </div>\r\n        </div>\r\n    </div>\r\n</div>\r\n","import { Component, ElementRef, EventEmitter, Output } from '@angular/core';\r\nimport { CommonServices } from '../services/common';\r\n\r\n@Component({\r\n  selector: 'app-is-authority',\r\n  templateUrl: './is-authority.component.html',\r\n  styleUrls: ['./is-authority.component.css']\r\n})\r\nexport class IsAuthorityComponent {\r\n  @Output() closeEvent = new EventEmitter();\r\n  @Output() submitEvent = new EventEmitter();\r\n  constructor(private elementRef: ElementRef, private commonServices: CommonServices) {\r\n    document.documentElement.style.setProperty('--subpop_wid', `400px`);\r\n  }\r\n\r\n  close(): void {\r\n    try {\r\n      this.elementRef.nativeElement.remove();\r\n      this.closeEvent.emit(false);\r\n      this.commonServices.isShowAuthority = false;\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false,ex.message, ex.stack, \"IsAuthorityComponent\", \"close\");\r\n    }\r\n  }\r\n\r\n  submit() {\r\n    try {\r\n      this.commonServices.approvalNo = \"\";\r\n      this.commonServices.pbsListInstructions = \"\";\r\n      this.commonServices.pbsListInstructionsId = null;\r\n      this.commonServices.isShowAuthority = true;\r\n      this.elementRef.nativeElement.remove();\r\n      this.closeEvent.emit(true);\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false,ex.message, ex.stack, \"IsAuthorityComponent\", \"submit\");\r\n    }\r\n  }\r\n}\r\n","<div class=\"new_rx_authority_popup\">\r\n\r\n<div class=\"ReactModal__Overlay ReactModal__Overlay--after-open open_popup\">\r\n    <div class=\"ReactModal__Content ReactModal__Content--after-open view_pop include_brand_box_popup\" tabindex=\"-1\" role=\"dialog\"\r\n        aria-modal=\"true\">\r\n        <div>\r\n            <div class=\"new_rx_IncludeBrand_popup_text\">Would you like to prescribe this item as an authority?</div>\r\n        </div>\r\n        <div class=\"row\" style=\"justify-content:center\">\r\n\r\n            <div\r\n                class=\"mdl-cell mdl-cell--12-col mdl-cell--12-col-tablet mdl-cell--12-col-phone new_rx_popup_header_box_col new_rx_popup_header_box_col_padding\" style=\"text-align: center;\">\r\n                <button class=\"mdl-button mdl-js-button mdl-button--raised mdl-button--colored backButton\"\r\n                    (click)=close() style=\"width: 90px;margin: 0px;\">No</button><button\r\n                    class=\"mdl-button mdl-js-button mdl-button--raised mdl-button--colored nextButton\" (click)=\"submit()\" style=\"width: 90px;\">Yes</button>\r\n            </div>\r\n        </div>\r\n    </div>\r\n</div></div>\r\n<!-- 350px -->\r\n","import { Component, ElementRef, EventEmitter, Output } from '@angular/core';\r\nimport { CommonServices } from '../services/common';\r\n\r\n@Component({\r\n  selector: 'app-real-time-prescription-monitoring',\r\n  templateUrl: './real-time-prescription-monitoring.component.html',\r\n  styleUrls: ['./real-time-prescription-monitoring.component.css']\r\n})\r\nexport class RealTimePrescriptionMonitoringComponent {\r\n  @Output() closeEvent = new EventEmitter();\r\n  @Output() submitEvent = new EventEmitter();\r\n  modaldata: any;\r\n  constructor(private elementRef: ElementRef, public commonServices: CommonServices) {\r\n    document.documentElement.style.setProperty('--subpop_wid', `450px`);\r\n  }\r\n\r\n  close(): void {\r\n    try {\r\n      this.elementRef.nativeElement.remove();\r\n      this.closeEvent.emit(true);\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false,ex.message, ex.stack, \"RealTimePrescriptionMonitoringComponent\", \"close\");\r\n    }\r\n  }\r\n\r\n}\r\n","<div class=\"ReactModal__Overlay ReactModal__Overlay--after-open open_popup\">\r\n    <div class=\"ReactModal__Content ReactModal__Content--after-open view_pop include_brand_box_popup\" tabindex=\"-1\"\r\n        role=\"dialog\" aria-modal=\"true\">\r\n        <div>\r\n            <div class=\"new_rx_IncludeBrand_popup_text content\">{{modaldata}}</div>\r\n            <div class=\"RTPM_button\">\r\n                <div class=\"Rx-btn\"><button\r\n                        class=\"mdl-button mdl-js-button mdl-button--raised mdl-button--colored rx_record_change_popup_submit authority\"\r\n                        (click)=close()>Ok</button>\r\n                </div>\r\n            </div>\r\n        </div>\r\n    </div>\r\n</div>","import { errorconfig } from '../environments/config';\r\nimport { CommonServices } from '../services/common';\r\nimport { ChangeDetectorRef, Component, ElementRef, EventEmitter, OnInit, Output, TemplateRef, ViewChild } from '@angular/core';\r\n\r\n@Component({\r\n  selector: 'app-confirm-patient-contact-details',\r\n  templateUrl: './confirm-patient-contact-details.component.html',\r\n  styleUrls: ['./confirm-patient-contact-details.component.css']\r\n})\r\nexport class ConfirmPatientContactDetailsComponent implements OnInit {\r\n  @Output() closeEvent = new EventEmitter();\r\n  @Output() submitEvent = new EventEmitter();\r\n  @ViewChild('rxwidgets', { static: true }) content!: TemplateRef<any>;\r\n  AddressSendToAddType = \"SMS\";\r\n  rxnumber = \"\";\r\n  rxemailId = \"\";\r\n  MobileNo: any;\r\n  Email: any;\r\n  rxEmailFlag = true;\r\n  modaldata: any;\r\n  scriptType: any;\r\n  constructor(private elementRef: ElementRef, public commonServices: CommonServices, private changedetect: ChangeDetectorRef) {\r\n    this.MobileNo = this.commonServices.patientDetails.phone;\r\n    this.Email = this.commonServices.isScriptToPharmacy == 1 &&  this.commonServices.scriptType?.toLocaleLowerCase() !== 'm' && this.commonServices.pharmacyEmail != null && this.commonServices.pharmacyEmail != \"\"? this.commonServices.pharmacyEmail : this.commonServices.patientDetails.email;\r\n    this.commonServices.isScriptToPharmacy == 1 ? this.AddressSendToAddType = \"Email\" : this.AddressSendToAddType = \"SMS\";\r\n    this.scriptType = this.commonServices.scriptType?.toLocaleLowerCase();\r\n    this.AddressSendToAddType = this.commonServices.scriptType.toLocaleLowerCase() == 'e' ? 'SMS' : 'email';\r\n  }\r\n  ngOnInit() {\r\n    try {\r\n      document.documentElement.style.setProperty('--eprescription_popup_width', '450px');\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"ConfirmPatientContactDetailsComponent\", \"ngOnInit\");\r\n    }\r\n  }\r\n\r\n  close(index: any): any {\r\n    try {\r\n      var scheduleNumber = this.commonServices.getScheduleNumber(this.commonServices.selectedFormulation);\r\n      if (index == 2 || index == 3) {\r\n        if (this.AddressSendToAddType.toLowerCase() == \"sms\") {\r\n          if (this.commonServices.IsNullOrEmpty(this.MobileNo.trim())) {\r\n            this.commonServices.toastopen(errorconfig.error_57.message, \"error\", errorconfig.error_57.code);\r\n            this.commonServices.errorResponse(errorconfig.error_57.code, errorconfig.error_57.message);\r\n            return;\r\n          }\r\n          var validby = this.commonServices.validByMobileNo(this.MobileNo.trim());\r\n          if (validby == 1) {\r\n            this.commonServices.toastopen(errorconfig.error_57.message, \"error\", errorconfig.error_57.code);\r\n            this.commonServices.errorResponse(errorconfig.error_57.code, errorconfig.error_57.message);\r\n            return;\r\n          }\r\n          if (validby == 3) {\r\n            this.commonServices.toastopen(errorconfig.error_58.message, \"error\", errorconfig.error_58.code);\r\n            this.commonServices.errorResponse(errorconfig.error_58.code, errorconfig.error_58.message);\r\n            return;\r\n          }\r\n          if (validby == 2) {\r\n            if (this.MobileNo.charAt(0) != '0') { this.MobileNo = \"0\" + this.MobileNo; }\r\n          } else {\r\n            this.commonServices.toastopen(errorconfig.error_58.message, \"error\", errorconfig.error_58.code);\r\n            this.commonServices.errorResponse(errorconfig.error_58.code, errorconfig.error_58.message);\r\n            return;\r\n          }\r\n          this.Email = \"\";\r\n        }\r\n        if (this.AddressSendToAddType.toLowerCase() == \"email\") {\r\n          if (this.commonServices.IsNullOrEmpty(this.Email.trim())) {\r\n            this.commonServices.toastopen(errorconfig.error_59.message, \"error\", errorconfig.error_59.code);\r\n            this.commonServices.errorResponse(errorconfig.error_59.code, errorconfig.error_59.message);\r\n            return;\r\n          }\r\n          if (!this.commonServices.validByEmailNo(this.Email.trim())) {\r\n            this.commonServices.toastopen(errorconfig.error_60.message, \"error\", errorconfig.error_60.code);\r\n            this.commonServices.errorResponse(errorconfig.error_60.code, errorconfig.error_60.message);\r\n            return;\r\n          }\r\n          this.MobileNo = \"\";\r\n        }\r\n      }\r\n      if (index == 2) {\r\n        var isPrintAvailable = false;\r\n        this.closeEvent.emit({ scheduleNumber: scheduleNumber, isPrintAvailable: isPrintAvailable, AddressSendToAddType: this.AddressSendToAddType, rxnumber: this.MobileNo.trim(), rxemailId: this.Email.trim() });\r\n      }\r\n      else if (index == 3) {\r\n        var isPrintAvailable = true;\r\n        this.closeEvent.emit({ scheduleNumber: scheduleNumber, isPrintAvailable: isPrintAvailable, AddressSendToAddType: this.AddressSendToAddType, rxnumber: this.MobileNo.trim(), rxemailId: this.Email.trim() });\r\n      }\r\n      else if (index == 4) {\r\n        this.closeEvent.emit({ flag: true });\r\n      }\r\n      else if (index == 1) {\r\n        this.closeEvent.emit(null);\r\n        this.AddressSendToAddType = \"\";\r\n        this.rxnumber = \"\";\r\n        this.rxemailId = \"\";\r\n      }\r\n      this.elementRef.nativeElement.remove();\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"ConfirmPatientContactDetailsComponent\", \"close\");\r\n    }\r\n  }\r\n\r\n  radioChange(index: number) {\r\n    try {\r\n      if (index == 1) {\r\n        this.AddressSendToAddType = \"SMS\"\r\n      }\r\n      else {\r\n        this.AddressSendToAddType = \"Email\"\r\n      }\r\n      this.changedetect.detectChanges();\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"ConfirmPatientContactDetailsComponent\", \"radioChange\");\r\n    }\r\n  }\r\n\r\n  checkMobile(evt: any): any {\r\n    try {\r\n      var charCode = (evt.which) ? evt.which : evt.keyCode;\r\n      if (charCode < 48 || charCode > 57)\r\n        return false;\r\n      return true;\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"ConfirmPatientContactDetailsComponent\", \"checkMobile\");\r\n      return false;\r\n    }\r\n  }\r\n}\r\n","<div class=\"ReactModalPortal e_prescription_box\">\r\n  <div class=\"ReactModal__Overlay ReactModal__Overlay--after-open open_popup\">\r\n    <div class=\"ReactModal__Content ReactModal__Content--after-open popup_header e_prescription_popup_inner_box\"\r\n      tabindex=\"-1\" role=\"dialog\" aria-modal=\"true\">\r\n      <p class=\"rx_record_change_popup\">{{modaldata==1?'Confirm Patient Contact Details':'Cease Prescription'}}</p>\r\n      <button type=\"button\" class=\"rx_record_popup_close\" (click)=\"close(1)\">X</button>\r\n      <div class=\"content\">\r\n        <hr class=\"m-0\">\r\n        <div *ngIf=\"modaldata==1\">\r\n          <div class=\"mdl-cell mdl-cell--12-col mdl-cell--8-col-tablet mdl-cell--4-col-phone  new_rx_mobile_fullwidth\">\r\n            <div class=\"details_width_flex\"><label class=\"label\">Send Token Via<span\r\n                  class=\"text_content\">*</span></label>\r\n            </div>\r\n            <div class=\"rx_new_popup_checkbox\">\r\n              <div class=\"rx_new_radiobox_button rx-btn rx_radio_overall\">\r\n                <label class=\"rx_radio_label\" *ngIf=\"scriptType !== 'm'\"><input [disabled]=\"this.commonServices.isScriptToPharmacy==1\" type=\"radio\" class=\"mdl-radio__button custom-radio-button\"\r\n                    name=\"AddressSendToAddType\" [value]=\"'SMS'\" (click)=\"radioChange(1)\"\r\n                    [checked]=\"AddressSendToAddType.toLowerCase() == 'sms'\" /><span\r\n                    class=\"mdl-radio__label radio_txt\">SMS</span></label>\r\n\r\n                <label class=\"rx_radio_label\"><input type=\"radio\" [checked]=\"AddressSendToAddType.toLowerCase() == 'email'\"\r\n                    (click)=\"radioChange(2)\" class=\"mdl-radio__button d-inline radio custom-radio-button\"\r\n                    name=\"AddressSendToAddType\" [value]=\"'Email'\"><span class=\"mdl-radio__label radio_txt\">E-Mail</span>\r\n                </label>\r\n              </div>\r\n            </div>\r\n          </div>\r\n          <div *ngIf=\"AddressSendToAddType.toLowerCase() == 'sms'\"\r\n            class=\"mdl-cell mdl-cell--12-col mdl-cell--8-col-tablet mdl-cell--4-col-phone mobilenumber-input addpatient-details-col \">\r\n            <div class=\"mdl-textfield mdl-js-textfield first-row-input\">\r\n              <div class=\"details_width_flex\"><label for=\"mobile-number\" class=\"no_txt_clr\">Mobile\r\n                  Number</label></div>\r\n              <div class=\"details_flag_number\">\r\n                <div class=\"img-w\"><span class=\"addpatient-country-flag\"><img\r\n                      src=\"https://passets.hola.health/rx-widgets/rx-australia.png\"></span>\r\n                </div>\r\n                <div class=\"details_mobileNo_input\"><input autocomplete=\"off\" class=\"mdl-textfield__input input_textfield\" type=\"tel\"\r\n                    id=\"mobile-number\" (keypress)=\"checkMobile($event)\"\r\n                    placeholder=\"04 123 45678\" [(ngModel)]=\"MobileNo\"\r\n                    style=\"text-decoration: none; border-bottom: none;\">\r\n                </div>\r\n              </div>\r\n            </div>\r\n          </div>\r\n\r\n          <div *ngIf=\"AddressSendToAddType.toLowerCase() == 'email'\"\r\n            class=\"mdl-cell mdl-cell--12-col mdl-cell--8-col-tablet mdl-cell--4-col-phone mobilenumber-input addpatient-details-col \">\r\n            <div class=\"mdl-textfield mdl-js-textfield first-row-input\">\r\n              <div class=\"details_width_flex\"><label for=\"mobile-number\" class=\"no_txt_clr\">Email\r\n                </label></div>\r\n              <div class=\"details_flag_number\">\r\n                <div class=\"details_mobileNo_input\"><input autocomplete=\"off\" class=\"mdl-textfield__input input_textfield\" type=\"email\"\r\n                    id=\"mobile-number\"\r\n                    placeholder=\"text@gmail.com\" [(ngModel)]=\"Email\"\r\n                    style=\"text-decoration: none; border-bottom: none;\"></div>\r\n              </div>\r\n            </div>\r\n          </div>\r\n          <hr class=\"m-0\"><br>\r\n          <div class=\"btn-bottom\">\r\n            <div class=\"btn-outer\"><button class=\"mdl-button mdl-js-button  rx_record_change_popup_cancel cancel_send\"\r\n                (click)=\"close(1)\">Cancel</button>\r\n            </div>\r\n            <div class=\"btn-send\"><button class=\"mdl-button mdl-js-button  rx_record_change_popup_submit\"\r\n                (click)=\"close(2)\">Send</button>\r\n            </div>\r\n            <div class=\"btn-print\" *ngIf=\"scriptType !== 'm'\"><button (click)=\"close(3)\"\r\n                class=\"mdl-button mdl-js-button mdl-button--raised mdl-button--colored rx_record_change_popup_submit rx_popup_margin_mobile_top\">Send\r\n                &amp; Print</button></div>\r\n          </div>\r\n        </div>\r\n        <div *ngIf=\"modaldata==2\">\r\n          <div class=\"mdl-cell mdl-cell--12-col mdl-cell--8-col-tablet mdl-cell--4-col-phone  new_rx_mobile_fullwidth\">\r\n            <span class=\"new_rx_IncludeBrand_popup_text\">The selected SCID is already dispensed to the patient. You can choose to cease the prescription to\r\n              prevent future dispenses to the patient.</span>\r\n          </div>\r\n          <div class=\"btn-bottom\">\r\n            <div class=\"btn-outer\"><button class=\"mdl-button mdl-js-button  rx_record_change_popup_cancel cancel_send\"\r\n                (click)=\"close(1)\">Cancel</button>\r\n              <div class=\"btn-print \" style=\"margin-left: 10px;\"><button (click)=\"close(4)\"\r\n                  class=\"mdl-button mdl-js-button mdl-button--raised mdl-button--colored rx_record_change_popup_submit rx_popup_margin_mobile_top\">Cease Prescription</button></div>\r\n            </div>\r\n          </div>\r\n        </div>\r\n      </div>\r\n    </div>\r\n  </div>\r\n\r\n  <ng-template #rxwidgets> </ng-template>","import { ChangeDetectorRef, Component, ElementRef, EventEmitter, OnInit, Output, TemplateRef, ViewChild } from '@angular/core';\r\nimport { CommonServices } from '../services/common';\r\nimport { ApiService } from '../services/api.service';\r\nimport { config, errorconfig } from '../environments/config';\r\n\r\n@Component({\r\n  selector: 'app-password',\r\n  templateUrl: './password.component.html',\r\n  styleUrls: ['./password.component.css']\r\n})\r\nexport class PasswordComponent {\r\n  @Output() closeEvent = new EventEmitter();\r\n  @Output() submitEvent = new EventEmitter();\r\n  @ViewChild('rxwidgets', { static: true }) content!: TemplateRef<any>;\r\n  verifyPassword = \"\";\r\n  modaldata: any;\r\n  constructor(private elementRef: ElementRef, public commonServices: CommonServices, public apiService: ApiService, private changedetect: ChangeDetectorRef) {\r\n    document.documentElement.style.setProperty('--subpop_wid', `450px`);\r\n  }\r\n\r\n  close(): void {\r\n    try {\r\n      this.elementRef.nativeElement.remove();\r\n      this.closeEvent.emit(false);\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"PasswordComponent\", \"close\");\r\n    }\r\n  }\r\n\r\n  submit() {\r\n    var payload = {};\r\n    try {\r\n      if (this.modaldata == 2) {\r\n        payload = {\r\n          request_type: \"parameter\",\r\n          password: this.verifyPassword\r\n        }\r\n        this.apiService.Get(config.PHYSICIAN.RE_AUTHENTICATION + \"?password=\" + this.verifyPassword + \"&userId=\" + this.commonServices.physicianDetails.userId).subscribe(res => {\r\n          try {\r\n            if (this.commonServices.IsNullOrEmpty(res)) {\r\n              this.verifyPassword = \"\";\r\n              this.changedetect.detectChanges();\r\n              this.commonServices.setlogvalue(false, \"\", \"\", \"PasswordComponent\", \"submit\", payload);\r\n              this.commonServices.toastopen(errorconfig.error_64.message, 'error', errorconfig.error_64.code);\r\n              this.commonServices.errorResponse(errorconfig.error_64.code, errorconfig.error_64.message);\r\n              return;\r\n            }\r\n            if (res.response_code == 0) {\r\n              this.elementRef.nativeElement.remove();\r\n              this.closeEvent.emit(true);\r\n            }\r\n            else {\r\n              this.verifyPassword = \"\";\r\n              this.changedetect.detectChanges();\r\n              this.commonServices.setlogvalue(false, res.response_message, res.response_message, \"PasswordComponent\", \"submit\", payload);\r\n              this.commonServices.toastopen(errorconfig.error_61.message, \"error\", errorconfig.error_61.code);\r\n              this.commonServices.errorResponse(errorconfig.error_61.code, errorconfig.error_61.message);\r\n            }\r\n          }\r\n          catch (ex: any) {\r\n            this.verifyPassword = \"\";\r\n            this.changedetect.detectChanges();\r\n            this.commonServices.setlogvalue(false, ex.message, ex.stack, \"PasswordComponent\", \"submit\", payload);\r\n          }\r\n        }, error => {\r\n          this.verifyPassword = \"\";\r\n          this.changedetect.detectChanges();\r\n          this.commonServices.setlogvalue(false, error.message, error.stack, \"PasswordComponent\", \"submit\", payload);\r\n          this.commonServices.toastopen(errorconfig.error_65.message + error, \"error\", errorconfig.error_65.code);\r\n          this.commonServices.errorResponse(errorconfig.error_65.code, errorconfig.error_65.message + error);\r\n        })\r\n      }\r\n      else {\r\n        if (this.commonServices.IsNullOrEmpty(this.commonServices.prescribedItemReservedFour)) {\r\n          this.commonServices.toastopen(errorconfig.error_74.message, \"error\", errorconfig.error_74.code);\r\n          this.commonServices.errorResponse(errorconfig.error_74.code, errorconfig.error_74.message);\r\n          return;\r\n        }\r\n        this.elementRef.nativeElement.remove();\r\n        this.closeEvent.emit(true);\r\n      }\r\n\r\n    }\r\n    catch (ex: any) {\r\n      this.verifyPassword = \"\";\r\n      this.changedetect.detectChanges();\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"PasswordComponent\", \"submit\", payload);\r\n    }\r\n  }\r\n}\r\n","<div class=\"ReactModal__Overlay ReactModal__Overlay--after-open open_popup\">\r\n    <div class=\"ReactModal__Content ReactModal__Content--after-open view_pop\" tabindex=\"-1\" role=\"dialog\"\r\n        aria-modal=\"true\">\r\n        <button type=\"button\" class=\"rx_record_popup_close\" (click)=close()>X</button>\r\n        <div class=\"mdl-cell mdl-cell--12-col mdl-cell--8-col-tablet mdl-cell--4-col-phone\">\r\n            <p class=\"new_rx_popup_label\" style=\"text-align: left;\">{{modaldata==1?'Pharmacy Name:':'Password:'}}</p>\r\n            <input *ngIf=\"modaldata==2\" class=\"new_rx_popup_tab_input new_rx_popup_tab_input_password \" type=\"password\"\r\n                autoComplete=\"new-password\" id=\"confirmpassword\" [(ngModel)]=\"verifyPassword\" name=\"confirmpassword\"\r\n                placeholder=\"Enter Your Password\" value=\"\" />\r\n            <input *ngIf=\"modaldata==1\" class=\"new_rx_popup_tab_input new_rx_popup_tab_input_password \" type=\"text\"\r\n                 [(ngModel)]=\"commonServices.prescribedItemReservedFour\"\r\n                placeholder=\"Please enter dispensing pharmacy name\" maxLength=\"50\"/>\r\n            <button class=\"mdl-button mdl-js-button rx_record_change_popup_submit\"\r\n                style=\"float: right; margin-top: 10px;\" (click)=\"submit()\">Submit</button>\r\n        </div>\r\n    </div>\r\n</div>\r\n<ng-template #rxwidgets> </ng-template>","import { Component, OnInit, Output, EventEmitter, TemplateRef, ViewChild, ElementRef, ChangeDetectorRef, Renderer2 } from '@angular/core';\r\nimport { CommonServices } from '../services/common';\r\nimport { config, errorconfig } from '../environments/config';\r\nimport { ApiService } from '../services/api.service';\r\n@Component({\r\n  selector: 'app-cease-popup',\r\n  templateUrl: './cease-popup.component.html',\r\n  styleUrls: ['./cease-popup.component.css']\r\n})\r\nexport class CeasePopupComponent implements OnInit {\r\n\r\n  @Output() closeEvent = new EventEmitter();\r\n  @Output() submitEvent = new EventEmitter();\r\n  @ViewChild('rxwidgets', { static: true }) content!: TemplateRef<any>;\r\n  AddressSendToAddType = \"SMS\"\r\n  rxnumber = \"\";\r\n  rxemailId = \"\";\r\n  MobileNo: any;\r\n  Email: any;\r\n  rxEmailFlag = true;\r\n  Reason: any = \"\";\r\n  ShowDropdown: boolean = true;\r\n  reasonfield: any = '';\r\n  modaldata: any;\r\n  constructor(private elementRef: ElementRef, public commonServices: CommonServices, private changedetect: ChangeDetectorRef, private renderer: Renderer2, private apiService: ApiService) {\r\n    this.MobileNo = this.commonServices.patientDetails.phone;\r\n    this.Email = this.commonServices.patientDetails.email;\r\n    this.AddressSendToAddType = \"SMS\"\r\n  }\r\n\r\n  ngOnInit() {\r\n    try {\r\n      document.documentElement.style.setProperty('--eprescription_popup_width', '450px');\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"CeasePopupComponent\", \"ngOnInit\");\r\n    }\r\n  }\r\n\r\n  change(event: any) {\r\n    try {\r\n      if (event.target.value.toLowerCase() == \"others\") {\r\n        this.ShowDropdown = false;\r\n        this.changedetect.detectChanges();\r\n      } else {\r\n        this.ShowDropdown = true;\r\n        this.changedetect.detectChanges();\r\n        this.reasonfield = '';\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"CeasePopupComponent\", \"change\");\r\n    }\r\n  }\r\n\r\n  close(index: any): any {\r\n    var payload = {};\r\n    try {\r\n      if (index == 1) {\r\n        this.closeEvent.emit(null);\r\n        this.elementRef.nativeElement.remove();\r\n      }\r\n      else if (index = 2) {\r\n        var reason = this.ShowDropdown ? this.Reason : this.reasonfield.trim();\r\n        this.commonServices.prescribeMedLoader = true; this.changedetect.detectChanges();\r\n        payload = {\r\n          request_type: \"parameter\",\r\n          rxId: this.commonServices.rxid,\r\n          reason: reason\r\n        }\r\n        this.apiService.Get(config.PHYSICIAN.RX_CEASE + this.commonServices.rxid + \"&reason=\" + reason).subscribe((res: any) => {\r\n          try {\r\n            if (this.commonServices.IsNullOrEmpty(res)) {\r\n              this.commonServices.prescribeMedLoader = false; this.changedetect.detectChanges();\r\n              this.commonServices.setlogvalue(false, \"\", \"\", \"CeasePopupComponent\", \"close\", payload);\r\n              this.commonServices.toastopen(errorconfig.error_64.message, 'error', errorconfig.error_64.code);\r\n              this.commonServices.errorResponse(errorconfig.error_64.code, errorconfig.error_64.message);\r\n              return;\r\n            }\r\n            if (res.response_code == 0) {\r\n              this.commonServices.toastopen(res.response_message, 'success');\r\n              this.closeEvent.emit(res);\r\n              this.elementRef.nativeElement.remove();\r\n              this.commonServices.prescribeMedLoader = false; this.changedetect.detectChanges();\r\n            } else {\r\n              this.commonServices.setlogvalue(false, res.response_message, res.response_message, \"CeasePopupComponent\", \"close\", payload);\r\n              this.commonServices.toastopen(res.response_message, 'error', res.error_code);\r\n              this.commonServices.errorResponse(res.error_code, res.response_message);\r\n              this.commonServices.prescribeMedLoader = false; this.changedetect.detectChanges();\r\n            }\r\n          }\r\n          catch (ex: any) {\r\n            this.commonServices.prescribeMedLoader = false; this.changedetect.detectChanges();\r\n            this.commonServices.setlogvalue(false, ex.message, ex.stack, \"CeasePopupComponent\", \"close\", payload);\r\n          }\r\n        }, error => {\r\n          this.commonServices.setlogvalue(false, error.message, error.stack, \"CeasePopupComponent\", \"close\", payload);\r\n          this.commonServices.toastopen(errorconfig.error_65.message + error, \"error\", errorconfig.error_65.code);\r\n          this.commonServices.errorResponse(errorconfig.error_65.code, errorconfig.error_65.message + error);\r\n          this.commonServices.prescribeMedLoader = false; this.changedetect.detectChanges();\r\n        });\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"CeasePopupComponent\", \"close\", payload);\r\n    }\r\n  }\r\n}\r\n","<div class=\"ReactModalPortal e_prescription_box\">\r\n    <div class=\"ReactModal__Overlay ReactModal__Overlay--after-open open_popup\">\r\n        <div class=\"ReactModal__Content ReactModal__Content--after-open popup_header e_prescription_popup_inner_box\"\r\n            tabindex=\"-1\" role=\"dialog\" aria-modal=\"true\">\r\n            <!-- <div>\r\n                <p class=\"rx_record_change_popup\">Reason</p><button type=\"button\"\r\n                    class=\"rx_record_change_popup_close\">X</button>\r\n            </div> -->\r\n            <p class=\"rx_record_change_popup\">Reason</p><button type=\"button\" class=\"rx_record_popup_close\"\r\n                (click)=\"close(1)\" [disabled]=\"this.commonServices.prescribeMedLoader\">X</button>\r\n            <hr>\r\n            <div>\r\n                <div\r\n                    class=\"mdl-cell mdl-cell--12-col mdl-cell--8-col-tablet mdl-cell--4-col-phone new_rx_mobile_fullwidth\">\r\n                    <p class=\"new_rx_popup_label\">Reason For Cease:</p>\r\n                    <div class=\"rx_record_change_popup_select_box styled-1\">\r\n                        <select name=\"cease\" class=\"cease-reason\" id=\"cease\" (change)=\"change($event)\"\r\n                            [(ngModel)]=\"Reason\">\r\n                            <option value=\"\">--Please select reason for cease--</option>\r\n                            <option *ngFor=\"let item of modaldata\" [value]=\"item.reason\">{{item.reason}}</option>\r\n                            <option value=\"Others\">Others</option>\r\n                        </select>\r\n\r\n                        <!-- <button type=\"button\" class=\"rx_record_popup_close\" *ngIf=\"!ShowDropdown\"\r\n                            (click)=\"showDropdownMed()\">X</button> -->\r\n                    </div>\r\n                    <textarea *ngIf=\"!ShowDropdown\" autocomplete=\"off\" [(ngModel)]=\"reasonfield\" rows=\"3\"\r\n                        maxlength=\"500\" placeholder=\"Please enter the reason for cease\"\r\n                        class=\"w-100 new_rx_popup_tab_textarea mt-10px\"></textarea>\r\n                </div>\r\n                <!-- <div\r\n                    class=\"mdl-cell mdl-cell--12-col mdl-cell--8-col-tablet mdl-cell--4-col-phone new_rx_mobile_fullwidth\">\r\n                    <p class=\"new_rx_popup_label\">Ceased Date:</p><input\r\n                        class=\"mdl-textfield__input new_rx_popup_tab_input\" type=\"date\" id=\"RxCeaseDate\"\r\n                        placeholder=\"../../....\" value=\"\" [(ngModel)]=\"Ceased_Date\">\r\n                </div> -->\r\n                <hr style=\"margin: 0px;\"><br>\r\n                <div style=\"display: inline-block; float: right;\">\r\n                    <div style=\"display: inline-block; margin-right: 5px;\"><button\r\n                            class=\"mdl-button mdl-js-button mdl-button--raised mdl-button--colored rx_record_change_popup_cancel\"\r\n                            [disabled]=\"this.commonServices.prescribeMedLoader\" (click)=\"close(1)\">Cancel</button>\r\n                    </div>\r\n                    <!-- <div style=\"display: inline-block;\"><button\r\n                            class=\"mdl-button mdl-js-button mdl-button--raised mdl-button--colored rx_record_change_popup_submit\"\r\n                            (click)=\"close(2)\">Submit</button>\r\n                    </div> -->\r\n                    <button\r\n                        class=\"mdl-button mdl-js-button mdl-button--raised mdl-button--colored rx_record_change_popup_submit\"\r\n                        style=\"position: relative;width: 100px;padding: 0;\"\r\n                        [disabled]=\"this.commonServices.prescribeMedLoader\" (click)=\"close(2)\">\r\n                        <ng-container *ngIf=\"this.commonServices.prescribeMedLoader\">\r\n                            <p class=\"rx_loader_button m-v4\"\r\n                                style=\"position: absolute;margin: 0; top: 8px;left: 40%;width: 20px; height: 20px;\">\r\n                            </p>\r\n                        </ng-container>\r\n                        <ng-container *ngIf=\"!this.commonServices.prescribeMedLoader\">\r\n                            Submit\r\n                        </ng-container><i class=\"fa fa-angle-down\" style=\"margin-left: 5px; color: #fff\"></i>\r\n                    </button>\r\n                </div>\r\n            </div>\r\n        </div>\r\n    </div>\r\n    <ng-template #rxwidgets> </ng-template>","import { Component, OnInit, Output, EventEmitter, ViewChild, TemplateRef, ElementRef, ChangeDetectorRef, Input } from '@angular/core';\r\nimport { CommonServices } from '../services/common';\r\nimport { config, errorconfig } from '../environments/config';\r\nimport { ApiService } from '../services/api.service';\r\n@Component({\r\n  selector: 'app-reissue-popup',\r\n  templateUrl: './reissue-popup.component.html',\r\n  styleUrls: ['./reissue-popup.component.css']\r\n})\r\nexport class ReissuePopupComponent implements OnInit {\r\n  @Output() closeEvent = new EventEmitter();\r\n  @Output() submitEvent = new EventEmitter();\r\n  @ViewChild('rxwidgets', { static: true }) content!: TemplateRef<any>;\r\n  @Input() modaldata: any;\r\n  AddressSendToAddType = \"SMS\"\r\n  MobileNo: any;\r\n  Email: any;\r\n  rxEmailFlag = true;\r\n  isResend: boolean = false;\r\n  constructor(private elementRef: ElementRef, public commonServices: CommonServices, private changedetect: ChangeDetectorRef, private apiService: ApiService) {\r\n    this.MobileNo = this.commonServices.patientDetails.phone;\r\n    this.Email = this.commonServices.isScriptToPharmacy == 1 && this.commonServices.pharmacyEmail != null && this.commonServices.pharmacyEmail != \"\"? this.commonServices.pharmacyEmail : this.commonServices.patientDetails.email;\r\n    this.commonServices.isScriptToPharmacy == 1 ? this.AddressSendToAddType = \"Email\" : this.AddressSendToAddType = \"SMS\"\r\n  }\r\n  ngOnInit() {\r\n    this.isResend = this.modaldata?.isResend || false;\r\n    this.AddressSendToAddType = this.modaldata?.isResend ? \"Email\" : this.AddressSendToAddType;\r\n    this.changedetect.detectChanges();\r\n    try {\r\n      document.documentElement.style.setProperty('--eprescription_popup_width', '450px');\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"ReissuePopupComponent\", \"ngOnInit\");\r\n    }\r\n  }\r\n\r\n  close(index: any): any {\r\n    var payload = {};\r\n    try {\r\n      if (index != 1) {\r\n        if (this.AddressSendToAddType.toLowerCase() == \"sms\") {\r\n          if (this.commonServices.IsNullOrEmpty(this.MobileNo.trim())) {\r\n            this.commonServices.toastopen(errorconfig.error_57.message, \"error\", errorconfig.error_57.code);\r\n            this.commonServices.errorResponse(errorconfig.error_57.code, errorconfig.error_57.message);\r\n            return;\r\n          }\r\n          var validby = this.commonServices.validByMobileNo(this.MobileNo.trim());\r\n          if (validby == 1) {\r\n            this.commonServices.toastopen(errorconfig.error_57.message, \"error\", errorconfig.error_57.code);\r\n            this.commonServices.errorResponse(errorconfig.error_57.code, errorconfig.error_57.message);\r\n            return;\r\n          }\r\n          if (validby == 3) {\r\n            this.commonServices.toastopen(errorconfig.error_58.message, \"error\", errorconfig.error_58.code);\r\n            this.commonServices.errorResponse(errorconfig.error_58.code, errorconfig.error_58.message);\r\n            return;\r\n          }\r\n          if (validby == 2) {\r\n            if (this.MobileNo.charAt(0) != '0') { this.MobileNo = \"0\" + this.MobileNo; }\r\n          } else {\r\n            this.commonServices.toastopen(errorconfig.error_58.message, \"error\", errorconfig.error_58.code);\r\n            this.commonServices.errorResponse(errorconfig.error_58.code, errorconfig.error_58.message);\r\n            return;\r\n          }\r\n          this.Email = \"\";\r\n        }\r\n        if (this.AddressSendToAddType.toLowerCase() == \"email\") {\r\n          if (this.commonServices.IsNullOrEmpty(this.Email.trim())) {\r\n            this.commonServices.toastopen(errorconfig.error_59.message, \"error\", errorconfig.error_59.code);\r\n            this.commonServices.errorResponse(errorconfig.error_59.code, errorconfig.error_59.message);\r\n            return;\r\n          }\r\n          if (!this.commonServices.validByEmailNo(this.Email.trim())) {\r\n            this.commonServices.toastopen(errorconfig.error_60.message, \"error\", errorconfig.error_60.code);\r\n            this.commonServices.errorResponse(errorconfig.error_60.code, errorconfig.error_60.message);\r\n            return;\r\n          }\r\n          this.MobileNo = \"\";\r\n        }\r\n        var addressValue = this.AddressSendToAddType.toLowerCase() == \"sms\" ? this.MobileNo.trim() : this.Email.trim();\r\n        this.commonServices.prescribeMedLoader = true; this.changedetect.detectChanges();\r\n        payload = {\r\n          request_type: \"parameter\",\r\n          rxId: this.commonServices.rxid,\r\n          addressType: this.AddressSendToAddType,\r\n          addressValue: addressValue\r\n        }\r\n        this.apiService.Get(config.PHYSICIAN.RX_RE_ISSUE + this.commonServices.rxid + \"&addressType=\" + this.AddressSendToAddType + \"&addressValue=\" + addressValue).subscribe((res: any) => {\r\n          try {\r\n            if (this.commonServices.IsNullOrEmpty(res)) {\r\n              this.commonServices.prescribeMedLoader = false; this.changedetect.detectChanges();\r\n              this.commonServices.setlogvalue(false, \"\", \"\", \"ReissuePopupComponent\", \"close\", payload);\r\n              this.commonServices.toastopen(errorconfig.error_64.message, 'error', errorconfig.error_64.code);\r\n              this.commonServices.errorResponse(errorconfig.error_64.code, errorconfig.error_64.message);\r\n              return;\r\n            }\r\n            if (res.response_code == 0) {\r\n              this.commonServices.toastopen(res.response_message, 'success');\r\n              this.closeEvent.emit(res);\r\n              this.elementRef.nativeElement.remove();\r\n              this.commonServices.prescribeMedLoader = false; this.changedetect.detectChanges();\r\n            } else {\r\n              this.commonServices.setlogvalue(false, res.response_message, res.response_message, \"ReissuePopupComponent\", \"close\", payload);\r\n              this.commonServices.prescribeMedLoader = false; this.changedetect.detectChanges();\r\n              this.commonServices.toastopen(res.response_message, 'error', res.error_code);\r\n              this.commonServices.errorResponse(res.error_code, res.response_message);\r\n            }\r\n          }\r\n          catch (ex: any) {\r\n            this.commonServices.prescribeMedLoader = false; this.changedetect.detectChanges();\r\n            this.commonServices.setlogvalue(false, ex.message, ex.stack, \"ReissuePopupComponent\", \"close\", payload);\r\n          }\r\n        }, error => {\r\n          this.commonServices.prescribeMedLoader = false; this.changedetect.detectChanges();\r\n          this.commonServices.setlogvalue(false, error.message, error.stack, \"ReissuePopupComponent\", \"close\", payload);\r\n          this.commonServices.toastopen(errorconfig.error_65.message + error, \"error\", errorconfig.error_65.code);\r\n          this.commonServices.errorResponse(errorconfig.error_65.code, errorconfig.error_65.message + error);\r\n        });\r\n      }\r\n      else {\r\n        this.commonServices.prescribeMedLoader = false; this.changedetect.detectChanges();\r\n        this.closeEvent.emit(null);\r\n        this.elementRef.nativeElement.remove();\r\n        this.AddressSendToAddType = \"\";\r\n        this.MobileNo = \"\";\r\n        this.Email = \"\";\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"ReissuePopupComponent\", \"close\", payload);\r\n    }\r\n  }\r\n\r\n  radioChange(index: number) {\r\n    try {\r\n      if (index == 1) {\r\n        this.AddressSendToAddType = \"SMS\"\r\n      }\r\n      else {\r\n        this.AddressSendToAddType = \"Email\"\r\n      }\r\n      this.changedetect.detectChanges();\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"ReissuePopupComponent\", \"radioChange\");\r\n    }\r\n  }\r\n\r\n  checkMobile(evt: any): any {\r\n    try {\r\n      var charCode = (evt.which) ? evt.which : evt.keyCode;\r\n      if (charCode < 48 || charCode > 57)\r\n        return false;\r\n      return true;\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"ReissuePopupComponent\", \"checkMobile\");\r\n    }\r\n  }\r\n}\r\n","<div class=\"ReactModalPortal e_prescription_box\">\r\n  <div class=\"ReactModal__Overlay ReactModal__Overlay--after-open open_popup\">\r\n    <div class=\"ReactModal__Content ReactModal__Content--after-open popup_header e_prescription_popup_inner_box\"\r\n      tabindex=\"-1\" role=\"dialog\" aria-modal=\"true\">\r\n      <p class=\"rx_record_change_popup\">Confirm Patient Contact Details</p><button type=\"button\"\r\n        class=\"rx_record_popup_close\" (click)=\"close(1)\" [disabled]=\"this.commonServices.prescribeMedLoader\">X</button>\r\n      <div class=\"content\">\r\n        <hr class=\"m-0\">\r\n        <div class=\"mdl-cell mdl-cell--12-col mdl-cell--8-col-tablet mdl-cell--4-col-phone  new_rx_mobile_fullwidth\">\r\n          <div class=\"details_width_flex\"><label class=\"label\">Send Token Via<span class=\"text_content\">*</span></label>\r\n          </div>\r\n          <div class=\"rx_new_popup_checkbox\">\r\n            <div class=\"rx_new_radiobox_button rx-btn rx_radio_overall\">\r\n              <label class=\"rx_radio_label\" *ngIf=\"!isResend\"><input [disabled]=\"this.commonServices.isScriptToPharmacy==1\" type=\"radio\" class=\"mdl-radio__button custom-radio-button\"\r\n                  name=\"AddressSendToAddType\" [value]=\"'SMS'\" (click)=\"radioChange(1)\"\r\n                  [checked]=\"AddressSendToAddType.toLowerCase() == 'sms'\" /><span\r\n                  class=\"mdl-radio__label radio_txt\">SMS</span></label>\r\n\r\n              <label class=\"rx_radio_label\"><input type=\"radio\"\r\n                  [checked]=\"AddressSendToAddType.toLowerCase() == 'email'\" (click)=\"radioChange(2)\"\r\n                  class=\"mdl-radio__button d-inline radio custom-radio-button\" name=\"AddressSendToAddType\"\r\n                  [value]=\"'Email'\"><span class=\"mdl-radio__label radio_txt\">E-Mail</span>\r\n              </label>\r\n            </div>\r\n          </div>\r\n        </div>\r\n        <div *ngIf=\"AddressSendToAddType.toLowerCase() == 'sms'\"\r\n          class=\"mdl-cell mdl-cell--12-col mdl-cell--8-col-tablet mdl-cell--4-col-phone mobilenumber-input addpatient-details-col \">\r\n          <div class=\"mdl-textfield mdl-js-textfield first-row-input\">\r\n            <div class=\"details_width_flex\"><label for=\"mobile-number\" class=\"no_txt_clr\">Mobile\r\n                Number</label></div>\r\n            <div class=\"details_flag_number\">\r\n              <div class=\"img-w\"><span class=\"addpatient-country-flag\"><img\r\n                    src=\"https://passets.hola.health/rx-widgets/rx-australia.png\"></span>\r\n              </div>\r\n              <div class=\"details_mobileNo_input\"><input autocomplete=\"off\" class=\"mdl-textfield__input input_textfield\"\r\n                  type=\"tel\" id=\"mobile-number\" (keypress)=\"checkMobile($event)\" placeholder=\"04 123 45678\"\r\n                  [(ngModel)]=\"MobileNo\" style=\"text-decoration: none; border-bottom: none;\">\r\n              </div>\r\n            </div>\r\n          </div>\r\n        </div>\r\n\r\n        <div *ngIf=\"AddressSendToAddType.toLowerCase() == 'email'\"\r\n          class=\"mdl-cell mdl-cell--12-col mdl-cell--8-col-tablet mdl-cell--4-col-phone mobilenumber-input addpatient-details-col \">\r\n          <div class=\"mdl-textfield mdl-js-textfield first-row-input\">\r\n            <div class=\"details_width_flex\"><label for=\"mobile-number\" class=\"no_txt_clr\">Email\r\n              </label></div>\r\n            <div class=\"details_flag_number\">\r\n              <div class=\"details_mobileNo_input\"><input autocomplete=\"off\" class=\"mdl-textfield__input input_textfield\"\r\n                  type=\"email\" id=\"mobile-number\" placeholder=\"text@gmail.com\" [(ngModel)]=\"Email\"\r\n                  style=\"text-decoration: none; border-bottom: none;\"></div>\r\n            </div>\r\n          </div>\r\n        </div>\r\n        <hr class=\"m-0\"><br>\r\n        <div class=\"btn-bottom\">\r\n          <div class=\"btn-outer\"><button class=\"mdl-button mdl-js-button  rx_record_change_popup_cancel cancel_send\"\r\n              (click)=\"close(1)\" [disabled]=\"this.commonServices.prescribeMedLoader\">Cancel</button>\r\n          </div>\r\n          <div class=\"btn-send\">\r\n            <!-- <button class=\"mdl-button mdl-js-button  rx_record_change_popup_submit\" (click)=\"close(2)\">Re-Issue</button> -->\r\n            <button class=\"mdl-button mdl-js-button  rx_record_change_popup_submit\"\r\n              style=\"position: relative;width: 110px;padding: 0;height: 38px !important;\"\r\n              [disabled]=\"this.commonServices.prescribeMedLoader\" (click)=\"close(2)\">\r\n              <ng-container *ngIf=\"this.commonServices.prescribeMedLoader\">\r\n                <p class=\"rx_loader_button m-v4\"\r\n                  style=\"position: absolute;margin: 0; top: 8px;left: 40%;width: 20px; height: 20px;\">\r\n                </p>\r\n              </ng-container>\r\n              <ng-container *ngIf=\"!this.commonServices.prescribeMedLoader\">\r\n                {{!isResend ? 'Re-Issue' : 'Resend'}}\r\n              </ng-container><i class=\"fa fa-angle-down\" style=\"margin-left: 5px; color: #fff\"></i>\r\n            </button>\r\n          </div>\r\n        </div>\r\n      </div>\r\n    </div>\r\n\r\n    <ng-template #rxwidgets> </ng-template>","import { ChangeDetectorRef, Component, ElementRef, EventEmitter, OnInit, Output, TemplateRef, ViewChild } from '@angular/core';\r\nimport { CommonServices } from '../services/common';\r\nimport { config, errorconfig } from '../environments/config';\r\nimport { ApiService } from '../services/api.service';\r\n@Component({\r\n  selector: 'app-close-popup',\r\n  templateUrl: './close-popup.component.html',\r\n  styleUrls: ['./close-popup.component.css']\r\n})\r\nexport class ClosePopupComponent implements OnInit {\r\n  modaldata: any;\r\n  @ViewChild('rxwidgets', { static: true }) content!: TemplateRef<any>;\r\n  @Output() closeEvent = new EventEmitter();\r\n  @Output() submitEvent = new EventEmitter();\r\n  constructor(private elementRef: ElementRef, public commonServices: CommonServices, public apiService: ApiService, private cdRef: ChangeDetectorRef) {\r\n    document.documentElement.style.setProperty('--subpop_wid', `450px`);\r\n  }\r\n\r\n  ngOnInit(): void {\r\n  }\r\n\r\n  close(): void {\r\n    try {\r\n      this.elementRef.nativeElement.remove();\r\n      this.closeEvent.emit(null);\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"ClosePopupComponent\", \"close\");\r\n    }\r\n  }\r\n\r\n  submit() {\r\n    var payload = {};\r\n    try {\r\n      this.commonServices.prescribeMedLoader = true; this.cdRef.detectChanges();\r\n      var url = this.modaldata == 1 ? config.PHYSICIAN.RX_CANCEL : config.PHYSICIAN.RX_CANCEL_DRAFT;\r\n      payload = {\r\n        request_type: \"parameter\",\r\n        rxId: this.commonServices.rxid\r\n      }\r\n      this.apiService.Get(url + this.commonServices.rxid).subscribe((res: any) => {\r\n        try {\r\n          if (this.commonServices.IsNullOrEmpty(res)) {\r\n            this.commonServices.prescribeMedLoader = false; this.cdRef.detectChanges();\r\n            this.commonServices.setlogvalue(false, \"\", \"\", \"ClosePopupComponent\", \"submit\", payload);\r\n            this.commonServices.toastopen(errorconfig.error_64.message, 'error', errorconfig.error_64.code);\r\n            this.commonServices.errorResponse(errorconfig.error_64.code, errorconfig.error_64.message);\r\n            return;\r\n          }\r\n          if (res.response_code == 0) {\r\n            this.commonServices.toastopen(res.response_message, 'success');\r\n            this.closeEvent.emit(res);\r\n            this.elementRef.nativeElement.remove();\r\n            this.commonServices.prescribeMedLoader = false; this.cdRef.detectChanges();\r\n          }\r\n          else if (res.isDispensed) {\r\n            this.commonServices.prescribeMedLoader = false; this.cdRef.detectChanges();\r\n            this.closeEvent.emit(res);\r\n            this.elementRef.nativeElement.remove();\r\n            this.commonServices.toastopen(res.response_message, 'error', res.error_code);\r\n            this.commonServices.errorResponse(res.error_code, res.response_message);\r\n            \r\n          } else {\r\n            this.commonServices.prescribeMedLoader = false; this.cdRef.detectChanges();\r\n            this.commonServices.setlogvalue(false, res.response_message, res.response_message, \"ClosePopupComponent\", \"submit\", payload);\r\n            this.commonServices.toastopen(res.response_message, 'error', res.error_code);\r\n            this.commonServices.errorResponse(res.error_code, res.response_message);\r\n          }\r\n        }\r\n        catch (ex: any) {\r\n          this.commonServices.prescribeMedLoader = false; this.cdRef.detectChanges();\r\n          this.commonServices.setlogvalue(false, ex.message, ex.stack, \"ClosePopupComponent\", \"submit\", payload);\r\n        }\r\n      }, error => {\r\n        this.commonServices.prescribeMedLoader = false; this.cdRef.detectChanges();\r\n        this.commonServices.setlogvalue(false, error.message, error.stack, \"ClosePopupComponent\", \"submit\", payload);\r\n        this.commonServices.toastopen(errorconfig.error_65.message + error, \"error\", errorconfig.error_65.code);\r\n        this.commonServices.errorResponse(errorconfig.error_65.code, errorconfig.error_65.message + error);\r\n      });\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"ClosePopupComponent\", \"submit\", payload);\r\n    }\r\n  }\r\n}\r\n","<div class=\"new_rx_authority_popup\">\r\n    <div class=\"ReactModal__Overlay ReactModal__Overlay--after-open open_popup\">\r\n        <div class=\"ReactModal__Content ReactModal__Content--after-open view_pop include_brand_box_popup\" tabindex=\"-1\"\r\n            role=\"dialog\" aria-modal=\"true\">\r\n            <div>\r\n                <div class=\"new_rx_IncludeBrand_popup_text\">{{modaldata==1?'Are you sure you want to cancel the prescription?':'Are you sure you want to cancel the draft?'}}</div>\r\n            </div>\r\n            <div class=\"row\" style=\"justify-content:center\">\r\n                <div class=\"mdl-cell mdl-cell--12-col mdl-cell--12-col-tablet mdl-cell--12-col-phone new_rx_popup_header_box_col new_rx_popup_header_box_col_padding\"\r\n                    style=\"text-align: center;\">\r\n                    <button class=\"mdl-button mdl-js-button mdl-button--raised mdl-button--colored backButton\"\r\n                        (click)=close() style=\"width: 100px;margin: 0px;\" [disabled]=\"this.commonServices.prescribeMedLoader\">No</button>\r\n                    <!-- <button class=\"mdl-button mdl-js-button mdl-button--raised mdl-button--colored backButton\"\r\n                        (click)=\"submit()\" style=\"width: 90px;\">Yes</button> -->\r\n                    <button class=\"mdl-button mdl-js-button mdl-button--raised mdl-button--colored nextButton\"\r\n                        style=\"position: relative;width: 100px;padding: 0;\"\r\n                        [disabled]=\"this.commonServices.prescribeMedLoader\" (click)=\"submit()\">\r\n                        <ng-container *ngIf=\"this.commonServices.prescribeMedLoader \">\r\n                            <p class=\"rx_loader_button m-v4\"\r\n                                style=\"position: absolute;margin: 0; top: 8px;left: 40%;width: 20px; height: 20px;\">\r\n                            </p>\r\n                        </ng-container>\r\n                        <ng-container *ngIf=\"!this.commonServices.prescribeMedLoader\">\r\n                            Yes\r\n                        </ng-container><i class=\"fa fa-angle-down\" style=\"margin-left: 5px; color: #fff\"></i>\r\n                    </button>\r\n                </div>\r\n            </div>\r\n        </div>\r\n    </div>\r\n</div>\r\n<ng-template #rxwidgets> </ng-template>\r\n","import { ChangeDetectorRef, Component, ElementRef, EventEmitter, HostListener, OnInit, Output, Renderer2, TemplateRef, ViewChild, ViewContainerRef } from '@angular/core';\r\nimport { ApiService } from '../services/api.service';\r\nimport { CommonServices } from '../services/common';\r\nimport { BrandIncludeComponent } from '../brand-include/brand-include.component';\r\nimport { AvailableFormulationsComponent } from '../brand-include/available-formulations/available-formulations.component';\r\nimport { DatePipe } from '@angular/common';\r\nimport { IsAuthorityComponent } from '../is-authority/is-authority.component';\r\nimport { RealTimePrescriptionMonitoringComponent } from '../real-time-prescription-monitoring/real-time-prescription-monitoring.component';\r\nimport { ConfirmPatientContactDetailsComponent } from '../confirm-patient-contact-details/confirm-patient-contact-details.component';\r\nimport { PasswordComponent } from '../password/password.component';\r\nimport { config, errorconfig } from '../environments/config';\r\nimport { CeasePopupComponent } from '../cease-popup/cease-popup.component';\r\nimport { ReissuePopupComponent } from '../reissue-popup/reissue-popup.component';\r\nimport { ClosePopupComponent } from '../close-popup/close-popup.component';\r\n\r\n@Component({\r\n  selector: 'app-rx',\r\n  templateUrl: './rx.component.html',\r\n  styleUrls: ['./rx.component.scss'],\r\n})\r\nexport class RxComponent implements OnInit {\r\n  @ViewChild('MedicineDropdown', { static: false }) wrapperRef!: ElementRef;\r\n  @ViewChild('PrescribeDropdown', { static: false }) prescribeDropdownRef!: ElementRef;\r\n  @ViewChild('DoseDropdown', { static: false }) doseRef!: ElementRef;\r\n  @ViewChild('FreqDropdown', { static: false }) freqRef!: ElementRef;\r\n  @ViewChild('stpDropdown', { static: false }) stpRef!: ElementRef;\r\n  @ViewChild('FoodDropdown', { static: false }) foodRef!: ElementRef;\r\n  @ViewChild('InstructionDropdown', { static: false }) InstructionRef!: ElementRef;\r\n  @ViewChild('RouteDropdown', { static: false }) routeRef!: ElementRef;\r\n  @ViewChild('PurposeDropdown', { static: false }) purposeRef!: ElementRef;\r\n\r\n  @Output() closeEvent = new EventEmitter();\r\n  @Output() submitEvent = new EventEmitter();\r\n  @ViewChild('selectActionDropdown', { static: false })\r\n  selectActionDropdownRef!: ElementRef;\r\n  selectActionBtnDropdown = false;\r\n  doseData = [];\r\n  frequencyData = [];\r\n  sendtopharmacyData: any = [];\r\n  foodData = [];\r\n  purposeData = [];\r\n  routeData = [];\r\n  ceaseData = [];\r\n  instructionData: any = [];\r\n  routeDataFilter = '';\r\n  InstructionId = '';\r\n  // timer: any;\r\n  //waitTime = 2500;\r\n  isStillSearching = false;\r\n  page = 1;\r\n  selectedMedicineDropdown = false;\r\n  selectPBTNDropdown = false;\r\n  selectDoseDropdown = false;\r\n  selectFreqDropdown = false;\r\n  selectstpDropdown = false;\r\n  selectFoodDropdown = false;\r\n  selectInstructionDropdown = false;\r\n  selectInstructionDropdownList = true;\r\n  selectRouteDropdown = false;\r\n  selectPurposeDropdown = false;\r\n  mediSearchValue = '';\r\n  tempMediSearchValue = '';\r\n  InstructionDescription = '';\r\n  searchMedicineLoader = false;\r\n  favMedicineLoader = false;\r\n  searchedMedicineList: any = [];\r\n  selectedMedicineListOrginal: any = [];\r\n  onclickMedicineLoader = false;\r\n  rxOnlyPBS = false;\r\n  rxPrivate = false;\r\n  restrictions = null;\r\n  isShowRestrictions = false;\r\n  prescribeAS_PBS = true;\r\n  prescribeAS_RPBS = true;\r\n  brandMedicproductId = '';\r\n  brandMedicpbsCode = '';\r\n  brandMedicQty = '';\r\n  brandMedicRep = '';\r\n  selectedBrandIndex = '';\r\n  moleculeNameText = '';\r\n  moleculeNameType = '';\r\n  moleculeStrengthText = '';\r\n  isRtpmNext = false;\r\n  selectionbtnLoader: boolean = false;\r\n  PopupScreenLoader = false;\r\n  isNonPbsFlag: any = false;\r\n  abortBtnFlag = false;\r\n  abortdisable = false;\r\n  responseData: any = {\r\n    isAbort: false,\r\n    isPrescribe: false,\r\n    abortSuccess: false,\r\n    prescribeSuccess: false,\r\n    prescribedata: \"\",\r\n    abortMsg: \"\",\r\n    PrescribeMsg: \"\",\r\n    prescribeError: false,\r\n    abortError: false,\r\n    prescribeErr_code: \"\",\r\n    abortErr_code: \"\",\r\n    body: \"\"\r\n  }\r\n  prodHiddenName = \"\";\r\n  ProductType = \"\";\r\n  ProductSearchName = \"\";\r\n  searchMedicinesLength: any = \"\";\r\n  searchMedicinesPageNumber = 1;\r\n  searchBynameLength: any = \"\";\r\n  searchBynamePageNumber = 1;\r\n  isepriscribeprint = false;\r\n  editInstructionFlag = false;\r\n  PrimarySearchSpinner = false;\r\n  SecondarySearchSpinner = false;\r\n  prescribeAS_RPBS_URA = true;\r\n  tempInstructionDescription = \"\";\r\n  isPrescribeAsPrivateOnly = false;\r\n  tempAuthorityFormNo = \"\";\r\n  clientId: any = \"\";\r\n  showFavouriteMed = false;\r\n  isResend:boolean = false;\r\n  @ViewChild('rxwidgets', { static: true }) content!: TemplateRef<any>;\r\n  @ViewChild('tooltipdemo') myTemplate!: TemplateRef<any>;\r\n  @ViewChild('test', { static: true }) tooltip!: null;\r\n  constructor(\r\n    public apiService: ApiService,\r\n    public commonServices: CommonServices,\r\n    private elementRef: ElementRef,\r\n    private changedetect: ChangeDetectorRef,\r\n    public datePipe: DatePipe,\r\n    private renderer: Renderer2,\r\n    private elRef: ElementRef,\r\n    private viewRefContainer: ViewContainerRef,\r\n  ) {\r\n    document.documentElement.style.setProperty('--pop_wid', `1200px`);\r\n    document.documentElement.style.setProperty('--popupw', `1200px`);\r\n    document.documentElement.style.setProperty('--headerpadding', `0px`);\r\n    document.documentElement.style.setProperty('--popuph', `650px`);\r\n    document.documentElement.style.setProperty('--headerfontweight', `400`);\r\n    this.renderer.listen('document', 'click', (event: MouseEvent) => {\r\n      if (!this.elRef.nativeElement.contains(event.target as Node)) {\r\n        this.hideToolTip();\r\n      }\r\n    });\r\n  }\r\n\r\n  hideToolTip() {\r\n    try {\r\n      if (this.tooltip) {\r\n        this.renderer.removeChild(this.elRef.nativeElement, this.tooltip);\r\n        this.tooltip = null;\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"hideToolTip\");\r\n    }\r\n  }\r\n\r\n  @HostListener('click', ['$event'])\r\n  onclick(event: any) {\r\n    try {\r\n      if (event.target.className == \"rx_tooltip_inner_box\" || event.target.className.includes(\"__react_component_tooltip\")) {\r\n      } else {\r\n        if (event.target.id == 'show-tooltip-id') {\r\n          this.hideToolTip();\r\n          if (this.elRef.nativeElement.contains(event.target as Node)) { this.createToolTip(event) }\r\n        } else { this.hideToolTip(); }\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"onclick\");\r\n    }\r\n  }\r\n\r\n  ngOnInit(): void {\r\n    try {\r\n      this.clientId = this.commonServices.getCredetial();\r\n      if (!this.commonServices.editPrescription) {\r\n        this.commonServices.clearMedicalPrescriptionData();\r\n      }\r\n      this.commonServices.closeErrorResponse = null;\r\n      this.changedetect.detectChanges();\r\n      this.getAllMimsValue();\r\n      this.getInstructionValues();\r\n      this.getFavourtiesList();\r\n      if (this.commonServices.editPrescription) {\r\n        this.setEditValues(this.commonServices.rxDetails);\r\n      }\r\n      else {\r\n        if (this.commonServices.isMedicineRestrict)\r\n          this.getRestrictedMedicine();\r\n        this.commonServices.rxDetails = {};\r\n        this.commonServices.isFetching = true;\r\n        this.changedetect.detectChanges();\r\n      }\r\n      this.commonServices.patientDetails.ihiNumber = this.commonServices.patientDetails.ihiNumber == null || this.commonServices.patientDetails.ihiNumber == undefined || this.commonServices.patientDetails.ihiNumber == \"\" ? 0 : this.commonServices.patientDetails.ihiNumber\r\n      this.commonServices.facilityDetails.hpioNumber = this.commonServices.facilityDetails.hpioNumber == null || this.commonServices.facilityDetails.hpioNumber == undefined || this.commonServices.facilityDetails.hpioNumber == \"\" ? 0 : this.commonServices.facilityDetails.hpioNumber\r\n      this.commonServices.physicianDetails.hpiiNumber = this.commonServices.physicianDetails.hpiiNumber == null || this.commonServices.physicianDetails.hpiiNumber == undefined || this.commonServices.physicianDetails.hpiiNumber == \"\" ? 0 : this.commonServices.physicianDetails.hpiiNumber\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"ngOnInit\");\r\n    }\r\n  }\r\n\r\n  getRestrictedMedicine() {\r\n    try {\r\n      this.onclickMedicineLoader = true;\r\n      this.apiService.Get(config.PHYSICIAN.GET_RESTRICTED_MEDICINE).subscribe((res: any) => {\r\n        try {\r\n          if (this.commonServices.IsNullOrEmpty(res)) {\r\n            this.onclickMedicineLoader = false; this.changedetect.detectChanges();\r\n            this.commonServices.setlogvalue(false, \"\", \"\", \"RxComponent\", \"getRestrictedMedicine\");\r\n            this.commonServices.toastopen(errorconfig.error_64.message, 'error', errorconfig.error_64.code);\r\n            this.commonServices.errorResponse(errorconfig.error_64.code, errorconfig.error_64.message);\r\n            return;\r\n          }\r\n          if (res.response_code == 0) {\r\n            this.commonServices.selectedMedicineList = this.selectedMedicineListOrginal = res.response;\r\n            if (!this.commonServices.IsNullOrEmpty(this.commonServices.rxDetails?.productId)) {\r\n              var index = this.commonServices.selectedMedicineList.findIndex((x: { productId: any; }) => x.productId == Number(this.commonServices.rxDetails.productId));\r\n              var selecteddata = this.commonServices.selectedMedicineList.splice(index, 1);\r\n              if (!this.commonServices.IsNullOrEmpty(selecteddata) && selecteddata.length > 0) {\r\n                this.commonServices.selectedMedicineList.unshift(selecteddata[0]);\r\n              }\r\n            }\r\n            this.onclickMedicineLoader = false;\r\n            this.PopupScreenLoader = false;\r\n            this.changedetect.detectChanges();\r\n          }\r\n          else {\r\n            this.onclickMedicineLoader = false;\r\n            this.changedetect.detectChanges();\r\n            this.commonServices.setlogvalue(false, res.response_message, res.response_message, \"RxComponent\", \"getRestrictedMedicine\");\r\n            this.commonServices.toastopen(res.response_message, 'error', res.error_code);\r\n            this.commonServices.errorResponse(res.error_code, res.response_message);\r\n          }\r\n        }\r\n        catch (ex: any) {\r\n          this.onclickMedicineLoader = false;\r\n          this.changedetect.detectChanges();\r\n          this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"getRestrictedMedicine\");\r\n        }\r\n      }, error => {\r\n        this.commonServices.selectedMedicineList = [];\r\n        this.selectedMedicineListOrginal = [];\r\n        this.onclickMedicineLoader = false;\r\n        this.changedetect.detectChanges();\r\n        this.commonServices.setlogvalue(false, error.message, error.stack, \"RxComponent\", \"getRestrictedMedicine\");\r\n        this.commonServices.toastopen(errorconfig.error_65.message + error, \"error\", errorconfig.error_65.code);\r\n        this.commonServices.errorResponse(errorconfig.error_65.code, errorconfig.error_65.message + error);\r\n      })\r\n    }\r\n    catch (ex: any) {\r\n      this.onclickMedicineLoader = false;\r\n      this.changedetect.detectChanges();\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"getRestrictedMedicine\");\r\n    }\r\n  }\r\n\r\n  close(data: any) {\r\n    try {\r\n      this.elementRef.nativeElement.remove();\r\n      this.commonServices.rxid = \"\";\r\n      this.commonServices.searchApiStopFlag = true;\r\n      this.commonServices.clearMedicalPrescriptionData();\r\n      this.changedetect.detectChanges();\r\n      var value = data != null ? data : this.commonServices.closeErrorResponse != null || this.commonServices.closeErrorResponse != undefined ? this.commonServices.closeErrorResponse : null;\r\n      this.commonServices.closeErrorResponse = null;\r\n      this.commonServices.removeErrToast();\r\n      console.log(value);\r\n      this.closeEvent.emit(value);\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"close\");\r\n    }\r\n  }\r\n\r\n  ceasePrescribeMed() {\r\n    try {\r\n      if (this.checkStatusAndScripttype(this.commonServices.rxDetails.scriptType, this.commonServices.rxDetails.status, 2)) {\r\n        this.isResend = false;\r\n        this.selectActionBtnDropdown = false; this.changedetect.detectChanges();\r\n        this.commonServices.dialogopen(CeasePopupComponent, this.content, this.ceaseData).subscribe((res: any) => {\r\n          if (res != null && res.response_code == 0) {\r\n            this.commonServices.errorResponse(\"\", res.response_message, true, res.data);\r\n            this.close(res.data);\r\n          }\r\n        });\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"ceasePrescribeMed\");\r\n    }\r\n  }\r\n\r\n  cancelPrescribeMed() {\r\n    try {\r\n      if (this.checkStatusAndScripttype(this.commonServices.rxDetails.scriptType, this.commonServices.rxDetails.status, 4)) {\r\n        this.isResend = false;\r\n        this.selectActionBtnDropdown = false; this.changedetect.detectChanges();\r\n        this.commonServices.dialogopen(ClosePopupComponent, this.content, 1).subscribe((res: any) => {\r\n          if (res != null && res.response_code == 0) {\r\n            this.commonServices.errorResponse(\"\", res.response_message, true, res.data);\r\n            this.close(res.data);\r\n          }\r\n          else if (res != null && res.isDispensed) {\r\n            this.commonServices.dialogopen(ConfirmPatientContactDetailsComponent, this.content, 2).subscribe((data: any) => {\r\n              if (data != null && data.flag) {\r\n                this.commonServices.dialogopen(CeasePopupComponent, this.content, this.ceaseData).subscribe((response: any) => {\r\n                  if (response != null && response.response_code == 0) {\r\n                    this.commonServices.errorResponse(\"\", response.response_message, true, response.data);\r\n                    this.close(response.data);\r\n                  }\r\n                })\r\n              }\r\n            })\r\n          }\r\n        });\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"cancelPrescribeMed\");\r\n    }\r\n  }\r\n\r\n  cancelDraft() {\r\n    try {\r\n      if (this.checkStatusAndScripttype(this.commonServices.rxDetails.scriptType, this.commonServices.rxDetails.status, 4)) {\r\n        this.isResend = false;\r\n        this.selectActionBtnDropdown = false; this.changedetect.detectChanges();\r\n        this.commonServices.dialogopen(ClosePopupComponent, this.content, 2).subscribe((res: any) => {\r\n          if (res != null && res.response_code == 0) {\r\n            this.commonServices.errorResponse(\"\", res.response_message, true, res.data);\r\n            this.close(res.data);\r\n          }\r\n        });\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"cancelDraft\");\r\n    }\r\n  }\r\n\r\n  reissuePrescribeMed() {\r\n    try {\r\n      if (this.checkStatusAndScripttype(this.commonServices.rxDetails.scriptType, this.commonServices.rxDetails.status, 3)) {\r\n        this.selectActionBtnDropdown = false; this.changedetect.detectChanges();\r\n        this.commonServices.dialogopen(ReissuePopupComponent, this.content, {isResend: this.isResend}).subscribe((res: any) => {\r\n          if (res != null && res.response_code == 0) {\r\n            this.commonServices.errorResponse(\"\", res.response_message, true, res.data);\r\n            this.close(res.data);\r\n          }\r\n        });\r\n      }\r\n    } \r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"reissuePrescribeMed\");\r\n    }\r\n  }\r\n  resendPrescribeMed() {\r\n    try {\r\n      if (this.commonServices.enableSendPaperScriptInMail && ! this.checkStatusAndScripttype(this.commonServices.rxDetails.scriptType,this.commonServices.rxDetails.status,2)) {\r\n        if (this.commonServices.isScriptToPharmacy == 0) {\r\n          this.isResend = true;\r\n          this.selectActionBtnDropdown = false; this.changedetect.detectChanges();\r\n          this.commonServices.dialogopen(ReissuePopupComponent, this.content, {isResend: this.isResend}).subscribe((res: any) => {\r\n            if (res != null && res.response_code == 0) {\r\n              this.commonServices.errorResponse(\"\", res.response_message, true, res.data);\r\n              this.close(res.data);\r\n            }\r\n            else if(res == null){\r\n              this.isResend = false;\r\n            } \r\n          });\r\n        } else {\r\n          this.selectActionBtnDropdown = false;\r\n          this.selectionbtnLoader = true;\r\n          this.isResend = false;\r\n          this.changedetect.detectChanges();\r\n          const AddressSendToAddType = \"email\";\r\n          if (this.commonServices.IsNullOrEmpty(this.commonServices.pharmacyEmail.trim())) {\r\n            this.commonServices.toastopen(errorconfig.error_59.message, \"error\", errorconfig.error_59.code);\r\n            this.commonServices.errorResponse(errorconfig.error_59.code, errorconfig.error_59.message);\r\n            return;\r\n          }\r\n          if (!this.commonServices.validByEmailNo(this.commonServices.pharmacyEmail.trim())) {\r\n            this.commonServices.toastopen(errorconfig.error_60.message, \"error\", errorconfig.error_60.code);\r\n            this.commonServices.errorResponse(errorconfig.error_60.code, errorconfig.error_60.message);\r\n            return;\r\n          }\r\n          let payload = {\r\n            request_type: \"parameter\",\r\n            rxId: this.commonServices.rxid,\r\n            addressType: AddressSendToAddType,\r\n            addressValue: this.commonServices.pharmacyEmail.trim()\r\n          }\r\n          this.apiService.Get(config.PHYSICIAN.RX_RE_ISSUE + this.commonServices.rxid + \"&addressType=\" + AddressSendToAddType + \"&addressValue=\" + this.commonServices.pharmacyEmail.trim()).subscribe((res: any) => {\r\n            try {\r\n              if (this.commonServices.IsNullOrEmpty(res)) {\r\n                this.selectionbtnLoader = false; this.changedetect.detectChanges();\r\n                this.commonServices.setlogvalue(false, \"\", \"\", \"RxComponent\", \"resend\", payload);\r\n                this.commonServices.toastopen(errorconfig.error_64.message, 'error', errorconfig.error_64.code);\r\n                this.commonServices.errorResponse(errorconfig.error_64.code, errorconfig.error_64.message);\r\n                return;\r\n              }\r\n              if (res.response_code == 0) {\r\n                this.commonServices.toastopen(res.response_message, 'success');\r\n                this.elementRef.nativeElement.remove();\r\n                this.selectionbtnLoader = false; this.changedetect.detectChanges();\r\n              } else {\r\n                this.commonServices.setlogvalue(false, res.response_message, res.response_message, \"RxComponent\", \"resend\", payload);\r\n                this.selectionbtnLoader = false; this.changedetect.detectChanges();\r\n                this.commonServices.toastopen(res.response_message, 'error', res.error_code);\r\n                this.commonServices.errorResponse(res.error_code, res.response_message);\r\n              }\r\n            }\r\n            catch (ex: any) {\r\n              this.selectionbtnLoader = false; this.changedetect.detectChanges();\r\n              this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"resend\", payload);\r\n            }\r\n          }, error => {\r\n            this.selectionbtnLoader = false; this.changedetect.detectChanges();\r\n            this.commonServices.setlogvalue(false, error.message, error.stack, \"RxComponent\", \"resend\", payload);\r\n            this.commonServices.toastopen(errorconfig.error_65.message + error, \"error\", errorconfig.error_65.code);\r\n            this.commonServices.errorResponse(errorconfig.error_65.code, errorconfig.error_65.message + error);\r\n          });\r\n        }\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"resendPrescribeMed\");\r\n    }\r\n  }\r\n\r\n  printPrescribeMed() {\r\n    var payload = {};\r\n    try {\r\n      if (this.checkStatusAndScripttype(this.commonServices.rxDetails.scriptType, this.commonServices.rxDetails.status, 1)) {\r\n        this.selectActionBtnDropdown = false;\r\n        this.selectionbtnLoader = true;\r\n        this.changedetect.detectChanges();\r\n        payload = {\r\n          request_type: \"parameter\",\r\n          rxId: this.commonServices.rxid,\r\n          type: \"1\",\r\n          clientId: this.clientId\r\n        }\r\n        this.apiService.Get(config.PHYSICIAN.RX_PRINT + this.commonServices.rxid + \"&type=1&clientId=\" + this.clientId).subscribe(\r\n          (response: any) => {\r\n            try {\r\n              if (this.commonServices.IsNullOrEmpty(response)) {\r\n                this.commonServices.setlogvalue(false, \"\", \"\", \"RxComponent\", \"printPrescribeMed\", payload);\r\n                this.commonServices.toastopen(errorconfig.error_64.message, 'error', errorconfig.error_64.code);\r\n                this.commonServices.errorResponse(errorconfig.error_64.code, errorconfig.error_64.message);\r\n              }\r\n              else {\r\n                if (response.response_code == 0) {\r\n                  const byteArray = new Uint8Array(atob(response.file).split('').map(char => char.charCodeAt(0)));\r\n                  var bbb = new Blob([byteArray], { type: \"application/pdf\" });\r\n                  var url = window.URL.createObjectURL(bbb);\r\n                  const newWindow = window.open(url, '_blank');\r\n                  if (newWindow) {\r\n                    newWindow.focus();\r\n                  }\r\n                  else {\r\n                    this.printWarningPop();\r\n                  }\r\n                  this.commonServices.errorResponse(\"\", response.response_message, true, response.data);\r\n                  this.close(response.data);\r\n                }\r\n                else {\r\n                  this.commonServices.setlogvalue(false, response.response_message, response.response_message, \"RxComponent\", \"printPrescribeMed\", payload);\r\n                  this.commonServices.toastopen(response.response_message, 'error');\r\n                  this.commonServices.errorResponse(response.error_code, response.response_message);\r\n                }\r\n              }\r\n              this.selectionbtnLoader = false;\r\n              this.changedetect.detectChanges();\r\n            }\r\n            catch (ex: any) {\r\n              this.selectionbtnLoader = false;\r\n              this.changedetect.detectChanges();\r\n              this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"printPrescribeMed\", payload);\r\n            }\r\n          },\r\n          error => {\r\n            this.selectionbtnLoader = false;\r\n            this.commonServices.setlogvalue(false, error.message, error.stack, \"RxComponent\", \"printPrescribeMed\", payload);\r\n            this.commonServices.toastopen(errorconfig.error_65.message + error, \"error\", errorconfig.error_65.code);\r\n            this.commonServices.errorResponse(errorconfig.error_65.code, errorconfig.error_65.message + error);\r\n\r\n          }\r\n        );\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.selectionbtnLoader = false;\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"printPrescribeMed\", payload);\r\n    }\r\n  }\r\n\r\n  checkStatusAndScripttype(scripttype: any, status: any, flag: any): Boolean {\r\n    try {\r\n      if (!this.commonServices.IsNullOrEmpty(status) && status.toLowerCase() == 'prescribed') {\r\n        if (flag == 1) {\r\n          return true;\r\n        } else if (flag == 2) {\r\n          return !this.commonServices.IsNullOrEmpty(scripttype) && scripttype.toLowerCase() == 'e' ? true : false;\r\n        } else if (flag == 3) {\r\n          return !this.commonServices.IsNullOrEmpty(scripttype) && scripttype.toLowerCase() == 'e' && !this.commonServices.sendToPharmacy && !this.commonServices.emergencySupply ? true : false;\r\n        } else if (flag == 4) {\r\n          return true;\r\n        } else if (flag == 5) {\r\n          return !this.commonServices.IsNullOrEmpty(scripttype) && scripttype.toLowerCase() == 'm' ? true : false;\r\n        }\r\n      }\r\n      else if (!this.commonServices.IsNullOrEmpty(status) && status.toLowerCase() == 'draft' && flag == 4) {\r\n        return true;\r\n      }\r\n      return false\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"checkStatusAndScripttype\");\r\n      return false;\r\n    }\r\n  }\r\n\r\n  pageNumberOneToNext() {\r\n    try {\r\n      if (this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation)) {\r\n        this.commonServices.toastopen(errorconfig.error_50.message, 'error', errorconfig.error_50.code);\r\n        this.commonServices.errorResponse(errorconfig.error_50.code, errorconfig.error_50.message);\r\n        return;\r\n      }\r\n      this.commonServices.InstructionSearchValue = String(this.commonServices.InstructionSearchValue).trim();\r\n      this.commonServices.doseSearchValue = String(this.commonServices.doseSearchValue).trim();\r\n      this.commonServices.foodSearchValue = String(this.commonServices.foodSearchValue.trim());\r\n      this.commonServices.freqSearchValue = String(this.commonServices.freqSearchValue).trim();\r\n      if (this.commonServices.IsNullOrEmpty(this.commonServices.InstructionSearchValue) && this.commonServices.IsNullOrEmpty(this.commonServices.doseSearchValue) && (this.commonServices.IsNullOrEmpty(this.commonServices.foodSearchValue)) && this.commonServices.IsNullOrEmpty(this.commonServices.freqSearchValue)) {\r\n        this.commonServices.toastopen(errorconfig.error_54.message, 'error', errorconfig.error_54.code);\r\n        this.commonServices.errorResponse(errorconfig.error_54.code, errorconfig.error_54.message);\r\n        this.clearInstruction();\r\n        this.changedetect.detectChanges();\r\n        return;\r\n      }\r\n      if (this.commonServices.IsNullOrEmpty(this.commonServices.quantityVal) || parseInt(this.commonServices.quantityVal) <= 0 || this.commonServices.quantityVal.toString().toLowerCase() == \"nan\") {\r\n        this.commonServices.toastopen(errorconfig.error_55.message, 'error', errorconfig.error_55.code);\r\n        this.commonServices.errorResponse(errorconfig.error_55.code, errorconfig.error_55.message);\r\n        this.changedetect.detectChanges();\r\n        return;\r\n      }\r\n      if (this.commonServices.repeatsVal == \"NaN\") {\r\n        this.commonServices.repeatsVal = \"0\";\r\n        this.changedetect.detectChanges();\r\n      }\r\n      this.commonServices.routeSearchValue = String(this.commonServices.routeSearchValue).trim();\r\n      if (this.commonServices.IsNullOrEmpty(this.commonServices.routeSearchValue)) {\r\n        this.commonServices.toastopen(errorconfig.error_75.message, 'error', errorconfig.error_75.code);\r\n        this.commonServices.errorResponse(errorconfig.error_75.code, errorconfig.error_75.message);\r\n        this.changedetect.detectChanges();\r\n        return;\r\n      }\r\n      if (this.commonServices.IsNullOrEmpty(this.commonServices.scriptDate)) {\r\n        this.commonServices.toastopen(errorconfig.error_47.message, 'error', errorconfig.error_47.code);\r\n        this.commonServices.errorResponse(errorconfig.error_47.code, errorconfig.error_47.message);\r\n        return;\r\n      }\r\n      if (this.commonServices.IsNullOrEmpty(this.commonServices.startDate)) {\r\n        this.commonServices.toastopen(errorconfig.error_48.message, 'error', errorconfig.error_48.code);\r\n        this.commonServices.errorResponse(errorconfig.error_48.code, errorconfig.error_48.message);\r\n        return;\r\n      }\r\n      if (this.commonServices.IsNullOrEmpty(this.commonServices.endDate)) {\r\n        this.commonServices.toastopen(errorconfig.error_49.message, 'error', errorconfig.error_49.code);\r\n        this.commonServices.errorResponse(errorconfig.error_49.code, errorconfig.error_49.message);\r\n        return;\r\n      }\r\n      this.getTradeNameDisplay();\r\n      if (!this.commonServices.IsNullOrEmpty(this.commonServices.rxDetails) && !this.commonServices.IsNullOrEmpty(this.commonServices.rxDetails.status) && this.commonServices.rxDetails.status.toLowerCase() != 'draft' && this.commonServices.editPrescribedPrescription) {\r\n        this.commonServices.removeErrToast();\r\n        this.page = this.page + 1;\r\n        this.changedetect.detectChanges();\r\n        return;\r\n      }\r\n      if (!this.commonServices.isMedicineRestrict) {\r\n        var scheduleNumber = this.commonServices.getScheduleNumber(this.commonServices.selectedFormulation);\r\n        let restectedStates = ['NSW', 'ACT', 'WA', 'QLD', 'NT', 'TAS'];\r\n        let patientStates = this.getStateCodeFromStateName(this.commonServices.patientDetails.state).toUpperCase();\r\n        if (scheduleNumber.toLowerCase() == \"s8\" && restectedStates.indexOf(patientStates) != -1 && parseInt(this.commonServices.repeatsVal) > 0) {\r\n          if ((this.commonServices.IsNullOrEmpty(this.commonServices.daysBtnRepeatsVal) || parseInt(this.commonServices.daysBtnRepeatsVal) == 0)) {\r\n            var message = errorconfig.error_56.message.replace(\"$0\", patientStates);\r\n            this.commonServices.toastopen(message, \"error\", errorconfig.error_56.code);\r\n            this.commonServices.errorResponse(errorconfig.error_56.code, message);\r\n            return;\r\n          }\r\n        }\r\n        var stateScheduleNumber = this.getStateScheduleNumber(this.commonServices.selectedFormulation);\r\n        if (!this.commonServices.IsNullOrEmpty(stateScheduleNumber) != null && stateScheduleNumber.length > 0) {\r\n          if (patientStates.toLowerCase() == \"tas\" && stateScheduleNumber[0].indexOf(\"S4D\") != -1 && parseInt(this.commonServices.repeatsVal) > 0) {\r\n            if (this.commonServices.daysBtnRepeatsVal == \"\" || this.commonServices.daysBtnRepeatsVal == null || parseInt(this.commonServices.daysBtnRepeatsVal) == 0) {\r\n              this.commonServices.toastopen(errorconfig.error_68.message, \"error\", errorconfig.error_68.code);\r\n              this.commonServices.errorResponse(errorconfig.error_68.code, errorconfig.error_68.message);\r\n              return;\r\n            }\r\n          } else if (patientStates.toLowerCase() == \"nsw\" && stateScheduleNumber[0].indexOf(\"S4B\") != -1 && parseInt(this.commonServices.repeatsVal) > 0) {\r\n            if (this.commonServices.daysBtnRepeatsVal == \"\" || this.commonServices.daysBtnRepeatsVal == null || parseInt(this.commonServices.daysBtnRepeatsVal) == 0) {\r\n              this.commonServices.toastopen(errorconfig.error_69.message, \"error\", errorconfig.error_69.code);\r\n              this.commonServices.errorResponse(errorconfig.error_69.code, errorconfig.error_69.message);\r\n              return;\r\n            }\r\n          }\r\n        }\r\n      }\r\n\r\n      if ((this.commonServices.sendToPharmacy && this.commonServices.IsNullOrEmpty(this.commonServices.sendToPharmacyValue))) {\r\n        this.commonServices.toastopen(errorconfig.error_66.message, \"error\", errorconfig.error_66.code);\r\n        this.commonServices.errorResponse(errorconfig.error_66.code, errorconfig.error_66.message);\r\n        return;\r\n      }\r\n      if (!this.showAuthorityBox(this.commonServices.selectedFormulation.Restrictions, this.commonServices.PrescribeAS, this.commonServices.rxAuthority, this.commonServices.unlistedRA)) {\r\n        this.commonServices.approvalNo = \"\";\r\n        this.commonServices.pbsListInstructions = \"\";\r\n        this.commonServices.pbsListInstructionsId = null;\r\n      }\r\n      // var rxDisplayName = this.getTradeName();\r\n      // if (this.commonServices.selectedFormulation.IsExtemp == true || this.commonServices.lemi == true || this.commonServices.selectedFormulation.dosageForm.toLowerCase() == 'gauze') {\r\n      //   if (this.commonServices.lemi == true) {\r\n      //     this.commonServices.rxDisplayName = this.getExtempTTPName(this.commonServices.selectedFormulation);\r\n      //     this.commonServices.eopDisplayName = this.commonServices.rxDisplayName;\r\n      //   } else {\r\n      //     this.commonServices.rxDisplayName = rxDisplayName;\r\n      //     this.commonServices.eopDisplayName = rxDisplayName;\r\n      //   }\r\n      // } else {\r\n      //   this.commonServices.rxDisplayName = rxDisplayName.trim() + ' ' + this.commonServices.selectedFormulation.dosageForm.trim() + ' ' + (this.commonServices.selectedFormulation.moleculeStrength == null ? '' : this.commonServices.selectedFormulation.moleculeStrength.trim() + this.rxStrengthcalculation(this.commonServices.selectedFormulation));\r\n      //   this.commonServices.eopDisplayName = rxDisplayName.trim() + ' ' + (this.commonServices.selectedFormulation.moleculeStrength == null ? '' : this.commonServices.selectedFormulation.moleculeStrength.trim() + this.rxStrengthcalculation(this.commonServices.selectedFormulation));\r\n      // }\r\n      // var prescribedItemReservedThree = this.getTradeName();\r\n      // if (this.commonServices.selectedFormulation.IsExtemp == true || this.commonServices.lemi == true || this.commonServices.selectedFormulation.dosageForm.toLowerCase() == 'gauze') {\r\n      //   if (this.commonServices.lemi == true) {\r\n      //     let extempTTPName = this.getExtempTTPName(this.commonServices.selectedFormulation);\r\n      //     let PItemThree = extempTTPName.lastIndexOf('[');\r\n      //     let PItemThree1 = extempTTPName.slice(0, PItemThree);\r\n      //     this.commonServices.prescribedItemReservedThree = PItemThree1.trim();\r\n      //   } else {\r\n      //     let PItemThree2 = prescribedItemReservedThree.lastIndexOf('[');\r\n      //     let PItemThree3 = prescribedItemReservedThree.slice(0, PItemThree2);\r\n      //     this.commonServices.prescribedItemReservedThree = PItemThree3.trim();\r\n      //   }\r\n      // } else {\r\n      //   this.commonServices.prescribedItemReservedThree = prescribedItemReservedThree.trim() + ' ' + this.commonServices.selectedFormulation.dosageForm + ' ' + (this.commonServices.selectedFormulation.moleculeStrength == null ? '' : this.commonServices.selectedFormulation.moleculeStrength.trim() + this.rxStrengthcalculationNew(this.commonServices.selectedFormulation));\r\n      // }\r\n      if (!this.commonServices.isMedicineRestrict) {\r\n        if (this.commonServices.selectedFormulation.pbsType.toLowerCase() != 'non pbs' && this.commonServices.PrescribeAS.toLowerCase() != 'private' && ((!this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation.maxQtyUnits) && !this.commonServices.quantityWithUnitFlag ? parseFloat(this.commonServices.selectedFormulation.maxQtyUnits) + 0.5 : 1) < parseInt(this.commonServices.quantityVal) || parseInt(this.commonServices.selectedFormulation.repeats) < parseInt(this.commonServices.repeatsVal))) {\r\n          if (this.commonServices.rxAuthority == false) {\r\n            this.commonServices.dialogopen(IsAuthorityComponent, this.content).subscribe((res) => {\r\n              if (res) {\r\n                this.commonServices.rxAuthority = true;\r\n                this.commonServices.approvalNo = \"\";\r\n                this.commonServices.pbsListInstructions = \"\";\r\n                this.commonServices.pbsListInstructionsId = null;\r\n                this.changedetect.detectChanges();\r\n                if (this.commonServices.isBrandName == false) {\r\n                  this.molecule(this.commonServices.selectedFormulation.acgs, this.commonServices.selectedFormulation.moleculeStrength);\r\n                  if (this.commonServices.isBrandName == false && this.commonServices.lmbc == true) {\r\n                    this.includebrandpopopen();\r\n                  } else {\r\n                    if (this.doseFreqValidation()) {\r\n                      this.validateWaringPopOpen(scheduleNumber);\r\n                    }\r\n                    else {\r\n                      if (scheduleNumber.toLowerCase() == \"s8\" && this.commonServices.isS8WarningNext == true) {\r\n                        this.S8WaringPopOpen();\r\n                      }\r\n                      else {\r\n                        this.commonServices.removeErrToast();\r\n                        this.page = this.page + 1;\r\n                        this.changedetect.detectChanges();\r\n                      }\r\n                    }\r\n                  }\r\n                } else {\r\n                  if (this.doseFreqValidation()) {\r\n                    this.validateWaringPopOpen(scheduleNumber);\r\n                  }\r\n                  else {\r\n                    if (scheduleNumber.toLowerCase() == \"s8\" && this.commonServices.isS8WarningNext == true) {\r\n                      this.S8WaringPopOpen();\r\n                    }\r\n                    else {\r\n                      this.commonServices.rxAuthority = true;\r\n                      this.commonServices.removeErrToast();\r\n                      this.page = this.page + 1;\r\n                      this.changedetect.detectChanges();\r\n                    }\r\n                  }\r\n                }\r\n              } else {\r\n                this.commonServices.quantityVal = !this.commonServices.quantityWithUnitFlag ? this.commonServices.selectedFormulation.maxQtyUnits : 1;\r\n                this.commonServices.repeatsVal = this.commonServices.selectedFormulation.repeats;\r\n                this.commonServices.rxAuthority = false;\r\n                this.commonServices.rxEndDateCalculater();\r\n                this.changedetect.detectChanges();\r\n              }\r\n            });\r\n          } else {\r\n            if (this.doseFreqValidation()) {\r\n              this.validateWaringPopOpen(scheduleNumber);\r\n            }\r\n            else {\r\n              this.commonServices.removeErrToast();\r\n              this.page = this.page + 1;\r\n              this.changedetect.detectChanges();\r\n            }\r\n          }\r\n        } else if (this.commonServices.isBrandName == false && this.commonServices.lmbc == true) {\r\n          this.includebrandpopopen();\r\n        } else {\r\n          if (this.doseFreqValidation()) {\r\n            this.validateWaringPopOpen(scheduleNumber);\r\n          }\r\n          else {\r\n            if (scheduleNumber.toLowerCase() == \"s8\" && this.commonServices.isS8WarningNext == true) {\r\n              this.S8WaringPopOpen();\r\n            }\r\n            else {\r\n              this.commonServices.removeErrToast();\r\n              this.page = this.page + 1;\r\n              this.changedetect.detectChanges();\r\n            }\r\n          }\r\n        }\r\n      }\r\n      else {\r\n        if (this.doseFreqValidation()) {\r\n          this.validateWaringPopOpen(\"\");\r\n        }\r\n        else {\r\n          this.commonServices.removeErrToast();\r\n          this.page = this.page + 1;\r\n          this.changedetect.detectChanges();\r\n        }\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"pageNumberOneToNext\");\r\n    }\r\n  }\r\n\r\n  includebrandpopopen() {\r\n    try {\r\n      this.molecule(this.commonServices.selectedFormulation.acgs, this.commonServices.selectedFormulation.moleculeStrength);\r\n      this.commonServices.dialogopen(BrandIncludeComponent, this.content).subscribe((res) => {\r\n        if (res) {\r\n          this.commonServices.isBrandName = true;\r\n          this.commonServices.selectedBrandFormulation =\r\n            this.commonServices.selectedFormulation;\r\n          var moleculedata = {\r\n            moleculeNameText: this.moleculeNameText,\r\n            moleculeNameType: this.moleculeNameType,\r\n            moleculeStrengthText: this.moleculeStrengthText,\r\n            selectedMedicineList: this.commonServices.selectedMedicineList,\r\n          };\r\n          this.commonServices.dialogopen(AvailableFormulationsComponent, this.content, moleculedata).subscribe((val: any) => {\r\n            if (val.responseflag) {\r\n              if (\r\n                this.commonServices.selectedBrandFormulation != null &&\r\n                this.commonServices.selectedBrandFormulation != '' &&\r\n                val.flag\r\n              ) {\r\n                this.ConfirmAlterBrand(\r\n                  this.commonServices.selectedBrandFormulation != null &&\r\n                    this.commonServices.selectedBrandFormulation != ''\r\n                    ? this.commonServices.selectedBrandFormulation\r\n                    : this.commonServices.selectedFormulation,\r\n                  this.selectedBrandIndex != null\r\n                    ? this.selectedBrandIndex\r\n                    : 0\r\n                );\r\n              } else {\r\n                this.brandMedicproductId = '';\r\n                this.brandMedicpbsCode = '';\r\n                this.brandMedicQty = '';\r\n                this.brandMedicRep = '';\r\n                this.changedetect.detectChanges();\r\n              }\r\n            } else {\r\n              this.brandMedicproductId = '';\r\n              this.brandMedicpbsCode = '';\r\n              this.brandMedicQty = '';\r\n              this.brandMedicRep = '';\r\n              this.changedetect.detectChanges();\r\n            }\r\n          });\r\n        } else {\r\n          var scheduleNumber = this.commonServices.getScheduleNumber(this.commonServices.selectedFormulation);\r\n          if (this.doseFreqValidation()) {\r\n            this.validateWaringPopOpen(scheduleNumber);\r\n          }\r\n          else {\r\n            if (scheduleNumber.toLowerCase() == \"s8\" && this.commonServices.isS8WarningNext == true) {\r\n              this.S8WaringPopOpen();\r\n            }\r\n            else {\r\n              this.commonServices.removeErrToast();\r\n              this.page = this.page + 1;\r\n            }\r\n          }\r\n          this.commonServices.isBrandName = false;\r\n          this.changedetect.detectChanges();\r\n        }\r\n      });\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"includebrandpopopen\");\r\n    }\r\n  }\r\n\r\n  doseFreqValidation() {\r\n    try {\r\n      if (this.commonServices.IsNullOrEmpty(this.commonServices.doseSearchValue) || this.commonServices.IsNullOrEmpty(this.commonServices.freqSearchValue) || this.commonServices.IsNullOrEmpty(this.commonServices.foodSearchValue) || this.commonServices.IsNullOrEmpty(this.commonServices.InstructionSearchValue) || this.commonServices.IsNullOrEmpty(this.commonServices.routeSearchValue)) {\r\n        return true;\r\n      }\r\n      return false;\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"doseFreqValidation\");\r\n      return false;\r\n    }\r\n\r\n  }\r\n\r\n  S8WaringPopOpen() {\r\n    try {\r\n      var data = \"Warning! This is an S8 drug. You might need to hand write your signature, quantity in words and figures and/or other details as per the state regulations\";\r\n      this.commonServices.dialogopen(RealTimePrescriptionMonitoringComponent, this.content, data).subscribe((res) => {\r\n        if (res) {\r\n          this.commonServices.isS8WarningNext = false;\r\n          this.commonServices.removeErrToast();\r\n          this.page = this.page + 1;\r\n          this.changedetect.detectChanges();\r\n        }\r\n      });\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"S8WaringPopOpen\");\r\n    }\r\n  }\r\n\r\n  validateWaringPopOpen(scheduleNumber: any) {\r\n    try {\r\n      var data = \"Ensure all necessary fields are filled to avoid pharmacy rejection due to incomplete information - Dose, Frequency, Route etc.\";\r\n      this.commonServices.dialogopen(RealTimePrescriptionMonitoringComponent, this.content, data).subscribe((res) => {\r\n        if (res) {\r\n          if (!this.commonServices.isMedicineRestrict && !this.commonServices.IsNullOrEmpty(scheduleNumber) && scheduleNumber.toLowerCase() == \"s8\" && this.commonServices.isS8WarningNext == true) {\r\n            this.S8WaringPopOpen();\r\n          }\r\n          else {\r\n            this.commonServices.removeErrToast();\r\n            this.page = this.page + 1;\r\n            this.changedetect.detectChanges();\r\n          }\r\n\r\n        }\r\n      });\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"validateWaringPopOpen\");\r\n    }\r\n  }\r\n\r\n  ConfirmAlterBrand(med: any, index: any) {\r\n    try {\r\n      this.commonServices.isBrandName = true;\r\n      this.brandMedicproductId = '';\r\n      this.brandMedicpbsCode = '';\r\n      this.brandMedicQty = '';\r\n      this.brandMedicRep = '';\r\n      this.commonServices.clearMedicalPrescriptionDataOnchangeofMedicine(med);\r\n      this.commonServices.isFetching = false;\r\n      this.commonServices.rxEndDateCalculater();\r\n      var Med = [];\r\n      Med.push(med);\r\n      this.commonServices.selectedMedicineList = Med;\r\n      this.selectedMedicineListOrginal = Med;\r\n      this.selectFormulation(med, 0);\r\n      this.commonServices.isBrandName = true;\r\n      this.changedetect.detectChanges();\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"ConfirmAlterBrand\");\r\n    }\r\n  }\r\n\r\n  molecule(acgs: any, moleculeStrength: any) {\r\n    try {\r\n      if (!this.commonServices.IsNullOrEmpty(acgs)) {\r\n        if (acgs.length == 1) {\r\n          if (acgs[0].acgName.indexOf('+') != -1) {\r\n            this.moleculeNameText = acgs[0].acgName;\r\n            this.moleculeNameType = 'S2';\r\n            this.moleculeStrengthText = moleculeStrength;\r\n          } else {\r\n            this.moleculeNameText = acgs[0].acgName;\r\n            this.moleculeNameType = 'S1';\r\n            this.moleculeStrengthText = moleculeStrength;\r\n          }\r\n        } else if (1 < acgs.length) {\r\n          var molecules = [];\r\n          for (var i = 0; i < acgs.length; i++) {\r\n            molecules.push(acgs[i].acgName);\r\n          }\r\n          this.moleculeNameText = molecules.join(',');\r\n          this.moleculeNameType = 'M';\r\n          this.moleculeStrengthText = moleculeStrength;\r\n        }\r\n      } else {\r\n        this.moleculeNameText = '';\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"molecule\");\r\n    }\r\n  }\r\n\r\n  back() {\r\n    try {\r\n      this.page = 1;\r\n      this.changedetect.detectChanges();\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"back\");\r\n    }\r\n  }\r\n\r\n  MedicineDropdownList() {\r\n    try {\r\n      this.selectedMedicineDropdown = true;\r\n      // this.showFavouriteMed = false;\r\n      document.addEventListener('mousedown', this.handleClickOutside);\r\n      this.changedetect.detectChanges();\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"MedicineDropdownList\");\r\n    }\r\n  }\r\n\r\n  prescribeDropdown() {\r\n    try {\r\n      this.selectPBTNDropdown = true;\r\n      document.addEventListener('mousedown', this.handleClickOutsidePBTN);\r\n      this.changedetect.detectChanges();\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"prescribeDropdown\");\r\n    }\r\n  }\r\n\r\n  selectActionDropdownopen() {\r\n    try {\r\n      this.selectActionBtnDropdown = true;\r\n      document.addEventListener('mousedown', this.handleClickOutsideActionBtn);\r\n      this.changedetect.detectChanges();\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"selectActionDropdown\");\r\n    }\r\n  }\r\n\r\n  doseDropdown() {\r\n    try {\r\n      this.selectDoseDropdown = true;\r\n      document.addEventListener('mousedown', this.handleClickOutsideDose);\r\n      this.changedetect.detectChanges();\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"doseDropdown\");\r\n    }\r\n  }\r\n\r\n  freqDropdown() {\r\n    try {\r\n      this.selectFreqDropdown = true;\r\n      document.addEventListener('mousedown', this.handleClickOutsideFreq);\r\n      this.changedetect.detectChanges();\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"freqDropdown\");\r\n    }\r\n  }\r\n\r\n  stpValueDropdown() {\r\n    try {\r\n      this.selectstpDropdown = true;\r\n      document.addEventListener('mousedown', this.handleClickOutsidestp);\r\n      this.changedetect.detectChanges();\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"stpValueDropdown\");\r\n    }\r\n  }\r\n\r\n  foodDropdown() {\r\n    try {\r\n      this.selectFoodDropdown = true;\r\n      document.addEventListener('mousedown', this.handleClickOutsideFood);\r\n      this.changedetect.detectChanges();\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"foodDropdown\");\r\n    }\r\n  }\r\n\r\n  instructionDropdown() {\r\n    try {\r\n      this.selectInstructionDropdown = true;\r\n      document.addEventListener('mousedown', this.handleClickOutsideInstruction);\r\n      this.changedetect.detectChanges();\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"instructionDropdown\");\r\n    }\r\n  }\r\n\r\n  routeDropdown() {\r\n    try {\r\n      this.selectRouteDropdown = true;\r\n      document.addEventListener('keyup', this.handleClickOutsidePurpose);\r\n      document.addEventListener('mousedown', this.handleClickOutsideRoute);\r\n      this.changedetect.detectChanges();\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"routeDropdown\");\r\n    }\r\n  }\r\n\r\n  purposeDropdown() {\r\n    try {\r\n      this.selectPurposeDropdown = true;\r\n      document.addEventListener('mousedown', this.handleClickOutsidePurpose);\r\n      this.changedetect.detectChanges();\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"purposeDropdown\");\r\n    }\r\n  }\r\n\r\n  handleClickOutside = (event: any) => {\r\n    try {\r\n      if (\r\n        this.wrapperRef != null && this.wrapperRef != undefined && this.wrapperRef.nativeElement &&\r\n        !this.wrapperRef.nativeElement.contains(event.target)\r\n      ) {\r\n        this.selectedMedicineDropdown = false;\r\n      }\r\n      this.changedetect.detectChanges();\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"handleClickOutside\");\r\n    }\r\n  };\r\n\r\n  handleClickOutsideActionBtn = (event: any) => {\r\n    try {\r\n      if (\r\n        this.selectActionDropdownRef != null && this.selectActionDropdownRef != undefined && this.selectActionDropdownRef.nativeElement &&\r\n        !this.selectActionDropdownRef.nativeElement.contains(event.target)\r\n      ) {\r\n        this.selectActionBtnDropdown = false;\r\n      }\r\n\r\n      this.changedetect.detectChanges();\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"handleClickOutsideActionBtn\");\r\n    }\r\n  }\r\n\r\n  handleClickOutsidePBTN = (event: any) => {\r\n    try {\r\n      if (\r\n        this.prescribeDropdownRef != null && this.prescribeDropdownRef != undefined && this.prescribeDropdownRef.nativeElement &&\r\n        !this.prescribeDropdownRef.nativeElement.contains(event.target)\r\n      ) {\r\n        this.selectPBTNDropdown = false;\r\n      }\r\n      this.changedetect.detectChanges();\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"handleClickOutsidePBTN\");\r\n    }\r\n  };\r\n\r\n  handleClickOutsideDose = (event: any) => {\r\n    try {\r\n      if (\r\n        this.doseRef != null && this.doseRef != undefined && this.doseRef.nativeElement &&\r\n        !this.doseRef.nativeElement.contains(event.target)\r\n      ) {\r\n        this.selectDoseDropdown = false;\r\n      }\r\n      this.changedetect.detectChanges();\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"handleClickOutsideDose\");\r\n    }\r\n  };\r\n\r\n  handleClickOutsideFreq = (event: any) => {\r\n    try {\r\n      if (\r\n        this.freqRef != null && this.freqRef != undefined && this.freqRef.nativeElement &&\r\n        !this.freqRef.nativeElement.contains(event.target)\r\n      ) {\r\n        this.selectFreqDropdown = false;\r\n      }\r\n      this.changedetect.detectChanges();\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"handleClickOutsideFreq\");\r\n    }\r\n  };\r\n\r\n  handleClickOutsidestp = (event: any) => {\r\n    try {\r\n      if (\r\n        this.stpRef != null && this.stpRef != undefined && this.stpRef.nativeElement &&\r\n        !this.stpRef.nativeElement.contains(event.target)\r\n      ) {\r\n        this.selectstpDropdown = false;\r\n      }\r\n      this.changedetect.detectChanges();\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"handleClickOutsidestp\");\r\n    }\r\n  };\r\n\r\n  handleClickOutsideFood = (event: any) => {\r\n    try {\r\n      if (\r\n        this.foodRef != null && this.foodRef != undefined && this.foodRef.nativeElement &&\r\n        !this.foodRef.nativeElement.contains(event.target)\r\n      ) {\r\n        this.selectFoodDropdown = false;\r\n      }\r\n      this.changedetect.detectChanges();\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"handleClickOutsideFood\");\r\n    }\r\n  };\r\n\r\n  handleClickOutsideInstruction = (event: any) => {\r\n    try {\r\n      if (this.InstructionRef != null && this.InstructionRef != undefined && this.InstructionRef.nativeElement && !this.InstructionRef.nativeElement.contains(event.target)) {\r\n        if (!this.selectInstructionDropdownList && !this.editInstructionFlag) {\r\n          this.InstructionDescription = \"\"\r\n          this.commonServices.InstructionSearchValue = \"\";\r\n          this.commonServices.Instructiontiltle = \"\";\r\n          this.tempInstructionDescription = \"\";\r\n        }\r\n        this.editInstructionFlag = false;\r\n        this.selectInstructionDropdown = false; this.selectInstructionDropdownList = true;\r\n      }\r\n      this.changedetect.detectChanges();\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"handleClickOutsideInstruction\");\r\n    }\r\n  };\r\n\r\n  handleClickOutsideRoute = (event: any) => {\r\n    try {\r\n      if (\r\n        this.routeRef != null && this.routeRef != undefined && this.routeRef.nativeElement &&\r\n        !this.routeRef.nativeElement.contains(event.target)\r\n      ) {\r\n        this.selectRouteDropdown = false;\r\n        this.routeDataFilter = '';\r\n      }\r\n      this.changedetect.detectChanges();\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"handleClickOutsideRoute\");\r\n    }\r\n  };\r\n\r\n  handleClickOutsidePurpose = (event: any) => {\r\n    try {\r\n      if (\r\n        this.purposeRef != null && this.purposeRef != undefined && this.purposeRef.nativeElement &&\r\n        !this.purposeRef.nativeElement.contains(event.target)\r\n      ) {\r\n        this.selectPurposeDropdown = false;\r\n      }\r\n      this.changedetect.detectChanges();\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"handleClickOutsidePurpose\");\r\n    }\r\n  };\r\n\r\n  // General Search\r\n  searchHandler(e: any) {\r\n    try {\r\n      this.commonServices.clearMedicalPrescriptionData();\r\n      this.searchMedicinesLength = 0;\r\n      this.searchMedicinesPageNumber = 1;\r\n      let getMedicinesValue = e.target.value.trim();\r\n      this.selectedMedicineDropdown = true;\r\n      this.commonServices.isFetching = true;\r\n      this.SecondarySearchSpinner = false;\r\n      this.PrimarySearchSpinner = false;\r\n      this.commonServices.favouriteMedicineList = [];\r\n      this.showFavouriteMed = false;\r\n      this.changedetect.detectChanges();\r\n      this.mediSearchValue = e.target.value;\r\n      this.tempMediSearchValue = e.target.value;\r\n      if (e.target.value.trim().length < 3) {\r\n        this.commonServices.selectedMedicineList = [];\r\n        this.selectedMedicineListOrginal = [];\r\n        this.commonServices.selectedFormulation = null;\r\n        this.changedetect.detectChanges();\r\n      }\r\n      if (e.target.value.length >= 3) {\r\n        this.commonServices.selectedMedicineList = [];\r\n        this.selectedMedicineListOrginal = [];\r\n        this.commonServices.selectedFormulation = null;\r\n        this.searchMedicineLoader = true;\r\n        //this.isStillSearching = true;\r\n        this.changedetect.detectChanges();\r\n        if (!this.isStillSearching) {\r\n          this.searchMeds(getMedicinesValue.trim());\r\n        }\r\n        // clearTimeout(this.timer);\r\n        // this.timer = setTimeout(() => {\r\n        //   this.searchMeds(getMedicinesValue);\r\n        // }, this.waitTime);\r\n      }\r\n      else {\r\n        this.searchedMedicineList = [];\r\n        this.searchMedicineLoader = false;\r\n      }\r\n      this.changedetect.detectChanges();\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"searchHandler\");\r\n    }\r\n  };\r\n\r\n  searchMeds(getMedicinesValue: any) {\r\n    var payload = {};\r\n    try {\r\n      this.searchMedicineLoader = true;\r\n      this.isStillSearching = true;\r\n      this.changedetect.detectChanges();\r\n      if (this.mediSearchValue.trim().length < 3 || getMedicinesValue.trim().length < 3) {\r\n        this.isStillSearching = false;\r\n        this.searchMedicineLoader = false;\r\n        this.searchedMedicineList = [];\r\n        this.changedetect.detectChanges();\r\n        return;\r\n      }\r\n      payload = {\r\n        request_type: \"parameter\",\r\n        productName: getMedicinesValue\r\n      }\r\n      this.ProductSearchName = getMedicinesValue;\r\n      this.commonServices.searchApiStopFlag = false;\r\n      var pbsType = this.rxOnlyPBS && this.rxPrivate ? \"\" : this.rxOnlyPBS ? \"PBS,RPBS\" : this.rxPrivate ? \"Private\" : \"\";\r\n      const searchMethod = this.commonServices.smartSearch ? config.GET_MEDS_BY_SMART_SEARCH + '?productName=' + encodeURIComponent(getMedicinesValue) + '&page=1&noOfRec=10&pbsType=' + pbsType\r\n        : config.GET_MEDS_BY_SEARCH + '?productName=' + encodeURIComponent(getMedicinesValue) + '&page=1&noOfRec=10'\r\n      this.apiService.Get(searchMethod).subscribe((res: any) => {\r\n        try {\r\n          if (this.commonServices.IsNullOrEmpty(res)) {\r\n            this.isStillSearching = false;\r\n            this.searchedMedicineList = [];\r\n            this.searchMedicineLoader = false; this.changedetect.detectChanges();\r\n            this.commonServices.setlogvalue(false, \"\", \"\", \"RxComponent\", \"searchMeds\", payload);\r\n            this.commonServices.toastopen(errorconfig.error_64.message, 'error', errorconfig.error_64.code);\r\n            this.commonServices.errorResponse(errorconfig.error_64.code, errorconfig.error_64.message);\r\n            return;\r\n          }\r\n          if (res.response_code == 0) {\r\n            this.isStillSearching = false;\r\n            const filteredList = res.response.filter((item: any) =>\r\n              this.isPbsTypeMatch(item.pbsType, pbsType)\r\n            );\r\n            this.searchedMedicineList = filteredList;\r\n            this.searchMedicinesLength = filteredList.length;\r\n            if (this.mediSearchValue.trim().length < 3) {\r\n              this.isStillSearching = false;\r\n              this.searchMedicineLoader = false;\r\n              this.searchedMedicineList = [];\r\n              this.changedetect.detectChanges();\r\n              return;\r\n            }\r\n            if (getMedicinesValue.trim() != this.mediSearchValue.trim() && this.mediSearchValue.trim().length > 2) {\r\n              this.searchedMedicineList = [];\r\n              this.searchMedicineLoader = true;\r\n              this.completeSearch(this.mediSearchValue.trim());\r\n            }\r\n            if (this.searchedMedicineList.length > 7 || res.response.length == 0) {\r\n              this.searchMedicineLoader = false;\r\n              this.changedetect.detectChanges();\r\n            }\r\n            if (res.response.length != 0) {\r\n              this.MIMSPrimarySearch();\r\n            }\r\n          } else {\r\n            this.isStillSearching = false;\r\n            this.searchedMedicineList = [];\r\n            this.searchMedicineLoader = false;\r\n            this.commonServices.setlogvalue(false, res.response_message, res.response_message, \"RxComponent\", \"searchMeds\", payload);\r\n            this.commonServices.toastopen(res.response_message, 'error', res.error_code);\r\n            this.commonServices.errorResponse(res.error_code, res.response_message);\r\n          }\r\n          this.changedetect.detectChanges();\r\n        }\r\n        catch (ex: any) {\r\n          this.isStillSearching = false;\r\n          this.searchedMedicineList = [];\r\n          this.searchMedicineLoader = false;\r\n          this.changedetect.detectChanges();\r\n          this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"searchMeds\", payload);\r\n        }\r\n      }, error => {\r\n        this.isStillSearching = false;\r\n        this.searchedMedicineList = [];\r\n        this.searchMedicineLoader = false;\r\n        this.changedetect.detectChanges();\r\n        this.commonServices.setlogvalue(false, error.message, error.stack, \"RxComponent\", \"searchMeds\", payload);\r\n        this.commonServices.toastopen(errorconfig.error_65.message + error, \"error\", errorconfig.error_65.code);\r\n        this.commonServices.errorResponse(errorconfig.error_65.code, errorconfig.error_65.message + error);\r\n      });\r\n    }\r\n    catch (ex: any) {\r\n      this.isStillSearching = false; this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"searchMeds\", payload);\r\n    }\r\n  }\r\n\r\n  completeSearch(getMedicinesValue: any) {\r\n    try {\r\n      this.isStillSearching = false;\r\n      this.searchMeds(getMedicinesValue);\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"completeSearch\");\r\n    }\r\n  }\r\n\r\n  //Get Product Detail\r\n  getProductListByName(prodHiddenValue: any, productName: any, searchBase: any) {\r\n    var payload = {};\r\n    try {\r\n      if (!this.commonServices.IsNullOrEmpty(this.commonServices.MIMSSecondaryapi)) {\r\n        this.commonServices.MIMSSecondaryapi.unsubscribe();\r\n      }\r\n      this.searchBynamePageNumber = 1;\r\n      this.selectedMedicineDropdown = false;\r\n      this.SecondarySearchSpinner = false;\r\n      this.mediSearchValue = this.htmlToTextConvert(productName);\r\n      this.commonServices.selectedMedicineList = [];\r\n      this.selectedMedicineListOrginal = [];\r\n      this.commonServices.clearMedicalPrescriptionDataOnchangeofMedicine(this.commonServices.selectedFormulation);\r\n      this.commonServices.selectedFormulation = null;\r\n      this.onclickMedicineLoader = true;\r\n      this.commonServices.isFetching = true;\r\n      this.changedetect.detectChanges();\r\n      var type = searchBase.toLowerCase() == 'brandkey' ? 'BK' : searchBase.toLowerCase() == 'prodpackkey' ? 'PPK' : searchBase.toLowerCase() == 'virtualname' ? 'VN' : searchBase.toLowerCase() == 'productkey' ? 'PK' : searchBase.toLowerCase() == 'productkeyactiveingredient' ? 'PKA' : searchBase.toLowerCase() == 'fullpi' ? 'FPI' : 'PN';\r\n      payload = {\r\n        request_type: \"parameter\",\r\n        productName: prodHiddenValue,\r\n        type: type,\r\n        prescriberType: \"MP\"\r\n      }\r\n      this.prodHiddenName = prodHiddenValue;\r\n      this.ProductType = type;\r\n      this.apiService.Get(config.GET_MEDS_BY_NAME + '?productName=' + encodeURIComponent(prodHiddenValue) + '&type=' + type + '&prescriberType=MP&page=' + this.searchBynamePageNumber + '&noOfRec=10').subscribe((res: any) => {\r\n        try {\r\n          if (this.commonServices.IsNullOrEmpty(res)) {\r\n            this.searchBynameLength = 0; this.commonServices.selectedMedicineList = [];\r\n            this.selectedMedicineListOrginal = []; this.onclickMedicineLoader = false;\r\n            this.SecondarySearchSpinner = false; this.changedetect.detectChanges();\r\n            this.commonServices.setlogvalue(false, \"\", \"\", \"RxComponent\", \"getProductListByName\", payload);\r\n            this.commonServices.toastopen(errorconfig.error_64.message, 'error', errorconfig.error_64.code);\r\n            this.commonServices.errorResponse(errorconfig.error_64.code, errorconfig.error_64.message);\r\n            return;\r\n          }\r\n          if (res.response_code == 0) {\r\n            if (this.commonServices.searchApiStopFlag) {\r\n              this.commonServices.selectedMedicineList = [];\r\n              this.selectedMedicineListOrginal = [];\r\n              this.commonServices.selectedFormulation = null;\r\n              this.onclickMedicineLoader = false;\r\n              this.SecondarySearchSpinner = false;\r\n              this.changedetect.detectChanges();\r\n              return;\r\n            }\r\n            this.searchBynameLength = res.response.length;\r\n            this.selectedMedicineListOrginal = res.response;\r\n            this.commonServices.selectedFormulation = null;\r\n            // if (this.isNonPbsFlag) {\r\n            //   this.rxOnlyNONPBSFilter();\r\n            // } else {\r\n            //   if (this.rxOnlyPBS == true) {\r\n            //     this.rxOnlyPBSFilter();\r\n            //   }\r\n            //   else {\r\n            //     this.commonServices.selectedMedicineList = res.response;\r\n            //   }\r\n            // }\r\n            this.onCheckboxChange(2);\r\n            if (!this.commonServices.IsNullOrEmpty(this.commonServices.selectedMedicineList) && this.commonServices.selectedMedicineList.length <= 3) {\r\n              this.onclickMedicineLoader = true;\r\n              this.changedetect.detectChanges();\r\n            }\r\n            else {\r\n              this.onclickMedicineLoader = false;\r\n              this.changedetect.detectChanges();\r\n            }\r\n            if (!this.commonServices.IsNullOrEmpty(res.response) && res.response.length != 0) {\r\n              this.MIMSSecondarySearch();\r\n            }\r\n            else {\r\n              this.onclickMedicineLoader = false;\r\n              this.changedetect.detectChanges();\r\n            }\r\n          } else {\r\n            this.searchBynameLength = 0;\r\n            this.commonServices.selectedMedicineList = [];\r\n            this.selectedMedicineListOrginal = [];\r\n            this.onclickMedicineLoader = false;\r\n            this.SecondarySearchSpinner = false;\r\n            this.commonServices.setlogvalue(false, res.response_message, res.response_message, \"RxComponent\", \"getProductListByName\", payload);\r\n            this.commonServices.toastopen(res.response_message, 'error', res.error_code);\r\n            this.commonServices.errorResponse(res.error_code, res.response_message);\r\n          }\r\n          this.changedetect.detectChanges();\r\n        }\r\n        catch (ex: any) {\r\n          this.searchBynameLength = 0;\r\n          this.commonServices.selectedMedicineList = [];\r\n          this.selectedMedicineListOrginal = [];\r\n          this.onclickMedicineLoader = false;\r\n          this.SecondarySearchSpinner = false;\r\n          this.changedetect.detectChanges();\r\n          this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"getProductListByName\", payload);\r\n        }\r\n      }, error => {\r\n        this.searchBynameLength = 0;\r\n        this.commonServices.selectedMedicineList = [];\r\n        this.selectedMedicineListOrginal = [];\r\n        this.onclickMedicineLoader = false;\r\n        this.SecondarySearchSpinner = false;\r\n        this.changedetect.detectChanges();\r\n        this.commonServices.setlogvalue(false, error.message, error.stack, \"RxComponent\", \"getProductListByName\", payload);\r\n        this.commonServices.toastopen(errorconfig.error_65.message + error, \"error\", errorconfig.error_65.code);\r\n        this.commonServices.errorResponse(errorconfig.error_65.code, errorconfig.error_65.message + error);\r\n      });\r\n    }\r\n    catch (ex: any) {\r\n      this.searchBynameLength = 0;\r\n      this.onclickMedicineLoader = false;\r\n      this.SecondarySearchSpinner = false;\r\n      this.changedetect.detectChanges();\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"getProductListByName\", payload);\r\n    }\r\n  }\r\n\r\n  onCheckboxChange(value: any) {\r\n    try {\r\n      if (this.rxOnlyPBS && this.rxPrivate) {\r\n        this.commonServices.selectedMedicineList = this.selectedMedicineListOrginal.filter((x: any) => !this.commonServices.IsNullOrEmpty(x.pbsType));\r\n      }\r\n      else if (this.rxOnlyPBS) {\r\n        this.rxOnlyPBS = true;\r\n        if (!this.commonServices.IsNullOrEmpty(this.selectedMedicineListOrginal))\r\n          this.rxOnlyPBSFilter();\r\n      }\r\n      else if (this.rxPrivate) {\r\n        this.rxOnlyPBS = false;\r\n        if (!this.commonServices.IsNullOrEmpty(this.selectedMedicineListOrginal))\r\n          this.rxOnlyNONPBSFilter();\r\n      }\r\n      else {\r\n        this.rxOnlyPBS = false;\r\n        this.rxPrivate = false;\r\n        this.commonServices.selectedMedicineList = this.selectedMedicineListOrginal.filter((x: any) => !this.commonServices.IsNullOrEmpty(x.pbsType));\r\n      }\r\n      // this.onclickMedicineLoader = false;\r\n      this.changedetect.detectChanges();\r\n      if (value === 1) {\r\n        if (this.tempMediSearchValue.length >= 3) {\r\n          this.commonServices.clearMedicalPrescriptionData();\r\n          this.searchMedicinesLength = 0;\r\n          this.searchMedicinesPageNumber = 1;\r\n          let getMedicinesValue = this.tempMediSearchValue.trim();\r\n          this.selectedMedicineDropdown = true;\r\n          this.commonServices.isFetching = true;\r\n          this.SecondarySearchSpinner = false;\r\n          this.PrimarySearchSpinner = false;\r\n          this.commonServices.favouriteMedicineList = [];\r\n          this.showFavouriteMed = false;\r\n          this.changedetect.detectChanges();\r\n          this.mediSearchValue = this.tempMediSearchValue;\r\n          this.tempMediSearchValue = this.tempMediSearchValue;\r\n          this.commonServices.selectedMedicineList = [];\r\n          this.selectedMedicineListOrginal = [];\r\n          this.commonServices.selectedFormulation = null;\r\n          this.searchMedicineLoader = true;\r\n          //this.isStillSearching = true;\r\n          this.changedetect.detectChanges();\r\n          if (!this.isStillSearching) {\r\n            this.searchMeds(getMedicinesValue.trim());\r\n          }\r\n        }\r\n        else {\r\n          this.searchedMedicineList = [];\r\n          this.searchMedicineLoader = false;\r\n        }\r\n        this.changedetect.detectChanges();\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"onCheckboxChange\");\r\n    }\r\n  }\r\n\r\n  rxOnlyPBSFilter() {\r\n    try {\r\n      if (!this.commonServices.IsNullOrEmpty(this.selectedMedicineListOrginal) && this.selectedMedicineListOrginal.length > 0) {\r\n        this.commonServices.selectedMedicineList = this.selectedMedicineListOrginal.filter((x: any) => !this.commonServices.IsNullOrEmpty(x.pbsType) && x.pbsType != 'non PBS');\r\n      }\r\n      this.changedetect.detectChanges();\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"rxOnlyPBSFilter\");\r\n    }\r\n  }\r\n\r\n  rxOnlyNONPBSFilter() {\r\n    try {\r\n      if (this.selectedMedicineListOrginal != '' && this.selectedMedicineListOrginal != null && this.selectedMedicineListOrginal.length > 0) {\r\n        this.commonServices.selectedMedicineList = this.selectedMedicineListOrginal.filter((x: any) => !this.commonServices.IsNullOrEmpty(x.pbsType) && x.pbsType.toLowerCase() == 'non pbs');\r\n      }\r\n      this.changedetect.detectChanges();\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"rxOnlyNONPBSFilter\");\r\n    }\r\n  }\r\n  getClassForMed(med: any) {\r\n    try {\r\n      var isSelectedFormulation;\r\n      if (this.commonServices.isMedicineRestrict) {\r\n        isSelectedFormulation = this.IsSelectFormulation(med);\r\n      }\r\n      else {\r\n        isSelectedFormulation = this.commonServices.selectedFormulation != null &&\r\n          this.commonServices.selectedFormulation.productId != null &&\r\n          med.productId == this.commonServices.selectedFormulation.productId &&\r\n          med.pbsCode == this.commonServices.selectedFormulation.pbsCode &&\r\n          med.productName == this.commonServices.selectedFormulation.productName &&\r\n          med.repeats == this.commonServices.selectedFormulation.repeats &&\r\n          med.maxQtyUnits == this.commonServices.selectedFormulation.maxQtyUnits;\r\n      }\r\n\r\n      return isSelectedFormulation\r\n        ? 'mdl-grid new_rx_popup_box RX_highlight'\r\n        : 'mdl-grid new_rx_popup_box';\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"getClassForMed\");\r\n      return \"mdl-grid new_rx_popup_box\";\r\n    }\r\n  }\r\n\r\n  getClassForFavouriteMed(med: any) {\r\n    try {\r\n        // var isSelectedFormulation;\r\n        // isSelectedFormulation = this.commonServices.selectedFormulation != null &&\r\n        //   this.commonServices.selectedFormulation.productId != null &&\r\n        //   med.productId == this.commonServices.selectedFormulation.productId &&\r\n        //   (med.pbsCode!=null?med.pbsCode:\"\") == (this.commonServices.selectedFormulation.pbsCode!=null?this.commonServices.selectedFormulation.pbsCode:\"\") &&\r\n        //   med.productName == this.commonServices.selectedFormulation.productName &&\r\n        //   med.repeats == this.commonServices.selectedFormulation.repeats &&\r\n        //   med?.encryptedId == this.commonServices.favouriteEncryptedId &&\r\n        //   med.quantity == (this.commonServices.selectedFormulation?.pbsType!=undefined && this.commonServices.selectedFormulation?.pbsType!=null && this.commonServices.selectedFormulation.pbsType.toLowerCase() == \"non pbs\"\r\n        //                           ? (this.commonServices.selectedFormulation.numberOfPack + \"x\" + this.commonServices.selectedFormulation.unitPerPack)\r\n        //                           : this.commonServices.selectedFormulation.maxQtyUnits).toString();\r\n\r\n      return med?.encryptedId == this.commonServices.favouriteEncryptedId\r\n        ? 'mdl-grid new_rx_popup_box RX_highlight'\r\n        : 'mdl-grid new_rx_popup_box';\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"getClassForMed\");\r\n      return \"mdl-grid new_rx_popup_box\";\r\n    }\r\n  }\r\n\r\n  IsSelectFormulation(med: any) {\r\n    try {\r\n      if ((!this.commonServices.IsNullOrEmpty(med.genericName) ? med.genericName : \"\") ==\r\n        (!this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation?.genericName) ?\r\n          this.commonServices.selectedFormulation.genericName : \"\") &&\r\n        (!this.commonServices.IsNullOrEmpty(med.productId) ? med.productId : \"\") ==\r\n        (!this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation?.productId) ?\r\n          this.commonServices.selectedFormulation.productId : \"\") && (!this.commonServices.IsNullOrEmpty(med.repeats) ?\r\n            med.repeats : \"\") == (!this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation?.repeats) ?\r\n              this.commonServices.selectedFormulation.repeats : \"\") && (!this.commonServices.IsNullOrEmpty(med.maxQtyUnits) ?\r\n                med.maxQtyUnits : \"\") == (!this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation?.maxQtyUnits)\r\n                  ? this.commonServices.selectedFormulation.maxQtyUnits : \"\")) {\r\n        return true;\r\n      }\r\n      else {\r\n        return false;\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"IsSelectFormulation\");\r\n      return false;\r\n    }\r\n  }\r\n\r\n  getcurrentid(med: any) {\r\n    try {\r\n      return this.mediSearchValue != null && med.prodDisplayValue == this.mediSearchValue ? 'heighlight' : '';\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"getcurrentid\");\r\n      return \"\";\r\n    }\r\n  }\r\n\r\n  getRestrictions(restrictions: any) {\r\n    try {\r\n      var restrictionList = [];\r\n      for (let i = 0; i < restrictions.length; i++) {\r\n        var ind = restrictionList.indexOf(restrictions[i]['restrictionType']);\r\n        if (ind == -1) {\r\n          restrictionList.push(restrictions[i]['restrictionType']);\r\n        }\r\n      }\r\n      return restrictionList.toString();\r\n      //    let restrictions = [];\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"getRestrictions\");\r\n      return [];\r\n    }\r\n\r\n  }\r\n\r\n  getAllMimsValue() {\r\n    var payload = {};\r\n    try {\r\n      payload = {\r\n        request_type: \"parameter\",\r\n        userId: this.commonServices.physicianDetails.userId,\r\n        clientId: this.clientId\r\n      }\r\n      this.apiService.Get(config.PHYSICIAN.GET_ALLMIMSVALUE + this.commonServices.physicianDetails.userId + \"&clientId=\" + this.clientId).subscribe((res: any) => {\r\n        try {\r\n          if (this.commonServices.IsNullOrEmpty(res)) {\r\n            this.commonServices.setlogvalue(false, \"\", \"\", \"RxComponent\", \"getAllMimsValue\", payload);\r\n            this.commonServices.toastopen(errorconfig.error_64.message, 'error', errorconfig.error_64.code);\r\n            this.commonServices.errorResponse(errorconfig.error_64.code, errorconfig.error_64.message);\r\n            return;\r\n          }\r\n          if (res.response_code == 0) {\r\n            this.doseData = res.dose != null ? res.dose : [];\r\n            this.frequencyData = !this.commonServices.IsNullOrEmpty(res.frequency) ? res.frequency : [];\r\n            this.foodData = !this.commonServices.IsNullOrEmpty(res.food) ? res.food : [];\r\n            this.purposeData = !this.commonServices.IsNullOrEmpty(res.purpose) != null ? res.purpose : [];\r\n            this.routeData = !this.commonServices.IsNullOrEmpty(res.route) != null ? res.route : [];\r\n            this.ceaseData = res.cease != null ? res.cease : [];\r\n            this.ceaseData = !this.commonServices.IsNullOrEmpty(res.cease) != null ? res.cease : [];\r\n            this.sendtopharmacyData = !this.commonServices.IsNullOrEmpty(res.sendToParmacyMaster) != null ? res.sendToParmacyMaster : [];\r\n            this.tempAuthorityFormNo = !this.commonServices.IsNullOrEmpty(res.authorityForm) && !this.commonServices.IsNullOrEmpty(res.authorityForm.authorityFormNo) ? res.authorityForm.authorityFormNo :\"\";\r\n            let refValAuth = !this.commonServices.editPrescription ? this.getAddAuthValue(!this.commonServices.IsNullOrEmpty(res.authorityForm) ? !this.commonServices.IsNullOrEmpty(res.authorityForm.authorityFormNo) ? res.authorityForm.authorityFormNo : [] : []) : !this.commonServices.IsNullOrEmpty(this.commonServices.rxDetails?.pbsDvaAuthorityNumber) && this.commonServices.rxDetails.pbsDvaAuthorityNumber != 0 ? this.commonServices.rxDetails.pbsDvaAuthorityNumber : \"\";\r\n            this.commonServices.authorityFormNo = refValAuth;\r\n            this.isNonPbsFlag = this.commonServices.IsNullOrEmpty(res.isNonPbsFlag) || res.isNonPbsFlag == 0 ? true : false;\r\n            this.isPrescribeAsPrivateOnly = !this.commonServices.IsNullOrEmpty(res.isPrescribeAsPrivateOnly) ? res.isPrescribeAsPrivateOnly : false;\r\n            this.commonServices.smartSearch = !this.commonServices.IsNullOrEmpty(res.isEnableSmartSearch) ? res.isEnableSmartSearch : false;\r\n            this.changedetect.detectChanges();\r\n          }\r\n          else {\r\n            this.commonServices.setlogvalue(false, res.response_message, res.response_message, \"RxComponent\", \"getAllMimsValue\", payload);\r\n            this.commonServices.toastopen(res.response_message, 'error', res.error_code);\r\n            this.commonServices.errorResponse(res.error_code, res.response_message);\r\n          }\r\n        }\r\n        catch (ex: any) {\r\n          this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"getAllMimsValue\", payload);\r\n        }\r\n      }, error => {\r\n        this.commonServices.setlogvalue(false, error.message, error.stack, \"RxComponent\", \"getAllMimsValue\", payload);\r\n        this.commonServices.toastopen(errorconfig.error_65.message + error, \"error\", errorconfig.error_65.code);\r\n        this.commonServices.errorResponse(errorconfig.error_65.code, errorconfig.error_65.message + error);\r\n      })\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"getAllMimsValue\", payload);\r\n    }\r\n  }\r\n\r\n  routeFilter(e: any) {\r\n    try {\r\n      this.routeDataFilter = e.target.value;\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"routeFilter\");\r\n    }\r\n  }\r\n\r\n  filterRouteItems(arr: any, query: any) {\r\n    try {\r\n      return arr.filter((e: any) =>\r\n        e.routeName.toLowerCase().includes(query.toLowerCase())\r\n      );\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"filterRouteItems\");\r\n    }\r\n  }\r\n\r\n  //Get instruction value\r\n  getInstructionValues() {\r\n    var payload = {};\r\n    try {\r\n      payload = {\r\n        request_type: \"parameter\",\r\n        userId: this.commonServices.physicianDetails.userId\r\n      }\r\n      this.apiService.Get(config.PHYSICIAN.GET_INSTRUCTION_VALUE + \"?userId=\" + this.commonServices.physicianDetails.userId).subscribe((res: any) => {\r\n        try {\r\n          if (this.commonServices.IsNullOrEmpty(res)) {\r\n            this.commonServices.setlogvalue(false, \"\", \"\", \"RxComponent\", \"getInstructionValues\", payload);\r\n            this.commonServices.toastopen(errorconfig.error_64.message, 'error', errorconfig.error_64.code);\r\n            this.commonServices.errorResponse(errorconfig.error_64.code, errorconfig.error_64.message);\r\n            return;\r\n          }\r\n          if (res.response_code == 0) {\r\n            var instruction = res.response;\r\n            this.instructionData = instruction;\r\n            this.changedetect.detectChanges();\r\n          } else {\r\n            this.commonServices.setlogvalue(false, res.response_message, res.response_message, \"RxComponent\", \"getInstructionValues\", payload);\r\n            this.commonServices.toastopen(res.response_message, 'error', res.error_code);\r\n            this.commonServices.errorResponse(res.error_code, res.response_message);\r\n          }\r\n        }\r\n        catch (ex: any) {\r\n          this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"getInstructionValues\", payload);\r\n        }\r\n      }, error => {\r\n        this.commonServices.setlogvalue(false, error.message, error.stack, \"RxComponent\", \"getInstructionValues\", payload);\r\n        this.commonServices.toastopen(errorconfig.error_65.message + error, \"error\", errorconfig.error_65.code);\r\n        this.commonServices.errorResponse(errorconfig.error_65.code, errorconfig.error_65.message + error);\r\n      });\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"getInstructionValues\", payload);\r\n    }\r\n  }\r\n\r\n  //Edit Instruction value\r\n  editInstruction(id: number, data: any) {\r\n    try {\r\n      this.selectInstructionDropdown = true;\r\n      this.commonServices.InstructionSearchValue = data.text;\r\n      this.commonServices.Instructiontiltle = data.text;\r\n      this.tempInstructionDescription = data.description;\r\n      this.InstructionId = data.id;\r\n      this.InstructionDescription = data.description;\r\n      this.selectInstructionDropdownList = false;\r\n      this.editInstructionFlag = true;\r\n      this.changedetect.detectChanges();\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"editInstruction\");\r\n    }\r\n  }\r\n\r\n  // list select in Instruction\r\n  ChangeInstruction(data: any) {\r\n    try {\r\n      this.selectInstructionDropdown = false;\r\n      this.commonServices.InstructionSearchValue = !this.commonServices.IsNullOrEmpty(data?.text) ? data.text : '';\r\n      this.InstructionDescription = !this.commonServices.IsNullOrEmpty(data?.description) ? data.description : \"\";\r\n      this.commonServices.instVal = !this.commonServices.IsNullOrEmpty(data?.value) ? data.value : \"\";\r\n      this.commonServices.complexId = !this.commonServices.IsNullOrEmpty(data?.value) ? data.id : \"\";\r\n      this.commonServices.rxEndDateCalculater();\r\n      this.changedetect.detectChanges();\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"ChangeInstruction\");\r\n    }\r\n  }\r\n\r\n  instructionOnChange() {\r\n    try {\r\n      this.InstructionDescription = \"\";\r\n      this.changedetect.detectChanges();\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"instructionOnChange\");\r\n    }\r\n\r\n  }\r\n\r\n  // clear Instruction in Instruction\r\n  clearInstruction() {\r\n    try {\r\n      this.selectInstructionDropdown = false;\r\n      this.selectInstructionDropdownList = true;\r\n      this.commonServices.InstructionSearchValue = '';\r\n      this.commonServices.Instructiontiltle = \"\";\r\n      this.tempInstructionDescription = \"\";\r\n      this.InstructionDescription = '';\r\n      this.changedetect.detectChanges();\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"clearInstruction\");\r\n    }\r\n  }\r\n\r\n  // save instruction value\r\n  saveInstruction() {\r\n    var payload = {};\r\n    try {\r\n      if (this.commonServices.IsNullOrEmpty(String(this.commonServices.Instructiontiltle).trim())) {\r\n        this.commonServices.toastopen(errorconfig.error_52.message, 'error', errorconfig.error_52.code);\r\n        this.commonServices.errorResponse(errorconfig.error_52.code, errorconfig.error_52.message);\r\n        return;\r\n      }\r\n      if (this.commonServices.IsNullOrEmpty(String(this.tempInstructionDescription).trim())) {\r\n        this.commonServices.toastopen(errorconfig.error_51.message, 'error', errorconfig.error_51.code);\r\n        this.commonServices.errorResponse(errorconfig.error_51.code, errorconfig.error_51.message);\r\n        return;\r\n      }\r\n      var body = {\r\n        text: this.commonServices.Instructiontiltle.trim(),\r\n        value: '1',\r\n        description: this.tempInstructionDescription.trim(),\r\n        status: '0',\r\n        userId: this.commonServices.physicianDetails.userId,\r\n      };\r\n      payload = {\r\n        body: body,\r\n        params: {\r\n          request_type: \"parameter\",\r\n          userId: this.commonServices.physicianDetails.userId,\r\n          id: this.InstructionId\r\n        }\r\n      }\r\n      if (this.InstructionId != null && this.InstructionId != '') {\r\n        this.commonServices.complexId = parseInt(this.InstructionId);\r\n        this.apiService.PutNew(body, config.PHYSICIAN.UPDATE_INSTRUCTION_VALUE + this.commonServices.physicianDetails.userId + '&id=' + this.InstructionId).subscribe((res) => {\r\n          try {\r\n            if (this.commonServices.IsNullOrEmpty(res)) {\r\n              this.selectInstructionDropdownList = false;\r\n              this.selectInstructionDropdown = true; this.changedetect.detectChanges();\r\n              this.commonServices.setlogvalue(false, \"\", \"\", \"RxComponent\", \"saveInstruction\", payload);\r\n              this.commonServices.toastopen(errorconfig.error_64.message, 'error', errorconfig.error_64.code);\r\n              this.commonServices.errorResponse(errorconfig.error_64.code, errorconfig.error_64.message);\r\n              return;\r\n            }\r\n            if (res.response_code == 0) {\r\n              this.InstructionDescription = this.tempInstructionDescription;\r\n              this.commonServices.InstructionSearchValue = this.commonServices.Instructiontiltle;\r\n              this.selectInstructionDropdownList = true;\r\n              this.selectInstructionDropdown = true;\r\n              this.getInstructionValues();\r\n            } else {\r\n              this.commonServices.setlogvalue(false, res.response_message, res.response_message, \"RxComponent\", \"saveInstruction\", payload);\r\n              this.commonServices.toastopen(res.response_message, 'error', res.error_code);\r\n              this.commonServices.errorResponse(res.error_code, res.response_message);\r\n              this.selectInstructionDropdownList = false;\r\n              this.selectInstructionDropdown = true;\r\n            }\r\n            this.changedetect.detectChanges();\r\n          }\r\n          catch (ex: any) {\r\n            this.selectInstructionDropdownList = false;\r\n            this.selectInstructionDropdown = true;\r\n            this.changedetect.detectChanges();\r\n            this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"saveInstruction\", payload);\r\n          }\r\n        }, error => {\r\n          this.selectInstructionDropdownList = false;\r\n          this.selectInstructionDropdown = true;\r\n          this.changedetect.detectChanges();\r\n          this.commonServices.setlogvalue(false, error.message, error.stack, \"RxComponent\", \"saveInstruction\", payload);\r\n          this.commonServices.toastopen(errorconfig.error_65.message + error, \"error\", errorconfig.error_65.code);\r\n          this.commonServices.errorResponse(errorconfig.error_65.code, errorconfig.error_65.message + error);\r\n        });\r\n      } else {\r\n        payload = body;\r\n        this.apiService.Post(body, config.PHYSICIAN.ADD_INSTRUCTION_VALUE).subscribe((res) => {\r\n          try {\r\n            if (this.commonServices.IsNullOrEmpty(res)) {\r\n              this.selectInstructionDropdownList = false;\r\n              this.selectInstructionDropdown = true; this.changedetect.detectChanges();\r\n              this.commonServices.setlogvalue(false, \"\", \"\", \"RxComponent\", \"saveInstruction\", payload);\r\n              this.commonServices.toastopen(errorconfig.error_64.message, 'error', errorconfig.error_64.code);\r\n              this.commonServices.errorResponse(errorconfig.error_64.code, errorconfig.error_64.message);\r\n              return;\r\n            }\r\n            if (res.response_code == 0) {\r\n              this.commonServices.complexId = 0;\r\n              this.commonServices.InstructionSearchValue = '';\r\n              this.commonServices.Instructiontiltle = \"\";\r\n              this.tempInstructionDescription = \"\";\r\n              this.selectInstructionDropdownList = true;\r\n              this.selectInstructionDropdown = true;\r\n              this.getInstructionValues();\r\n            } else {\r\n              this.commonServices.setlogvalue(false, res.response_message, res.response_message, \"RxComponent\", \"saveInstruction\", payload);\r\n              this.commonServices.toastopen(res.response_message, 'error', res.error_code);\r\n              this.commonServices.errorResponse(res.error_code, res.response_message);\r\n              this.selectInstructionDropdownList = false;\r\n              this.selectInstructionDropdown = true;\r\n            }\r\n            this.changedetect.detectChanges();\r\n          }\r\n          catch (ex: any) {\r\n            this.selectInstructionDropdownList = false;\r\n            this.selectInstructionDropdown = true;\r\n            this.changedetect.detectChanges();\r\n            this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"saveInstruction\", payload);\r\n          }\r\n        }, error => {\r\n          this.selectInstructionDropdownList = false;\r\n          this.selectInstructionDropdown = true;\r\n          this.commonServices.setlogvalue(false, error.message, error.stack, \"RxComponent\", \"saveInstruction\", payload);\r\n          this.commonServices.toastopen(errorconfig.error_65.message + error, \"error\", errorconfig.error_65.code);\r\n          this.commonServices.errorResponse(errorconfig.error_65.code, errorconfig.error_65.message + error);\r\n        });\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"saveInstruction\", payload);\r\n    }\r\n  }\r\n\r\n  // Delete instruction\r\n  deleteInstruction(id: Number) {\r\n    var payload = {};\r\n    try {\r\n      payload = {\r\n        request_type: \"parameter\",\r\n        userId: this.commonServices.physicianDetails.userId,\r\n        id: id\r\n      }\r\n      this.apiService.PutNew('', config.PHYSICIAN.DELETE_INSTRUCTION_VALUE + this.commonServices.physicianDetails.userId + '&id=' + id).subscribe((res) => {\r\n        try {\r\n          if (this.commonServices.IsNullOrEmpty(res)) {\r\n            this.commonServices.setlogvalue(false, \"\", \"\", \"RxComponent\", \"deleteInstruction\", payload);\r\n            this.commonServices.toastopen(errorconfig.error_64.message, 'error', errorconfig.error_64.code);\r\n            this.commonServices.errorResponse(errorconfig.error_64.code, errorconfig.error_64.message);\r\n            return;\r\n          }\r\n          if (res.response_code == 0) {\r\n            this.selectInstructionDropdownList = true;\r\n            this.selectInstructionDropdown = true;\r\n            this.commonServices.InstructionSearchValue = '';\r\n            this.commonServices.Instructiontiltle = \"\";\r\n            this.tempInstructionDescription = \"\";\r\n            this.getInstructionValues();\r\n            this.changedetect.detectChanges();\r\n          } else {\r\n            this.commonServices.setlogvalue(false, res.response_message, res.response_message, \"RxComponent\", \"deleteInstruction\", payload);\r\n            this.commonServices.toastopen(res.response_message, 'error', res.error_code);\r\n            this.commonServices.errorResponse(res.error_code, res.response_message);\r\n          }\r\n        }\r\n        catch (ex: any) {\r\n          this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"deleteInstruction\", payload);\r\n        }\r\n      }, error => {\r\n        this.commonServices.setlogvalue(false, error.message, error.stack, \"RxComponent\", \"deleteInstruction\", payload);\r\n        this.commonServices.toastopen(errorconfig.error_65.message + error, \"error\", errorconfig.error_65.code);\r\n        this.commonServices.errorResponse(errorconfig.error_65.code, errorconfig.error_65.message + error);\r\n      });\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"deleteInstruction\", payload);\r\n    }\r\n  }\r\n\r\n  // add new Instruction\r\n  addNewInstruction() {\r\n    try {\r\n      this.commonServices.InstructionSearchValue = '';\r\n      this.commonServices.Instructiontiltle = \"\";\r\n      this.tempInstructionDescription = \"\";\r\n      this.InstructionDescription = '';\r\n      this.InstructionId = '';\r\n      this.selectInstructionDropdown = true;\r\n      this.selectInstructionDropdownList = false;\r\n      this.changedetect.detectChanges();\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"addNewInstruction\");\r\n    }\r\n  }\r\n\r\n  // select route value\r\n  selectRoutesearcValue(route: any) {\r\n    try {\r\n      this.selectRouteDropdown = false;\r\n      this.commonServices.routeSearchValue = !this.commonServices.IsNullOrEmpty(route?.routeName) ? route.routeName : '';\r\n      this.changedetect.detectChanges();\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"selectRoutesearcValue\");\r\n    }\r\n  }\r\n\r\n  // select Dose value\r\n  selectDoseValue(dose: any) {\r\n    try {\r\n      this.selectDoseDropdown = false;\r\n      this.commonServices.doseSearchValue = !this.commonServices.IsNullOrEmpty(dose?.text) ? dose.text : \"\";\r\n      this.commonServices.doseValue = !this.commonServices.IsNullOrEmpty(dose?.value) ? dose.value : \"\";\r\n      this.commonServices.rxEndDateCalculater();\r\n      this.changedetect.detectChanges();\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"selectDoseValue\");\r\n    }\r\n  }\r\n\r\n  // select Frequency value\r\n  selectFrequencyValue(frequency: any) {\r\n    try {\r\n      this.selectFreqDropdown = false;\r\n      this.commonServices.freqSearchValue = !this.commonServices.IsNullOrEmpty(frequency?.text) ? frequency.text : \"\";\r\n      this.commonServices.freqValue = !this.commonServices.IsNullOrEmpty(frequency?.value) ? frequency.value : \"\";\r\n      this.commonServices.rxEndDateCalculater();\r\n      this.changedetect.detectChanges();\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"selectFrequencyValue\");\r\n    }\r\n  }\r\n\r\n  // select Food value\r\n  selectFoodValue(food: any) {\r\n    try {\r\n      this.selectFoodDropdown = false;\r\n      this.commonServices.foodSearchValue = !this.commonServices.IsNullOrEmpty(food?.text) ? food.text : \"\";\r\n      this.changedetect.detectChanges();\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"selectFoodValue\");\r\n    }\r\n  }\r\n\r\n  selectStpValue(stp: any) {\r\n    try {\r\n      this.selectstpDropdown = false;\r\n      this.commonServices.sendToPharmacyValue = !this.commonServices.IsNullOrEmpty(stp?.name) ? stp.name : '';\r\n      this.changedetect.detectChanges();\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"selectStpValue\");\r\n    }\r\n  }\r\n\r\n  //select Purpose value\r\n  selectPurposeValue(purpose: any) {\r\n    try {\r\n      this.selectPurposeDropdown = false;\r\n      this.changedetect.detectChanges();\r\n      this.commonServices.purposeSearchValue = !this.commonServices.IsNullOrEmpty(purpose?.lookupText) ? purpose.lookupText : '';\r\n      this.commonServices.complexId = !this.commonServices.IsNullOrEmpty(purpose?.id) ? purpose.id : \"\";\r\n      this.changedetect.detectChanges();\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"selectPurposeValue\");\r\n    }\r\n  }\r\n\r\n  // Quantity change\r\n  quantityChange() {\r\n    try {\r\n      if (!this.commonServices.IsNullOrEmpty(this.commonServices.quantityVal) && !this.commonServices.IsNullOrEmpty(this.commonServices.repeatsVal)) {\r\n        this.commonServices.rxEndDateCalculater();\r\n      }\r\n      const convertquantityval = parseInt(this.commonServices.quantityVal, 10);\r\n      this.commonServices.quantityVal = convertquantityval.toString();\r\n      //this.commonServices.quantityVal = this.roundData(parseInt(this.commonServices.quantityVal)).toString();\r\n      this.commonServices.rxAuthority = false;\r\n      this.changedetect.detectChanges();\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"quantityChange\");\r\n    }\r\n  }\r\n\r\n  checkMobile(evt: any): any {\r\n    try {\r\n      var charCode = (evt.which) ? evt.which : evt.keyCode;\r\n      if (charCode > 31 && (charCode < 47 || charCode > 57))\r\n        return false;\r\n      return true;\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"checkMobile\");\r\n      return false;\r\n    }\r\n  }\r\n\r\n  dayschange() {\r\n    try {\r\n      if (this.commonServices.daysBtnRepeatsVal != null) {\r\n        const convertdayschange = parseInt(this.commonServices.daysBtnRepeatsVal, 10);\r\n        this.commonServices.daysBtnRepeatsVal = convertdayschange.toString();\r\n        this.changedetect.detectChanges();\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"dayschange\");\r\n    }\r\n  }\r\n\r\n  repeatsChange() {\r\n    try {\r\n      this.commonServices.rxAuthority = false;\r\n      if (!this.commonServices.IsNullOrEmpty(this.commonServices.quantityVal) && !this.commonServices.IsNullOrEmpty(this.commonServices.repeatsVal)) {\r\n        this.commonServices.rxEndDateCalculater();\r\n      }\r\n      const convertrepeatsval = parseInt(this.commonServices.repeatsVal, 10);\r\n      this.commonServices.repeatsVal = convertrepeatsval.toString();\r\n      this.changedetect.detectChanges();\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"repeatsChange\");\r\n    }\r\n  }\r\n  //unlisted check box\r\n  unlistedRA() {\r\n    try {\r\n      if (!this.commonServices.unlistedRA) {\r\n        this.commonServices.unlistedRA = true;\r\n        this.prescribeAS_RPBS = false;\r\n        this.commonServices.PrescribeAS = 'RPBS';\r\n        this.changedetect.detectChanges();\r\n      } else {\r\n        this.commonServices.unlistedRA = false;\r\n        this.prescribeAS_RPBS = true;\r\n        this.commonServices.PrescribeAS = 'Private';\r\n        this.changedetect.detectChanges();\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"unlistedRA\");\r\n    }\r\n  }\r\n\r\n  private() {\r\n    try {\r\n      this.commonServices.PrescribeAS = 'Private';\r\n      if (this.commonServices.unlistedRA) {\r\n        this.commonServices.unlistedRA = false;\r\n        this.prescribeAS_RPBS = true;\r\n      }\r\n      this.commonServices.CTGCoPayment = false;\r\n      this.changedetect.detectChanges();\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"private\");\r\n    }\r\n  }\r\n\r\n  PBS() {\r\n    try {\r\n      this.commonServices.PrescribeAS = 'PBS';\r\n      this.changedetect.detectChanges();\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"PBS\");\r\n    }\r\n  }\r\n\r\n  RPBS() {\r\n    try {\r\n      this.commonServices.PrescribeAS = 'RPBS';\r\n      this.commonServices.CTGCoPayment = false;\r\n      this.changedetect.detectChanges();\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"RPBS\");\r\n    }\r\n  }\r\n\r\n  //selected medicine\r\n  selectFormulation(med: any, index: any) {\r\n    try {\r\n      this.commonServices.selectedFormulation = med;\r\n      this.commonServices.clearMedicalPrescriptionDataOnchangeofMedicine(med);\r\n      if (!this.commonServices.isMedicineRestrict) {\r\n        this.commonServices.isS8WarningNext = true;\r\n        this.restrictions = med.Restrictions && med.Restrictions.length != 0 ? med.Restrictions[0] : null;\r\n        this.commonServices.lemi = med.aip != null ? med.aip.lemi : false;\r\n        this.commonServices.lmbc = med.aip != null ? med.aip.lmbc : false;\r\n        this.commonServices.isBrandName = med.aip != null ? med.aip.lemi : false;\r\n\r\n        if (med.Restrictions && med.Restrictions.length != 0) {\r\n          var restrictionLists = med.Restrictions.filter(\r\n            (e: any) =>\r\n              e.restrictionPreview != null &&\r\n              e.restrictionText != null &&\r\n              e.restrictionPreview != '' &&\r\n              e.restrictionText != ''\r\n          );\r\n          if (restrictionLists.length > 0) {\r\n            this.isShowRestrictions = true;\r\n          } else {\r\n            this.isShowRestrictions = false;\r\n          }\r\n        } else {\r\n          this.isShowRestrictions = false;\r\n        }\r\n      }\r\n\r\n\r\n      // if (this.state.selectedIndex != index) {\r\n      //   this.clearMedicalPrescriptionDataOnchangeofMedicine(med);\r\n      // }\r\n      this.commonServices.isFetching = false;\r\n      this.isRtpmNext = true;\r\n      this.commonServices.authorityFormNo = this.getAddAuthValue(this.tempAuthorityFormNo);\r\n      this.commonServices.rxEndDateCalculater();\r\n      this.enablePrescribeAs(med);\r\n      this.commonServices.selectedBrandFormulation = null;\r\n      this.changedetect.detectChanges();\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"selectFormulation\");\r\n    }\r\n  }\r\n\r\n  //selected Favourite medicine\r\n  selectFavouriteFormulation(med: any, index: any) {\r\n    try {\r\n      this.commonServices.selectedFormulation = med;\r\n      this.commonServices.clearMedicalPrescriptionDataOnchangeofMedicine(med);\r\n      if (!this.commonServices.isMedicineRestrict) {\r\n        this.commonServices.isS8WarningNext = true;\r\n        this.restrictions = med.Restrictions && med.Restrictions.length != 0 ? med.Restrictions[0] : null;\r\n        this.commonServices.lemi = med.aip != null ? med.aip.lemi : false;\r\n        this.commonServices.lmbc = med.aip != null ? med.aip.lmbc : false;\r\n        this.commonServices.isBrandName = med.aip != null ? med.aip.lemi : false;\r\n\r\n        if (med.Restrictions && med.Restrictions.length != 0) {\r\n          var restrictionLists = med.Restrictions.filter(\r\n            (e: any) =>\r\n              e.restrictionPreview != null &&\r\n              e.restrictionText != null &&\r\n              e.restrictionPreview != '' &&\r\n              e.restrictionText != ''\r\n          );\r\n          if (restrictionLists.length > 0) {\r\n            this.isShowRestrictions = true;\r\n          } else {\r\n            this.isShowRestrictions = false;\r\n          }\r\n        } else {\r\n          this.isShowRestrictions = false;\r\n        }\r\n      }\r\n      this.commonServices.isFetching = false;\r\n      this.isRtpmNext = true;\r\n      this.commonServices.authorityFormNo = this.getAddAuthValue(this.tempAuthorityFormNo);\r\n      this.commonServices.rxEndDateCalculater();\r\n      this.enablePrescribeAs(med);\r\n      this.commonServices.selectedBrandFormulation = null;\r\n      this.changedetect.detectChanges();\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"selectFavouriteFormulation\");\r\n    }\r\n  }\r\n\r\n  getBrandName(selectedFormulation: any) {\r\n    try {\r\n      if (!this.commonServices.IsNullOrEmpty(selectedFormulation)) {\r\n        if (!this.commonServices.IsNullOrEmpty(selectedFormulation.amt) && selectedFormulation.amt.length != 0 && !this.commonServices.IsNullOrEmpty(selectedFormulation.amt[0].tpName)) {\r\n          return selectedFormulation.amt[0].tpName;\r\n        } else if (!this.commonServices.IsNullOrEmpty(selectedFormulation.brand?.brandName)) {\r\n          return selectedFormulation.brand.brandName;\r\n        }\r\n        else {\r\n          return '';\r\n        }\r\n      } else {\r\n        return '';\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"getBrandName\");\r\n      return \"\";\r\n    }\r\n  }\r\n\r\n  enablePrescribeAs(med: any) {\r\n    try {\r\n      // if (med.pbsType.toLowerCase() == \"non pbs\" || this.isPrescribeAsPrivateOnly) {\r\n      //   this.prescribeAS_PBS = true;\r\n      //   this.prescribeAS_RPBS = true;\r\n      //   this.commonServices.PrescribeAS = 'Private';\r\n      // } else\r\n      if (!this.commonServices.IsNullOrEmpty(med?.pbsType) && med.pbsType.toUpperCase() == \"PBS/RPBS\" && !this.isPrescribeAsPrivateOnly && !this.commonServices.isMedicineRestrict) {\r\n        if (!this.commonServices.IsNullOrEmpty(this.commonServices.patientDetails?.medicareNumber) && !this.commonServices.IsNullOrEmpty(this.commonServices.patientDetails?.dvaNumber)) {\r\n          this.prescribeAS_PBS = false;\r\n          this.prescribeAS_RPBS = false;\r\n          this.commonServices.PrescribeAS = 'RPBS';\r\n        } else {\r\n          if (!this.commonServices.IsNullOrEmpty(this.commonServices.patientDetails?.medicareNumber)) {\r\n            this.prescribeAS_RPBS = true;\r\n            this.prescribeAS_PBS = false;\r\n            this.commonServices.PrescribeAS = 'PBS';\r\n          } else if (!this.commonServices.IsNullOrEmpty(this.commonServices.patientDetails?.dvaNumber)) {\r\n            this.prescribeAS_PBS = false;\r\n            this.prescribeAS_RPBS = false;\r\n            this.commonServices.PrescribeAS = 'RPBS';\r\n          } else {\r\n            this.prescribeAS_PBS = true;\r\n            this.prescribeAS_RPBS = true;\r\n            this.commonServices.PrescribeAS = 'Private';\r\n          }\r\n        }\r\n      } else if (!this.commonServices.IsNullOrEmpty(med?.pbsType) && med.pbsType.toUpperCase() == \"RPBS\" && !this.isPrescribeAsPrivateOnly && !this.commonServices.isMedicineRestrict) {\r\n        if (!this.commonServices.IsNullOrEmpty(this.commonServices.patientDetails?.dvaNumber)) {\r\n          this.prescribeAS_RPBS = false;\r\n          this.prescribeAS_PBS = true;\r\n          this.commonServices.PrescribeAS = 'RPBS';\r\n        } else {\r\n          this.prescribeAS_RPBS = true;\r\n          this.prescribeAS_PBS = true;\r\n          this.commonServices.PrescribeAS = 'Private';\r\n        }\r\n      } else if (!this.commonServices.IsNullOrEmpty(med?.pbsType) && med.pbsType.toUpperCase() == \"PBS\" && !this.isPrescribeAsPrivateOnly && !this.commonServices.isMedicineRestrict) {\r\n        if (!this.commonServices.IsNullOrEmpty(this.commonServices.patientDetails?.medicareNumber) || !this.commonServices.IsNullOrEmpty(this.commonServices.patientDetails?.dvaNumber)) {\r\n          this.prescribeAS_PBS = false;\r\n          this.prescribeAS_RPBS = true;\r\n          this.commonServices.PrescribeAS = 'PBS';\r\n        } else {\r\n          this.prescribeAS_PBS = true;\r\n          this.prescribeAS_RPBS = true;\r\n          this.commonServices.PrescribeAS = 'Private';\r\n        }\r\n      } else if (!this.commonServices.IsNullOrEmpty(med?.pbsType) && (med.pbsType.toUpperCase() == \"EXTEMPORANEOUS PREPARATIONS\" || med.pbsType.toUpperCase() == \"SECTION 100\") && !this.isPrescribeAsPrivateOnly && !this.commonServices.isMedicineRestrict) {\r\n        if ((!this.commonServices.IsNullOrEmpty(this.commonServices.patientDetails?.medicareNumber) || !this.commonServices.IsNullOrEmpty(this.commonServices.patientDetails?.dvaNumber)) && !this.commonServices.IsNullOrEmpty(med?.pbsCode) && med.pbsCode != \"\") {\r\n          this.prescribeAS_PBS = false;\r\n          this.prescribeAS_RPBS = true;\r\n          this.commonServices.PrescribeAS = 'PBS';\r\n        } else {\r\n          this.prescribeAS_PBS = true;\r\n          this.prescribeAS_RPBS = true;\r\n          this.commonServices.PrescribeAS = 'Private';\r\n        }\r\n      }\r\n      else if (!this.commonServices.IsNullOrEmpty(med?.pbsType) && med.pbsType.toUpperCase() == \"PALLIATIVE CARE\" && !this.isPrescribeAsPrivateOnly && !this.commonServices.isMedicineRestrict) {\r\n        if (this.commonServices.patientDetails.dvaNumber != null && this.commonServices.patientDetails.dvaNumber != '' && med.pbsCode != \"\") {\r\n          this.prescribeAS_PBS = false;\r\n          this.prescribeAS_RPBS = false;\r\n          this.commonServices.PrescribeAS = 'RPBS';\r\n        } else if ((!this.commonServices.IsNullOrEmpty(this.commonServices.patientDetails?.medicareNumber) || !this.commonServices.IsNullOrEmpty(this.commonServices.patientDetails?.dvaNumber)) && !this.commonServices.IsNullOrEmpty(med?.pbsCode) && med.pbsCode != \"\") {\r\n          this.prescribeAS_PBS = false;\r\n          this.prescribeAS_RPBS = true;\r\n          this.commonServices.PrescribeAS = 'PBS';\r\n        } else {\r\n          this.prescribeAS_PBS = true;\r\n          this.prescribeAS_RPBS = true;\r\n          this.commonServices.PrescribeAS = 'Private';\r\n        }\r\n      }\r\n      else {\r\n        this.prescribeAS_PBS = true;\r\n        this.prescribeAS_RPBS = true;\r\n        this.commonServices.PrescribeAS = 'Private';\r\n      }\r\n      // else if (med.pbsType.toUpperCase() == \"SECTION 100\") {\r\n      //   if (this.commonServices.patientDetails.medicareNumber != \"\" &&\r\n      //     this.commonServices.patientDetails.medicareNumber != null && med.pbsCode != \"\" || this.commonServices.patientDetails.dvaNumber != null &&\r\n      //     this.commonServices.patientDetails.dvaNumber != '' && med.pbsCode != \"\") {\r\n      // this.prescribeAS_PBS = false;\r\n      // this.prescribeAS_RPBS = true;\r\n      // this.commonServices.PrescribeAS = 'PBS';\r\n      //   } else {\r\n      // this.prescribeAS_PBS = true;\r\n      // this.prescribeAS_RPBS = true;\r\n      // this.commonServices.PrescribeAS = 'Private';\r\n      //     this.setState({ prescribeAS_PBS: true, prescribeAS_RPBS: true, PrescribeAS: \"Private\" });\r\n      //   }\r\n      // }\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"enablePrescribeAs\");\r\n    }\r\n  }\r\n\r\n  getTradeName(): any {\r\n    try {\r\n      // var selectedFormulation:any = this.commonServices.selectedFormulation;\r\n\r\n      if (!this.commonServices.isMedicineRestrict) {\r\n        var tradeName = '';\r\n        var amt_tpName = this.getBrandName(this.commonServices.selectedFormulation);\r\n        var tBrandName = !this.commonServices.IsNullOrEmpty(amt_tpName) ? amt_tpName : !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation?.brand?.brandName) ? this.commonServices.selectedFormulation.brand.brandName : \"\";\r\n        //var amt_tppName = !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation.amt) && this.commonServices.selectedFormulation.amt.length != 0 && this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation.amt[0].tpps) && this.commonServices.selectedFormulation.amt[0].tpps.length != 0 ? this.commonServices.selectedFormulation.amt[0].tpps[0].tppName : '';\r\n        if (!this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation)) {\r\n          if (this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation?.genericName) || !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation?.dosageForm) && this.commonServices.selectedFormulation.dosageForm.toLowerCase() == 'gauze') {\r\n            return !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation.productName) ? this.commonServices.selectedFormulation.productName : \"\";\r\n          } else {\r\n            if (this.commonServices.isBrandName == false && this.commonServices.lemi == false && this.commonServices.selectedFormulation.IsExtemp == false) {\r\n              tradeName = !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation?.genericName) ? this.commonServices.selectedFormulation.genericName : \"\";\r\n              return tradeName;\r\n            } else if (this.commonServices.isBrandName == true && this.commonServices.lemi == false && this.commonServices.selectedFormulation.IsExtemp == false) {\r\n              tradeName = !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation?.genericName) ? this.commonServices.selectedFormulation.genericName + '(' + tBrandName + ')' : \"\";\r\n              return tradeName;\r\n            } else if (this.commonServices.isBrandName == false && this.commonServices.lemi == true && this.commonServices.selectedFormulation.IsExtemp == false) {\r\n              tradeName = !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation?.genericName) ? this.commonServices.selectedFormulation.genericName : \"\";\r\n              return tradeName;\r\n            } else if (this.commonServices.isBrandName == true && this.commonServices.lemi == true && this.commonServices.selectedFormulation.IsExtemp == false) {\r\n              tradeName = tBrandName;\r\n              return tradeName;\r\n            }\r\n            // else if (IsExtemp == true && lemi == true) {\r\n            //   tradeName = amt_tppName != null && amt_tppName != \"\" ? amt_tppName : this.state.selectedFormulation.productName.trim();\r\n            //   return tradeName.trim();\r\n            // }\r\n            // else if (IsExtemp == true) {\r\n            //   tradeName = this.state.selectedFormulation.formula == null ? this.state.selectedFormulation.productName.trim() : this.state.selectedFormulation.formula;\r\n            //   return tradeName.trim();\r\n            // }\r\n            else if (this.commonServices.selectedFormulation.IsExtemp == true) {\r\n              tradeName = this.getExtempTTPName(this.commonServices.selectedFormulation);\r\n              return tradeName;\r\n            }\r\n          }\r\n        }\r\n        else {\r\n          return tradeName;\r\n        }\r\n      }\r\n      else {\r\n        return \"\";\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"getTradeName\");\r\n      return \"\";\r\n    }\r\n  }\r\n\r\n  getTradeNameDisplay() {\r\n    try {\r\n      if (!this.commonServices.isMedicineRestrict) {\r\n        var amt_tpName = this.getBrandName(this.commonServices.selectedFormulation);\r\n        var tBrandName = !this.commonServices.IsNullOrEmpty(amt_tpName) ? amt_tpName : !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation?.brand?.brandName) ? this.commonServices.selectedFormulation.brand.brandName : \"\";\r\n        if (this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation?.genericName)) {\r\n          // let PItemThree2 = prescribedItemReservedThree.lastIndexOf(\"[\");\r\n          // let PItemThree3 = prescribedItemReservedThree.slice(0, PItemThree2);\r\n          // this.commonServices.prescribedItemReservedThree = PItemThree2 >= 0 ? PItemThree3.trim() : prescribedItemReservedThree;\r\n          this.commonServices.rxDisplayName = this.commonServices.eopDisplayName = !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation.productName) ? this.commonServices.selectedFormulation.productName : \"\";\r\n        } else if (this.commonServices.selectedFormulation.IsExtemp == true || this.commonServices.lemi == true || (this.commonServices.selectedFormulation.dosageForm != null && this.commonServices.selectedFormulation.dosageForm.toLowerCase() == \"gauze\")) {\r\n          if (!this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation.dosageForm) && this.commonServices.selectedFormulation.dosageForm.toLowerCase() == \"gauze\") {\r\n            // let PItemThree2 = prescribedItemReservedThree.lastIndexOf(\"[\");\r\n            // let PItemThree3 = prescribedItemReservedThree.slice(0, PItemThree2);\r\n            // this.commonServices.prescribedItemReservedThree = PItemThree2 >= 0 ? PItemThree3.trim() : prescribedItemReservedThree;\r\n            this.commonServices.eopDisplayName = this.commonServices.rxDisplayName = !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation.productName) ? this.commonServices.selectedFormulation.productName : \"\";\r\n          } else {\r\n            // let PItemThree = extempTTPName.lastIndexOf(\"[\");\r\n            // let PItemThree1 = extempTTPName.slice(0, PItemThree);\r\n            this.commonServices.eopDisplayName = this.commonServices.rxDisplayName = this.getExtempTTPName(this.commonServices.selectedFormulation).trim();\r\n            // this.commonServices.prescribedItemReservedThree = PItemThree >= 0 ? PItemThree1.trim() : extempTTPName;\r\n          }\r\n        } else {\r\n          var mppName = this.getMPPName(this.commonServices.selectedFormulation);\r\n          var SachetOrPump = !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation?.strSachetOrPump) ? \" \" + this.commonServices.selectedFormulation.strSachetOrPump : \"\";\r\n          if (!this.commonServices.IsNullOrEmpty(mppName)) {\r\n            if (this.commonServices.isBrandName == true) {\r\n              this.commonServices.eopDisplayName = this.commonServices.rxDisplayName = (mppName.trim() + \"\" + SachetOrPump + ' (' + tBrandName + ')').trim();\r\n            } else {\r\n              this.commonServices.eopDisplayName = this.commonServices.rxDisplayName = (mppName.trim() + \"\" + SachetOrPump).trim();\r\n            }\r\n          } else {\r\n            var strength = this.rxStrengthcalculation(this.commonServices.selectedFormulation);\r\n            var dispName = !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation?.DispName) ? this.commonServices.selectedFormulation.DispName.trim() : \"\";\r\n            if (this.commonServices.isBrandName == true) {\r\n              this.commonServices.rxDisplayName = (dispName + \" \" + (!this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation.dosageForm) ? this.commonServices.selectedFormulation.dosageForm.trim() + \" \" : \"\") + (!this.commonServices.IsNullOrEmpty(tBrandName) ? '(' + tBrandName + ') ' : \"\") + strength).trim();\r\n              this.commonServices.eopDisplayName = (dispName + \" \" + (!this.commonServices.IsNullOrEmpty(tBrandName) ? '(' + tBrandName + ') ' : \"\") + strength).trim();\r\n              // this.commonServices.prescribedItemReservedThree = dispName + \" \" + (!this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation.dosageForm) ? this.commonServices.selectedFormulation.dosageForm.trim() + \" \" : \"\") + (!this.commonServices.IsNullOrEmpty(tBrandName) ? '(' + tBrandName + ') ' : \"\") + this.rxStrengthcalculationNew(this.commonServices.selectedBrandFormulation);\r\n            } else {\r\n              this.commonServices.rxDisplayName = (dispName + \" \" + (!this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation.dosageForm) ? this.commonServices.selectedFormulation.dosageForm.trim() : \"\") + \" \" + strength).trim();\r\n              this.commonServices.eopDisplayName = (dispName + \" \" + strength).trim();\r\n              // this.commonServices.prescribedItemReservedThree = dispName + \" \" + (!this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation.dosageForm) ? this.commonServices.selectedFormulation.dosageForm.trim() : \"\") + \" \" + this.rxStrengthcalculationNew(this.commonServices.selectedBrandFormulation);\r\n            }\r\n          }\r\n        }\r\n      }\r\n      else {\r\n        this.commonServices.rxDisplayName = this.commonServices.eopDisplayName = !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation?.productName) ? this.commonServices.selectedFormulation.productName : \"\";\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.rxDisplayName = this.commonServices.eopDisplayName = \"\";\r\n      // this.commonServices.prescribedItemReservedThree = \"\";\r\n      this.changedetect.detectChanges();\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"getTradeNameDisplay\");\r\n    }\r\n  }\r\n\r\n  getMPPName(selectedFormulation: any) {\r\n    try {\r\n      if (!this.commonServices.IsNullOrEmpty(selectedFormulation) && (typeof selectedFormulation) === 'object' && selectedFormulation.constructor === Object && !this.commonServices.IsNullOrEmpty(selectedFormulation?.amt) && selectedFormulation.amt.length > 0 && !this.commonServices.IsNullOrEmpty(selectedFormulation.amt[0]?.mpps) && selectedFormulation.amt[0].mpps.length > 0 && !this.commonServices.IsNullOrEmpty(selectedFormulation.amt[0].mpps[0]?.mppName)) {\r\n        return selectedFormulation.amt[0].mpps[0].mppName;\r\n      } else {\r\n        return \"\";\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"getMPPName\");\r\n      return \"\";\r\n    }\r\n  }\r\n\r\n  getItemGenericIntention(lemi: boolean, isBrandName: boolean, isExtemp: boolean) {\r\n    try {\r\n      if (lemi == true && isBrandName == true && isExtemp != true) {\r\n        return 'B';\r\n      } else if (lemi == true && isBrandName == false && isExtemp != true) {\r\n        return 'G';\r\n      } else {\r\n        return 'G';\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"getItemGenericIntention\");\r\n      return \"\";\r\n    }\r\n  }\r\n\r\n  rxStrengthcalculation(formulation: any) {\r\n    try {\r\n      if (!this.commonServices.IsNullOrEmpty(formulation) && !this.commonServices.IsNullOrEmpty(formulation.itemStrengthQuantity) && formulation.itemStrengthQuantity != 0) {\r\n        if (!this.commonServices.IsNullOrEmpty(formulation.itemStrengthQuantitynumberOfPack) && formulation.itemStrengthQuantitynumberOfPack != 0) {\r\n          return ((!this.commonServices.IsNullOrEmpty(formulation.strSachetOrPump) ? formulation.strSachetOrPump : \"\") + ' [' + formulation.itemStrengthQuantity + ']' + ' x ' + formulation.itemStrengthQuantitynumberOfPack).trim();\r\n        } else {\r\n          return ((!this.commonServices.IsNullOrEmpty(formulation.strSachetOrPump) ? formulation.strSachetOrPump : \"\") + ' [' + formulation.itemStrengthQuantity + ']').trim();\r\n        }\r\n      } else {\r\n        return '';\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"rxStrengthcalculation\");\r\n      return \"\";\r\n    }\r\n  }\r\n\r\n  // rxStrengthcalculationNew(formulation: any) {\r\n  //   try {\r\n  //     if (!this.commonServices.IsNullOrEmpty(formulation) && !this.commonServices.IsNullOrEmpty(formulation.itemStrengthQuantity) && formulation.itemStrengthQuantity != 0) {\r\n  //       return !this.commonServices.IsNullOrEmpty(formulation.strSachetOrPump) ? formulation.strSachetOrPump : \"\";\r\n  //     } else {\r\n  //       return '';\r\n  //     }\r\n  //   }\r\n  //   catch (ex: any) {\r\n  //     this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"rxStrengthcalculationNew\");\r\n  //     return \"\";\r\n  //   }\r\n  // }\r\n\r\n  showAuthorityBox(Restrictions: any, PrescribeAS: any, rxAuthority: any, unlistedRA: any) {\r\n    try {\r\n      if ((!this.commonServices.IsNullOrEmpty(Restrictions) && Restrictions.length > 0 && Restrictions[0].restrictionType.toLowerCase() != 'restricted' && Restrictions[0].restrictionType.toLowerCase() != 'unrestricted' && PrescribeAS.toLowerCase() == 'pbs') || (!this.commonServices.IsNullOrEmpty(Restrictions) && Restrictions.length > 0 && Restrictions[0].restrictionType.toLowerCase() != 'restricted' && Restrictions[0].restrictionType.toLowerCase() != 'unrestricted' && PrescribeAS.toLowerCase() == 'rpbs') || (rxAuthority == true && PrescribeAS.toLowerCase() == 'pbs') || (rxAuthority == true && PrescribeAS.toLowerCase() == 'rpbs')) {\r\n        return true;\r\n      } else if (PrescribeAS.toLowerCase() == 'rpbs' && unlistedRA == true) {\r\n        return true;\r\n      } else {\r\n        return false;\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"showAuthorityBox\");\r\n      return false;\r\n    }\r\n  }\r\n\r\n  getDirections() {\r\n    try {\r\n      let directions = '';\r\n      if (!this.commonServices.IsNullOrEmpty(this.commonServices.doseSearchValue)) {\r\n        directions = this.commonServices.doseSearchValue;\r\n      }\r\n      if (!this.commonServices.IsNullOrEmpty(this.commonServices.freqSearchValue)) {\r\n        directions = directions + ' ' + this.commonServices.freqSearchValue;\r\n      }\r\n      if (!this.commonServices.IsNullOrEmpty(this.commonServices.foodSearchValue)) {\r\n        directions = directions + ' ' + this.commonServices.foodSearchValue;\r\n      }\r\n      if (!this.commonServices.IsNullOrEmpty(this.InstructionDescription)) {\r\n        directions = directions + ' ' + this.InstructionDescription;\r\n      }\r\n      else if (!this.commonServices.IsNullOrEmpty(this.commonServices.InstructionSearchValue)) {\r\n        directions = directions + ' ' + this.commonServices.InstructionSearchValue;\r\n      }\r\n      return directions.trim();\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"getDirections\");\r\n      return \"\";\r\n    }\r\n  }\r\n\r\n  //state name full form\r\n  getStateNameFromStateCode(rtpmstateName: any) {\r\n    try {\r\n      switch (rtpmstateName && rtpmstateName != '' ? rtpmstateName.toUpperCase() : '') {\r\n        case 'NSW':\r\n          return 'New South Wales';\r\n        case 'QLD':\r\n          return 'Queensland';\r\n        case 'SA':\r\n          return 'South Australia';\r\n        case 'TAS':\r\n          return 'Tasmania';\r\n        case 'VIC':\r\n          return 'Victoria';\r\n        case 'WA':\r\n          return 'Western Australia';\r\n        case 'ACT':\r\n          return 'Australian Capital Territory';\r\n        case 'NT':\r\n          return 'Northern Territory';\r\n        default:\r\n          return rtpmstateName;\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"getStateNameFromStateCode\");\r\n      return rtpmstateName;\r\n    }\r\n  }\r\n\r\n  //superscript code\r\n  shrinkSuperScriptCode = (input: any) => {\r\n    try {\r\n      let dupresult = input;\r\n      let a = input.split('<sup>');\r\n\r\n      // search for pattern in a\r\n      let count = a.length - 1;\r\n\r\n      for (let i = 0; i < count; i++) {\r\n        // if match found increase count\r\n        let start = '<sup>';\r\n        let end = '</sup>';\r\n        let startIndex = dupresult.indexOf(start) + start.length;\r\n        let endIndex = dupresult.indexOf(end, startIndex);\r\n        let extractedValue = '';\r\n\r\n        if (startIndex != -1 && endIndex != -1) {\r\n          extractedValue = dupresult.substring(startIndex, endIndex);\r\n        } else {\r\n        }\r\n\r\n        let stringNumber = this.convertToSuperscript(extractedValue);\r\n\r\n        let result = 'The number ' + stringNumber + ' is superscripted.';\r\n\r\n        // dupresult = dupresult.replace(/<sup>.*<\\/sup>/, '<sup></sup>');\r\n        // dupresult = dupresult.replaceFirst(\"\\\\<sup>.*?\\\\</sup>\", \"<sup>\" + \"\" + \"</sup>\");\r\n        dupresult = dupresult.replace(\r\n          '<sup>' + extractedValue + '</sup>',\r\n          stringNumber\r\n        );\r\n      }\r\n      // return dupresult;\r\n      return this.shrinkSubScriptCode(dupresult);\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"shrinkSuperScriptCode\");\r\n      return \"\";\r\n    }\r\n  };\r\n\r\n  //subscript code\r\n  shrinkSubScriptCode = (input: any) => {\r\n    try {\r\n      let dupresult = input;\r\n      let a = input.split('<sub>');\r\n\r\n      // search for pattern in a\r\n      let count = a.length - 1;\r\n\r\n      for (let i = 0; i < count; i++) {\r\n        // if match found increase count\r\n        let start = '<sub>';\r\n        let end = '</sub>';\r\n        let startIndex = dupresult.indexOf(start) + start.length;\r\n        let endIndex = dupresult.indexOf(end, startIndex);\r\n        let extractedValue = '';\r\n\r\n        if (startIndex != -1 && endIndex != -1) {\r\n          extractedValue = dupresult.substring(startIndex, endIndex);\r\n        } else {\r\n        }\r\n\r\n        let stringNumber = this.subscriptNumbers(extractedValue);\r\n\r\n        let result = 'The number ' + stringNumber + ' is superscripted.';\r\n        // dupresult = dupresult.replace(/<sup>.*<\\/sup>/, '<sup></sup>');\r\n        // dupresult = dupresult.replaceFirst(\"\\\\<sup>.*?\\\\</sup>\", \"<sup>\" + \"\" + \"</sup>\");\r\n        dupresult = dupresult.replace(\r\n          '<sub>' + extractedValue + '</sub>',\r\n          stringNumber\r\n        );\r\n      }\r\n      return dupresult;\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"shrinkSubScriptCode\");\r\n      return \"\";\r\n    }\r\n  };\r\n\r\n  convertToSuperscript = (input: any) => {\r\n    try {\r\n      const superscriptDigits: any = {\r\n        '0': '\\u2070',\r\n        '1': '\\u00B9',\r\n        '2': '\\u00B2',\r\n        '3': '\\u00B3',\r\n        '4': '\\u2074',\r\n        '5': '\\u2075',\r\n        '6': '\\u2076',\r\n        '7': '\\u2077',\r\n        '8': '\\u2078',\r\n        '9': '\\u2079',\r\n      };\r\n\r\n      let output = '';\r\n      for (let char of input) {\r\n        if (char in superscriptDigits) {\r\n          output += superscriptDigits[char];\r\n        } else {\r\n          output += char;\r\n        }\r\n      }\r\n      return output;\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"convertToSuperscript\");\r\n      return \"\";\r\n    }\r\n  };\r\n\r\n  subscriptNumbers(str: any) {\r\n    try {\r\n      var subscripts: any = {\r\n        '0': '\\u2080',\r\n        '1': '\\u2081',\r\n        '2': '\\u2082',\r\n        '3': '\\u2083',\r\n        '4': '\\u2084',\r\n        '5': '\\u2085',\r\n        '6': '\\u2086',\r\n        '7': '\\u2087',\r\n        '8': '\\u2088',\r\n        '9': '\\u2089',\r\n      };\r\n\r\n      var result = '';\r\n      for (var i = 0; i < str.length; i++) {\r\n        if (subscripts[str[i]]) {\r\n          result += subscripts[str[i]];\r\n        } else {\r\n          result += str[i];\r\n        }\r\n      }\r\n      return result;\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"subscriptNumbers\");\r\n      return \"\";\r\n    }\r\n  }\r\n\r\n  getAuthorityLabel(stateName: any) {\r\n    try {\r\n      var state = this.getStateCodeFromStateName(stateName);\r\n      switch (state.toUpperCase()) {\r\n        case 'NSW':\r\n          return 'Approval Number';\r\n        case 'QLD':\r\n          return 'Approval Number';\r\n        case 'SA':\r\n          return 'Approval Number';\r\n        case 'TAS':\r\n          return 'Approval Number';\r\n        case 'VIC':\r\n          return 'Approval Number';\r\n        case 'WA':\r\n          return 'Approval Number';\r\n        case 'ACT':\r\n          return 'Approval Number';\r\n        case 'NT':\r\n          return 'Approval Number';\r\n        default:\r\n          return 'Approval Number';\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"getAuthorityLabel\");\r\n      return stateName;\r\n    }\r\n  }\r\n\r\n  getStateAuthorityLabel(stateName: any) {\r\n    try {\r\n      var state = this.getStateCodeFromStateName(stateName);\r\n      switch (state.toUpperCase()) {\r\n        case 'NSW':\r\n          return 'Authorisation number';\r\n        case 'QLD':\r\n          return 'Approval number';\r\n        case 'SA':\r\n          return 'Permit number';\r\n        case 'TAS':\r\n          return 'Authority number';\r\n        case 'VIC':\r\n          return 'Warrant number';\r\n        case 'WA':\r\n          return 'Authority number';\r\n        case 'ACT':\r\n          return 'Approval number';\r\n        case 'NT':\r\n          return 'Authorisation number';\r\n        default:\r\n          return 'Authorisation number';\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"getStateAuthorityLabel\");\r\n      return stateName;\r\n    }\r\n  }\r\n\r\n  getExtempTTPName(selectedFormulation: any) {\r\n    try {\r\n      if (!this.commonServices.IsNullOrEmpty(selectedFormulation) != null) {\r\n        if (!this.commonServices.IsNullOrEmpty(selectedFormulation.amt) && selectedFormulation.amt.length != 0 && !this.commonServices.IsNullOrEmpty(selectedFormulation.amt[0].tpps) && selectedFormulation.amt[0].tpps.length != 0 && !this.commonServices.IsNullOrEmpty(selectedFormulation.amt[0].tpps[0].tppName)) {\r\n          if (!this.commonServices.IsNullOrEmpty(selectedFormulation.itemStrengthQuantitynumberOfPack) && selectedFormulation.itemStrengthQuantitynumberOfPack != 0) {\r\n            if (this.commonServices.lemi == true) {\r\n              return selectedFormulation.amt[0].tpps[0].tppName;\r\n            } else {\r\n              return (selectedFormulation.amt[0].tpps[0].tppName + (!this.commonServices.IsNullOrEmpty(selectedFormulation.itemStrengthQuantity) ? ' [' + selectedFormulation.itemStrengthQuantity + ']' + ' x ' : \"\") + selectedFormulation.itemStrengthQuantitynumberOfPack).trim();\r\n            }\r\n          } else {\r\n            if (this.commonServices.lemi == true) {\r\n              return selectedFormulation.amt[0].tpps[0].tppName;\r\n            } else {\r\n              return (selectedFormulation.amt[0].tpps[0].tppName + (!this.commonServices.IsNullOrEmpty(selectedFormulation.itemStrengthQuantity) ? ' [' + selectedFormulation.itemStrengthQuantity + ']' : \"\")).trim();\r\n            }\r\n          }\r\n        } else {\r\n          return !this.commonServices.IsNullOrEmpty(selectedFormulation?.productName) ? selectedFormulation.productName.trim() : \"\";\r\n        }\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"getExtempTTPName\");\r\n      return \"\";\r\n    }\r\n  }\r\n\r\n  roundData(value: any) {\r\n    try {\r\n      var round_Val = Math.round(value);\r\n      if (round_Val < 0) {\r\n        return 0;\r\n      } else {\r\n        var round_Val1 = round_Val.toString();\r\n        // round_Val = parseInt(round_Val1,10);\r\n        return round_Val1;\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"roundData\");\r\n      return 0;\r\n    }\r\n  }\r\n\r\n  erxMedicareCard(medicareNumber: any) {\r\n    try {\r\n      var medicareCard = '';\r\n      medicareCard = medicareNumber.slice(0, 10);\r\n      return medicareCard;\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"erxMedicareCard\");\r\n      return \"\";\r\n    }\r\n  }\r\n\r\n  erxMedicareIRN(medicareNumber: any) {\r\n    try {\r\n      var medicareCardIRN = '';\r\n      medicareCardIRN = medicareNumber.slice(-1);\r\n      return medicareCardIRN;\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"erxMedicareIRN\");\r\n      return \"\";\r\n    }\r\n  }\r\n\r\n  setUnusualQtyFlag(sFormulation: any, quantityVal: any, PrescribeAS: any) {\r\n    try {\r\n      if (PrescribeAS.toLowerCase() == 'pbs' || PrescribeAS.toLowerCase() == 'rpbs') {\r\n        if (sFormulation.maxQtyUnits != quantityVal) {\r\n          return 0;\r\n        } else {\r\n          return 1;\r\n        }\r\n      } else {\r\n        return 1;\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"setUnusualQtyFlag\");\r\n      return 1;\r\n    }\r\n  }\r\n\r\n  //state name from address\r\n  getStateCodeFromStateName(stateName: any) {\r\n    try {\r\n      switch (stateName.toLowerCase()) {\r\n        case 'new south wales':\r\n          return 'NSW';\r\n        case 'queensland':\r\n          return 'QLD';\r\n        case 'south australia':\r\n          return 'SA';\r\n        case 'tasmania':\r\n          return 'TAS';\r\n        case 'victoria':\r\n          return 'VIC';\r\n        case 'western australia':\r\n          return 'WA';\r\n        case 'australian capital territory':\r\n          return 'ACT';\r\n        case 'northern territory':\r\n          return 'NT';\r\n        default:\r\n          return stateName;\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"getStateCodeFromStateName\");\r\n      return \"\";\r\n    }\r\n  }\r\n\r\n  getGender(gender: any) {\r\n    try {\r\n      var genderText = 'Not Available';\r\n      genderText =\r\n        gender.toLowerCase() == 'm' ? 'Male' : gender.toLowerCase() == 'f' ? 'Female' : 'Not Available';\r\n      return genderText;\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"getGender\");\r\n      return 'Not Available';\r\n    }\r\n  }\r\n\r\n  getGenderCode(gender: any) {\r\n    try {\r\n      var genderCode = 'Not Available';\r\n      genderCode = gender.toLowerCase() == 'm' ? 'M' : gender.toLowerCase() == 'f' ? 'F' : 'U';\r\n      return genderCode;\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"getGenderCode\");\r\n      return 'U';\r\n    }\r\n  }\r\n\r\n  pad(value: any) {\r\n    try {\r\n      return value < 10 ? '0' + value : value;\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"pad\");\r\n      return value;\r\n    }\r\n  }\r\n\r\n  getOffset() {\r\n    try {\r\n      var date = new Date();\r\n      // var date = this.state.startDate;\r\n      var sign = date.getTimezoneOffset() > 0 ? '-' : '+';\r\n      var offset = Math.abs(date.getTimezoneOffset());\r\n      var hours = this.pad(Math.floor(offset / 60));\r\n      var minutes = this.pad(offset % 60);\r\n      return hours + ':' + minutes;\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"getOffset\");\r\n      return '';\r\n    }\r\n  }\r\n\r\n  htmlToFormattedText(restriction: string) {\r\n    try {\r\n      return restriction.replace(/<br \\/>/g, '*');\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"htmlToFormattedText\");\r\n      return restriction;\r\n    }\r\n  }\r\n\r\n  brandSubstitutesNotAllow(BrandSubstitutesNotAllow: any) {\r\n    try {\r\n      this.commonServices.BrandSubstitutesNotAllow = BrandSubstitutesNotAllow;\r\n      this.changedetect.detectChanges();\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"brandSubstitutesNotAllow\");\r\n    }\r\n  }\r\n\r\n  PRNChange(PRN: any) {\r\n    try {\r\n      this.commonServices.rxPRN = PRN;\r\n      this.changedetect.detectChanges();\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"PRNChange\");\r\n    }\r\n\r\n  }\r\n\r\n  isChangeBrandName(isBrandName: any) {\r\n    try {\r\n      this.commonServices.isBrandName = isBrandName;\r\n      if (!isBrandName) {\r\n        this.commonServices.BrandSubstitutesNotAllow = false;\r\n      }\r\n      this.changedetect.detectChanges();\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"isChangeBrandName\");\r\n    }\r\n  }\r\n\r\n  sendToPharmacyChange() {\r\n    try {\r\n      if (!this.commonServices.sendToPharmacy)\r\n        this.commonServices.sendToPharmacyValue = \"\";\r\n      this.changedetect.detectChanges();\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"sendToPharmacyChange\");\r\n    }\r\n  }\r\n\r\n  includeRtpmModal() {\r\n    try {\r\n      if (this.isRtpmNext) {\r\n        if (this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation)) {\r\n          this.commonServices.toastopen(errorconfig.error_50.message, 'error', errorconfig.error_50.code);\r\n          this.commonServices.errorResponse(errorconfig.error_50.code, errorconfig.error_50.message);\r\n          return;\r\n        }\r\n        if (!this.commonServices.isMedicineRestrict && !this.commonServices.IsNullOrEmpty(this.commonServices.patientDetails)) {\r\n          if (!this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation) && Array.isArray(this.commonServices.selectedFormulation['rtpmStates']) && (this.commonServices.selectedFormulation['rtpmStates'] as any[]).length > 0) {\r\n            let isRtpmStates = (this.commonServices.selectedFormulation['rtpmStates'] as any[]).includes(this.commonServices.patientDetails.state);\r\n            if (isRtpmStates) {\r\n              var data = \"The selected drug comes under Real Time Prescription Monitoring (RTPM) in \" + this.getStateNameFromStateCode(this.commonServices.patientDetails.state) + \". Please review.\"\r\n              this.commonServices.dialogopen(RealTimePrescriptionMonitoringComponent, this.content, data).subscribe((res) => {\r\n                if (res) {\r\n                  this.isRtpmNext = false;\r\n                  this.prescribeDropdown();\r\n                }\r\n              });\r\n            } else {\r\n              this.prescribeDropdown();\r\n            }\r\n          } else {\r\n            this.prescribeDropdown();\r\n          }\r\n        } else {\r\n          this.prescribeDropdown();\r\n        }\r\n      } else {\r\n        this.prescribeDropdown();\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"includeRtpmModal\");\r\n    }\r\n  }\r\n\r\n  EprescripeSend(flag: any) {\r\n    try {\r\n      if (!this.ePrescriptionValidation(flag)) {\r\n        this.commonServices.scriptType = 'E';\r\n        this.selectPBTNDropdown = false;\r\n        this.abortdisable = false;\r\n        if (flag == 2) {\r\n          this.isepriscribeprint = true;\r\n        }\r\n        this.changedetect.detectChanges();\r\n        if (this.showAuthorityBox(this.commonServices.selectedFormulation.Restrictions, this.commonServices.PrescribeAS, this.commonServices.rxAuthority, this.commonServices.unlistedRA) && this.commonServices.PrescribeAS.toLowerCase() === \"pbs\" && this.getStateCodeFromStateName(this.commonServices.patientDetails.state).toUpperCase() == \"NSW\") {\r\n          this.commonServices.dialogopen(PasswordComponent, this.content, 1).subscribe((res: any) => {\r\n            if (res) {\r\n              if (!this.commonServices.sendToPharmacy && !this.commonServices.emergencySupply && flag != 2) {\r\n                this.ConfirmPatientPopup();\r\n              }\r\n              else {\r\n                this.commonServices.AddressSendToAddType = \"\";\r\n                this.commonServices.rxnumber = \"\";\r\n                this.commonServices.rxemailId = \"\";\r\n                this.commonServices.isPrintAvailable = true;\r\n                this.changedetect.detectChanges();\r\n                this.prescribeMed();\r\n              }\r\n            }\r\n          });\r\n        }\r\n        else {\r\n          if (!this.commonServices.sendToPharmacy && !this.commonServices.emergencySupply && flag != 2) {\r\n            this.ConfirmPatientPopup();\r\n          }\r\n          else {\r\n            this.commonServices.AddressSendToAddType = \"\";\r\n            this.commonServices.rxnumber = \"\";\r\n            this.commonServices.rxemailId = \"\";\r\n            this.commonServices.isPrintAvailable = true;\r\n            this.changedetect.detectChanges();\r\n            var scheduleNumber = !this.commonServices.isMedicineRestrict ? (!this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation) && !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation.poisonClassification) && !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation.poisonClassification.poisonClasses) && this.commonServices.selectedFormulation.poisonClassification.poisonClasses.length != 0 && !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation.poisonClassification.poisonClasses[0]) ? this.commonServices.selectedFormulation.poisonClassification.poisonClasses[0].toLowerCase() == 'unscheduled' ? '' : this.commonServices.selectedFormulation.poisonClassification.poisonClasses[0] : '') : \"\";\r\n            if (!this.commonServices.isMedicineRestrict && scheduleNumber.toLowerCase() == 's8' && this.commonServices.physicianDetails.isPasswordCheck) {\r\n              this.commonServices.dialogopen(PasswordComponent, this.content, 2).subscribe((res: any) => {\r\n                if (res.responseCode == 0) {\r\n                  this.prescribeMed();\r\n                }\r\n              });\r\n            } else {\r\n              this.prescribeMed();\r\n            }\r\n          }\r\n        }\r\n\r\n      } else {\r\n        return;\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"EprescripeSend\");\r\n    }\r\n  }\r\n\r\n  PaperprescripeSend(flag: any) {\r\n    try {\r\n      this.commonServices.scriptType = 'M';\r\n      this.selectPBTNDropdown = false;\r\n      this.abortdisable = false;\r\n      if (flag == 2) {\r\n        this.isepriscribeprint = true;\r\n      }\r\n      this.changedetect.detectChanges();\r\n      if (this.showAuthorityBox(this.commonServices.selectedFormulation.Restrictions, this.commonServices.PrescribeAS, this.commonServices.rxAuthority, this.commonServices.unlistedRA) && this.commonServices.PrescribeAS.toLowerCase() === \"pbs\" && this.getStateCodeFromStateName(this.commonServices.patientDetails.state).toUpperCase() == \"NSW\") {\r\n        this.commonServices.dialogopen(PasswordComponent, this.content, 1).subscribe((res: any) => {\r\n        if (res) {\r\n          if (!this.commonServices.sendToPharmacy && !this.commonServices.emergencySupply && flag != 2) {\r\n            this.ConfirmPatientPopup();\r\n            }\r\n            else {\r\n              this.commonServices.AddressSendToAddType = \"\";\r\n              this.commonServices.rxnumber = \"\";\r\n              this.commonServices.rxemailId = \"\";\r\n              this.commonServices.isPrintAvailable = true;\r\n              this.changedetect.detectChanges();\r\n              this.prescribeMed();\r\n            }\r\n          }\r\n        });\r\n      }\r\n      else {\r\n        if (!this.commonServices.sendToPharmacy && !this.commonServices.emergencySupply && flag != 2 && this.commonServices.isScriptToPharmacy == 0) {\r\n          this.ConfirmPatientPopup();\r\n        }\r\n        else {\r\n          this.commonServices.AddressSendToAddType = \"\";\r\n          this.commonServices.rxnumber = \"\";\r\n          this.commonServices.rxemailId = \"\";\r\n          if (this.commonServices.isScriptToPharmacy == 0) {\r\n            this.commonServices.isPrintAvailable = true;\r\n          } else {\r\n            this.commonServices.isPrintAvailable = false;\r\n          }     \r\n          this.changedetect.detectChanges();\r\n          var scheduleNumber = !this.commonServices.isMedicineRestrict ? (!this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation) && !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation.poisonClassification) && !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation.poisonClassification.poisonClasses) && this.commonServices.selectedFormulation.poisonClassification.poisonClasses.length != 0 && !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation.poisonClassification.poisonClasses[0]) ? this.commonServices.selectedFormulation.poisonClassification.poisonClasses[0].toLowerCase() == 'unscheduled' ? '' : this.commonServices.selectedFormulation.poisonClassification.poisonClasses[0] : '') : \"\";\r\n          if (!this.commonServices.isMedicineRestrict && scheduleNumber.toLowerCase() == 's8' && this.commonServices.physicianDetails.isPasswordCheck) {\r\n            this.commonServices.dialogopen(PasswordComponent, this.content, 2).subscribe((res: any) => {\r\n              if (res.responseCode == 0) {\r\n                this.prescribeMed();\r\n              }\r\n            });\r\n          } else {\r\n            this.prescribeMed();\r\n          }\r\n        }\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"EprescripeSend\");\r\n    }\r\n  }\r\n\r\n  ConfirmPatientPopup() {\r\n    try {\r\n      this.commonServices.dialogopen(ConfirmPatientContactDetailsComponent, this.content, 1).subscribe((response: any) => {\r\n        if (response != null) {\r\n          if (response.scheduleNumber.toLowerCase() == 's8' && this.commonServices.physicianDetails.isPasswordCheck) {\r\n            this.commonServices.dialogopen(PasswordComponent, this.content, 2).subscribe((res: any) => {\r\n              if (res) {\r\n                this.commonServices.isPrintAvailable = response.isPrintAvailable;\r\n                this.commonServices.AddressSendToAddType = response.AddressSendToAddType;\r\n                this.commonServices.rxnumber = response.rxnumber;\r\n                this.commonServices.rxemailId = response.rxemailId;\r\n                this.prescribeMed();\r\n              }\r\n            });\r\n          } else {\r\n            this.commonServices.isPrintAvailable = response.isPrintAvailable;\r\n            this.commonServices.AddressSendToAddType = response.AddressSendToAddType;\r\n            this.commonServices.rxnumber = response.rxnumber;\r\n            this.commonServices.rxemailId = response.rxemailId;\r\n            this.prescribeMed();\r\n          }\r\n        } else {\r\n          this.commonServices.scriptType = '';\r\n          this.commonServices.isPrintAvailable = false;\r\n          this.commonServices.AddressSendToAddType = \"\";\r\n          this.commonServices.rxnumber = \"\";\r\n          this.commonServices.rxemailId = \"\";\r\n        }\r\n      });\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"ConfirmPatientPopup\");\r\n    }\r\n  }\r\n\r\n  prescripePrint() {\r\n    try {\r\n      if ((this.commonServices.editPrescription === true && !this.commonServices.IsNullOrEmpty(this.commonServices.rxDetails?.scriptType) && this.commonServices.rxDetails.scriptType.toUpperCase() == 'M' && !this.commonServices.IsNullOrEmpty(this.commonServices.rxDetails?.status) && this.commonServices.rxDetails.status.toLowerCase() != 'draft') || (this.commonServices.editPrescription === true && !this.commonServices.IsNullOrEmpty(this.commonServices.rxDetails?.scriptType) && this.commonServices.rxDetails.scriptType.toUpperCase() == 'E')) {\r\n        return;\r\n      }\r\n      this.abortdisable = false;\r\n      this.commonServices.scriptType = 'M';\r\n      this.commonServices.isPrintAvailable = true;\r\n      this.commonServices.AddressSendToAddType = \"SMS\";\r\n      this.changedetect.detectChanges();\r\n      var scheduleNumber = !this.commonServices.isMedicineRestrict ? (!this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation) && !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation.poisonClassification) && !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation.poisonClassification.poisonClasses) && this.commonServices.selectedFormulation.poisonClassification.poisonClasses.length != 0 && !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation.poisonClassification.poisonClasses[0]) ? this.commonServices.selectedFormulation.poisonClassification.poisonClasses[0].toLowerCase() == 'unscheduled' ? '' : this.commonServices.selectedFormulation.poisonClassification.poisonClasses[0] : '') : \"\";\r\n      if (!this.commonServices.isMedicineRestrict && scheduleNumber.toLowerCase() == 's8' && this.commonServices.physicianDetails.isPasswordCheck) {\r\n        this.commonServices.dialogopen(PasswordComponent, this.content,2).subscribe((res: any) => {\r\n          if (res.responseCode == 0) {\r\n            this.prescribeMed();\r\n          }\r\n        });\r\n      } else {\r\n        this.prescribeMed();\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"prescripePrint\");\r\n    }\r\n  }\r\n\r\n  indicationAuthority(maxQtyUnits: any, quantityVal: any, repeats: any, repeatsVal: any, index: any, restriction: any) {\r\n    try {\r\n      if (!this.commonServices.IsNullOrEmpty(this.commonServices.rxDetails) && !this.commonServices.IsNullOrEmpty(this.commonServices.rxDetails.status) && this.commonServices.rxDetails.status.toLowerCase() == 'prescribed' && this.commonServices.editPrescribedPrescription) {\r\n        return;\r\n      }\r\n      this.commonServices.pbsListInstructions = '';\r\n      this.changedetect.detectChanges();\r\n      var tempDivElement = document.createElement('div');\r\n      var replacevalue = this.htmlToFormattedText(restriction.restrictionText);\r\n      tempDivElement.innerHTML = replacevalue;\r\n      var value = tempDivElement.textContent || tempDivElement.innerText || '';\r\n      if ((!this.commonServices.quantityWithUnitFlag ? parseFloat(maxQtyUnits) : 1) < parseInt(quantityVal) || parseInt(repeats) < parseInt(repeatsVal)) {\r\n        this.commonServices.pbsListInstructions = value;\r\n        this.commonServices.pbsListInstructionsId = index;\r\n        this.commonServices.approvalNo = '';\r\n        this.changedetect.detectChanges();\r\n      } else {\r\n        this.commonServices.pbsListInstructions = value;\r\n        this.commonServices.pbsListInstructionsId = index;\r\n        this.commonServices.approvalNo = this.commonServices.selectedFormulation != null ? restriction.streamlinedCode : '';\r\n        this.changedetect.detectChanges();\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"indicationAuthority\");\r\n    }\r\n  }\r\n\r\n  getMaxQuantity() {\r\n    try {\r\n      if (!this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation?.pbsType) && this.commonServices.selectedFormulation.pbsType.toLowerCase() == \"non pbs\") {\r\n        return this.commonServices.selectedFormulation.numberOfPack + \"x\" + this.commonServices.selectedFormulation.unitPerPack;\r\n      }\r\n      else {\r\n        if (this.commonServices.isMedicineRestrict && !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation?.numberOfPack) && this.commonServices.selectedFormulation?.numberOfPack != 0) {\r\n          return this.commonServices.selectedFormulation.numberOfPack;\r\n        }\r\n        if (!this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation?.maxQtyUnits))\r\n          return (this.commonServices.quantityWithUnitFlag ? \"1 x \" : \"\") + this.commonServices.selectedFormulation.maxQtyUnits\r\n        else\r\n          return \"\";\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"getMaxQuantity\");\r\n      return \"\";\r\n    }\r\n  }\r\n\r\n  getDefaultQuantity() {\r\n    try {\r\n      if (this.commonServices.isMedicineRestrict && !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation?.numberOfPack) && this.commonServices.selectedFormulation?.numberOfPack != 0) {\r\n        return this.commonServices.selectedFormulation.numberOfPack;\r\n      }\r\n      if (!this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation?.maxQtyUnits)) {\r\n        return (this.commonServices.quantityWithUnitFlag ? \"1 x \" : \"\") + this.commonServices.selectedFormulation.maxQtyUnits\r\n      }\r\n      return \"\";\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"getDefaultQuantity\");\r\n      return \"\";\r\n    }\r\n\r\n  }\r\n\r\n  onInputChange(newValue: any) {\r\n    try {\r\n      this.commonServices.pbsListInstructions = newValue;\r\n      this.changedetect.detectChanges();\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"onInputChange\");\r\n    }\r\n  }\r\n\r\n  onInputchangeApprovalNo(newValue: any) {\r\n    try {\r\n      this.changedetect.detectChanges();\r\n      this.commonServices.approvalNo = newValue.replace(/[^a-zA-Z 0-9]/g, \"\").replace(/\\s+/g, \"\");\r\n      this.changedetect.detectChanges();\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"onInputchangeApprovalNo\");\r\n    }\r\n  }\r\n\r\n  getAddAuthValue(num: any) {\r\n    try {\r\n      if (!this.commonServices.IsNullOrEmpty(num)) {\r\n        const arrOfDigits = Array.from(String(num), Number);\r\n        let valueOfAuthorityArr = this.addAuthValue(arrOfDigits);\r\n        let getRemainderValue = valueOfAuthorityArr % 9;\r\n        let addRemainderValueAtLast = '' + num + getRemainderValue.toFixed();\r\n        return addRemainderValueAtLast;\r\n      }\r\n      else {\r\n        return \"\";\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"getAddAuthValue\");\r\n      return \"\";\r\n    }\r\n  }\r\n\r\n  addAuthValue(arrOfDigits: any) {\r\n    try {\r\n      let addedValue = 0;\r\n      arrOfDigits.map((num: any, index: number) => {\r\n        addedValue = num + addedValue;\r\n      });\r\n      return addedValue;\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"addAuthValue\");\r\n      return 0;\r\n    }\r\n  }\r\n\r\n  //the below code will hit the eRX and return the value with barcode\r\n  prescribeMed() {\r\n    var body = {};\r\n    try {\r\n      if (this.showAuthorityBox(this.commonServices.selectedFormulation.Restrictions, this.commonServices.PrescribeAS, this.commonServices.rxAuthority, this.commonServices.unlistedRA) == true) {\r\n        if (this.commonServices.IsNullOrEmpty(this.commonServices.approvalNo)) {\r\n          this.commonServices.toastopen(errorconfig.error_53.message, 'error', errorconfig.error_53.code);\r\n          this.commonServices.errorResponse(errorconfig.error_53.code, errorconfig.error_53.message);\r\n          return;\r\n        }\r\n      }\r\n      if (this.commonServices.scriptType.toLowerCase() == \"e\") {\r\n        this.abortBtnFlag = true;\r\n      }\r\n      else {\r\n        this.PopupScreenLoader = true;\r\n      }\r\n      this.selectPBTNDropdown = false;\r\n      this.commonServices.prescribeMedLoader = true;\r\n      this.changedetect.detectChanges();\r\n      this.commonServices.isFetching = true;\r\n      var patientDetails = this.commonServices.patientDetails;\r\n      var physicianDetails = this.commonServices.physicianDetails;\r\n      var selectedFormulation = this.commonServices.selectedFormulation;\r\n      var medicareCard = '';\r\n      if (patientDetails.medicareNumber) {\r\n        var medNo1 = patientDetails.medicareNumber.replace(/ /g, '');\r\n        medNo1 = medNo1.replace(/_/g, '');\r\n        medNo1 = medNo1.replace(/-/g, '');\r\n        medicareCard = medNo1;\r\n      }\r\n      let pbsManufacturerCodeSet = !this.commonServices.IsNullOrEmpty(selectedFormulation) && !this.commonServices.IsNullOrEmpty(selectedFormulation?.pbsManufacturerCodes) && selectedFormulation.pbsManufacturerCodes.length != 0 && !this.commonServices.IsNullOrEmpty(selectedFormulation.pbsManufacturerCodes[0]) ? selectedFormulation.pbsManufacturerCodes[0] : '';\r\n      let checkAuthorityBox = this.showAuthorityBox(selectedFormulation.Restrictions, this.commonServices.PrescribeAS, this.commonServices.rxAuthority, this.commonServices.unlistedRA);\r\n      body = {\r\n        isShowAuthority: this.commonServices.isShowAuthority,\r\n        pbsListInstructions: !this.commonServices.IsNullOrEmpty(this.commonServices.pbsListInstructions) ? this.commonServices.pbsListInstructions : \"\",\r\n        isBrandName: this.commonServices.isBrandName,\r\n        includeBrandFlag: this.commonServices.isBrandName,\r\n        restrictedPbsSelectedIndex: !this.commonServices.IsNullOrEmpty(this.commonServices.pbsListInstructionsId) ? this.commonServices.pbsListInstructionsId + 1 : '',\r\n        rxId: !this.commonServices.IsNullOrEmpty(this.commonServices.rxid) ? this.commonServices.rxid : '',\r\n        mAPatientId: this.commonServices.vendorPatientId,\r\n        mAPharmacistId: this.commonServices.vendorPhysicianId,\r\n        mAFacilityId: this.commonServices.vendorFacilityId,\r\n        privacyStatement: this.commonServices.scriptType.toLowerCase() == 'e' ? 0 : 1,\r\n        hpiI: physicianDetails.hpiiNumber,\r\n        prescriberNumber: physicianDetails.prescriberNumber,\r\n        prescriberAhpraNumber: physicianDetails.prescriberAhpraNumber,\r\n        prescriberGivenNames: physicianDetails.firstName,\r\n        prescriberFamilyName: physicianDetails.lastName,\r\n        prescriberHomeMobile: physicianDetails.mobilePhone,\r\n        prescriberHomeEmail: physicianDetails.email,\r\n        orgHpiO: !this.commonServices.IsNullOrEmpty(this.commonServices.facilityDetails) && !this.commonServices.IsNullOrEmpty(this.commonServices.facilityDetails.hpioNumber) ? this.commonServices.facilityDetails.hpioNumber : '',\r\n        orgName: !this.commonServices.IsNullOrEmpty(this.commonServices.facilityDetails) && !this.commonServices.IsNullOrEmpty(this.commonServices.facilityDetails.orgName) ? this.commonServices.facilityDetails.orgName : '',\r\n        orgEmail: !this.commonServices.IsNullOrEmpty(this.commonServices.facilityDetails) && !this.commonServices.IsNullOrEmpty(this.commonServices.facilityDetails.orgEmail) ? this.commonServices.facilityDetails.orgEmail : '',\r\n        orgPostalAddressLine1: !this.commonServices.IsNullOrEmpty(this.commonServices.facilityDetails) && !this.commonServices.IsNullOrEmpty(this.commonServices.facilityDetails.orgPostalAddressLine1) ? this.commonServices.facilityDetails.orgPostalAddressLine1 : '',\r\n        orgPostalAddressLine2: !this.commonServices.IsNullOrEmpty(this.commonServices.facilityDetails) && !this.commonServices.IsNullOrEmpty(this.commonServices.facilityDetails.orgPostalAddressLine2) ? this.commonServices.facilityDetails.orgPostalAddressLine2 : '',\r\n        orgPostalAddressSuburb: !this.commonServices.IsNullOrEmpty(this.commonServices.facilityDetails) && !this.commonServices.IsNullOrEmpty(this.commonServices.facilityDetails.orgPostalAddressSuburb) ? this.commonServices.facilityDetails.orgPostalAddressSuburb : '',\r\n        orgPostalAddressPostCode: !this.commonServices.IsNullOrEmpty(this.commonServices.facilityDetails) && !this.commonServices.IsNullOrEmpty(this.commonServices.facilityDetails.orgPostalAddressPostCode) ? this.commonServices.facilityDetails.orgPostalAddressPostCode : '',\r\n        orgPostalAddressState: !this.commonServices.IsNullOrEmpty(this.commonServices.facilityDetails) && !this.commonServices.IsNullOrEmpty(this.commonServices.facilityDetails.orgPostalAddressState) ? this.getStateCodeFromStateName(this.commonServices.facilityDetails.orgPostalAddressState) : '',\r\n        ihi: patientDetails.ihiNumber,\r\n        medicareNumber: !this.commonServices.IsNullOrEmpty(medicareCard) ? this.erxMedicareCard(medicareCard) : '',\r\n        medicareIrn: !this.commonServices.IsNullOrEmpty(medicareCard) ? this.erxMedicareIRN(medicareCard) : '',\r\n        medicareNumberExpiry: patientDetails.medicareExpiry,\r\n        dateOfBirth: this.datePipe.transform(patientDetails.dob, 'yyyy-MM-dd'),\r\n        familyName: patientDetails.lastName,\r\n        givenNames: patientDetails.firstName,\r\n        patientUserIdString: this.commonServices.patientDetails.patientUserId,\r\n        userIdString: this.commonServices.physicianDetails.userId,\r\n        genderCode: this.getGenderCode(patientDetails.gender),\r\n        homeMobile: patientDetails.phone,\r\n        homeEmail: patientDetails.email,\r\n        addressLine1: patientDetails.address1,\r\n        addressLine2: patientDetails.address2,\r\n        addressSuburb: patientDetails.city,\r\n        addressPostCode: patientDetails.postCode,\r\n        addressState: this.getStateCodeFromStateName(patientDetails.state),\r\n        prescriptionWrittenDate: !this.commonServices.IsNullOrEmpty(this.commonServices.scriptDate) ? this.datePipe.transform(this.commonServices.scriptDate, 'yyyy-MM-dd') : \"\",\r\n        formText: !this.commonServices.IsNullOrEmpty(selectedFormulation?.dosageForm) ? selectedFormulation.dosageForm : \"\",\r\n        strength: !this.commonServices.IsNullOrEmpty(selectedFormulation?.moleculeStrength) ? selectedFormulation.moleculeStrength : \" \",\r\n        directions: this.getDirections(),\r\n        brandSubstitutesNotAllowed: this.commonServices.BrandSubstitutesNotAllow == true ? 0 : 1,\r\n        maximumNumberOfRepeats: this.commonServices.repeatsVal,\r\n        minimumIntervalBetweenRepeats: this.commonServices.daysBtnRepeatsVal != undefined && this.commonServices.daysBtnRepeatsVal != null && this.commonServices.daysBtnRepeatsVal != \"\" ? parseInt(this.commonServices.daysBtnRepeatsVal) : \"-1\",\r\n        patientCtgFlag: this.commonServices.CTGCoPayment == true ? 0 : 1,\r\n        pbsItemCodeCode: !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation?.pbsCode) ? this.commonServices.selectedFormulation.pbsCode : \"\",\r\n        pbsItemCodeText: !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation?.pbsCodeText) ? this.commonServices.selectedFormulation.pbsCodeText : \"\",\r\n        pbsItemManufacturer: this.commonServices.isBrandName ? pbsManufacturerCodeSet : '',\r\n        stateAuthorityNumber: !this.commonServices.IsNullOrEmpty(this.commonServices.StateAuthorityNumber) ? this.commonServices.StateAuthorityNumber.trim() : '',\r\n        reasonForTherapeuticGood: !this.commonServices.IsNullOrEmpty(this.commonServices.prescriptionReason) ? this.commonServices.prescriptionReason.trim() : '',\r\n        unusualQtyFlag: this.setUnusualQtyFlag(this.commonServices.selectedFormulation, this.commonServices.quantityVal, this.commonServices.PrescribeAS),\r\n        quantityOfTherapeuticGoodQuantity: parseInt(this.commonServices.quantityVal),\r\n        complexInstructions: !this.commonServices.IsNullOrEmpty(this.commonServices.InstructionSearchValue) ? this.commonServices.InstructionSearchValue.trim() : \"\",\r\n        amtMppCode: !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation?.AMTMPPCode) ? this.commonServices.selectedFormulation.AMTMPPCode : \"\",\r\n        amtMppName: !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation?.amt) && this.commonServices.selectedFormulation.amt.length != 0 && !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation.amt[0].mpps) && this.commonServices.selectedFormulation.amt[0].mpps.length != 0 && !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation.amt[0].mpps[0].mppName) ? this.commonServices.selectedFormulation.amt[0].mpps[0].mppName : '',\r\n        amtTppCode: !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation?.AMTTPPCode) ? this.commonServices.selectedFormulation.AMTTPPCode : \"\",\r\n        amtTppName: !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation?.amt) && this.commonServices.selectedFormulation.amt.length != 0 && !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation.amt[0].tpps) && this.commonServices.selectedFormulation.amt[0].tpps.length != 0 && !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation.amt[0].tpps[0].tppName) ? this.commonServices.selectedFormulation.amt[0].tpps[0].tppName : '',\r\n        amtTpCode: !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation?.AMTTPCode) ? this.commonServices.selectedFormulation.AMTTPCode : \"\",\r\n        amtTpName: !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation?.amt) && this.commonServices.selectedFormulation.amt.length != 0 && !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation.amt[0].tpName) ? this.commonServices.selectedFormulation.amt[0].tpName : '',\r\n        amtCode: !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation?.amt) && !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation.amt.amtcode) ? this.commonServices.selectedFormulation.amt.amtcode : '',\r\n        therepeuticGoodIdentificationMimsCode: '',\r\n        therepeuticGoodIdentificationLocalCode: '',\r\n        // therepeuticGoodIdentificationEanCode: \"\",\r\n        therepeuticGoodIdentificationEanText: !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation.pbsType) && this.commonServices.selectedFormulation.pbsType.toLowerCase() == 'non pbs' && !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation.productName) ? this.commonServices.selectedFormulation.productName : '',\r\n        prescriberOccupationCode: physicianDetails.occupationCode,\r\n        prescriberOccupationText: physicianDetails.occupationText,\r\n        prescriberPersonTitle: physicianDetails.prefix,\r\n        prescriberQualifications: physicianDetails.suffix,\r\n        orgPhone: !this.commonServices.IsNullOrEmpty(this.commonServices.facilityDetails) && !this.commonServices.IsNullOrEmpty(this.commonServices.facilityDetails.orgMobile) ? this.commonServices.facilityDetails.orgMobile : '',\r\n        orgFax: '',\r\n        localSystemID: this.commonServices.patientDetails.patientUserId,\r\n        addressSendToAddType: this.commonServices.AddressSendToAddType,\r\n        addressEmail: this.commonServices.IsNullOrEmpty(this.commonServices.rxemailId) ? patientDetails.email : this.commonServices.rxemailId,\r\n        addressSms: this.commonServices.IsNullOrEmpty(this.commonServices.rxnumber) ? patientDetails.phone : this.commonServices.rxnumber,\r\n        genderText: this.getGender(patientDetails.gender),\r\n        addressLine3: '',\r\n        prescriptionWrittenUtcTime: '01-01-1970 09:06:09', // prescriptionWrittenUtcTime: moment(new Date()).format(\"MM-DD-yyyy hh:mm:ss\"),\r\n        prescriptionWrittenUtcOffset: this.getOffset(),\r\n        prescriptionExpiresValue: !this.commonServices.IsNullOrEmpty(this.commonServices.endDate) ? this.datePipe.transform(this.commonServices.endDate, 'MM/dd/yyyy') : \"\",\r\n        activeIngredient: !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation.genericName) ? this.commonServices.selectedFormulation.genericName : \"\",\r\n        formCode: !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation.dosageForm) ? this.commonServices.selectedFormulation.dosageForm : \"\",\r\n        formula: !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation.formula) ? this.commonServices.selectedFormulation.formula : \"\",\r\n        additionalComments: !this.commonServices.IsNullOrEmpty(this.commonServices.doctorNotes) ? this.commonServices.doctorNotes.trim() : \"\",\r\n        aslConsent: 1,\r\n        prescriptionNoteDetailNote: this.commonServices.purposeSearchValue.trim(),\r\n        dvaNumber: patientDetails.dvaNumber,\r\n        dvaType: !this.commonServices.IsNullOrEmpty(this.commonServices.patientDetails.dvaCardType) && this.commonServices.patientDetails.dvaCardType.toLowerCase() != 'none' ? patientDetails.dvaCardType.slice(0, 1).toUpperCase() : '',\r\n        pbsApprovalNumber: !this.commonServices.IsNullOrEmpty(this.commonServices.approvalNo) ? this.commonServices.approvalNo.trim() : '', //inform to stephen\r\n        route: !this.commonServices.IsNullOrEmpty(this.commonServices.routeSearchValue) ? this.commonServices.routeSearchValue.trim() : '',\r\n        //providerNumber:'',\r\n        prescriberType: physicianDetails.prescriberType,\r\n        medicineName: !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation?.productName) ? this.commonServices.selectedFormulation.productName : \"\",\r\n        brandName: this.getBrandName(this.commonServices.selectedFormulation),\r\n        genericName: this.htmlToTextConvert(!this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation?.IsExtemp) && this.commonServices.selectedFormulation.IsExtemp == true ? this.getExtempTTPName(this.commonServices.selectedFormulation) : !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation?.genericName) ? this.commonServices.selectedFormulation.genericName : this.getExtempMPPName()),\r\n        //itemGenericIntention: getItemGenericIntention(this.state.lemi,this.state.isBrandName,this.state.selectedFormulation.IsExtemp == true ? true : false),\r\n        itemGenericIntention: this.commonServices.lemi == true && this.commonServices.selectedFormulation.IsExtemp != true ? 'B' : 'G',\r\n        scheduleNumber: this.payLoadStateScheduleNumber(this.commonServices.selectedFormulation) != \"\" ? this.payLoadStateScheduleNumber(this.commonServices.selectedFormulation) : this.commonServices.getScheduleNumber(this.commonServices.selectedFormulation),\r\n        doctorNotes: !this.commonServices.IsNullOrEmpty(this.commonServices.doctorNotes) ? this.commonServices.doctorNotes.trim() : \"\",\r\n        regulation24: this.commonServices.regulation24 == false ? 1 : 0,\r\n        isExtemp: this.commonServices.selectedFormulation != null && this.commonServices.selectedFormulation.IsExtemp != null ? this.commonServices.selectedFormulation.IsExtemp == true ? 0 : 1 : 1,\r\n        // extemporaneousDescription: this.state.selectedFormulation != null && this.state.selectedFormulation.ExtemporaneousDescription != '' ? this.state.selectedFormulation.ExtemporaneousDescription : '',\r\n        extemporaneousDescription: this.commonServices.selectedFormulation.IsExtemp == true ? this.getExtempTTPName(this.commonServices.selectedFormulation) : '',\r\n        annotation: !this.commonServices.IsNullOrEmpty(this.commonServices.annotation) ? this.commonServices.annotation.trim() : \"\",\r\n        unUsualDoseFlag: this.commonServices.unUsualDoseFlag == false ? 1 : 0,\r\n        tradeName: this.htmlToTextConvert(this.getTradeName()),\r\n        //restrictions: this.commonServices.selectedFormulation.Restrictions != null && this.commonServices.selectedFormulation.Restrictions != '' ? this.commonServices.selectedFormulation.restrictions : '',\r\n        // prescriberPersonTitle: physicianDetails.prefix,\r\n        maximumIntervalBetweenRepeats: '',\r\n        complexId: !this.commonServices.IsNullOrEmpty(this.commonServices.InstructionSearchValue) && !this.commonServices.IsNullOrEmpty(this.commonServices.complexId) ? this.commonServices.complexId : 0,\r\n        visitId: this.commonServices.visitId,\r\n        scriptType: this.commonServices.scriptType,\r\n        dose: !this.commonServices.IsNullOrEmpty(this.commonServices.doseSearchValue) ? this.commonServices.doseSearchValue : \"\",\r\n        frequency: !this.commonServices.IsNullOrEmpty(this.commonServices.freqSearchValue) ? this.commonServices.freqSearchValue : \"\",\r\n        food: !this.commonServices.IsNullOrEmpty(this.commonServices.foodSearchValue) ? this.commonServices.foodSearchValue : \"\",\r\n        prescribeAs: this.commonServices.PrescribeAS,\r\n        prn: this.commonServices.rxPRN == false ? 1 : 0,\r\n        scriptDate: !this.commonServices.IsNullOrEmpty(this.commonServices.scriptDate) ? this.datePipe.transform(this.commonServices.scriptDate, 'yyyy-MM-dd') : \"\",\r\n        startDate: !this.commonServices.IsNullOrEmpty(this.commonServices.startDate) ? this.datePipe.transform(this.commonServices.startDate, 'MM/dd/yyyy') : \"\",\r\n        purpose: this.commonServices.purposeSearchValue.trim(),\r\n        pbsNotes: this.commonServices.pbsNotes,\r\n        isActive: 0,\r\n        productId: !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation?.productId) ? this.commonServices.selectedFormulation.productId : \"\",\r\n        amtText: !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation?.formula) ? this.commonServices.selectedFormulation.formula : \"\",\r\n        quantityOfTherapeuticGoodDoseUnitCode: !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation?.dosageForm) ? this.commonServices.selectedFormulation.dosageForm : \"\",\r\n        quantityOfTherapeuticGoodDoseUnitText: !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation?.dosageForm) ? this.commonServices.selectedFormulation.dosageForm : \"\",\r\n        prescriberRoleCode: '',\r\n        prescriberRoleText: '',\r\n        orgHicLocationId: !this.commonServices.IsNullOrEmpty(this.commonServices.facilityDetails) && !this.commonServices.IsNullOrEmpty(this.commonServices.facilityDetails.orgHicLocationId) ? this.commonServices.facilityDetails.orgHicLocationId : '',\r\n        orgRoleCode: !this.commonServices.IsNullOrEmpty(this.commonServices.facilityDetails) && !this.commonServices.IsNullOrEmpty(this.commonServices.facilityDetails.orgRoleCode) ? this.commonServices.facilityDetails.orgRoleCode : '',\r\n        orgRoleText: !this.commonServices.IsNullOrEmpty(this.commonServices.facilityDetails) && !this.commonServices.IsNullOrEmpty(this.commonServices.facilityDetails.orgRoleText) ? this.commonServices.facilityDetails.orgRoleText : '',\r\n        authorityApprovalNumber: !this.commonServices.IsNullOrEmpty(this.commonServices.approvalNo) ? this.commonServices.approvalNo.trim() : '',\r\n        authorityApprovalNumberFlag: parseFloat(this.commonServices.selectedFormulation.maxQtyUnits) < parseInt(this.commonServices.quantityVal) || parseInt(this.commonServices.selectedFormulation.repeats) < parseInt(this.commonServices.repeatsVal) ? 1 : !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation.Restrictions) && this.commonServices.selectedFormulation.Restrictions.length > 0 && !this.commonServices.IsNullOrEmpty(this.commonServices.pbsListInstructionsId) && !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation.Restrictions[this.commonServices.pbsListInstructionsId].streamlinedCode) && parseInt(this.commonServices.selectedFormulation.Restrictions[this.commonServices.pbsListInstructionsId].streamlinedCode) == parseInt(this.commonServices.approvalNo) ? 0 : 1,\r\n        // pbsAuthorityPrescriptionNumber:this.state.approvalNo ? this.state.approvalNo : \"\",\r\n        // streamlinedAuthorityApprovalNumber: this.state.approvalNo\r\n        //   ? this.state.approvalNo\r\n        //   : \"\",\r\n        // pbsAuthorityApprovalNumber: \"\",\r\n        //barcode\r\n        //scriptNumber: \"\",\r\n        displayName: this.shrinkSuperScriptCode(this.commonServices.rxDisplayName),\r\n        eopDisplayName: this.commonServices.scriptType.toLowerCase() == \"e\" ? this.shrinkSuperScriptCode(this.commonServices.eopDisplayName) : this.shrinkSuperScriptCode(this.commonServices.rxDisplayName),\r\n        itemStrengthXml: !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation?.ItemStrengthXml) ? this.commonServices.selectedFormulation.ItemStrengthXml : \" \",\r\n        //authorityValue\r\n        pbsDvaAuthorityNumber: checkAuthorityBox ? this.commonServices.authorityFormNo : 0,\r\n        prescribedItemReservedThree: this.htmlToTextConvert(this.commonServices.rxDisplayName),//this.shrinkSuperScriptCode(this.commonServices.prescribedItemReservedThree),\r\n        prescribedItemReservedFour: this.showAuthorityBox(this.commonServices.selectedFormulation.Restrictions, this.commonServices.PrescribeAS, this.commonServices.rxAuthority, this.commonServices.unlistedRA) && this.commonServices.PrescribeAS.toLowerCase() === \"pbs\" && this.getStateCodeFromStateName(this.commonServices.patientDetails.state).toUpperCase() == \"NSW\" && this.commonServices.scriptType.toLowerCase() === \"e\" ? this.commonServices.prescribedItemReservedFour : '',\r\n        unlistedItemRepatAuthority: this.commonServices.unlistedRA == true ? true : false,\r\n        isPrintAvailable: this.commonServices.isPrintAvailable,\r\n        prescribedItemReservedOne: this.commonServices.getScheduleNumber(this.commonServices.selectedFormulation).toLowerCase() == \"s8\" ? this.numberToWord(parseInt(this.commonServices.quantityVal)) : '',\r\n        mySLConsent: this.commonServices.mySLConsent,\r\n        sendToPharmacy: this.commonServices.sendToPharmacy,\r\n        sendToPharmacyValue: this.commonServices.sendToPharmacyValue,\r\n        emergencySupply: this.commonServices.emergencySupply,\r\n        moleculeStrengthGrid: !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation?.moleculeStrengthGrid) ? this.commonServices.selectedFormulation.moleculeStrengthGrid : '',\r\n        entityId: this.commonServices.physicianDetails.entityId,\r\n        isPrescribeAndPrint: this.isepriscribeprint,\r\n        amtCodeSystem: !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation?.amtCodeSystem) ? this.commonServices.selectedFormulation.amtCodeSystem : \"\",\r\n        amtVersion: !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation?.amtVersion) ? this.commonServices.selectedFormulation.amtVersion : \"\",\r\n        quantityWithUnit: this.commonServices.quantityWithUnitFlag && !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation?.maxQtyUnits) ? this.commonServices.selectedFormulation.maxQtyUnits : \"\",\r\n        clientId: this.clientId,\r\n        productPackId: this.commonServices.selectedFormulation?.productPackId ? this.commonServices.selectedFormulation.productPackId : '',\r\n      };\r\n      this.commonServices.removeErrToast();\r\n      this.changedetect.detectChanges();\r\n      this.apiService.Post(body, config.PHYSICIAN.PRESCRIBE).subscribe((res) => {\r\n        try {\r\n          this.responseData.isPrescribe = true;\r\n          if (this.commonServices.IsNullOrEmpty(res)) {\r\n            this.responseData.prescribeError = true;\r\n            this.responseData.prescribeErr_code = errorconfig.error_64.code;\r\n            this.responseData.PrescribeMsg = errorconfig.error_64.message;\r\n            this.PopupScreenLoader = false;\r\n            this.commonServices.setlogvalue(false, \"\", \"\", \"RxComponent\", \"prescribeMed\", body);\r\n            this.commonServices.errorResponse(errorconfig.error_64.code, errorconfig.error_64.message);\r\n            this.commonServices.prescribeMedLoader = false;\r\n            this.changedetect.detectChanges();\r\n            this.commonServices.isFetching = false;\r\n          }\r\n          else {\r\n            if (res.response_code == 0) {\r\n              this.responseData.prescribeSuccess = true;\r\n              this.responseData.PrescribeMsg = res.response_message;\r\n              this.PopupScreenLoader = false;\r\n              this.responseData.prescribedata = res;\r\n              this.changedetect.detectChanges();\r\n              this.commonServices.setEndDateAhead();\r\n              if (this.commonServices.isPrintAvailable != true) {\r\n                this.changedetect.detectChanges();\r\n                this.commonServices.isFetching = false;\r\n              }\r\n            }\r\n            else if (res.isAort) {\r\n              this.abortBtnFlag = false;\r\n              this.PopupScreenLoader = false;\r\n              this.commonServices.prescribeMedLoader = false;\r\n              this.PopupScreenLoader = false;\r\n              this.commonServices.isFetching = false;\r\n              this.changedetect.detectChanges();\r\n              this.commonServices.errorResponse(res.error_code, res.response_message);\r\n              this.commonServices.setlogvalue(false, res.response_message, res.response_message, \"RxComponent\", \"prescribeMed\", body);\r\n              this.commonServices.dialogopen(RealTimePrescriptionMonitoringComponent, this.content, res.response_message).subscribe((res) => {\r\n                // this.commonServices.rxid = \"\";\r\n                // this.changedetect.detectChanges();\r\n              });\r\n              return;\r\n            } else {\r\n              if (res.response_message != null && res.response_message != '') {\r\n                this.responseData.prescribeError = true;\r\n                this.responseData.prescribeErr_code = res.error_code;\r\n                this.responseData.PrescribeMsg = res.response_message;\r\n                this.commonServices.isFetching = false;\r\n                this.PopupScreenLoader = false;\r\n                this.changedetect.detectChanges();\r\n                this.commonServices.setlogvalue(false, res.response_message, res.response_message, \"RxComponent\", \"prescribeMed\", body);\r\n                this.commonServices.errorResponse(res.error_code, res.response_message);\r\n              } else {\r\n                this.responseData.prescribeError = true;\r\n                this.responseData.prescribeErr_code = errorconfig.error_64.code;\r\n                this.responseData.PrescribeMsg = errorconfig.error_64.message;\r\n                this.PopupScreenLoader = false;\r\n                this.commonServices.isFetching = false;\r\n                this.changedetect.detectChanges();\r\n                this.commonServices.setlogvalue(false, \"\", \"\", \"RxComponent\", \"prescribeMed\", body);\r\n                this.commonServices.errorResponse(errorconfig.error_64.code, errorconfig.error_64.message);\r\n              }\r\n            }\r\n          }\r\n          if ((this.responseData.isAbort) || !this.abortdisable)\r\n            this.showResponseMessage();\r\n        }\r\n        catch (ex: any) {\r\n          this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"prescribeMed\", body);\r\n        }\r\n      }, error => {\r\n        this.responseData.isPrescribe = true;\r\n        this.responseData.prescribeError = true;\r\n        this.responseData.PrescribeMsg = errorconfig.error_65.message + error;\r\n        this.responseData.prescribeErr_code = errorconfig.error_65.code\r\n        if (this.responseData.isAbort || !this.abortdisable)\r\n          this.showResponseMessage();\r\n        this.commonServices.isFetching = false;\r\n        this.PopupScreenLoader = false;\r\n        this.changedetect.detectChanges();\r\n        this.commonServices.setlogvalue(false, error.message, error.stack, \"RxComponent\", \"prescribeMed\", body);\r\n        this.commonServices.errorResponse(errorconfig.error_65.code, errorconfig.error_65.message + error);\r\n      });\r\n    }\r\n    catch (ex: any) {\r\n      this.abortBtnFlag = false;\r\n      this.commonServices.isFetching = false;\r\n      this.PopupScreenLoader = false;\r\n      this.commonServices.prescribeMedLoader = false;\r\n      this.changedetect.detectChanges();\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"prescribeMed\", body);\r\n    }\r\n  }\r\n\r\n  MprescribeMed(id: number) {\r\n    var body = {};\r\n    try {\r\n      if (id == 1) {\r\n        if (this.ePrescriptionValidation(id)) {\r\n          return;\r\n        }\r\n      }\r\n      if (id == 2) {\r\n        if ((this.commonServices.editPrescription === true && !this.commonServices.IsNullOrEmpty(this.commonServices.rxDetails?.scriptType) && this.commonServices.rxDetails.scriptType.toUpperCase() == 'M' && !this.commonServices.IsNullOrEmpty(this.commonServices.rxDetails?.status) && this.commonServices.rxDetails.status.toLowerCase() != 'draft') || (this.commonServices.editPrescription === true && !this.commonServices.IsNullOrEmpty(this.commonServices.rxDetails?.scriptType) && this.commonServices.rxDetails.scriptType.toUpperCase() == 'E')) {\r\n          return;\r\n        }\r\n      }\r\n      this.PopupScreenLoader = true;\r\n      if (id == 1) {\r\n        this.commonServices.scriptType = \"E\";\r\n        this.commonServices.AddressSendToAddType = \"SMS\";\r\n      }\r\n      else {\r\n        this.commonServices.scriptType = \"M\";\r\n        this.commonServices.AddressSendToAddType = \"\";\r\n      }\r\n      if (this.showAuthorityBox(this.commonServices.selectedFormulation.Restrictions, this.commonServices.PrescribeAS, this.commonServices.rxAuthority, this.commonServices.unlistedRA) == true) {\r\n        if (this.commonServices.IsNullOrEmpty(this.commonServices.approvalNo)) {\r\n          this.PopupScreenLoader = false;\r\n          this.changedetect.detectChanges();\r\n          this.commonServices.toastopen(errorconfig.error_53.message, 'error', errorconfig.error_53.code);\r\n          this.commonServices.errorResponse(errorconfig.error_53.code, errorconfig.error_53.message);\r\n          return;\r\n        }\r\n      }\r\n      this.selectPBTNDropdown = false;\r\n      this.commonServices.prescribeMedLoader = true;\r\n      this.changedetect.detectChanges();\r\n      this.commonServices.isFetching = true;\r\n      var patientDetails = this.commonServices.patientDetails;\r\n      var physicianDetails = this.commonServices.physicianDetails;\r\n      var selectedFormulation = this.commonServices.selectedFormulation;\r\n      var medicareCard = '';\r\n      if (patientDetails.medicareNumber) {\r\n        var medNo1 = patientDetails.medicareNumber.replace(/ /g, '');\r\n        medNo1 = medNo1.replace(/_/g, '');\r\n        medNo1 = medNo1.replace(/-/g, '');\r\n        medicareCard = medNo1;\r\n      }\r\n      let pbsManufacturerCodeSet = !this.commonServices.IsNullOrEmpty(selectedFormulation?.pbsManufacturerCodes) && selectedFormulation.pbsManufacturerCodes.length != 0 ? selectedFormulation.pbsManufacturerCodes[0] : '';\r\n\r\n      let checkAuthorityBox = this.showAuthorityBox(\r\n        selectedFormulation.Restrictions,\r\n        this.commonServices.PrescribeAS,\r\n        this.commonServices.rxAuthority,\r\n        this.commonServices.unlistedRA\r\n      );\r\n      body = {\r\n        rxId: !this.commonServices.IsNullOrEmpty(this.commonServices.rxid) ? this.commonServices.rxid : '',\r\n        isShowAuthority: this.commonServices.isShowAuthority,\r\n        pbsListInstructions: !this.commonServices.IsNullOrEmpty(this.commonServices.pbsListInstructions) ? this.commonServices.pbsListInstructions : \"\",\r\n        isBrandName: this.commonServices.isBrandName,\r\n        includeBrandFlag: this.commonServices.isBrandName,\r\n        restrictedPbsSelectedIndex: !this.commonServices.IsNullOrEmpty(this.commonServices.pbsListInstructionsId) ? this.commonServices.pbsListInstructionsId + 1 : \"\",\r\n        mAPatientId: this.commonServices.vendorPatientId,\r\n        mAPharmacistId: this.commonServices.vendorPhysicianId,\r\n        mAFacilityId: this.commonServices.vendorFacilityId,\r\n        privacyStatement: this.commonServices.scriptType.toLowerCase() == 'e' ? 0 : 1,\r\n        hpiI: physicianDetails.hpiiNumber,\r\n        prescriberNumber: physicianDetails.prescriberNumber,\r\n        prescriberAhpraNumber: physicianDetails.prescriberAhpraNumber,\r\n        prescriberGivenNames: physicianDetails.firstName,\r\n        prescriberFamilyName: physicianDetails.lastName,\r\n        prescriberHomeMobile: physicianDetails.mobilePhone,\r\n        prescriberHomeEmail: physicianDetails.email,\r\n        orgHpiO: !this.commonServices.IsNullOrEmpty(this.commonServices.facilityDetails) && !this.commonServices.IsNullOrEmpty(this.commonServices.facilityDetails.hpioNumber) ? this.commonServices.facilityDetails.hpioNumber : '',\r\n        orgName: !this.commonServices.IsNullOrEmpty(this.commonServices.facilityDetails) && !this.commonServices.IsNullOrEmpty(this.commonServices.facilityDetails.orgName) ? this.commonServices.facilityDetails.orgName : '',\r\n        orgEmail: !this.commonServices.IsNullOrEmpty(this.commonServices.facilityDetails) && !this.commonServices.IsNullOrEmpty(this.commonServices.facilityDetails.orgEmail) ? this.commonServices.facilityDetails.orgEmail : '',\r\n        orgPostalAddressLine1: !this.commonServices.IsNullOrEmpty(this.commonServices.facilityDetails) && !this.commonServices.IsNullOrEmpty(this.commonServices.facilityDetails.orgPostalAddressLine1) ? this.commonServices.facilityDetails.orgPostalAddressLine1 : '',\r\n        orgPostalAddressLine2: !this.commonServices.IsNullOrEmpty(this.commonServices.facilityDetails) && !this.commonServices.IsNullOrEmpty(this.commonServices.facilityDetails.orgPostalAddressLine2) ? this.commonServices.facilityDetails.orgPostalAddressLine2 : '',\r\n        orgPostalAddressSuburb: !this.commonServices.IsNullOrEmpty(this.commonServices.facilityDetails) && !this.commonServices.IsNullOrEmpty(this.commonServices.facilityDetails.orgPostalAddressSuburb) ? this.commonServices.facilityDetails.orgPostalAddressSuburb : '',\r\n        orgPostalAddressPostCode: !this.commonServices.IsNullOrEmpty(this.commonServices.facilityDetails) && !this.commonServices.IsNullOrEmpty(this.commonServices.facilityDetails.orgPostalAddressPostCode) ? this.commonServices.facilityDetails.orgPostalAddressPostCode : '',\r\n        orgPostalAddressState: !this.commonServices.IsNullOrEmpty(this.commonServices.facilityDetails) && !this.commonServices.IsNullOrEmpty(this.commonServices.facilityDetails.orgPostalAddressState) ? this.getStateCodeFromStateName(this.commonServices.facilityDetails.orgPostalAddressState) : '',\r\n        ihi: patientDetails.ihiNumber,\r\n        medicareNumber: !this.commonServices.IsNullOrEmpty(medicareCard) ? this.erxMedicareCard(medicareCard) : '',\r\n        medicareIrn: !this.commonServices.IsNullOrEmpty(medicareCard) ? this.erxMedicareIRN(medicareCard) : '',\r\n        medicareNumberExpiry: patientDetails.medicareExpiry,\r\n        dateOfBirth: this.datePipe.transform(patientDetails.dob, 'yyyy-MM-dd'),\r\n        familyName: patientDetails.lastName,\r\n        givenNames: patientDetails.firstName,\r\n        patientUserIdString: this.commonServices.patientDetails.patientUserId,\r\n        userIdString: this.commonServices.physicianDetails.userId,\r\n        genderCode: this.getGenderCode(patientDetails.gender),\r\n        homeMobile: patientDetails.phone,\r\n        homeEmail: patientDetails.email,\r\n        addressLine1: patientDetails.address1,\r\n        addressLine2: patientDetails.address2,\r\n        addressSuburb: patientDetails.city,\r\n        addressPostCode: patientDetails.postCode,\r\n        addressState: this.getStateCodeFromStateName(patientDetails.state),\r\n        prescriptionWrittenDate: !this.commonServices.IsNullOrEmpty(this.commonServices.scriptDate) ? this.datePipe.transform(this.commonServices.scriptDate, 'yyyy-MM-dd') : \"\",\r\n        formText: !this.commonServices.IsNullOrEmpty(selectedFormulation?.dosageForm) ? selectedFormulation.dosageForm : \"\",\r\n        strength: !this.commonServices.IsNullOrEmpty(selectedFormulation?.moleculeStrength) ? selectedFormulation.moleculeStrength : \" \",\r\n        directions: this.getDirections(),\r\n        brandSubstitutesNotAllowed: this.commonServices.BrandSubstitutesNotAllow == true ? 0 : 1,\r\n        maximumNumberOfRepeats: this.commonServices.repeatsVal,\r\n        minimumIntervalBetweenRepeats: this.commonServices.daysBtnRepeatsVal != undefined && this.commonServices.daysBtnRepeatsVal != null && this.commonServices.daysBtnRepeatsVal != \"\" ? parseInt(this.commonServices.daysBtnRepeatsVal) : \"-1\",\r\n        patientCtgFlag: this.commonServices.CTGCoPayment == true ? 0 : 1,\r\n        pbsItemCodeCode: !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation?.pbsCode) ? this.commonServices.selectedFormulation.pbsCode : \"\",\r\n        pbsItemCodeText: !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation?.pbsCodeText) ? this.commonServices.selectedFormulation.pbsCodeText : \"\",\r\n        pbsItemManufacturer: this.commonServices.isBrandName ? pbsManufacturerCodeSet : '',\r\n        stateAuthorityNumber: !this.commonServices.IsNullOrEmpty(this.commonServices.StateAuthorityNumber) ? this.commonServices.StateAuthorityNumber.trim() : \"\",\r\n        reasonForTherapeuticGood: !this.commonServices.IsNullOrEmpty(this.commonServices.prescriptionReason) ? this.commonServices.prescriptionReason.trim() : \"\",\r\n        unusualQtyFlag: this.setUnusualQtyFlag(this.commonServices.selectedFormulation, this.commonServices.quantityVal, this.commonServices.PrescribeAS),\r\n        quantityOfTherapeuticGoodQuantity: parseInt(this.commonServices.quantityVal),\r\n        complexInstructions: !this.commonServices.IsNullOrEmpty(this.commonServices.InstructionSearchValue) ? this.commonServices.InstructionSearchValue.trim() : \"\",\r\n        amtMppCode: !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation?.AMTMPPCode) ? this.commonServices.selectedFormulation.AMTMPPCode : \"\",\r\n        amtMppName: !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation?.amt) && this.commonServices.selectedFormulation.amt.length > 0 && !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation.amt[0].mpps) && this.commonServices.selectedFormulation.amt[0].mpps.length > 0 && !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation.amt[0].mpps[0].mppName) ? this.commonServices.selectedFormulation.amt[0].mpps[0].mppName : '',\r\n        amtTppCode: !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation?.AMTTPPCode) ? this.commonServices.selectedFormulation.AMTTPPCode : \"\",\r\n        amtTppName: !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation?.amt) && this.commonServices.selectedFormulation.amt.length > 0 && !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation.amt[0].tpps) && this.commonServices.selectedFormulation.amt[0].tpps.length > 0 && !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation.amt[0].tpps[0].tppName) ? this.commonServices.selectedFormulation.amt[0].tpps[0].tppName : '',\r\n        amtTpCode: !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation?.AMTTPCode) ? this.commonServices.selectedFormulation.AMTTPCode : \"\",\r\n        amtTpName: !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation?.amt) && this.commonServices.selectedFormulation.amt.length > 0 && !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation.amt[0].tpName) ? this.commonServices.selectedFormulation.amt[0].tpName : '',\r\n        amtCode: !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation?.amt) ? this.commonServices.selectedFormulation.amt.amtcode : '',\r\n        therepeuticGoodIdentificationMimsCode: '',\r\n        therepeuticGoodIdentificationLocalCode: '',\r\n        // therepeuticGoodIdentificationEanCode: \"\",\r\n        therepeuticGoodIdentificationEanText: !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation?.pbsType) && this.commonServices.selectedFormulation.pbsType.toLowerCase() == 'non pbs' && !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation.productName) ? this.commonServices.selectedFormulation.productName : '',\r\n        prescriberOccupationCode: physicianDetails.occupationCode,\r\n        prescriberOccupationText: physicianDetails.occupationText,\r\n        prescriberPersonTitle: physicianDetails.prefix,\r\n        prescriberQualifications: physicianDetails.suffix,\r\n        orgPhone: !this.commonServices.IsNullOrEmpty(this.commonServices.facilityDetails) && !this.commonServices.IsNullOrEmpty(this.commonServices.facilityDetails.orgMobile) ? this.commonServices.facilityDetails.orgMobile : '',\r\n        orgFax: '',\r\n        localSystemID: this.commonServices.patientDetails.patientUserId,\r\n        addressSendToAddType: this.commonServices.AddressSendToAddType,\r\n        addressEmail: this.commonServices.IsNullOrEmpty(this.commonServices.rxemailId) ? patientDetails.email : this.commonServices.rxemailId,\r\n        addressSms: this.commonServices.IsNullOrEmpty(this.commonServices.rxnumber) ? patientDetails.phone : this.commonServices.rxnumber,\r\n        genderText: this.getGender(patientDetails.gender),\r\n        addressLine3: '',\r\n        prescriptionWrittenUtcTime: '01-01-1970 09:06:09', // prescriptionWrittenUtcTime: moment(new Date()).format(\"MM-DD-yyyy hh:mm:ss\"),\r\n        prescriptionWrittenUtcOffset: this.getOffset(),\r\n        prescriptionExpiresValue: !this.commonServices.IsNullOrEmpty(this.commonServices.endDate) ? this.datePipe.transform(this.commonServices.endDate, 'MM/dd/yyyy') : \"\",\r\n        activeIngredient: !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation?.genericName) ? this.commonServices.selectedFormulation.genericName : \"\",\r\n        formCode: !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation?.dosageForm) ? this.commonServices.selectedFormulation.dosageForm : \"\",\r\n        formula: !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation?.formula) ? this.commonServices.selectedFormulation.formula : \"\",\r\n        additionalComments: !this.commonServices.IsNullOrEmpty(this.commonServices.doctorNotes) ? this.commonServices.doctorNotes.trim() : \"\",\r\n        aslConsent: 1,\r\n        prescriptionNoteDetailNote: this.commonServices.purposeSearchValue,\r\n        dvaNumber: patientDetails.dvaNumber,\r\n        dvaType: !this.commonServices.IsNullOrEmpty(patientDetails.dvaCardType) && patientDetails.dvaCardType.toLowerCase() != 'none' ? patientDetails.dvaCardType.slice(0, 1).toUpperCase() : '',\r\n        pbsApprovalNumber: !this.commonServices.IsNullOrEmpty(this.commonServices.approvalNo) ? this.commonServices.approvalNo : '',\r\n        route: this.commonServices.routeSearchValue != '-' ? this.commonServices.routeSearchValue : '',\r\n        //providerNumber:'',\r\n        prescriberType: physicianDetails.prescriberType,\r\n        medicineName: !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation?.productName) ? this.commonServices.selectedFormulation.productName : \"\",\r\n        brandName: this.getBrandName(this.commonServices.selectedFormulation),\r\n        genericName: this.htmlToTextConvert(!this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation?.IsExtemp) && this.commonServices.selectedFormulation.IsExtemp == true ? this.getExtempTTPName(this.commonServices.selectedFormulation) : !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation?.genericName) ? this.commonServices.selectedFormulation.genericName : this.getExtempMPPName()),\r\n        //itemGenericIntention: getItemGenericIntention(this.state.lemi,this.state.isBrandName,this.state.selectedFormulation.IsExtemp == true ? true : false),\r\n        itemGenericIntention: this.commonServices.lemi == true && this.commonServices.selectedFormulation.IsExtemp != true ? 'B' : 'G',\r\n        scheduleNumber: this.payLoadStateScheduleNumber(this.commonServices.selectedFormulation) != \"\" ? this.payLoadStateScheduleNumber(this.commonServices.selectedFormulation) : this.commonServices.getScheduleNumber(this.commonServices.selectedFormulation),\r\n        doctorNotes: !this.commonServices.IsNullOrEmpty(this.commonServices.doctorNotes) ? this.commonServices.doctorNotes.trim() : \"\",\r\n        regulation24: this.commonServices.regulation24 == false ? 1 : 0,\r\n        isExtemp: this.commonServices.selectedFormulation != null && this.commonServices.selectedFormulation.IsExtemp != null ? this.commonServices.selectedFormulation.IsExtemp == true ? 0 : 1 : 1,\r\n        // extemporaneousDescription: this.state.selectedFormulation != null && this.state.selectedFormulation.ExtemporaneousDescription != '' ? this.state.selectedFormulation.ExtemporaneousDescription : '',\r\n        extemporaneousDescription: this.commonServices.selectedFormulation.IsExtemp == true ? this.getExtempTTPName(this.commonServices.selectedFormulation) : '',\r\n        annotation: !this.commonServices.IsNullOrEmpty(this.commonServices.annotation) ? this.commonServices.annotation.trim() : \"\",\r\n        unUsualDoseFlag: this.commonServices.unUsualDoseFlag == false ? 1 : 0,\r\n        tradeName: this.htmlToTextConvert(this.getTradeName()),\r\n        //restrictions: this.commonServices.selectedFormulation.Restrictions != null && this.commonServices.selectedFormulation.Restrictions != '' ? this.commonServices.selectedFormulation.restrictions : '',\r\n        // prescriberPersonTitle: physicianDetails.prefix,\r\n        maximumIntervalBetweenRepeats: '',\r\n        complexId: !this.commonServices.IsNullOrEmpty(this.commonServices.InstructionSearchValue) && !this.commonServices.IsNullOrEmpty(this.commonServices.complexId) ? this.commonServices.complexId : 0,\r\n        visitId: this.commonServices.visitId,\r\n        scriptType: this.commonServices.scriptType,\r\n        dose: this.commonServices.doseSearchValue,\r\n        frequency: this.commonServices.freqSearchValue,\r\n        food: this.commonServices.foodSearchValue,\r\n        prescribeAs: this.commonServices.PrescribeAS,\r\n        prn: this.commonServices.rxPRN == false ? 1 : 0,\r\n        scriptDate: this.datePipe.transform(this.commonServices.scriptDate, 'yyyy-MM-dd'),\r\n        startDate: this.datePipe.transform(this.commonServices.startDate, 'MM/dd/yyyy'),\r\n        purpose: this.commonServices.purposeSearchValue.trim(),\r\n        pbsNotes: this.commonServices.pbsNotes,\r\n        isActive: 0,\r\n        productId: !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation?.productId) ? this.commonServices.selectedFormulation.productId : \"\",\r\n        amtText: !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation?.formula) ? this.commonServices.selectedFormulation.formula : \"\",\r\n        quantityOfTherapeuticGoodDoseUnitCode: !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation?.dosageForm) ? this.commonServices.selectedFormulation.dosageForm : \"\",\r\n        quantityOfTherapeuticGoodDoseUnitText: !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation?.dosageForm) ? this.commonServices.selectedFormulation.dosageForm : \"\",\r\n        prescriberRoleCode: '',\r\n        prescriberRoleText: '',\r\n        orgHicLocationId: !this.commonServices.IsNullOrEmpty(this.commonServices.facilityDetails) && !this.commonServices.IsNullOrEmpty(this.commonServices.facilityDetails.orgHicLocationId) ? this.commonServices.facilityDetails.orgHicLocationId : '',\r\n        orgRoleCode: !this.commonServices.IsNullOrEmpty(this.commonServices.facilityDetails) && !this.commonServices.IsNullOrEmpty(this.commonServices.facilityDetails.orgRoleCode) ? this.commonServices.facilityDetails.orgRoleCode : '',\r\n        orgRoleText: !this.commonServices.IsNullOrEmpty(this.commonServices.facilityDetails) && !this.commonServices.IsNullOrEmpty(this.commonServices.facilityDetails.orgRoleText) ? this.commonServices.facilityDetails.orgRoleText : '',\r\n        authorityApprovalNumber: !this.commonServices.IsNullOrEmpty(this.commonServices.approvalNo) ? this.commonServices.approvalNo.trim() : '',\r\n        authorityApprovalNumberFlag: parseFloat(this.commonServices.selectedFormulation.maxQtyUnits) < parseInt(this.commonServices.quantityVal) || parseInt(this.commonServices.selectedFormulation.repeats) < parseInt(this.commonServices.repeatsVal) ? 1 : !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation.Restrictions) && this.commonServices.selectedFormulation.Restrictions.length > 0 && !this.commonServices.IsNullOrEmpty(this.commonServices.pbsListInstructionsId) && !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation.Restrictions[this.commonServices.pbsListInstructionsId].streamlinedCode) && parseInt(this.commonServices.selectedFormulation.Restrictions[this.commonServices.pbsListInstructionsId].streamlinedCode) == parseInt(this.commonServices.approvalNo) ? 0 : 1,\r\n        status: \"Draft\",\r\n        // pbsAuthorityPrescriptionNumber:this.state.approvalNo ? this.state.approvalNo : \"\",\r\n        // streamlinedAuthorityApprovalNumber: this.state.approvalNo? this.state.approvalNo: \"\",\r\n        // pbsAuthorityApprovalNumber: \"\",\r\n        //barcode\r\n        //scriptNumber: \"\",\r\n        displayName: this.shrinkSuperScriptCode(this.commonServices.rxDisplayName),\r\n        eopDisplayName: this.commonServices.scriptType.toLowerCase() == \"e\" ? this.shrinkSuperScriptCode(this.commonServices.eopDisplayName) : this.shrinkSuperScriptCode(this.commonServices.rxDisplayName),\r\n        itemStrengthXml: !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation?.ItemStrengthXml) ? this.commonServices.selectedFormulation.ItemStrengthXml : \" \",\r\n        //authorityValue\r\n        pbsDvaAuthorityNumber: checkAuthorityBox ? this.commonServices.authorityFormNo : 0,\r\n        prescribedItemReservedThree: this.htmlToTextConvert(this.commonServices.rxDisplayName),//this.shrinkSuperScriptCode(this.commonServices.prescribedItemReservedThree),\r\n        unlistedItemRepatAuthority: this.commonServices.unlistedRA == true ? true : false,\r\n        prescribedItemReservedOne: this.commonServices.getScheduleNumber(this.commonServices.selectedFormulation).toLowerCase() == \"s8\" ? this.numberToWord(parseInt(this.commonServices.quantityVal)) : '',\r\n        mySLConsent: this.commonServices.mySLConsent,\r\n        sendToPharmacy: this.commonServices.sendToPharmacy,\r\n        sendToPharmacyValue: this.commonServices.sendToPharmacyValue,\r\n        emergencySupply: this.commonServices.emergencySupply,\r\n        moleculeStrengthGrid: !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation?.moleculeStrengthGrid) ? this.commonServices.selectedFormulation.moleculeStrengthGrid : '',\r\n        entityId: this.commonServices.physicianDetails.entityId,\r\n        isPrescribeAndPrint: this.isepriscribeprint,\r\n        amtCodeSystem: !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation?.amtCodeSystem) ? this.commonServices.selectedFormulation.amtCodeSystem : \"\",\r\n        amtVersion: !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation?.amtVersion) ? this.commonServices.selectedFormulation.amtVersion : \"\",\r\n        quantityWithUnit: this.commonServices.quantityWithUnitFlag && !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation?.maxQtyUnits) ? this.commonServices.selectedFormulation.maxQtyUnits : \"\",\r\n        clientId: this.clientId,\r\n        productPackId: this.commonServices.selectedFormulation?.productPackId ? this.commonServices.selectedFormulation.productPackId : '',\r\n      };\r\n      this.commonServices.prescribeMedLoader = true;\r\n      this.commonServices.removeErrToast();\r\n      this.changedetect.detectChanges();\r\n      this.apiService.Post(body, config.PHYSICIAN.M_PRESCRIBE).subscribe(\r\n        (res) => {\r\n          try {\r\n            if (this.commonServices.IsNullOrEmpty(res)) {\r\n              this.PopupScreenLoader = false;\r\n              this.changedetect.detectChanges();\r\n              this.commonServices.setlogvalue(false, \"\", \"\", \"RxComponent\", \"MprescribeMed\", body);\r\n              this.commonServices.toastopen(errorconfig.error_64.message, 'error', errorconfig.error_64.code);\r\n              this.commonServices.errorResponse(errorconfig.error_64.code, errorconfig.error_64.message);\r\n              this.commonServices.prescribeMedLoader = false;\r\n              this.changedetect.detectChanges();\r\n              this.commonServices.isFetching = false;\r\n              return;\r\n            }\r\n            if (res.response_code == 0) {\r\n              this.PopupScreenLoader = false;\r\n              this.changedetect.detectChanges();\r\n              this.commonServices.toastopen(res.response_message, 'success');\r\n              this.commonServices.errorResponse(\"\", res.response_message, true, res.data);\r\n              this.close(res.data);\r\n            } else {\r\n              if (res.response_message != null && res.response_message != '') {\r\n                this.PopupScreenLoader = false;\r\n                this.commonServices.setlogvalue(false, res.response_message, res.response_message, \"RxComponent\", \"MprescribeMed\", body);\r\n                this.commonServices.toastopen(res.response_message, 'error', res.error_code);\r\n                this.commonServices.errorResponse(res.error_code, res.response_message);\r\n                this.commonServices.prescribeMedLoader = false;\r\n                this.changedetect.detectChanges();\r\n                this.commonServices.isFetching = false;\r\n              } else {\r\n                this.commonServices.setlogvalue(false, \"\", \"\", \"RxComponent\", \"MprescribeMed\", body);\r\n                this.commonServices.toastopen(errorconfig.error_64.message, 'error', errorconfig.error_64.code);\r\n                this.commonServices.errorResponse(errorconfig.error_64.code, errorconfig.error_64.message);\r\n                this.PopupScreenLoader = false;\r\n                this.commonServices.prescribeMedLoader = false;\r\n                this.changedetect.detectChanges();\r\n                this.commonServices.isFetching = false;\r\n              }\r\n            }\r\n          }\r\n          catch (ex: any) {\r\n            this.PopupScreenLoader = false;\r\n            this.commonServices.prescribeMedLoader = false;\r\n            this.changedetect.detectChanges();\r\n            this.commonServices.isFetching = false;\r\n            this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"MprescribeMed\", body);\r\n          }\r\n        }, error => {\r\n          this.PopupScreenLoader = false;\r\n          this.commonServices.prescribeMedLoader = false;\r\n          this.commonServices.isFetching = false;\r\n          this.changedetect.detectChanges();\r\n          this.commonServices.setlogvalue(false, error.message, error.stack, \"RxComponent\", \"MprescribeMed\", body);\r\n          this.commonServices.toastopen(errorconfig.error_65.message + error, \"error\", errorconfig.error_65.code);\r\n          this.commonServices.errorResponse(errorconfig.error_65.code, errorconfig.error_65.message + error);\r\n        }\r\n      );\r\n\r\n    }\r\n    catch (ex: any) {\r\n      this.PopupScreenLoader = false;\r\n      this.commonServices.prescribeMedLoader = false;\r\n      this.commonServices.isFetching = false;\r\n      this.changedetect.detectChanges();\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"MprescribeMed\", body);\r\n    }\r\n  }\r\n\r\n  createToolTip(event: any) {\r\n    try {\r\n      this.tooltip = this.renderer.createElement('div');\r\n      this.renderer.addClass(this.tooltip, '__react_component_tooltip');\r\n      this.renderer.addClass(this.tooltip, 'type-dark');\r\n      this.renderer.addClass(this.tooltip, 'place-left');\r\n      this.renderer.setStyle(this.tooltip, 'z-index', '99999999');\r\n      const viewRef = this.viewRefContainer.createEmbeddedView(this.myTemplate);\r\n      viewRef.detectChanges();\r\n      const tooltipContent = !this.commonServices.IsNullOrEmpty(viewRef.rootNodes) && viewRef.rootNodes.length != 0 ? viewRef.rootNodes[0] : \"\";\r\n      this.renderer.appendChild(this.tooltip, tooltipContent);\r\n      this.renderer.appendChild(this.elRef.nativeElement, this.tooltip);\r\n      var tool: any = this.tooltip;\r\n      var left = event.x - (tool.clientWidth + 15);\r\n      var heightvalue = event.y - (tool.clientHeight / 2);\r\n      this.renderer.setStyle(this.tooltip, 'left', left + 'px');\r\n      this.renderer.setStyle(this.tooltip, 'top', heightvalue + 'px');\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"createToolTip\");\r\n    }\r\n  }\r\n\r\n  showtooltip(lemiproduct: boolean, brandtooltip: any) {\r\n    try {\r\n      if (lemiproduct) {\r\n        this.tooltip = this.renderer.createElement('div');\r\n        this.renderer.addClass(this.tooltip, 'lemi-tooltip');\r\n        this.renderer.addClass(this.tooltip, 'type-dark');\r\n        const targetRect = this.elRef.nativeElement.getBoundingClientRect();\r\n        const viewRef = this.viewRefContainer.createEmbeddedView(brandtooltip);\r\n        viewRef.detectChanges();\r\n        var mydom: any = document.getElementById(\"brandnametooltip\");\r\n        var rect = mydom.getBoundingClientRect();\r\n        const tooltipContent = viewRef.rootNodes[0];\r\n        this.renderer.appendChild(this.tooltip, tooltipContent);\r\n        this.renderer.appendChild(this.elRef.nativeElement, this.tooltip);\r\n        this.renderer.setStyle(this.tooltip, 'left', rect.left + 'px');\r\n        this.renderer.setStyle(this.tooltip, 'top', rect.top - mydom.offsetHeight - 10 + 'px');\r\n        this.renderer.setStyle(this.tooltip, 'width', mydom.clientWidth + 'px');\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"showtooltip\");\r\n    }\r\n  }\r\n\r\n  //edit rx\r\n  setEditValues(rxList: any) {\r\n    var payload = {};\r\n    try {\r\n      this.PopupScreenLoader = true;\r\n      rxList.pbsItemCodeCode = rxList.pbsItemCodeCode != null ? rxList.pbsItemCodeCode : \"\";\r\n      payload = {\r\n        request_type: \"parameter\",\r\n        productId: rxList.productId,\r\n        pbsCode: rxList.pbsItemCodeCode,\r\n        rxId: this.commonServices.rxid,\r\n        productPackId: rxList.productPackId ? rxList.productPackId : '',\r\n      };\r\n      this.apiService.Get(config.PHYSICIAN.GET_MED_DET_BY_ID + \"?productId=\" + rxList.productId + \"&pbsCode=\" +  rxList.pbsItemCodeCode  + \"&rxId=\" + this.commonServices.rxid + \"&productPackId=\" + (rxList.productPackId ? rxList.productPackId : '')).subscribe((res: any) => {\r\n        try {\r\n          if (this.commonServices.IsNullOrEmpty(res)) {\r\n            this.PopupScreenLoader = false; this.changedetect.detectChanges();\r\n            this.commonServices.setlogvalue(false, \"\", \"\", \"RxComponent\", \"setEditValues\", this.responseData.payload);\r\n            this.commonServices.toastopen(errorconfig.error_64.message, 'error', errorconfig.error_64.code);\r\n            this.commonServices.errorResponse(errorconfig.error_64.code, errorconfig.error_64.message);\r\n            return;\r\n          }\r\n          if (res.response_code == 0) {\r\n            var editRestrictFlag = (this.commonServices.isMedicineRestrict && !this.commonServices.IsNullOrEmpty(rxList?.status) && rxList.status.toLowerCase() != \"draft\") || !this.commonServices.isMedicineRestrict ? true : false;\r\n            if (editRestrictFlag) {\r\n              var Med = [];\r\n              Med.push(res.response);\r\n              this.commonServices.selectedMedicineList = Med;\r\n              this.selectedMedicineListOrginal = Med;\r\n            }\r\n            else {\r\n              this.getRestrictedMedicine();\r\n            }\r\n            this.selectFormulation(res.response, 0);\r\n            this.commonServices.isFetching = false;\r\n            this.commonServices.mediSearchValue = \"\";\r\n            this.searchedMedicineList = [];\r\n            this.page = 1;\r\n            this.rxOnlyPBS = false;\r\n            this.commonServices.quantityVal = rxList.quantityOfTherapeuticGoodQuantity;\r\n            this.commonServices.repeatsVal = rxList.maximumNumberOfRepeats ? rxList.maximumNumberOfRepeats : \"0\";\r\n            this.commonServices.doseSearchValue = rxList.dose;\r\n            this.commonServices.freqSearchValue = rxList.frequency ? rxList.frequency : \"\";\r\n            this.commonServices.foodSearchValue = rxList.food ? rxList.food : \"\";\r\n            if (!this.commonServices.IsNullOrEmpty(rxList.complexInstructions) && this.instructionData.length > 0) {\r\n              var data = this.instructionData.filter(((x: { text: any; }) => x.text == rxList.complexInstructions));\r\n              if (!this.commonServices.IsNullOrEmpty(data) && data.length > 0) {\r\n                this.commonServices.InstructionSearchValue = rxList.complexInstructions;\r\n                this.InstructionDescription = !this.commonServices.IsNullOrEmpty(data[0].description) ? data[0].description : \"\";\r\n              }\r\n              else {\r\n                this.commonServices.InstructionSearchValue = rxList.complexInstructions;\r\n                this.InstructionDescription = \"\";\r\n              }\r\n            }\r\n            else {\r\n              this.commonServices.InstructionSearchValue = !this.commonServices.IsNullOrEmpty(rxList.complexInstructions) ? rxList.complexInstructions : \"\";\r\n              this.InstructionDescription = \"\";\r\n            }\r\n            this.commonServices.complexId = rxList.complexId ? rxList.complexId : 0;\r\n            this.commonServices.routeSearchValue = rxList.route ? rxList.route : \"\";\r\n            this.commonServices.rxPRN = rxList.prn == 0 ? true : false;\r\n            this.commonServices.PrescribeAS = rxList.prescribeAs;\r\n            this.commonServices.scriptDate = !this.commonServices.IsNullOrEmpty(rxList.scriptDate) ? this.datePipe.transform(rxList.scriptDate, 'yyyy-MM-dd') : \"\";\r\n            this.commonServices.startDate = !this.commonServices.IsNullOrEmpty(rxList.startDate) ? this.datePipe.transform(rxList.startDate, 'yyyy-MM-dd') : \"\";\r\n            this.commonServices.endDate = this.datePipe.transform(rxList.prescriptionExpiresValue, 'yyyy-MM-dd');\r\n            this.commonServices.daysBtnRepeatsVal = rxList.minimumIntervalBetweenRepeats == -1 ? '' : rxList.minimumIntervalBetweenRepeats;\r\n            this.commonServices.purposeSearchValue = !this.commonServices.IsNullOrEmpty(rxList.purpose) ? rxList.purpose : \"\";\r\n            this.commonServices.BrandSubstitutesNotAllow = rxList.brandSubstitutesNotAllowed == 0 ? true : false;\r\n            this.commonServices.annotation = !this.commonServices.IsNullOrEmpty(rxList.annotation) ? rxList.annotation : \"\";\r\n            this.commonServices.doctorNotes = !this.commonServices.IsNullOrEmpty(rxList.doctorNotes) ? rxList.doctorNotes : \"\";\r\n            this.commonServices.prescriptionReason = rxList.reasonForTherapeuticGood;\r\n            this.commonServices.pbsListInstructions = \"\";\r\n            this.commonServices.pbsNotes = !this.commonServices.IsNullOrEmpty(rxList.pbsNotes) ? rxList.pbsNotes : \"\";\r\n            this.commonServices.pbsListInstructionsAut = \"\";\r\n            this.commonServices.approvalNo = rxList.authorityApprovalNumber;\r\n            this.commonServices.sendToPharmacy = rxList.sendToPharmacy;\r\n            this.commonServices.sendToPharmacyValue = rxList.sendToPharmacyValue;\r\n            this.commonServices.emergencySupply = rxList.emergencySupply;\r\n            this.commonServices.mySLConsent = rxList.mySLConsent;\r\n            this.commonServices.prescribeMedLoader = false;\r\n            this.commonServices.rxAuthority = false;\r\n            this.commonServices.regulation24 = rxList.regulation24 == 0 ? true : false;\r\n            this.commonServices.scriptType = rxList.scriptType;\r\n            this.commonServices.CTGCoPayment = rxList.patientCtgFlag == 0 ? true : false\r\n            this.commonServices.lemi = !this.commonServices.IsNullOrEmpty(res.response.aip) ? res.response.aip.lemi : false;\r\n            this.commonServices.lmbc = !this.commonServices.IsNullOrEmpty(res.response.aip) ? res.response.aip.lmbc : false;\r\n            this.commonServices.unUsualDoseFlag = rxList.unUsualDoseFlag == 0 ? true : false;\r\n            this.commonServices.StateAuthorityNumber = !this.commonServices.IsNullOrEmpty(rxList.stateAuthorityNumber) ? rxList.stateAuthorityNumber : \"\";\r\n            this.commonServices.pbsListInstructionsId = rxList.restrictedPbsSelectedIndex != 0 ? rxList.restrictedPbsSelectedIndex - 1 : null; this.commonServices.pbsListInstructions = !this.commonServices.IsNullOrEmpty(rxList.pbsListInstructions) ? rxList.pbsListInstructions : '';\r\n            this.commonServices.isBrandName = rxList.isBrandName ? rxList.isBrandName : false;\r\n            this.commonServices.isShowAuthority = rxList.isShowAuthority ? rxList.isShowAuthority : false;\r\n            this.commonServices.authorityFormNo = !this.commonServices.IsNullOrEmpty(rxList.pbsDvaAuthorityNumber) && rxList.pbsDvaAuthorityNumber != 0 ? rxList.pbsDvaAuthorityNumber : \"\";\r\n            if (rxList.isShowAuthority) {\r\n              this.commonServices.rxAuthority = true;\r\n            }\r\n            this.commonServices.editPrescription = true\r\n            this.changedetect.detectChanges();\r\n            if (rxList.status.toLowerCase() == \"prescribed\") {\r\n              this.commonServices.editPrescribedPrescription = true;\r\n            }\r\n            else if (rxList.status.toLowerCase() == \"ceased\") {\r\n              this.commonServices.editPrescribedPrescription = true;\r\n            }\r\n            else if (rxList.status.toLowerCase() == \"cancelled\") {\r\n              this.commonServices.editPrescribedPrescription = true;\r\n            } else {\r\n              this.commonServices.editPrescribedPrescription = false;\r\n            }\r\n            if (editRestrictFlag) {\r\n              this.PopupScreenLoader = false;\r\n              this.changedetect.detectChanges();\r\n            }\r\n          }\r\n          else {\r\n            this.PopupScreenLoader = false;\r\n            this.changedetect.detectChanges();\r\n            this.commonServices.setlogvalue(false, res.response_message, res.response_message, \"RxComponent\", \"setEditValues\", payload);\r\n            this.commonServices.toastopen(res.response_message, 'error', res.error_code);\r\n            this.commonServices.errorResponse(res.error_code, res.response_message);\r\n          }\r\n        }\r\n        catch (ex: any) {\r\n          this.PopupScreenLoader = false;\r\n          this.changedetect.detectChanges();\r\n          this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"setEditValues\", payload);\r\n        }\r\n      }, error => {\r\n        this.PopupScreenLoader = false;\r\n        this.changedetect.detectChanges();\r\n        this.commonServices.setlogvalue(false, error.message, error.stack, \"RxComponent\", \"setEditValues\", payload);\r\n        this.commonServices.toastopen(errorconfig.error_65.message + error, \"error\", errorconfig.error_65.code);\r\n        this.commonServices.errorResponse(errorconfig.error_65.code, errorconfig.error_65.message + error);\r\n      })\r\n    }\r\n    catch (ex: any) {\r\n      this.PopupScreenLoader = false;\r\n      this.changedetect.detectChanges();\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"setEditValues\", payload);\r\n    }\r\n  }\r\n\r\n\r\n  //enable e-prescription\r\n  ePrescriptionValidation(value: any) {\r\n    try {\r\n      if (this.commonServices.editPrescription === true) {\r\n        if (!this.commonServices.IsNullOrEmpty(this.commonServices.rxDetails?.scriptType) && this.commonServices.rxDetails.scriptType.toUpperCase() == 'M') {\r\n          return true;\r\n        } else if ((!this.commonServices.IsNullOrEmpty(this.commonServices.rxDetails?.scriptType) && this.commonServices.rxDetails.scriptType.toUpperCase() == 'E' && !this.commonServices.IsNullOrEmpty(this.commonServices.rxDetails?.status) && this.commonServices.rxDetails.status.toLowerCase() == 'draft' && this.commonServices.physicianDetails.ePrescriptionAllowed == 0 && this.commonServices.patientDetails.vendorPatientConsent == true && this.commonServices.createPatientResponse.is_hpio_valid && this.commonServices.createPatientResponse.is_hpii_valid && this.commonServices.createPatientResponse.is_ihi_valid) || (value == 1 && !this.commonServices.IsNullOrEmpty(this.commonServices.rxDetails?.status) && this.commonServices.rxDetails.status.toLowerCase() == 'draft')) {\r\n          return false;\r\n        } else {\r\n          return true;\r\n        }\r\n      } else {\r\n        if ((this.commonServices.createPatientResponse.is_hpio_valid && this.commonServices.createPatientResponse.is_hpii_valid && this.commonServices.createPatientResponse.is_ihi_valid && this.commonServices.physicianDetails.ePrescriptionAllowed == 0 && this.commonServices.patientDetails.vendorPatientConsent == true) || value == 1) {\r\n          return false;\r\n        } else {\r\n          return true;\r\n        }\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"ePrescriptionValidation\");\r\n      return false;\r\n    }\r\n  }\r\n\r\n  getStateScheduleNumber(selectedFormulation: any) {\r\n    try {\r\n      if (selectedFormulation != null && selectedFormulation.stateSchedules != null && selectedFormulation.stateSchedules != \"\") {\r\n        var stateScheduleList = [];\r\n        for (var i = 0; i < selectedFormulation.stateSchedules.length; i++) {\r\n          if (stateScheduleList.length > 0) {\r\n            stateScheduleList.concat(selectedFormulation.stateSchedules[i].schedules);\r\n          } else {\r\n            stateScheduleList.push(selectedFormulation.stateSchedules[i].schedules);\r\n          }\r\n        }\r\n        return stateScheduleList;\r\n      } else {\r\n        return [];\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"getStateScheduleNumber\");\r\n      return [];\r\n    }\r\n  }\r\n\r\n  authorityNoValidation(event: any) {\r\n    try {\r\n      var keyvalue = event.charCode;\r\n      return ((keyvalue > 64 && keyvalue < 91) || (keyvalue > 96 && keyvalue < 123) || (keyvalue >= 48 && keyvalue <= 57));\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"authorityNoValidation\");\r\n      return false;\r\n    }\r\n  }\r\n\r\n  payLoadStateScheduleNumber(ScheduleNumber: any) {\r\n    try {\r\n      var stateScheduleNumber = this.getStateScheduleNumber(ScheduleNumber);\r\n      if (!this.commonServices.IsNullOrEmpty(stateScheduleNumber)) {\r\n        if (this.getStateCodeFromStateName(this.commonServices.patientDetails.state).toUpperCase() == \"TAS\" && stateScheduleNumber.length != 0 && stateScheduleNumber[0].indexOf(\"S4D\") != -1) {\r\n          return \"S4D\";\r\n        } else if (this.getStateCodeFromStateName(this.commonServices.patientDetails.state).toUpperCase() == \"NSW\" && stateScheduleNumber.length != 0 && stateScheduleNumber[0].indexOf(\"S4B\") != -1) {\r\n          return \"S4B\";\r\n        } else {\r\n          return \"\";\r\n        }\r\n      } else {\r\n        return \"\";\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"payLoadStateScheduleNumber\");\r\n      return \"\";\r\n    }\r\n  }\r\n\r\n  prescripeAbort() {\r\n    try {\r\n      var payload = {\r\n        request_type: \"parameter\",\r\n        userId: this.commonServices.physicianDetails.userId,\r\n        patUserId: this.commonServices.patientDetails.patientUserId\r\n      }\r\n      this.abortdisable = true;\r\n      this.changedetect.detectChanges();\r\n      this.apiService.Get(config.PHYSICIAN.RX_PRESCRIBE_ABORT + \"?userId=\" + this.commonServices.physicianDetails.userId + \"&patUserId=\" + this.commonServices.patientDetails.patientUserId).subscribe((res: any) => {\r\n        try {\r\n          this.responseData.isAbort = true;\r\n          if (this.commonServices.IsNullOrEmpty(res)) {\r\n            this.responseData.abortError = true;\r\n            this.responseData.abortErr_code = errorconfig.error_64.code;\r\n            this.responseData.abortMsg = errorconfig.error_64.message;\r\n            this.commonServices.setlogvalue(false, \"\", \"\", \"RxComponent\", \"prescripeAbort\", this.responseData.payload);\r\n            this.commonServices.toastopen(errorconfig.error_64.message, 'error', errorconfig.error_64.code);\r\n            this.commonServices.errorResponse(errorconfig.error_64.code, errorconfig.error_64.message);\r\n          }\r\n          else {\r\n            if (res.response_code == 0) {\r\n              this.responseData.abortSuccess = true;\r\n              this.responseData.abortMsg = res.response_message;\r\n              this.commonServices.isFetching = false;\r\n              this.changedetect.detectChanges();\r\n              // this.commonServices.rxid = \"\";\r\n            }\r\n            else {\r\n              this.responseData.abortError = true;\r\n              this.responseData.abortErr_code = res.error_code;\r\n              this.responseData.abortMsg = res.response_message;\r\n              this.commonServices.setlogvalue(false, res.response_message, res.response_message, \"RxComponent\", \"prescripeAbort\", payload);\r\n              this.commonServices.errorResponse(res.error_code, res.response_message);\r\n            }\r\n          }\r\n          if (this.responseData.isPrescribe)\r\n            this.showResponseMessage();\r\n          this.changedetect.detectChanges();\r\n        }\r\n        catch (ex: any) {\r\n          this.abortBtnFlag = false;\r\n          this.changedetect.detectChanges();\r\n          this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"prescripeAbort\", payload);\r\n        }\r\n      }, error => {\r\n        this.responseData.isAbort = true;\r\n        this.responseData.abortError = true;\r\n        this.responseData.abortMsg = errorconfig.error_65.message + error;\r\n        this.responseData.abortErr_code = errorconfig.error_65.code\r\n        if (this.responseData.isPrescribe)\r\n          this.showResponseMessage();\r\n        this.commonServices.setlogvalue(false, error.message, error.stack, \"RxComponent\", \"prescripeAbort\", payload);\r\n        this.commonServices.errorResponse(errorconfig.error_65.code, errorconfig.error_65.message + error);\r\n      });\r\n    }\r\n    catch (ex: any) {\r\n      this.abortBtnFlag = false;\r\n      this.changedetect.detectChanges();\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"prescripeAbort\");\r\n    }\r\n  }\r\n\r\n  showResponseMessage() {\r\n    try {\r\n      if (!this.responseData.abortSuccess && !this.commonServices.IsNullOrEmpty(this.responseData.prescribedata)) {\r\n        this.commonServices.errorResponse(\"\", this.responseData.prescribedata.response_message, true, this.responseData.prescribedata.data);\r\n        this.close(this.responseData.prescribedata.data);\r\n        if (this.commonServices.isPrintAvailable == true) {\r\n          if (!this.commonServices.IsNullOrEmpty(this.responseData.prescribedata.file_url)) {\r\n            this.apiService.Get(this.responseData.prescribedata.file_url).subscribe(\r\n              (response: any) => {\r\n                try {\r\n                  if (this.commonServices.IsNullOrEmpty(response)) {\r\n                    this.commonServices.setlogvalue(false, \"\", \"\", \"RxComponent\", \"showResponseMessage\", this.responseData.payload);\r\n                    this.commonServices.toastopen(errorconfig.error_64.message, 'error', errorconfig.error_64.code);\r\n                    this.commonServices.errorResponse(errorconfig.error_64.code, errorconfig.error_64.message);\r\n                  }\r\n                  else {\r\n                    if (response.response_code == 0) {\r\n                      const byteArray = new Uint8Array(atob(response.file).split('').map(char => char.charCodeAt(0)));\r\n                      var bbb = new Blob([byteArray], { type: \"application/pdf\" });\r\n                      var url = window.URL.createObjectURL(bbb);\r\n                      const newWindow = window.open(url, '_blank');\r\n                      if (newWindow) {\r\n                        newWindow.focus();\r\n                      }\r\n                      else {\r\n                        this.printWarningPop();\r\n                      }\r\n                    }\r\n                    else {\r\n                      this.commonServices.setlogvalue(false, response.response_message, response.response_message, \"RxComponent\", \"showResponseMessage\", this.responseData.payload);\r\n                      this.commonServices.toastopen(response.response_message, 'error', this.responseData.prescribedata.error_code);\r\n                      this.commonServices.errorResponse(this.responseData.prescribedata.error_code, response.response_message);\r\n                    }\r\n                  }\r\n                  this.PopupScreenLoader = false;\r\n                  this.commonServices.prescribeMedLoader = false;\r\n                  this.changedetect.detectChanges();\r\n                  this.commonServices.isFetching = false;\r\n                }\r\n                catch (ex: any) {\r\n                  this.PopupScreenLoader = false;\r\n                  this.commonServices.prescribeMedLoader = false;\r\n                  this.changedetect.detectChanges();\r\n                  this.commonServices.isFetching = false;\r\n                  this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"showResponseMessage\", this.responseData.payload);\r\n                }\r\n              }, error => {\r\n                this.PopupScreenLoader = false;\r\n                this.commonServices.prescribeMedLoader = false;\r\n                this.commonServices.isFetching = false;\r\n                this.changedetect.detectChanges();\r\n                this.commonServices.setlogvalue(false, error.message, error.stack, \"RxComponent\", \"showResponseMessage\", this.responseData.payload);\r\n                this.commonServices.toastopen(errorconfig.error_65.message + error, \"error\", errorconfig.error_65.code);\r\n                this.commonServices.errorResponse(errorconfig.error_65.code, errorconfig.error_65.message + error);\r\n              }\r\n            );\r\n          }\r\n        }\r\n      }\r\n      if (this.responseData.abortSuccess && this.responseData.prescribeError) {\r\n        this.changedetect.detectChanges();\r\n        this.commonServices.toastopen(this.responseData.abortMsg, 'success');\r\n      }\r\n      else if ((this.responseData.prescribeSuccess && !this.responseData.abortError && !this.responseData.abortSuccess)) {\r\n        this.commonServices.toastopen(this.responseData.PrescribeMsg, 'success');\r\n      }\r\n      else if ((this.responseData.prescribeError && !this.responseData.abortError && !this.responseData.abortSuccess)) {\r\n        this.commonServices.toastopen(this.responseData.PrescribeMsg, 'error', this.responseData.prescribeErr_code);\r\n      }\r\n      else if (this.responseData.prescribeSuccess && this.responseData.abortError) {\r\n        this.commonServices.toastopen(this.responseData.PrescribeMsg, 'success');\r\n        this.commonServices.toastopen(this.responseData.abortMsg, \"error\", this.responseData.abortErr_code);\r\n      }\r\n      else if (this.responseData.prescribeError && this.responseData.abortError) {\r\n        this.commonServices.toastopen(this.responseData.PrescribeMsg, 'error', this.responseData.prescribeErr_code);\r\n        this.commonServices.toastopen(this.responseData.abortMsg, \"error\", this.responseData.abortErr_code);\r\n      }\r\n      else if (this.responseData.prescribeSuccess && this.responseData.abortSuccess) {\r\n        this.commonServices.toastopen(this.responseData.abortMsg, \"success\");\r\n      }\r\n      this.commonServices.prescribeMedLoader = false;\r\n      this.abortBtnFlag = false;\r\n      this.isepriscribeprint = false;\r\n      this.responseData.isAbort = false;\r\n      this.responseData.isPrescribe = false;\r\n      this.responseData.abortSuccess = false;\r\n      this.responseData.prescribeError = false;\r\n      this.responseData.prescribeSuccess = false;\r\n      this.responseData.abortError = false;\r\n      this.responseData.PrescribeMsg = \"\";\r\n      this.responseData.abortMsg = \"\";\r\n      this.responseData.prescribedata = \"\";\r\n      this.responseData.payload = \"\";\r\n      this.changedetect.detectChanges();\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"showResponseMessage\", this.responseData.payload);\r\n    }\r\n  }\r\n\r\n  MIMSPrimarySearch() {\r\n    try {\r\n      var payload = {};\r\n      if (!this.isStillSearching && !this.commonServices.searchApiStopFlag) {\r\n        // if (this.searchMedicinesLength != 0) {\r\n          payload = {\r\n            request_type: \"parameter\",\r\n            productName: this.ProductSearchName\r\n          }\r\n          if (this.isStillSearching) {\r\n            this.searchMedicineLoader = true;\r\n            this.PrimarySearchSpinner = false;\r\n            this.searchMedicinesLength = 0;\r\n            this.changedetect.detectChanges();\r\n            return;\r\n          }\r\n          if (this.mediSearchValue.trim().length < 3) {\r\n            this.isStillSearching = false;\r\n            this.searchMedicineLoader = false;\r\n            this.PrimarySearchSpinner = false;\r\n            this.commonServices.searchApiStopFlag = true;\r\n            this.changedetect.detectChanges();\r\n            return;\r\n          }\r\n          if (this.searchedMedicineList.length < 8)\r\n            this.searchMedicineLoader = true;\r\n          else\r\n            this.PrimarySearchSpinner = true;\r\n          this.changedetect.detectChanges();\r\n          this.searchMedicinesPageNumber += 1;\r\n          var pbsType = this.rxOnlyPBS && this.rxPrivate ? \"\" : this.rxOnlyPBS ? \"PBS,RPBS\" : this.rxPrivate ? \"Private\" : \"\";\r\n          const searchMethod = this.commonServices.smartSearch ? config.GET_MEDS_BY_SMART_SEARCH + '?productName=' + encodeURIComponent(this.ProductSearchName) + '&page=' + this.searchMedicinesPageNumber + '&noOfRec=10&pbsType=' + pbsType\r\n            : config.GET_MEDS_BY_SEARCH + '?productName=' + encodeURIComponent(this.ProductSearchName) + '&page=' + this.searchMedicinesPageNumber + '&noOfRec=10'\r\n\r\n          this.commonServices.MIMSPrimaryapi = this.apiService.Get(searchMethod).subscribe((res: any) => {\r\n            try {\r\n              if (this.isStillSearching) {\r\n                this.searchMedicineLoader = true;\r\n                this.PrimarySearchSpinner = false;\r\n                this.searchMedicinesLength = 0;\r\n                this.changedetect.detectChanges();\r\n                return;\r\n              }\r\n              if (this.commonServices.IsNullOrEmpty(res)) {\r\n                this.searchMedicineLoader = false;\r\n                this.PrimarySearchSpinner = false;\r\n                this.searchMedicinesLength = 0; this.changedetect.detectChanges();\r\n                this.commonServices.setlogvalue(false, \"\", \"\", \"RxComponent\", \"MIMSPrimarySearch\", payload);\r\n                this.commonServices.errorResponse(errorconfig.error_64.code, errorconfig.error_64.message);\r\n                return;\r\n              }\r\n              if (res.response_code == 0) {\r\n                const filteredList = res.response.filter((item: any) =>\r\n                  this.isPbsTypeMatch(item.pbsType, pbsType)\r\n                );\r\n                this.searchMedicinesLength = filteredList.length;\r\n                filteredList.forEach((data: any) => {\r\n                  // if (this.searchedMedicineList.length > 0) {\r\n                    var value = this.searchedMedicineList.filter((x: any) => x.prodDisplayValue == data.prodDisplayValue);\r\n                    if (!this.commonServices.IsNullOrEmpty(value) && value.length > 0) {\r\n                      value.forEach((val: any) => {\r\n                        var product = val.prodHiddenValue.includes(data.prodHiddenValue);\r\n                        var type = data.searchBase.toLowerCase() == 'brandkey' ? 'BK' : data.searchBase.toLowerCase() == 'prodpackkey' ? 'PPK' : data.searchBase.toLowerCase() == 'virtualname' ? 'VN' : data.searchBase.toLowerCase() == 'productkey' ? 'PK' : data.searchBase.toLowerCase() == 'productkeyactiveingredient' ? 'PKA' : data.searchBase.toLowerCase() == 'fullpi' ? 'FPI' : 'PN';\r\n                        if (!product && type != 'PKA') {\r\n                          val.prodHiddenValue += ',' + data.prodHiddenValue;\r\n                        }\r\n                      });\r\n                    }\r\n                    else {\r\n                      this.searchedMedicineList.push(data);\r\n                    }\r\n                  // }\r\n                });\r\n                if (this.searchedMedicineList.length > 7 || res.response.length == 0) {\r\n                  this.searchMedicineLoader = false;\r\n                  this.PrimarySearchSpinner = false;\r\n                  this.changedetect.detectChanges();\r\n                }\r\n                if (res.response.length != 0) {\r\n                  if (this.searchedMedicineList.length < 8 && this.isStillSearching) {\r\n                    this.searchMedicineLoader = true;\r\n                    this.changedetect.detectChanges();\r\n                  }\r\n                  this.MIMSPrimarySearch();\r\n                }\r\n              } else {\r\n                this.searchMedicineLoader = false;\r\n                this.PrimarySearchSpinner = false;\r\n                this.searchMedicinesLength = 0;\r\n                this.commonServices.setlogvalue(false, res.response_message, res.response_message, \"RxComponent\", \"primaryMIMSSearch\", payload);\r\n                this.commonServices.toastopen(res.response_message, 'error', res.error_code);\r\n                this.commonServices.errorResponse(res.error_code, res.response_message);\r\n              }\r\n              this.changedetect.detectChanges();\r\n            }\r\n            catch (ex: any) {\r\n              this.searchMedicineLoader = false;\r\n              this.PrimarySearchSpinner = false;\r\n              this.searchMedicinesLength = 0;\r\n              this.changedetect.detectChanges();\r\n              this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"primaryMIMSSearch\", payload);\r\n            }\r\n          }, error => {\r\n            this.searchMedicineLoader = false;\r\n            this.PrimarySearchSpinner = false;\r\n            this.searchMedicinesLength = 0;\r\n            this.changedetect.detectChanges();\r\n            this.commonServices.setlogvalue(false, error.message, error.stack, \"RxComponent\", \"primaryMIMSSearch\", payload);\r\n            this.commonServices.toastopen(errorconfig.error_65.message + error, \"error\", errorconfig.error_65.code);\r\n            this.commonServices.errorResponse(errorconfig.error_65.code, errorconfig.error_65.message + error);\r\n          });\r\n        // }\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.searchMedicineLoader = false;\r\n      this.PrimarySearchSpinner = false;\r\n      this.searchMedicinesLength = 0;\r\n      this.changedetect.detectChanges();\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"primaryMIMSSearch\");\r\n    }\r\n  }\r\n\r\n  MIMSSecondarySearch() {\r\n    try {\r\n      if (!this.isStillSearching && !this.commonServices.searchApiStopFlag) {\r\n        var payload = {};\r\n        if (this.searchBynameLength != 0 && this.ProductType.toLowerCase() != \"pk\" && this.ProductType.toLowerCase() != \"pn\" && this.ProductType.toLowerCase() != \"vn\" && this.ProductType.toLowerCase() != \"fpi\") {\r\n          payload = {\r\n            request_type: \"parameter\",\r\n            productName: this.prodHiddenName,\r\n            type: this.ProductType,\r\n            prescriberType: \"MP\"\r\n          }\r\n          if (this.commonServices.selectedMedicineList.length <= 3)\r\n            this.onclickMedicineLoader = true;\r\n          else\r\n            this.SecondarySearchSpinner = true;\r\n          this.changedetect.detectChanges();\r\n          this.searchBynamePageNumber += 1;\r\n          this.commonServices.MIMSSecondaryapi = this.apiService.Get(config.GET_MEDS_BY_NAME + '?productName=' + encodeURIComponent(this.prodHiddenName) + '&type=' + this.ProductType + '&prescriberType=MP&page=' + this.searchBynamePageNumber + '&noOfRec=10').subscribe((res: any) => {\r\n            try {\r\n              if (this.commonServices.IsNullOrEmpty(res)) {\r\n                this.searchBynameLength = 0;\r\n                this.commonServices.searchApiStopFlag = true;\r\n                this.onclickMedicineLoader = false;\r\n                this.SecondarySearchSpinner = false; this.changedetect.detectChanges();\r\n                this.commonServices.setlogvalue(false, \"\", \"\", \"RxComponent\", \"MIMSSecondarySearch\", payload);\r\n                this.commonServices.errorResponse(errorconfig.error_64.code, errorconfig.error_64.message);\r\n                return;\r\n              }\r\n              if (res.response_code == 0) {\r\n                if (this.commonServices.searchApiStopFlag) {\r\n                  this.commonServices.selectedMedicineList = [];\r\n                  this.selectedMedicineListOrginal = [];\r\n                  this.onclickMedicineLoader = false;\r\n                  this.SecondarySearchSpinner = false;\r\n                  this.changedetect.detectChanges();\r\n                  return;\r\n                }\r\n                if (res.response.length == 0) {\r\n                  this.searchBynamePageNumber = 1;\r\n                  this.onclickMedicineLoader = false;\r\n                  this.SecondarySearchSpinner = false;\r\n                }\r\n                else {\r\n                  res.response.forEach((data: any) => {\r\n                    this.selectedMedicineListOrginal.push(data);\r\n                  });\r\n                  this.searchBynameLength = res.response.length;\r\n                  // if (this.isNonPbsFlag) {\r\n                  //   this.rxOnlyNONPBSFilter();\r\n                  // } else {\r\n                  //   if (this.rxOnlyPBS == true) {\r\n                  //     this.rxOnlyPBSFilter();\r\n                  //   }\r\n                  //   else {\r\n                  //     this.commonServices.selectedMedicineList = this.selectedMedicineListOrginal;\r\n                  //   }\r\n                  // }\r\n                  this.onCheckboxChange(2);\r\n                  if (!this.commonServices.IsNullOrEmpty(this.commonServices.selectedMedicineList) && this.commonServices.selectedMedicineList.length <= 3) {\r\n                    this.onclickMedicineLoader = true;\r\n                    this.changedetect.detectChanges();\r\n                  }\r\n                  else {\r\n                    this.onclickMedicineLoader = false;\r\n                    this.SecondarySearchSpinner = false;\r\n                    this.changedetect.detectChanges();\r\n                  }\r\n                  if (!this.commonServices.IsNullOrEmpty(res.response) && res.response.length != 0) {\r\n                    this.MIMSSecondarySearch();\r\n                  }\r\n                }\r\n              } else {\r\n                this.searchBynameLength = 0;\r\n                this.commonServices.searchApiStopFlag = true;\r\n                this.onclickMedicineLoader = false;\r\n                this.SecondarySearchSpinner = false;\r\n                this.commonServices.setlogvalue(false, res.response_message, res.response_message, \"RxComponent\", \"MIMSSecondarySearch\", payload);\r\n                this.commonServices.toastopen(res.response_message, 'error', res.error_code);\r\n                this.commonServices.errorResponse(res.error_code, res.response_message);\r\n              }\r\n              this.changedetect.detectChanges();\r\n            }\r\n            catch (ex: any) {\r\n              this.onclickMedicineLoader = false;\r\n              this.SecondarySearchSpinner = false;\r\n              this.searchBynameLength = 0;\r\n              this.changedetect.detectChanges();\r\n              this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"MIMSSecondarySearch\", payload);\r\n            }\r\n          }, error => {\r\n            this.commonServices.searchApiStopFlag = true;\r\n            this.onclickMedicineLoader = false;\r\n            this.SecondarySearchSpinner = false;\r\n            this.changedetect.detectChanges();\r\n            this.commonServices.setlogvalue(false, error.message, error.stack, \"RxComponent\", \"MIMSSecondarySearch\", payload);\r\n            this.commonServices.toastopen(errorconfig.error_65.message + error, \"error\", errorconfig.error_65.code);\r\n            this.commonServices.errorResponse(errorconfig.error_65.code, errorconfig.error_65.message + error);\r\n          });\r\n        }\r\n        else {\r\n          this.onclickMedicineLoader = false;\r\n          this.SecondarySearchSpinner = false;\r\n          this.changedetect.detectChanges();\r\n        }\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.onclickMedicineLoader = false;\r\n      this.SecondarySearchSpinner = false;\r\n      this.changedetect.detectChanges();\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"MIMSSecondarySearch\");\r\n    }\r\n  }\r\n\r\n  printWarningPop() {\r\n    try {\r\n      var data = \"Please enable popup on the browser to view/print the prescription.\";\r\n      this.commonServices.dialogopen(RealTimePrescriptionMonitoringComponent, this.content, data).subscribe((res) => { });\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"printWarningPop\");\r\n    }\r\n  }\r\n\r\n  numberToWord(n: any) {\r\n    try {\r\n      if (n < 0)\r\n        return false;\r\n      var single_digit = ['', 'One', 'Two', 'Three', 'Four', 'Five', 'Six', 'Seven', 'Eight', 'Nine']\r\n      var double_digit = ['Ten', 'Eleven', 'Twelve', 'Thirteen', 'Fourteen', 'Fifteen', 'Sixteen', 'Seventeen', 'Eighteen', 'Nineteen']\r\n      var below_hundred = ['Twenty', 'Thirty', 'Forty', 'Fifty', 'Sixty', 'Seventy', 'Eighty', 'Ninety']\r\n      if (n === 0) return 'Zero';\r\n      function translate(n: any) {\r\n        var word: any = ''\r\n        if (n < 10) {\r\n          word = single_digit[n] + ' '\r\n        }\r\n        else if (n < 20) {\r\n          word = double_digit[n - 10] + ' '\r\n        }\r\n        else if (n < 100) {\r\n          var rem = translate(n % 10)\r\n          word = below_hundred[(n - n % 10) / 10 - 2] + ' ' + rem\r\n        }\r\n        else if (n < 1000) {\r\n          word = single_digit[Math.trunc(n / 100)] + ' Hundred ' + translate(n % 100)\r\n        }\r\n        else if (n < 1000000) {\r\n          word = translate(n / 1000).trim() + ' Thousand ' + translate(n % 1000)\r\n        }\r\n        else if (n < 1000000000) {\r\n          word = translate(n / 1000000).trim() + ' Million ' + translate(n % 1000000)\r\n        }\r\n        else {\r\n          word = translate(n / 1000000000).trim() + ' Billion ' + translate(n % 1000000000)\r\n        }\r\n        return word\r\n      }\r\n      var result = translate(n)\r\n      return result.trim()\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"numberToWord\");\r\n      return \"\";\r\n    }\r\n  }\r\n\r\n  getExtempMPPName() {\r\n    try {\r\n      if (!this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation) != null) {\r\n        if (!this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation.amt) && this.commonServices.selectedFormulation.amt.length != 0 && !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation.amt[0]?.mpps) && this.commonServices.selectedFormulation.amt[0].mpps.length > 0 && !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation.amt[0].mpps[0]?.mppName)) {\r\n          return this.commonServices.selectedFormulation.amt[0].mpps[0].mppName;\r\n        } else {\r\n          return !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation?.productName) ? this.commonServices.selectedFormulation.productName.trim() : \"\";\r\n        }\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"getExtempMPPName\");\r\n      return \"\";\r\n    }\r\n  }\r\n\r\n  htmlToTextConvert(value: any) {\r\n    try {\r\n      const tmp = document.createElement('DIV');\r\n      tmp.innerHTML = value;\r\n      return tmp.textContent || tmp.innerText || '';\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"htmlToTextConvert\");\r\n      return \"\";\r\n    }\r\n  }\r\n\r\n  authorityNoChange(value: any) {\r\n    try {\r\n      this.changedetect.detectChanges();\r\n      this.commonServices.StateAuthorityNumber = value.replace(/[^a-zA-Z 0-9]/g, \"\").replace(/\\s+/g, \"\");\r\n      this.changedetect.detectChanges();\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"authorityNoChange\");\r\n    }\r\n  }\r\n\r\n  alphaRestriction(event: any) {\r\n    try {\r\n      var keyvalue = event.charCode;\r\n      return ((keyvalue > 64 && keyvalue < 91) || (keyvalue > 96 && keyvalue < 123) || (keyvalue >= 48 && keyvalue <= 57) || keyvalue == 32);\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"alphaRestriction\");\r\n      return false;\r\n    }\r\n  }\r\n  addToFavourites() {\r\n    const isInFavourites = this.isCurrentMedicineInFavourites();\r\n    const isAdding = !isInFavourites;\r\n    var physicianDetails = this.commonServices.physicianDetails;\r\n    var body = {\r\n      userIdString: physicianDetails.userId,\r\n      productId: this.commonServices.selectedFormulation.productId,\r\n      productName: !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation.productName)?this.commonServices.selectedFormulation.productName:\"\",\r\n      quantity: this.commonServices.quantityVal,\r\n      repeats: this.commonServices.repeatsVal,\r\n      restriction: !this.commonServices.isMedicineRestrict?(this.commonServices.selectedFormulation.Restrictions != null && this.commonServices.selectedFormulation.Restrictions != \"\"\r\n                  ? this.commonServices.selectedFormulation.pbsType + \" (\" + this.getRestrictions(this.commonServices.selectedFormulation.Restrictions) + \") \"\r\n                  : this.commonServices.selectedFormulation.pbsType):\"\",\r\n      genericName: !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation.genericName)?this.commonServices.selectedFormulation.genericName:\"\",\r\n      pbsCode: !this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation?.pbsCode)?this.commonServices.selectedFormulation?.pbsCode:\"\",\r\n      active: isAdding,\r\n      restrictedMedicine: this.commonServices.isMedicineRestrict,\r\n      dose: this.commonServices.doseSearchValue,\r\n      frequency: this.commonServices.freqSearchValue,\r\n      food:this.commonServices.foodSearchValue,\r\n      instruction:this.commonServices.InstructionSearchValue,\r\n      route:this.commonServices.routeSearchValue,\r\n      ...(!isAdding && { encryptedId: this.commonServices.favouriteEncryptedId }),\r\n      productPackId: this.commonServices.selectedFormulation?.productPackId ? this.commonServices.selectedFormulation.productPackId : '',\r\n    }\r\n        this.apiService.Post(body, config.PHYSICIAN.ADD_FAVOURITE_MEDICINE).subscribe((res) => {\r\n          try {\r\n            if (this.commonServices.IsNullOrEmpty(res)) {\r\n              this.changedetect.detectChanges();\r\n              this.commonServices.setlogvalue(false, \"\", \"\", \"RxComponent\", \"AddFavourites\", body);\r\n              this.commonServices.toastopen(errorconfig.error_64.message, 'error', errorconfig.error_64.code);\r\n              this.commonServices.errorResponse(errorconfig.error_64.code, errorconfig.error_64.message);\r\n              return;\r\n            }\r\n            if (res.response_code == 0) {\r\n              this.commonServices.favouriteMedicineList = res.favourtiesList || [];\r\n              this.commonServices.originalFavouriteMedicineList = res.favourtiesList || [];\r\n              if (!isAdding) {\r\n                this.commonServices.favouriteEncryptedId = \"\";\r\n                this.commonServices.clearMedicalPrescriptionFavouriteData();\r\n                this.commonServices.selectedFormulation = null;\r\n                if (!this.commonServices.isMedicineRestrict) {\r\n                  this.commonServices.selectedMedicineList = [];\r\n                }\r\n                this.showFavouriteMed = true;\r\n                if (!res.favourtiesList || res.favourtiesList.length === 0) {\r\n                  this.commonServices.toastopen(\r\n                    \"No more favourites remaining. You can add medicines to favourites from the search results.\",\r\n                    \"info\"\r\n                  );\r\n                }\r\n              } else {\r\n                this.commonServices.favouriteEncryptedId = res.favourtiesList && res.favourtiesList.length > 0 ? res.favourtiesList[res.favourtiesList.length - 1].encryptedId : \"\";\r\n              }\r\n              this.commonServices.toastopen(res.response_message, 'success');\r\n            } else {\r\n              this.commonServices.setlogvalue(false, res.response_message, res.response_message, \"RxComponent\", \"AddFavourites\", body);\r\n              this.commonServices.toastopen(res.response_message, 'error', res.error_code);\r\n              this.commonServices.errorResponse(res.error_code, res.response_message);\r\n            }\r\n            this.changedetect.detectChanges();\r\n          }\r\n          catch (ex: any) {\r\n            this.changedetect.detectChanges();\r\n            this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"AddFavourites\", body);\r\n          }\r\n        }, error => {\r\n          this.commonServices.setlogvalue(false, error.message, error.stack, \"RxComponent\", \"AddFavourites\", body);\r\n          this.commonServices.toastopen(errorconfig.error_64.message + error, \"error\", errorconfig.error_64.code);\r\n          this.commonServices.errorResponse(errorconfig.error_64.code, errorconfig.error_64.message + error);\r\n        });\r\n  }\r\n\r\n\r\n\r\n   getFavourtiesList() {\r\n    var payload = {};\r\n    try {\r\n      payload = this.commonServices.physicianDetails.userId;\r\n      this.apiService.Get(config.PHYSICIAN.GET_FAVOURITE_MEDICINE_LIST + \"?userIdString=\" + payload+\"&restrictedMedicine=\"+this.commonServices.isMedicineRestrict).subscribe((res: any) => {\r\n        try {\r\n          if (this.commonServices.IsNullOrEmpty(res)) {\r\n            this.commonServices.setlogvalue(false, \"\", \"\", \"RxComponent\", \"getFavourtiesList\", payload);\r\n            this.commonServices.toastopen(errorconfig.error_64.message, 'error', errorconfig.error_64.code);\r\n            this.commonServices.errorResponse(errorconfig.error_64.code, errorconfig.error_64.message);\r\n            return;\r\n          }\r\n          if (res.response_code == 0) {\r\n            this.commonServices.favouriteMedicineList = res.favouritesList;\r\n            this.commonServices.originalFavouriteMedicineList = res.favouritesList;\r\n            this.changedetect.detectChanges();\r\n          }\r\n          else {\r\n            this.commonServices.favouriteMedicineList = [];\r\n            this.commonServices.originalFavouriteMedicineList = [];\r\n            this.changedetect.detectChanges();\r\n            this.commonServices.setlogvalue(false, res.response_message, res.response_message, \"RxComponent\", \"getFavourtiesList\", payload);\r\n            this.commonServices.toastopen(res.response_message, 'error', res.error_code);\r\n            this.commonServices.errorResponse(res.error_code, res.response_message);\r\n          }\r\n        }\r\n        catch (ex: any) {\r\n          this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"getFavourtiesList\", payload);\r\n        }\r\n      }, error => {\r\n        this.commonServices.setlogvalue(false, error.message, error.stack, \"RxComponent\", \"getFavourtiesList\", payload);\r\n        this.commonServices.toastopen(errorconfig.error_65.message + error, \"error\", errorconfig.error_65.code);\r\n        this.commonServices.errorResponse(errorconfig.error_65.code, errorconfig.error_65.message + error);\r\n      })\r\n    }\r\n    catch (ex: any) {\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"getFavourtiesList\", payload);\r\n    }\r\n  }\r\n\r\n  showFavourties() {\r\n    this.commonServices.favouriteEncryptedId = \"\";\r\n    this.showFavouriteMed = !this.showFavouriteMed;\r\n    if (!this.commonServices.isMedicineRestrict) {\r\n      if (!this.commonServices.IsNullOrEmpty(this.commonServices.MIMSPrimaryapi)) {\r\n        this.commonServices.MIMSPrimaryapi.unsubscribe();\r\n      }\r\n      if (!this.commonServices.IsNullOrEmpty(this.commonServices.MIMSSecondaryapi)) {\r\n        this.commonServices.MIMSSecondaryapi.unsubscribe();\r\n      }\r\n      if (!this.showFavouriteMed) {\r\n      this.commonServices.selectedFormulation = null;\r\n      this.commonServices.selectedMedicineList = [];\r\n      this.selectedMedicineListOrginal = [];\r\n      this.commonServices.favouriteMedicineList = [];\r\n    }\r\n    else {\r\n      this.commonServices.favouriteMedicineList = this.commonServices.originalFavouriteMedicineList;\r\n    }\r\n    this.commonServices.clearMedicalPrescriptionData();\r\n    }\r\n    else{\r\n      this.commonServices.clearMedicalPrescriptionFavouriteData();\r\n    }\r\n    this.commonServices.selectedFormulation = null;\r\n    this.searchMedicineLoader = false;\r\n    this.PrimarySearchSpinner = false;\r\n    this.searchMedicinesLength = 0;\r\n    this.commonServices.searchApiStopFlag = true;\r\n    this.onclickMedicineLoader = false;\r\n    this.SecondarySearchSpinner = false;\r\n    \r\n    this.searchedMedicineList = [];\r\n    this.commonServices.mediSearchValue = \"\";\r\n    this.mediSearchValue = \"\";\r\n    this.tempMediSearchValue = \"\";\r\n    this.changedetect.detectChanges();\r\n  }\r\n\r\n  //FavouriteMedicine Loading\r\n  favouriteMedicineLoading(rxList: any) {\r\n    var payload = {};\r\n    try {\r\n      if(!this.commonServices.isMedicineRestrict){\r\n      rxList.pbsCode = rxList.pbsCode != null ? rxList.pbsCode : \"\";\r\n      payload = {\r\n        request_type: \"parameter\",\r\n        productId: rxList.productId,\r\n        pbsCode: rxList.pbsCode,\r\n        rxId: 0,\r\n        productPackId: rxList.productPackId ? rxList.productPackId : '',\r\n      };\r\n      this.favMedicineLoader = true;\r\n      this.commonServices.favouriteEncryptedId = rxList.encryptedId;\r\n      this.changedetect.detectChanges();\r\n      this.apiService.Get(config.PHYSICIAN.GET_MED_DET_BY_ID + \"?productId=\" + rxList.productId + \"&pbsCode=\" +  rxList.pbsCode  + \"&rxId=\" + 0 + \"&productPackId=\" + (rxList.productPackId ? rxList.productPackId : '')).subscribe((res: any) => {\r\n        try {\r\n          if (this.commonServices.IsNullOrEmpty(res)) {\r\n            this.favMedicineLoader = false;\r\n            this.changedetect.detectChanges();\r\n            this.commonServices.setlogvalue(false, \"\", \"\", \"RxComponent\", \"setEditValues\", this.responseData.payload);\r\n            this.commonServices.toastopen(errorconfig.error_64.message, 'error', errorconfig.error_64.code);\r\n            this.commonServices.errorResponse(errorconfig.error_64.code, errorconfig.error_64.message);\r\n            return;\r\n          }\r\n          if (res.response_code == 0) {\r\n            this.favMedicineLoader = false;\r\n            var Med = [];\r\n            Med.push(res.response);\r\n            this.commonServices.selectedMedicineList = Med;\r\n            this.selectedMedicineListOrginal = Med;\r\n            this.commonServices.selectedFormulation = Med;\r\n            this.commonServices.clearMedicalPrescriptionDataOnchangeofMedicine(Med);\r\n            this.selectFormulation(res.response, 0);\r\n            this.assignCombinations(rxList);\r\n            this.commonServices.isFetching = false;\r\n            this.commonServices.mediSearchValue = \"\";\r\n            this.mediSearchValue = \"\";\r\n            this.tempMediSearchValue = \"\";\r\n            this.searchedMedicineList = [];\r\n            this.page = 1;\r\n            this.rxOnlyPBS = false;\r\n            this.changedetect.detectChanges();\r\n          }\r\n          else {\r\n            this.favMedicineLoader = false;\r\n            this.changedetect.detectChanges();\r\n            this.commonServices.setlogvalue(false, res.response_message, res.response_message, \"RxComponent\", \"setEditValues\", payload);\r\n            this.commonServices.toastopen(res.response_message, 'error', res.error_code);\r\n            this.commonServices.errorResponse(res.error_code, res.response_message);\r\n          }\r\n        }\r\n        catch (ex: any) {\r\n          this.favMedicineLoader = false;\r\n          this.changedetect.detectChanges();\r\n          this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"setEditValues\", payload);\r\n        }\r\n      }, error => {\r\n        this.favMedicineLoader = false;\r\n        this.changedetect.detectChanges();\r\n        this.commonServices.setlogvalue(false, error.message, error.stack, \"RxComponent\", \"setEditValues\", payload);\r\n        this.commonServices.toastopen(errorconfig.error_65.message + error, \"error\", errorconfig.error_65.code);\r\n        this.commonServices.errorResponse(errorconfig.error_65.code, errorconfig.error_65.message + error);\r\n      })\r\n    }\r\n      else {\r\n        this.favMedicineLoader = false;\r\n        var selecteddata = null;\r\n        this.commonServices.favouriteEncryptedId = rxList.encryptedId;\r\n        if (!this.commonServices.IsNullOrEmpty(rxList?.productId)) {\r\n          selecteddata = this.commonServices.selectedMedicineList.filter((x: { productId: any; }) => x.productId == Number(rxList.productId));\r\n          // selecteddata = this.commonServices.selectedMedicineList.splice(index, 1);\r\n        }\r\n          this.commonServices.selectedFormulation = selecteddata[0];\r\n          this.commonServices.clearMedicalPrescriptionDataOnchangeofMedicine(selecteddata[0]);\r\n          this.assignCombinations(rxList);\r\n          this.changedetect.detectChanges();\r\n          this.commonServices.isFetching = false;\r\n          this.isRtpmNext = true;\r\n          this.commonServices.authorityFormNo = this.getAddAuthValue(this.tempAuthorityFormNo);\r\n          this.commonServices.rxEndDateCalculater();\r\n          this.enablePrescribeAs(selecteddata[0]);\r\n          this.commonServices.selectedBrandFormulation = null;\r\n          this.changedetect.detectChanges();\r\n        }\r\n      }\r\n    catch (ex: any) {\r\n      this.favMedicineLoader = false;\r\n      this.changedetect.detectChanges();\r\n      this.commonServices.setlogvalue(false, ex.message, ex.stack, \"RxComponent\", \"setEditValues\", payload);\r\n    }\r\n  }\r\n\r\n  isCurrentMedicineInFavourites() {\r\n    if (!this.commonServices.selectedFormulation || !this.commonServices.favouriteMedicineList || this.commonServices.favouriteMedicineList.length === 0) {\r\n      return false;\r\n    }\r\n\r\n    return this.commonServices.favouriteMedicineList.some((favMed: { productId: any; pbsCode: any; productName: any; quantity:any; repeats:any; dose:any; frequency:any; food:any; instruction:any; route:any }) =>\r\n      favMed.productId.toString() === this.commonServices.selectedFormulation.productId.toString() &&\r\n      (!this.commonServices.IsNullOrEmpty(favMed.pbsCode) ? favMed.pbsCode : \"\") === (!this.commonServices.IsNullOrEmpty(this.commonServices.selectedFormulation?.pbsCode) ? this.commonServices.selectedFormulation.pbsCode : \"\") &&\r\n      favMed.productName === this.commonServices.selectedFormulation.productName && favMed.quantity === this.commonServices.quantityVal && favMed.repeats === this.commonServices.repeatsVal && \r\n      favMed.dose === this.commonServices.doseSearchValue && favMed.frequency === this.commonServices.freqSearchValue && favMed.food === this.commonServices.foodSearchValue && \r\n      favMed.instruction === this.commonServices.InstructionSearchValue && favMed.route === this.commonServices.routeSearchValue\r\n    );\r\n  }\r\n\r\n  isPbsTypeMatch(itemPbsType: any, pbsTypeFilter: any): boolean {\r\n\r\n    if (!pbsTypeFilter?.trim()) return true;\r\n\r\n    const allowedTypes = pbsTypeFilter\r\n      .split(/[,;]+/)\r\n      .map((x: any) => x.trim().toLowerCase())\r\n      .filter(Boolean);\r\n\r\n    const isPrivateFilter = allowedTypes.includes('private');\r\n\r\n    if (!itemPbsType?.trim()) {\r\n      return isPrivateFilter;\r\n    }\r\n\r\n    const itemTypes = itemPbsType\r\n      .split(/[,;]+/)\r\n      .map((x: any) => x.trim().toLowerCase())\r\n      .filter(Boolean);\r\n\r\n    return itemTypes.some((type: any) => allowedTypes.includes(type));\r\n  }\r\n\r\n  assignCombinations(med: any) { \r\n    this.commonServices.quantityVal = med.quantity;\r\n    this.commonServices.repeatsVal = med.repeats;\r\n    this.commonServices.doseSearchValue = med.dose;\r\n    this.commonServices.freqSearchValue = med.frequency;\r\n    this.commonServices.foodSearchValue = med.food;\r\n    this.commonServices.InstructionSearchValue = med.instruction;\r\n    this.commonServices.routeSearchValue = med.route;\r\n  }\r\n\r\n}\r\n\r\n","<ng-template #rxwidgets> </ng-template>\r\n<div class=\"new_rx_popup_mims\">\r\n  <div\r\n    class=\"ReactModal__Overlay ReactModal__Overlay--after-open React__Overlay_Open_Popup new_rx_mims_Overlay_Open_Popup\">\r\n    <div class=\"ReactModal__Content ReactModal__Content--after-open React__Content new_rx_mims_React__Content\">\r\n      <div class=\"popup new_rx_mims_ReactModal_popup\">\r\n        <div>\r\n          <app-splashscreen *ngIf=\"PopupScreenLoader\" [height]=\"'height-rx-spin'\"> </app-splashscreen>\r\n          <div class=\"page-content\" *ngIf=\"!PopupScreenLoader\">\r\n            <div class=\"new_rx_popup_header_box\">\r\n              <div class=\"mdl-grid\" style=\"width: 100%; padding: 0px\">\r\n                <div\r\n                  class=\"mdl-cell mdl-cell--2-col-tablet mdl-cell--3-col-phone new_rx_mobile_fullwidth rx_ipad_header_box_1\"\r\n                  [class]=\"commonServices.rxid != null && commonServices.rxid !=''?'mdl-cell--2-col':'mdl-cell--3-col'\"\r\n                  style=\"align-self: center\">\r\n                  <h3 class=\"new_rx_popup_header_box_text\">\r\n                    <img src=\"https://passets.hola.health/rx-widgets/rx-hola-health-logo-1.png\" alt=\"hola_health\"\r\n                      style=\"width: auto;height: 37px;border-radius: 5px;\">\r\n                    <img src=\"https://passets.hola.health/rx-widgets/rx-header-logo.png\" alt=\"\" />\r\n                    {{commonServices.editPrescription === true ? 'Edit Script' : 'New Script'}}\r\n                  </h3>\r\n                </div>\r\n                <div\r\n                  class=\"mdl-cell mdl-cell--4-col mdl-cell--4-col-tablet mdl-cell--4-col-phone new_rx_desktop_title new_rx_mobile_fullwidth\"\r\n                  style=\"align-self: center;\">\r\n                  <p class=\"new_rx_popup_header_box_text\" style=\"justify-content: center;\">\r\n                    <span style=\"font-weight: 600;\">{{\r\n                      commonServices.patientDetails.firstName +\r\n                      \" \" +\r\n                      commonServices.patientDetails.lastName\r\n                      }}</span>/<span style=\"width: 100px;\">{{\r\n                      this.datePipe.transform(\r\n                      commonServices.patientDetails.dob,\r\n                      \"dd-MM-yyyy\"\r\n                      )\r\n                      }}</span>\r\n                  </p>\r\n                </div>\r\n                <div\r\n                  class=\"mdl-cell  mdl-cell--5-col-tablet mdl-cell--4-col-phone new_rx_popup_header_box_col new_rx_mobile_fullwidth rx_ipad_header_box_2 new_mobile_rx_top_bottom_0\"\r\n                  style=\"position: relative\"\r\n                  [class]=\"commonServices.rxid != null && commonServices.rxid !=''?'mdl-cell--6-col':'mdl-cell--5-col'\">\r\n                  <div class=\"new_rx_popup_btns\">\r\n                    <button (click)=\"close(null)\"\r\n                      class=\"mdl-button mdl-js-button mdl-button--raised mdl-button--colored backButton new_mobile_rx_btn\"\r\n                      [disabled]=\"commonServices.prescribeMedLoader || selectionbtnLoader\">\r\n                      Close\r\n                    </button>\r\n                    <div style=\"display: inline-block;position: relative\"\r\n                      *ngIf=\"commonServices.rxid != null && commonServices.rxid !=''\">\r\n                      <button\r\n                        class=\"mdl-button mdl-js-button mdl-button--raised mdl-button--colored nextButton select-action-btn new_mobile_rx_btn\"\r\n                        style=\"position: relative;width: 140px;display: flex;flex-direction: row;align-items: center;justify-content: center;padding: 10px !important\"\r\n                        [disabled]=\"commonServices.prescribeMedLoader || selectionbtnLoader\"\r\n                        (click)=\"selectActionDropdownopen()\">\r\n                        <ng-container *ngIf=\"selectionbtnLoader\">\r\n                          <p class=\"rx_loader_button m-v4\"\r\n                            style=\"width: 20px;height: 20px;margin: 0px !important;margin-right: 0px !important;margin-left: 0px !important;\">\r\n                          </p>\r\n                        </ng-container>\r\n                        <ng-container *ngIf=\"!selectionbtnLoader\">\r\n                          Select Action <i class=\"material-icons drp-icon\">expand_more</i>\r\n                        </ng-container>\r\n                      </button>\r\n                      <div #selectActionDropdown class=\"new_rx_Prescribe_btn_dropdown_list_box select-action-ul\"\r\n                        *ngIf=\"selectActionBtnDropdown == true\"\r\n                        [class]=\"{ M_list_box_show: selectActionBtnDropdown === true }\">\r\n                        <ul class=\"new_rx_Prescribe_btn_dropdown_list_ul\">\r\n                          <li\r\n                            (click)=\"commonServices.rxDetails.status.toLowerCase() == 'draft'?cancelDraft():cancelPrescribeMed()\"\r\n                            [class]=\"checkStatusAndScripttype(this.commonServices.rxDetails.scriptType,this.commonServices.rxDetails.status,4)?'':'edit-disable-data'\">\r\n                            Cancel</li>\r\n                          <li (click)=\"printPrescribeMed()\"\r\n                            [class]=\"checkStatusAndScripttype(this.commonServices.rxDetails.scriptType,this.commonServices.rxDetails.status,1)?'':'edit-disable-data'\">\r\n                            Print</li>\r\n                          <li (click)=\"reissuePrescribeMed()\"\r\n                            [class]=\"checkStatusAndScripttype(this.commonServices.rxDetails.scriptType,this.commonServices.rxDetails.status,3)?'':'edit-disable-data'\">\r\n                            Re-Issue</li>\r\n                          <li (click)=\"ceasePrescribeMed()\"\r\n                            [class]=\"checkStatusAndScripttype(this.commonServices.rxDetails.scriptType,this.commonServices.rxDetails.status,2)?'':'edit-disable-data'\">\r\n                            Cease</li>\r\n                          <li (click)=\"resendPrescribeMed()\"\r\n                            [class]=\"commonServices.enableSendPaperScriptInMail && checkStatusAndScripttype(this.commonServices.rxDetails.scriptType,this.commonServices.rxDetails.status,5) ?'':'edit-disable-data'\">\r\n                            Resend</li>\r\n                        </ul>\r\n                      </div>\r\n                    </div>\r\n                    <button *ngIf=\"page != 1\"\r\n                      class=\"mdl-button mdl-js-button mdl-button--raised mdl-button--colored backButton new_mobile_rx_btn\"\r\n                      (click)=\"back()\" [disabled]=\"this.commonServices.prescribeMedLoader || selectionbtnLoader\">\r\n                      Back\r\n                    </button>\r\n                    <button *ngIf=\"page == 1\" (click)=\"pageNumberOneToNext()\"\r\n                      class=\"mdl-button mdl-js-button mdl-button--raised mdl-button--colored nextButton new_mobile_rx_btn\"\r\n                      [disabled]=\"commonServices.prescribeMedLoader || selectionbtnLoader\">\r\n                      Next\r\n                    </button>\r\n                    <button class=\"mdl-button mdl-js-button mdl-button--raised mdl-button--colored new_mobile_rx_btn\"\r\n                      [class]=\"abortdisable?'nextButton':'abortbutton'\" *ngIf=\"abortBtnFlag\" [disabled]=\"abortdisable\"\r\n                      (click)=\"prescripeAbort()\"><span *ngIf=\"abortdisable\" class=\"rx_loader\">\r\n                        <p class=\"rx_loader_button m-v4 rx_btn_spin\">\r\n                        </p>\r\n                      </span><span *ngIf=\"!abortdisable\">Abort</span></button>\r\n                    <div style=\"display: inline-block\" *ngIf=\"page == 2\">\r\n                      <button\r\n                        class=\"mdl-button mdl-js-button mdl-button--raised mdl-button--colored nextButton new_mobile_rx_btn\"\r\n                        style=\"position: relative;width: 135px;display: flex;flex-direction: row;align-items: center;justify-content: center\"\r\n                        [disabled]=\"commonServices.prescribeMedLoader || selectionbtnLoader\"\r\n                        (click)=\"includeRtpmModal()\">\r\n                        <ng-container *ngIf=\"commonServices.prescribeMedLoader \">\r\n                          <p class=\"rx_loader_button m-v4\"\r\n                            style=\"width: 20px;height: 20px;margin: 0px !important;margin-right: 0px !important;margin-left: 0px !important;\">\r\n                          </p>\r\n                        </ng-container>\r\n                        <ng-container *ngIf=\"!this.commonServices.prescribeMedLoader\">\r\n                          Prescribe <i class=\"material-icons drp-icon\">expand_more</i>\r\n                        </ng-container>\r\n                      </button>\r\n                      <div #PrescribeDropdown class=\"new_rx_Prescribe_btn_dropdown_list_box\"\r\n                        *ngIf=\"selectPBTNDropdown == true\" [class]=\"{ M_list_box_show: selectPBTNDropdown === true }\">\r\n                        <ul class=\"new_rx_Prescribe_btn_dropdown_list_ul\">\r\n                          <li *ngIf=\"commonServices.enableEScript\" [class]=\"{'edit-disable-data': ePrescriptionValidation(1)}\"\r\n                            (click)=\"MprescribeMed(1)\">E-Prescribe (Draft)</li>\r\n                          <li [class]=\"{'edit-disable-data': ePrescriptionValidation(2)}\" (click)=\"EprescripeSend(1)\" *ngIf=\"!this.commonServices.sendToPharmacy && !this.commonServices.emergencySupply && commonServices.enableSendEScriptInMail\">E-Prescribe and Send</li>\r\n                          <li *ngIf=\"commonServices.enableEScript\" [class]=\"{'edit-disable-data': ePrescriptionValidation(2)}\" (click)=\"EprescripeSend(2)\">E-Prescribe and Print</li>\r\n                          <li *ngIf=\"commonServices.enablePaperScript\" [class]=\"{'edit-disable-data': (commonServices.editPrescription === true && commonServices.rxDetails.scriptType.toUpperCase()== 'M'&& this.commonServices.rxDetails.status.toLowerCase() != 'draft')|| (commonServices.editPrescription === true && commonServices.rxDetails.scriptType.toUpperCase()== 'E')}\"\r\n                            (click)=\"MprescribeMed(2)\">Prescribe (Draft)</li>\r\n                          <li *ngIf=\"commonServices.enableSendPaperScriptInMail\" [class]=\"{'edit-disable-data': (commonServices.editPrescription === true && commonServices.rxDetails.scriptType.toUpperCase()== 'M'&& this.commonServices.rxDetails.status.toLowerCase() != 'draft')|| (commonServices.editPrescription === true && commonServices.rxDetails.scriptType.toUpperCase()== 'E')}\"\r\n                            (click)=\"PaperprescripeSend(1)\"> Prescribe and Send</li>\r\n                          <li *ngIf=\"commonServices.enablePaperScript\" [class]=\"{'edit-disable-data': (commonServices.editPrescription === true && commonServices.rxDetails.scriptType.toUpperCase() == 'M'&& this.commonServices.rxDetails.status.toLowerCase() != 'draft') || (commonServices.editPrescription === true && commonServices.rxDetails.scriptType.toUpperCase()== 'E')}\"\r\n                            (click)=\"prescripePrint()\">\r\n                            Prescribe and Print</li>\r\n                        </ul>\r\n                      </div>\r\n                    </div>\r\n                  </div>\r\n                </div>\r\n                <div\r\n                  class=\"mdl-cell mdl-cell--3-col mdl-cell--8-col-tablet mdl-cell--4-col-phone new_rx_mobile_fullwidth rx_ipad_header_box_3 new_rx_mobile_title\"\r\n                  style=\"align-self: center\">\r\n                  <p class=\"new_rx_popup_header_box_text new_mobile_rx_popup_header_text\">\r\n                    <span style=\"font-weight: 600\">{{\r\n                      commonServices.patientDetails.firstName +\r\n                      \" \" +\r\n                      commonServices.patientDetails.lastName\r\n                      }}</span>/<span>{{\r\n                      this.datePipe.transform(\r\n                      commonServices.patientDetails.dob,\r\n                      \"dd-MM-yyyy\"\r\n                      )\r\n                      }}</span>\r\n                  </p>\r\n                </div>\r\n              </div>\r\n            </div>\r\n            <div *ngIf=\"page == 1\" class=\"new_rx_popup_tab_1\">\r\n              <div class=\"mdl-grid\" style=\"width: 100%; padding: 0px\" *ngIf=\"!commonServices.isMedicineRestrict\">\r\n                <div\r\n                  class=\"mdl-cell mdl-cell--5-col mdl-cell--4-col-tablet mdl-cell--4-col-phone new_rx_mobile_fullwidth\">\r\n                  <div #MedicineDropdown style=\"position: relative\">\r\n                    <div style=\"position: relative\">\r\n                      <input autocomplete=\"off\" type=\"text\" name=\"medicine search\" placeholder=\"Search Medicines\"\r\n                        [class]=\"{'edit-disable-data': commonServices.editPrescribedPrescription === true}\"\r\n                        [disabled]=\"commonServices.editPrescribedPrescription\" class=\"new_rx_popup_tab_1_input\"\r\n                        value=\"{{ mediSearchValue }}\" (input)=\"searchHandler($event)\"\r\n                        (click)=\"MedicineDropdownList()\" />\r\n                      <i class=\"material-icons md-24 new_rx_popup_tab_1_input_search\">search</i>\r\n                      <!-- <mat-icon class=\"new_rx_popup_tab_1_input_search\"></mat-icon> -->\r\n                    </div>\r\n                    <div class=\"new_rx_popup_tab_1_list_box\" [class]=\"{\r\n                  M_list_box_show: selectedMedicineDropdown === true\r\n                }\">\r\n                      <div *ngIf=\"searchMedicineLoader\" class=\"loader\"></div>\r\n                      <div *ngIf=\"!searchMedicineLoader\" style=\"margin-bottom: 10px;\">\r\n                        <ul class=\"new_rx_popup_tab_1_list\">\r\n                          <li *ngFor=\"let medicineList of searchedMedicineList\" [class]=\"getcurrentid(medicineList)\"\r\n                            (click)=\"\r\n                        getProductListByName(\r\n                          medicineList['prodHiddenValue'],\r\n                          medicineList['prodDisplayValue'],\r\n                          medicineList['searchBase']\r\n                        )\r\n                      \" [innerHTML]=\"medicineList['prodDisplayValue']\"></li>\r\n                          <li *ngIf=\"searchedMedicineList.length == 0\">No Data</li>\r\n                        </ul>\r\n                      </div>\r\n                      <div *ngIf=\"PrimarySearchSpinner\" class=\"loader ml-load-45\"></div>\r\n                    </div>\r\n                  </div>\r\n                </div>\r\n                <div\r\n                  class=\"mdl-cell mdl-cell--2-col mdl-cell--2-col-tablet mdl-cell--4-col-phone new_rx_mobile_fullwidth new_mobile_rx_top_bottom_0\"\r\n                  [class]=\"{'disabledRxContent':this.isNonPbsFlag||(commonServices.rxDetails!=null && commonServices.rxDetails!='' && commonServices.rxDetails.status!=null && commonServices.rxDetails.status!='' && commonServices.rxDetails.status.toLowerCase()!='draft')}\">\r\n                  <div class=\"rx_new_popup_checkbox new_mobile_rx_top_bottom_0\">\r\n                    <label class=\"mdl-checkbox mdl-js-checkbox mdl-js-ripple-effect\">\r\n                      <input autocomplete=\"off\" type=\"checkbox\" id=\"checkbox1\"\r\n                        [disabled]=\"commonServices.editPrescribedPrescription === true\"\r\n                        class=\"mdl-checkbox__input rx_new_group_checkbox\" [(ngModel)]=\"rxOnlyPBS\"\r\n                        (change)=\"onCheckboxChange(1)\" value=\"PBS/RPBS\" [disabled]=\"this.isNonPbsFlag\" /><span\r\n                        class=\"mdl-checkbox__label\" style=\"font-weight: 400; font-size: 16px\">PBS/RPBS</span></label>\r\n                  </div>\r\n                  <div class=\"rx_new_popup_checkbox new_mobile_rx_top_bottom_0\">\r\n                    <label class=\"mdl-checkbox mdl-js-checkbox mdl-js-ripple-effect\">\r\n                      <input autocomplete=\"off\" type=\"checkbox\" id=\"checkbox2\"\r\n                        [disabled]=\"commonServices.editPrescribedPrescription === true\"\r\n                        class=\"mdl-checkbox__input rx_new_group_checkbox\" [(ngModel)]=\"rxPrivate\"\r\n                        (change)=\"onCheckboxChange(1)\" value=\"Private\" /><span class=\"mdl-checkbox__label\"\r\n                        style=\"font-weight: 400; font-size: 16px\">Private</span></label>\r\n                  </div>\r\n                </div>\r\n                <!-- <div\r\n                  class=\"mdl-cell mdl-cell--2-col mdl-cell--2-col-tablet mdl-cell--4-col-phone new_rx_mobile_fullwidth new_mobile_rx_top_bottom_0\"\r\n                  [class]=\"{'disabledRxContent':this.isNonPbsFlag||(commonServices.rxDetails!=null && commonServices.rxDetails!='' && commonServices.rxDetails.status!=null && commonServices.rxDetails.status!='' && commonServices.rxDetails.status.toLowerCase()!='draft')}\">\r\n                  <div class=\"rx_new_popup_checkbox new_mobile_rx_top_bottom_0\">\r\n                    <label class=\"mdl-checkbox mdl-js-checkbox mdl-js-ripple-effect\">\r\n                      <input autocomplete=\"off\" type=\"checkbox\" id=\"checkbox2\"\r\n                        [disabled]=\"commonServices.editPrescribedPrescription === true\"\r\n                        class=\"mdl-checkbox__input rx_new_group_checkbox\" [(ngModel)]=\"rxPrivate\"\r\n                        (change)=\"onCheckboxChange()\" value=\"Private\" /><span class=\"mdl-checkbox__label\"\r\n                        style=\"font-weight: 400; font-size: 16px\">Private</span></label>\r\n                  </div>\r\n                </div> -->\r\n                <div\r\n                  class=\"mdl-cell mdl-cell--5-col mdl-cell--4-col-tablet mdl-cell--6-col-phone new_rx_mobile_fullwidth new_mobile_rx_top_bottom_0\">\r\n                  <div style=\"text-align: right\">\r\n                    <img src=\"https://passets.hola.health/rx-widgets/rx-mims.png\" alt=\"MIMS logo\"\r\n                      style=\"width: 80px; height: auto\" />\r\n                  </div>\r\n                </div>\r\n              </div>\r\n              <div class=\"mdl-cell mdl-cell--12-col\" style=\"margin-left: 8px;\" *ngIf=\"!commonServices.editPrescribedPrescription\">\r\n                <span class=\"favourites-toggle-link\" (click)=\"$event.stopPropagation(); showFavourties()\">\r\n                  {{ showFavouriteMed ? 'Hide favourites' : 'Show favourites' }}\r\n                </span>\r\n              </div>\r\n              <div class=\"mdl-grid\" style=\"width: 100%; padding: 0px\">\r\n                <div\r\n                  class=\"mdl-cell mdl-cell--7-col mdl-cell--4-col-tablet mdl-cell--4-col-phone new_rx_mobile_fullwidth\">\r\n                  <div class=\"new_rx_popup_table_box\">\r\n                    <p class=\"new_rx_popup_tab_title\" style=\"padding: 5px 10px; margin: 0px\">\r\n                      Available Formulations:\r\n                    </p>\r\n                    <div *ngIf=\"!showFavouriteMed\">\r\n                      <div *ngIf=\"onclickMedicineLoader\" class=\"loader m-v4\"></div>\r\n                      <div *ngIf=\"!onclickMedicineLoader\">\r\n                        <div *ngIf=\"\r\n                    commonServices.selectedMedicineList == null ||\r\n                    commonServices.selectedMedicineList.length == 0\r\n                  \" class=\"noDataPrescribe\">\r\n                          <span>No Data</span>\r\n                        </div>\r\n                        <div class=\"new_rx_popup_box_container\" *ngFor=\"\r\n                    let med of commonServices.selectedMedicineList;\r\n                    index as i\r\n                  \">\r\n\r\n                          <div class=\"mdl-grid new_rx_popup_box\" [class]=\"getClassForMed(med)\"\r\n                            (click)=\"selectFormulation(med, i)\">\r\n                            <div class=\"mdl-cell mdl-cell--12-col mdl-cell--8-col-tablet mdl-cell--4-col-phone\">\r\n                              <p class=\"new_rx_popup_box_header\" [innerHTML]=\"med.productName\"></p>\r\n                              <p class=\"new_rx_popup_box_text\">\r\n                                <span><b>Quantity:</b>\r\n                                  {{med.pbsType!=undefined && med.pbsType!=null && med.pbsType.toLowerCase() == \"non pbs\"\r\n                                  ? med.numberOfPack + \"x\" + med.unitPerPack\r\n                                  : med.maxQtyUnits\r\n                                  }}</span><span><b>Rpts:</b> {{ med.repeats }}</span><span\r\n                                  *ngIf=\"!commonServices.isMedicineRestrict\"><b>Restriction:</b>\r\n                                  {{med.Restrictions!=undefined &&\r\n                                  med.Restrictions != null && med.Restrictions != \"\"\r\n                                  ? med.pbsType +\r\n                                  \" (\" +\r\n                                  getRestrictions(med.Restrictions) +\r\n                                  \") \"\r\n                                  : (med.pbsType!=undefined&&med.pbsType!=null?med.pbsType:\"\")\r\n                                  }} </span><span><b>Generic Name: </b>\r\n                                  <span [innerHTML]=\"med.genericName\"></span></span>\r\n                              </p>\r\n                            </div>\r\n                          </div>\r\n                        </div>\r\n                        <div *ngIf=\"SecondarySearchSpinner\" class=\"loader ml-load-45\"></div>\r\n                      </div>\r\n                    </div>\r\n                    <div *ngIf=\"showFavouriteMed\">\r\n\r\n                      <div *ngIf=\"onclickMedicineLoader\" class=\"loader m-v4\"></div>\r\n                      <div *ngIf=\"!onclickMedicineLoader\">\r\n                        <div *ngIf=\"\r\n                    commonServices.favouriteMedicineList == null ||\r\n                    commonServices.favouriteMedicineList.length == 0\r\n                  \" class=\"noDataPrescribe\">\r\n                          <span>No Favourites</span>\r\n                        </div>\r\n                        <div class=\"new_rx_popup_box_container\" *ngFor=\"\r\n                    let med of commonServices.favouriteMedicineList;\r\n                    index as i\r\n                  \">\r\n\r\n                          <div class=\"mdl-grid new_rx_popup_box\" [class]=\"getClassForFavouriteMed(med)\"\r\n                            (click)=\"favouriteMedicineLoading(med)\">\r\n                            <div class=\"mdl-cell mdl-cell--12-col mdl-cell--8-col-tablet mdl-cell--4-col-phone\">\r\n                              <p class=\"new_rx_popup_box_header\" [innerHTML]=\"med.productName\"></p>\r\n                              <p class=\"new_rx_popup_box_text\">\r\n                                <span><b>Quantity:</b>\r\n                                  {{med.quantity}}\r\n                                </span><span><b>Rpts:</b> {{ med.repeats }}</span>\r\n                                <span *ngIf=\"!commonServices.isMedicineRestrict\"><b>Restriction:</b>\r\n                                  {{med.restriction}}\r\n                                </span><span><b>Generic Name: </b>\r\n                                  <span [innerHTML]=\"med.genericName\"></span></span>\r\n                              </p>\r\n                            </div>\r\n                          </div>\r\n                        </div>\r\n                        <div *ngIf=\"SecondarySearchSpinner\" class=\"loader ml-load-45\"></div>\r\n                      </div>\r\n                    </div>\r\n                  </div>\r\n                </div>\r\n                <div *ngIf=\"favMedicineLoader\" class=\"loader\"></div>\r\n                <div *ngIf=\"!favMedicineLoader\"\r\n                  class=\"mdl-cell mdl-cell--5-col mdl-cell--4-col-tablet mdl-cell--4-col-phone new_rx_mobile_fullwidth\">\r\n                  <div class=\"mdl-grid new_rx_popup_tab_1_grid new_rx_popup_tab_1_box\"\r\n                    *ngIf=\"commonServices.selectedFormulation != null\">\r\n                    <div class=\"mdl-cell mdl-cell--6-col mdl-cell--8-col-tablet mdl-cell--4-col-phone\">\r\n                      <p class=\"new_rx_popup_tab_title\" style=\"margin-bottom: 5px\"\r\n                        [innerHTML]=\"commonServices.selectedFormulation != null&&commonServices.selectedFormulation.productName!=undefined && commonServices.selectedFormulation.productName!=null? commonServices.selectedFormulation.productName: ''\">\r\n                      </p>\r\n                    </div>\r\n                    <div class=\"mdl-cell mdl-cell--6-col\">\r\n                      <p class=\"new_rx_popup_label\">\r\n                        Generic Name:<span\r\n                          [innerHTML]=\"commonServices.selectedFormulation != null&&commonServices.selectedFormulation.genericName!=undefined && commonServices.selectedFormulation.genericName!=null? commonServices.selectedFormulation.genericName : ''\"></span>\r\n                      </p>\r\n                    </div>\r\n                    <div class=\"mdl-cell mdl-cell--12-col\">\r\n                      <p class=\"new_rx_popup_label\" *ngIf=\"commonServices.isBrandName\">\r\n                        Brand Name:<span [innerHTML]=\"\r\n                      getBrandName(commonServices.selectedFormulation)\r\n                    \">\r\n                        </span>\r\n                      </p>\r\n                      <p class=\"new_rx_popup_label\">\r\n                        Schedule:<span>{{\r\n                          commonServices.selectedFormulation != null &&\r\n                          commonServices.selectedFormulation.poisonClassification !=\r\n                          undefined && commonServices.selectedFormulation.poisonClassification!=null &&\r\n                          commonServices.selectedFormulation.poisonClassification\r\n                          .poisonClasses!=undefined && commonServices.selectedFormulation.poisonClassification\r\n                          .poisonClasses!=null && commonServices.selectedFormulation.poisonClassification\r\n                          .poisonClasses.length>0\r\n                          ? commonServices.selectedFormulation.poisonClassification\r\n                          .poisonClasses[0]\r\n                          : \"No Scheduled Information Available\"\r\n                          }}</span>\r\n                      </p>\r\n                      <p class=\"new_rx_popup_label\">\r\n                        PBS Listing:<span>{{commonServices.selectedFormulation.pbsType!=undefined &&\r\n                          commonServices.selectedFormulation.pbsType!=null? commonServices.selectedFormulation.pbsType :\r\n                          '' }}\r\n                          {{\r\n                          commonServices.selectedFormulation.pbsCode!=undefined &&\r\n                          commonServices.selectedFormulation.pbsCode!=null\r\n                          ? \" (\" +\r\n                          commonServices.selectedFormulation.pbsCode +\r\n                          \")\"\r\n                          : \"\"\r\n                          }}</span>\r\n                      </p>\r\n                      <p class=\"new_rx_popup_label\">\r\n                        <span style=\"margin:0px ;\">\r\n                          Max Quantity =\r\n                          {{getMaxQuantity()}}\r\n                          and Repeats =\r\n                          {{commonServices.selectedFormulation!=null? commonServices.selectedFormulation.repeats\r\n                          :\"\"}}</span>\r\n                      </p>\r\n\r\n                      <p class=\"new_rx_popup_label\" *ngIf=\"\r\n                    commonServices.selectedFormulation != null && commonServices.selectedFormulation.pregnancyCategory!=undefined && \r\n                    commonServices.selectedFormulation.pregnancyCategory != null && commonServices.selectedFormulation.pregnancyCategory\r\n                    .categoryCode!=undefined && commonServices.selectedFormulation.pregnancyCategory\r\n                    .categoryCode!=null\r\n                  \">\r\n                        Pregnancy Category:<span>{{\r\n                          commonServices.selectedFormulation.pregnancyCategory\r\n                          .categoryCode\r\n                          }}\r\n                        </span>\r\n                        <span *ngIf=\"commonServices.selectedFormulation.pregnancyCategory\r\n                        .additionalNote !=undefined && \r\n                      commonServices.selectedFormulation.pregnancyCategory\r\n                        .additionalNote != null &&\r\n                      commonServices.selectedFormulation.pregnancyCategory\r\n                        .additionalNote != ''\r\n                    \">\r\n                          AdditionalNote:\r\n                          <span *ngFor=\"\r\n                        let item of commonServices.selectedFormulation\r\n                          .pregnancyCategory.additionalNote\r\n                      \" [innerHTML]=\"item\">\r\n                          </span>\r\n                        </span>\r\n                      </p>\r\n                    </div>\r\n                    <div class=\"mdl-cell mdl-cell--12-col\" *ngIf=\"\r\n                  this.isShowRestrictions == true && commonServices.selectedFormulation.Restrictions!=undefined && \r\n                  commonServices.selectedFormulation.Restrictions != null &&\r\n                  commonServices.selectedFormulation.Restrictions != ''\r\n                \">\r\n                      <p class=\"new_rx_popup_label\">Restrictions:</p>\r\n                      <ol style=\"margin: 0px; padding-left: 15px\" *ngIf=\"commonServices.selectedFormulation.Restrictions!=undefined && \r\n                    commonServices.selectedFormulation.Restrictions != null &&\r\n                    commonServices.selectedFormulation.Restrictions != ''\r\n                  \">\r\n                        <li class=\"new_rx_pop_aut_int\" *ngFor=\"\r\n                      let restriction of commonServices.selectedFormulation\r\n                        .Restrictions\r\n                    \">\r\n                          <p style=\"\r\n                        margin: 0px;\r\n                        display: flex;\r\n                        align-content: center;\r\n                        margin-bottom: 10px;\r\n                      \" *ngIf=\"\r\n                        restriction.restrictionPreview != null &&\r\n                        restriction.restrictionPreview != '' &&\r\n                        restriction.restrictionText != null &&\r\n                        restriction.restrictionText != ''\r\n                      \">\r\n                            <span class=\"rx_restrictionText\" *ngIf=\"restriction.restrictionText.length < 60\"><b>{{\r\n                                restriction.restrictionType }}</b> -\r\n                              <span [innerHTML]=\"\r\n                            this.htmlToFormattedText(\r\n                              restriction.restrictionPreview\r\n                            )\r\n                          \"></span></span>\r\n                            <span class=\"rx_restrictionText\" *ngIf=\"restriction.restrictionText.length > 60\"><b>{{\r\n                                restriction.restrictionType }}</b> -\r\n                              <span [innerHTML]=\"\r\n                            this.htmlToFormattedText(\r\n                              restriction.restrictionPreview\r\n                            ).substring(0, 60)\r\n                          \"></span>...\r\n                              <span>\r\n                                <a style=\"cursor: pointer; color: #ff9978\" id=\"show-tooltip-id\">Show\r\n                                  More</a></span></span>\r\n                            <ng-template #tooltipdemo>\r\n                              <p class=\"rx_tooltip_inner_box\" [innerHTML]=\"restriction.restrictionText\"></p>\r\n                            </ng-template>\r\n                          </p>\r\n                        </li>\r\n                      </ol>\r\n                    </div>\r\n                  </div>\r\n\r\n                  <div class=\"new_rx_popup_tab_3_small_box\" [style.display]=\"isCurrentMedicineInFavourites() ? 'inline-flex' : null\"\r\n                   [style.width]=\"isCurrentMedicineInFavourites() ? 'max-content' : null\" *ngIf=\"commonServices.selectedFormulation != null\">\r\n                    <div style=\"display: inline-block;margin-right: 10px;\" class=\"new_rx_popup_header_box_col\" *ngIf=\"!commonServices.editPrescribedPrescription\">\r\n                      <button *ngIf=\"commonServices.selectedFormulation != null\" (click)=\"addToFavourites()\"\r\n                       class=\"mdl-button mdl-js-button mdl-button--raised mdl-button--colored\"\r\n                      [class.nextButton]=\"!isCurrentMedicineInFavourites()\"\r\n                      [class.rmfavbutton]=\"isCurrentMedicineInFavourites()\">\r\n                        <span *ngIf=\"isCurrentMedicineInFavourites(); else addText\">\r\n                          Remove from favourites\r\n                        </span>\r\n                        <ng-template #addText>+ Add to favourites</ng-template>\r\n                      </button>\r\n                    </div>\r\n                    <div style=\"display: inline-block; margin-right: 10px\">\r\n                      <span class=\"new_rx_popup_label\">Quantity: </span><input autocomplete=\"off\" type=\"number\"\r\n                        [class]=\"{'edit-disable-data': commonServices.editPrescribedPrescription === true}\" name=\"qty\"\r\n                        placeholder=\"\" class=\"new_rx_popup_tab_input\" step=\"1\" [min]=\"0\"\r\n                        [(ngModel)]=\"commonServices.quantityVal\" (keypress)=\"checkMobile($event)\"\r\n                        (input)=\"quantityChange()\" (paste)=\"$event.preventDefault()\"\r\n                        [disabled]=\"commonServices.editPrescribedPrescription\" />\r\n                    </div>\r\n                    <div style=\"display: inline-block\">\r\n                      <span class=\"new_rx_popup_label\">Repeats: </span><input autocomplete=\"off\" type=\"number\"\r\n                        [class]=\"{'edit-disable-data': commonServices.editPrescribedPrescription === true || commonServices.isMedicineRestrict}\"\r\n                        name=\"rpts\" placeholder=\"\" [min]=\"0\" (input)=\"repeatsChange()\" class=\"new_rx_popup_tab_input\"\r\n                        [(ngModel)]=\"commonServices.repeatsVal\" (paste)=\"$event.preventDefault()\"\r\n                        (keypress)=\"checkMobile($event)\"\r\n                        [disabled]=\"commonServices.editPrescribedPrescription || commonServices.isMedicineRestrict\" />\r\n                    </div>\r\n                  </div>\r\n\r\n                </div>\r\n              </div>\r\n              <div class=\"mdl-grid\" style=\"width: 100%; padding: 0px\"\r\n                [class]=\"{ disabledRxContent: commonServices.isFetching}\">\r\n                <div\r\n                  class=\"mdl-cell mdl-cell--12-col mdl-cell--8-col-tablet mdl-cell--4-col-phone new_rx_mobile_fullwidth\"\r\n                  style=\"position: relative\"></div>\r\n                <div\r\n                  class=\"mdl-cell mdl-cell--3-col mdl-cell--4-col-tablet mdl-cell--4-col-phone new_rx_mobile_fullwidth\"\r\n                  style=\"position: relative\">\r\n                  <p class=\"new_rx_popup_label\">\r\n                    Dose:\r\n                    <span>\r\n                      <div class=\"rx_new_popup_checkbox\" style=\"margin-top: 0px\">\r\n                        <label class=\"mdl-checkbox mdl-js-checkbox mdl-js-ripple-effect\"><input autocomplete=\"off\"\r\n                            [disabled]=\"commonServices.editPrescribedPrescription === true\" type=\"checkbox\"\r\n                            id=\"checkbox1\" class=\"mdl-checkbox__input rx_new_group_checkbox\"\r\n                            [(ngModel)]=\"commonServices.unUsualDoseFlag\" /><span class=\"mdl-checkbox__label\"\r\n                            style=\"font-weight: 400;font-size: 16px;margin-top: -7px;\"\r\n                            [class]=\"{'disabled-style': commonServices.isFetching == true || commonServices.editPrescribedPrescription === true}\">Unusual\r\n                            Dose</span></label>\r\n                      </div>\r\n                    </span>\r\n                  </p>\r\n                  <input autocomplete=\"off\" class=\"mdl-textfield__input new_rx_popup_tab_input\" type=\"text\"\r\n                    [class]=\"{'edit-disable-data': commonServices.editPrescribedPrescription === true}\"\r\n                    [disabled]=\"commonServices.editPrescribedPrescription\" id=\"selecteddose\" placeholder=\"Select Dose\"\r\n                    [(ngModel)]=\"commonServices.doseSearchValue\" (click)=\"doseDropdown()\" />\r\n                  <div #DoseDropdown class=\"new_rx_popup_tab_dropdown_list_box\"\r\n                    [class]=\"{ M_list_box_show: selectDoseDropdown === true }\">\r\n                    <ul class=\"new_rx_popup_tab_1_list rx_dropdown\" style=\"margin-bottom: 0px\">\r\n                      <li (click)=\"selectDoseValue(null)\" class=\"p-12\"> </li>\r\n                      <li *ngFor=\"let dose of doseData\" (click)=\"selectDoseValue(dose)\" [class]=\"{\r\n                    heighlight: dose['text'] == commonServices.doseSearchValue\r\n                  }\">\r\n                        {{ dose[\"text\"] }}\r\n                      </li>\r\n                    </ul>\r\n                  </div>\r\n                </div>\r\n                <div\r\n                  class=\"mdl-cell mdl-cell--3-col mdl-cell--4-col-tablet mdl-cell--4-col-phone new_rx_mobile_fullwidth\"\r\n                  style=\"position: relative\">\r\n                  <p class=\"new_rx_popup_label\">Frequency:</p>\r\n                  <input autocomplete=\"off\" class=\"mdl-textfield__input new_rx_popup_tab_input\" type=\"text\"\r\n                    [class]=\"{'edit-disable-data': commonServices.editPrescribedPrescription === true}\"\r\n                    [disabled]=\"commonServices.editPrescribedPrescription\" id=\"selectedFrequency:\"\r\n                    placeholder=\"Select Frequency\" readOnly [(ngModel)]=\"commonServices.freqSearchValue\"\r\n                    (click)=\"freqDropdown()\" />\r\n                  <div #FreqDropdown class=\"new_rx_popup_tab_dropdown_list_box\"\r\n                    [class]=\"{ M_list_box_show: selectFreqDropdown === true }\">\r\n                    <ul class=\"new_rx_popup_tab_1_list rx_dropdown\">\r\n                      <li (click)=\"selectFrequencyValue(null)\" class=\"p-12\"> </li>\r\n                      <li *ngFor=\"let frequency of frequencyData\" (click)=\"selectFrequencyValue(frequency)\" [class]=\"{\r\n                    heighlight:\r\n                      frequency['text'] == commonServices.freqSearchValue\r\n                  }\">\r\n                        {{ frequency[\"text\"] }}\r\n                      </li>\r\n                    </ul>\r\n                  </div>\r\n                </div>\r\n                <div\r\n                  class=\"mdl-cell mdl-cell--3-col mdl-cell--4-col-tablet mdl-cell--4-col-phone new_rx_mobile_fullwidth\"\r\n                  style=\"position: relative\">\r\n                  <p class=\"new_rx_popup_label\">Food:</p>\r\n                  <input autocomplete=\"off\" class=\"mdl-textfield__input new_rx_popup_tab_input\" type=\"text\"\r\n                    [class]=\"{'edit-disable-data': commonServices.editPrescribedPrescription === true}\"\r\n                    [disabled]=\"commonServices.editPrescribedPrescription\" id=\"selectedFrequency:\"\r\n                    placeholder=\"Select Food\" readOnly [(ngModel)]=\"commonServices.foodSearchValue\"\r\n                    (click)=\"foodDropdown()\" />\r\n                  <div #FoodDropdown class=\"new_rx_popup_tab_dropdown_list_box\"\r\n                    [class]=\"{ M_list_box_show: selectFoodDropdown === true }\">\r\n                    <ul class=\"new_rx_popup_tab_1_list rx_dropdown\">\r\n                      <li (click)=\"selectFoodValue(null)\" class=\"p-12\"> </li>\r\n                      <li *ngFor=\"let food of foodData\" (click)=\"selectFoodValue(food)\" [class]=\"{\r\n                    heighlight: food['text'] == commonServices.foodSearchValue\r\n                  }\">\r\n                        {{ food[\"text\"] }}\r\n                      </li>\r\n                    </ul>\r\n                  </div>\r\n                </div>\r\n                <div\r\n                  class=\"mdl-cell mdl-cell--3-col mdl-cell--4-col-tablet mdl-cell--4-col-phone new_rx_mobile_fullwidth\"\r\n                  style=\"position: relative\">\r\n                  <p class=\"new_rx_popup_label\">Instruction:</p>\r\n                  <input autocomplete=\"off\" class=\"mdl-textfield__input new_rx_popup_tab_input\" type=\"text\"\r\n                    [class]=\"{'edit-disable-data': commonServices.editPrescribedPrescription === true}\"\r\n                    [disabled]=\"commonServices.editPrescribedPrescription\" id=\"Instruction\"\r\n                    placeholder=\"Select Instruction\" [(ngModel)]=\"commonServices.InstructionSearchValue\"\r\n                    (click)=\"instructionDropdown()\" (change)=\"instructionOnChange()\"\r\n                    (keypress)=\"alphaRestriction($event)\" />\r\n                  <div #InstructionDropdown class=\"new_rx_popup_tab_dropdown_list_box\"\r\n                    [class]=\"{M_list_box_show: selectInstructionDropdown === true}\">\r\n                    <ul class=\"new_rx_popup_tab_1_list rx_dropdown\" style=\"margin-bottom: 0px\">\r\n                      <ng-container *ngIf=\"selectInstructionDropdownList\">\r\n                        <li (click)=\"ChangeInstruction(null)\" class=\"p-12\"> </li>\r\n                        <li\r\n                          [class]=\"item.id == commonServices.complexId && item.text == commonServices.InstructionSearchValue ? 'heighlight' : ''\"\r\n                          *ngFor=\"let item of instructionData; index as i\" (click)=\"ChangeInstruction(item)\">\r\n                          {{ item.text }}\r\n                          <span *ngIf=\"item.userid !== 0\" class=\"span_icon\" style=\"float: right\">\r\n                            <i class=\"material-icons\" style=\"padding: 5px\"\r\n                              (click)=\"editInstruction(item.id, item)\">create</i><i class=\"material-icons\"\r\n                              style=\"margin-left: 10px; padding: 5px\"\r\n                              (click)=\"deleteInstruction(item.id)\">clear</i></span>\r\n                        </li>\r\n                        <li class=\"RX_ADD_dropdown_btn\" (click)=\"addNewInstruction()\">\r\n                          + Add Complex Instructions\r\n                        </li>\r\n                      </ng-container>\r\n                      <ng-container *ngIf=\"selectInstructionDropdownList == false\">\r\n                        <div class=\"complex_instruction_box\">\r\n                          <p class=\"new_rx_popup_label\" style=\"font-size: 12px; margin: 0\">\r\n                            Complex Instruction:\r\n                          </p>\r\n                          <input autocomplete=\"off\"\r\n                            class=\"instruction_field_clr mdl-textfield__input new_rx_popup_tab_input \" type=\"text\"\r\n                            id=\"Instruction\" [(ngModel)]=\"commonServices.Instructiontiltle\"\r\n                            placeholder=\"Enter Complex Instruction\" />\r\n                          <p class=\"new_rx_popup_label\" style=\"font-size: 12px; margin: 0\">\r\n                            Complex Instruction Description:\r\n                          </p>\r\n                          <textarea autocomplete=\"off\" name=\"\" id=\"\" rows=\"2\" maxLength=\"500\"\r\n                            [(ngModel)]=\"tempInstructionDescription\" placeholder=\"Enter Complex Instruction Description\"\r\n                            class=\"instruction_field_clr w-100 new_rx_popup_tab_textarea\"></textarea>\r\n                          <div class=\"RX_ADD_dropdown_btn_1\">\r\n                            <button (click)=\"clearInstruction()\" class=\"rx-instruction-btn\">Cancel</button>\r\n                            <button (click)=\"saveInstruction()\" class=\"rx-instruction-btn\">Save</button>\r\n                          </div>\r\n                        </div>\r\n                      </ng-container>\r\n                    </ul>\r\n                  </div>\r\n                </div>\r\n                <div\r\n                  class=\"mdl-cell mdl-cell--3-col mdl-cell--4-col-tablet mdl-cell--4-col-phone new_rx_mobile_fullwidth\"\r\n                  style=\"position: relative\">\r\n                  <p class=\"new_rx_popup_label\">Route:</p>\r\n                  <input autocomplete=\"off\" class=\"mdl-textfield__input new_rx_popup_tab_input\" type=\"text\"\r\n                    [class]=\"{'edit-disable-data': commonServices.editPrescribedPrescription === true}\"\r\n                    [disabled]=\"commonServices.editPrescribedPrescription\" id=\"selectedRoute:\"\r\n                    placeholder=\"Select Route\" [(ngModel)]=\"commonServices.routeSearchValue\" maxlength=\"50\"\r\n                    (click)=\"routeDropdown()\" (keypress)=\"alphaRestriction($event)\" />\r\n                  <div #RouteDropdown class=\"new_rx_popup_tab_dropdown_list_box\"\r\n                    [class]=\"{ M_list_box_show: selectRouteDropdown === true }\">\r\n                    <div style=\"padding: 10px; position: relative\">\r\n                      <input autocomplete=\"off\" class=\"mdl-textfield__input new_rx_route__input\" type=\"text\"\r\n                        placeholder=\"Search...\" [value]=\"routeDataFilter ? routeDataFilter : ''\"\r\n                        (keyup)=\"routeFilter($event)\" />\r\n                      <i class=\"material-icons md-24 new_rx_popup_tab_1_input_search rx-search-icon\">search</i>\r\n                    </div>\r\n                    <ul *ngIf=\"filterRouteItems(routeData, routeDataFilter).length != 0\"\r\n                      class=\"new_rx_popup_tab_1_list rx_dropdown rx_dropdown_route\">\r\n                      <li *ngFor=\"\r\n                    let route of filterRouteItems(routeData, routeDataFilter)\r\n                  \" (click)=\"selectRoutesearcValue(route)\" [class]=\"{\r\n                    heighlight:\r\n                      route['routeName'] == commonServices.routeSearchValue\r\n                  }\">\r\n                        {{ route[\"routeName\"] }}\r\n                      </li>\r\n                    </ul>\r\n                    <ul *ngIf=\"filterRouteItems(routeData, routeDataFilter).length == 0\"\r\n                      class=\"new_rx_popup_tab_1_list rx_dropdown rx_dropdown_route\">\r\n                      <li>no data</li>\r\n                    </ul>\r\n                  </div>\r\n                </div>\r\n                <div\r\n                  class=\"mdl-cell mdl-cell--3-col mdl-cell--4-col-tablet mdl-cell--4-col-phone new_rx_mobile_fullwidth\">\r\n                  <!-- <p class=\"new_rx_popup_label\">Pro Re Nata Prescription:</p> -->\r\n                  <div class=\"rx_new_popup_checkbox m-t-36\">\r\n                    <label class=\"mdl-checkbox mdl-js-checkbox mdl-js-ripple-effect\">\r\n                      <input autocomplete=\"off\" type=\"checkbox\" id=\"checkbox1\"\r\n                        [disabled]=\"commonServices.editPrescribedPrescription === true\"\r\n                        class=\"mdl-checkbox__input rx_new_group_checkbox\" [(ngModel)]=\"commonServices.rxPRN\"\r\n                        (ngModelChange)=\"PRNChange(commonServices.rxPRN)\" /><span class=\"mdl-checkbox__label\"\r\n                        style=\"font-weight: 400; font-size: 16px\"\r\n                        [class]=\"{'disabled-style': commonServices.isFetching == true || commonServices.editPrescribedPrescription === true}\">Pro\r\n                        Re Nata\r\n                        Prescription</span></label>\r\n                  </div>\r\n                </div>\r\n                <div\r\n                  class=\"mdl-cell mdl-cell--3-col mdl-cell--4-col-tablet mdl-cell--4-col-phone new_rx_mobile_fullwidth\">\r\n                  <p class=\"new_rx_popup_label\">Prescribe As:</p>\r\n                  <div class=\"rx_new_popup_checkbox\">\r\n                    <div class=\"rx_new_radiobox_button rx_radio_overall\">\r\n                      <label class=\"rx_radio_label\">\r\n                        <input autocomplete=\"off\" type=\"radio\" class=\"mdl-radio__button custom-radio-button\"\r\n                          name=\"PrescribeAs\" [value]=\"'Private'\"\r\n                          [disabled]=\"commonServices.isFetching || commonServices.editPrescribedPrescription === true\"\r\n                          [checked]=\"commonServices.PrescribeAS.toLowerCase() === 'private'\" (click)=\"private()\"\r\n                          [(ngModel)]=\"commonServices.PrescribeAS\" /><span class=\"mdl-radio__label radio_txt\"\r\n                          [class]=\"{'disabled-style': commonServices.isFetching == true || commonServices.editPrescribedPrescription === true}\">Private</span></label>\r\n\r\n                      <label class=\"rx_radio_label\">\r\n                        <input autocomplete=\"off\" type=\"radio\" checked=\"\"\r\n                          class=\"mdl-radio__button d-inline radio custom-radio-button\" name=\"PrescribeAs\"\r\n                          [value]=\"'PBS'\"\r\n                          [disabled]=\"prescribeAS_PBS || commonServices.isFetching || commonServices.editPrescribedPrescription === true\"\r\n                          [checked]=\"commonServices.PrescribeAS.toLowerCase() === 'pbs'\" (click)=\"PBS()\"\r\n                          [(ngModel)]=\"commonServices.PrescribeAS\" /><span class=\"mdl-radio__label radio_txt\"\r\n                          [class]=\"{ 'disabled-style': prescribeAS_PBS == true|| commonServices.isFetching || commonServices.editPrescribedPrescription === true}\">PBS</span>\r\n                      </label>\r\n                      <label class=\"rx_radio_label\">\r\n                        <input autocomplete=\"off\" type=\"radio\" checked=\"\"\r\n                          class=\"mdl-radio__button d-inline radio custom-radio-button\" name=\"PrescribeAs\"\r\n                          [value]=\"'RPBS'\"\r\n                          [disabled]=\"prescribeAS_RPBS || commonServices.isFetching || commonServices.editPrescribedPrescription === true\"\r\n                          [checked]=\"commonServices.PrescribeAS.toLowerCase() === 'rpbs'\" (click)=\"RPBS()\"\r\n                          [(ngModel)]=\"commonServices.PrescribeAS\" /><span class=\"mdl-radio__label radio_txt\"\r\n                          [class]=\"{ 'disabled-style': prescribeAS_RPBS == true|| commonServices.isFetching || commonServices.editPrescribedPrescription === true}\">RPBS</span>\r\n                      </label>\r\n                    </div>\r\n                  </div>\r\n                  <div class=\"rx_new_popup_checkbox\" *ngIf=\"\r\n                commonServices.selectedFormulation != null && commonServices.selectedFormulation.pbsType!=undefined && commonServices.selectedFormulation.pbsType!=null &&\r\n                commonServices.selectedFormulation.pbsType.toLowerCase() === 'non pbs' &&\r\n                commonServices.patientDetails.dvaNumber != null &&\r\n                commonServices.patientDetails.dvaNumber != '' && isNonPbsFlag == false && !isPrescribeAsPrivateOnly\r\n              \">\r\n                    <label class=\"mdl-checkbox mdl-js-checkbox mdl-js-ripple-effect\">\r\n                      <input autocomplete=\"off\" type=\"checkbox\" id=\"checkbox\" class=\"check_box\"\r\n                        [checked]=\"commonServices.unlistedRA\" (click)=\"unlistedRA()\"\r\n                        [(ngModel)]=\"commonServices.unlistedRA\"\r\n                        [disabled]=\"commonServices.editPrescribedPrescription === true\" />\r\n                      <span class=\"mdl-checkbox__label check_box_label\"\r\n                        [class]=\"{'disabled-style': commonServices.isFetching == true || commonServices.editPrescribedPrescription === true}\">\r\n                        Unlisted RA\r\n                      </span>\r\n                    </label>\r\n                  </div>\r\n                </div>\r\n                <div\r\n                  class=\"mdl-cell mdl-cell--3-col mdl-cell--4-col-tablet mdl-cell--4-col-phone new_rx_mobile_fullwidth\"\r\n                  [class]=\"{\r\n              M_CTG_box_hide: !(\r\n                commonServices.patientDetails &&\r\n                commonServices.patientDetails.patientCtgFlag == 0 &&\r\n                commonServices.patientDetails.patientCtgCoPayment == 0 &&\r\n                commonServices.PrescribeAS.toLowerCase() == 'pbs'\r\n              )\r\n            }\">\r\n                  <!-- <p class=\"new_rx_popup_label\">CTG/PBS Co Payment:</p> -->\r\n                  <div class=\"rx_new_popup_checkbox m-t-36\">\r\n                    <label class=\"mdl-checkbox mdl-js-checkbox mdl-js-ripple-effect\">\r\n                      <input autocomplete=\"off\" type=\"checkbox\" id=\"checkbox2\"\r\n                        [disabled]=\"commonServices.editPrescribedPrescription === true\"\r\n                        class=\"mdl-checkbox__input rx_new_group_checkbox\" [(ngModel)]=\"commonServices.CTGCoPayment\"\r\n                        [checked]=\"commonServices.CTGCoPayment == true\" /><span class=\"mdl-checkbox__label\"\r\n                        style=\"font-weight: 400; font-size: 16px\"\r\n                        [class]=\"{'disabled-style': commonServices.isFetching == true || commonServices.editPrescribedPrescription === true}\">CTG/PBS\r\n                        Co Payment</span></label>\r\n                  </div>\r\n                </div>\r\n              </div>\r\n              <div class=\"mdl-grid\" style=\"width: 100%; padding: 0px\"\r\n                [class]=\"{ disabledRxContent: commonServices.isFetching}\">\r\n                <div\r\n                  class=\"mdl-cell mdl-cell--3-col mdl-cell--4-col-tablet mdl-cell--4-col-phone new_rx_mobile_fullwidth\">\r\n                  <p class=\"new_rx_popup_label\">Script Date:</p>\r\n                  <input autocomplete=\"off\" class=\"mdl-textfield__input new_rx_popup_tab_input\" type=\"date\"\r\n                    [class]=\"{'edit-disable-data': commonServices.editPrescribedPrescription === true}\"\r\n                    id=\"RxScriptDate\" placeholder=\" ../../....\"\r\n                    [disabled]=\"commonServices.isFetching || commonServices.editPrescribedPrescription\"\r\n                    [(ngModel)]=\"commonServices.scriptDate\" />\r\n                </div>\r\n                <div\r\n                  class=\"mdl-cell mdl-cell--3-col mdl-cell--4-col-tablet mdl-cell--4-col-phone new_rx_mobile_fullwidth\">\r\n                  <p class=\"new_rx_popup_label\">Start Date:</p>\r\n                  <input autocomplete=\"off\" class=\"mdl-textfield__input new_rx_popup_tab_input\" type=\"date\"\r\n                    [class]=\"{'edit-disable-data': commonServices.editPrescribedPrescription === true}\" id=\"RxStartDate\"\r\n                    placeholder=\" ../../....\"\r\n                    [disabled]=\"commonServices.isFetching || commonServices.editPrescribedPrescription\"\r\n                    [(ngModel)]=\"commonServices.startDate\" (ngModelChange)=\"commonServices.rxEndDateCalculater()\" />\r\n                </div>\r\n                <div\r\n                  class=\"mdl-cell mdl-cell--3-col mdl-cell--4-col-tablet mdl-cell--4-col-phone new_rx_mobile_fullwidth\">\r\n                  <p class=\"new_rx_popup_label\">End Date:</p>\r\n                  <input autocomplete=\"off\" class=\"mdl-textfield__input new_rx_popup_tab_input\" type=\"date\"\r\n                    [class]=\"{'edit-disable-data': commonServices.editPrescribedPrescription === true}\" id=\"RxEndDate\"\r\n                    placeholder=\"../../....\"\r\n                    [disabled]=\"commonServices.isFetching || commonServices.editPrescribedPrescription\"\r\n                    [(ngModel)]=\"commonServices.endDate\" />\r\n                </div>\r\n                <div\r\n                  class=\"mdl-cell mdl-cell--3-col mdl-cell--4-col-tablet mdl-cell--4-col-phone new_rx_mobile_fullwidth\">\r\n                  <p class=\"new_rx_popup_label\">Days Between Repeats:</p>\r\n                  <input autocomplete=\"off\" (paste)=\"$event.preventDefault()\" placeholder=\"Enter Days Between Repeats\"\r\n                    [class]=\"{'edit-disable-data': commonServices.editPrescribedPrescription === true||commonServices.isMedicineRestrict}\"\r\n                    class=\"mdl-textfield__input new_rx_popup_tab_input\" type=\"number\" id=\"Daybetweenrepeats\" [min]=\"0\"\r\n                    [disabled]=\"commonServices.isFetching || commonServices.editPrescribedPrescription||commonServices.isMedicineRestrict\"\r\n                    [(ngModel)]=\"commonServices.daysBtnRepeatsVal\" (keypress)=\"checkMobile($event)\"\r\n                    (input)=\"dayschange()\" />\r\n                </div>\r\n                <div\r\n                  class=\"mdl-cell mdl-cell--3-col mdl-cell--4-col-tablet mdl-cell--4-col-phone new_rx_mobile_fullwidth\"\r\n                  style=\"position: relative\">\r\n                  <div>\r\n                    <p class=\"new_rx_popup_label\">Purpose:</p>\r\n                    <input autocomplete=\"off\" class=\"mdl-textfield__input new_rx_popup_tab_input\" type=\"text\"\r\n                      [class]=\"{'edit-disable-data': commonServices.editPrescribedPrescription === true}\"\r\n                      [disabled]=\"commonServices.editPrescribedPrescription\" id=\"selectedPurpose:\"\r\n                      placeholder=\"Select Purpose\" readOnly [(ngModel)]=\"commonServices.purposeSearchValue\"\r\n                      (click)=\"purposeDropdown()\" />\r\n                    <div #PurposeDropdown class=\"new_rx_popup_tab_dropdown_list_box new_rx_popup_tab_purpose_box h-160p\"\r\n                      [class]=\"{ M_list_box_show: selectPurposeDropdown === true }\">\r\n                      <ul class=\"new_rx_popup_tab_1_list rx_dropdown\">\r\n                        <li (click)=\"selectPurposeValue(null)\" class=\"p-12\"></li>\r\n                        <li *ngFor=\"let purpose of purposeData\" (click)=\"selectPurposeValue(purpose)\" [class]=\"{\r\n                      heighlight:\r\n                        purpose['lookupText'] ==\r\n                        commonServices.purposeSearchValue\r\n                    }\">\r\n                          {{ purpose[\"lookupText\"] }}\r\n                        </li>\r\n                      </ul>\r\n                    </div>\r\n                  </div>\r\n                </div>\r\n                <div\r\n                  class=\"mdl-cell mdl-cell--3-col mdl-cell--4-col-tablet mdl-cell--4-col-phone new_rx_mobile_fullwidth\"\r\n                  [class]=\"{ M_CTG_box_hide: commonServices.isBrandName != true }\">\r\n                  <!-- <p class=\"new_rx_popup_label\">Substitution:</p> -->\r\n                  <div class=\"rx_new_popup_checkbox m-t-36\">\r\n                    <label class=\"mdl-checkbox mdl-js-checkbox mdl-js-ripple-effect\">\r\n                      <input autocomplete=\"off\" type=\"checkbox\" id=\"checkbox1\"\r\n                        [disabled]=\"commonServices.editPrescribedPrescription === true || commonServices.isBrandName == false\"\r\n                        class=\"mdl-checkbox__input rx_new_group_checkbox\"\r\n                        [(ngModel)]=\"commonServices.BrandSubstitutesNotAllow\"\r\n                        (change)=\"this.brandSubstitutesNotAllow(commonServices.BrandSubstitutesNotAllow)\" [checked]=\"\r\n                    commonServices.BrandSubstitutesNotAllow\r\n                      ? commonServices.BrandSubstitutesNotAllow\r\n                      : false\r\n                  \" /><span class=\"mdl-checkbox__label\" style=\"font-weight: 400; font-size: 16px\"\r\n                        [class]=\"{'disabled-style': commonServices.isFetching == true || commonServices.editPrescribedPrescription === true}\">Brand\r\n                        Substitution\r\n                        Not Permitted</span></label>\r\n                  </div>\r\n                </div>\r\n                <div\r\n                  class=\"mdl-cell mdl-cell--3-col mdl-cell--4-col-tablet mdl-cell--4-col-phone new_rx_mobile_fullwidth\"\r\n                  [class]=\"{ M_CTG_box_hide_brand: commonServices.lemi == true }\" id=\"brandnametooltip\"\r\n                  (mouseleave)=\"hideToolTip()\" (mouseenter)=\"showtooltip(commonServices.lemi,brandtooltip)\">\r\n                  <!-- <p class=\"new_rx_popup_label\">Brand Name:</p> -->\r\n                  <ng-template #brandtooltip><span class=\"include_brand_tooltip\">The selected product is LEMI\r\n                      identified. Therefore it may be\r\n                      prescribed by the brand name only.</span></ng-template>\r\n                  <div class=\"rx_new_popup_checkbox m-t-36\">\r\n                    <label class=\"mdl-checkbox mdl-js-checkbox mdl-js-ripple-effect\" [class]=\"{\r\n                  M_CTG_box_hide_brand_name: commonServices.lemi == true || commonServices.isFetching == true || commonServices.editPrescribedPrescription === true\r\n                }\">\r\n                      <input autocomplete=\"off\" type=\"checkbox\" id=\"checkbox2\"\r\n                        [disabled]=\"commonServices.editPrescribedPrescription === true\"\r\n                        class=\"mdl-checkbox__input rx_new_group_checkbox\" [checked]=\"commonServices.isBrandName\"\r\n                        [(ngModel)]=\"commonServices.isBrandName\"\r\n                        (change)=\"this.isChangeBrandName(commonServices.isBrandName)\" /><span\r\n                        class=\"mdl-checkbox__label\" style=\"font-weight: 400; font-size: 16px\">Include Brand\r\n                        Name</span></label>\r\n                  </div>\r\n                </div>\r\n                <div\r\n                  class=\"mdl-cell mdl-cell--3-col mdl-cell--4-col-tablet mdl-cell--4-col-phone new_rx_mobile_fullwidth\">\r\n                  <!-- <p class=\"new_rx_popup_label\">Regulation 24:</p> -->\r\n                  <div class=\"rx_new_popup_checkbox m-t-36\">\r\n                    <label class=\"mdl-checkbox mdl-js-checkbox mdl-js-ripple-effect\">\r\n                      <input autocomplete=\"off\" type=\"checkbox\" id=\"checkbox2\"\r\n                        [disabled]=\"commonServices.editPrescribedPrescription === true\"\r\n                        class=\"mdl-checkbox__input rx_new_group_checkbox\" [(ngModel)]=\"commonServices.regulation24\"\r\n                        [checked]=\"commonServices.regulation24\" /><span class=\"mdl-checkbox__label\"\r\n                        style=\"font-weight: 400; font-size: 16px\"\r\n                        [class]=\"{'disabled-style': commonServices.isFetching == true || commonServices.editPrescribedPrescription === true}\">Regulation\r\n                        24</span></label>\r\n                  </div>\r\n                </div>\r\n              </div>\r\n              <div class=\"mdl-grid\" style=\"width: 100%; padding: 0px\"\r\n                [class]=\"{ disabledRxContent: commonServices.isFetching}\">\r\n                <div\r\n                  class=\"mdl-cell mdl-cell--3-col mdl-cell--4-col-tablet mdl-cell--4-col-phone new_rx_mobile_fullwidth\">\r\n                  <!-- <p class=\"new_rx_popup_label\">DO NOT send to MySL:</p> -->\r\n                  <div class=\"rx_new_popup_checkbox m-t-36\">\r\n                    <label class=\"mdl-checkbox mdl-js-checkbox mdl-js-ripple-effect\">\r\n                      <input autocomplete=\"off\" type=\"checkbox\" id=\"checkbox2\"\r\n                        [disabled]=\"commonServices.editPrescribedPrescription === true\"\r\n                        class=\"mdl-checkbox__input rx_new_group_checkbox\"\r\n                        [(ngModel)]=\"commonServices.mySLConsent\" /><span class=\"mdl-checkbox__label\"\r\n                        style=\"font-weight: 400; font-size: 16px\"\r\n                        [class]=\"{'disabled-style': commonServices.isFetching == true || commonServices.editPrescribedPrescription === true}\">DO\r\n                        NOT send to MySL</span></label>\r\n                  </div>\r\n                </div>\r\n                <div\r\n                  class=\"mdl-cell mdl-cell--3-col mdl-cell--4-col-tablet mdl-cell--4-col-phone new_rx_mobile_fullwidth\"\r\n                  style=\"position: relative\">\r\n                  <p class=\"new_rx_popup_label\">\r\n                    <!-- Pharmacy: -->\r\n                    <span>\r\n                      <div class=\"rx_new_popup_checkbox\" style=\"margin-top: 0px\">\r\n                        <label class=\"mdl-checkbox mdl-js-checkbox mdl-js-ripple-effect\"><input autocomplete=\"off\"\r\n                            [disabled]=\"commonServices.editPrescribedPrescription === true\" type=\"checkbox\"\r\n                            class=\"mdl-checkbox__input rx_new_group_checkbox\"\r\n                            [(ngModel)]=\"commonServices.sendToPharmacy\" (change)=\"sendToPharmacyChange()\" /><span\r\n                            class=\"mdl-checkbox__label\" style=\"font-weight: 400;font-size: 16px;margin-top: -7px;\"\r\n                            [class]=\"{'disabled-style': commonServices.isFetching == true || commonServices.editPrescribedPrescription === true}\">Send\r\n                            to Pharmacy</span></label>\r\n                      </div>\r\n                    </span>\r\n                  </p>\r\n                  <input autocomplete=\"off\" class=\"mdl-textfield__input new_rx_popup_tab_input\" type=\"text\" readonly\r\n                    [class]=\"{'edit-disable-data': commonServices.editPrescribedPrescription === true}\"\r\n                    [disabled]=\"commonServices.editPrescribedPrescription\" id=\"selecteddose\" placeholder=\"Select Value\"\r\n                    [(ngModel)]=\"commonServices.sendToPharmacyValue\" (click)=\"stpValueDropdown()\"\r\n                    [class]=\"{ M_CTG_box_hide: commonServices.sendToPharmacy != true }\" />\r\n                  <div #stpDropdown class=\"new_rx_popup_tab_dropdown_list_box new_rx_popup_tab_stp_box h-93p\"\r\n                    [class]=\"{ M_list_box_show: selectstpDropdown === true }\">\r\n                    <ul class=\"new_rx_popup_tab_1_list rx_dropdown\" style=\"margin-bottom: 0px\">\r\n                      <li (click)=\"selectStpValue(null)\" class=\"p-12\"></li>\r\n                      <li *ngFor=\"let sendtopharmacy of sendtopharmacyData\" (click)=\"selectStpValue(sendtopharmacy)\">\r\n                        {{ sendtopharmacy.name }}\r\n                      </li>\r\n                    </ul>\r\n                  </div>\r\n                </div>\r\n                <div\r\n                  class=\"mdl-cell mdl-cell--3-col mdl-cell--4-col-tablet mdl-cell--4-col-phone new_rx_mobile_fullwidth\">\r\n                  <!-- <p class=\"new_rx_popup_label\">Emergency Supply:</p> -->\r\n                  <div class=\"rx_new_popup_checkbox m-t-36\">\r\n                    <label class=\"mdl-checkbox mdl-js-checkbox mdl-js-ripple-effect\">\r\n                      <input autocomplete=\"off\" type=\"checkbox\" id=\"checkbox2\"\r\n                        [disabled]=\"commonServices.editPrescribedPrescription === true\"\r\n                        class=\"mdl-checkbox__input rx_new_group_checkbox\"\r\n                        [(ngModel)]=\"commonServices.emergencySupply\" /><span class=\"mdl-checkbox__label\"\r\n                        style=\"font-weight: 400; font-size: 16px\"\r\n                        [class]=\"{'disabled-style': commonServices.isFetching == true || commonServices.editPrescribedPrescription === true}\">Emergency\r\n                        Supply</span></label>\r\n                  </div>\r\n                </div>\r\n              </div>\r\n            </div>\r\n            <div *ngIf=\"page == 2\" class=\"new_rx_popup_tab_2\">\r\n              <div class=\"mdl-grid\" style=\"width: 100%; padding: 0px; opacity: 1\">\r\n                <div\r\n                  class=\"mdl-cell mdl-cell--6-col mdl-cell--4-col-tablet mdl-cell--4-col-phone new_rx_mobile_fullwidth\">\r\n                  <div style=\"width: 100%; padding: 0px\" class=\"mdl-grid\">\r\n                    <div class=\"mdl-cell mdl-cell--12-col mdl-cell--8-col-tablet mdl-cell--4-col-phone\">\r\n                      <div class=\"mdl-grid new_rx_popup_tab_1_grid\">\r\n                        <div class=\"mdl-cell mdl-cell--12-col\">\r\n                          <p class=\"new_rx_popup_label\">RX</p>\r\n                          <p class=\"new_rx_popup_label_p\">\r\n                            <b [innerHTML]=\"commonServices.rxDisplayName\"></b>\r\n                          </p>\r\n                          <p class=\"new_rx_popup_label_p\" style=\"margin: 0px\">Quantity: <span\r\n                              style=\"color: rgb(45, 45, 45); font-weight: 600\">{{ commonServices.quantityVal }}\r\n                            </span> Repeats: <span style=\"color: rgb(45, 45, 45); font-weight: 600\">\r\n                              {{ commonServices.repeatsVal }}</span> Default Quantity:{{getDefaultQuantity()}}\r\n                            Default Repeats:\r\n                            {{commonServices.selectedFormulation!=null&&commonServices.selectedFormulation.repeats!=null?commonServices.selectedFormulation.repeats:\"\"\r\n                            }}\r\n                          </p>\r\n                          <p *ngIf=\"commonServices.doseSearchValue != '' ||commonServices.freqSearchValue != ''\"\r\n                            class=\"new_rx_popup_label_p\">\r\n                            <span>{{ commonServices.doseSearchValue }} </span><span>{{ commonServices.freqSearchValue\r\n                              }}</span>\r\n                          </p>\r\n                          <p *ngIf=\"commonServices.foodSearchValue != ''\" class=\"new_rx_popup_label_p\">\r\n                            {{ commonServices.foodSearchValue }}\r\n                          </p>\r\n                          <p class=\"new_rx_popup_label_p\">\r\n                            {{InstructionDescription !=\"\" && InstructionDescription!=null?\r\n                            InstructionDescription:commonServices.InstructionSearchValue!=\"\" &&\r\n                            commonServices.InstructionSearchValue!=null?commonServices.InstructionSearchValue:\"\"}}\r\n                          </p>\r\n                          <p *ngIf=\"commonServices.routeSearchValue != ''\" class=\"new_rx_popup_label_p\">\r\n                            {{ commonServices.routeSearchValue }}\r\n                          </p>\r\n                          <p class=\"new_rx_popup_label_p\">\r\n                            P.R.N :\r\n                            <i *ngIf=\"commonServices.rxPRN\" class=\"material-icons icon-done\"\r\n                              style=\"color: #0077b6\">check</i>\r\n                            <span *ngIf=\"!commonServices.rxPRN\">-</span>\r\n                          </p>\r\n                          <p class=\"new_rx_popup_label_p\">Days Between Repeats:\r\n                            <span\r\n                              *ngIf=\"!commonServices.IsNullOrEmpty(commonServices.daysBtnRepeatsVal)\">{{commonServices.daysBtnRepeatsVal}}</span>\r\n                            <span *ngIf=\"commonServices.IsNullOrEmpty(commonServices.daysBtnRepeatsVal)\">-</span>\r\n                          </p>\r\n                          <p class=\"new_rx_popup_label_p\">\r\n                            Unusual Dose:\r\n                            <i *ngIf=\"commonServices.unUsualDoseFlag\" class=\"material-icons icon-done\"\r\n                              style=\"color: #0077b6\">check</i>\r\n                            <span *ngIf=\"!commonServices.unUsualDoseFlag\">-</span>\r\n                          </p>\r\n                          <p class=\"new_rx_popup_label_p\">Script Date:\r\n                            <span>{{this.commonServices.scriptDate|date:'dd-MM-yyyy'}}</span>\r\n\r\n                          </p>\r\n                          <p class=\"new_rx_popup_label_p\">Start Date:\r\n                            <span>{{this.commonServices.startDate|date:'dd-MM-yyyy'}}</span>, End Date:\r\n                            {{this.commonServices.endDate|date:'dd-MM-yyyy'}}\r\n                          </p>\r\n                          <p class=\"new_rx_popup_label_p\">Prescribe As:\r\n                            <span\r\n                              *ngIf=\"!commonServices.IsNullOrEmpty(commonServices.PrescribeAS)\">{{commonServices.PrescribeAS}}</span>\r\n                            <span *ngIf=\"commonServices.IsNullOrEmpty(commonServices.PrescribeAS)\">-</span>\r\n                          </p>\r\n                          <p class=\"new_rx_popup_label_p\">Purpose:\r\n                            <span\r\n                              *ngIf=\"!commonServices.IsNullOrEmpty(commonServices.purposeSearchValue)\">{{commonServices.purposeSearchValue}}</span>\r\n                            <span *ngIf=\"commonServices.IsNullOrEmpty(commonServices.purposeSearchValue)\">-</span>\r\n                          </p>\r\n                          <p class=\"new_rx_popup_label_p\">\r\n                            Include Brand Name:\r\n                            <i *ngIf=\"commonServices.isBrandName\" class=\"material-icons icon-done\"\r\n                              style=\"color: #0077b6\">check</i>\r\n                            <span *ngIf=\"!commonServices.isBrandName\">-</span>,\r\n                            Brand Substitution Not Permitted:\r\n                            <i *ngIf=\"commonServices.BrandSubstitutesNotAllow\" class=\"material-icons icon-done\"\r\n                              style=\"color: #0077b6\">check</i>\r\n                            <span *ngIf=\"!commonServices.BrandSubstitutesNotAllow\">-</span>\r\n                          </p>\r\n                          <p class=\"new_rx_popup_label_p\">\r\n                            Regulation 24:\r\n                            <i *ngIf=\"commonServices.regulation24\" class=\"material-icons icon-done\"\r\n                              style=\"color: #0077b6\">check</i>\r\n                            <span *ngIf=\"!commonServices.regulation24\">-</span>\r\n                          </p>\r\n                          <p class=\"new_rx_popup_label_p\">\r\n                            CTG/PBS Co Payment:\r\n                            <i *ngIf=\"commonServices.CTGCoPayment\" class=\"material-icons icon-done\"\r\n                              style=\"color: #0077b6\">check</i>\r\n                            <span *ngIf=\"!commonServices.CTGCoPayment\">-</span>\r\n                          </p>\r\n                          <p class=\"new_rx_popup_label_p\">\r\n                            DO NOT send to MySL:\r\n                            <i *ngIf=\"commonServices.mySLConsent\" class=\"material-icons icon-done\"\r\n                              style=\"color: #0077b6\">check</i>\r\n                            <span *ngIf=\"!commonServices.mySLConsent\">-</span>\r\n                          </p>\r\n                          <p class=\"new_rx_popup_label_p\">\r\n                            Send to Pharmacy:\r\n                            <i *ngIf=\"commonServices.sendToPharmacy\" class=\"material-icons icon-done\"\r\n                              style=\"color: #0077b6\">check</i>\r\n                            <span *ngIf=\"!commonServices.sendToPharmacy\">-</span>, Send to Pharmacy Value:\r\n                            {{!commonServices.IsNullOrEmpty(commonServices.sendToPharmacyValue)?commonServices.sendToPharmacyValue:'-'}}\r\n                          </p>\r\n                          <p class=\"new_rx_popup_label_p\">\r\n                            Emergency Supply:\r\n                            <i *ngIf=\"commonServices.emergencySupply\" class=\"material-icons icon-done\"\r\n                              style=\"color: #0077b6\">check</i>\r\n                            <span *ngIf=\"!commonServices.emergencySupply\">-</span>\r\n                          </p>\r\n                        </div>\r\n                      </div>\r\n                    </div>\r\n                  </div>\r\n                  <div class=\"mdl-grid\" style=\"width: 100%; padding: 0px\">\r\n                    <div class=\"mdl-cell mdl-cell--12-col mdl-cell--8-col-tablet mdl-cell--4-col-phone\">\r\n                      <p class=\"new_rx_popup_label\">Note To Pharmacy:</p>\r\n                      <textarea autocomplete=\"off\" name=\"\" id=\"\" rows=\"3\" maxlength=\"50\" placeholder=\"\"\r\n                        [class]=\"{'edit-disable-data': commonServices.editPrescribedPrescription === true}\"\r\n                        [disabled]=\"commonServices.editPrescribedPrescription\"\r\n                        [(ngModel)]=\"this.commonServices.doctorNotes\"\r\n                        class=\"w-100 new_rx_popup_tab_textarea rx-m-w-535p\"></textarea>\r\n                    </div>\r\n\r\n                    <div class=\"mdl-cell mdl-cell--12-col mdl-cell--8-col-tablet mdl-cell--4-col-phone\">\r\n                      <p class=\"new_rx_popup_label\">Annotation:</p>\r\n\r\n                      <textarea autocomplete=\"off\" name=\"\" id=\"\" rows=\"3\" maxlength=\"500\" placeholder=\"\"\r\n                        [class]=\"{'edit-disable-data': commonServices.editPrescribedPrescription === true}\"\r\n                        [disabled]=\"commonServices.editPrescribedPrescription\"\r\n                        [(ngModel)]=\"this.commonServices.annotation\"\r\n                        class=\"w-100 new_rx_popup_tab_textarea rx-m-w-535p\"></textarea>\r\n                    </div>\r\n\r\n                    <div class=\"mdl-cell mdl-cell--12-col mdl-cell--8-col-tablet mdl-cell--4-col-phone\">\r\n                      <p class=\"new_rx_popup_label\">Reason For Prescription:</p>\r\n\r\n                      <textarea autocomplete=\"off\" name=\"\" id=\"\" rows=\"3\" maxlength=\"50\" placeholder=\"\"\r\n                        [class]=\"{'edit-disable-data': commonServices.editPrescribedPrescription === true}\"\r\n                        [disabled]=\"commonServices.editPrescribedPrescription\"\r\n                        [(ngModel)]=\"this.commonServices.prescriptionReason\"\r\n                        class=\"w-100 new_rx_popup_tab_textarea rx-m-w-535p\"></textarea>\r\n                    </div>\r\n\r\n                    <div class=\"mdl-cell mdl-cell--6-col mdl-cell--8-col-tablet mdl-cell--4-col-phone\">\r\n                      <p class=\"new_rx_popup_label\" style=\"text-transform: capitalize;\">\r\n                        {{this.getStateAuthorityLabel(commonServices.patientDetails.state)}}\r\n                      </p>\r\n\r\n                      <p style=\"margin: 0px;margin-top: -8px;margin-bottom: 10px;\">\r\n                        <span class=\"state-txt-color new_rx_popup_label_p\">(Relevant to\r\n                          {{ commonServices.patientDetails.state }})</span>\r\n                      </p>\r\n\r\n                      <input autocomplete=\"off\" type=\"text\" name=\"approval\" placeholder=\"\"\r\n                        [class]=\"{'edit-disable-data': commonServices.editPrescribedPrescription === true}\"\r\n                        [disabled]=\"commonServices.editPrescribedPrescription\" class=\"new_rx_popup_tab_input\"\r\n                        [(ngModel)]=\"commonServices.StateAuthorityNumber\" maxlength=\"25\"\r\n                        (keypress)=\"authorityNoValidation($event)\" (ngModelChange)=\"authorityNoChange($event)\" />\r\n                    </div>\r\n                  </div>\r\n                </div>\r\n                <div\r\n                  class=\"mdl-cell mdl-cell--6-col mdl-cell--4-col-tablet mdl-cell--4-col-phone new_rx_mobile_fullwidth\"\r\n                  [class]=\"{\r\n            'new_rx_no_authority':!showAuthorityBox(\r\n              commonServices.selectedFormulation!=null? commonServices.selectedFormulation.Restrictions:'',commonServices.PrescribeAS,commonServices.rxAuthority,commonServices.unlistedRA)\r\n            }\">\r\n                  <div *ngIf=\"\r\n                showAuthorityBox(\r\n                  commonServices.selectedFormulation!=null?  commonServices.selectedFormulation.Restrictions:'',\r\n                  commonServices.PrescribeAS,\r\n                  commonServices.rxAuthority,\r\n                  commonServices.unlistedRA\r\n                )\r\n              \">\r\n                    <div style=\"padding: 0px\" class=\"mdl-grid\">\r\n                      <div class=\"mdl-cell mdl-cell--8-col mdl-cell--6-col-tablet mdl-cell--4-col-phone\">\r\n                        <span class=\"new_rx_popup_label_New\">HOTLINE: <span\r\n                            class=\"new_rx_popup_label_span\">{{commonServices.PrescribeAS ==\r\n                            'RPBS'?'1800552580':'1800888333'}}</span></span>\r\n                      </div>\r\n                      <div class=\"mdl-cell mdl-cell--4-col mdl-cell--2-col-tablet mdl-cell--4-col-phone\">\r\n                        <div style=\"text-align: right\">\r\n                          <img src=\"https://passets.hola.health/rx-widgets/rx-mims.png\" alt=\"MIMS logo\"\r\n                            style=\"width: 80px; height: auto\" />\r\n                        </div>\r\n                      </div>\r\n                    </div>\r\n                    <div class=\"mdl-grid\" style=\"padding: 0px\">\r\n                      <div class=\"mdl-cell mdl-cell--6-col mdl-cell--4-col-tablet mdl-cell--4-col-phone\">\r\n                        <p class=\"new_rx_popup_label\">\r\n                          Prescriber Name:<span>{{\r\n                            commonServices.patientDetails.firstName +\r\n                            \" \" +\r\n                            commonServices.patientDetails.lastName\r\n                            }}</span>\r\n                        </p>\r\n                      </div>\r\n                      <div class=\"mdl-cell mdl-cell--6-col mdl-cell--4-col-tablet mdl-cell--4-col-phone\">\r\n                        <p class=\"new_rx_popup_label\">\r\n                          Prescriber Number:<span>{{\r\n                            commonServices.physicianDetails.prescriberNumber\r\n                            }}</span>\r\n                        </p>\r\n                      </div>\r\n                      <div class=\"mdl-cell mdl-cell--6-col mdl-cell--4-col-tablet mdl-cell--4-col-phone\">\r\n                        <p class=\"new_rx_popup_label\">\r\n                          Patient Medicare Number:<span>{{\r\n                            commonServices.patientDetails.medicareNumber\r\n                            ? commonServices.patientDetails.medicareNumber\r\n                            : \"\"\r\n                            }}</span>\r\n                        </p>\r\n                      </div>\r\n                      <div class=\"mdl-cell mdl-cell--6-col mdl-cell--4-col-tablet mdl-cell--4-col-phone\">\r\n                        <p class=\"new_rx_popup_label\">\r\n                          Authority Form No:\r\n                          <span>{{\r\n                            commonServices.authorityFormNo\r\n                            ? commonServices.authorityFormNo\r\n                            : \"\"\r\n                            }}</span>\r\n                        </p>\r\n                      </div>\r\n                    </div>\r\n                    <div class=\"mdl-grid\" style=\"width: 100%; padding: 0px\">\r\n                      <div\r\n                        class=\"mdl-cell mdl-cell--12-col mdl-cell--8-col-tablet mdl-cell--4-col-phone new_rx_mobile_fullwidth\">\r\n                        <p class=\"new_rx_popup_label\">Authority Item:</p>\r\n                        <p class=\"authority_item_text\" [innerHTML]=\"commonServices.rxDisplayName\"></p>\r\n\r\n                        <p class=\"new_rx_popup_label_p new_rx_popup_tab_smallBoxes\" style=\"margin: 0px\">\r\n                          Quantity:<span style=\"color: rgb(45, 45, 45); font-weight: 600\"> {{ commonServices.quantityVal\r\n                            }}</span> Repeats:<span style=\"color: rgb(45, 45, 45); font-weight: 600\">\r\n                            {{ commonServices.repeatsVal }}</span> Default\r\n                          Quantity:{{commonServices.selectedFormulation!=null&&commonServices.selectedFormulation.maxQtyUnits!=null?(commonServices.quantityWithUnitFlag?\"1\r\n                          x \":\"\")+commonServices.selectedFormulation.maxQtyUnits:\"\"}}\r\n                          Default\r\n                          Repeats:{{commonServices.selectedFormulation!=null&&commonServices.selectedFormulation.repeats!=null?\r\n                          commonServices.selectedFormulation.repeats:\"\"}}\r\n                        </p>\r\n\r\n                      </div>\r\n                    </div>\r\n                    <div class=\"mdl-grid\" style=\"padding: 0px\">\r\n                      <div class=\"mdl-cell mdl-cell--12-col mdl-cell--8-col-tablet mdl-cell--4-col-phone\">\r\n                        <p class=\"new_rx_popup_label\">\r\n                          PBS Listed Indication Authority:\r\n                        </p>\r\n                        <div class=\"w-100 new_rx_popup_tab_textarea\"\r\n                          style=\"min-height: 70px; max-height: 150px; overflow: auto\">\r\n                          <ul style=\"margin: 0px; padding-left: 15px;list-style: none;padding: 0px;\" *ngIf=\"\r\n                        this.isShowRestrictions == true &&\r\n                        commonServices.selectedFormulation.Restrictions !=\r\n                          null &&\r\n                        commonServices.selectedFormulation.Restrictions != ''\r\n                      \">\r\n                            <li style=\"font-size: 12px;padding: 0px 10px;margin-bottom: 10px;\"\r\n                              class=\"new_rx_pop_aut_int cursor\" *ngFor=\"\r\n                          let restriction of commonServices.selectedFormulation\r\n                           .Restrictions;\r\n                          index as i\r\n                        \" [class]=\"{\r\n                          new_rx_pop_aut_ins_select:\r\n                            commonServices.pbsListInstructionsId == i\r\n                        }\">\r\n                              <p style=\"\r\n                            margin: 0px;\r\n                            display: flex;\r\n                            align-content: center;\r\n                            margin-bottom: 10px;\r\n                          \" *ngIf=\"\r\n                            restriction.restrictionPreview != null &&\r\n                            restriction.restrictionPreview != '' &&\r\n                            restriction.restrictionText != null &&\r\n                            restriction.restrictionText != ''\r\n                          \">\r\n                                <span\r\n                                  [class]=\"{'edit-disable-data': commonServices.editPrescribedPrescription === true}\"\r\n                                  (click)=\"\r\n                          indicationAuthority(\r\n                            commonServices.selectedFormulation!=null? commonServices.selectedFormulation.maxQtyUnits:'',\r\n                            commonServices.quantityVal,\r\n                            commonServices.selectedFormulation!=null? commonServices.selectedFormulation.repeats:'',\r\n                            commonServices.repeatsVal,\r\n                            i,\r\n                            restriction\r\n                          )\r\n                       \">\r\n                                  <span class=\"rx_restrictionText\" style=\"font-size: 12px;\"\r\n                                    *ngIf=\"restriction.restrictionText.length < 80\"><b>{{\r\n                                      restriction.restrictionType }}</b> -\r\n                                    <span [innerHTML]=\"\r\n                                htmlToFormattedText(\r\n                                  restriction.restrictionPreview\r\n                                )\r\n                              \"></span></span></span>\r\n                                <span class=\"rx_restrictionText\" style=\"font-size: 12px;\"\r\n                                  *ngIf=\"restriction.restrictionText.length > 80\"><b (click)=\"\r\n                                  indicationAuthority(\r\n                                    commonServices.selectedFormulation!=null?commonServices.selectedFormulation.maxQtyUnits:'',\r\n                              commonServices.quantityVal,\r\n                              commonServices.selectedFormulation!=null?commonServices.selectedFormulation.repeats:'',\r\n                              commonServices.repeatsVal,\r\n                              i,\r\n                              restriction\r\n                            )\r\n                          \">{{\r\n                                    restriction.restrictionType }}</b> -\r\n                                  <span (click)=\"\r\n                                  indicationAuthority(\r\n                                    commonServices.selectedFormulation!=null?commonServices.selectedFormulation.maxQtyUnits:'',\r\n                              commonServices.quantityVal,\r\n                              commonServices.selectedFormulation!=null?commonServices.selectedFormulation.repeats:'',\r\n                              commonServices.repeatsVal,\r\n                              i,\r\n                              restriction\r\n                            )\r\n                          \" [innerHTML]=\"\r\n                                htmlToFormattedText(\r\n                                  restriction.restrictionPreview\r\n                                ).substring(0, 80)\r\n                              \"></span>...\r\n                                  <span>\r\n                                  </span>\r\n                                  <a style=\"cursor: pointer; color: #ff9978\" id=\"show-tooltip-id\">Show\r\n                                    More</a></span>\r\n                                <ng-template #tooltipdemo>\r\n                                  <p class=\"rx_tooltip_inner_box\" [innerHTML]=\"restriction.restrictionText\"></p>\r\n                                </ng-template>\r\n                              </p>\r\n                            </li>\r\n                          </ul>\r\n                        </div>\r\n                      </div>\r\n                      <div class=\"mdl-cell mdl-cell--12-col mdl-cell--8-col-tablet mdl-cell--4-col-phone\"\r\n                        style=\"padding: 0px\">\r\n                        <!-- <div class=\"mdl-cell mdl-cell--12-col mdl-cell--8-col-tablet mdl-cell--4-col-phone\">\r\n                          <p class=\"new_rx_popup_label\">PBS Notes:</p>\r\n                          <textarea autocomplete=\"off\" name=\"\" id=\"\" rows=\"2\" maxlength=\"500\" placeholder=\"\"\r\n                            [class]=\"{'edit-disable-data': commonServices.editPrescribedPrescription === true}\"\r\n                            class=\"w-100 new_rx_popup_tab_textarea\"\r\n                            [disabled]=\"commonServices.editPrescribedPrescription\"\r\n                            [(ngModel)]=\"commonServices.pbsNotes\"></textarea>\r\n                        </div> -->\r\n                        <div class=\"mdl-cell mdl-cell--12-col mdl-cell--8-col-tablet mdl-cell--4-col-phone\">\r\n                          <p class=\"new_rx_popup_label\">\r\n                            Indication For This Authority:\r\n                          </p>\r\n                          <textarea autocomplete=\"off\" name=\"\" id=\"\" rows=\"2\" placeholder=\"\"\r\n                            [class]=\"{'edit-dsable-data': commonServices.editPrescribedPrescription === true}\"\r\n                            [disabled]=\"commonServices.editPrescribedPrescription\"\r\n                            [(ngModel)]=\"commonServices.pbsListInstructions\" (ngModelChange)=\"onInputChange($event)\"\r\n                            class=\"w-100 new_rx_popup_tab_textarea rx-m-w-100\"></textarea>\r\n                        </div>\r\n                        <div class=\"mdl-cell mdl-cell--12-col mdl-cell--8-col-tablet mdl-cell--4-col-phone\">\r\n                          <p class=\"new_rx_popup_label\">\r\n                            {{\r\n                            getAuthorityLabel(commonServices.patientDetails.state)\r\n                            }}\r\n                          </p>\r\n                          <input autocomplete=\"off\" type=\"text\" name=\"approval\" placeholder=\"\"\r\n                            [class]=\"{'edit-dsable-data': commonServices.editPrescribedPrescription === true}\"\r\n                            [disabled]=\"commonServices.editPrescribedPrescription\" class=\"new_rx_popup_tab_input\"\r\n                            [(ngModel)]=\"commonServices.approvalNo\" (ngModelChange)=\"onInputchangeApprovalNo($event)\"\r\n                            (keypress)=\"authorityNoValidation($event)\" />\r\n                        </div>\r\n                      </div>\r\n                    </div>\r\n                  </div>\r\n                  <div *ngIf=\"\r\n                !showAuthorityBox(\r\n                  commonServices.selectedFormulation!=null? commonServices.selectedFormulation.Restrictions:'',\r\n                  commonServices.PrescribeAS,\r\n                  commonServices.rxAuthority,\r\n                  commonServices.unlistedRA\r\n                )\r\n              \" style=\"width: 100%;\">\r\n                    <div style=\"text-align: right\" *ngIf=\"!commonServices.isMedicineRestrict\">\r\n                      <img src=\"https://passets.hola.health/rx-widgets/rx-mims.png\" alt=\"MIMS logo\"\r\n                        style=\"width: 80px; height: auto\" />\r\n                    </div>\r\n                    <div class=\"No_Authority_box\">\r\n                      <p>No Authority Required</p>\r\n                    </div>\r\n                  </div>\r\n                </div>\r\n              </div>\r\n            </div>\r\n          </div>\r\n          <div class=\"rx_footer\">\r\n            <div class=\"rx_footer_brand\">\r\n              <p class=\"ml-10\"><span>Hola Consult | 1.0 <span *ngIf=\"commonServices.sandbox\">| <span\r\n                      class=\"rx_staging\">This is a sandbox environment</span></span></span></p>\r\n              <p class=\"mt-15p\">\r\n                <span class=\"rx_popup_footer_text\">© 2026 Hola Health, a brand of Packapill Pty Ltd | v\r\n                  1.1.3 |\r\n                  <a href=\"https://hola.health/consult-terms\" target=\"_blank\">Terms</a> |\r\n                  <a href=\"https://hola.health/consult-privacy-policy\" target=\"_blank\">Privacy Policy</a> |\r\n                  <a href=\"mailto:support@hola.health\" target=\"_blank\">Help</a></span>\r\n              </p>\r\n            </div>\r\n          </div>\r\n        </div>\r\n      </div>\r\n    </div>\r\n  </div>\r\n</div>","import { ComponentFactoryResolver, Inject, Injectable, Injector, TemplateRef } from '@angular/core';\r\nimport { DOCUMENT, DatePipe } from '@angular/common';\r\nimport { ReferralRxComponent } from '../referral-rx/referral-rx.component';\r\nimport { RxComponent } from '../rx/rx.component';\r\nimport { Subject, throwError } from 'rxjs';\r\nimport { environment } from '../environments/environment';\r\n\r\n@Injectable({\r\n  providedIn: 'root',\r\n})\r\nexport class CommonServices {\r\n  notifications: any;\r\n  private modalNotifier?: Subject<string>;\r\n  private SubPopupOpen?: Subject<string>;\r\n  constructor(\r\n    private resolver: ComponentFactoryResolver,\r\n    private injector: Injector,\r\n    @Inject(DOCUMENT) private document: Document,\r\n    public datePipe: DatePipe\r\n  ) {\r\n\r\n  }\r\n\r\n  logvalue: any = null;\r\n  HolaRxToken: any = \"\";\r\n  visitId: any = \"\";\r\n  AddressSendToAddType = '';\r\n  isPrintAvailable = false;\r\n  rxDetails: any = {};\r\n  rxid: any = '';\r\n  consultationId: string = \"\";\r\n  facilityDetails: any = {};\r\n  patientDetails: any = {};\r\n  physicianDetails: any = {};\r\n  vendorFacilityId: any = \"\";\r\n  vendorPatientId: any = \"\";\r\n  vendorPhysicianId: any = \"\";\r\n  isShowRestrictions: any = false;\r\n  authorityFormNo = '';\r\n  showMedModal = false;\r\n  isFetching = true;\r\n  mediSearchValue = '';\r\n  searchedMedicineList = [];\r\n  rxOnlyPBS = false;\r\n  selectedMedicineList: any = [];\r\n  favouriteMedicineList: any = [];\r\n  originalFavouriteMedicineList: any = [];\r\n  selectedMedicineListOrginal: any = [];\r\n  selectedFormulation: any = null;\r\n  quantityVal: any = '1';\r\n  repeatsVal = '0';\r\n  doseSearchValue = '';\r\n  doseValue = 1;\r\n  freqValue = 1;\r\n  freqSearchValue = '';\r\n  foodSearchValue = '';\r\n  InstructionSearchValue = 'As directed';\r\n  Instructiontiltle = \"\";\r\n  complexId = 7;\r\n  instVal = 1;\r\n  routeSearchValue = 'Oral';\r\n  rxPRN = false;\r\n  PrescribeAS = 'Private';\r\n  scriptDate = this.datePipe.transform(new Date(), 'dd-MM-yyyy');\r\n  startDate: any = this.datePipe.transform(new Date(), 'dd-MM-yyyy');\r\n  endDate: any = '';\r\n  daysBtnRepeatsVal = '';\r\n  purposeSearchValue = '';\r\n  BrandSubstitutesNotAllow = false;\r\n  isBrandName = false;\r\n  regulation24 = false;\r\n  CTGCoPayment = false;\r\n  annotation = '';\r\n  prescriptionReason = '';\r\n  StateAuthorityNumber = '';\r\n  pbsListInstructions = '';\r\n  pbsNotes = '';\r\n  pbsListInstructionsAut = '';\r\n  approvalNo = '';\r\n  prescribeMedLoader = false;\r\n  // PrescribeAS_radio1= true;\r\n  rxAuthority = false;\r\n  doctorNotes = '';\r\n  scriptType = '';\r\n  editPrescribedPrescription = false;\r\n  editPrescription = false;\r\n  rxDisplayName = '';\r\n  eopDisplayName = '';\r\n  // prescribedItemReservedThree = '';\r\n  prescribedItemReservedFour = '';\r\n  selectedBrandFormulation: any = null;\r\n  unlistedRA = false;\r\n  rxnumber = '';\r\n  rxemailId = '';\r\n  unUsualDoseFlag = false;\r\n  pbsListInstructionsId: any = null;\r\n  lemi = false;\r\n  lmbc = false;\r\n  createPatientResponse: any;\r\n  isShowAuthority = false;\r\n  closeErrorResponse: any = null;\r\n  tempflag = false;\r\n  logidentifier = \"\";\r\n  logtransaction = \"\";\r\n  logidentifierType = \"\";\r\n  attachtoastflag = true;\r\n  sendToPharmacyValue = '';\r\n  sendToPharmacy = false;\r\n  mySLConsent = false;\r\n  emergencySupply = false;\r\n  isS8WarningNext = false;\r\n  sandbox = true;\r\n  searchApiStopFlag = true;\r\n  MIMSSecondaryapi: any;\r\n  MIMSPrimaryapi: any;\r\n  quantityWithUnitFlag = false;\r\n  isMedicineRestrict = false;\r\n  smartSearch = false;\r\n  isScriptToPharmacy = 0;\r\n  pharmacyEmail = \"\";\r\n  favouriteEncryptedId = \"\";\r\n  enablePaperScript = false;\r\n  enableSendPaperScriptInMail = false;\r\n  enableSendEScriptInMail = false;\r\n  enableEScript = false;\r\n  clearMedicalPrescriptionData() {\r\n    try {\r\n      this.unUsualDoseFlag = false;\r\n      // this.rxid = \"\";\r\n      this.showMedModal = false;\r\n      this.isFetching = true;\r\n      this.mediSearchValue = '';\r\n      this.searchedMedicineList = [];\r\n      this.rxOnlyPBS = false;\r\n      this.selectedMedicineList = [];\r\n      this.selectedMedicineListOrginal = [];\r\n      this.selectedFormulation = null;\r\n      this.quantityVal = '1';\r\n      this.repeatsVal = '0';\r\n      this.doseSearchValue = '';\r\n      this.doseValue = 1;\r\n      this.freqValue = 1;\r\n      this.freqSearchValue = '';\r\n      this.foodSearchValue = '';\r\n      this.InstructionSearchValue = 'As directed';\r\n      this.Instructiontiltle = \"\";\r\n      this.complexId = 7;\r\n      this.instVal = 1;\r\n      this.routeSearchValue = 'Oral';\r\n      this.rxPRN = false;\r\n      this.PrescribeAS = 'Private';\r\n      this.scriptDate = this.datePipe.transform(new Date(), 'yyyy-MM-dd');\r\n      this.startDate = this.datePipe.transform(new Date(), 'yyyy-MM-dd');\r\n      this.endDate = '';\r\n      this.daysBtnRepeatsVal = '';\r\n      this.purposeSearchValue = '';\r\n      this.BrandSubstitutesNotAllow = false;\r\n      this.isBrandName = false;\r\n      this.regulation24 = false;\r\n      this.CTGCoPayment = false;\r\n      this.sendToPharmacyValue = '';\r\n      this.sendToPharmacy = false;\r\n      this.annotation = '';\r\n      this.prescriptionReason = '';\r\n      this.StateAuthorityNumber = '';\r\n      this.pbsListInstructions = '';\r\n      this.pbsNotes = '';\r\n      this.pbsListInstructionsAut = '';\r\n      this.approvalNo = '';\r\n      this.prescribeMedLoader = false;\r\n      // PrescribeAS_radio1= true;\r\n      this.rxAuthority = false;\r\n      this.doctorNotes = '';\r\n      this.scriptType = '';\r\n      this.editPrescribedPrescription = false;\r\n      this.rxDisplayName = '';\r\n      this.eopDisplayName = '';\r\n      // this.prescribedItemReservedThree = '';\r\n      this.prescribedItemReservedFour = '';\r\n      this.selectedBrandFormulation = null;\r\n      this.unlistedRA = false;\r\n      this.rxnumber = '';\r\n      this.rxemailId = '';\r\n      this.isShowAuthority = false;\r\n      this.pbsListInstructions = '';\r\n      this.mySLConsent = false;\r\n      this.emergencySupply = false;\r\n      this.isS8WarningNext = false;\r\n      this.quantityWithUnitFlag = false;\r\n      if (!this.IsNullOrEmpty(this.MIMSPrimaryapi)) {\r\n        this.MIMSPrimaryapi.unsubscribe();\r\n      }\r\n      if (!this.IsNullOrEmpty(this.MIMSSecondaryapi)) {\r\n        this.MIMSSecondaryapi.unsubscribe();\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.setlogvalue(false, ex.message, ex.stack, \"CommonServices\", \"clearMedicalPrescriptionData\");\r\n    }\r\n  }\r\n\r\n  clearMedicalPrescriptionFavouriteData() {\r\n    try {\r\n      this.unUsualDoseFlag = false;\r\n      // this.rxid = \"\";\r\n      this.showMedModal = false;\r\n      this.isFetching = true;\r\n      this.mediSearchValue = '';\r\n      this.searchedMedicineList = [];\r\n      this.rxOnlyPBS = false;\r\n      // this.selectedMedicineList = [];\r\n      // this.selectedMedicineListOrginal = [];\r\n      this.selectedFormulation = null;\r\n      this.quantityVal = '1';\r\n      this.repeatsVal = '0';\r\n      this.doseSearchValue = '';\r\n      this.doseValue = 1;\r\n      this.freqValue = 1;\r\n      this.freqSearchValue = '';\r\n      this.foodSearchValue = '';\r\n      this.InstructionSearchValue = 'As directed';\r\n      this.Instructiontiltle = \"\";\r\n      this.complexId = 7;\r\n      this.instVal = 1;\r\n      this.routeSearchValue = 'Oral';\r\n      this.rxPRN = false;\r\n      this.PrescribeAS = 'Private';\r\n      this.scriptDate = this.datePipe.transform(new Date(), 'yyyy-MM-dd');\r\n      this.startDate = this.datePipe.transform(new Date(), 'yyyy-MM-dd');\r\n      this.endDate = '';\r\n      this.daysBtnRepeatsVal = '';\r\n      this.purposeSearchValue = '';\r\n      this.BrandSubstitutesNotAllow = false;\r\n      this.isBrandName = false;\r\n      this.regulation24 = false;\r\n      this.CTGCoPayment = false;\r\n      this.sendToPharmacyValue = '';\r\n      this.sendToPharmacy = false;\r\n      this.annotation = '';\r\n      this.prescriptionReason = '';\r\n      this.StateAuthorityNumber = '';\r\n      this.pbsListInstructions = '';\r\n      this.pbsNotes = '';\r\n      this.pbsListInstructionsAut = '';\r\n      this.approvalNo = '';\r\n      this.prescribeMedLoader = false;\r\n      // PrescribeAS_radio1= true;\r\n      this.rxAuthority = false;\r\n      this.doctorNotes = '';\r\n      this.scriptType = '';\r\n      this.editPrescribedPrescription = false;\r\n      this.rxDisplayName = '';\r\n      this.eopDisplayName = '';\r\n      // this.prescribedItemReservedThree = '';\r\n      this.prescribedItemReservedFour = '';\r\n      this.selectedBrandFormulation = null;\r\n      this.unlistedRA = false;\r\n      this.rxnumber = '';\r\n      this.rxemailId = '';\r\n      this.isShowAuthority = false;\r\n      this.pbsListInstructions = '';\r\n      this.mySLConsent = false;\r\n      this.emergencySupply = false;\r\n      this.isS8WarningNext = false;\r\n      this.quantityWithUnitFlag = false;\r\n      if (!this.IsNullOrEmpty(this.MIMSPrimaryapi)) {\r\n        this.MIMSPrimaryapi.unsubscribe();\r\n      }\r\n      if (!this.IsNullOrEmpty(this.MIMSSecondaryapi)) {\r\n        this.MIMSSecondaryapi.unsubscribe();\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.setlogvalue(false, ex.message, ex.stack, \"CommonServices\", \"clearMedicalPrescriptionData\");\r\n    }\r\n  }\r\n\r\n  clearMedicalPrescriptionDataOnchangeofMedicine(med: any) {\r\n    try {\r\n      this.setEndDateAhead();\r\n      this.doseSearchValue = '';\r\n      this.doseValue = 1;\r\n      this.freqValue = 1;\r\n      this.freqSearchValue = '';\r\n      this.foodSearchValue = '';\r\n      this.rxPRN = false;\r\n      this.daysBtnRepeatsVal = '';\r\n      this.purposeSearchValue = '';\r\n      this.InstructionSearchValue = 'As directed';\r\n      this.Instructiontiltle = \"\";\r\n      this.complexId = 7;\r\n      this.instVal = 1;\r\n      this.routeSearchValue = 'Oral';\r\n      if (this.isMedicineRestrict && !this.IsNullOrEmpty(med) && !this.IsNullOrEmpty(med.numberOfPack) && med.numberOfPack != 0) {\r\n        this.quantityVal = med.numberOfPack;\r\n        this.quantityWithUnitFlag = false;\r\n      }\r\n      else if (!this.IsNullOrEmpty(med) && !this.IsNullOrEmpty(med.maxQtyUnits)) {\r\n        var quantityUnit = med.maxQtyUnits.match(/[a-wy-zA-WY-Z]+/g);\r\n        if (!this.IsNullOrEmpty(quantityUnit) && quantityUnit.length > 0) {\r\n          this.quantityVal = 1;\r\n          this.quantityWithUnitFlag = true;\r\n        }\r\n        else {\r\n          this.quantityVal = med.maxQtyUnits;\r\n          this.quantityWithUnitFlag = false;\r\n        }\r\n      }\r\n      else {\r\n        this.quantityVal = \"\";\r\n        this.quantityWithUnitFlag = false;\r\n      }\r\n      this.repeatsVal = !this.IsNullOrEmpty(med) && !this.IsNullOrEmpty(med.repeats) ? med.repeats : '';\r\n      this.annotation = '';\r\n      this.prescriptionReason = '';\r\n      this.StateAuthorityNumber = '';\r\n      this.pbsListInstructions = '';\r\n      this.pbsNotes = '';\r\n      this.pbsListInstructionsAut = '';\r\n      this.approvalNo = '';\r\n      this.rxAuthority = false;\r\n      this.doctorNotes = '';\r\n      this.unlistedRA = false;\r\n      this.unUsualDoseFlag = false;\r\n      this.pbsListInstructionsId = null;\r\n      this.pbsListInstructions = '';\r\n      this.editPrescribedPrescription = false;\r\n      this.BrandSubstitutesNotAllow = false;\r\n      this.regulation24 = false;\r\n      this.CTGCoPayment = false;\r\n      this.prescribedItemReservedFour = \"\";\r\n      this.mySLConsent = false;\r\n      this.emergencySupply = false;\r\n      this.sendToPharmacyValue = '';\r\n      this.sendToPharmacy = false;\r\n      this.isBrandName = false;\r\n      this.endDate = \"\";\r\n      if (!this.IsNullOrEmpty(med) && !this.IsNullOrEmpty(med.pbsType) && med.pbsType.toLowerCase() == 'non pbs') {\r\n        this.PrescribeAS = 'Private';\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.setlogvalue(false, ex.message, ex.stack, \"CommonServices\", \"clearMedicalPrescriptionDataOnchangeofMedicine\");\r\n    }\r\n  }\r\n\r\n  setEndDateAhead() {\r\n    try {\r\n      var today = new Date();\r\n      // var tomorrow = new Date();\r\n      // tomorrow.setDate(today.getDate() + 2);\r\n      this.startDate = this.datePipe.transform(today, 'yyyy-MM-dd');\r\n      this.scriptDate = this.datePipe.transform(today, 'yyyy-MM-dd');\r\n      // this.setState({ endDate: moment(tomorrow).format(\"yyyy-MM-DD\") });\r\n    }\r\n    catch (ex: any) {\r\n      this.setlogvalue(false, ex.message, ex.stack, \"CommonServices\", \"setEndDateAhead\");\r\n    }\r\n  }\r\n\r\n  rxEndDateCalculater() {\r\n    try {\r\n      var quantity = !this.IsNullOrEmpty(this.quantityVal) ? parseInt(this.quantityVal) : 1;\r\n      var repeats = !this.IsNullOrEmpty(this.repeatsVal) ? parseInt(this.repeatsVal) + 1 : 1;\r\n      if (!this.IsNullOrEmpty(this.doseValue) && !this.IsNullOrEmpty(this.freqValue) && !this.IsNullOrEmpty(this.instVal) && !this.IsNullOrEmpty(this.startDate)) {\r\n        var rxDateNew = new Date(this.startDate);\r\n        if (!this.IsNullOrEmpty(rxDateNew) && rxDateNew.toString().toLowerCase() != 'invalid date') {\r\n          var rxDateCal = Math.ceil((quantity * repeats) / (this.doseValue * this.freqValue)) * this.instVal;\r\n          rxDateNew.setDate(rxDateNew.getDate() + rxDateCal);\r\n          if (!this.IsNullOrEmpty(rxDateNew) && rxDateNew.toString().toLowerCase() != 'invalid date')\r\n            this.endDate = this.datePipe.transform(rxDateNew, 'yyyy-MM-dd');\r\n        }\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.setlogvalue(false, ex.message, ex.stack, \"CommonServices\", \"rxEndDateCalculater\");\r\n    }\r\n  }\r\n\r\n  dialogopen(test: any, content: TemplateRef<any>, data?: any) {\r\n    try {\r\n      const modalComponentFactory = this.resolver.resolveComponentFactory(test);\r\n      const contentViewRef = content.createEmbeddedView(null);\r\n      const modalComponent: any = modalComponentFactory.create(this.injector, [\r\n        contentViewRef.rootNodes,\r\n      ]);\r\n\r\n      if (data) modalComponent.instance.modaldata = data;\r\n      //   modalComponent.instance.size = options?.size;\r\n      //   modalComponent.instance.title = options?.title;\r\n      modalComponent.instance.closeEvent.subscribe((res: any) => {\r\n        this.SubPopupOpen?.next(res);\r\n        // this.SubPopupOpen?.complete();\r\n        // modalComponent.destroy();\r\n      });\r\n\r\n      modalComponent.hostView.detectChanges();\r\n\r\n      this.document.body.appendChild(modalComponent.location.nativeElement);\r\n      this.SubPopupOpen = new Subject();\r\n      return this.SubPopupOpen?.asObservable();\r\n    }\r\n    catch (ex: any) {\r\n      this.setlogvalue(false, ex.message, ex.stack, \"CommonServices\", \"dialogopen\");\r\n      return throwError(() => new Error(ex));\r\n    }\r\n  }\r\n\r\n  toastopen(message: string, Messageflag: string, code?: any, time?: any) {\r\n    try {\r\n      const toast: any = document.createElement(\"div\");\r\n      let innerHTMLContent = `<div style=\"margin-bottom:7px;\"><div class=\"Rx-toast`;\r\n      if (Messageflag.toLowerCase() == \"success\") {\r\n        innerHTMLContent += ` RX_toast_suc_color`;\r\n      }\r\n      else if (Messageflag.toLowerCase() == \"error\") {\r\n        innerHTMLContent += ` RX_toast_err_color`;\r\n      }\r\n      else {\r\n        innerHTMLContent += ` RX_toast_war_color`;\r\n      };\r\n      innerHTMLContent += ` alert_pop\" tabindex=\"-1\" role=\"dialog\"><div class=\"icon_cls\">`;\r\n      if (Messageflag.toLowerCase() === 'error') {\r\n        innerHTMLContent += `\r\n                <i class=\"material-icons md-24 alert_icon\" style=\"color: #ff0000bf\">error</i>`;\r\n      } else if (Messageflag.toLowerCase() === 'success') {\r\n        innerHTMLContent += `\r\n                <i class=\"material-icons md-24 alert_icon success_msg\" style=\"color: white !important\">done</i>`;\r\n      } else if (Messageflag.toLowerCase() === 'warning') {\r\n        innerHTMLContent += `\r\n                <i class=\"material-icons md-24 alert_icon\" style=\"color: #E4A11D\">report_problem</i>`;\r\n      }\r\n      innerHTMLContent += `</div><div class=\"rx-toast-body\">`;\r\n      if (!this.IsNullOrEmpty(code) && Messageflag.toLowerCase() == \"error\") {\r\n        innerHTMLContent += `${code}: `\r\n      }\r\n      innerHTMLContent += `${message}</div>\r\n      <div style=\"display:flex;align-items: center;\"> \r\n            <i class=\"material-icons md-24 alert_icon RX-close-icon\" style=\"color: black;cursor: pointer;\" >close</i>\r\n      </div> </div> </div> `;\r\n      if (this.attachtoastflag) {\r\n        this.notifications = document.createElement(\"div\");\r\n        this.notifications.className = \"notifications\";\r\n        document.body.appendChild(this.notifications);\r\n        this.attachtoastflag = false;\r\n      }\r\n      toast.innerHTML = innerHTMLContent;\r\n      this.notifications = document.querySelector(\".notifications\");\r\n      this.notifications.appendChild(toast);\r\n      const closeIcon = toast.querySelector('.RX-close-icon');\r\n      if (closeIcon) {\r\n        closeIcon.addEventListener('click', () => this.removeToast(toast));\r\n      }\r\n      if (Messageflag.toLowerCase() != 'error') {\r\n        toast.timeoutId = setTimeout(() => this.removeToast(toast), time ? time : 4000);\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.setlogvalue(false, ex.message, ex.stack, \"CommonServices\", \"toastopen\");\r\n    }\r\n  }\r\n\r\n  validByMobileNo(mob: any) {\r\n    try {\r\n      var aufrmt = '^04[0-9]{8}';\r\n      if (mob == null || mob == '' || mob == undefined) {\r\n        return 1;\r\n      }\r\n      if (mob.length > 10) {\r\n        return 3;\r\n      }\r\n      if (mob.length == 9 && mob.charAt(0) != 0) {\r\n        mob = '0' + mob;\r\n      }\r\n      if (mob.match(aufrmt)) {\r\n        return 2;\r\n      } else {\r\n        return 3;\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.setlogvalue(false, ex.message, ex.stack, \"CommonServices\", \"validByMobileNo\");\r\n      return 3;\r\n    }\r\n  }\r\n\r\n  getCredetial() {\r\n    try {\r\n      var credetial = JSON.parse(localStorage.getItem(\"rxCredentials\") as any);\r\n      if (!this.IsNullOrEmpty(credetial))\r\n        return credetial.clientId;\r\n      else\r\n        return \"\"\r\n    }\r\n    catch (ex: any) {\r\n      this.setlogvalue(false, ex.message, ex.stack, \"CommonServices\", \"getCredetial\");\r\n      return \"\";\r\n    }\r\n\r\n  }\r\n\r\n  validByEmailNo(email: any) {\r\n    try {\r\n      email = email.replace(/^\\s+|\\s+$/gm, '');\r\n      var regex = /^([a-zA-Z0-9_.+-])+\\@(([a-zA-Z0-9-])+\\.[a-z]{2,3})+$/;\r\n      return regex.test(email);\r\n    }\r\n    catch (ex: any) {\r\n      this.setlogvalue(false, ex.message, ex.stack, \"CommonServices\", \"validByEmailNo\");\r\n      return false;\r\n    }\r\n  }\r\n\r\n  validBy(val: any, message: any) {\r\n    try {\r\n      var s = new String(val);\r\n      if (\r\n        val == null ||\r\n        s.trim() == '' ||\r\n        val == undefined ||\r\n        val == '0' ||\r\n        val == 'Not Available'\r\n      ) {\r\n        // this.toastr.error(\"Please enter \" + message);\r\n        return true;\r\n      }\r\n      return false;\r\n    }\r\n    catch (ex: any) {\r\n      this.setlogvalue(false, ex.message, ex.stack, \"CommonServices\", \"validBy\");\r\n      return false;\r\n    }\r\n  }\r\n\r\n  getScheduleNumber(selectedFormulation: any) {\r\n    try {\r\n      if (!this.IsNullOrEmpty(selectedFormulation?.poisonClassification?.poisonClasses) && selectedFormulation.poisonClassification.poisonClasses.length > 0) {\r\n        if (selectedFormulation.poisonClassification.poisonClasses[0].toLowerCase() == \"unscheduled\") {\r\n          return \"\";\r\n        } else {\r\n          return selectedFormulation.poisonClassification.poisonClasses[0];\r\n        }\r\n      } else {\r\n        return \"\";\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.setlogvalue(false, ex.message, ex.stack, \"CommonServices\", \"getScheduleNumber\");\r\n      return \"\"\r\n    }\r\n\r\n  }\r\n\r\n  // Opening the Pathology popup\r\n  Pathology(content: TemplateRef<any>, data?: any) {\r\n    return this.dialogopen(ReferralRxComponent, content, data);\r\n  }\r\n\r\n  // Opening the main popup\r\n  openRxWidget(content: TemplateRef<any>, data?: any) {\r\n    try {\r\n      const modalComponentFactory = this.resolver.resolveComponentFactory(RxComponent);\r\n      const contentViewRef = content.createEmbeddedView(null);\r\n      const modalComponent: any = modalComponentFactory.create(this.injector, [\r\n        contentViewRef.rootNodes,\r\n      ]);\r\n      if (data) {\r\n        modalComponent.instance.modaldata = data;\r\n      }\r\n      //   modalComponent.instance.size = options?.size;\r\n      //   modalComponent.instance.title = options?.title;\r\n      modalComponent.instance.closeEvent.subscribe((res: any) => {\r\n        this.modalNotifier?.next(res);\r\n        // this.modalNotifier?.complete();\r\n        // modalComponent.destroy();\r\n      });\r\n      modalComponent.hostView.detectChanges();\r\n      this.document.body.appendChild(modalComponent.location.nativeElement);\r\n      this.modalNotifier = new Subject();\r\n      return this.modalNotifier?.asObservable();\r\n    }\r\n    catch (ex: any) {\r\n      this.setlogvalue(false, ex.message, ex.stack, \"CommonServices\", \"openRxWidget\");\r\n      return throwError(() => new Error(ex));\r\n    }\r\n  }\r\n\r\n  removeToast(toast: any) {\r\n    try {\r\n      toast.classList.add(\"rx-toast-hide\");\r\n      if (toast.timeoutId) clearTimeout(toast.timeoutId);\r\n      setTimeout(() => toast.remove(), 500);\r\n    }\r\n    catch (ex: any) {\r\n      this.setlogvalue(false, ex.message, ex.stack, \"CommonServices\", \"removeToast\");\r\n    }\r\n  }\r\n\r\n  removeErrToast() {\r\n    try {\r\n      var errorToasters: any = Array.from(this.document.getElementsByClassName(\"RX_toast_err_color\"));\r\n      if (!this.IsNullOrEmpty(errorToasters) && errorToasters.length > 0) {\r\n        errorToasters.forEach((errtoast: any) => {\r\n          if (!this.IsNullOrEmpty(errtoast?.parentNode?.parentNode)) {\r\n            var parentElement = errtoast.parentNode.parentNode;\r\n            if (!this.IsNullOrEmpty(parentElement)) {\r\n              parentElement.classList.add(\"rx-toast-hide\");\r\n              setTimeout(() => parentElement.remove(), 500);\r\n            }\r\n          }\r\n        });\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.setlogvalue(false, ex.message, ex.stack, \"CommonServices\", \"removeErrToast\");\r\n    }\r\n  }\r\n\r\n  errorResponse(code: any, message: any, successflag: boolean = false, data?: any) {\r\n    try {\r\n      var response: any = {\r\n        status: successflag ? \"success\" : \"error\",\r\n        response: {\r\n          response_code: successflag ? code : \"\",\r\n          response_message: successflag ? message : \"\"\r\n        },\r\n        error: {\r\n          error_code: !successflag ? code : \"\",\r\n          error_message: !successflag ? message : \"\"\r\n        }\r\n      }\r\n\r\n      if (data != undefined && data != null) {\r\n        data.status = response.status;\r\n        data.response = response.response;\r\n        data.error = response.error;\r\n        response = data;\r\n      }\r\n\r\n      if (successflag) {\r\n        this.closeErrorResponse = response;\r\n      } else {\r\n        if (this.closeErrorResponse == undefined || this.closeErrorResponse == null) {\r\n          this.tempflag = true;\r\n          this.closeErrorResponse = response;\r\n        } else {\r\n          var temp_data = this.closeErrorResponse;\r\n          if (this.tempflag) {\r\n            this.tempflag = false;\r\n            temp_data = {\r\n              status: this.closeErrorResponse.status,\r\n              error: [{ error_code: this.closeErrorResponse.error.error_code, error_message: this.closeErrorResponse.error.error_message }],\r\n              response: { response_code: this.closeErrorResponse.response.response_code, response_message: this.closeErrorResponse.response.response_message }\r\n            }\r\n          }\r\n          var index = temp_data.error.findIndex((res: any) => res.error_code == response.error.error_code);\r\n          temp_data.error.push(response.error);\r\n          if (temp_data.error.length > 0 && index >= 0)\r\n            temp_data.error = temp_data.error.splice(index, 1);\r\n          if (temp_data.error.length == 1) {\r\n            temp_data.error = temp_data.error[0];\r\n            this.tempflag = true;\r\n          }\r\n          this.closeErrorResponse = temp_data;\r\n        }\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.setlogvalue(false, ex.message, ex.stack, \"CommonServices\", \"errorResponse\");\r\n    }\r\n  }\r\n\r\n  setlogvalue(flag: boolean, errormessage: string, stacktrace: string, module: string, functionname: string, requestPayload?: any,) {\r\n    this.logvalue = {\r\n      identifier: flag ? \"Init Authentication\" : this.logidentifier,\r\n      identifierType: flag ? \"clientid\" : this.logidentifierType,\r\n      transaction: flag ? \"clientid\" : this.logtransaction,\r\n      module: module,\r\n      function: functionname,\r\n      exceptionCode: \"UI000\",\r\n      message: errormessage,\r\n      stackTrace: stacktrace,\r\n      requestPayload: requestPayload ? JSON.stringify(requestPayload) : \"\"\r\n    };\r\n  }\r\n\r\n  IsNullOrEmpty(value: any): boolean {\r\n    try {\r\n      if (value === undefined || value === null || value === \"\" || value === \"NaN\") {\r\n        return true;\r\n      }\r\n      return false;\r\n    }\r\n    catch (ex: any) {\r\n      this.setlogvalue(false, ex.message, ex.stack, \"CommonServices\", \"IsNullOrEmpty\");\r\n      return false;\r\n    }\r\n  }\r\n}\r\n\r\n@Injectable({\r\n  providedIn: 'root',\r\n})\r\nexport class CommonLoaderServices {\r\n  fullScreenLoader: boolean = false;\r\n  rxLoader: any;\r\n  rxInitFlag = true;\r\n  rxInitLoaderHiddden = true;\r\n  constructor(private commonservice: CommonServices) {\r\n  }\r\n\r\n  addLoaderElement(visible: boolean) {\r\n    try {\r\n      const loadervalue: any = document.createElement(\"div\");\r\n      if (this.rxInitFlag) {\r\n        this.rxLoader = document.createElement(\"div\");\r\n        this.rxLoader.className = \"loader_view\";\r\n        document.body.appendChild(this.rxLoader);\r\n        let innerHTMLContent = `<div class=\"RX_splash loader_hidden \"> <div class=\"Rx_splash_align\">\r\n      <div style=\"text-align: center;\"> <img class=\"spinner-img\"\r\n            src=\"https://passets.hola.health/rx-widgets/rx-hola-health-spinner-1.png\" alt=\"hola_health\">\r\n      </div>\r\n      <div class=\"Rx_spinner\">Loading...</div>\r\n      </div>\r\n      </div>`;\r\n        this.rxLoader.innerHTML = innerHTMLContent;\r\n        this.rxLoader = document.querySelector(\".loader_view\");\r\n        this.rxLoader.appendChild(loadervalue);\r\n        this.rxInitFlag = false;\r\n      }\r\n      const splashElement = this.rxLoader.querySelector(\".RX_splash\");\r\n      if (visible) {\r\n        splashElement.classList.add(\"loader_visible\");\r\n        splashElement.classList.remove(\"loader_hidden\");\r\n      } else {\r\n        splashElement.classList.remove(\"loader_visible\");\r\n        splashElement.classList.add(\"loader_hidden\");\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.commonservice.setlogvalue(false, ex.message, ex.stack, \"CommonLoaderServices\", \"addLoaderElement\");\r\n    }\r\n  }\r\n\r\n}\r\n\r\n@Injectable({\r\n  providedIn: 'root',\r\n})\r\nexport class ConsoleToggleService {\r\n  constructor(private commonservice: CommonServices) { }\r\n\r\n  disableConsoleInProduction(): void {\r\n    try {\r\n      if (environment.production) {\r\n        console.log = function (): void { };\r\n        console.debug = function (): void { };\r\n        console.warn = function (): void { };\r\n        console.info = function (): void { };\r\n        console.error = function (): void { };\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.commonservice.setlogvalue(false, ex.message, ex.stack, \"ConsoleToggleService\", \"disableConsoleInProduction\");\r\n    }\r\n  }\r\n}\r\n","import { ChangeDetectorRef, Component, OnInit, TemplateRef, ViewChild } from '@angular/core';\r\nimport { ApiService } from './services/api.service';\r\nimport { CommonServices, CommonLoaderServices } from './services/common';\r\nimport { switchMap } from 'rxjs/operators';\r\nimport { Observable, of, catchError } from 'rxjs';\r\nimport { config, errorconfig } from './environments/config';\r\nimport { environment } from './environments/environment';\r\n@Component({\r\n  selector: 'hola-rx',\r\n  templateUrl: './hola-rx.component.html',\r\n  styleUrls: ['./hola-rx.component.css']\r\n})\r\nexport class HolaRx implements OnInit {\r\n  private tempRxDetails: any;\r\n  private message = \"\";\r\n  private temprxid = \"\";\r\n  private tempreferralid = \"\";\r\n  private spinnerflag = false;\r\n  private authenticateBlock = false;\r\n  @ViewChild(\"rxwidgets\", { static: true }) content!: TemplateRef<any>;\r\n  constructor(private commonservice: CommonServices, public commonLoaderServices: CommonLoaderServices, private apiservice: ApiService, private Changedetect: ChangeDetectorRef\r\n  ) { this.setLoginterval(); }\r\n  ngOnInit(): void {\r\n\r\n  }\r\n\r\n  private setLoginterval() {\r\n    setInterval(() => {\r\n      if (this.commonservice.logvalue != undefined && this.commonservice.logvalue != null && this.commonservice.logvalue != \"\") {\r\n        this.apiservice.Post(this.commonservice.logvalue, config.CREATE_LOG_EXCEPTION).subscribe(res => {\r\n          //console.log(res);\r\n          this.commonservice.logvalue = null;\r\n        }, err => {\r\n          //console.log(err);\r\n        })\r\n      }\r\n    }, 50000);\r\n  }\r\n\r\n\r\n  init(clientid: string, clientsecret: string, sandbox: boolean, flag?: number): Observable<any> {\r\n    try {\r\n      if (!this.spinnerflag) {\r\n        this.commonservice.logtransaction = \"Init Authentication\";\r\n        this.commonservice.logidentifier = \"clientid\"\r\n        this.commonservice.logidentifierType = \"clientid\";\r\n      }\r\n      var data = {\r\n        clientId: clientid,\r\n        clientSecret: clientsecret\r\n      }\r\n      this.commonservice.sandbox = sandbox;\r\n      if (!sandbox) {\r\n        environment.apiEndpoint = config.LIVE_URL;\r\n      }\r\n      else {\r\n        environment.apiEndpoint = config.STAGING_URL;\r\n      }\r\n      if (!this.IsNullOrEmpty(data.clientId) && !this.IsNullOrEmpty(data.clientSecret)) {\r\n        if (!this.spinnerflag && this.commonLoaderServices.rxInitLoaderHiddden)\r\n          this.commonLoaderServices.addLoaderElement(true);\r\n        this.authenticateBlock = true;\r\n        this.Changedetect.detectChanges();\r\n        return this.apiservice.Post(data, \"authenticate\").pipe(\r\n          switchMap((res: any) => {\r\n            try {\r\n              if (res.response_code == 0) {\r\n                localStorage.setItem('rxCredentials', JSON.stringify(data));\r\n                localStorage.setItem('tokenExpiry', JSON.stringify(res.expiresin));\r\n                this.authenticateBlock = false;\r\n                this.commonservice.HolaRxToken = res.auth.access_token;\r\n                if (!this.spinnerflag && this.commonLoaderServices.rxInitLoaderHiddden) {\r\n                  this.setTimer();\r\n                }\r\n                if (flag == 1) {\r\n                  if (this.commonLoaderServices.rxInitLoaderHiddden)\r\n                    this.commonLoaderServices.addLoaderElement(false);\r\n                  this.Changedetect.detectChanges();\r\n                  return this.openNewRx(this.tempRxDetails);\r\n                }\r\n                else if (flag == 2) {\r\n                  if (this.commonLoaderServices.rxInitLoaderHiddden)\r\n                    this.commonLoaderServices.addLoaderElement(false);\r\n                  this.Changedetect.detectChanges();\r\n                  return this.openEditRx(this.tempRxDetails);\r\n                }\r\n                else if (flag == 3) {\r\n                  if (this.commonLoaderServices.rxInitLoaderHiddden)\r\n                    this.commonLoaderServices.addLoaderElement(false);\r\n                  this.Changedetect.detectChanges();\r\n                  return this.openReferral(this.tempRxDetails);\r\n                }\r\n                else if (flag == 4) {\r\n                  if (this.commonLoaderServices.rxInitLoaderHiddden)\r\n                    this.commonLoaderServices.addLoaderElement(false);\r\n                  this.Changedetect.detectChanges();\r\n                  return this.downloadRx(this.temprxid);\r\n                }\r\n                else if (flag == 5) {\r\n                  if (this.commonLoaderServices.rxInitLoaderHiddden)\r\n                    this.commonLoaderServices.addLoaderElement(false);\r\n                  this.Changedetect.detectChanges();\r\n                  return this.downloadReferral(this.tempreferralid);\r\n                }\r\n                if (!res.flag) {\r\n                  this.commonLoaderServices.addLoaderElement(false);\r\n                  this.Changedetect.detectChanges();\r\n                  this.commonservice.setlogvalue(true, res.response_message, res.response_message, \"HolaRx\", \"init\");\r\n                  if (!this.spinnerflag && this.commonLoaderServices.rxInitLoaderHiddden)\r\n                    this.commonservice.toastopen(res.response_message, \"error\", res.error_code);\r\n                  return this.errorResponse(res.error_code, res.response_message);\r\n                }\r\n                if (!this.spinnerflag && this.commonLoaderServices.rxInitLoaderHiddden)\r\n                  this.commonLoaderServices.addLoaderElement(false);\r\n                this.Changedetect.detectChanges();\r\n                return this.errorResponse(\"\", res.response_message, true);\r\n              }\r\n              else {\r\n                this.authenticateBlock = false;\r\n                this.commonLoaderServices.addLoaderElement(false);\r\n                this.Changedetect.detectChanges();\r\n                this.commonservice.setlogvalue(true, res.response_message, res.response_message, \"HolaRx\", \"init\");\r\n                if (!this.spinnerflag && this.commonLoaderServices.rxInitLoaderHiddden)\r\n                  this.commonservice.toastopen(res.response_message, \"error\", res.error_code);\r\n                return this.errorResponse(res.error_code, res.response_message);\r\n              }\r\n            }\r\n            catch (ex: any) {\r\n              this.authenticateBlock = false;\r\n              this.commonLoaderServices.addLoaderElement(false);\r\n              this.Changedetect.detectChanges();\r\n              this.commonservice.setlogvalue(true, ex.message, ex.stack, \"HolaRx\", \"init\");\r\n              return this.errorResponse(errorconfig.error_64.code, errorconfig.error_64.message);\r\n            }\r\n          }),\r\n          catchError((error: any) => {\r\n            this.authenticateBlock = false;\r\n            this.commonLoaderServices.addLoaderElement(false);\r\n            this.Changedetect.detectChanges();\r\n            if (!this.spinnerflag && this.commonLoaderServices.rxInitLoaderHiddden)\r\n              this.commonservice.toastopen(errorconfig.error_65.message + error, \"error\", errorconfig.error_65.code);\r\n            this.commonservice.setlogvalue(true, error.message, error.stack, \"HolaRx\", \"init\");\r\n            return this.errorResponse(errorconfig.error_65.code, errorconfig.error_65.message + error);\r\n\r\n          })\r\n        );\r\n      }\r\n      else {\r\n        this.authenticateBlock = false;\r\n        this.commonLoaderServices.addLoaderElement(false);\r\n        this.Changedetect.detectChanges();\r\n        if (!this.spinnerflag && this.commonLoaderServices.rxInitLoaderHiddden)\r\n          this.commonservice.toastopen(errorconfig.error_1.message, \"error\", errorconfig.error_1.code);\r\n        this.commonservice.setlogvalue(true, errorconfig.error_1.message, errorconfig.error_1.message, \"HolaRx\", \"init\");\r\n        return this.errorResponse(errorconfig.error_1.code, errorconfig.error_1.message);\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.authenticateBlock = false;\r\n      this.commonLoaderServices.addLoaderElement(false);\r\n      this.Changedetect.detectChanges();\r\n      this.commonservice.setlogvalue(true, ex.message, ex.stack, \"HolaRx\", \"init\");\r\n      return this.errorResponse(errorconfig.error_64.code, errorconfig.error_64.message);\r\n    }\r\n  }\r\n\r\n  private setTimer() {\r\n    try {\r\n      setInterval(() => {\r\n        var data = JSON.parse(localStorage.getItem('rxCredentials') as any);\r\n        var expiry = JSON.parse(localStorage.getItem('tokenExpiry') as any);\r\n        if (data != null && !this.IsNullOrEmpty(data.clientId) && !this.IsNullOrEmpty(data.clientSecret) && !this.IsNullOrEmpty(expiry) && window.navigator.onLine && !this.authenticateBlock && (new Date(new Date(expiry).setMinutes(new Date(expiry).getMinutes() - 1)) <= new Date() || this.apiservice.unAuthorizedFlag)) {\r\n          this.apiservice.unAuthorizedFlag = false;\r\n          this.spinnerflag = true;\r\n          this.init(data.clientId, data.clientSecret, this.commonservice.sandbox).subscribe(res => {\r\n            //console.log(res);\r\n          }, err => {\r\n            this.commonservice.setlogvalue(true, err.message, err.stack, \"HolaRx\", \"setTimer\");\r\n          });\r\n        }\r\n      }, 1000);\r\n    }\r\n    catch (ex: any) {\r\n      this.commonservice.setlogvalue(true, ex.message, ex.stack, \"HolaRx\", \"setTimer\");\r\n    }\r\n  }\r\n\r\n  openNewRx(RxDetails: any): Observable<any> {\r\n    this.commonLoaderServices.rxInitLoaderHiddden = false;\r\n    this.commonservice.logtransaction = \"New Rx\";\r\n    this.commonservice.logidentifier = !this.IsNullOrEmpty(RxDetails) ? !this.IsNullOrEmpty(RxDetails.practitioner) ? !this.IsNullOrEmpty(RxDetails.practitioner.email) ? RxDetails.practitioner.email : \"\" : \"\" : \"\";\r\n    this.commonservice.logidentifierType = \"practitioner email\";\r\n    try {\r\n      RxDetails.type = \"1\";\r\n      RxDetails.clientId = this.commonservice.getCredetial();\r\n      this.tempRxDetails = RxDetails;\r\n      if (!this.IsNullOrEmpty(this.commonservice.HolaRxToken)) {\r\n        this.auditlog(JSON.stringify(RxDetails), config.CREATE_CONSULTATION);\r\n        if (!this.IsNullOrEmpty(RxDetails.appointmentid)) {\r\n          this.appointmentValidation(RxDetails, 1);\r\n        }\r\n        else {\r\n          this.validation(RxDetails, 1);\r\n        }\r\n\r\n        if (this.message != \"\") {\r\n          this.commonLoaderServices.addLoaderElement(false); this.Changedetect.detectChanges();\r\n          var res = this.commonservice.closeErrorResponse;\r\n          this.commonservice.toastopen(this.message, \"error\", \"\", 7000);\r\n          this.message = \"\";\r\n          this.commonservice.closeErrorResponse = null;\r\n          console.log(res);\r\n          return of(res);\r\n        }\r\n        this.commonLoaderServices.addLoaderElement(true); this.Changedetect.detectChanges();\r\n        return this.apiservice.Post(RxDetails, config.CREATE_CONSULTATION).pipe(\r\n          switchMap((res: any) => {\r\n            try {\r\n              this.tempRxDetails = null;\r\n              this.commonLoaderServices.addLoaderElement(false); this.Changedetect.detectChanges();\r\n              if (this.IsNullOrEmpty(res)) {\r\n                this.commonservice.setlogvalue(false, \"\", \"\", \"HolaRx\", \"openNewRx\", RxDetails);\r\n                this.commonservice.toastopen(errorconfig.error_64.message, 'error', errorconfig.error_64.code);\r\n                return this.errorResponse(errorconfig.error_64.code, errorconfig.error_64.message);\r\n              }\r\n              if (res.response_code == 0) {\r\n                this.commonservice.consultationId = RxDetails.consultationid;\r\n                this.commonservice.physicianDetails = res.physicianDetails;\r\n                this.commonservice.patientDetails = res.patientDetails;\r\n                this.commonservice.facilityDetails = res.facilityDetails;\r\n                this.commonservice.vendorPatientId = res.vendorPatientId;\r\n                this.commonservice.vendorFacilityId = res.vendorFacilityId;\r\n                this.commonservice.vendorPhysicianId = res.vendorPhysicianId;\r\n                this.commonservice.visitId = res.visitId;\r\n                this.commonservice.createPatientResponse = res;\r\n                this.commonservice.editPrescription = false;\r\n                this.commonservice.pharmacyEmail = !this.IsNullOrEmpty(res.pharmacyEmail) ? res.pharmacyEmail : \"\";\r\n                this.commonservice.isScriptToPharmacy = (!this.IsNullOrEmpty(res.isScriptToPharmacy) && res.isScriptToPharmacy) != 0 ? res.isScriptToPharmacy : 0;\r\n                this.commonservice.isMedicineRestrict = !this.commonservice.IsNullOrEmpty(res.isRestrictedMedicine) ? res.isRestrictedMedicine : false;\r\n                this.commonservice.enablePaperScript = res.isEnableScript;\r\n                this.commonservice.enableSendPaperScriptInMail = res.isEnableScriptMail;\r\n                this.commonservice.enableSendEScriptInMail = res.isEnableEscriptMail;\r\n                this.commonservice.enableEScript = res.isEnableEscript;\r\n                if (!this.IsNullOrEmpty(this.commonservice.physicianDetails) && !this.IsNullOrEmpty(this.commonservice.physicianDetails.ePrescriptionAllowed) && this.commonservice.physicianDetails.ePrescriptionAllowed == 0)\r\n                  this.HIvalidation(res);\r\n                return this.commonservice.openRxWidget(this.content);\r\n              }\r\n              else {\r\n                this.commonservice.setlogvalue(false, res.response_message, res.response_message, \"HolaRx\", \"openNewRx\", RxDetails);\r\n                this.commonservice.toastopen(res.response_message, \"error\", res.error_code);\r\n                return this.errorResponse(res.error_code, res.response_message);\r\n              }\r\n            }\r\n            catch (ex: any) {\r\n              this.commonLoaderServices.addLoaderElement(false); this.Changedetect.detectChanges();\r\n              this.commonservice.setlogvalue(false, ex.message, ex.stack, \"HolaRx\", \"openNewRx\", RxDetails);\r\n              return this.errorResponse(res.error_code, res.response_message);\r\n            }\r\n          }), catchError((error: any) => {\r\n            this.commonLoaderServices.addLoaderElement(false); this.Changedetect.detectChanges();\r\n            this.commonservice.toastopen(errorconfig.error_65.message + error, \"error\", errorconfig.error_65.code);\r\n            this.commonservice.setlogvalue(false, error.message, error.stack, \"HolaRx\", \"openNewRx\", RxDetails);\r\n            return this.errorResponse(errorconfig.error_65.code, errorconfig.error_65.message + error);\r\n          }));\r\n      }\r\n      else {\r\n        var data = JSON.parse(localStorage.getItem('rxCredentials') as any);\r\n        if (data != null && !this.IsNullOrEmpty(data.clientId) && !this.IsNullOrEmpty(data.clientSecret) && this.IsNullOrEmpty(this.commonservice.HolaRxToken)) {\r\n          this.commonLoaderServices.addLoaderElement(true); this.Changedetect.detectChanges();\r\n          return this.init(data.clientId, data.clientSecret, this.commonservice.sandbox, 1);\r\n        }\r\n        this.commonLoaderServices.addLoaderElement(false); this.Changedetect.detectChanges();\r\n        this.commonservice.setlogvalue(false, errorconfig.error_1.message, errorconfig.error_1.message, \"HolaRx\", \"openNewRx\", RxDetails);\r\n        return this.errorResponse(errorconfig.error_1.code, errorconfig.error_1.message);\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.commonLoaderServices.addLoaderElement(false); this.Changedetect.detectChanges();\r\n      this.commonservice.setlogvalue(false, ex.message, ex.stack, \"HolaRx\", \"openNewRx\", RxDetails);\r\n      return this.errorResponse(errorconfig.error_64.code, errorconfig.error_64.message);\r\n    }\r\n  }\r\n\r\n  openEditRx(RxDetails: any): Observable<any> {\r\n    this.commonLoaderServices.rxInitLoaderHiddden = false;\r\n    this.commonservice.logtransaction = \"Edit Rx\";\r\n    this.commonservice.logidentifier = !this.IsNullOrEmpty(RxDetails) ? !this.IsNullOrEmpty(RxDetails.practitioner) ? !this.IsNullOrEmpty(RxDetails.practitioner.email) ? RxDetails.practitioner.email : \"\" : \"\" : \"\";\r\n    this.commonservice.logidentifierType = \"practitioner email\";\r\n    try {\r\n      RxDetails.type = \"1\";\r\n      RxDetails.clientId = this.commonservice.getCredetial();\r\n      this.tempRxDetails = RxDetails;\r\n      if (!this.IsNullOrEmpty(this.commonservice.HolaRxToken)) {\r\n        this.auditlog(JSON.stringify(RxDetails), config.CREATE_CONSULTATION);\r\n        if (!this.IsNullOrEmpty(RxDetails.appointmentid)) {\r\n          this.appointmentValidation(RxDetails, 2);\r\n        }\r\n        else {\r\n          this.validation(RxDetails, 2);\r\n        }\r\n        if (this.message != \"\") {\r\n          this.commonLoaderServices.addLoaderElement(false); this.Changedetect.detectChanges();\r\n          var res = this.commonservice.closeErrorResponse;\r\n          this.commonservice.toastopen(this.message, \"error\", \"\", 7000);\r\n          this.message = \"\";\r\n          this.commonservice.closeErrorResponse = null;\r\n          console.log(res);\r\n          return of(res);\r\n        }\r\n        this.commonLoaderServices.addLoaderElement(true); this.Changedetect.detectChanges();\r\n        return this.apiservice.Post(RxDetails, config.CREATE_CONSULTATION).pipe(\r\n          switchMap((res: any) => {\r\n            try {\r\n              this.tempRxDetails = null;\r\n              this.commonLoaderServices.addLoaderElement(false); this.Changedetect.detectChanges();\r\n              if (this.IsNullOrEmpty(res)) {\r\n                this.commonservice.setlogvalue(false, \"\", \"\", \"HolaRx\", \"openEditRx\", RxDetails);\r\n                this.commonservice.toastopen(errorconfig.error_64.message, 'error', errorconfig.error_64.code);\r\n                return this.errorResponse(errorconfig.error_64.code, errorconfig.error_64.message);\r\n              }\r\n              if (res.response_code == 0) {\r\n                this.commonservice.physicianDetails = res.physicianDetails;\r\n                this.commonservice.patientDetails = res.patientDetails;\r\n                this.commonservice.facilityDetails = res.facilityDetails;\r\n                this.commonservice.vendorPatientId = res.vendorPatientId;\r\n                this.commonservice.vendorFacilityId = res.vendorFacilityId;\r\n                this.commonservice.vendorPhysicianId = res.vendorPhysicianId;\r\n                this.commonservice.visitId = res.visitId;\r\n                this.commonservice.isMedicineRestrict = !this.commonservice.IsNullOrEmpty(res.isRestrictedMedicine) ? res.isRestrictedMedicine : false;\r\n                this.commonservice.pharmacyEmail = !this.IsNullOrEmpty(res.pharmacyEmail) ? res.pharmacyEmail : \"\";\r\n                this.commonservice.isScriptToPharmacy = (!this.IsNullOrEmpty(res.isScriptToPharmacy) && res.isScriptToPharmacy) != 0 ? res.isScriptToPharmacy : 0;\r\n                if (RxDetails.rxid != null && RxDetails.rxid != \"\" && RxDetails.rxid != undefined) {\r\n                  if (res.rxDetails != null && res.rxDetails != \"\" && res.rxDetails != undefined) {\r\n                    this.commonservice.editPrescription = true;\r\n                    this.commonservice.rxDetails = res.rxDetails;\r\n                    this.commonservice.rxid = res.rxDetails.rxId;\r\n                  } else {\r\n                    this.commonservice.setlogvalue(false, errorconfig.error_46.message, errorconfig.error_46.message, \"HolaRx\", \"openEditRx\", RxDetails);\r\n                    this.commonservice.toastopen(errorconfig.error_46.message, \"error\", errorconfig.error_46.code);\r\n                    return this.errorResponse(errorconfig.error_46.code, errorconfig.error_46.message);\r\n                  }\r\n                }\r\n                this.commonservice.createPatientResponse = res;\r\n                this.commonservice.enablePaperScript = res.isEnableScript;\r\n                this.commonservice.enableSendPaperScriptInMail = res.isEnableScriptMail;\r\n                this.commonservice.enableSendEScriptInMail = res.isEnableEscriptMail;\r\n                this.commonservice.enableEScript = res.isEnableEscript;\r\n                if (!this.IsNullOrEmpty(this.commonservice.physicianDetails) && !this.IsNullOrEmpty(this.commonservice.physicianDetails.ePrescriptionAllowed) && this.commonservice.physicianDetails.ePrescriptionAllowed == 0)\r\n                  this.HIvalidation(res);\r\n                return this.commonservice.openRxWidget(this.content);\r\n              }\r\n              else {\r\n                this.commonservice.setlogvalue(false, res.response_message, res.response_message, \"HolaRx\", \"openEditRx\", RxDetails);\r\n                this.commonservice.toastopen(res.response_message, \"error\", res.error_code);\r\n                return this.errorResponse(res.error_code, res.response_message);\r\n              }\r\n            }\r\n            catch (ex: any) {\r\n              this.commonLoaderServices.addLoaderElement(false); this.Changedetect.detectChanges();\r\n              this.commonservice.setlogvalue(false, ex.message, ex.stack, \"HolaRx\", \"openEditRx\", RxDetails);\r\n              return this.errorResponse(res.error_code, res.response_message);\r\n            }\r\n          }), catchError((error: any) => {\r\n            this.commonLoaderServices.addLoaderElement(false); this.Changedetect.detectChanges();\r\n            this.commonservice.toastopen(errorconfig.error_65.message + error, \"error\", errorconfig.error_65.code);\r\n            this.commonservice.setlogvalue(false, error.message, error.stack, \"HolaRx\", \"openEditRx\", RxDetails);\r\n            return this.errorResponse(errorconfig.error_65.code, errorconfig.error_65.message + error);\r\n          }));\r\n      }\r\n      else {\r\n        var data = JSON.parse(localStorage.getItem('rxCredentials') as any);\r\n        if (data != null && !this.IsNullOrEmpty(data.clientId) && !this.IsNullOrEmpty(data.clientSecret) && this.IsNullOrEmpty(this.commonservice.HolaRxToken)) {\r\n          this.commonLoaderServices.addLoaderElement(true); this.Changedetect.detectChanges();\r\n          return this.init(data.clientId, data.clientSecret, this.commonservice.sandbox, 2);\r\n        }\r\n        this.commonLoaderServices.addLoaderElement(false); this.Changedetect.detectChanges();\r\n        this.commonservice.setlogvalue(false, errorconfig.error_1.message, errorconfig.error_1.message, \"HolaRx\", \"openEditRx\", RxDetails);\r\n        return this.errorResponse(errorconfig.error_1.code, errorconfig.error_1.message);\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.commonLoaderServices.addLoaderElement(false); this.Changedetect.detectChanges();\r\n      this.commonservice.setlogvalue(false, ex.message, ex.stack, \"HolaRx\", \"openEditRx\", RxDetails);\r\n      return this.errorResponse(errorconfig.error_64.code, errorconfig.error_64.message);\r\n    }\r\n  }\r\n\r\n  openReferral(RxDetails: any): Observable<any> {\r\n    this.commonLoaderServices.rxInitLoaderHiddden = false;\r\n    this.commonservice.logtransaction = \"Send Referral\";\r\n    this.commonservice.logidentifier = !this.IsNullOrEmpty(RxDetails) ? !this.IsNullOrEmpty(RxDetails.practitioner) ? !this.IsNullOrEmpty(RxDetails.practitioner.email) ? RxDetails.practitioner.email : \"\" : \"\" : \"\";\r\n    this.commonservice.logidentifierType = \"practitioner email\";\r\n    try {\r\n      RxDetails.type = \"2\";\r\n      RxDetails.clientId = this.commonservice.getCredetial();\r\n      this.tempRxDetails = RxDetails;\r\n      if (!this.IsNullOrEmpty(this.commonservice.HolaRxToken)) {\r\n        this.auditlog(JSON.stringify(RxDetails), config.CREATE_CONSULTATION);\r\n        this.validation(RxDetails, 3);\r\n        if (this.message != \"\") {\r\n          this.commonLoaderServices.addLoaderElement(false); this.Changedetect.detectChanges();\r\n          var res = this.commonservice.closeErrorResponse;\r\n          this.commonservice.setlogvalue(false, this.message, this.message, \"HolaRx\", \"openReferral\", RxDetails);\r\n          this.commonservice.toastopen(this.message, \"error\", \"\", 7000);\r\n          this.message = \"\";\r\n          this.commonservice.closeErrorResponse = null;\r\n          console.log(res);\r\n          return of(res);\r\n        }\r\n        this.commonLoaderServices.addLoaderElement(true); this.Changedetect.detectChanges();\r\n        return this.apiservice.Post(RxDetails, config.CREATE_CONSULTATION).pipe(\r\n          switchMap((res: any) => {\r\n            try {\r\n              this.commonLoaderServices.addLoaderElement(false); this.Changedetect.detectChanges();\r\n              if (this.IsNullOrEmpty(res)) {\r\n                this.commonservice.setlogvalue(false, \"\", \"\", \"HolaRx\", \"openReferral\", RxDetails);\r\n                this.commonservice.toastopen(errorconfig.error_64.message, 'error', errorconfig.error_64.code);\r\n                return this.errorResponse(errorconfig.error_64.code, errorconfig.error_64.message);\r\n              }\r\n              if (res.response_code == 0) {\r\n                this.commonservice.physicianDetails = res.physicianDetails;\r\n                this.commonservice.patientDetails = res.patientDetails;\r\n                this.commonservice.facilityDetails = res.facilityDetails;\r\n                this.commonservice.vendorPatientId = res.vendorPatientId;\r\n                this.commonservice.vendorFacilityId = res.vendorFacilityId;\r\n                this.commonservice.vendorPhysicianId = res.vendorPhysicianId;\r\n                this.commonservice.visitId = res.visitId;\r\n                this.commonservice.isMedicineRestrict = !this.commonservice.IsNullOrEmpty(res.isRestrictedMedicine) ? res.isRestrictedMedicine : false;\r\n                this.commonservice.pharmacyEmail = !this.IsNullOrEmpty(res.pharmacyEmail) ? res.pharmacyEmail : \"\";\r\n                this.commonservice.isScriptToPharmacy = (!this.IsNullOrEmpty(res.isScriptToPharmacy) && res.isScriptToPharmacy) != 0 ? res.isScriptToPharmacy : 0;\r\n                return this.commonservice.Pathology(this.content);\r\n              }\r\n              else {\r\n                this.commonservice.setlogvalue(false, res.response_message, res.response_message, \"HolaRx\", \"openReferral\", RxDetails); this.commonservice.toastopen(res.response_message, \"error\", res.error_code);\r\n                return this.errorResponse(res.error_code, res.response_message);\r\n              }\r\n            }\r\n            catch (ex: any) {\r\n              this.commonLoaderServices.addLoaderElement(false); this.Changedetect.detectChanges();\r\n              this.commonservice.setlogvalue(false, ex.message, ex.stack, \"HolaRx\", \"openReferral\", RxDetails);\r\n              return this.errorResponse(res.error_code, res.response_message);\r\n            }\r\n          }), catchError((error: any) => {\r\n            this.commonLoaderServices.addLoaderElement(false); this.Changedetect.detectChanges();\r\n            this.commonservice.toastopen(errorconfig.error_65.message + error, \"error\", errorconfig.error_65.code);\r\n            this.commonservice.setlogvalue(false, this.message, error.stack, \"HolaRx\", \"openReferral\", RxDetails);\r\n            return this.errorResponse(errorconfig.error_65.code, errorconfig.error_65.message + error);\r\n          }));\r\n      }\r\n      else {\r\n        var data = JSON.parse(localStorage.getItem('rxCredentials') as any);\r\n        if (data != null && !this.IsNullOrEmpty(data.clientId) && !this.IsNullOrEmpty(data.clientSecret) && this.IsNullOrEmpty(this.commonservice.HolaRxToken)) {\r\n          this.commonLoaderServices.addLoaderElement(true); this.Changedetect.detectChanges();\r\n          return this.init(data.clientId, data.clientSecret, this.commonservice.sandbox, 3);\r\n        }\r\n        this.commonLoaderServices.addLoaderElement(false); this.Changedetect.detectChanges();\r\n        this.commonservice.setlogvalue(false, errorconfig.error_1.message, errorconfig.error_1.message, \"HolaRx\", \"openReferral\", RxDetails);\r\n        return this.errorResponse(errorconfig.error_1.code, errorconfig.error_1.message);\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.commonLoaderServices.addLoaderElement(false); this.Changedetect.detectChanges();\r\n      this.commonservice.setlogvalue(false, ex.message, ex.stack, \"HolaRx\", \"openReferral\", RxDetails);\r\n      return this.errorResponse(errorconfig.error_64.code, errorconfig.error_64.message);\r\n    }\r\n  }\r\n\r\n  downloadRx(RxID: any): Observable<any> {\r\n    this.commonLoaderServices.rxInitLoaderHiddden = false;\r\n    this.commonservice.logtransaction = \"Download Rx\";\r\n    this.commonservice.logidentifier = RxID;\r\n    this.commonservice.logidentifierType = \"rxid\";\r\n    var payload = {};\r\n    try {\r\n      this.temprxid = RxID;\r\n      var clientId = this.commonservice.getCredetial();\r\n      payload = {\r\n        request_type: \"parameter\",\r\n        rxid: RxID,\r\n        type: \"0\",\r\n        clientId: clientId\r\n      }\r\n      if (!this.IsNullOrEmpty(this.commonservice.HolaRxToken)) {\r\n        this.auditlog(JSON.stringify(payload), config.PHYSICIAN.RX_PRINT + RxID + \"&type=0&clientId=\" + clientId);\r\n        if (this.IsNullOrEmpty(RxID)) {\r\n          this.commonservice.toastopen(errorconfig.error_46.message, \"error\", errorconfig.error_46.code);\r\n          return this.errorResponse(errorconfig.error_46.code, errorconfig.error_46.message);\r\n        }\r\n        this.commonLoaderServices.addLoaderElement(true); this.Changedetect.detectChanges();\r\n        return this.apiservice.Get(config.PHYSICIAN.RX_PRINT + RxID + \"&type=0&clientId=\" + clientId).pipe(\r\n          switchMap((response: any) => {\r\n            try {\r\n              if (this.IsNullOrEmpty(response)) {\r\n                this.commonservice.setlogvalue(false, \"\", \"\", \"HolaRx\", \"downloadRx\", payload);\r\n                this.commonLoaderServices.addLoaderElement(false); this.Changedetect.detectChanges();\r\n                this.commonservice.toastopen(errorconfig.error_64.message, 'error', errorconfig.error_64.code);\r\n                return this.errorResponse(errorconfig.error_64.code, errorconfig.error_64.message);\r\n              }\r\n              if (response.response_code == 0) {\r\n                this.commonDownload(response);\r\n                return this.errorResponse(\"\", response.response_message, true);\r\n              }\r\n              else {\r\n                this.commonLoaderServices.addLoaderElement(false); this.Changedetect.detectChanges();\r\n                this.commonservice.setlogvalue(false, response.response_message, response.response_message, \"HolaRx\", \"downloadRx\", payload);\r\n                this.commonservice.toastopen(response.response_message, 'error', response.error_code);\r\n                return this.errorResponse(response.error_code, response.response_message);\r\n              }\r\n            }\r\n            catch (ex: any) {\r\n              this.commonLoaderServices.addLoaderElement(false); this.Changedetect.detectChanges();\r\n              this.commonservice.setlogvalue(false, ex.message, ex.stack, \"HolaRx\", \"downloadRx\", payload);\r\n              return this.errorResponse(response.error_code, response.response_message);\r\n            }\r\n          }), catchError((error: any) => {\r\n            this.commonLoaderServices.addLoaderElement(false); this.Changedetect.detectChanges();\r\n            this.commonservice.toastopen(errorconfig.error_65.message + error, \"error\", errorconfig.error_65.code);\r\n            this.commonservice.setlogvalue(false, error.message, error.stack, \"HolaRx\", \"downloadRx\", payload);\r\n            return this.errorResponse(errorconfig.error_65.code, errorconfig.error_65.message + error);\r\n          }));\r\n      }\r\n      else {\r\n        var data = JSON.parse(localStorage.getItem('rxCredentials') as any);\r\n        if (data != null && !this.IsNullOrEmpty(data.clientId) && !this.IsNullOrEmpty(data.clientSecret) && this.IsNullOrEmpty(this.commonservice.HolaRxToken)) {\r\n          this.commonLoaderServices.addLoaderElement(true); this.Changedetect.detectChanges();\r\n          return this.init(data.clientId, data.clientSecret, this.commonservice.sandbox, 4);\r\n        }\r\n        this.commonLoaderServices.addLoaderElement(false); this.Changedetect.detectChanges();\r\n        this.commonservice.setlogvalue(false, errorconfig.error_1.message, errorconfig.error_1.message, \"HolaRx\", \"downloadRx\", payload);\r\n        return this.errorResponse(errorconfig.error_1.code, errorconfig.error_1.message);\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.commonLoaderServices.addLoaderElement(false); this.Changedetect.detectChanges();\r\n      this.commonservice.setlogvalue(false, ex.message, ex.stack, \"HolaRx\", \"downloadRx\", payload);\r\n      return this.errorResponse(errorconfig.error_64.code, errorconfig.error_64.message);\r\n    }\r\n  }\r\n\r\n  downloadReferral(ReferralID: any): Observable<any> {\r\n    this.commonLoaderServices.rxInitLoaderHiddden = false;\r\n    this.commonservice.logtransaction = \"Download Referral\";\r\n    this.commonservice.logidentifier = ReferralID;\r\n    this.commonservice.logidentifierType = \"referral id\";\r\n    var payload = {};\r\n    try {\r\n      this.tempreferralid = ReferralID;\r\n      payload = {\r\n        request_type: \"parameter\",\r\n        referralId: ReferralID\r\n      }\r\n      if (!this.IsNullOrEmpty(this.commonservice.HolaRxToken)) {\r\n        this.auditlog(JSON.stringify(payload), config.PHYSICIAN.REFERRAL_PRINT + ReferralID);\r\n        if (this.IsNullOrEmpty(ReferralID)) {\r\n          this.commonservice.toastopen(errorconfig.error_43.message, \"error\", errorconfig.error_43.code);\r\n          return this.errorResponse(errorconfig.error_43.code, errorconfig.error_43.message);\r\n        }\r\n        this.commonLoaderServices.addLoaderElement(true); this.Changedetect.detectChanges();\r\n        return this.apiservice.Get(config.PHYSICIAN.REFERRAL_PRINT + ReferralID).pipe(\r\n          switchMap((response: any) => {\r\n            try {\r\n              if (this.IsNullOrEmpty(response)) {\r\n                this.commonLoaderServices.addLoaderElement(false); this.Changedetect.detectChanges();\r\n                this.commonservice.setlogvalue(false, \"\", \"\", \"HolaRx\", \"downloadReferral\", payload);\r\n                this.commonservice.toastopen(errorconfig.error_64.message, 'error', errorconfig.error_64.code);\r\n                return this.errorResponse(errorconfig.error_64.code, errorconfig.error_64.message);\r\n              }\r\n              if (response.response_code == 0) {\r\n                this.commonDownload(response);\r\n                return this.errorResponse(\"\", response.response_message, true);\r\n              }\r\n              else {\r\n                this.commonLoaderServices.addLoaderElement(false); this.Changedetect.detectChanges();\r\n                this.commonservice.setlogvalue(false, response.response_message, response.response_message, \"HolaRx\", \"downloadReferral\", payload);\r\n                this.commonservice.toastopen(response.response_message, 'error', response.error_code);\r\n                return this.errorResponse(response.error_code, response.response_message);\r\n              }\r\n            }\r\n            catch (ex: any) {\r\n              this.commonLoaderServices.addLoaderElement(false); this.Changedetect.detectChanges();\r\n              this.commonservice.setlogvalue(false, ex.message, ex.stack, \"HolaRx\", \"downloadReferral\", payload);\r\n              return this.errorResponse(response.error_code, response.response_message);\r\n            }\r\n          }), catchError((error: any) => {\r\n            this.commonLoaderServices.addLoaderElement(false); this.Changedetect.detectChanges();\r\n            this.commonservice.toastopen(errorconfig.error_65.message + error, \"error\", errorconfig.error_65.code);\r\n            this.commonservice.setlogvalue(false, error.message, error.stack, \"HolaRx\", \"downloadReferral\", payload);\r\n            return this.errorResponse(errorconfig.error_65.code, errorconfig.error_65.message + error);\r\n          }));\r\n      }\r\n      else {\r\n        var data = JSON.parse(localStorage.getItem('rxCredentials') as any);\r\n        if (data != null && !this.IsNullOrEmpty(data.clientId) && !this.IsNullOrEmpty(data.clientSecret) && this.IsNullOrEmpty(this.commonservice.HolaRxToken)) {\r\n          this.commonLoaderServices.addLoaderElement(true); this.Changedetect.detectChanges();\r\n          return this.init(data.clientId, data.clientSecret, this.commonservice.sandbox, 5);\r\n        }\r\n        this.commonLoaderServices.addLoaderElement(false); this.Changedetect.detectChanges();\r\n        this.commonservice.setlogvalue(false, errorconfig.error_1.message, errorconfig.error_1.message, \"HolaRx\", \"downloadReferral\", payload);\r\n        return this.errorResponse(errorconfig.error_1.code, errorconfig.error_1.message);\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.commonLoaderServices.addLoaderElement(false); this.Changedetect.detectChanges();\r\n      this.commonservice.setlogvalue(false, ex.message, ex.stack, \"HolaRx\", \"downloadReferral\", payload);\r\n      return this.errorResponse(errorconfig.error_64.code, errorconfig.error_64.message);\r\n    }\r\n  }\r\n\r\n  private commonDownload(response: any) {\r\n    try {\r\n      const a = document.createElement('a');\r\n      a.setAttribute('style', 'display:none;');\r\n      document.body.appendChild(a);\r\n      a.download = response.fileName;\r\n      a.href = \"data:application/pdf;charset=utf-8;base64,\" + response.file;\r\n      a.click();\r\n      document.body.removeChild(a);\r\n      this.commonLoaderServices.addLoaderElement(false); this.Changedetect.detectChanges();\r\n      this.commonservice.toastopen(response.response_message, 'success');\r\n    }\r\n    catch (ex: any) {\r\n      this.commonservice.setlogvalue(false, ex.message, ex.stack, \"HolaRx\", \"commonDownload\");\r\n    }\r\n  }\r\n  private appointmentValidation(RxDetails: any, flag: any) {\r\n    try {\r\n      if (this.IsNullOrEmpty(RxDetails.facilityid)) {\r\n        this.validationtoast(errorconfig.error_4.message, errorconfig.error_4.code);\r\n      }\r\n      if (flag == 2) {\r\n          if (this.IsNullOrEmpty(RxDetails.rxid)) {\r\n            this.validationtoast(errorconfig.error_46.message, errorconfig.error_46.code);\r\n          }\r\n        }\r\n    }\r\n    catch (ex: any) {\r\n      this.commonservice.setlogvalue(false, ex.message, ex.stack, \"HolaRx\", \"validation\");\r\n    }\r\n  }\r\n  private validation(RxDetails: any, flag: any) {\r\n    try {\r\n      if (!this.IsNullOrEmpty(RxDetails)) {\r\n        if (this.IsNullOrEmpty(RxDetails.consultationid)) {\r\n          this.validationtoast(errorconfig.error_2.message, errorconfig.error_2.code);\r\n        }\r\n        if (this.IsNullOrEmpty(RxDetails.practiceid) && this.IsNullOrEmpty(RxDetails.practice)) {\r\n          this.validationtoast(errorconfig.error_3.message, errorconfig.error_3.code);\r\n        }\r\n        if (this.IsNullOrEmpty(RxDetails.practitionerid) && this.IsNullOrEmpty(RxDetails.practitioner)) {\r\n          this.validationtoast(errorconfig.error_13.message, errorconfig.error_13.code);\r\n        }\r\n        if (this.IsNullOrEmpty(RxDetails.patientid) && this.IsNullOrEmpty(RxDetails.patient)) {\r\n          this.validationtoast(errorconfig.error_29.message, errorconfig.error_29.code);\r\n        }\r\n        if (flag == 2) {\r\n          if (this.IsNullOrEmpty(RxDetails.rxid)) {\r\n            this.validationtoast(errorconfig.error_46.message, errorconfig.error_46.code);\r\n          }\r\n        }\r\n        if (flag == 1) {\r\n          if (!this.IsNullOrEmpty(RxDetails.rxid)) {\r\n            RxDetails.rxid = \"\";\r\n          }\r\n        }\r\n        if (!this.IsNullOrEmpty(RxDetails.practice)) {\r\n          if (this.IsNullOrEmpty(RxDetails.practice.id))\r\n            this.validationtoast(errorconfig.error_4.message, errorconfig.error_4.code);\r\n          if (this.IsNullOrEmpty(RxDetails.practice.name))\r\n            this.validationtoast(errorconfig.error_5.message, errorconfig.error_5.code);\r\n          if (this.IsNullOrEmpty(RxDetails.practice.email))\r\n            this.validationtoast(errorconfig.error_6.message, errorconfig.error_6.code);\r\n          if (this.IsNullOrEmpty(RxDetails.practice.phone))\r\n            this.validationtoast(errorconfig.error_7.message, errorconfig.error_7.code);\r\n          if (this.IsNullOrEmpty(RxDetails.practice.address))\r\n            RxDetails.practice.address = {};\r\n          if (this.IsNullOrEmpty(RxDetails.practice.address?.addressline1))\r\n            this.validationtoast(errorconfig.error_71.message, errorconfig.error_71.code);\r\n          if (this.IsNullOrEmpty(RxDetails.practice.address?.addressline2))\r\n            RxDetails.practice.address.addressline2 = \"\";\r\n          if (this.IsNullOrEmpty(RxDetails.practice.address?.suburb))\r\n            this.validationtoast(errorconfig.error_10.message, errorconfig.error_10.code);\r\n          if (this.IsNullOrEmpty(RxDetails.practice.address?.postcode))\r\n            this.validationtoast(errorconfig.error_11.message, errorconfig.error_11.code);\r\n          if (this.IsNullOrEmpty(RxDetails.practice.address?.state))\r\n            this.validationtoast(errorconfig.error_12.message, errorconfig.error_12.code);\r\n          if (this.IsNullOrEmpty(RxDetails.practice.hpio)) { RxDetails.practice.hpio = 0; }\r\n        }\r\n        if (!this.IsNullOrEmpty(RxDetails.practitioner)) {\r\n          if (this.IsNullOrEmpty(RxDetails.practitioner.id))\r\n            this.validationtoast(errorconfig.error_14.message, errorconfig.error_14.code);\r\n          if (this.IsNullOrEmpty(RxDetails.practitioner.firstname))\r\n            this.validationtoast(errorconfig.error_15.message, errorconfig.error_15.code);\r\n          if (this.IsNullOrEmpty(RxDetails.practitioner.lastname))\r\n            this.validationtoast(errorconfig.error_16.message, errorconfig.error_16.code);\r\n          if (this.IsNullOrEmpty(RxDetails.practitioner.gender))\r\n            this.validationtoast(errorconfig.error_17.message, errorconfig.error_17.code);\r\n          if (this.IsNullOrEmpty(RxDetails.practitioner.dob))\r\n            this.validationtoast(errorconfig.error_18.message, errorconfig.error_18.code);\r\n          if (this.IsNullOrEmpty(RxDetails.practitioner.email))\r\n            this.validationtoast(errorconfig.error_19.message, errorconfig.error_19.code);\r\n          if (this.IsNullOrEmpty(RxDetails.practitioner.mobile_phone))\r\n            this.validationtoast(errorconfig.error_20.message, errorconfig.error_20.code);\r\n          if (this.IsNullOrEmpty(RxDetails.practitioner.address))\r\n            RxDetails.practitioner.address = {};\r\n          if (this.IsNullOrEmpty(RxDetails.practitioner.address?.addressline1))\r\n            this.validationtoast(errorconfig.error_72.message, errorconfig.error_72.code);\r\n          if (this.IsNullOrEmpty(RxDetails.practitioner.address?.addressline2))\r\n            RxDetails.practitioner.address.addressline2 = \"\";\r\n          if (this.IsNullOrEmpty(RxDetails.practitioner.address?.suburb))\r\n            this.validationtoast(errorconfig.error_23.message, errorconfig.error_23.code);\r\n          if (this.IsNullOrEmpty(RxDetails.practitioner.address?.postcode))\r\n            this.validationtoast(errorconfig.error_24.message, errorconfig.error_24.code);\r\n          if (this.IsNullOrEmpty(RxDetails.practitioner.address?.state))\r\n            this.validationtoast(errorconfig.error_25.message, errorconfig.error_25.code);\r\n          if (flag == 3) {\r\n            if (this.IsNullOrEmpty(RxDetails.practitioner.providernumber))\r\n              this.validationtoast(errorconfig.error_27.message, errorconfig.error_27.code);\r\n            if (this.IsNullOrEmpty(RxDetails.practitioner.signature_image))\r\n              this.validationtoast(errorconfig.error_28.message, errorconfig.error_28.code);\r\n          }\r\n          if (this.IsNullOrEmpty(RxDetails.practitioner.hpii)) { RxDetails.practitioner.hpii = 0; }\r\n        }\r\n        if (!this.IsNullOrEmpty(RxDetails.patient)) {\r\n          if (this.IsNullOrEmpty(RxDetails.patient.id))\r\n            this.validationtoast(errorconfig.error_30.message, errorconfig.error_30.code);\r\n          if (this.IsNullOrEmpty(RxDetails.patient.firstname))\r\n            this.validationtoast(errorconfig.error_31.message, errorconfig.error_31.code);\r\n          if (this.IsNullOrEmpty(RxDetails.patient.lastname))\r\n            this.validationtoast(errorconfig.error_32.message, errorconfig.error_32.code);\r\n          if (this.IsNullOrEmpty(RxDetails.patient.gender))\r\n            this.validationtoast(errorconfig.error_33.message, errorconfig.error_33.code);\r\n          if (this.IsNullOrEmpty(RxDetails.patient.dob))\r\n            this.validationtoast(errorconfig.error_34.message, errorconfig.error_34.code);\r\n          if (this.IsNullOrEmpty(RxDetails.patient.email))\r\n            this.validationtoast(errorconfig.error_35.message, errorconfig.error_35.code);\r\n          if (this.IsNullOrEmpty(RxDetails.patient.mobile_phone))\r\n            this.validationtoast(errorconfig.error_36.message, errorconfig.error_36.code);\r\n          if (this.IsNullOrEmpty(RxDetails.patient.timezone))\r\n            this.validationtoast(errorconfig.error_37.message, errorconfig.error_37.code);\r\n          if (this.IsNullOrEmpty(RxDetails.patient.address))\r\n            RxDetails.patient.address = {};\r\n          if (this.IsNullOrEmpty(RxDetails.patient.address?.addressline1))\r\n            this.validationtoast(errorconfig.error_67.message, errorconfig.error_67.code);\r\n          if (this.IsNullOrEmpty(RxDetails.patient.address?.addressline2))\r\n            RxDetails.patient.address.addressline2 = \"\";\r\n          if (this.IsNullOrEmpty(RxDetails.patient.address?.suburb))\r\n            this.validationtoast(errorconfig.error_40.message, errorconfig.error_40.code);\r\n          if (this.IsNullOrEmpty(RxDetails.patient.address?.postcode))\r\n            this.validationtoast(errorconfig.error_41.message, errorconfig.error_41.code);\r\n          if (this.IsNullOrEmpty(RxDetails.patient.address?.state))\r\n            this.validationtoast(errorconfig.error_42.message, errorconfig.error_42.code);\r\n          if (this.IsNullOrEmpty(RxDetails.patient.medicare)) {\r\n            RxDetails.patient.medicare = {};\r\n          }\r\n          if (this.IsNullOrEmpty(RxDetails.patient.medicare?.number)) {\r\n            RxDetails.patient.medicare.number = \"\";\r\n          }\r\n          if (this.IsNullOrEmpty(RxDetails.patient.medicare?.reference)) {\r\n            RxDetails.patient.medicare.reference = \"\";\r\n          }\r\n          if (this.IsNullOrEmpty(RxDetails.patient.medicare?.expiry)) {\r\n            RxDetails.patient.medicare.expiry = \"\";\r\n          }\r\n          if (this.IsNullOrEmpty(RxDetails.patient.ihi)) { RxDetails.patient.ihi = 0; }\r\n        }\r\n      }\r\n      else {\r\n        this.validationtoast(errorconfig.error_64.message, errorconfig.error_64.code);\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.commonservice.setlogvalue(false, ex.message, ex.stack, \"HolaRx\", \"validation\");\r\n    }\r\n  }\r\n\r\n  private HIvalidation(value: any) {\r\n    try {\r\n      var warning_msg = '';\r\n      if (!value.is_hpio_valid) {\r\n        warning_msg = value.hpio_response_msg;\r\n      } if (!value.is_hpii_valid) {\r\n        warning_msg += warning_msg == '' ? value.hpi_response_msg : \"<br>\" + value.hpi_response_msg;\r\n      } if (!value.is_ihi_valid) {\r\n        warning_msg += warning_msg == '' ? value.ihi_response_msg : \"<br>\" + value.ihi_response_msg;\r\n      }\r\n      if (!this.IsNullOrEmpty(warning_msg)) {\r\n        this.commonservice.toastopen(warning_msg, \"warning\");\r\n      }\r\n      else if (!this.IsNullOrEmpty(value.ihi_response_msg)) {\r\n        this.commonservice.toastopen(value.ihi_response_msg, \"success\");\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.commonservice.setlogvalue(false, ex.message, ex.stack, \"HolaRx\", \"HIvalidation\");\r\n    }\r\n  }\r\n\r\n  private IsNullOrEmpty(value: any): boolean {\r\n    try {\r\n      if (value === undefined || value === null || String(value).trim() === \"\") {\r\n        return true;\r\n      }\r\n      return false;\r\n    }\r\n    catch (ex: any) {\r\n      this.commonservice.setlogvalue(false, ex.message, ex.stack, \"HolaRx\", \"IsNullOrEmpty\");\r\n      return false;\r\n    }\r\n  }\r\n\r\n  private validationtoast(error_message: any, error_code?: any) {\r\n    try {\r\n      this.commonservice.errorResponse(error_code, error_message);\r\n      if (this.message == \"\") {\r\n        this.message = error_code + \": \" + error_message;\r\n      }\r\n      else {\r\n        this.message += \"<br>\" + error_code + \": \" + error_message;\r\n      }\r\n    }\r\n    catch (ex: any) {\r\n      this.commonservice.setlogvalue(false, ex.message, ex.stack, \"HolaRx\", \"validationtoast\");\r\n    }\r\n  }\r\n\r\n  private errorResponse(error_code: any, error_message: any, successflag: boolean = false): Observable<any> {\r\n    try {\r\n      var response: any = {\r\n        status: successflag == true ? \"success\" : \"error\",\r\n        response: {\r\n          response_code: successflag == true ? error_code : \"\",\r\n          response_message: successflag == true ? error_message : \"\"\r\n        },\r\n        error: {\r\n          error_code: successflag == false ? error_code : \"\",\r\n          error_message: successflag == false ? error_message : \"\"\r\n        }\r\n      }\r\n      console.log(response);\r\n      return of(response);\r\n    }\r\n    catch (ex: any) {\r\n      this.commonservice.setlogvalue(false, ex.message, ex.stack, \"HolaRx\", \"errorResponse\");\r\n      return of(null);\r\n    }\r\n  }\r\n\r\n  private auditlog(value: any, api: any) {\r\n    try {\r\n      var data = {\r\n        identifierValue: this.commonservice.logidentifier,\r\n        identifierType: this.commonservice.logidentifierType,\r\n        requestPayload: value,\r\n        responseCode: \"\",\r\n        responsePayload: \"\",\r\n        createdBy: \"UI-Rx\",\r\n        api: api,\r\n        requestUrl: window.origin\r\n      }\r\n      this.apiservice.Post(data, config.AUDIT_LOG).subscribe((res: any) => {\r\n        //console.log(res);\r\n      }, err => {\r\n        this.commonservice.setlogvalue(false, err.message, err.stack, \"HolaRx\", \"auditlog\");\r\n      })\r\n    }\r\n    catch (ex: any) {\r\n      this.commonservice.setlogvalue(false, ex.message, ex.stack, \"HolaRx\", \"auditlog\");\r\n    }\r\n  }\r\n}\r\n","<!-- <ul class=\"notifications\" ></ul>\r\n<div [class]=\"{'loader_visible':commonLoaderServices.fullScreenLoader,'loader_hidden':!commonLoaderServices.fullScreenLoader}\"\r\n    class=\"splash\">\r\n    <div class=\"pause\">\r\n        <div style=\"text-align: center;\"> <img class=\"spinner-img\"\r\n                src=\"https://passets.hola.health/rx-widgets/rx-hola-health-spinner.png\" alt=\"hola_health\">\r\n        </div>\r\n        <div class=\"spinner\">Loading...</div>\r\n    </div>\r\n</div> -->\r\n\r\n<ng-template #rxwidgets>\r\n</ng-template>","import { Component, ElementRef, EventEmitter, OnInit, Output } from '@angular/core';\r\nimport { CommonServices } from '../services/common';\r\n\r\n@Component({\r\n  selector: 'app-alert-popup',\r\n  templateUrl: './alert-popup.component.html',\r\n  styleUrls: ['./alert-popup.component.css']\r\n})\r\nexport class AlertPopupComponent implements OnInit {\r\n  @Output() closeEvent = new EventEmitter();\r\n  @Output() submitEvent = new EventEmitter();\r\n  Message: string = \"\";\r\n  Messageflag: string = \"\";\r\n  timing: any;\r\n  constructor(private elementRef: ElementRef, private commonservice: CommonServices) {\r\n    document.documentElement.style.setProperty('--subpop_wid', `450px`);\r\n  }\r\n  ngOnInit() {\r\n    try {\r\n      if (this.Messageflag == \"success\")\r\n        document.documentElement.style.setProperty('--border-color', `#008000a1`);\r\n      else if (this.Messageflag == \"error\")\r\n        document.documentElement.style.setProperty('--border-color', `#ff0000bf`);\r\n      else\r\n        document.documentElement.style.setProperty('--border-color', `#E4A11D`);\r\n      setTimeout(() => {\r\n        this.close();\r\n      }, this.timing ? this.timing : 2000);\r\n    }\r\n    catch (ex: any) {\r\n      this.commonservice.setlogvalue(false,ex.message, ex.stack, \"AlertPopupComponent\", \"ngOnInit\");\r\n    }\r\n  }\r\n\r\n  close(): void {\r\n    try {\r\n      this.elementRef.nativeElement.remove();\r\n      this.closeEvent.emit();\r\n    }\r\n    catch (ex: any) {\r\n      this.commonservice.setlogvalue(false,ex.message, ex.stack, \"AlertPopupComponent\", \"close\");\r\n    }\r\n  }\r\n}\r\n","<div style=\"display: grid;margin: 5px;\">\r\n    <div class=\"ReactModal__Overlay\">\r\n      <div class=\"ReactModal__Overlay toast alert_pop\" tabindex=\"-1\" role=\"dialog\">\r\n        <div class=\"icon_cls\"> <i\r\n          class=\"material-icons md-24 alert_icon\" style=\"color: #ff0000bf;\" *ngIf=\"Messageflag=='error'\">error</i><i\r\n          class=\"material-icons md-24 alert_icon success_msg\" *ngIf=\"Messageflag=='success'\">done</i><i\r\n          class=\"material-icons md-24 alert_icon\" style=\"color: #E4A11D;\"\r\n          *ngIf=\"Messageflag=='warning'\">report_problem</i>\r\n        </div>\r\n        <div class=\"toast-body\" [innerHTML]=\"Message\"></div>\r\n      </div>\r\n    </div>\r\n  </div>\r\n  ","import { NgModule } from '@angular/core';\r\nimport { HolaRx } from './hola-rx.component';\r\nimport { ReferralRxComponent } from './referral-rx/referral-rx.component';\r\nimport { CommonModule, DatePipe } from '@angular/common';\r\nimport { AlertPopupComponent } from './alert-popup/alert-popup.component';\r\nimport { RealTimePrescriptionMonitoringComponent } from './real-time-prescription-monitoring/real-time-prescription-monitoring.component';\r\nimport { IsAuthorityComponent } from './is-authority/is-authority.component';\r\nimport { BrandIncludeComponent } from './brand-include/brand-include.component';\r\nimport { AvailableFormulationsComponent } from './brand-include/available-formulations/available-formulations.component';\r\nimport { ConfirmPatientContactDetailsComponent } from './confirm-patient-contact-details/confirm-patient-contact-details.component';\r\nimport { HttpClientModule } from '@angular/common/http';\r\nimport { ApiService } from './services/api.service';\r\nimport { PasswordComponent } from './password/password.component';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { RxComponent } from './rx/rx.component';\r\nimport { ClosePopupComponent } from './close-popup/close-popup.component';\r\nimport { ReissuePopupComponent } from './reissue-popup/reissue-popup.component';\r\nimport { CeasePopupComponent } from './cease-popup/cease-popup.component';\r\nimport { SplashscreenComponent } from './splashscreen/splashscreen.component';\r\nimport { CommonLoaderServices, ConsoleToggleService } from './services/common';\r\n\r\n@NgModule({\r\n  declarations: [\r\n    HolaRx,\r\n    RxComponent,\r\n    ReferralRxComponent, AlertPopupComponent,\r\n    RealTimePrescriptionMonitoringComponent,\r\n    PasswordComponent, IsAuthorityComponent, BrandIncludeComponent,\r\n    AvailableFormulationsComponent, ConfirmPatientContactDetailsComponent,\r\n    ClosePopupComponent,ReissuePopupComponent,CeasePopupComponent,SplashscreenComponent\r\n  ],\r\n  imports: [\r\n    CommonModule,HttpClientModule,\r\n    ReactiveFormsModule,\r\n    FormsModule\r\n  ],\r\n  providers: [ApiService,DatePipe,\r\n  CommonLoaderServices, ConsoleToggleService],\r\n  exports: [\r\n    HolaRx\r\n  ],\r\n  entryComponents: [RxComponent, ReferralRxComponent, AlertPopupComponent,\r\n    RealTimePrescriptionMonitoringComponent,\r\n    PasswordComponent, IsAuthorityComponent, BrandIncludeComponent,\r\n    AvailableFormulationsComponent, ConfirmPatientContactDetailsComponent,\r\n    ClosePopupComponent,ReissuePopupComponent,CeasePopupComponent]\r\n})\r\nexport class HolaRxModule { }\r\n","/*\r\n * Public API Surface of hola-rx\r\n */\r\n\r\nexport * from './lib/hola-rx.service';\r\nexport * from './lib/hola-rx.component';\r\nexport * from './lib/hola-rx.module';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i2.CommonServices","i1.ApiService","i5.SplashscreenComponent","i1.CommonServices","i2","i3","i2.ApiService","i1","i1.CommonLoaderServices"],"mappings":"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"}