{"version":3,"sources":["webpack:///./src/$_lazy_route_resource lazy namespace object","webpack:///./src/app/app-routing.module.ts","webpack:///./src/app/app.component.html","webpack:///./src/app/app.component.ts","webpack:///./src/app/app.module.ts","webpack:///./src/app/area-details/area-details.component.html","webpack:///./src/app/area-details/area-details.component.ts","webpack:///./src/app/bank-case-details/bank-case-details.component.html","webpack:///./src/app/bank-case-details/bank-case-details.component.ts","webpack:///./src/app/casecreation-bank/casecreation-bank.component.html","webpack:///./src/app/casecreation-bank/casecreation-bank.component.ts","webpack:///./src/app/casecreation/casecreation.component.html","webpack:///./src/app/casecreation/casecreation.component.ts","webpack:///./src/app/ftv-case/ftv-case.component.html","webpack:///./src/app/ftv-case/ftv-case.component.ts","webpack:///./src/app/ftv-send-message/ftv-send-message.component.html","webpack:///./src/app/ftv-send-message/ftv-send-message.component.ts","webpack:///./src/app/home/home.component.html","webpack:///./src/app/home/home.component.ts","webpack:///./src/app/imageview/imageview.component.html","webpack:///./src/app/imageview/imageview.component.ts","webpack:///./src/app/log-detail/log-detail.component.html","webpack:///./src/app/log-detail/log-detail.component.ts","webpack:///./src/app/login/login.component.html","webpack:///./src/app/login/login.component.ts","webpack:///./src/app/ltemaster-detail/ltemaster-detail.component.css","webpack:///./src/app/ltemaster-detail/ltemaster-detail.component.html","webpack:///./src/app/ltemaster-detail/ltemaster-detail.component.ts","webpack:///./src/app/map/map.component.html","webpack:///./src/app/map/map.component.ts","webpack:///./src/app/not-compatible/not-compatible.component.css","webpack:///./src/app/not-compatible/not-compatible.component.html","webpack:///./src/app/not-compatible/not-compatible.component.ts","webpack:///./src/app/osv-catchment-area-analysis/osv-catchment-area-analysis.component.html","webpack:///./src/app/osv-catchment-area-analysis/osv-catchment-area-analysis.component.ts","webpack:///./src/app/osv-cfm/osv-cfm.component.html","webpack:///./src/app/osv-cfm/osv-cfm.component.ts","webpack:///./src/app/osv-general-detail1/osv-general-detail1.component.html","webpack:///./src/app/osv-general-detail1/osv-general-detail1.component.ts","webpack:///./src/app/osv-landing-page/osv-landing-page.component.html","webpack:///./src/app/osv-landing-page/osv-landing-page.component.ts","webpack:///./src/app/osv-other/osv-other.component.html","webpack:///./src/app/osv-other/osv-other.component.ts","webpack:///./src/app/osv-property-detail/osv-property-detail.component.html","webpack:///./src/app/osv-property-detail/osv-property-detail.component.ts","webpack:///./src/app/osv-property-radar/osv-property-radar.component.html","webpack:///./src/app/osv-property-radar/osv-property-radar.component.ts","webpack:///./src/app/other-office-cases/other-office-cases.component.html","webpack:///./src/app/other-office-cases/other-office-cases.component.ts","webpack:///./src/app/regional-office/regional-office.component.html","webpack:///./src/app/regional-office/regional-office.component.ts","webpack:///./src/app/report-analysis/report-analysis.component.html","webpack:///./src/app/report-analysis/report-analysis.component.ts","webpack:///./src/app/sbfc-case-creation/sbfc-case-creation.component.html","webpack:///./src/app/sbfc-case-creation/sbfc-case-creation.component.ts","webpack:///./src/app/search-case/search-case.component.html","webpack:///./src/app/search-case/search-case.component.ts","webpack:///./src/app/service/service.ts","webpack:///./src/app/service/sessionGlobalVar.ts","webpack:///./src/app/service/type.ts","webpack:///./src/app/sup-edit-ftv/sup-edit-ftv.component.html","webpack:///./src/app/sup-edit-ftv/sup-edit-ftv.component.ts","webpack:///./src/app/sup-edit/sup-edit.component.html","webpack:///./src/app/sup-edit/sup-edit.component.ts","webpack:///./src/app/sup-ftv-final-valuation/sup-ftv-final-valuation.component.html","webpack:///./src/app/sup-ftv-final-valuation/sup-ftv-final-valuation.component.ts","webpack:///./src/app/sup-home/sup-home.component.html","webpack:///./src/app/sup-home/sup-home.component.ts","webpack:///./src/app/sup-lte-details/sup-lte-details.component.css","webpack:///./src/app/sup-lte-details/sup-lte-details.component.html","webpack:///./src/app/sup-lte-details/sup-lte-details.component.ts","webpack:///./src/app/sup-not-compatable/sup-not-compatable.component.html","webpack:///./src/app/sup-not-compatable/sup-not-compatable.component.ts","webpack:///./src/app/sup-property-details/sup-property-details.component.html","webpack:///./src/app/sup-property-details/sup-property-details.component.ts","webpack:///./src/app/update-address/update-address.component.html","webpack:///./src/app/update-address/update-address.component.ts","webpack:///./src/app/user-profile/user-profile.component.html","webpack:///./src/app/user-profile/user-profile.component.ts","webpack:///./src/app/view-sbfclead/view-sbfclead.component.css","webpack:///./src/app/view-sbfclead/view-sbfclead.component.html","webpack:///./src/app/view-sbfclead/view-sbfclead.component.ts","webpack:///./src/environments/environment.ts","webpack:///./src/main.ts"],"names":[],"mappings":"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","file":"main.js","sourcesContent":["function webpackEmptyAsyncContext(req) {\n\t// Here Promise.resolve().then() is used instead of new Promise() to prevent\n\t// uncaught exception popping up in devtools\n\treturn Promise.resolve().then(function() {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t});\n}\nwebpackEmptyAsyncContext.keys = function() { return []; };\nwebpackEmptyAsyncContext.resolve = webpackEmptyAsyncContext;\nmodule.exports = webpackEmptyAsyncContext;\nwebpackEmptyAsyncContext.id = \"./src/$$_lazy_route_resource lazy recursive\";","import { NgModule } from '@angular/core';\r\nimport { Routes, RouterModule } from '@angular/router';\r\n\r\nconst routes: Routes = [];\r\n\r\n@NgModule({\r\n /* imports: [RouterModule.forRoot(routes)],\r\n exports: [RouterModule] */\r\n})\r\nexport class AppRoutingModule { }\r\n","module.exports = \"\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\"","import { Component } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { SessionService } from './service/sessionGlobalVar';\r\n@Component({\r\n selector: 'app-root',\r\n templateUrl: './app.component.html',\r\n styleUrls: []\r\n})\r\nexport class AppComponent {\r\n title: string = 'Adroit valuation';\r\n isLoggedIn1: boolean = false;\r\n userName: string;\r\n coordinate: boolean = false;\r\n bank: boolean = false;\r\n wrapperclass: string = \"demo\";\r\n sidebarwrapper: string = \"demo2\";\r\n constructor(public sessionService: SessionService, private router: Router) {\r\n\r\n }\r\n ngOnInit() {\r\n this.isLoggedIn1 = this.sessionService.isLoggedIn;\r\n debugger;\r\n if (this.isLoggedIn1) {\r\n this.userName = this.sessionService.getUserName;\r\n \r\n let val = localStorage.getItem(\"roleID\");\r\n \r\n const adoff=this.sessionService.getAdroitOffice;\r\n if (val) {\r\n if (+val == 3 || +val == 10 || +val == 24) {\r\n // if(+adoff==1 || +adoff==39){\r\n if(+adoff!=0 ){\r\n this.router.navigate([\"ReportAnalysis\"]);\r\n }else{\r\n this.router.navigate([\"Home\"]);\r\n }\r\n \r\n } else if (+val == 7) {\r\n this.router.navigate([\"BankCaseDetails\"]);\r\n }\r\n else if (+val == 22) {\r\n this.router.navigate([\"BankCaseDetails\"]);\r\n }\r\n else if (+val == 5 || +val == 11) {\r\n this.router.navigate([\"SupHome\"]);\r\n } else if (+val == 13) {\r\n this.router.navigate([\"RegionalOffice\"]);\r\n }\r\n \r\n }\r\n } else {\r\n this.router.navigate([\"login\"]);\r\n }\r\n }\r\n addCaseBank(e: any) {\r\n const element = e.currentTarget.closest(\"ul\").getElementsByClassName(\"active\");\r\n element[0].classList.remove(\"active\");\r\n e.currentTarget.parentElement.classList.add(\"active\");\r\n this.router.navigate([\"Casecreation\"]);\r\n return false;\r\n }\r\n searchCaseDetails(e:any){\r\n debugger;\r\n const element = e.currentTarget.closest(\"ul\").getElementsByClassName(\"active\");\r\n element[0].classList.remove(\"active\");\r\n e.currentTarget.parentElement.classList.add(\"active\");\r\n this.router.navigate([\"SearchCase\"]);\r\n return false;\r\n }\r\n profile() {\r\n this.router.navigate([\"UserProfile\"]);\r\n return false;\r\n }\r\n ftvCase(e: any) {\r\n debugger;\r\n const osv = document.getElementById(\"liOSV\");\r\n const ftv = document.getElementById(\"liftv\");\r\n // const liOSV = document.getElementById(\"liNotC\");\r\n osv.classList.remove(\"headerActive\");\r\n ftv.classList.add(\"headerActive\");\r\n // liOSV.classList.remove(\"headerActive\");\r\n this.router.navigate([\"FtvCase\"]);\r\n return false;\r\n }\r\n NotCom(e: any) {\r\n const osv = document.getElementById(\"liOSV\");\r\n const ftv = document.getElementById(\"liftv\");\r\n const liOSV = document.getElementById(\"liNotC\");\r\n osv.classList.remove(\"headerActive\");\r\n ftv.classList.remove(\"headerActive\");\r\n liOSV.classList.add(\"headerActive\");\r\n this.router.navigate([\"NotCompatible\"]);\r\n return false;\r\n }\r\n homeOsv(e: any) {\r\n const osv = document.getElementById(\"liOSV\");\r\n const ftv = document.getElementById(\"liftv\");\r\n // const liOSV = document.getElementById(\"liNotC\");\r\n ftv.classList.remove(\"headerActive\");\r\n osv.classList.add(\"headerActive\");\r\n // liOSV.classList.remove(\"headerActive\");\r\n let val = localStorage.getItem(\"roleID\");\r\n if (val) {\r\n if (+val == 3 || +val == 10 || +val == 24) {\r\n this.router.navigate([\"Home\"]);\r\n } else if (+val == 7) {\r\n this.router.navigate([\"BankCaseDetails\"]);\r\n }\r\n else if (+val == 22) {\r\n this.router.navigate([\"BankCaseDetails\"]);\r\n }\r\n }\r\n }\r\n logOut() {\r\n localStorage.clear();\r\n this.router.navigate([\"login\"]);\r\n }\r\n showChild(e) {\r\n const childElement = document.getElementById(\"divChild\");\r\n childElement.style.display = 'block';\r\n }\r\n hideChild(e) {\r\n const childElement = document.getElementById(\"divChild\");\r\n childElement.style.display = 'none';\r\n }\r\n home(e: any) {\r\n debugger;\r\n let val = localStorage.getItem(\"roleID\");\r\n const element = e.currentTarget.closest(\"ul\").getElementsByClassName(\"active\");\r\n element[0].classList.remove(\"active\");\r\n e.currentTarget.parentElement.classList.add(\"active\");\r\n if (+val == 7 ||+val == 22) { }\r\n else{\r\n const osv = document.getElementById(\"liOSV\");\r\n const ftv = document.getElementById(\"liftv\");\r\n ftv.classList.remove(\"headerActive\");\r\n osv.classList.add(\"headerActive\");\r\n }\r\n if (val) {\r\n if (+val == 3 || +val == 10 || +val == 24) {\r\n this.router.navigate([\"Home\"]);\r\n } else if (+val == 7) {\r\n this.router.navigate([\"BankCaseDetails\"]);\r\n }\r\n else if (+val == 22) {\r\n this.router.navigate([\"BankCaseDetails\"]);\r\n }\r\n }\r\n return false;\r\n }\r\n SupHome(e: any) {\r\n const element = e.currentTarget.closest(\"ul\").getElementsByClassName(\"active\");\r\n element[0].classList.remove(\"active\");\r\n e.currentTarget.parentElement.classList.add(\"active\");\r\n this.router.navigate([\"SupHome\"]);\r\n return false;\r\n }\r\n addCase(e: any) {\r\n debugger;\r\n const IsBankLogin= localStorage.getItem(\"IsBankLogin\");\r\n if(IsBankLogin=='True')\r\n {\r\n const element = e.currentTarget.closest(\"ul\").getElementsByClassName(\"active\");\r\n element[0].classList.remove(\"active\");\r\n e.currentTarget.parentElement.classList.add(\"active\");\r\n this.router.navigate([\"CasecreationBank\"]);\r\n return false;\r\n }else{\r\n const element = e.currentTarget.closest(\"ul\").getElementsByClassName(\"active\");\r\n element[0].classList.remove(\"active\");\r\n e.currentTarget.parentElement.classList.add(\"active\");\r\n this.router.navigate([\"Casecreation\"]);\r\n return false;\r\n }\r\n }\r\n otherOffice(e: any) {\r\n const element = e.currentTarget.closest(\"ul\").getElementsByClassName(\"active\");\r\n element[0].classList.remove(\"active\");\r\n e.currentTarget.parentElement.classList.add(\"active\");\r\n this.router.navigate([\"OtherOfficeCases\"]);\r\n return false;\r\n }\r\n SBFCLead(e: any) {\r\n const element = e.currentTarget.closest(\"ul\").getElementsByClassName(\"active\");\r\n element[0].classList.remove(\"active\");\r\n e.currentTarget.parentElement.classList.add(\"active\");\r\n this.router.navigate([\"ViewSBFCLead\"]);\r\n return false;\r\n }\r\n GoogleMap() {\r\n this.router.navigate([\"GoogleMap\"]);\r\n return false;\r\n }\r\n\r\n}\r\n","import { BrowserModule } from '@angular/platform-browser';\r\nimport { NgModule } from '@angular/core';\r\nimport { RouterModule, Routes } from '@angular/router';\r\nimport { AppRoutingModule } from './app-routing.module';\r\nimport { AppComponent } from './app.component';\r\nimport { LoginComponent } from './login/login.component';\r\nimport { HomeComponent } from './home/home.component';\r\nimport { CasecreationComponent } from './casecreation/casecreation.component';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\nimport { NgMultiSelectDropDownModule } from 'ng-multiselect-dropdown';\r\nimport { ApiService } from './service/service';\r\nimport { IUserLogin } from './service/type';\r\nimport { NgxUiLoaderService, NgxUiLoaderModule } from 'ngx-ui-loader';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { LogDetailComponent } from './log-detail/log-detail.component';\r\nimport { UserProfileComponent } from './user-profile/user-profile.component';\r\nimport { BankCaseDetailsComponent } from './bank-case-details/bank-case-details.component';\r\nimport { FtvCaseComponent } from './ftv-case/ftv-case.component';\r\nimport { SupHomeComponent } from './sup-home/sup-home.component';\r\nimport { SupEditComponent } from './sup-edit/sup-edit.component';\r\nimport { RegionalOfficeComponent } from './regional-office/regional-office.component';\r\nimport { SupEditFtvComponent } from './sup-edit-ftv/sup-edit-ftv.component';\r\nimport { UpdateAddressComponent } from './update-address/update-address.component';\r\nimport { SupFtvFinalValuationComponent } from './sup-ftv-final-valuation/sup-ftv-final-valuation.component';\r\nimport { ImageviewComponent } from './imageview/imageview.component';\r\nimport { OsvGeneralDetail1Component } from './osv-general-detail1/osv-general-detail1.component';\r\nimport { OsvPropertyDetailComponent } from './osv-property-detail/osv-property-detail.component';\r\nimport { OsvCfmComponent } from './osv-cfm/osv-cfm.component';\r\nimport { OsvOtherComponent } from './osv-other/osv-other.component';\r\nimport { AreaDetailsComponent } from './area-details/area-details.component';\r\nimport { SearchCaseComponent } from './search-case/search-case.component';\r\nimport { MapComponent } from './map/map.component';\r\nimport { OsvCatchmentAreaAnalysisComponent } from './osv-catchment-area-analysis/osv-catchment-area-analysis.component';\r\nimport { OsvLandingPageComponent } from './osv-landing-page/osv-landing-page.component';\r\nimport { FtvSendMessageComponent } from './ftv-send-message/ftv-send-message.component';\r\nimport { LTEMasterDetailComponent } from './ltemaster-detail/ltemaster-detail.component';\r\nimport { SupLteDetailsComponent } from './sup-lte-details/sup-lte-details.component';\r\nimport { HttpClientModule } from '@angular/common/http';\r\nimport {A11yModule} from '@angular/cdk/a11y';\r\nimport {DragDropModule} from '@angular/cdk/drag-drop';\r\nimport {PortalModule} from '@angular/cdk/portal';\r\nimport {ScrollingModule} from '@angular/cdk/scrolling';\r\nimport {CdkStepperModule} from '@angular/cdk/stepper';\r\nimport {CdkTableModule} from '@angular/cdk/table';\r\nimport {CdkTreeModule} from '@angular/cdk/tree';\r\nimport {MatAutocompleteModule} from '@angular/material/autocomplete';\r\nimport {MatBadgeModule} from '@angular/material/badge';\r\nimport {MatBottomSheetModule} from '@angular/material/bottom-sheet';\r\nimport {MatButtonModule} from '@angular/material/button';\r\nimport {MatButtonToggleModule} from '@angular/material/button-toggle';\r\nimport {MatCardModule} from '@angular/material/card';\r\nimport {MatCheckboxModule} from '@angular/material/checkbox';\r\nimport {MatChipsModule} from '@angular/material/chips';\r\nimport {MatStepperModule} from '@angular/material/stepper';\r\nimport {MatDatepickerModule} from '@angular/material/datepicker';\r\nimport {MatDialogModule} from '@angular/material/dialog';\r\nimport {MatDividerModule} from '@angular/material/divider';\r\nimport {MatExpansionModule} from '@angular/material/expansion';\r\nimport {MatGridListModule} from '@angular/material/grid-list';\r\nimport {MatIconModule} from '@angular/material/icon';\r\nimport {MatInputModule} from '@angular/material/input';\r\nimport {MatListModule} from '@angular/material/list';\r\nimport {MatMenuModule} from '@angular/material/menu';\r\nimport {MatNativeDateModule, MatRippleModule} from '@angular/material/core';\r\nimport {MatPaginatorModule} from '@angular/material/paginator';\r\nimport {MatProgressBarModule} from '@angular/material/progress-bar';\r\nimport {MatProgressSpinnerModule} from '@angular/material/progress-spinner';\r\nimport {MatRadioModule} from '@angular/material/radio';\r\nimport {MatSelectModule} from '@angular/material/select';\r\nimport {MatSidenavModule} from '@angular/material/sidenav';\r\nimport {MatSliderModule} from '@angular/material/slider';\r\nimport {MatSlideToggleModule} from '@angular/material/slide-toggle';\r\nimport {MatSnackBarModule} from '@angular/material/snack-bar';\r\nimport {MatSortModule} from '@angular/material/sort';\r\nimport {MatTableModule} from '@angular/material/table';\r\nimport {MatTabsModule} from '@angular/material/tabs';\r\nimport {MatToolbarModule} from '@angular/material/toolbar';\r\nimport {MatTooltipModule} from '@angular/material/tooltip';\r\nimport {MatTreeModule} from '@angular/material/tree';\r\nimport {OverlayModule} from '@angular/cdk/overlay';\r\nimport { OsvPropertyRadarComponent } from './osv-property-radar/osv-property-radar.component';\r\nimport { SUPPropertyDetailsComponent } from './sup-property-details/sup-property-details.component';\r\nimport { ReportAnalysisComponent } from './report-analysis/report-analysis.component';\r\nimport { NotCompatibleComponent } from './not-compatible/not-compatible.component';\r\nimport { ImgMagnifier } from \"ng-img-magnifier\";\r\nimport { SupNotCompatableComponent } from './sup-not-compatable/sup-not-compatable.component';\r\nimport { NgxImageZoomModule } from 'ngx-image-zoom';\r\nimport { OtherOfficeCasesComponent } from './other-office-cases/other-office-cases.component';\r\nimport { ViewSBFCLeadComponent } from './view-sbfclead/view-sbfclead.component';\r\nimport { SbfcCaseCreationComponent } from './sbfc-case-creation/sbfc-case-creation.component';\r\nimport { CasecreationBankComponent } from './casecreation-bank/casecreation-bank.component';\r\nconst appRoutes: Routes = [\r\n\r\n\r\n\r\n { path: \"\", redirectTo: \"login\", pathMatch: \"full\" },\r\n { path: \"SupEditFtv\", component: SupEditFtvComponent },\r\n { path: \"AreaDetails\", component: AreaDetailsComponent },\r\n { path: \"SupHome\", component: SupHomeComponent },\r\n { path: \"UpdateAddress\", component: UpdateAddressComponent },\r\n { path: \"SupEdit\", component: SupEditComponent },\r\n { path: \"BankCaseDetails\", component: BankCaseDetailsComponent },\r\n { path: \"login\", component: LoginComponent },\r\n { path: \"Home\", component: HomeComponent },\r\n { path: \"Casecreation\", component: CasecreationComponent },\r\n { path: \"FtvCase\", component: FtvCaseComponent },\r\n { path: \"logDetails\", component: LogDetailComponent },\r\n { path: \"UserProfile\", component: UserProfileComponent },\r\n { path: \"RegionalOffice\", component: RegionalOfficeComponent },\r\n { path: \"SupFtvFinalValuation\", component: SupFtvFinalValuationComponent },\r\n\r\n { path: \"OsvGeneralDetail1\", component: OsvGeneralDetail1Component },\r\n { path: \"SUPPropertyDetails\", component: OsvPropertyDetailComponent },\r\n { path: \"OsvCfm\", component: OsvCfmComponent },\r\n { path: \"OsvOther\", component: OsvOtherComponent },\r\n { path: \"SearchCase\", component: SearchCaseComponent },\r\n { path: \"OsvCatchmentAreaAnalysis\", component: OsvCatchmentAreaAnalysisComponent },\r\n {path:\"OsvLandingPageComponent\",component:OsvLandingPageComponent},\r\n {path:\"FtvSendMessage\",component:FtvSendMessageComponent},\r\n {path:\"LTEMasterDetails\",component:LTEMasterDetailComponent},\r\n {path:\"SUPLTEDetails\",component:SupLteDetailsComponent},\r\n {path:\"PropertyRadar\",component:OsvPropertyRadarComponent},\r\n {path:\"OsvPropertyDetail\",component:SUPPropertyDetailsComponent},\r\n {path:\"ReportAnalysis\",component:ReportAnalysisComponent},\r\n {path:\"NotCompatible\",component:NotCompatibleComponent},\r\n {path:\"SupNotCompatable\",component:SupNotCompatableComponent},\r\n {path:\"OtherOfficeCases\",component:OtherOfficeCasesComponent},\r\n {path:\"ViewSBFCLead\",component:ViewSBFCLeadComponent},\r\n {path:\"SbfcCaseCreation\",component:SbfcCaseCreationComponent},\r\n { path: \"CasecreationBank\", component: CasecreationBankComponent }\r\n];\r\n@NgModule({\r\n declarations: [\r\n AppComponent,\r\n LoginComponent,\r\n HomeComponent,\r\n CasecreationComponent,\r\n LogDetailComponent,\r\n UserProfileComponent,\r\n BankCaseDetailsComponent,\r\n FtvCaseComponent,\r\n SupHomeComponent,\r\n SupEditComponent,\r\n RegionalOfficeComponent,\r\n SupEditFtvComponent,\r\n UpdateAddressComponent,\r\n SupFtvFinalValuationComponent,\r\n ImageviewComponent,\r\n OsvGeneralDetail1Component,\r\n OsvPropertyDetailComponent,\r\n OsvCfmComponent,\r\n OsvOtherComponent,\r\n AreaDetailsComponent,\r\n SearchCaseComponent,\r\n MapComponent,\r\n OsvCatchmentAreaAnalysisComponent,\r\n OsvLandingPageComponent,\r\n FtvSendMessageComponent,\r\n LTEMasterDetailComponent,\r\n SupLteDetailsComponent,\r\n OsvPropertyRadarComponent,\r\n SUPPropertyDetailsComponent,\r\n ReportAnalysisComponent,\r\n NotCompatibleComponent,\r\n SupNotCompatableComponent,\r\n OtherOfficeCasesComponent,\r\n ViewSBFCLeadComponent,\r\n SbfcCaseCreationComponent,\r\n CasecreationBankComponent,\r\n ],\r\n imports: [\r\n BrowserModule,\r\n BrowserAnimationsModule,\r\n AppRoutingModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n NgxUiLoaderModule,\r\n HttpClientModule,\r\n A11yModule,\r\n CdkStepperModule,\r\n CdkTableModule,\r\n CdkTreeModule,\r\n DragDropModule,\r\n MatAutocompleteModule,\r\n MatBadgeModule,\r\n MatBottomSheetModule,\r\n MatButtonModule,\r\n MatButtonToggleModule,\r\n MatCardModule,\r\n MatCheckboxModule,\r\n MatChipsModule,\r\n MatStepperModule,\r\n MatDatepickerModule,\r\n MatDialogModule,\r\n MatDividerModule,\r\n MatExpansionModule,\r\n MatGridListModule,\r\n MatIconModule,\r\n MatInputModule,\r\n MatListModule,\r\n MatMenuModule,\r\n MatNativeDateModule,\r\n MatPaginatorModule,\r\n MatProgressBarModule,\r\n MatProgressSpinnerModule,\r\n MatRadioModule,\r\n MatRippleModule,\r\n MatSelectModule,\r\n MatSidenavModule,\r\n MatSliderModule,\r\n MatSlideToggleModule,\r\n MatSnackBarModule,\r\n MatSortModule,\r\n MatTableModule,\r\n MatTabsModule,\r\n MatToolbarModule,\r\n MatTooltipModule,\r\n MatTreeModule,\r\n OverlayModule,\r\n PortalModule,\r\n ScrollingModule,\r\n ImgMagnifier,\r\n RouterModule.forRoot(appRoutes, { useHash: true }),\r\n NgMultiSelectDropDownModule.forRoot(),\r\n NgxImageZoomModule,\r\n ],\r\n providers: [ApiService, IUserLogin, NgxUiLoaderService],\r\n bootstrap: [AppComponent],\r\n})\r\nexport class AppModule {}\r\n//AgmCoreModule.forRoot({apiKey: 'AIzaSyBMf6lk6ZkFLWsgE0eyVTIR6f-89zjKMgc'})","module.exports = \"\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n

Area Details

\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\"","import { Component, OnInit } from '@angular/core';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { ApiService } from '../service/service';\r\nimport { SessionService } from '../service/sessionGlobalVar';\r\nimport { IAreaDetails} from '../service/type'\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport Swal from 'sweetalert2';\r\n@Component({\r\n selector: 'app-area-details',\r\n templateUrl: './area-details.component.html',\r\n styleUrls: []\r\n})\r\nexport class AreaDetailsComponent implements OnInit {\r\n caseID: string;\r\n NameOfOwnerPerDocument: string=\"\";\r\n PropertyAddressDoc: string=\"\";\r\n PlotNoPerDoc: string=\"\";\r\n PropertyAreaApprovedPlan: string=\"\";\r\n AreaPlotPerDoc: string=\"\";\r\n Front: string=\"\";\r\n Side1: string=\"\";\r\n Side2: string=\"\";\r\n Rear: string=\"\";\r\n North: string=\"\";\r\n East: string=\"\";\r\n west: string=\"\";\r\n South: string=\"\";\r\n ro_mode:string=\"N\";\r\n constructor(private router: Router, private service: ApiService, private ngxService: NgxUiLoaderService, private session: SessionService, private route: ActivatedRoute) { }\r\n\r\n ngOnInit() {\r\n this.route.params.subscribe(params => {\r\n if (params.id) {\r\n this.caseID = window.atob(params.id);\r\n this.getAreaDetails();\r\n\r\n }\r\n });\r\n }\r\n bindValue(val:any){\r\n this. NameOfOwnerPerDocument= val.OwnerName,\r\n this. PropertyAddressDoc=val.Address,\r\n this. PlotNoPerDoc= val.PlotNo,\r\n this. PropertyAreaApprovedPlan=val.PropertyAreaApproved,\r\n this. AreaPlotPerDoc=val.PropertyAreaDoc,\r\n this. Front=val.frontSetback,\r\n this. Side1=val.Side1Setback,\r\n this. Side2=val.Side2Setback,\r\n this. Rear=val.Rear,\r\n this. North=val.NorthBoundary,\r\n this. East=val.EastBoundary,\r\n this. west=val.WestBoundary,\r\n this. South=val.SouthBoundary\r\n this.ro_mode=val.lte_mode\r\n }\r\n getAreaDetails(){\r\n \r\n ApiService.GetAreaDetails(this.caseID).then((responce: any) => {\r\n \r\n this.ngxService.stop();\r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n this.bindValue(responce.data);\r\n }\r\n }\r\n }).catch((e: any) => {\r\n \r\n this.ngxService.stop();\r\n console.log(\"Getting Error In GetEditCaseDetail\");\r\n Swal.fire('Oops...', 'Something went wrong!', 'error');\r\n });\r\n }\r\n LTEDetail() {\r\n const data = window.btoa(this.caseID); \r\n this.router.navigate([\"/LTEMasterDetails\", { id: data }]); \r\n }\r\n SaveAreaDetail() {\r\n \r\n this.ngxService.start();\r\n if(!this.East){this.East=\"\"}\r\n if(!this.west){this.west=\"\"}\r\n if(!this.PropertyAddressDoc){this.PropertyAddressDoc=\"\"}\r\n if(!this.PlotNoPerDoc){this.PlotNoPerDoc=\"\"}\r\n if(!this.NameOfOwnerPerDocument){this.NameOfOwnerPerDocument=\"\"}\r\n if(!this.PropertyAreaApprovedPlan){this.PropertyAreaApprovedPlan=\"\"}\r\n if(!this.AreaPlotPerDoc){this.AreaPlotPerDoc=\"\"}\r\n if(!this.North){this.North=\"\"}\r\n if(!this.South){this.South=\"\"}\r\n if(!this.East){this.East=\"\"}\r\n if(!this.west){this.west=\"\"}\r\n\r\n\r\n\r\n let val:IAreaDetails = {\r\n CaseID :this.caseID,\r\n OwnerName :this.NameOfOwnerPerDocument,\r\n Address :this.PropertyAddressDoc,\r\n PlotNo :this.PlotNoPerDoc,\r\n PropertyAreaApproved :this.PropertyAreaApprovedPlan,\r\n PropertyAreaDoc :this.AreaPlotPerDoc,\r\n frontSetback :\"\",\r\n Side1Setback :\"\",\r\n Side2Setback :\"\",\r\n Rear :\"\",\r\n EastBoundary :this.East,\r\n WestBoundary :this.west,\r\n NorthBoundary :this.North,\r\n SouthBoundary :this.South,\r\n LoginID :this.session.UserID\r\n }\r\n ApiService.SaveAreaDetails(val).then((responce: any) => {\r\n this.ngxService.stop();\r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n Swal.fire(\"Thanks\", \"Save Successfully\", \"success\");\r\n this.router.navigate([\"Home\"]);\r\n }\r\n }\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n console.log(\"Getting Error In GetEditCaseDetail\");\r\n Swal.fire('Oops...', 'Something went wrong!', 'error');\r\n });\r\n }\r\n\r\n}\r\n","module.exports = \"
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
Case UID {{element.CaseUID}} Name {{element.Name}} Mobile {{element.Mobile}} Bank {{element.Bank}} Location {{element.Location}} Case Action {{element.CaseStatus}} Engineer Status {{element.Engstatus}} CR.Date {{element.CrDate}} Action \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n

{{HeaderText}}

\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n {{CaseRefNo}}\\r\\n
\\r\\n \\r\\n
\\r\\n {{CustomerName}}\\r\\n
\\r\\n \\r\\n
\\r\\n {{CustomerMobile}}\\r\\n
\\r\\n
\\r\\n \\r\\n

\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n

{{HeaderText}}

\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\"","import { Component, OnInit, Renderer2, ElementRef, Output, Input, EventEmitter, Directive, ViewChild } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { ApiService } from '../service/service';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { SessionService } from '../service/sessionGlobalVar';\r\nimport { IGridInput, IGetCityLocation, IUpdateStatus,ICaseCreate } from '../service/type'\r\nimport { analyzeAndValidateNgModules } from '@angular/compiler';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport {MatPaginator,MatTableDataSource,MatSort,Sort} from '@angular/material';\r\nimport Swal from 'sweetalert2';\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: 'app-bank-case-details',\r\n templateUrl: './bank-case-details.component.html',\r\n styleUrls: []\r\n})\r\n@Directive({\r\n selector: '[rootSelecter]'\r\n})\r\n\r\nexport class BankCaseDetailsComponent implements OnInit {\r\n GridDetail: [];\r\n GridPublish: [];\r\n GridReview: [];\r\n isShowAllocation: boolean = true;\r\n isShowReview: boolean;\r\n isShowPublish: boolean;\r\n IsEditStatus: boolean = false;\r\n IsEditmessage: boolean = false;\r\n valEngineer: any;\r\n status: any;\r\n selectedStatus: string;\r\n selectedEngvalue: string;\r\n HeaderText: string;\r\n IsDocument: boolean = false;\r\n Component1Variable: string = \"Component1VariableSent\";\r\n logID: string;\r\n inptRemark: string;\r\n msgType: string;\r\n updatedFiles: any;\r\n CustomerName:string;\r\n CustomerMobile:string;\r\n CaseRefNo:string;\r\n NewNumber:string;\r\n sanctionPlanDoc: any;\r\n getdocurl :any;\r\n displayedColumnsAllocation: string[] = ['CaseUID', 'name','mobileno', 'Bank', 'Location','CaseAction','EngineerStatus','CRDate','Action'];\r\n dataSourceAllocation = new MatTableDataSource;\r\n applyFilter(filterValue: string) {\r\n this.dataSourceAllocation.filter = filterValue.trim().toLowerCase();\r\n }\r\n @ViewChild(MatPaginator) paginator: MatPaginator;\r\n @ViewChild(MatSort) sort: MatSort;\r\n constructor(private router: Router, private service: ApiService, private session: SessionService, private ngxService: NgxUiLoaderService, private renderer: Renderer2, private el: ElementRef) {\r\n this.getMainGridData();\r\n // this.ngxService.startLoader('loader-01')\r\n // Swal.fire('Oops...', 'Something went wrong!', 'error');\r\n// Swal.fire('Thanks...',\"Done Thanks...\",'success');\r\n}\r\nngOnInit() {\r\n const p = this.el.nativeElement;\r\n this.renderer.addClass(this.el.nativeElement, 'abc');\r\n}\r\n\r\n\r\nPublishReopen(e) {\r\n this.HeaderText = \"Update Action\";\r\n this.logID = e.currentTarget.parentElement.firstElementChild.value;\r\n if (this.logID) {\r\n this.getCityLocation();\r\n this.getStatus(\"CaseStatus\");\r\n this.IsEditStatus = true;\r\n this.IsDocument = false;\r\n this.msgType = \"Case status changed from Publish\";\r\n }\r\n}\r\nsendReminder(e) {\r\n this.logID = e.currentTarget.parentElement.firstElementChild.value;\r\n alert(\"Send Reminder\");\r\n}\r\ndocument(e) {\r\n this.logID = e.currentTarget.parentElement.firstElementChild.value;\r\n alert(\"Documnt\");\r\n}\r\nfees(e) {\r\n this.logID = e.currentTarget.parentElement.firstElementChild.value;\r\n alert(\"fee\");\r\n}\r\n\r\nHideModel() {\r\n this.IsEditStatus = false;\r\n}\r\nHideMessageModel() {\r\n this.IsEditmessage = false;\r\n}\r\neditStatusReview(e) {\r\n this.HeaderText = \"Update Action\";\r\n this.logID = e.currentTarget.parentElement.firstElementChild.value;\r\n if (this.logID) {\r\n this.getCityLocation();\r\n this.getStatus(\"CaseStatus\");\r\n this.IsEditStatus = true;\r\n this.IsDocument = false;\r\n this.msgType = \"Case status changed from Review\";\r\n // this.router.navigate([\"logDetails\"]);\r\n }\r\n}\r\nupdateStatus() {\r\n if (this.logID) {\r\n const p = this.selectedStatus;\r\n const sk = this.inptRemark;\r\n const engVal = this.selectedEngvalue;\r\n const val: IUpdateStatus = {\r\n Case_id: this.logID,\r\n CaseStatus: this.selectedStatus,\r\n statusRemark: this.inptRemark,\r\n Assignto: this.selectedEngvalue,\r\n Message: this.msgType,\r\n LoginID: this.session.UserID\r\n }\r\n this.ngxService.start();\r\n ApiService.UpdateStatus(val).then((responce: any) => {\r\n if (responce.status === 200) {\r\n alert(\"status Updated\");\r\n if (responce.data) {\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong in status Update!', 'error');\r\n // alert(\"Error\" + e.message);\r\n });\r\n }\r\n}\r\nhandleFileSelect(evt) {\r\n this.updatedFiles = evt.target.files;\r\n};\r\nhandleSanctionPlanDoc(evt) {\r\n this.sanctionPlanDoc = evt.target.files;\r\n}\r\nupdateDocument() {\r\n \r\n if (this.logID) {\r\n if (this.sanctionPlanDoc || this.updatedFiles) {\r\n \r\n let formData = new FormData();\r\n if (this.updatedFiles) {\r\n for (let val of this.updatedFiles) {\r\n formData.append(\"CaseID\", this.logID);\r\n formData.append(\"imgname\", val.name);\r\n formData.append(\"files\", val);\r\n }\r\n }\r\n if (this.sanctionPlanDoc) {\r\n formData.append(\"CaseID\", this.logID);\r\n formData.append(\"imgname\", this.sanctionPlanDoc[0].name);\r\n formData.append(\"files\", this.sanctionPlanDoc[0]);\r\n }\r\n \r\n this.ngxService.start();\r\n ApiService.UpdateDocument(formData).then((responce: any) => {\r\n \r\n \r\n if (responce.status === 200) {\r\n this.IsEditStatus = false;\r\n this.sanctionPlanDoc = undefined;\r\n this.updatedFiles = undefined;\r\n Swal.fire('Success...', 'Upload Document Sucessfully!', 'success');\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong in document update!', 'error');\r\n });\r\n } else {\r\n Swal.fire('Oops...', 'Please select atleast one document!', 'warning');\r\n }\r\n }\r\n}\r\nsendMessageAnotherNumber(){\r\n\r\n let data: ICaseCreate = {\r\n CaseID: this.logID /* .currentTarget.parentElement.firstElementChild.value */,\r\n Bank_id: \"\",\r\n branch_id: \"\",\r\n person_id: \"\",\r\n ValuationTypeID: \"2\",\r\n ApplicantName_Name: \"\",\r\n ApplicanttitleN: \"\",\r\n Applicant_nameN: \"\",\r\n Block: \"\",\r\n BuildingNameN: \"\",\r\n StreatRoadN: \"\",\r\n SectorN: \"\",\r\n state_id: \"\",\r\n distict: \"\",\r\n City_id: \"\",\r\n Locality_id: \"\",\r\n BuildingNo: \"\",\r\n propertyno: \"\",\r\n Property_titleN: \"\",\r\n PropertyValueN: \"\",\r\n Streat: \"\",\r\n landmark: \"\",\r\n SubLocality_id: \"\",\r\n pincode: \"\",\r\n ContactPersonName: \"\",\r\n Mob1: this.NewNumber,\r\n Mob2: \"\",\r\n vertical: \"\",\r\n casetype: \"\",\r\n Assignto: \"\",\r\n Case_statusID: \"\",\r\n supervisorID: \"\",\r\n StatusRemark: \"\",\r\n FileNo: \"\",\r\n Area: \"\",\r\n CaseRemark: \"\",\r\n Document_id: \"\",\r\n LoginID: this.session.UserID,\r\n OldCaseID: \"\",\r\n ActualFees: \"\",\r\n ExtraFees: \"\",\r\n TotalFees: \"\",\r\n Conveyance: \"\",\r\n ApprovalPersonName: \"\",\r\n ApprovalContact: \"\",\r\n ApprovalDocPath: \"0\",\r\n AssignType: \"D\",\r\n usage:\"\",\r\n propertytype:\"\",\r\n Operation: \"Insert\",\r\n PaymentType:\"\",\r\n Zone_id:\"\",\r\n Vertical_id:\"\",\r\n ENgConv:\"\",\r\n Approval_Remarks:\"\",\r\n FeesType:\"\",\r\n ExtraEngConv:\"\",\r\n ExtraEngConvRemark:\"\",\r\n IsOtherOffice:\"\",\r\n OtherOffice:\"\",\r\n adroitbranch:\"\",\r\n }\r\n \r\n ApiService.FtvUpdatenumber(data).then((responce: any) => {\r\n \r\n this.ngxService.stop();\r\n if (responce.status === 200) {\r\n Swal.fire('Thanks...', 'Send Message Successfully', 'success');\r\n this.router.navigate([\"Home\"]);\r\n \r\n }\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n console.log(\"Getting Error In caseCreate\",e);\r\n Swal.fire('Oops...', 'Something went wrong!', 'error');\r\n });\r\n\r\n \r\n}\r\nResendMessage(){\r\n\r\n let data: ICaseCreate = {\r\n CaseID: this.logID /* .currentTarget.parentElement.firstElementChild.value */,\r\n Bank_id: \"\",\r\n branch_id: \"\",\r\n person_id: \"\",\r\n ValuationTypeID: \"2\",\r\n ApplicantName_Name: \"\",\r\n ApplicanttitleN: \"\",\r\n Applicant_nameN: \"\",\r\n Block: \"\",\r\n BuildingNameN: \"\",\r\n StreatRoadN: \"\",\r\n SectorN: \"\",\r\n state_id: \"\",\r\n distict: \"\",\r\n City_id: \"\",\r\n Locality_id: \"\",\r\n BuildingNo: \"\",\r\n propertyno: \"\",\r\n Property_titleN: \"\",\r\n PropertyValueN: \"\",\r\n Streat: \"\",\r\n landmark: \"\",\r\n SubLocality_id: \"\",\r\n pincode: \"\",\r\n ContactPersonName: \"\",\r\n Mob1: \"\",\r\n Mob2: \"\",\r\n vertical: \"\",\r\n casetype: \"\",\r\n Assignto: \"\",\r\n Case_statusID: \"\",\r\n supervisorID: \"\",\r\n StatusRemark: \"\",\r\n FileNo: \"\",\r\n Area: \"\",\r\n CaseRemark: \"\",\r\n Document_id: \"\",\r\n LoginID: this.session.UserID,\r\n OldCaseID: \"\",\r\n ActualFees: \"\",\r\n ExtraFees: \"\",\r\n TotalFees: \"\",\r\n Conveyance: \"\",\r\n ApprovalPersonName: \"\",\r\n ApprovalContact: \"\",\r\n ApprovalDocPath: \"0\",\r\n AssignType: \"D\",\r\n usage:\"\",\r\n propertytype:\"\",\r\n Operation: \"\",\r\n PaymentType:\"\",\r\n Zone_id:\"\",\r\n Vertical_id:\"\",\r\n ENgConv:\"\",\r\n Approval_Remarks:\"\",\r\n FeesType:\"\",\r\n ExtraEngConv:\"\",\r\n ExtraEngConvRemark:\"\",\r\n IsOtherOffice:\"\",\r\n OtherOffice:\"\",\r\n adroitbranch:\"\",\r\n }\r\n \r\n ApiService.FtvSendSMS(data).then((responce: any) => {\r\n \r\n this.ngxService.stop();\r\n if (responce.status === 200) {\r\n Swal.fire('Thanks...', 'Resend Message Successfully', 'success');\r\n this.router.navigate([\"Home\"]);\r\n \r\n }\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n console.log(\"Getting Error In caseCreate\",e);\r\n Swal.fire('Oops...', 'Something went wrong!', 'error');\r\n });\r\n\r\n \r\n}\r\nviewMessage(caseuid,caseid,number,name) {\r\n this.logID = caseid;\r\n this.HeaderText = \"Resend message or send to another no.\";\r\n this.CustomerName=name;\r\n this.CustomerMobile=number;\r\n this.CaseRefNo=caseuid;\r\n \r\n if (this.logID) {\r\n this.IsEditmessage = true;\r\n // this.IsDocument = true;\r\n }\r\n}\r\nDeleteDoc(e){\r\n \r\n this.ngxService.start();\r\n let val = {\r\n Case_id: this.logID,\r\n Status: \"\",\r\n FilePath: e,\r\n Type: \"doc\",\r\n Message: \"\",\r\n LoginID: this.session.UserID\r\n }\r\n \r\n ApiService.DeleteDocument(val).then((responce: any) => {\r\n if (responce.status == 200) { \r\n this.IsEditStatus = false;\r\n Swal.fire('Success...', 'Delete Document Sucessfully!', 'success');\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n}\r\naddDoc(e) {\r\n \r\n this.logID = e;\r\n this.HeaderText = \"Upload Document\";\r\n if (this.logID) {\r\n this.IsEditStatus = true;\r\n this.IsDocument = true;\r\n this.ngxService.start();\r\n ApiService.SupSidebar(this.logID).then((responce: any) => {\r\n \r\n if (responce.status == 200) {\r\n if (responce.data) { \r\n this.getdocurl=responce.data.CaseDoc;\r\n for (const Dvalue in responce.data.CaseDoc) {\r\n \r\n let docValss = {\r\n url: this.getdocurl[Dvalue].url,\r\n name: this.getdocurl[Dvalue].name\r\n }\r\n this.getdocurl[Dvalue] = docValss;\r\n }\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n}\r\nlogDetail(e) {\r\n this.logID = e;\r\n if (this.logID) {\r\n this.router.navigate([\"/logDetails\", { id: this.logID }]);\r\n }\r\n}\r\nonEngChange(e) {\r\n const Val = this.getEngValue(e.target.value);\r\n this.selectedEngvalue = Val.AttributeID;\r\n}\r\ngetEngValue(selectedName: string) {\r\n return this.valEngineer.find(val => val.AttributeName === selectedName);\r\n}\r\ngetCityLocation() {\r\n let val: IGetCityLocation = {\r\n GetType: \"Engineer\",\r\n StateID: \"\",\r\n CityID: \"\",\r\n LocID: \"\"\r\n }\r\n this.ngxService.start();\r\n ApiService.GetCityLocation(val).then((responce: any) => {\r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n this.valEngineer = responce.data.DATA;\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n}\r\ngetStatus(val: string) {\r\n this.ngxService.start();\r\n ApiService.GetMaster(val).then((responce: any) => {\r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n this.status = responce.data.DATA;\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n}\r\n\r\naddCase() {\r\n this.router.navigate([\"Casecreation\"]);\r\n}\r\ngetMainGridData() {\r\n let val: any = {\r\n LoginID: this.session.UserID,\r\n RoleID: this.session.getRoleID,\r\n UserBankBranch: this.session.BankBranchID,\r\n SelectedBranchPersonID: \"\", \r\n }\r\n this.ngxService.start();\r\n ApiService.GetBankCaseDetail(val).then((responce: any) => {\r\n \r\n if (responce.status === 200) {\r\n if (responce.data) { \r\n this.GridDetail = responce.data; \r\n this.dataSourceAllocation=new MatTableDataSource(responce.data);\r\n this.dataSourceAllocation.paginator = this.paginator; \r\n this.dataSourceAllocation.sort = this.sort; \r\n /* setTimeout(function () {\r\n $(function () {\r\n $(\"#example1\").DataTable();\r\n });\r\n }, 1000); */\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n //Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n}\r\n\r\nopenInNewTab(href: any) {\r\n Object.assign(document.createElement('a'), {\r\n target: '_blank',\r\n href,\r\n }).click();\r\n}\r\nbase64toPDF(data:string) {\r\n var bufferArray = this.base64ToArrayBuffer(data);\r\n var blobStore = new Blob([bufferArray], { type: \"application/pdf\" });\r\n /* if (window.navigator && window.navigator.msSaveOrOpenBlob) {\r\n window.navigator.msSaveOrOpenBlob(blobStore);\r\n \r\n return;\r\n } */\r\n var data = window.URL.createObjectURL(blobStore);\r\n// this.fileUrl = this.sanitizer.bypassSecurityTrustResourceUrl(window.URL.createObjectURL(blobStore));\r\n window.open(data);\r\n}\r\n\r\n base64ToArrayBuffer(data:any) {\r\n var bString = window.atob(data);\r\n var bLength = bString.length;\r\n var bytes = new Uint8Array(bLength);\r\n for (var i = 0; i < bLength; i++) {\r\n var ascii = bString.charCodeAt(i);\r\n bytes[i] = ascii;\r\n }\r\n return bytes;\r\n};\r\npublishView(e: any){\r\nlet data = e;\r\nlet val = {\r\n CaseID:data\r\n}\r\nApiService.ViewReport(val).then((responce: any) => {\r\n if (responce.status === 200) {\r\n debugger;\r\n if(responce.data.status==\"202\"){\r\n this.openInNewTab(responce.data.data1);\r\n }\r\n else {\r\n this.base64toPDF(responce.data.Data);\r\n }\r\n }\r\n this.ngxService.stop();\r\n}).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n});\r\n}\r\n\r\n}\r\n","module.exports = \"
\\n \\n
\\n\\n

Case Creation

\\n \\n
\\n\\n\\n
\\n
\\n
Bank Details
\\n
\\n \\n
\\n \\n \\n \\n \\n
\\n
\\n \\n
\\n \\n
\\n \\n \\n \\n \\n
\\n
\\n
\\n \\n
\\n \\n \\n \\n \\n
\\n \\n
\\n
\\n \\n
\\n \\n \\n \\n \\n
\\n \\n
\\n
\\n \\n
\\n \\n \\n \\n \\n
\\n \\n \\n
\\n \\n
\\n
\\n
\\n

\\n
\\n
Customer Details
\\n
\\n \\n \\n
\\n \\n
\\n
\\n \\n Special Characters Like % / \\\" - etc Not Allowed in Applicant Name\\n
\\n
\\n \\n
\\n \\n
\\n \\n
\\n \\n \\n
\\n \\n
\\n
\\n \\n
\\n \\n
\\n \\n
\\n
\\n \\n \\n
\\n \\n
\\n \\n
\\n \\n \\n
\\n \\n
\\n
\\n
\\n \\n
\\n \\n
\\n \\n \\n \\n
\\n \\n
\\n
\\n\\n
\\n \\n \\n
\\n \\n
\\n
\\n \\n
\\n
\\n \\n \\n \\n\\n
\\n \\n
\\n \\n
\\n
\\n\\n
\\n \\n
\\n \\n
\\n
\\n\\n \\n\\n
\\n \\n
\\n \\n
\\n
\\n\\n
\\n \\n
\\n \\n
\\n
\\n\\n
\\n \\n
\\n \\n
\\n\\n \\n \\n
\\n \\n
\\n
\\n \\n \\n

\\n
\\n
Fees Details
\\n
\\n \\n\\n \\n \\n
\\n \\n
\\n
\\n \\n
\\n
\\n \\n \\n
\\n
\\n \\n\\n
\\n
\\n \\n
\\n
\\n
\\n \\n
\\n
\\n \\n
\\n
\\n
\\n
\\n\\n
\\n \\n
\\n \\n
\\n
\\n
\\n \\n
\\n \\n
\\n \\n
\\n \\n
\\n
\\n
\\n \\n
\\n \\n
\\n
\\n
\\n \\n
\\n \\n \\n
\\n \\n
\\n \\n \\n
\\n \\n \\n \\n
\\n
\\n \\n
\\n \\n \\n
\\n
\\n \\n
\\n
\\n \\n\\n
\\n

\\n
\\n
Other Details
\\n
\\n \\n
\\n \\n
\\n \\n \\n
\\n \\n
\\n
\\n
\\n \\n
\\n \\n Link Shared With Customer\\n
\\n \\n \\n
\\n \\n
\\n
\\n \\n
\\n \\n
\\n \\n
\\n
\\n \\n
\\n \\n
\\n\\n
\\n \\n \\n
\\n \\n
\\n\\n
\\n \\n
\\n \\n \\n
\\n\\n
\\n \\n
\\n \\n
\\n
\\n \\n
\\n
\\n \\n
\\n
\\n \\n
\\n
\\n\\n
\\n \\n
\\n \\n \\n \\n \\n
\\n \\n
\\n \\n Click here for manual conveyance\\n
\\n \\n
\\n
\\n \\n \\n \\n \\n
\\n
\\n \\n
\\n \\n \\n \\n \\n
\\n
\\n
\\n \\n
\\n \\n
\\n
\\n
\\n \\n
\\n \\n \\n
\\n
\\n
\\n \\n
\\n \\n \\n
\\n
\\n
\\n \\n
\\n \\n
\\n
\\n \\n \\n
\\n
\\n
\\n *Required fields\\n
\\n
\\n \\n
\\n
\\n\\n
\\n
\\n
\\n\\n
\\n

{{HeaderText}}

\\n \\n
\\n\\n
\\n
\\n
\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
Case Reference No.Applicant NameBank NameCase StatusCase TypeCase_Created_OnCase Status RemarksContact PersonMobile1Mobile2EngineerLocationProperty AddressSup.Created By
{{grid.CaseUID}}{{grid.ApplicantName}}{{grid.bankbranchname}}{{grid.CaseStatus}}{{grid.CaseType}}{{grid.Case_Created_On}}{{grid.Case_Status_Remarks}}{{grid.ContactPerson}}{{grid.ContactPersonMob1}}{{grid.ContactPersonMob2}}{{grid.Eng}}{{grid.Location}}{{grid.PropertyAddress}}{{grid.Sup}}{{grid.cr_by}}
\\n
\\n
\\n
\\n
\\n
\\n
\\n\\n
\\n
\\n
\\n\\n
\\n \\n

\\n
\\n\\n
\\n

Enter Amount : \\n

\\n

Convence Remark : \\n

\\n

\\n \\n

\\n

\\n

\\n
\\n \\n
\\n
\\n
\\n
\"","import { Component, OnInit } from \"@angular/core\";\nimport { Router, ActivatedRoute } from \"@angular/router\";\nimport { ApiService } from \"../service/service\";\nimport { SessionService } from \"../service/sessionGlobalVar\";\nimport {\n IcaseFee,\n IBankDetail,\n IGetCityLocation,\n ICaseCreate,\n getStage,\n searchOldCases,\n IUsage,\n} from \"../service/type\";\nimport { NgxUiLoaderService } from \"ngx-ui-loader\";\nimport Swal from \"sweetalert2\";\nimport { DISABLED } from \"@angular/forms/src/model\";\n\ndeclare var $: any;\n\n@Component({\n selector: 'app-casecreation-bank',\n templateUrl: './casecreation-bank.component.html',\n styleUrls: []\n})\nexport class CasecreationBankComponent implements OnInit {\n BankDetail: any;\n selectedBankValue: any = \"\";\n selectedZoneValue: any = \"\";\n selectedBranchValue: any = \"\";\n selectedVerticalValue: any = \"\";\n selectedBranchPersonValue: any = \"\";\n ZoneDetail: any = \"\";\n BranchDetail: any = \"\";\n BranchPersonDetail: any = \"\";\n VerticalDetail: any = \"\";\n state: any = \"\";\n EngConv: any = \"\";\n selectedState: string = \"Select\";\n selectedEngConv: string = \"Select\";\n selectedCity: string = \"Select\";\n selectedLocality: string = \"Select\";\n selectedSubLocation: string = \"Select\";\n selectedApprover: string = \"Select\";\n caseVertical: string = \"\";\n applicantFirst: string = \"\";\n propertyFirst: string = \"Plot No.\";\n selectedValuationValue: string = \"1\";\n casetype: string = \"Select\";\n feestype: string = \"Select\";\n selectedStatus: string = \"Select\";\n CityVal: any = \"\";\n LocationVal: any = \"\";\n SubLocationVal: any = \"\";\n PinCode: any = \"\";\n status: any = \"\";\n DDLUsageData: any;\n valEngineer: any = \"\";\n valSup: any = \"\";\n valReportAnalysis: any = \"\";\n selectedEngvalue: string = \"\";\n selectedSupvalue: string = \"\";\n applicantName: string = \"\";\n district: string = \"\";\n dropdownList = [];\n dropdownList1 = [];\n selectedItems = [];\n newSelectedItems = [];\n dropdownSettings = {};\n propertyNo: string = \"\";\n BuildingName: string = \"\";\n Streat: string = \"\";\n landmark: string = \"\";\n ContactPersonName: string = \"\";\n MOb1: string = \"\";\n MOb2: string = \"\";\n LoadCaseType: any = \"\";\n LoadFeesType: any = \"\";\n LoadApprover: any = \"\";\n StatusRemark: string = \"\";\n FileNo: string = \"\";\n PropertyArea: string = \"\";\n CaseRemark: string = \"\";\n CaseFee: string = \"0\";\n ExtraFee: string = \"0\";\n Conveyance: string = \"0\";\n TotalFee: string = \"0\";\n ApprovalRemarks: string = \"\";\n ConAmount: string = \"\";\n ConRemark: string = \"\";\n ApprovalPerson: string = \"\";\n ContactNo: string = \"\";\n IsFeeShow: boolean = false;\n ISExtrafeeReadonly: boolean = false;\n editCaseDetail: any = \"\";\n BankText: string = \"\";\n ZoneText: string = \"\";\n BranchText: string = \"\";\n BranchPersonText: string = \"\";\n VerticalText: string = \"\";\n Sector: string = \"\";\n AssignToText: string = \"\";\n supToText: string = \"\";\n Block: string = \"\";\n files;\n filestring;\n myfile;\n isEditCase: boolean = false;\n ISvaluation: boolean = true;\n IScasebranch: boolean = true;\n document: any;\n sectionPlaneDoc: any;\n ApprovelDoc: any;\n isdisable: boolean = false;\n isrodisable: boolean = false;\n IsBankCase: boolean = false;\n IsENGEXTCOn: boolean = false;\n IsZoneCase: boolean = false;\n IsBranchCase: boolean = false;\n IsPopUp: boolean = false;\n HeaderText: string;\n GridOldCases: any;\n selectedOldCase: boolean = false;\n oldCaseID: string = \"\";\n CaseID: string = \"\";\n propertyTypeNEw: string = \"Select\";\n DDlUsage: string = \"Select\";\n DDlPropertyType: string = \"Select\";\n DDLPropertyData: any;\n radioSelectedString: string;\n radioSelected: string = \"\";\n PaymentType: string;\n ExtraEngConvApproved: any;\n radioSel: any;\n IsExtraFeeShow: boolean = true;\n IsconvFeeShow: boolean = true;\n IstotalFeeShow: boolean = true;\n IsapprovalShow: boolean = true;\n IscontactnoShow: boolean = true;\n IsdocShow: boolean = true;\n IsFeecase: boolean = true;\n editabless: boolean = false;\n ddlrole: string;\n getApprovaldocurl: any;\n btnextconsave: string = \"Save\";\n DDladrofficedata: any = \"\";\n IsOfficeChange:string=\"N\";\n DDladroffice: any = \"\";\n DDlROadrofficedata: any = \"\";\n DDlROadroffice: any = \"\";\n constructor(\n private router: Router,\n private service: ApiService,\n private ngxService: NgxUiLoaderService,\n private session: SessionService,\n private route: ActivatedRoute\n ) {\n this.getState(\"State\");\n const val1: IGetCityLocation = {\n StateID: this.session.getAdroitOffice,\n CityID: \"\",\n LocID: \"\",\n GetType: \"ENGCONV\",\n };\n this.getEngConvence(val1);\n // this.getState(\"CaseType\");\n /* this.GetUsageDataNew(); */\n this.dropdownSettings = {\n singleSelection: false,\n idField: \"id\",\n textField: \"text\",\n unSelectAllText: \"UnSelect All\",\n itemsShowLimit: 3,\n allowSearchFilter: true,\n };\n\n const BranchID = localStorage.getItem(\"BankBranchID\");\n const bankID = localStorage.getItem(\"BankID\");\n let val = localStorage.getItem(\"roleID\");\n\n if (BranchID && (+val == 7 || +val == 10)) {\n this.selectedBankValue = bankID;\n this.selectedBranchValue = BranchID;\n this.IsBankCase = false;\n this.IsZoneCase = false;\n this.IsBranchCase = false;\n this.selectedValuationValue = \"1\";\n this.valuationChange();\n if (this.selectedBranchValue) {\n this.GetBranchPersonDetails(\n this.selectedBankValue,\n this.selectedBranchValue,\n false\n );\n }\n } else if (BranchID && +val == 22) {\n this.selectedBankValue = bankID;\n //this.selectedBranchValue = BranchID;\n this.selectedValuationValue = \"1\";\n this.valuationChange();\n this.IsBankCase = false;\n this.IsZoneCase = true;\n this.IsBranchCase = true;\n if (this.selectedBankValue) {\n this.GetBranchDetails(this.selectedBankValue, false);\n // this.GetBranchPersonDetails(this.selectedBankValue, this.selectedBranchValue, false);\n }\n } else {\n this.IsBankCase = true;\n this.IsZoneCase = true;\n this.IsBranchCase = true;\n this.GetBankDetails();\n }\n }\n ngOnInit() {\n if (!this.session.isLoggedIn) {\n this.router.navigate([\"Login\"]);\n }\n const val = this.session.getRoleID;\n if (val == \"3\" || val == \"10\" || val == \"7\" || val == \"22\" || val == \"24\") {\n this.route.params.subscribe((params) => {\n if (params.id) {\n this.isEditCase = true;\n const id = window.atob(params.id);\n this.CaseID = id;\n this.GetEditCaseDetail();\n }\n });\n } else {\n localStorage.clear();\n this.router.navigate([\"login\"]);\n }\n\n this.getState(\"Documents\");\n /* if(val == \"7\"){\n this.branchview();}*/\n // if(val==\"24\")\n // {\n const valroOffice: IGetCityLocation = {\n StateID: this.session.UserID,\n CityID: this.selectedCity,\n LocID: this.selectedLocality,\n GetType: \"ROOFFICE\",\n }\n this.getCityLocation(valroOffice);\n // }else{\n const valOffice: IGetCityLocation = {\n StateID: this.session.UserID,\n CityID: this.selectedCity,\n LocID: this.selectedLocality,\n GetType: \"AdroitOffice\",\n }\n this.getCityLocation(valOffice);\n // }\n \n const valEng: IGetCityLocation = {\n StateID: localStorage.getItem('AdroitBranch'),\n CityID: this.selectedCity,\n LocID: this.selectedLocality,\n GetType: \"OfficeEngineer\",\n }\n this.getCityLocation(valEng);\n }\n getFiles(event) {\n this.files = event.target.files;\n var reader = new FileReader();\n reader.onload = this._handleReaderLoaded.bind(this.files);\n reader.readAsBinaryString(this.files[0]);\n }\n branchview() {\n this.IScasebranch = false;\n }\n bindPreviousValue() {\n debugger;\n console.log(\"editCaseDetaillook\", this.editCaseDetail);\n if (!this.selectedOldCase) {\n this.GetBankDetailsEditCase(true);\n this.selectedBankValue = this.editCaseDetail.Bank_ID;\n\n this.GetZoneDetails(this.editCaseDetail.Bank_ID, true);\n this.selectedZoneValue = this.editCaseDetail.Zone_id;\n\n this.GetBranchDetails(this.editCaseDetail.Zone_id, true);\n this.selectedBranchValue = this.editCaseDetail.Branch_id;\n\n this.GetVerticalDetails(\n this.selectedBankValue,\n this.selectedBranchValue,\n true\n );\n this.selectedVerticalValue = this.editCaseDetail.Vertical_id;\n this.selectedEngConv = this.editCaseDetail.EngConv;\n this.selectedStatus = this.editCaseDetail.Case_Status;\n this.selectedValuationValue = this.editCaseDetail.Valuation_typeID;\n this.GetBranchPersonDetails(\n this.editCaseDetail.Vertical_id,\n this.editCaseDetail.Branch_id,\n true\n );\n this.selectedBranchPersonValue = this.editCaseDetail.Branch_person;\n this.getApprovaldocurl = this.editCaseDetail.ApprovalDocPath;\n this.GetProductDetails(this.selectedBankValue, true);\n this.GetFeesTypeDetails(this.selectedVerticalValue, true);\n } else {\n this.oldCaseID = this.editCaseDetail.CaseID;\n }\n this.IsFeeShow = true;\n this.isEditCase = true;\n this.selectedState = this.editCaseDetail.StateID;\n this.selectedEngConv = this.editCaseDetail.EngConv;\n this.district = this.editCaseDetail.District;\n\n this.applicantName = this.editCaseDetail.Applicant_nameN;\n\n this.applicantFirst = this.editCaseDetail.ApplicanttitleN;\n\n this.PinCode = this.editCaseDetail.pin_code;\n this.BuildingName = this.editCaseDetail.Building_No;\n this.Streat = this.editCaseDetail.Street_Sector;\n this.Sector = this.editCaseDetail.SectorN;\n this.ContactPersonName = this.editCaseDetail.Contact_persion_Name;\n this.MOb1 = this.editCaseDetail.Contact_Persion_Mob1;\n this.MOb2 = this.editCaseDetail.Contact_Persion_Mob2;\n this.casetype = this.editCaseDetail.Type_Of_Case;\n this.feestype = this.editCaseDetail.FeesType;\n this.landmark = this.editCaseDetail.Land_mark;\n this.FileNo = this.editCaseDetail.File_No;\n this.PropertyArea = this.editCaseDetail.Area;\n\n this.StatusRemark = this.editCaseDetail.Case_Status_Remarks;\n this.Conveyance = this.editCaseDetail.Conveyance;\n this.CaseFee = this.editCaseDetail.ActualFees;\n this.ExtraFee = this.editCaseDetail.ExtraFees;\n this.TotalFee = this.editCaseDetail.TotalFees;\n this.ApprovalRemarks = this.editCaseDetail.Approval_Remarks;\n this.ConAmount = this.editCaseDetail.ExtraEngConv;\n this.ConRemark = this.editCaseDetail.ExtraEngConvRemark;\n this.caseVertical = this.editCaseDetail.Case_vertical;\n if (\n this.editCaseDetail.ExtraEngConv != \"0\" &&\n this.editCaseDetail.ExtraEngConv != \"\"\n ) {\n this.IsENGEXTCOn = true;\n this.ConAmount = this.editCaseDetail.ExtraEngConv;\n this.ConRemark = this.editCaseDetail.ExtraEngConvRemark;\n this.ExtraEngConvApproved =\n \"Convence Approved by Branch : \" +\n this.editCaseDetail.ExtraEngConvApproved;\n if (this.editCaseDetail.ExtraEngConvApproved == \"Yes\") {\n this.ISExtrafeeReadonly = true;\n }\n this.btnextconsave = \"Close\";\n }\n debugger;\n this.GetApproverDetails(this.selectedBankValue, true);\n this.selectedApprover = this.editCaseDetail.ApprovalPersonName;\n this.ContactNo = this.editCaseDetail.ApprovalContact;\n this.CaseRemark = this.editCaseDetail.Case_Creation_remark;\n this.propertyNo = this.editCaseDetail.PropertyValueN;\n this.propertyFirst = this.editCaseDetail.Property_titleN;\n this.Block = this.editCaseDetail.Block;\n if (this.editCaseDetail.PaymentType == \"Billing\") {\n //this.Compositet=true;\n this.radioSelected = \"Billing\";\n this.radioSelectedString = JSON.stringify(this.radioSel);\n this.IsExtraFeeShow = true;\n this.IsconvFeeShow = true;\n this.IstotalFeeShow = true;\n this.IsapprovalShow = true;\n this.IscontactnoShow = true;\n this.IsdocShow = true;\n this.editabless = false;\n } else if (this.editCaseDetail.PaymentType == \"Cash\") {\n this.radioSelected = \"Cash\";\n this.radioSelectedString = JSON.stringify(this.radioSel);\n this.IsExtraFeeShow = false;\n this.IsconvFeeShow = false;\n this.IstotalFeeShow = false;\n this.IsapprovalShow = false;\n this.IscontactnoShow = false;\n this.IsdocShow = false;\n this.editabless = true;\n } else {\n this.radioSelected = \"Billing\";\n this.radioSelectedString = JSON.stringify(this.radioSel);\n }\n if (this.selectedState) {\n const val: IGetCityLocation = {\n StateID: this.selectedState,\n CityID: \"\",\n LocID: \"\",\n GetType: \"City\",\n };\n this.getCityLocation(val);\n this.selectedCity = this.editCaseDetail.cityID;\n if (this.selectedCity) {\n const val: IGetCityLocation = {\n StateID: this.selectedState,\n CityID: this.selectedCity,\n LocID: \"\",\n GetType: \"Location\",\n };\n this.getCityLocation(val);\n this.selectedLocality = this.editCaseDetail.LocationID;\n this.locationChangeFUnction();\n this.selectedSubLocation = this.editCaseDetail.SubLocalityId;\n this.selectedEngvalue = this.editCaseDetail.Allocated_To;\n try{\n debugger;\n if( this.editCaseDetail.OtherOfficeStatus==\"Y\")\n this.DDladroffice=this.editCaseDetail.OtherOfficeID;\n else\n {\n this.DDlROadroffice=this.editCaseDetail.adroitoffice;\n this.DDladroffice=this.editCaseDetail.adroitoffice;\n const valEng: IGetCityLocation = {\n StateID: this.DDlROadroffice,\n CityID: this.selectedCity,\n LocID: this.selectedLocality,\n GetType: \"OfficeEngineer\",\n }\n this.getCityLocation(valEng);\n const valSup: IGetCityLocation = {\n StateID: this.session.UserID,\n CityID: this.selectedCity,\n LocID: this.session.getRoleID,\n GetType: \"ReportAnalysis\",\n }; \n this.getCityLocation(valSup);\n }\n if (this.valEngineer) {\n const engVal = this.valEngineer.find(\n (val) => val.AttributeID === this.editCaseDetail.Allocated_To\n );\n this.AssignToText = engVal.AttributeName;\n }\n\n this.selectedSupvalue = this.editCaseDetail.Supervisor;\n if (this.valSup) {\n const supVal = this.valSup.find(\n (val) => val.AttributeID === this.selectedSupvalue\n );\n this.supToText = supVal.AttributeName;\n }\n \n }\n catch(e){}\n }\n debugger;\n this.valuationChange();\n this.bindDropdownOnEdit();\n }\n }\n valuationChange() {\n const val: string = this.selectedValuationValue;\n if (val == \"2\") {\n this.ISvaluation = false;\n } else {\n this.ISvaluation = true;\n }\n this.GetStageDetail();\n }\n feeChange() {\n this.TotalFee = (\n +this.Conveyance +\n +this.CaseFee +\n +this.ExtraFee\n ).toString();\n }\n hideShowpayment(e: any) {\n if (e.currentTarget.value == \"Billing\") {\n this.PaymentType = \"Billing\";\n /* this.IsExtraFeeShow=true;\n this.IsconvFeeShow=true;\n this.IstotalFeeShow=true;\n this.IsapprovalShow=true;\n this.IscontactnoShow=true;\n this.IsdocShow=true; */\n this.editabless = false;\n if (this.selectedBankValue && this.casetype && this.session.UserID) {\n const val: IcaseFee = {\n CaseTypeID: this.casetype,\n LoginID: this.session.UserID,\n BankID: this.selectedBankValue,\n ZoneID: this.selectedZoneValue,\n BranchID: this.selectedBranchValue,\n VerticalID: this.selectedVerticalValue,\n };\n this.ngxService.start();\n ApiService.CaseFee(val)\n .then((responce: any) => {\n this.ngxService.stop();\n if (responce.status === 200) {\n if (responce.data != \"\") {\n this.IsFeeShow = true;\n this.IsExtraFeeShow = true;\n this.IsconvFeeShow = true;\n this.IstotalFeeShow = true;\n this.IsapprovalShow = true;\n this.IscontactnoShow = true;\n this.IsdocShow = true;\n this.IsFeecase = true;\n this.CaseFee = responce.data;\n this.TotalFee = (\n +this.Conveyance +\n +this.CaseFee +\n +this.ExtraFee\n ).toString();\n } else {\n // this.router.navigate([\"Home\"]);\n Swal.fire(\n \"Oops...\",\n \"Before Create Case Update Bank Case Fees!\",\n \"warning\"\n );\n this.casetype = \"Select\";\n }\n }\n })\n .catch((e: any) => {\n console.log(\"Getting Error in onCaseChange\");\n Swal.fire(\"Oops...\", \"11something went wrong\", \"error\");\n });\n }\n } else {\n this.PaymentType = \"Cash\";\n this.IsExtraFeeShow = false;\n this.IsconvFeeShow = false;\n this.IstotalFeeShow = false;\n this.IsapprovalShow = false;\n this.IscontactnoShow = false;\n this.IsdocShow = false;\n this.editabless = true;\n this.CaseFee = \"\";\n }\n }\n GetStageDetail() {\n const p = this.selectedValuationValue;\n const valuationType = this.ISvaluation ? \"1\" : \"2\";\n let val: getStage = {\n Type: \"New\",\n valType: valuationType,\n };\n this.ngxService.start();\n ApiService.GetStages(val)\n .then((response: any) => {\n this.status = response.data.DATA;\n this.ngxService.stop();\n })\n .catch((e: any) => {\n this.ngxService.stop();\n Swal.fire(\n \"Oops...\",\n \"Something Went Wrong In Case Status Please Refresh Page!\",\n \"error\"\n );\n });\n }\n bindOldCaseValue() {\n console.log(\"editCaseDetail\", this.editCaseDetail);\n if (!this.selectedOldCase) {\n this.selectedBankValue = this.editCaseDetail.Bank_ID;\n this.selectedBranchValue = this.editCaseDetail.Branch_id;\n this.selectedBranchPersonValue = this.editCaseDetail.Branch_person;\n this.GetBranchDetails(this.editCaseDetail.Bank_ID, true);\n /* const BankText = this.BankDetail.find(val => val.AttributeID === this.selectedBankValue);\n this.BankText = BankText.AttributeName; */\n this.selectedStatus = this.editCaseDetail.Case_Status;\n this.selectedValuationValue = this.editCaseDetail.Valuation_typeID;\n this.GetBranchPersonDetails(\n this.editCaseDetail.Bank_ID,\n this.editCaseDetail.Branch_id,\n true\n );\n } else {\n this.oldCaseID = this.editCaseDetail.CaseID;\n }\n this.IsFeeShow = true;\n this.isEditCase = true;\n this.selectedState = this.editCaseDetail.StateID;\n this.selectedEngConv = this.editCaseDetail.EngConv;\n this.district = this.editCaseDetail.District;\n\n this.applicantName = this.editCaseDetail.Applicant_nameN;\n\n this.applicantFirst = this.editCaseDetail.ApplicanttitleN;\n\n this.PinCode = this.editCaseDetail.pin_code;\n this.BuildingName = this.editCaseDetail.Building_No;\n this.Streat = this.editCaseDetail.Street_Sector;\n this.Sector = this.editCaseDetail.SectorN;\n this.ContactPersonName = this.editCaseDetail.Contact_persion_Name;\n this.MOb1 = this.editCaseDetail.Contact_Persion_Mob1;\n this.MOb2 = this.editCaseDetail.Contact_Persion_Mob2;\n this.casetype = this.editCaseDetail.Type_Of_Case;\n this.landmark = this.editCaseDetail.Land_mark;\n this.FileNo = this.editCaseDetail.File_No;\n this.PropertyArea = this.editCaseDetail.Area;\n\n this.StatusRemark = this.editCaseDetail.Case_Status_Remarks;\n this.Conveyance = this.editCaseDetail.Conveyance;\n this.CaseFee = this.editCaseDetail.ActualFees;\n this.ExtraFee = this.editCaseDetail.ExtraFees;\n this.TotalFee = this.editCaseDetail.TotalFees;\n this.caseVertical = this.editCaseDetail.Case_vertical;\n this.ApprovalPerson = this.editCaseDetail.ApprovalPersonName;\n this.ContactNo = this.editCaseDetail.ApprovalContact;\n this.CaseRemark = this.editCaseDetail.Case_Creation_remark;\n this.propertyNo = this.editCaseDetail.PropertyValueN;\n this.propertyFirst = this.editCaseDetail.Property_titleN;\n this.Block = this.editCaseDetail.Block;\n if (this.selectedState) {\n const val: IGetCityLocation = {\n StateID: this.selectedState,\n CityID: \"\",\n LocID: \"\",\n GetType: \"City\",\n };\n this.getCityLocationOldCase(val);\n this.selectedCity = this.editCaseDetail.cityID;\n if (this.selectedCity) {\n const val: IGetCityLocation = {\n StateID: this.selectedState,\n CityID: this.selectedCity,\n LocID: \"\",\n GetType: \"Location\",\n };\n this.getCityLocationOldCase(val);\n this.selectedLocality = this.editCaseDetail.LocationID;\n this.locationChangeFUnctionOldCase();\n this.selectedSubLocation = this.editCaseDetail.SubLocalityId;\n // this.selectedEngvalue = this.editCaseDetail.Allocated_To;\n /* if (this.valEngineer) {\n const engVal = this.valEngineer.find(val => val.AttributeID === this.editCaseDetail.Allocated_To);\n this.AssignToText = engVal.AttributeName;\n } */\n\n // this.selectedSupvalue = this.editCaseDetail.Supervisor;\n /* if (this.valSup) {\n const supVal = this.valSup.find(val => val.AttributeID === this.selectedSupvalue);\n this.supToText = supVal.AttributeName;\n } */\n }\n this.valuationChange();\n this.bindDropdownOnEdit();\n }\n }\n GetEditOldCaseDetail(val: string) {\n this.ngxService.start();\n\n ApiService.getCaseBehalfOfID(val)\n .then((responce: any) => {\n this.ngxService.stop();\n if (responce.status === 200) {\n if (responce.data) {\n this.editCaseDetail = responce.data;\n this.bindOldCaseValue();\n }\n }\n })\n .catch((e: any) => {\n this.ngxService.stop();\n console.log(\"Getting Error In GetEditCaseDetail\");\n Swal.fire(\"Oops...\", \"1Something went wrong!\", \"error\");\n });\n }\n GetEditCaseDetail() {\n this.ngxService.start();\ndebugger;\n ApiService.getCaseBehalfOfID(this.CaseID)\n .then((responce: any) => {\n this.ngxService.stop();\n debugger;\n if (responce.status === 200) {\n if (responce.data) {\n this.editCaseDetail = responce.data;\n this.bindPreviousValue();\n }\n }\n })\n .catch((e: any) => {\n this.ngxService.stop();\n console.log(\"Getting Error In GetEditCaseDetail\");\n Swal.fire(\"Oops...\", \"2Something went wrong!\", \"error\");\n });\n }\n _handleReaderLoaded(readerEvt) {\n var binaryString = readerEvt.target.result;\n this.filestring = btoa(binaryString); // Converting binary string data.\n }\n handleFileSelect(evt: any) {\n this.document = evt.target.files;\n }\n HandleSectionPlaneDoc(evt: any) {\n this.sectionPlaneDoc = evt.target.files;\n }\n HandleApprovelDoc(evt: any) {\n this.ApprovelDoc = evt.target.files;\n }\n\n fileToBase64(fileNew) {\n return new Promise((resolve) => {\n let file = fileNew;\n let reader = new FileReader();\n // Read file content on file loaded event\n reader.onload = function (event) {\n console.log(event.target);\n resolve(event.target);\n };\n // Convert data to base64\n reader.readAsDataURL(file);\n });\n }\n createCase() {\n debugger;\n const loginID = localStorage.getItem(\"userID\");\n let selectedDocID = \"\";\n if (this.selectedValuationValue == \"2\") {\n this.selectedStatus = \"386\";\n }\n if (this.selectedItems.length > 0) {\n for (const data in this.selectedItems) {\n if (data) {\n selectedDocID = selectedDocID + \",\" + this.selectedItems[data].id;\n }\n }\n selectedDocID = selectedDocID.substr(1);\n }\n if (this.selectedBankValue == \"\") {\n document.getElementById(\"inptBank\").focus();\n Swal.fire(\"Oops...\", \"Please Select Bank From DropDown!\", \"warning\");\n } else if (this.selectedZoneValue == \"\") {\n document.getElementById(\"inptZone\").focus();\n Swal.fire(\"Oops...\", \"Please Select Zone!\", \"warning\");\n } else if (this.selectedBranchValue == \"\") {\n document.getElementById(\"inptBranch\").focus();\n Swal.fire(\"Oops...\", \"Please Select Branch From DropDown!\", \"warning\");\n } else if (this.selectedVerticalValue == \"\" || this.selectedVerticalValue == undefined) {\n document.getElementById(\"inptVertical\").focus();\n Swal.fire(\"Oops...\", \"Please Select Vertical!\", \"warning\");\n } else if (this.selectedBranchPersonValue == \"\") {\n document.getElementById(\"inptBranchPerson\").focus();\n Swal.fire(\"Oops...\", \"Please Select Branch Person!\", \"warning\");\n } else if (this.applicantName == \"\") {\n document.getElementById(\"applicantName\").focus();\n Swal.fire(\"Oops...\", \"Please Enter Applicant Name!\", \"warning\");\n } else if (this.selectedState == \"\" || this.selectedState == \"Select\") {\n document.getElementById(\"ddState\").focus();\n Swal.fire(\"Oops...\", \"Please Select State!\", \"warning\");\n } else if (this.selectedCity == \"\" || this.selectedCity == \"Select\") {\n document.getElementById(\"ddCity\").focus();\n Swal.fire(\"Oops...\", \"Please Select City!\", \"warning\");\n } else if (\n this.selectedLocality == \"\" ||\n this.selectedLocality == \"Select\"\n ) {\n document.getElementById(\"ddLocality\").focus();\n Swal.fire(\"Oops...\", \"Please Select Locality!\", \"warning\");\n } else if (\n this.selectedSubLocation == \"\" ||\n this.selectedSubLocation == \"Select\"\n ) {\n document.getElementById(\"ddSubLocation\").focus();\n Swal.fire(\n \"Oops...\",\n \"Please Select Sub Location/Building Name!\",\n \"warning\"\n );\n } else if (this.PinCode == \"\") {\n document.getElementById(\"txtPIn\").focus();\n Swal.fire(\"Oops...\", \"Please Enter Pin Code!\", \"warning\");\n } else if (this.propertyNo == \"\") {\n document.getElementById(\"inptPropertyNo\").focus();\n Swal.fire(\"Oops...\", \"Please Enter Property No.!\", \"warning\");\n } else if (this.ContactPersonName == \"\") {\n document.getElementById(\"txtContactPerson\").focus();\n Swal.fire(\"Oops...\", \"Please Enter Contact Person Name!\", \"warning\");\n } else if (\n this.CaseFee != this.TotalFee &&\n (this.selectedApprover == \"Select\" ||\n this.selectedApprover == \"undefined\" ||\n this.selectedApprover == \"0\") &&\n (this.ApprovelDoc == null || this.ApprovelDoc == \"undefined\") &&\n this.getApprovaldocurl == null\n ) {\n Swal.fire(\n \"Oops...\",\n \"Please Select Approval Person Name or Attach Approval Document!\",\n \"warning\"\n );\n } else if (\n this.session.getRoleID != \"7\" &&\n (this.casetype == \"\" || this.casetype == \"Select\")\n ) {\n document.getElementById(\"ddlCase\").focus();\n Swal.fire(\"Oops...\", \"Please Select Case Type!\", \"warning\");\n } else {\n if (this.session.getRoleID == \"7\") {\n this.casetype = \"\";\n }\n let p: boolean = true;\n\n if (this.propertyFirst == \"Select\") {\n this.propertyFirst = \"\";\n }\n if (this.feestype == \"\" || this.feestype == \"Select\") {\n document.getElementById(\"ddlCasefees\").focus();\n Swal.fire(\"Oops...\", \"Please Select Fees Type!\", \"warning\");\n p=false;\n }\n // if (this.selectedEngConv == \"\" || this.selectedEngConv == \"Select\") {\n // document.getElementById(\"engcon\").focus();\n // Swal.fire(\"Oops...\", \"Please Select Engineer conveyance!\", \"warning\");\n // p=false;\n // }\n if (this.selectedValuationValue == \"1\") {\n // if (this.selectedStatus == \"\" || this.selectedStatus == \"Select\") {\n // document.getElementById(\"ddlCasestatus\").focus();\n // p = false;\n // Swal.fire(\"Oops...\", \"Please Select Case Status!\", \"warning\");\n // }\n }\n if (this.selectedStatus == \"40\") {\n /* if (this.selectedEngvalue == \"\") {\n p = false;\n document.getElementById(\"inptAssignTo\").focus();\n Swal.fire('Oops...', 'Please Select Assign to from dropdown!', 'warning');\n } else if (this.selectedSupvalue == \"\") {\n p = false;\n document.getElementById(\"inptSupervisor\").focus();\n Swal.fire('Oops...', 'Please Select Supervisor from dropdown!', 'warning');\n } */\n }\n if (p) {\n let caseType = \"\";\n if (this.isEditCase) {\n caseType = \"Update\";\n } else {\n caseType = \"Insert\";\n }\n if (this.selectedOldCase) {\n caseType = \"Insert\";\n }\n if (this.session.getRoleID == \"7\") {\n caseType = \"Insert\";\n }\n if (this.radioSelected == \"\" || this.radioSelected == \"undefined\") {\n this.radioSelected = \"Billing\";\n }\n debugger;\n if(this.DDladroffice==this.DDlROadroffice){\n this.IsOfficeChange=\"N\" ;\n this.DDladroffice=\"\"; \n }else\n { this.IsOfficeChange=\"Y\" ;\n \n }\n this.ngxService.start();\n let data: ICaseCreate = {\n CaseID: this.CaseID,\n Bank_id: this.selectedBankValue,\n branch_id: this.selectedBranchValue,\n person_id: this.selectedBranchPersonValue,\n ValuationTypeID: \"1\",\n ApplicantName_Name: this.applicantFirst + \" \" + this.applicantName,\n ApplicanttitleN: this.applicantFirst,\n Applicant_nameN: this.applicantName,\n Block: this.Block,\n BuildingNameN: \"\",\n StreatRoadN: this.Streat,\n SectorN: this.Sector,\n state_id: this.selectedState,\n distict: this.district,\n City_id: this.selectedCity,\n Locality_id: this.selectedLocality,\n BuildingNo: this.BuildingName,\n propertyno: this.propertyFirst + \" \" + this.propertyNo,\n Property_titleN: this.propertyFirst,\n PropertyValueN: this.propertyNo,\n Streat: this.Streat,\n landmark: this.landmark,\n SubLocality_id: this.selectedSubLocation,\n pincode: this.PinCode,\n ContactPersonName: this.ContactPersonName,\n Mob1: this.MOb1,\n Mob2: this.MOb2,\n vertical: this.caseVertical,\n casetype: this.casetype,\n Assignto: this.selectedEngvalue,\n Case_statusID:'39',// this.selectedStatus,\n supervisorID: this.selectedSupvalue,\n StatusRemark: this.StatusRemark,\n FileNo: this.FileNo,\n Area: this.PropertyArea,\n CaseRemark: this.CaseRemark,\n Document_id: selectedDocID,\n LoginID: loginID,\n OldCaseID: this.oldCaseID,\n ActualFees: this.CaseFee,\n ExtraFees: this.ExtraFee,\n TotalFees: this.TotalFee,\n Conveyance: this.Conveyance,\n ApprovalPersonName: this.selectedApprover,\n ApprovalContact: this.ContactNo,\n ApprovalDocPath: \"0\",\n AssignType: \"D\",\n usage: this.DDlUsage,\n propertytype: this.DDlPropertyType,\n Operation: caseType,\n PaymentType: this.radioSelected,\n Zone_id: this.selectedZoneValue,\n Vertical_id: this.selectedVerticalValue,\n ENgConv:'1',// this.selectedEngConv,\n Approval_Remarks: this.ApprovalRemarks,\n FeesType: this.feestype,\n ExtraEngConv: this.ConAmount,\n ExtraEngConvRemark: this.ConRemark,\n IsOtherOffice:'39',//this.IsOfficeChange,\n OtherOffice:'11',//this.DDladroffice,\n adroitbranch:'11'//this.DDlROadroffice,\n };\n this.caseCreate(data);\n }\n }\n }\n caseCreate(data: ICaseCreate) {\n ApiService.CreateCase(data)\n .then((responce: any) => {\n debugger;\n this.ngxService.stop();\n if (responce.status === 200) {\n if (this.isEditCase) {\n if (this.ApprovelDoc && this.ApprovelDoc.length) {\n this.updateDocument(this.CaseID);\n }\n Swal.fire(\"Thanks...\", \"Case Updated Successfully\", \"success\");\n this.router.navigate([\"Home\"]);\n } else {\n if (responce.data.case_id) {\n if (\n (this.document && this.document.length) ||\n (this.sectionPlaneDoc && this.sectionPlaneDoc.length) ||\n (this.ApprovelDoc && this.ApprovelDoc.length)\n ) {\n this.updateDocument(responce.data.case_id);\n } else {\n Swal.fire(\"Thanks...\", \"Case Created Successfully\", \"success\");\n this.router.navigate([\"Home\"]);\n }\n }\n }\n }\n })\n .catch((e: any) => {\n this.ngxService.stop();\n console.log(\"Getting Error In caseCreate\", e);\n Swal.fire(\"Oops...\", \"3Something went wrong!\", \"error\");\n });\n }\n updateDocument(logID) {\n debugger;\n if (logID) {\n if (this.sectionPlaneDoc || this.document || this.ApprovelDoc) {\n let formData = new FormData();\n if (this.document) {\n for (let val of this.document) {\n formData.append(\"CaseID\", logID);\n formData.append(\"imgname\", val.name);\n formData.append(\"files\", val);\n }\n }\n if (this.sectionPlaneDoc) {\n for (let val of this.sectionPlaneDoc) {\n formData.append(\"CaseID\", logID);\n formData.append(\"imgname\", val.name);\n formData.append(\"files\", val);\n }\n // formData.append(\"CaseID\", this.logID);\n // formData.append(\"imgname\", this.sanctionPlanDoc.name);\n // formData.append(\"files\", this.sanctionPlanDoc);\n }\n if (this.ApprovelDoc) {\n for (let val of this.ApprovelDoc) {\n formData.append(\"CaseID\", logID);\n formData.append(\"imgname\", val.name);\n formData.append(\"files\", val);\n formData.append(\"UserID\", this.session.UserID);\n }\n }\n if (this.ApprovelDoc) {\n this.ngxService.start();\n ApiService.UpdateApprovalDocument(formData)\n .then((responce: any) => {\n if (responce.status === 200) {\n // this.IsEditStatus = false;\n this.sectionPlaneDoc = undefined;\n this.document = undefined;\n if (this.isEditCase)\n Swal.fire(\n \"Thanks...\",\n \"Case Updated Successfully\",\n \"success\"\n );\n else\n Swal.fire(\n \"Thanks...\",\n \"Case Created Successfully\",\n \"success\"\n );\n this.router.navigate([\"Home\"]);\n }\n this.ngxService.stop();\n })\n .catch((e: any) => {\n this.ngxService.stop();\n Swal.fire(\n \"Oops...\",\n \"Something went wrong in document update!\",\n \"error\"\n );\n });\n } else {\n this.ngxService.start();\n ApiService.UpdateDocument(formData)\n .then((responce: any) => {\n if (responce.status === 200) {\n // this.IsEditStatus = false;\n this.sectionPlaneDoc = undefined;\n this.document = undefined;\n Swal.fire(\"Thanks...\", \"Case Created Successfully\", \"success\");\n this.router.navigate([\"Home\"]);\n }\n this.ngxService.stop();\n })\n .catch((e: any) => {\n this.ngxService.stop();\n Swal.fire(\n \"Oops...\",\n \"Something went wrong in document update!\",\n \"error\"\n );\n });\n }\n } else {\n Swal.fire(\"Oops...\", \"Please select atleast one document!\", \"warning\");\n }\n }\n }\n /* updateDocument(logID) {\n if (logID) {\n let formData = new FormData();\n formData.append(\"CaseID\", logID);\n formData.append(\"DocumentLength\", this.document.length);\n if (this.document.length) {\n let p: number = 0;\n for (let val of this.document) {\n formData.append(\"Document\" + p + \"\", val);\n p = p + 1;\n }\n } if (this.sectionPlaneDoc.length) {\n for (let val of this.sectionPlaneDoc) {\n formData.append(\"sectionPlaneDoc\", val);\n }\n } if (this.ApprovelDoc.length) {\n for (let val of this.ApprovelDoc) {\n formData.append(\"ApprovelDoc\", val);\n }\n }\n console.log('Data', formData);\n this.ngxService.start();\n ApiService.UpdateDocument(formData).then((responce: any) => {\n if (responce.status === 200) {\n Swal.fire('Thanks...', 'Case Created Successfully', 'success');\n this.router.navigate([\"Home\"]);\n }\n this.ngxService.stop();\n }).catch((e: any) => {\n\n this.ngxService.stop();\n Swal.fire('Oops...', 'Something went wrong in document update please try again!', 'error');\n });\n }\n } */\n onCaseChange(e: any) {\n this.radioSelected = \"Billing\";\n e.target.value;\n if (e.target.value == \"Select\" || e.target.value == \"\") {\n Swal.fire(\"Oops...\", \"Please select Fees type!\", \"warning\");\n this.IsExtraFeeShow = false;\n this.IsconvFeeShow = false;\n this.IstotalFeeShow = false;\n this.IsapprovalShow = false;\n this.IscontactnoShow = false;\n this.IsFeeShow = false;\n this.IsdocShow = false;\n this.IsFeecase = false;\n } else {\n if (this.selectedBankValue && this.feestype && this.session.UserID) {\n const val: IcaseFee = {\n CaseTypeID: this.feestype,\n LoginID: this.session.UserID,\n BankID: this.selectedBankValue,\n ZoneID: this.selectedZoneValue,\n BranchID: this.selectedBranchValue,\n VerticalID: this.selectedVerticalValue,\n };\n this.ngxService.start();\n ApiService.CaseFee(val)\n .then((responce: any) => {\n this.ngxService.stop();\n if (responce.status === 200) {\n if (responce.data != \"\") {\n if (this.session.getRoleID == \"22\") {\n this.IsFeeShow = false;\n this.IsExtraFeeShow = false;\n this.IsconvFeeShow = false;\n this.IstotalFeeShow = false;\n this.IsapprovalShow = false;\n this.IscontactnoShow = false;\n this.IsdocShow = false;\n this.IsFeecase = false;\n this.CaseFee = responce.data;\n this.TotalFee = (\n +this.Conveyance +\n +this.CaseFee +\n +this.ExtraFee\n ).toString();\n } else {\n this.IsFeeShow = true;\n this.IsExtraFeeShow = true;\n this.IsconvFeeShow = true;\n this.IstotalFeeShow = true;\n this.IsapprovalShow = true;\n this.IscontactnoShow = true;\n this.IsdocShow = true;\n this.IsFeecase = true;\n this.CaseFee = responce.data;\n this.TotalFee = (\n +this.Conveyance +\n +this.CaseFee +\n +this.ExtraFee\n ).toString();\n }\n } else {\n // this.router.navigate([\"Home\"]);\n Swal.fire(\n \"Oops...\",\n \"Before Create Case Update Bank Case Fees!\",\n \"warning\"\n );\n this.casetype = \"Select\";\n this.IsExtraFeeShow = false;\n this.IsconvFeeShow = false;\n this.IstotalFeeShow = false;\n this.IsapprovalShow = false;\n this.IscontactnoShow = false;\n this.IsFeeShow = false;\n this.IsdocShow = false;\n this.IsFeecase = false;\n }\n }\n })\n .catch((e: any) => {\n this.ngxService.stop();\n console.log(\"Getting Error in onCaseChange\");\n Swal.fire(\"Oops...\", \"4something went wrong\", \"error\");\n });\n }\n }\n }\n\n onStateChange(e: any) {\n const p = e.target.value;\n const sk = this.selectedState;\n if (this.selectedState) {\n const val: IGetCityLocation = {\n StateID: this.selectedState,\n CityID: \"\",\n LocID: \"\",\n GetType: \"City\",\n };\n\n this.getCityLocation(val);\n }\n }\n onROOfficeChange(e: any) {\n debugger;\n if( this.session.getRoleID==\"24\"){\n const p = e.target.value;\n const sk = this.selectedState\n \n const valEng: IGetCityLocation = {\n StateID: this.DDlROadroffice,\n CityID: this.selectedCity,\n LocID: this.selectedLocality,\n GetType: \"OfficeEngineer\",\n } \n this.getCityLocation(valEng);\n const valSup: IGetCityLocation = {\n StateID: this.session.UserID,\n CityID: this.selectedCity,\n LocID: this.session.getRoleID,\n GetType: \"ReportAnalysis\",\n }; \n this.getCityLocation(valSup);\n if(this.DDladroffice==\"\"){\n this.DDladroffice=this.DDlROadroffice;\n }\n else if(this.DDladroffice==this.DDlROadroffice){\n this.IsOfficeChange=\"N\";\n this.isdisable=false;\n }else\n { this.IsOfficeChange=\"Y\";\n this.isdisable=true;\n }\n \n }else{\n const p = e.target.value;\n const sk = this.selectedState\n \n const valEng: IGetCityLocation = {\n StateID: this.DDladroffice,\n CityID: this.selectedCity,\n LocID: this.selectedLocality,\n GetType: \"OfficeEngineer\",\n } \n this.getCityLocation(valEng);\n if(this.DDladroffice==localStorage.getItem('AdroitBranch')){\n this.IsOfficeChange=\"N\";\n this.isdisable=false;\n }else\n { this.IsOfficeChange=\"Y\";\n this.isdisable=true;\n }\n }\n }\n onOfficeChange(e: any) {\n debugger;\n if( this.session.getRoleID==\"24\"){\n const p = e.target.value;\n const sk = this.selectedState\n \n const valEng: IGetCityLocation = {\n StateID: this.DDladroffice,\n CityID: this.selectedCity,\n LocID: this.selectedLocality,\n GetType: \"OfficeEngineer\",\n } \n this.getCityLocation(valEng);\n const valSup: IGetCityLocation = {\n StateID: this.session.UserID,\n CityID: this.selectedCity,\n LocID: this.session.getRoleID,\n GetType: \"ReportAnalysis\",\n }; \n this.getCityLocation(valSup);\n \n if(this.DDladroffice==this.DDlROadroffice){\n this.IsOfficeChange=\"N\";\n this.isdisable=false;\n }else\n { this.IsOfficeChange=\"Y\";\n this.isdisable=true;\n }\n \n }else{\n const p = e.target.value;\n const sk = this.selectedState\n \n const valEng: IGetCityLocation = {\n StateID: this.DDladroffice,\n CityID: this.selectedCity,\n LocID: this.selectedLocality,\n GetType: \"OfficeEngineer\",\n } \n this.getCityLocation(valEng);\n if(this.DDladroffice==localStorage.getItem('AdroitBranch')){\n this.IsOfficeChange=\"N\";\n this.isdisable=false;\n }else\n { this.IsOfficeChange=\"Y\";\n this.isdisable=true;\n }\n }\n }\n onCityChange(e: any) {\n const p = e.target.value;\n if (this.selectedCity) {\n const val: IGetCityLocation = {\n StateID: this.selectedState,\n CityID: this.selectedCity,\n LocID: \"\",\n GetType: \"Location\",\n };\n this.getCityLocation(val);\n }\n }\n onLocationChange(e) {\n const p = e.target.value;\n this.locationChangeFUnction();\n }\n locationChangeFUnction() {\n if (\n this.session.getAdroitOffice == \"1\" ||\n this.session.getAdroitOffice == \"39\"\n ) \n {\n this.ddlrole = \"ReportAnalysis\";\n } else {\n this.ddlrole = \"ReportAnalysis\";\n }\n if (this.selectedLocality) {\n const val: IGetCityLocation = {\n StateID: this.selectedState,\n CityID: this.selectedCity,\n LocID: this.selectedLocality,\n GetType: \"SubLocation\",\n };\n // const valEng: IGetCityLocation = {\n // StateID: this.session.UserID,\n // CityID: this.selectedCity,\n // LocID: this.selectedLocality,\n // GetType: \"Engineer\",\n // }\n // const valEng: IGetCityLocation = {\n // StateID: localStorage.getItem('AdroitOffice'),\n // CityID: this.selectedCity,\n // LocID: this.selectedLocality,\n // GetType: \"OfficeEngineer\",\n // }\n // this.getCityLocation(valEng);\n const valSup: IGetCityLocation = {\n StateID: this.session.UserID,\n CityID: this.selectedCity,\n LocID: this.selectedLocality,\n GetType: this.ddlrole,\n };\n this.getCityLocation(val);\n \n this.getCityLocation(valSup);\n }\n }\n locationChangeFUnctionOldCase() {\n if (\n this.session.getAdroitOffice == \"1\" ||\n this.session.getAdroitOffice == \"39\"\n ) {\n this.ddlrole = \"ReportAnalysis\";\n } else {\n this.ddlrole = \"ReportAnalysis\";\n }\n if (this.selectedLocality) {\n const val: IGetCityLocation = {\n StateID: this.selectedState,\n CityID: this.selectedCity,\n LocID: this.selectedLocality,\n GetType: \"SubLocation\",\n };\n const valEng: IGetCityLocation = {\n StateID: this.session.UserID,\n CityID: this.selectedCity,\n LocID: this.selectedLocality,\n GetType: \"Engineer\",\n };\n const valSup: IGetCityLocation = {\n StateID: this.session.UserID,\n CityID: this.selectedCity,\n LocID: this.selectedLocality,\n GetType: this.ddlrole,\n };\n this.getCityLocationOldCase(val);\n this.getCityLocationOldCase(valEng);\n this.getCityLocationOldCase(valSup);\n }\n }\n onSubLocationChange(e) {\n const valPinCode: IGetCityLocation = {\n StateID: this.selectedState,\n CityID: this.selectedCity,\n LocID: this.selectedLocality,\n GetType: \"pincode\",\n };\n this.getCityLocation(valPinCode);\n }\n onApproverChange(e: any) {\n debugger;\n const newVal = this.getSelectedApproverByName(e.target.value);\n const val = newVal.Emp_name;\n this.selectedApprover = val;\n }\n onBankChange(e: any) {\n this.BranchText = \"\";\n this.ZoneText = \"\";\n this.BranchPersonText = \"\";\n this.VerticalText = \"\";\n const newVal = this.getSelectedBankByName(e.target.value);\n const val = newVal.AttributeID;\n this.selectedBankValue = val;\n\n this.selectedValuationValue = \"1\";\n // this.selectedApprover=\"Select\";\n if (val) {\n this.GetZoneDetails(val, false);\n this.GetProductDetails(val, false);\n // this.GetFeesTypeDetails(val,false);\n this.GetApproverDetails(val, false);\n }\n this.getValuationDetailsDynamically(newVal);\n }\n getValuationDetailsDynamically(data: any) {\n const osv = data.OSV;\n const ftv = data.FTV;\n if (osv == \"T\") {\n this.selectedValuationValue = \"1\";\n }\n if (ftv == \"T\") {\n this.selectedValuationValue = \"2\";\n }\n this.valuationChange();\n }\n onZoneChange(e: any) {\n this.BranchText = \"\";\n //this.ZoneText = \"\";\n this.BranchPersonText = \"\";\n this.VerticalText = \"\";\n const newVal = this.getSelectedZoneByName(e.target.value);\n const val = newVal.AttributeID;\n this.selectedZoneValue = val;\n // this.selectedValuationValue = \"1\";\n if (val) {\n this.GetBranchDetails(val, false);\n }\n //\n }\n\n onBranchChange(e) {\n const p = e.target.value;\n this.BranchPersonText = \"\";\n this.VerticalText = \"\";\n const BranchVal = this.getSelectedBranchByName(e.target.value);\n const BankID = this.selectedBankValue;\n this.selectedBranchValue = BranchVal.AttributeID;\n if (this.selectedBranchValue) {\n this.BranchPersonText = \"\";\n this.GetVerticalDetails(BankID, this.selectedBranchValue, false);\n }\n }\n onBranchPersonChange(e) {\n const BranchPersonVal = this.getBranchPersoneValue(e.target.value);\n this.selectedBranchPersonValue = BranchPersonVal.AttributeID;\n }\n\n onVerticalChange(e) {\n debugger;\n const p = e.target.value;\n this.BranchPersonText = \"\";\n this.selectedVerticalValue = this.getSelectedVerticalByName(e.target.value);\n const BankID = this.getSelectedVerticalByName(e.target.value);\n // this.selectedBranchValue = BranchVal.AttributeID;\n if (this.selectedVerticalValue) {\n this.BranchPersonText = \"\";\n this.GetBranchPersonDetails(\n BankID.AttributeID,\n this.selectedVerticalValue.AttributeID,\n false\n );\n this.GetFeesTypeDetails(BankID.AttributeID, true);\n }\n }\n\n onEngChange(e) {\n const Val = this.getEngValue(e.target.value);\n if (e.target.value == \"\") {\n this.selectedEngvalue = \"0\";\n } else {\n this.selectedEngvalue = Val.AttributeID;\n }\n }\n onSupChange(e) {\n const Val = this.getSupValue(e.target.value);\n if (e.target.value == \"\") {\n this.selectedSupvalue = \"0\";\n } else {\n this.selectedSupvalue = Val.AttributeID;\n }\n }\n getEngValue(selectedName: string) {\n return this.valEngineer.find((val) => val.AttributeName === selectedName);\n }\n getSupValue(selectedName: string) {\n return this.valSup.find((val) => val.AttributeName === selectedName);\n }\n getBranchPersoneValue(selectedName: string) {\n return this.BranchPersonDetail.find(\n (val) => val.AttributeName === selectedName\n );\n }\n getSelectedBankByName(selectedName: string) {\n return this.BankDetail.find((val) => val.AttributeName === selectedName);\n }\n getSelectedApproverMobile(selectedName: string) {\n return this.LoadApprover.find((val) => val.Emp_name === selectedName);\n }\n getSelectedZoneByName(selectedName: string) {\n return this.ZoneDetail.find((val) => val.AttributeName === selectedName);\n }\n getSelectedApproverByName(selectedName: string) {\n return this.LoadApprover.find((val) => val.Emp_name === selectedName);\n }\n getSelectedBranchByName(selectedName: string) {\n return this.BranchDetail.find((val) => val.AttributeName === selectedName);\n }\n getSelectedVerticalByName(selectedName: string) {\n return this.VerticalDetail.find(\n (val) => val.AttributeName === selectedName\n );\n }\n getCityLocation(val: IGetCityLocation) {\n\n this.ngxService.start();\n ApiService.GetCityLocation(val).then((responce: any) => {\n this.ngxService.stop();\n if (responce.status === 200) {\n if (responce.data) {\n if (val.GetType === \"City\") {\n this.CityVal = responce.data.DATA;\n }\n else if (val.GetType === \"Location\") {\n this.LocationVal = responce.data.DATA;\n }\n else if (val.GetType === \"AdroitOffice\") {\n this.DDladrofficedata = responce.data.DATA;\n this.DDladroffice= localStorage.getItem('AdroitBranch');\n }\n else if ( val.GetType === \"ROOFFICE\") {\n this.DDlROadrofficedata = responce.data.DATA;\n if( this.session.getRoleID==\"24\")\n this.DDlROadroffice=\"Select\";\n else\n this.DDlROadroffice= localStorage.getItem('AdroitBranch');\n }\n else if (val.GetType === \"SubLocation\") {\n this.SubLocationVal = responce.data.DATA;\n }\n else if (val.GetType === \"pincode\") {\n if (responce.data.DATA) {\n console.log(\"Getting Error in pinCode\", responce.data.DATA[0]);\n this.PinCode = responce.data.DATA[0].AttributeName;\n }\n console.log(this.PinCode);\n }\n else if (val.GetType === \"Engineer\" || val.GetType === \"OfficeEngineer\") {\n this.valEngineer = responce.data.DATA;\n console.log(\"Getting Error in engVal\");\n if (this.isEditCase) {\n const engVal = this.valEngineer.find(val => val.AttributeID === this.editCaseDetail.Allocated_To);\n console.log(\"Getting Error in engVal\", engVal);\n if (engVal) {\n this.AssignToText = engVal.AttributeName;\n }\n }\n }\n else if (val.GetType === \"Sup\"||val.GetType === \"ReportAnalysis\") {\n this.valSup = responce.data.DATA;\n console.log(\"Getting Error in supVal1\");\n if (this.isEditCase) {\n const supVal = this.valSup.find(val => val.AttributeID === this.selectedSupvalue);\n console.log(\"Getting Error in supVal\", supVal);\n if (supVal) {\n this.supToText = supVal.AttributeName;\n }\n }\n }\n }\n }\n }).catch((e: any) => {\n this.ngxService.stop();\n console.log(\"Getting Error in getCityLocation\");\n // Swal.fire('Oops...', '5something went wrong'+val.GetType, 'error');\n });\n }\n getEngConvence(val: IGetCityLocation) {\n //this.session.getAdroitOffice\n this.ngxService.start();\n ApiService.GetCityLocation(val)\n .then((responce: any) => {\n this.ngxService.stop();\n if (responce.status === 200) {\n if (responce.data) {\n this.EngConv = responce.data.DATA;\n console.log(\"EngConv\", this.EngConv);\n\n // this.selectedEngConv = \"Select Convence\";\n }\n }\n })\n .catch((e: any) => {\n this.ngxService.stop();\n console.log(\"Getting Error in getCityLocation\");\n Swal.fire(\"Oops...\", \"6something went wrong\", \"error\");\n });\n }\n getCityLocationOldCase(val: IGetCityLocation) {\n this.ngxService.start();\n ApiService.GetCityLocation(val)\n .then((responce: any) => {\n this.ngxService.stop();\n if (responce.status === 200) {\n if (responce.data) {\n if (val.GetType === \"City\") {\n this.CityVal = responce.data.DATA;\n } else if (val.GetType === \"Location\") {\n this.LocationVal = responce.data.DATA;\n } else if (val.GetType === \"SubLocation\") {\n this.SubLocationVal = responce.data.DATA;\n } else if (val.GetType === \"pincode\") {\n if (responce.data.DATA) {\n console.log(\"Getting Error in pinCode\", responce.data.DATA[0]);\n this.PinCode = responce.data.DATA[0].AttributeName;\n }\n console.log(this.PinCode);\n } else if (val.GetType === \"Engineer\") {\n this.valEngineer = responce.data.DATA;\n console.log(\"Getting Error in engVal\");\n } else if (\n val.GetType === \"Sup\" ||\n val.GetType === \"ReportAnalysis\"\n ) {\n this.valSup = responce.data.DATA;\n console.log(\"Getting Error in supVal1\");\n }\n }\n }\n })\n .catch((e: any) => {\n this.ngxService.stop();\n console.log(\"Getting Error in getCityLocation\");\n Swal.fire(\"Oops...\", \"6something went wrong\", \"error\");\n });\n }\n getState(val: string) {\n this.ngxService.start();\n ApiService.GetMaster(val)\n .then((responce: any) => {\n if (responce.status === 200) {\n if (responce.data) {\n if (val === \"State\") {\n this.state = responce.data.DATA;\n }\n if (val === \"Documents\") {\n if (responce.data.DATA) {\n if (responce.data.DATA.length > 0) {\n for (const value of responce.data.DATA) {\n let docVal = {\n id: Number(value.AttributeID),\n text: value.AttributeName,\n };\n this.dropdownList1.push(docVal);\n }\n this.dropdownList = this.dropdownList1;\n if (this.isEditCase) {\n console.log(\"this is edit case\");\n }\n }\n }\n }\n if (val === \"CaseType\") {\n this.LoadCaseType = responce.data.DATA;\n }\n }\n }\n this.ngxService.stop();\n })\n .catch((e: any) => {\n this.ngxService.stop();\n console.log(\"Getting Error in getState\");\n Swal.fire(\"Oops...\", \"7something went wrong\", \"error\");\n });\n }\n bindDropdownOnEdit() {\n try {\n setTimeout(() => {\n if (this.editCaseDetail.Documents) {\n const item = this.editCaseDetail.Documents;\n const valArray = item.split(\",\");\n for (const valItem in valArray) {\n const supVal = this.dropdownList.find(\n (value) => value.id === +valArray[valItem]\n );\n if (supVal) {\n this.newSelectedItems.push(supVal);\n }\n }\n this.selectedItems = this.newSelectedItems;\n }\n }, 3000);\n } catch (error) {\n console.log(\"Error IS \", error);\n }\n }\n GetBankDetails() {\n let p: IBankDetail = {\n userid: this.session.UserID,\n BankID: \"\",\n BranchID: \"\",\n RoleID: this.session.getRoleID,\n GetType: \"Bank\",\n };\n this.ngxService.start();\n ApiService.GetBankDetails(p)\n .then((responce: any) => {\n if (responce.status === 200) {\n if (responce.data) {\n this.BankDetail = responce.data.DATA;\n }\n }\n this.ngxService.stop();\n })\n .catch((e: any) => {\n this.ngxService.stop();\n console.log(\"Getting Error In GetBankDetails\");\n Swal.fire(\"Oops...\", \"something went wrong\", \"error\");\n });\n }\n GetBankDetailsEditCase(isEdit: boolean) {\n let p: IBankDetail = {\n userid: this.session.UserID,\n BankID: \"\",\n BranchID: \"\",\n RoleID: this.session.getRoleID,\n GetType: \"Bank\",\n };\n this.ngxService.start();\n ApiService.GetBankDetails(p)\n .then((responce: any) => {\n if (responce.status === 200) {\n if (responce.data) {\n this.BankDetail = responce.data.DATA;\n if (isEdit && !this.selectedOldCase) {\n const BankText = this.BankDetail.find(\n (val) => val.AttributeID === this.editCaseDetail.Bank_ID\n );\n this.BankText = BankText.AttributeName;\n }\n }\n }\n this.ngxService.stop();\n })\n .catch((e: any) => {\n this.ngxService.stop();\n console.log(\"Getting Error In GetBankDetails\");\n Swal.fire(\"Oops...\", \"8something went wrong\", \"error\");\n });\n }\n GetUsageDataNew() {\n this.propertyTypeNEw = \"Select\";\n this.GetUsageData(\"Usage\");\n }\n GetUsageDataNewpro() {\n this.propertyTypeNEw = \"Select\";\n this.GetUsageData(\"propertytype\");\n }\n GetUsageData(e: any) {\n this.ngxService.start();\n let val: IUsage;\n let callAPI: boolean = true;\n if (e == \"Usage\") {\n val = {\n CaseID: \" \",\n type: \"Usage\",\n ID: \"\",\n };\n } else {\n if (this.DDlUsage == \"Select\") {\n callAPI = false;\n }\n val = {\n CaseID: \"\",\n type: \"propertytype\",\n ID: this.DDlUsage,\n };\n }\n if (callAPI) {\n ApiService.GetUsageData(val)\n .then((responce: any) => {\n if (responce.status == 200) {\n debugger;\n if (responce.data) {\n if (e == \"Usage\") {\n this.DDLUsageData = responce.data.MasterData;\n } else {\n this.DDLPropertyData = responce.data.MasterData;\n let p = this.propertyTypeNEw;\n this.DDlPropertyType = this.propertyTypeNEw;\n this.showMultidropDown();\n }\n }\n }\n this.ngxService.stop();\n })\n .catch((e: any) => {\n this.ngxService.stop();\n // Swal.fire('Oops...', 'Something went wrong try again!', 'error');\n console.log(\"Error In GetUsageData\", JSON.stringify(val));\n });\n }\n }\n showMultidropDown() {\n if (this.DDlUsage == \"5\") {\n $(\"#ddlPropertyType\").attr(\"multiple\", \"multiple\");\n $(\"#ddlPropertyType\").attr(\n \"title\",\n \"You can select multiple value using CTRL+value\"\n );\n } else {\n $(\"#ddlPropertyType\").removeAttr(\"multiple\");\n $(\"#ddlPropertyType\").removeAttr(\"title\");\n }\n if (this.propertyTypeNEw != \"Select\") {\n var dataarray = this.propertyTypeNEw.split(\",\");\n $(\"#ddlPropertyType\").val(dataarray);\n $(\"#ddlPropertyType\").multiselect(\"refresh\");\n }\n }\n GetVerticalDetails(bankID: string, BranchID: string, isEdit: boolean) {\n let p: IBankDetail = {\n userid: this.session.UserID,\n BankID: BranchID,\n BranchID: BranchID,\n RoleID: this.session.getRoleID,\n GetType: \"Vertical\",\n };\n this.ngxService.start();\n\n ApiService.GetBankDetails(p)\n .then((responce: any) => {\n if (responce.status === 200) {\n if (responce.data) {\n this.VerticalDetail = responce.data.DATA;\n if (isEdit && !this.selectedOldCase) {\n const BankText = this.VerticalDetail.find(\n (val) => val.AttributeID === this.editCaseDetail.Vertical_id\n );\n this.VerticalText = BankText.AttributeName;\n }\n }\n }\n this.ngxService.stop();\n })\n .catch((e: any) => {\n this.ngxService.stop();\n console.log(\"Getting Error In GetVerticalDetails\");\n Swal.fire(\"Oops...\", \"9something went wrong\", \"error\");\n });\n }\n Getvert(BankID: string, isEdit: boolean) {\n let p: IBankDetail = {\n userid: this.session.UserID,\n BankID: BankID,\n BranchID: \"\",\n RoleID: this.session.getRoleID,\n GetType: \"Branch\",\n };\n //this.ngxService.start();\n\n ApiService.GetBankDetails(p)\n .then((responce: any) => {\n if (responce.status === 200) {\n if (responce.data) {\n this.BranchDetail = responce.data.DATA;\n if (isEdit) {\n const branchText = this.BranchDetail.find(\n (val) => val.AttributeID === this.selectedBranchValue\n );\n this.BranchPersonText = branchText.AttributeName;\n }\n }\n }\n // this.ngxService.stop();\n })\n .catch((e: any) => {\n this.ngxService.stop();\n console.log(\"Get Error In GetBranchDetails\");\n Swal.fire(\"Oops...\", \"Get Error In GetBranchDetails\", \"error\");\n });\n }\n\n GetBranchPersonDetails(bankID: string, BranchID: string, isEdit: boolean) {\n debugger;\n let p: IBankDetail = {\n userid: this.session.UserID,\n BankID: bankID,\n BranchID: BranchID,\n RoleID: this.session.getRoleID,\n GetType: \"Person\",\n };\n this.selectedVerticalValue = bankID;\n this.ngxService.start();\n\n ApiService.GetBankDetails(p)\n .then((responce: any) => {\n if (responce.status === 200) {\n if (responce.data) {\n this.BranchPersonDetail = responce.data.DATA;\n if (isEdit && !this.selectedOldCase) {\n const BankText = this.BranchPersonDetail.find(\n (val) => val.AttributeID === this.editCaseDetail.Branch_person\n );\n this.BranchPersonText = BankText.AttributeName;\n }\n }\n }\n this.ngxService.stop();\n })\n .catch((e: any) => {\n this.ngxService.stop();\n console.log(\"Getting Error In GetBranchPersonDetails\");\n Swal.fire(\"Oops...\", \"9something went wrong\", \"error\");\n });\n }\n GetBranchDetails(BankID: string, isEdit: boolean) {\n let p: IBankDetail = {\n userid: this.session.UserID,\n BankID: BankID,\n BranchID: \"\",\n RoleID: this.session.getRoleID,\n GetType: \"Branch\",\n };\n //this.ngxService.start();\n\n ApiService.GetBankDetails(p)\n .then((responce: any) => {\n if (responce.status === 200) {\n if (responce.data) {\n this.BranchDetail = responce.data.DATA;\n if (isEdit) {\n const branchText = this.BranchDetail.find(\n (val) => val.AttributeID === this.selectedBranchValue\n );\n this.BranchText = branchText.AttributeName;\n }\n }\n }\n // this.ngxService.stop();\n })\n .catch((e: any) => {\n this.ngxService.stop();\n console.log(\"Get Error In GetBranchDetails\");\n Swal.fire(\"Oops...\", \"Get Error In GetBranchDetails\", \"error\");\n });\n }\n GetZoneDetails(BankID: string, isEdit: boolean) {\n let p: IBankDetail = {\n userid: this.session.UserID,\n BankID: BankID,\n BranchID: \"\",\n RoleID: this.session.getRoleID,\n GetType: \"Zone\",\n };\n //this.ngxService.start();\n this.ZoneText = \"\";\n this.VerticalText = \"\";\n ApiService.GetBankDetails(p)\n .then((responce: any) => {\n if (responce.status === 200) {\n if (responce.data) {\n this.ZoneDetail = responce.data.DATA;\n if (isEdit) {\n const BankText = this.ZoneDetail.find(\n (val) => val.AttributeID === this.selectedZoneValue\n );\n this.ZoneText = BankText.AttributeName;\n }\n }\n }\n // this.ngxService.stop();\n })\n .catch((e: any) => {\n this.ngxService.stop();\n console.log(\"Get Error In GetZoneDetails\");\n Swal.fire(\"Oops...\", \"Get Error In GetZoneDetails\", \"error\");\n });\n }\n GetProductDetails(BankID: string, isEdit: boolean) {\n debugger;\n let p: IBankDetail = {\n userid: this.session.UserID,\n BankID: BankID,\n BranchID: \"\",\n RoleID: this.session.getRoleID,\n GetType: \"Product\",\n };\n //this.ngxService.start();\n\n ApiService.GetBankDetails(p)\n .then((responce: any) => {\n if (responce.status === 200) {\n if (responce.data) {\n this.LoadCaseType = responce.data.DATA;\n }\n }\n // this.ngxService.stop();\n })\n .catch((e: any) => {\n this.ngxService.stop();\n console.log(\"Get Error In GetProductDetails\");\n Swal.fire(\"Oops...\", \"Get Error In GetProductDetails\", \"error\");\n });\n }\n GetFeesTypeDetails(VertiCalID: string, isEdit: boolean) {\n debugger;\n let p: IBankDetail = {\n userid: this.session.UserID,\n BankID: VertiCalID,\n BranchID: \"\",\n RoleID: this.session.getRoleID,\n GetType: \"FeesType\",\n };\n //this.ngxService.start();\n\n ApiService.GetBankDetails(p)\n .then((responce: any) => {\n if (responce.status === 200) {\n if (responce.data) {\n this.LoadFeesType = responce.data.DATA;\n }\n }\n // this.ngxService.stop();\n })\n .catch((e: any) => {\n this.ngxService.stop();\n console.log(\"Get Error In GetFeesDetails\");\n Swal.fire(\"Oops...\", \"Get Error In GetFeesDetails\", \"error\");\n });\n }\n GetApproverDetails(BankID: string, isEdit: boolean) {\n debugger;\n let p: IBankDetail = {\n userid: this.session.UserID,\n BankID: BankID,\n BranchID: \"\",\n RoleID: this.session.getRoleID,\n GetType: \"Product\",\n };\n //this.ngxService.start();\n // this.selectedApprover=\"Select\";\n ApiService.GetApproverDetails(p)\n .then((responce: any) => {\n if (responce.status === 200) {\n if (responce.data) {\n this.LoadApprover = responce.data.DATA;\n // this.selectedApprover=\"Select\";\n }\n }\n // this.ngxService.stop();\n })\n .catch((e: any) => {\n this.ngxService.stop();\n console.log(\"Get Error In GetApproverDetails\");\n Swal.fire(\"Oops...\", \"Get Error In GetApproverDetails\", \"error\");\n });\n }\n onItemSelect(item: any) {\n let p = this.selectedItems.length;\n console.log(item);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelect(items: any) {\n this.deleteMsg(items.id);\n }\n deleteMsg(msg: string) {}\n HideModel() {\n this.IsPopUp = false;\n }\n checkValue(e: any) {\n const val = e.currentTarget.value;\n this.IsPopUp = false;\n if (val) {\n this.selectedOldCase = true;\n this.GetEditOldCaseDetail(val);\n }\n console.log(e);\n }\n searchOldCases() {\n this.ngxService.start();\n let val: searchOldCases = {\n Applicant_Name: this.applicantName,\n Property_No: this.propertyNo,\n Building_No: this.BuildingName,\n Street_Sector: this.Streat,\n Land_mark: this.landmark,\n City: this.selectedCity,\n Contact_Persion_Mob1: this.MOb1,\n Contact_Persion_Mob2: this.MOb2,\n };\n let p: boolean = false;\n if (\n this.applicantName != \"\" ||\n this.propertyNo != \"\" ||\n this.BuildingName != \"\" ||\n this.Streat != \"\" ||\n this.landmark != \"\" ||\n this.selectedCity != \"Select\" ||\n this.MOb1 != \"\" ||\n this.MOb2 != \"\"\n ) {\n p = true;\n if (this.selectedCity == \"Select\") {\n val.City = \"\";\n }\n }\n if (p) {\n ApiService.SearchOldCases(val)\n .then((responce: any) => {\n this.HeaderText = \"Please Select Case\";\n if (responce.status === 200) {\n if (responce.data) {\n this.IsPopUp = true;\n this.GridOldCases = responce.data.DATA;\n } else {\n Swal.fire(\"Oops...\", \"No Data Found!\", \"warning\");\n }\n } else {\n Swal.fire(\"No Data Found!\", \"warning\");\n // this.IsPopUp = true;\n }\n this.ngxService.stop();\n })\n .catch((e: any) => {\n this.ngxService.stop();\n Swal.fire(\"Oops...\", \"10something went wrong\", \"error\");\n });\n } else {\n this.ngxService.stop();\n Swal.fire(\"Oops...\", \"please add at least one value\", \"warning\");\n }\n }\n onBankCaseChange(e: any) {\n this.radioSelected = \"Billing\";\n e.target.value;\n if (e.target.value == \"Select\" || e.target.value == \"\") {\n Swal.fire(\"Oops...\", \"Please select case type!\", \"warning\");\n this.IsExtraFeeShow = false;\n this.IsconvFeeShow = false;\n this.IstotalFeeShow = false;\n this.IsapprovalShow = false;\n this.IscontactnoShow = false;\n this.IsFeeShow = false;\n this.IsdocShow = false;\n this.IsFeecase = false;\n } else {\n if (this.selectedBankValue && this.casetype && this.session.UserID) {\n const val: IcaseFee = {\n CaseTypeID: this.casetype,\n LoginID: this.session.UserID,\n BankID: this.selectedBankValue,\n ZoneID: this.selectedZoneValue,\n BranchID: this.selectedBranchValue,\n VerticalID: this.selectedVerticalValue,\n };\n this.ngxService.start();\n ApiService.CaseFee(val)\n .then((responce: any) => {\n this.ngxService.stop();\n if (responce.status === 200) {\n /* if (responce.data != \"\") { */\n if (\n this.session.getRoleID == \"22\" ||\n this.session.getRoleID == \"7\"\n ) {\n this.IsFeeShow = false;\n this.IsExtraFeeShow = false;\n this.IsconvFeeShow = false;\n this.IstotalFeeShow = false;\n this.IsapprovalShow = false;\n this.IscontactnoShow = false;\n this.IsdocShow = false;\n this.IsFeecase = false;\n this.CaseFee = responce.data;\n this.TotalFee = (\n +this.Conveyance +\n +this.CaseFee +\n +this.ExtraFee\n ).toString();\n } else {\n this.IsFeeShow = true;\n this.IsExtraFeeShow = true;\n this.IsconvFeeShow = true;\n this.IstotalFeeShow = true;\n this.IsapprovalShow = true;\n this.IscontactnoShow = true;\n this.IsdocShow = true;\n this.IsFeecase = true;\n this.CaseFee = responce.data;\n this.TotalFee = (\n +this.Conveyance +\n +this.CaseFee +\n +this.ExtraFee\n ).toString();\n }\n /* } else {\n // this.router.navigate([\"Home\"]);\n Swal.fire('Oops...', 'Before Create Case Update Bank Case Fees!', 'warning');\n this.casetype=\"Select\";\n this.IsExtraFeeShow=false;\n this.IsconvFeeShow=false;\n this.IstotalFeeShow=false;\n this.IsapprovalShow=false;\n this.IscontactnoShow=false;\n this.IsFeeShow=false;\n this.IsdocShow=false;\n this.IsFeecase=false;\n } */\n }\n })\n .catch((e: any) => {\n console.log(\"Getting Error in onCaseChange\");\n Swal.fire(\"Oops...\", \"4something went wrong\", \"error\");\n });\n }\n }\n }\n}\n","module.exports = \"
\\r\\n \\r\\n
\\r\\n\\r\\n

Case Creation

\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
Bank Details
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n

\\r\\n
\\r\\n
Customer Details
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n Special Characters Like % / \\\" - etc Not Allowed in Applicant Name\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
Fees Details
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n

\\r\\n
\\r\\n
Other Details
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n Link Shared With Customer\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n Click here for manual conveyance\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n *Required fields\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n

{{HeaderText}}

\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
Case Reference No.Applicant NameBank NameCase StatusCase TypeCase_Created_OnCase Status RemarksContact PersonMobile1Mobile2EngineerLocationProperty AddressSup.Created By
{{grid.CaseUID}}{{grid.ApplicantName}}{{grid.bankbranchname}}{{grid.CaseStatus}}{{grid.CaseType}}{{grid.Case_Created_On}}{{grid.Case_Status_Remarks}}{{grid.ContactPerson}}{{grid.ContactPersonMob1}}{{grid.ContactPersonMob2}}{{grid.Eng}}{{grid.Location}}{{grid.PropertyAddress}}{{grid.Sup}}{{grid.cr_by}}
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n

\\r\\n
\\r\\n\\r\\n
\\r\\n

Enter Amount : \\r\\n

\\r\\n

Convence Remark : \\r\\n

\\r\\n

\\r\\n \\r\\n

\\r\\n

\\r\\n

\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\"","import { Component, OnInit } from \"@angular/core\";\r\nimport { Router, ActivatedRoute } from \"@angular/router\";\r\nimport { ApiService } from \"../service/service\";\r\nimport { SessionService } from \"../service/sessionGlobalVar\";\r\nimport {\r\n IcaseFee,\r\n IBankDetail,\r\n IGetCityLocation,\r\n ICaseCreate,\r\n getStage,\r\n searchOldCases,\r\n IUsage,\r\n} from \"../service/type\";\r\nimport { NgxUiLoaderService } from \"ngx-ui-loader\";\r\nimport Swal from \"sweetalert2\";\r\nimport { DISABLED } from \"@angular/forms/src/model\";\r\n\r\ndeclare var $: any;\r\n@Component({\r\n selector: \"app-casecreation\",\r\n templateUrl: \"./casecreation.component.html\",\r\n styleUrls: [],\r\n})\r\nexport class CasecreationComponent implements OnInit {\r\n BankDetail: any;\r\n selectedBankValue: any = \"\";\r\n selectedZoneValue: any = \"\";\r\n selectedBranchValue: any = \"\";\r\n selectedVerticalValue: any = \"\";\r\n selectedBranchPersonValue: any = \"\";\r\n ZoneDetail: any = \"\";\r\n BranchDetail: any = \"\";\r\n BranchPersonDetail: any = \"\";\r\n VerticalDetail: any = \"\";\r\n state: any = \"\";\r\n EngConv: any = \"\";\r\n selectedState: string = \"Select\";\r\n selectedEngConv: string = \"Select\";\r\n selectedCity: string = \"Select\";\r\n selectedLocality: string = \"Select\";\r\n selectedSubLocation: string = \"Select\";\r\n selectedApprover: string = \"Select\";\r\n caseVertical: string = \"\";\r\n applicantFirst: string = \"\";\r\n propertyFirst: string = \"Plot No.\";\r\n selectedValuationValue: string = \"1\";\r\n casetype: string = \"Select\";\r\n feestype: string = \"Select\";\r\n selectedStatus: string = \"Select\";\r\n CityVal: any = \"\";\r\n LocationVal: any = \"\";\r\n SubLocationVal: any = \"\";\r\n PinCode: any = \"\";\r\n status: any = \"\";\r\n DDLUsageData: any;\r\n valEngineer: any = \"\";\r\n valSup: any = \"\";\r\n valReportAnalysis: any = \"\";\r\n selectedEngvalue: string = \"\";\r\n selectedSupvalue: string = \"\";\r\n applicantName: string = \"\";\r\n district: string = \"\";\r\n dropdownList = [];\r\n dropdownList1 = [];\r\n selectedItems = [];\r\n newSelectedItems = [];\r\n dropdownSettings = {};\r\n propertyNo: string = \"\";\r\n BuildingName: string = \"\";\r\n Streat: string = \"\";\r\n landmark: string = \"\";\r\n ContactPersonName: string = \"\";\r\n MOb1: string = \"\";\r\n MOb2: string = \"\";\r\n LoadCaseType: any = \"\";\r\n LoadFeesType: any = \"\";\r\n LoadApprover: any = \"\";\r\n StatusRemark: string = \"\";\r\n FileNo: string = \"\";\r\n PropertyArea: string = \"\";\r\n CaseRemark: string = \"\";\r\n CaseFee: string = \"0\";\r\n ExtraFee: string = \"0\";\r\n Conveyance: string = \"0\";\r\n TotalFee: string = \"0\";\r\n ApprovalRemarks: string = \"\";\r\n ConAmount: string = \"\";\r\n ConRemark: string = \"\";\r\n ApprovalPerson: string = \"\";\r\n ContactNo: string = \"\";\r\n IsFeeShow: boolean = false;\r\n ISExtrafeeReadonly: boolean = false;\r\n editCaseDetail: any = \"\";\r\n BankText: string = \"\";\r\n ZoneText: string = \"\";\r\n BranchText: string = \"\";\r\n BranchPersonText: string = \"\";\r\n VerticalText: string = \"\";\r\n Sector: string = \"\";\r\n AssignToText: string = \"\";\r\n supToText: string = \"\";\r\n Block: string = \"\";\r\n files;\r\n filestring;\r\n myfile;\r\n isEditCase: boolean = false;\r\n ISvaluation: boolean = true;\r\n IScasebranch: boolean = true;\r\n document: any;\r\n sectionPlaneDoc: any;\r\n ApprovelDoc: any;\r\n isdisable: boolean = false;\r\n isrodisable: boolean = false;\r\n IsBankCase: boolean = false;\r\n IsENGEXTCOn: boolean = false;\r\n IsZoneCase: boolean = false;\r\n IsBranchCase: boolean = false;\r\n IsPopUp: boolean = false;\r\n HeaderText: string;\r\n GridOldCases: any;\r\n selectedOldCase: boolean = false;\r\n oldCaseID: string = \"\";\r\n CaseID: string = \"\";\r\n propertyTypeNEw: string = \"Select\";\r\n DDlUsage: string = \"Select\";\r\n DDlPropertyType: string = \"Select\";\r\n DDLPropertyData: any;\r\n radioSelectedString: string;\r\n radioSelected: string = \"\";\r\n PaymentType: string;\r\n ExtraEngConvApproved: any;\r\n radioSel: any;\r\n IsExtraFeeShow: boolean = true;\r\n IsconvFeeShow: boolean = true;\r\n IstotalFeeShow: boolean = true;\r\n IsapprovalShow: boolean = true;\r\n IscontactnoShow: boolean = true;\r\n IsdocShow: boolean = true;\r\n IsFeecase: boolean = true;\r\n editabless: boolean = false;\r\n EngConvftv: boolean = false;\r\n ddlrole: string;\r\n getApprovaldocurl: any;\r\n btnextconsave: string = \"Save\";\r\n DDladrofficedata: any = \"\";\r\n IsOfficeChange:string=\"N\";\r\n DDladroffice: any = \"\";\r\n DDlROadrofficedata: any = \"\";\r\n DDlROadroffice: any = \"\";\r\n gettypeperson: any = \"\";\r\n constructor(\r\n private router: Router,\r\n private service: ApiService,\r\n private ngxService: NgxUiLoaderService,\r\n private session: SessionService,\r\n private route: ActivatedRoute\r\n ) {\r\n this.getState(\"State\");\r\n const val1: IGetCityLocation = {\r\n StateID: this.session.getAdroitOffice,\r\n CityID: \"\",\r\n LocID: \"\",\r\n GetType: \"ENGCONV\",\r\n };\r\n this.getEngConvence(val1);\r\n // this.getState(\"CaseType\");\r\n this.GetUsageDataNew(); \r\n this.dropdownSettings = {\r\n singleSelection: false,\r\n idField: \"id\",\r\n textField: \"text\",\r\n unSelectAllText: \"UnSelect All\",\r\n itemsShowLimit: 3,\r\n allowSearchFilter: true,\r\n };\r\n\r\n const BranchID = localStorage.getItem(\"BankBranchID\");\r\n const bankID = localStorage.getItem(\"BankID\");\r\n let val = localStorage.getItem(\"roleID\");\r\n\r\n if (BranchID && (+val == 7 || +val == 10)) {\r\n this.selectedBankValue = bankID;\r\n this.selectedBranchValue = BranchID;\r\n this.IsBankCase = false;\r\n this.IsZoneCase = false;\r\n this.IsBranchCase = false;\r\n this.selectedValuationValue = \"1\";\r\n this.valuationChange();\r\n if (this.selectedBranchValue) {\r\n this.GetBranchPersonDetails(\r\n this.selectedBankValue,\r\n this.selectedBranchValue,\r\n false\r\n );\r\n }\r\n } else if (BranchID && +val == 22) {\r\n this.selectedBankValue = bankID;\r\n //this.selectedBranchValue = BranchID;\r\n this.selectedValuationValue = \"1\";\r\n this.valuationChange();\r\n this.IsBankCase = false;\r\n this.IsZoneCase = true;\r\n this.IsBranchCase = true;\r\n if (this.selectedBankValue) {\r\n this.GetBranchDetails(this.selectedBankValue, false);\r\n // this.GetBranchPersonDetails(this.selectedBankValue, this.selectedBranchValue, false);\r\n }\r\n } else {\r\n this.IsBankCase = true;\r\n this.IsZoneCase = true;\r\n this.IsBranchCase = true;\r\n this.GetBankDetails();\r\n }\r\n }\r\n ngOnInit() {\r\n if (!this.session.isLoggedIn) {\r\n this.router.navigate([\"Login\"]);\r\n }\r\n const val = this.session.getRoleID;\r\n if (val == \"3\" || val == \"10\" || val == \"7\" || val == \"22\" || val == \"24\") {\r\n this.route.params.subscribe((params) => {\r\n if (params.id) {\r\n this.isEditCase = true;\r\n const id = window.atob(params.id);\r\n this.CaseID = id;\r\n this.GetEditCaseDetail();\r\n }\r\n });\r\n } else {\r\n localStorage.clear();\r\n this.router.navigate([\"login\"]);\r\n }\r\n\r\n this.getState(\"Documents\");\r\n /* if(val == \"7\"){\r\n this.branchview();}*/\r\n // if(val==\"24\")\r\n // {\r\n const valroOffice: IGetCityLocation = {\r\n StateID: this.session.UserID,\r\n CityID: this.selectedCity,\r\n LocID: this.selectedLocality,\r\n GetType: \"ROOFFICE\",\r\n }\r\n this.getCityLocation(valroOffice);\r\n // }else{\r\n const valOffice: IGetCityLocation = {\r\n StateID: this.session.UserID,\r\n CityID: this.selectedCity,\r\n LocID: this.selectedLocality,\r\n GetType: \"AdroitOffice\",\r\n }\r\n this.getCityLocation(valOffice);\r\n // }\r\n \r\n const valEng: IGetCityLocation = {\r\n StateID: localStorage.getItem('AdroitBranch'),\r\n CityID: this.selectedCity,\r\n LocID: this.selectedLocality,\r\n GetType: \"OfficeEngineer\",\r\n }\r\n this.getCityLocation(valEng);\r\n }\r\n getFiles(event) {\r\n this.files = event.target.files;\r\n var reader = new FileReader();\r\n reader.onload = this._handleReaderLoaded.bind(this.files);\r\n reader.readAsBinaryString(this.files[0]);\r\n }\r\n branchview() {\r\n this.IScasebranch = false;\r\n }\r\n bindPreviousValue() {\r\n //debugger;\r\n console.log(\"editCaseDetaillook\", this.editCaseDetail);\r\n if (!this.selectedOldCase) {\r\n this.GetBankDetailsEditCase(true);\r\n this.selectedBankValue = this.editCaseDetail.Bank_ID;\r\n\r\n this.GetZoneDetails(this.editCaseDetail.Bank_ID, true);\r\n this.selectedZoneValue = this.editCaseDetail.Zone_id;\r\n\r\n this.GetBranchDetails(this.editCaseDetail.Zone_id, true);\r\n this.selectedBranchValue = this.editCaseDetail.Branch_id;\r\n\r\n this.GetVerticalDetails(\r\n this.selectedBankValue,\r\n this.selectedBranchValue,\r\n true\r\n );\r\n this.selectedVerticalValue = this.editCaseDetail.Vertical_id;\r\n this.selectedEngConv = this.editCaseDetail.EngConv;\r\n this.selectedStatus = this.editCaseDetail.Case_Status;\r\n this.selectedValuationValue = this.editCaseDetail.Valuation_typeID;\r\n this.GetBranchPersonDetails(\r\n this.editCaseDetail.Vertical_id,\r\n this.editCaseDetail.Branch_id,\r\n true\r\n );\r\n this.selectedBranchPersonValue = this.editCaseDetail.Branch_person;\r\n this.getApprovaldocurl = this.editCaseDetail.ApprovalDocPath;\r\n this.GetProductDetails(this.selectedBankValue, true);\r\n this.GetFeesTypeDetails(this.selectedVerticalValue, true);\r\n } else {\r\n this.oldCaseID = this.editCaseDetail.CaseID;\r\n }\r\n this.IsFeeShow = true;\r\n this.isEditCase = true;\r\n this.selectedState = this.editCaseDetail.StateID;\r\n this.selectedEngConv = this.editCaseDetail.EngConv;\r\n this.district = this.editCaseDetail.District;\r\n\r\n this.applicantName = this.editCaseDetail.Applicant_nameN;\r\n\r\n this.applicantFirst = this.editCaseDetail.ApplicanttitleN;\r\n\r\n this.PinCode = this.editCaseDetail.pin_code;\r\n this.BuildingName = this.editCaseDetail.Building_No;\r\n this.Streat = this.editCaseDetail.Street_Sector;\r\n this.Sector = this.editCaseDetail.SectorN;\r\n this.ContactPersonName = this.editCaseDetail.Contact_persion_Name;\r\n this.MOb1 = this.editCaseDetail.Contact_Persion_Mob1;\r\n this.MOb2 = this.editCaseDetail.Contact_Persion_Mob2;\r\n this.casetype = this.editCaseDetail.Type_Of_Case;\r\n this.feestype = this.editCaseDetail.FeesType;\r\n this.landmark = this.editCaseDetail.Land_mark;\r\n this.FileNo = this.editCaseDetail.File_No;\r\n this.PropertyArea = this.editCaseDetail.Area;\r\n\r\n this.StatusRemark = this.editCaseDetail.Case_Status_Remarks;\r\n this.Conveyance = this.editCaseDetail.Conveyance;\r\n this.CaseFee = this.editCaseDetail.ActualFees;\r\n this.ExtraFee = this.editCaseDetail.ExtraFees;\r\n this.TotalFee = this.editCaseDetail.TotalFees;\r\n this.ApprovalRemarks = this.editCaseDetail.Approval_Remarks;\r\n this.ConAmount = this.editCaseDetail.ExtraEngConv;\r\n this.ConRemark = this.editCaseDetail.ExtraEngConvRemark;\r\n this.caseVertical = this.editCaseDetail.Case_vertical;\r\n if (\r\n this.editCaseDetail.ExtraEngConv != \"0\" &&\r\n this.editCaseDetail.ExtraEngConv != \"\"\r\n ) {\r\n this.IsENGEXTCOn = true;\r\n this.ConAmount = this.editCaseDetail.ExtraEngConv;\r\n this.ConRemark = this.editCaseDetail.ExtraEngConvRemark;\r\n this.ExtraEngConvApproved =\r\n \"Convence Approved by Branch : \" +\r\n this.editCaseDetail.ExtraEngConvApproved;\r\n if (this.editCaseDetail.ExtraEngConvApproved == \"Yes\") {\r\n this.ISExtrafeeReadonly = true;\r\n }\r\n this.btnextconsave = \"Close\";\r\n }\r\n //debugger;\r\n this.GetApproverDetails(this.selectedBankValue, true);\r\n this.selectedApprover = this.editCaseDetail.ApprovalPersonName;\r\n this.ContactNo = this.editCaseDetail.ApprovalContact;\r\n this.CaseRemark = this.editCaseDetail.Case_Creation_remark;\r\n this.propertyNo = this.editCaseDetail.PropertyValueN;\r\n this.propertyFirst = this.editCaseDetail.Property_titleN;\r\n this.Block = this.editCaseDetail.Block;\r\n if (this.editCaseDetail.PaymentType == \"Billing\") {\r\n //this.Compositet=true;\r\n this.radioSelected = \"Billing\";\r\n this.radioSelectedString = JSON.stringify(this.radioSel);\r\n this.IsExtraFeeShow = true;\r\n this.IsconvFeeShow = true;\r\n this.IstotalFeeShow = true;\r\n this.IsapprovalShow = true;\r\n this.IscontactnoShow = true;\r\n this.IsdocShow = true;\r\n this.editabless = false;\r\n } else if (this.editCaseDetail.PaymentType == \"Cash\") {\r\n this.radioSelected = \"Cash\";\r\n this.radioSelectedString = JSON.stringify(this.radioSel);\r\n this.IsExtraFeeShow = false;\r\n this.IsconvFeeShow = false;\r\n this.IstotalFeeShow = false;\r\n this.IsapprovalShow = false;\r\n this.IscontactnoShow = false;\r\n this.IsdocShow = false;\r\n this.editabless = true;\r\n } else {\r\n this.radioSelected = \"Billing\";\r\n this.radioSelectedString = JSON.stringify(this.radioSel);\r\n }\r\n if (this.selectedState) {\r\n const val: IGetCityLocation = {\r\n StateID: this.selectedState,\r\n CityID: \"\",\r\n LocID: \"\",\r\n GetType: \"City\",\r\n };\r\n this.getCityLocation(val);\r\n this.selectedCity = this.editCaseDetail.cityID;\r\n if (this.selectedCity) {\r\n const val: IGetCityLocation = {\r\n StateID: this.selectedState,\r\n CityID: this.selectedCity,\r\n LocID: \"\",\r\n GetType: \"Location\",\r\n };\r\n this.getCityLocation(val);\r\n this.selectedLocality = this.editCaseDetail.LocationID;\r\n this.locationChangeFUnction();\r\n this.selectedSubLocation = this.editCaseDetail.SubLocalityId;\r\n this.selectedEngvalue = this.editCaseDetail.Allocated_To;\r\n try{\r\n //debugger;\r\n if( this.editCaseDetail.OtherOfficeStatus==\"Y\")\r\n this.DDladroffice=this.editCaseDetail.OtherOfficeID;\r\n else\r\n {\r\n this.DDlROadroffice=this.editCaseDetail.adroitoffice;\r\n this.DDladroffice=this.editCaseDetail.adroitoffice;\r\n const valEng: IGetCityLocation = {\r\n StateID: this.DDlROadroffice,\r\n CityID: this.selectedCity,\r\n LocID: this.selectedLocality,\r\n GetType: \"OfficeEngineer\",\r\n }\r\n this.getCityLocation(valEng);\r\n const valSup: IGetCityLocation = {\r\n StateID: this.session.UserID,\r\n CityID: this.selectedCity,\r\n LocID: this.session.getRoleID,\r\n GetType: \"ReportAnalysis\",\r\n }; \r\n this.getCityLocation(valSup);\r\n }\r\n if (this.valEngineer) {\r\n const engVal = this.valEngineer.find(\r\n (val) => val.AttributeID === this.editCaseDetail.Allocated_To\r\n );\r\n this.AssignToText = engVal.AttributeName;\r\n }\r\n\r\n this.selectedSupvalue = this.editCaseDetail.Supervisor;\r\n if (this.valSup) {\r\n const supVal = this.valSup.find(\r\n (val) => val.AttributeID === this.selectedSupvalue\r\n );\r\n this.supToText = supVal.AttributeName;\r\n }\r\n \r\n }\r\n catch(e){}\r\n }\r\n this.valuationChange();\r\n this.bindDropdownOnEdit();\r\n }\r\n }\r\n valuationChange() {\r\n const val: string = this.selectedValuationValue;\r\n if (val == \"2\") {\r\n this.ISvaluation = false;\r\n this.EngConvftv=false;\r\n } else {\r\n this.ISvaluation = true;\r\n this.EngConvftv=true;\r\n }\r\n this.GetStageDetail();\r\n this.VerticalText = \"\";\r\n this.BranchPersonText=\"\";\r\n }\r\n feeChange() {\r\n this.TotalFee = (\r\n +this.Conveyance +\r\n +this.CaseFee +\r\n +this.ExtraFee\r\n ).toString();\r\n }\r\n hideShowpayment(e: any) {\r\n if (e.currentTarget.value == \"Billing\") {\r\n this.PaymentType = \"Billing\";\r\n /* this.IsExtraFeeShow=true;\r\n this.IsconvFeeShow=true;\r\n this.IstotalFeeShow=true;\r\n this.IsapprovalShow=true;\r\n this.IscontactnoShow=true;\r\n this.IsdocShow=true; */\r\n this.editabless = false;\r\n if (this.selectedBankValue && this.casetype && this.session.UserID) {\r\n const val: IcaseFee = {\r\n CaseTypeID: this.casetype,\r\n LoginID: this.session.UserID,\r\n BankID: this.selectedBankValue,\r\n ZoneID: this.selectedZoneValue,\r\n BranchID: this.selectedBranchValue,\r\n VerticalID: this.selectedVerticalValue,\r\n };\r\n this.ngxService.start();\r\n ApiService.CaseFee(val)\r\n .then((responce: any) => {\r\n this.ngxService.stop();\r\n if (responce.status === 200) {\r\n if (responce.data != \"\") {\r\n this.IsFeeShow = true;\r\n this.IsExtraFeeShow = true;\r\n this.IsconvFeeShow = true;\r\n this.IstotalFeeShow = true;\r\n this.IsapprovalShow = true;\r\n this.IscontactnoShow = true;\r\n this.IsdocShow = true;\r\n this.IsFeecase = true;\r\n this.CaseFee = responce.data;\r\n this.TotalFee = (\r\n +this.Conveyance +\r\n +this.CaseFee +\r\n +this.ExtraFee\r\n ).toString();\r\n } else {\r\n // this.router.navigate([\"Home\"]);\r\n Swal.fire(\r\n \"Oops...\",\r\n \"Before Create Case Update Bank Case Fees!\",\r\n \"warning\"\r\n );\r\n this.casetype = \"Select\";\r\n }\r\n }\r\n })\r\n .catch((e: any) => {\r\n console.log(\"Getting Error in onCaseChange\");\r\n Swal.fire(\"Oops...\", \"11something went wrong\", \"error\");\r\n });\r\n }\r\n } else {\r\n this.PaymentType = \"Cash\";\r\n this.IsExtraFeeShow = false;\r\n this.IsconvFeeShow = false;\r\n this.IstotalFeeShow = false;\r\n this.IsapprovalShow = false;\r\n this.IscontactnoShow = false;\r\n this.IsdocShow = false;\r\n this.editabless = true;\r\n this.CaseFee = \"\";\r\n }\r\n }\r\n GetStageDetail() {\r\n //debugger;\r\n const p = this.selectedValuationValue;\r\n const valuationType = this.ISvaluation ? \"1\" : \"2\";\r\n let val: getStage = {\r\n Type: \"New\",\r\n valType: valuationType,\r\n };\r\n this.ngxService.start();\r\n ApiService.GetStages(val)\r\n .then((response: any) => {\r\n this.status = response.data.DATA;\r\n this.ngxService.stop();\r\n })\r\n .catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire(\r\n \"Oops...\",\r\n \"Something Went Wrong In Case Status Please Refresh Page!\",\r\n \"error\"\r\n );\r\n });\r\n }\r\n bindOldCaseValue() {\r\n console.log(\"editCaseDetail\", this.editCaseDetail);\r\n if (!this.selectedOldCase) {\r\n this.selectedBankValue = this.editCaseDetail.Bank_ID;\r\n this.selectedBranchValue = this.editCaseDetail.Branch_id;\r\n this.selectedBranchPersonValue = this.editCaseDetail.Branch_person;\r\n this.GetBranchDetails(this.editCaseDetail.Bank_ID, true);\r\n /* const BankText = this.BankDetail.find(val => val.AttributeID === this.selectedBankValue);\r\n this.BankText = BankText.AttributeName; */\r\n this.selectedStatus = this.editCaseDetail.Case_Status;\r\n this.selectedValuationValue = this.editCaseDetail.Valuation_typeID;\r\n this.GetBranchPersonDetails(\r\n this.editCaseDetail.Bank_ID,\r\n this.editCaseDetail.Branch_id,\r\n true\r\n );\r\n } else {\r\n this.oldCaseID = this.editCaseDetail.CaseID;\r\n }\r\n this.IsFeeShow = true;\r\n this.isEditCase = true;\r\n this.selectedState = this.editCaseDetail.StateID;\r\n this.selectedEngConv = this.editCaseDetail.EngConv;\r\n this.district = this.editCaseDetail.District;\r\n\r\n this.applicantName = this.editCaseDetail.Applicant_nameN;\r\n\r\n this.applicantFirst = this.editCaseDetail.ApplicanttitleN;\r\n\r\n this.PinCode = this.editCaseDetail.pin_code;\r\n this.BuildingName = this.editCaseDetail.Building_No;\r\n this.Streat = this.editCaseDetail.Street_Sector;\r\n this.Sector = this.editCaseDetail.SectorN;\r\n this.ContactPersonName = this.editCaseDetail.Contact_persion_Name;\r\n this.MOb1 = this.editCaseDetail.Contact_Persion_Mob1;\r\n this.MOb2 = this.editCaseDetail.Contact_Persion_Mob2;\r\n this.casetype = this.editCaseDetail.Type_Of_Case;\r\n this.landmark = this.editCaseDetail.Land_mark;\r\n this.FileNo = this.editCaseDetail.File_No;\r\n this.PropertyArea = this.editCaseDetail.Area;\r\n\r\n this.StatusRemark = this.editCaseDetail.Case_Status_Remarks;\r\n this.Conveyance = this.editCaseDetail.Conveyance;\r\n this.CaseFee = this.editCaseDetail.ActualFees;\r\n this.ExtraFee = this.editCaseDetail.ExtraFees;\r\n this.TotalFee = this.editCaseDetail.TotalFees;\r\n this.caseVertical = this.editCaseDetail.Case_vertical;\r\n this.ApprovalPerson = this.editCaseDetail.ApprovalPersonName;\r\n this.ContactNo = this.editCaseDetail.ApprovalContact;\r\n this.CaseRemark = this.editCaseDetail.Case_Creation_remark;\r\n this.propertyNo = this.editCaseDetail.PropertyValueN;\r\n this.propertyFirst = this.editCaseDetail.Property_titleN;\r\n this.Block = this.editCaseDetail.Block;\r\n if (this.selectedState) {\r\n const val: IGetCityLocation = {\r\n StateID: this.selectedState,\r\n CityID: \"\",\r\n LocID: \"\",\r\n GetType: \"City\",\r\n };\r\n this.getCityLocationOldCase(val);\r\n this.selectedCity = this.editCaseDetail.cityID;\r\n if (this.selectedCity) {\r\n const val: IGetCityLocation = {\r\n StateID: this.selectedState,\r\n CityID: this.selectedCity,\r\n LocID: \"\",\r\n GetType: \"Location\",\r\n };\r\n this.getCityLocationOldCase(val);\r\n this.selectedLocality = this.editCaseDetail.LocationID;\r\n this.locationChangeFUnctionOldCase();\r\n this.selectedSubLocation = this.editCaseDetail.SubLocalityId;\r\n // this.selectedEngvalue = this.editCaseDetail.Allocated_To;\r\n /* if (this.valEngineer) {\r\n const engVal = this.valEngineer.find(val => val.AttributeID === this.editCaseDetail.Allocated_To);\r\n this.AssignToText = engVal.AttributeName;\r\n } */\r\n\r\n // this.selectedSupvalue = this.editCaseDetail.Supervisor;\r\n /* if (this.valSup) {\r\n const supVal = this.valSup.find(val => val.AttributeID === this.selectedSupvalue);\r\n this.supToText = supVal.AttributeName;\r\n } */\r\n }\r\n this.valuationChange();\r\n this.bindDropdownOnEdit();\r\n }\r\n }\r\n GetEditOldCaseDetail(val: string) {\r\n this.ngxService.start();\r\n\r\n ApiService.getCaseBehalfOfID(val)\r\n .then((responce: any) => {\r\n this.ngxService.stop();\r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n this.editCaseDetail = responce.data;\r\n this.bindOldCaseValue();\r\n }\r\n }\r\n })\r\n .catch((e: any) => {\r\n this.ngxService.stop();\r\n console.log(\"Getting Error In GetEditCaseDetail\");\r\n Swal.fire(\"Oops...\", \"1Something went wrong!\", \"error\");\r\n });\r\n }\r\n GetEditCaseDetail() {\r\n this.ngxService.start();\r\n//debugger;\r\n ApiService.getCaseBehalfOfID(this.CaseID)\r\n .then((responce: any) => {\r\n this.ngxService.stop();\r\n //debugger;\r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n this.editCaseDetail = responce.data;\r\n this.bindPreviousValue();\r\n }\r\n }\r\n })\r\n .catch((e: any) => {\r\n this.ngxService.stop();\r\n console.log(\"Getting Error In GetEditCaseDetail\");\r\n Swal.fire(\"Oops...\", \"2Something went wrong!\", \"error\");\r\n });\r\n }\r\n _handleReaderLoaded(readerEvt) {\r\n var binaryString = readerEvt.target.result;\r\n this.filestring = btoa(binaryString); // Converting binary string data.\r\n }\r\n handleFileSelect(evt: any) {\r\n this.document = evt.target.files;\r\n }\r\n HandleSectionPlaneDoc(evt: any) {\r\n this.sectionPlaneDoc = evt.target.files;\r\n }\r\n HandleApprovelDoc(evt: any) {\r\n this.ApprovelDoc = evt.target.files;\r\n }\r\n\r\n fileToBase64(fileNew) {\r\n return new Promise((resolve) => {\r\n let file = fileNew;\r\n let reader = new FileReader();\r\n // Read file content on file loaded event\r\n reader.onload = function (event) {\r\n console.log(event.target);\r\n resolve(event.target);\r\n };\r\n // Convert data to base64\r\n reader.readAsDataURL(file);\r\n });\r\n }\r\n createCase() {\r\n //debugger;\r\n const loginID = localStorage.getItem(\"userID\");\r\n let selectedDocID = \"\";\r\n if (this.selectedValuationValue == \"2\") {\r\n this.selectedStatus = \"386\";\r\n }\r\n if (this.selectedItems.length > 0) {\r\n for (const data in this.selectedItems) {\r\n if (data) {\r\n selectedDocID = selectedDocID + \",\" + this.selectedItems[data].id;\r\n }\r\n }\r\n selectedDocID = selectedDocID.substr(1);\r\n }\r\n if (this.selectedBankValue == \"\") {\r\n document.getElementById(\"inptBank\").focus();\r\n Swal.fire(\"Oops...\", \"Please Select Bank From DropDown!\", \"warning\");\r\n } else if (this.selectedZoneValue == \"\") {\r\n document.getElementById(\"inptZone\").focus();\r\n Swal.fire(\"Oops...\", \"Please Select Zone!\", \"warning\");\r\n } else if (this.selectedBranchValue == \"\") {\r\n document.getElementById(\"inptBranch\").focus();\r\n Swal.fire(\"Oops...\", \"Please Select Branch From DropDown!\", \"warning\");\r\n } else if (this.selectedVerticalValue == \"\" || this.selectedVerticalValue == undefined) {\r\n document.getElementById(\"inptVertical\").focus();\r\n Swal.fire(\"Oops...\", \"Please Select Vertical!\", \"warning\");\r\n } else if (this.selectedBranchPersonValue == \"\") {\r\n document.getElementById(\"inptBranchPerson\").focus();\r\n Swal.fire(\"Oops...\", \"Please Select Branch Person!\", \"warning\");\r\n } else if (this.applicantName == \"\") {\r\n document.getElementById(\"applicantName\").focus();\r\n Swal.fire(\"Oops...\", \"Please Enter Applicant Name!\", \"warning\");\r\n } else if (this.selectedState == \"\" || this.selectedState == \"Select\") {\r\n document.getElementById(\"ddState\").focus();\r\n Swal.fire(\"Oops...\", \"Please Select State!\", \"warning\");\r\n } else if (this.selectedCity == \"\" || this.selectedCity == \"Select\") {\r\n document.getElementById(\"ddCity\").focus();\r\n Swal.fire(\"Oops...\", \"Please Select City!\", \"warning\");\r\n } else if (\r\n this.selectedLocality == \"\" ||\r\n this.selectedLocality == \"Select\"\r\n ) {\r\n document.getElementById(\"ddLocality\").focus();\r\n Swal.fire(\"Oops...\", \"Please Select Locality!\", \"warning\");\r\n } else if (\r\n this.selectedSubLocation == \"\" ||\r\n this.selectedSubLocation == \"Select\"\r\n ) {\r\n document.getElementById(\"ddSubLocation\").focus();\r\n Swal.fire(\r\n \"Oops...\",\r\n \"Please Select Sub Location/Building Name!\",\r\n \"warning\"\r\n );\r\n } else if (this.PinCode == \"\") {\r\n document.getElementById(\"txtPIn\").focus();\r\n Swal.fire(\"Oops...\", \"Please Enter Pin Code!\", \"warning\");\r\n } else if (this.propertyNo == \"\") {\r\n document.getElementById(\"inptPropertyNo\").focus();\r\n Swal.fire(\"Oops...\", \"Please Enter Property No.!\", \"warning\");\r\n } else if (this.ContactPersonName == \"\") {\r\n document.getElementById(\"txtContactPerson\").focus();\r\n Swal.fire(\"Oops...\", \"Please Enter Contact Person Name!\", \"warning\");\r\n } else if (\r\n this.CaseFee != this.TotalFee &&\r\n (this.selectedApprover == \"Select\" ||\r\n this.selectedApprover == \"undefined\" ||\r\n this.selectedApprover == \"0\") &&\r\n (this.ApprovelDoc == null || this.ApprovelDoc == \"undefined\") &&\r\n this.getApprovaldocurl == null\r\n ) {\r\n Swal.fire(\r\n \"Oops...\",\r\n \"Please Select Approval Person Name or Attach Approval Document!\",\r\n \"warning\"\r\n );\r\n } else if (\r\n this.session.getRoleID != \"7\" &&\r\n (this.casetype == \"\" || this.casetype == \"Select\")\r\n ) {\r\n document.getElementById(\"ddlCase\").focus();\r\n Swal.fire(\"Oops...\", \"Please Select Case Type!\", \"warning\");\r\n } else {\r\n if (this.session.getRoleID == \"7\") {\r\n this.casetype = \"\";\r\n }\r\n let p: boolean = true;\r\n\r\n if (this.propertyFirst == \"Select\") {\r\n this.propertyFirst = \"\";\r\n }\r\n if (this.feestype == \"\" || this.feestype == \"Select\") {\r\n document.getElementById(\"ddlCasefees\").focus();\r\n Swal.fire(\"Oops...\", \"Please Select Fees Type!\", \"warning\");\r\n p=false;\r\n }\r\n if ((this.selectedEngConv == \"\" || this.selectedEngConv == \"Select\") && this.selectedValuationValue==\"1\") {\r\n document.getElementById(\"engcon\").focus();\r\n Swal.fire(\"Oops...\", \"Please Select Engineer conveyance!\", \"warning\");\r\n p=false;\r\n }\r\n if (this.selectedValuationValue == \"1\") {\r\n if (this.selectedStatus == \"\" || this.selectedStatus == \"Select\") {\r\n document.getElementById(\"ddlCasestatus\").focus();\r\n p = false;\r\n Swal.fire(\"Oops...\", \"Please Select Case Status!\", \"warning\");\r\n }\r\n }\r\n if (this.selectedStatus == \"40\") {\r\n /* if (this.selectedEngvalue == \"\") {\r\n p = false;\r\n document.getElementById(\"inptAssignTo\").focus();\r\n Swal.fire('Oops...', 'Please Select Assign to from dropdown!', 'warning');\r\n } else if (this.selectedSupvalue == \"\") {\r\n p = false;\r\n document.getElementById(\"inptSupervisor\").focus();\r\n Swal.fire('Oops...', 'Please Select Supervisor from dropdown!', 'warning');\r\n } */\r\n }\r\n if (p) {\r\n let caseType = \"\";\r\n if (this.isEditCase) {\r\n caseType = \"Update\";\r\n } else {\r\n caseType = \"Insert\";\r\n }\r\n if (this.selectedOldCase) {\r\n caseType = \"Insert\";\r\n }\r\n if (this.session.getRoleID == \"7\") {\r\n caseType = \"Insert\";\r\n }\r\n if (this.radioSelected == \"\" || this.radioSelected == \"undefined\") {\r\n this.radioSelected = \"Billing\";\r\n }\r\n //debugger;\r\n if(this.DDladroffice==this.DDlROadroffice){\r\n this.IsOfficeChange=\"N\" ;\r\n this.DDladroffice=\"\"; \r\n }else\r\n { this.IsOfficeChange=\"Y\" ;\r\n \r\n }\r\n this.ngxService.start();\r\n let data: ICaseCreate = {\r\n CaseID: this.CaseID,\r\n Bank_id: this.selectedBankValue,\r\n branch_id: this.selectedBranchValue,\r\n person_id: this.selectedBranchPersonValue,\r\n ValuationTypeID: this.selectedValuationValue,\r\n ApplicantName_Name: this.applicantFirst + \" \" + this.applicantName,\r\n ApplicanttitleN: this.applicantFirst,\r\n Applicant_nameN: this.applicantName,\r\n Block: this.Block,\r\n BuildingNameN: \"\",\r\n StreatRoadN: this.Streat,\r\n SectorN: this.Sector,\r\n state_id: this.selectedState,\r\n distict: this.district,\r\n City_id: this.selectedCity,\r\n Locality_id: this.selectedLocality,\r\n BuildingNo: this.BuildingName,\r\n propertyno: this.propertyFirst + \" \" + this.propertyNo,\r\n Property_titleN: this.propertyFirst,\r\n PropertyValueN: this.propertyNo,\r\n Streat: this.Streat,\r\n landmark: this.landmark,\r\n SubLocality_id: this.selectedSubLocation,\r\n pincode: this.PinCode,\r\n ContactPersonName: this.ContactPersonName,\r\n Mob1: this.MOb1,\r\n Mob2: this.MOb2,\r\n vertical: this.caseVertical,\r\n casetype: this.casetype,\r\n Assignto: this.selectedEngvalue,\r\n Case_statusID: this.selectedStatus,\r\n supervisorID: this.selectedSupvalue,\r\n StatusRemark: this.StatusRemark,\r\n FileNo: this.FileNo,\r\n Area: this.PropertyArea,\r\n CaseRemark: this.CaseRemark,\r\n Document_id: selectedDocID,\r\n LoginID: loginID,\r\n OldCaseID: this.oldCaseID,\r\n ActualFees: this.CaseFee,\r\n ExtraFees: this.ExtraFee,\r\n TotalFees: this.TotalFee,\r\n Conveyance: this.Conveyance,\r\n ApprovalPersonName: this.selectedApprover,\r\n ApprovalContact: this.ContactNo,\r\n ApprovalDocPath: \"0\",\r\n AssignType: \"D\",\r\n usage: this.DDlUsage,\r\n propertytype: this.DDlPropertyType,\r\n Operation: caseType,\r\n PaymentType: this.radioSelected,\r\n Zone_id: this.selectedZoneValue,\r\n Vertical_id: this.selectedVerticalValue,\r\n ENgConv: this.selectedEngConv,\r\n Approval_Remarks: this.ApprovalRemarks,\r\n FeesType: this.feestype,\r\n ExtraEngConv: this.ConAmount,\r\n ExtraEngConvRemark: this.ConRemark,\r\n IsOtherOffice:this.IsOfficeChange,\r\n OtherOffice:this.DDladroffice,\r\n adroitbranch:this.DDlROadroffice,\r\n };\r\n this.caseCreate(data);\r\n }\r\n }\r\n }\r\n caseCreate(data: ICaseCreate) {\r\n ApiService.CreateCase(data)\r\n .then((responce: any) => {\r\n //debugger;\r\n this.ngxService.stop();\r\n if (responce.status === 200) {\r\n if (this.isEditCase) {\r\n if (this.ApprovelDoc && this.ApprovelDoc.length) {\r\n this.updateDocument(this.CaseID);\r\n }\r\n Swal.fire(\"Thanks...\", \"Case Updated Successfully\", \"success\");\r\n this.router.navigate([\"Home\"]);\r\n } else {\r\n if (responce.data.case_id) {\r\n if (\r\n (this.document && this.document.length) ||\r\n (this.sectionPlaneDoc && this.sectionPlaneDoc.length) ||\r\n (this.ApprovelDoc && this.ApprovelDoc.length)\r\n ) {\r\n this.updateDocument(responce.data.case_id);\r\n } else {\r\n Swal.fire(\"Thanks...\", \"Case Created Successfully\", \"success\");\r\n this.router.navigate([\"Home\"]);\r\n }\r\n }\r\n }\r\n }\r\n })\r\n .catch((e: any) => {\r\n this.ngxService.stop();\r\n console.log(\"Getting Error In caseCreate\", e);\r\n Swal.fire(\"Oops...\", \"3Something went wrong!\", \"error\");\r\n });\r\n }\r\n updateDocument(logID) {\r\n //debugger;\r\n if (logID) {\r\n if (this.sectionPlaneDoc || this.document || this.ApprovelDoc) {\r\n let formData = new FormData();\r\n if (this.document) {\r\n for (let val of this.document) {\r\n formData.append(\"CaseID\", logID);\r\n formData.append(\"imgname\", val.name);\r\n formData.append(\"files\", val);\r\n }\r\n }\r\n if (this.sectionPlaneDoc) {\r\n for (let val of this.sectionPlaneDoc) {\r\n formData.append(\"CaseID\", logID);\r\n formData.append(\"imgname\", val.name);\r\n formData.append(\"files\", val);\r\n }\r\n // formData.append(\"CaseID\", this.logID);\r\n // formData.append(\"imgname\", this.sanctionPlanDoc.name);\r\n // formData.append(\"files\", this.sanctionPlanDoc);\r\n }\r\n if (this.ApprovelDoc) {\r\n for (let val of this.ApprovelDoc) {\r\n formData.append(\"CaseID\", logID);\r\n formData.append(\"imgname\", val.name);\r\n formData.append(\"files\", val);\r\n formData.append(\"UserID\", this.session.UserID);\r\n }\r\n }\r\n if (this.ApprovelDoc) {\r\n this.ngxService.start();\r\n ApiService.UpdateApprovalDocument(formData)\r\n .then((responce: any) => {\r\n if (responce.status === 200) {\r\n // this.IsEditStatus = false;\r\n this.sectionPlaneDoc = undefined;\r\n this.document = undefined;\r\n if (this.isEditCase)\r\n Swal.fire(\r\n \"Thanks...\",\r\n \"Case Updated Successfully\",\r\n \"success\"\r\n );\r\n else\r\n Swal.fire(\r\n \"Thanks...\",\r\n \"Case Created Successfully\",\r\n \"success\"\r\n );\r\n this.router.navigate([\"Home\"]);\r\n }\r\n this.ngxService.stop();\r\n })\r\n .catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire(\r\n \"Oops...\",\r\n \"Something went wrong in document update!\",\r\n \"error\"\r\n );\r\n });\r\n } else {\r\n this.ngxService.start();\r\n ApiService.UpdateDocument(formData)\r\n .then((responce: any) => {\r\n if (responce.status === 200) {\r\n // this.IsEditStatus = false;\r\n this.sectionPlaneDoc = undefined;\r\n this.document = undefined;\r\n Swal.fire(\"Thanks...\", \"Case Created Successfully\", \"success\");\r\n this.router.navigate([\"Home\"]);\r\n }\r\n this.ngxService.stop();\r\n })\r\n .catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire(\r\n \"Oops...\",\r\n \"Something went wrong in document update!\",\r\n \"error\"\r\n );\r\n });\r\n }\r\n } else {\r\n Swal.fire(\"Oops...\", \"Please select atleast one document!\", \"warning\");\r\n }\r\n }\r\n }\r\n /* updateDocument(logID) {\r\n if (logID) {\r\n let formData = new FormData();\r\n formData.append(\"CaseID\", logID);\r\n formData.append(\"DocumentLength\", this.document.length);\r\n if (this.document.length) {\r\n let p: number = 0;\r\n for (let val of this.document) {\r\n formData.append(\"Document\" + p + \"\", val);\r\n p = p + 1;\r\n }\r\n } if (this.sectionPlaneDoc.length) {\r\n for (let val of this.sectionPlaneDoc) {\r\n formData.append(\"sectionPlaneDoc\", val);\r\n }\r\n } if (this.ApprovelDoc.length) {\r\n for (let val of this.ApprovelDoc) {\r\n formData.append(\"ApprovelDoc\", val);\r\n }\r\n }\r\n console.log('Data', formData);\r\n this.ngxService.start();\r\n ApiService.UpdateDocument(formData).then((responce: any) => {\r\n if (responce.status === 200) {\r\n Swal.fire('Thanks...', 'Case Created Successfully', 'success');\r\n this.router.navigate([\"Home\"]);\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong in document update please try again!', 'error');\r\n });\r\n }\r\n } */\r\n onCaseChange(e: any) {\r\n this.radioSelected = \"Billing\";\r\n e.target.value;\r\n if (e.target.value == \"Select\" || e.target.value == \"\") {\r\n Swal.fire(\"Oops...\", \"Please select Fees type!\", \"warning\");\r\n this.IsExtraFeeShow = false;\r\n this.IsconvFeeShow = false;\r\n this.IstotalFeeShow = false;\r\n this.IsapprovalShow = false;\r\n this.IscontactnoShow = false;\r\n this.IsFeeShow = false;\r\n this.IsdocShow = false;\r\n this.IsFeecase = false;\r\n } else {\r\n if (this.selectedBankValue && this.feestype && this.session.UserID) {\r\n const val: IcaseFee = {\r\n CaseTypeID: this.feestype,\r\n LoginID: this.session.UserID,\r\n BankID: this.selectedBankValue,\r\n ZoneID: this.selectedZoneValue,\r\n BranchID: this.selectedBranchValue,\r\n VerticalID: this.selectedVerticalValue,\r\n };\r\n this.ngxService.start();\r\n ApiService.CaseFee(val)\r\n .then((responce: any) => {\r\n this.ngxService.stop();\r\n if (responce.status === 200) {\r\n if (responce.data != \"\") {\r\n if (this.session.getRoleID == \"22\") {\r\n this.IsFeeShow = false;\r\n this.IsExtraFeeShow = false;\r\n this.IsconvFeeShow = false;\r\n this.IstotalFeeShow = false;\r\n this.IsapprovalShow = false;\r\n this.IscontactnoShow = false;\r\n this.IsdocShow = false;\r\n this.IsFeecase = false;\r\n this.CaseFee = responce.data;\r\n this.TotalFee = (\r\n +this.Conveyance +\r\n +this.CaseFee +\r\n +this.ExtraFee\r\n ).toString();\r\n } else {\r\n this.IsFeeShow = true;\r\n this.IsExtraFeeShow = true;\r\n this.IsconvFeeShow = true;\r\n this.IstotalFeeShow = true;\r\n this.IsapprovalShow = true;\r\n this.IscontactnoShow = true;\r\n this.IsdocShow = true;\r\n this.IsFeecase = true;\r\n this.CaseFee = responce.data;\r\n this.TotalFee = (\r\n +this.Conveyance +\r\n +this.CaseFee +\r\n +this.ExtraFee\r\n ).toString();\r\n }\r\n } else {\r\n // this.router.navigate([\"Home\"]);\r\n Swal.fire(\r\n \"Oops...\",\r\n \"Before Create Case Update Bank Case Fees!\",\r\n \"warning\"\r\n );\r\n this.casetype = \"Select\";\r\n this.IsExtraFeeShow = false;\r\n this.IsconvFeeShow = false;\r\n this.IstotalFeeShow = false;\r\n this.IsapprovalShow = false;\r\n this.IscontactnoShow = false;\r\n this.IsFeeShow = false;\r\n this.IsdocShow = false;\r\n this.IsFeecase = false;\r\n }\r\n }\r\n })\r\n .catch((e: any) => {\r\n this.ngxService.stop();\r\n console.log(\"Getting Error in onCaseChange\");\r\n Swal.fire(\"Oops...\", \"4something went wrong\", \"error\");\r\n });\r\n }\r\n }\r\n }\r\n\r\n onStateChange(e: any) {\r\n const p = e.target.value;\r\n const sk = this.selectedState;\r\n if (this.selectedState) {\r\n const val: IGetCityLocation = {\r\n StateID: this.selectedState,\r\n CityID: \"\",\r\n LocID: \"\",\r\n GetType: \"City\",\r\n };\r\n\r\n this.getCityLocation(val);\r\n }\r\n }\r\n onROOfficeChange(e: any) {\r\n //debugger;\r\n if( this.session.getRoleID==\"24\"){\r\n const p = e.target.value;\r\n const sk = this.selectedState\r\n \r\n const valEng: IGetCityLocation = {\r\n StateID: this.DDlROadroffice,\r\n CityID: this.selectedCity,\r\n LocID: this.selectedLocality,\r\n GetType: \"OfficeEngineer\",\r\n } \r\n this.getCityLocation(valEng);\r\n const valSup: IGetCityLocation = {\r\n StateID: this.session.UserID,\r\n CityID: this.selectedCity,\r\n LocID: this.session.getRoleID,\r\n GetType: \"ReportAnalysis\",\r\n }; \r\n this.getCityLocation(valSup);\r\n if(this.DDladroffice==\"\"){\r\n this.DDladroffice=this.DDlROadroffice;\r\n }\r\n else if(this.DDladroffice==this.DDlROadroffice){\r\n this.IsOfficeChange=\"N\";\r\n this.isdisable=false;\r\n }else\r\n { this.IsOfficeChange=\"Y\";\r\n this.isdisable=true;\r\n }\r\n \r\n }else{\r\n const p = e.target.value;\r\n const sk = this.selectedState\r\n \r\n const valEng: IGetCityLocation = {\r\n StateID: this.DDladroffice,\r\n CityID: this.selectedCity,\r\n LocID: this.selectedLocality,\r\n GetType: \"OfficeEngineer\",\r\n } \r\n this.getCityLocation(valEng);\r\n if(this.DDladroffice==localStorage.getItem('AdroitBranch')){\r\n this.IsOfficeChange=\"N\";\r\n this.isdisable=false;\r\n }else\r\n { this.IsOfficeChange=\"Y\";\r\n this.isdisable=true;\r\n }\r\n }\r\n }\r\n onOfficeChange(e: any) {\r\n //debugger;\r\n if( this.session.getRoleID==\"24\"){\r\n const p = e.target.value;\r\n const sk = this.selectedState\r\n \r\n const valEng: IGetCityLocation = {\r\n StateID: this.DDladroffice,\r\n CityID: this.selectedCity,\r\n LocID: this.selectedLocality,\r\n GetType: \"OfficeEngineer\",\r\n } \r\n this.getCityLocation(valEng);\r\n const valSup: IGetCityLocation = {\r\n StateID: this.session.UserID,\r\n CityID: this.selectedCity,\r\n LocID: this.session.getRoleID,\r\n GetType: \"ReportAnalysis\",\r\n }; \r\n this.getCityLocation(valSup);\r\n \r\n if(this.DDladroffice==this.DDlROadroffice){\r\n this.IsOfficeChange=\"N\";\r\n this.isdisable=false;\r\n }else\r\n { this.IsOfficeChange=\"Y\";\r\n this.isdisable=true;\r\n }\r\n \r\n }else{\r\n const p = e.target.value;\r\n const sk = this.selectedState\r\n \r\n const valEng: IGetCityLocation = {\r\n StateID: this.DDladroffice,\r\n CityID: this.selectedCity,\r\n LocID: this.selectedLocality,\r\n GetType: \"OfficeEngineer\",\r\n } \r\n this.getCityLocation(valEng);\r\n if(this.DDladroffice==localStorage.getItem('AdroitBranch')){\r\n this.IsOfficeChange=\"N\";\r\n this.isdisable=false;\r\n }else\r\n { this.IsOfficeChange=\"Y\";\r\n this.isdisable=true;\r\n }\r\n }\r\n }\r\n onCityChange(e: any) {\r\n const p = e.target.value;\r\n if (this.selectedCity) {\r\n const val: IGetCityLocation = {\r\n StateID: this.selectedState,\r\n CityID: this.selectedCity,\r\n LocID: \"\",\r\n GetType: \"Location\",\r\n };\r\n this.getCityLocation(val);\r\n }\r\n }\r\n onLocationChange(e) {\r\n const p = e.target.value;\r\n this.locationChangeFUnction();\r\n }\r\n locationChangeFUnction() {\r\n if (\r\n this.session.getAdroitOffice == \"1\" ||\r\n this.session.getAdroitOffice == \"39\"\r\n ) \r\n {\r\n this.ddlrole = \"ReportAnalysis\";\r\n } else {\r\n this.ddlrole = \"ReportAnalysis\";\r\n }\r\n if (this.selectedLocality) {\r\n const val: IGetCityLocation = {\r\n StateID: this.selectedState,\r\n CityID: this.selectedCity,\r\n LocID: this.selectedLocality,\r\n GetType: \"SubLocation\",\r\n };\r\n // const valEng: IGetCityLocation = {\r\n // StateID: this.session.UserID,\r\n // CityID: this.selectedCity,\r\n // LocID: this.selectedLocality,\r\n // GetType: \"Engineer\",\r\n // }\r\n // const valEng: IGetCityLocation = {\r\n // StateID: localStorage.getItem('AdroitOffice'),\r\n // CityID: this.selectedCity,\r\n // LocID: this.selectedLocality,\r\n // GetType: \"OfficeEngineer\",\r\n // }\r\n // this.getCityLocation(valEng);\r\n const valSup: IGetCityLocation = {\r\n StateID: this.session.UserID,\r\n CityID: this.selectedCity,\r\n LocID: this.selectedLocality,\r\n GetType: this.ddlrole,\r\n };\r\n this.getCityLocation(val);\r\n \r\n this.getCityLocation(valSup);\r\n }\r\n }\r\n locationChangeFUnctionOldCase() {\r\n if (\r\n this.session.getAdroitOffice == \"1\" ||\r\n this.session.getAdroitOffice == \"39\"\r\n ) {\r\n this.ddlrole = \"ReportAnalysis\";\r\n } else {\r\n this.ddlrole = \"ReportAnalysis\";\r\n }\r\n if (this.selectedLocality) {\r\n const val: IGetCityLocation = {\r\n StateID: this.selectedState,\r\n CityID: this.selectedCity,\r\n LocID: this.selectedLocality,\r\n GetType: \"SubLocation\",\r\n };\r\n const valEng: IGetCityLocation = {\r\n StateID: this.session.UserID,\r\n CityID: this.selectedCity,\r\n LocID: this.selectedLocality,\r\n GetType: \"Engineer\",\r\n };\r\n const valSup: IGetCityLocation = {\r\n StateID: this.session.UserID,\r\n CityID: this.selectedCity,\r\n LocID: this.selectedLocality,\r\n GetType: this.ddlrole,\r\n };\r\n this.getCityLocationOldCase(val);\r\n this.getCityLocationOldCase(valEng);\r\n this.getCityLocationOldCase(valSup);\r\n }\r\n }\r\n onSubLocationChange(e) {\r\n const valPinCode: IGetCityLocation = {\r\n StateID: this.selectedState,\r\n CityID: this.selectedCity,\r\n LocID: this.selectedLocality,\r\n GetType: \"pincode\",\r\n };\r\n this.getCityLocation(valPinCode);\r\n }\r\n onApproverChange(e: any) {\r\n //debugger;\r\n const newVal = this.getSelectedApproverByName(e.target.value);\r\n const val = newVal.Emp_name;\r\n this.selectedApprover = val;\r\n }\r\n onBankChange(e: any) {\r\n this.BranchText = \"\";\r\n this.ZoneText = \"\";\r\n this.BranchPersonText = \"\";\r\n this.VerticalText = \"\";\r\n const newVal = this.getSelectedBankByName(e.target.value);\r\n const val = newVal.AttributeID;\r\n this.selectedBankValue = val;\r\n\r\n this.selectedValuationValue = \"1\";\r\n // this.selectedApprover=\"Select\";\r\n if (val) {\r\n this.GetZoneDetails(val, false);\r\n this.GetProductDetails(val, false);\r\n // this.GetFeesTypeDetails(val,false);\r\n this.GetApproverDetails(val, false);\r\n }\r\n this.getValuationDetailsDynamically(newVal);\r\n }\r\n getValuationDetailsDynamically(data: any) {\r\n const osv = data.OSV;\r\n const ftv = data.FTV;\r\n if (osv == \"T\") {\r\n this.selectedValuationValue = \"1\";\r\n }\r\n if (ftv == \"T\") {\r\n this.selectedValuationValue = \"2\";\r\n }\r\n this.valuationChange();\r\n }\r\n onZoneChange(e: any) {\r\n this.BranchText = \"\";\r\n //this.ZoneText = \"\";\r\n this.BranchPersonText = \"\";\r\n this.VerticalText = \"\";\r\n const newVal = this.getSelectedZoneByName(e.target.value);\r\n const val = newVal.AttributeID;\r\n this.selectedZoneValue = val;\r\n // this.selectedValuationValue = \"1\";\r\n if (val) {\r\n this.GetBranchDetails(val, false);\r\n }\r\n //\r\n }\r\n\r\n onBranchChange(e) {\r\n const p = e.target.value;\r\n this.BranchPersonText = \"\";\r\n this.VerticalText = \"\";\r\n const BranchVal = this.getSelectedBranchByName(e.target.value);\r\n const BankID = this.selectedBankValue;\r\n this.selectedBranchValue = BranchVal.AttributeID;\r\n if (this.selectedBranchValue) {\r\n this.BranchPersonText = \"\";\r\n this.GetVerticalDetails(BankID, this.selectedBranchValue, false);\r\n }\r\n }\r\n onBranchPersonChange(e) {\r\n const BranchPersonVal = this.getBranchPersoneValue(e.target.value);\r\n this.selectedBranchPersonValue = BranchPersonVal.AttributeID;\r\n }\r\n\r\n onVerticalChange(e) {\r\n //debugger;\r\n const p = e.target.value;\r\n this.BranchPersonText = \"\";\r\n this.selectedVerticalValue = this.getSelectedVerticalByName(e.target.value);\r\n const BankID = this.getSelectedVerticalByName(e.target.value);\r\n // this.selectedBranchValue = BranchVal.AttributeID;\r\n if (this.selectedVerticalValue) {\r\n this.BranchPersonText = \"\";\r\n this.GetBranchPersonDetails(\r\n BankID.AttributeID,\r\n this.selectedVerticalValue.AttributeID,\r\n false\r\n );\r\n this.GetFeesTypeDetails(BankID.AttributeID, true);\r\n }\r\n }\r\n\r\n onEngChange(e) {\r\n const Val = this.getEngValue(e.target.value);\r\n if (e.target.value == \"\") {\r\n this.selectedEngvalue = \"0\";\r\n } else {\r\n this.selectedEngvalue = Val.AttributeID;\r\n }\r\n }\r\n onSupChange(e) {\r\n const Val = this.getSupValue(e.target.value);\r\n if (e.target.value == \"\") {\r\n this.selectedSupvalue = \"0\";\r\n } else {\r\n this.selectedSupvalue = Val.AttributeID;\r\n }\r\n }\r\n getEngValue(selectedName: string) {\r\n return this.valEngineer.find((val) => val.AttributeName === selectedName);\r\n }\r\n getSupValue(selectedName: string) {\r\n return this.valSup.find((val) => val.AttributeName === selectedName);\r\n }\r\n getBranchPersoneValue(selectedName: string) {\r\n return this.BranchPersonDetail.find(\r\n (val) => val.AttributeName === selectedName\r\n );\r\n }\r\n getSelectedBankByName(selectedName: string) {\r\n return this.BankDetail.find((val) => val.AttributeName === selectedName);\r\n }\r\n getSelectedApproverMobile(selectedName: string) {\r\n return this.LoadApprover.find((val) => val.Emp_name === selectedName);\r\n }\r\n getSelectedZoneByName(selectedName: string) {\r\n return this.ZoneDetail.find((val) => val.AttributeName === selectedName);\r\n }\r\n getSelectedApproverByName(selectedName: string) {\r\n return this.LoadApprover.find((val) => val.Emp_name === selectedName);\r\n }\r\n getSelectedBranchByName(selectedName: string) {\r\n return this.BranchDetail.find((val) => val.AttributeName === selectedName);\r\n }\r\n getSelectedVerticalByName(selectedName: string) {\r\n return this.VerticalDetail.find(\r\n (val) => val.AttributeName === selectedName\r\n );\r\n }\r\n getCityLocation(val: IGetCityLocation) {\r\n\r\n this.ngxService.start();\r\n ApiService.GetCityLocation(val).then((responce: any) => {\r\n this.ngxService.stop();\r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n if (val.GetType === \"City\") {\r\n this.CityVal = responce.data.DATA;\r\n }\r\n else if (val.GetType === \"Location\") {\r\n this.LocationVal = responce.data.DATA;\r\n }\r\n else if (val.GetType === \"AdroitOffice\") {\r\n this.DDladrofficedata = responce.data.DATA;\r\n this.DDladroffice= localStorage.getItem('AdroitBranch');\r\n }\r\n else if ( val.GetType === \"ROOFFICE\") {\r\n this.DDlROadrofficedata = responce.data.DATA;\r\n if( this.session.getRoleID==\"24\")\r\n this.DDlROadroffice=\"Select\";\r\n else\r\n this.DDlROadroffice= localStorage.getItem('AdroitBranch');\r\n }\r\n else if (val.GetType === \"SubLocation\") {\r\n this.SubLocationVal = responce.data.DATA;\r\n }\r\n else if (val.GetType === \"pincode\") {\r\n if (responce.data.DATA) {\r\n console.log(\"Getting Error in pinCode\", responce.data.DATA[0]);\r\n this.PinCode = responce.data.DATA[0].AttributeName;\r\n }\r\n console.log(this.PinCode);\r\n }\r\n else if (val.GetType === \"Engineer\" || val.GetType === \"OfficeEngineer\") {\r\n this.valEngineer = responce.data.DATA;\r\n console.log(\"Getting Error in engVal\");\r\n if (this.isEditCase) {\r\n const engVal = this.valEngineer.find(val => val.AttributeID === this.editCaseDetail.Allocated_To);\r\n console.log(\"Getting Error in engVal\", engVal);\r\n if (engVal) {\r\n this.AssignToText = engVal.AttributeName;\r\n }\r\n }\r\n }\r\n else if (val.GetType === \"Sup\"||val.GetType === \"ReportAnalysis\") {\r\n this.valSup = responce.data.DATA;\r\n console.log(\"Getting Error in supVal1\");\r\n if (this.isEditCase) {\r\n const supVal = this.valSup.find(val => val.AttributeID === this.selectedSupvalue);\r\n console.log(\"Getting Error in supVal\", supVal);\r\n if (supVal) {\r\n this.supToText = supVal.AttributeName;\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n console.log(\"Getting Error in getCityLocation\");\r\n // Swal.fire('Oops...', '5something went wrong'+val.GetType, 'error');\r\n });\r\n }\r\n getEngConvence(val: IGetCityLocation) {\r\n //this.session.getAdroitOffice\r\n this.ngxService.start();\r\n ApiService.GetCityLocation(val)\r\n .then((responce: any) => {\r\n this.ngxService.stop();\r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n this.EngConv = responce.data.DATA;\r\n console.log(\"EngConv\", this.EngConv);\r\n\r\n // this.selectedEngConv = \"Select Convence\";\r\n }\r\n }\r\n })\r\n .catch((e: any) => {\r\n this.ngxService.stop();\r\n console.log(\"Getting Error in getCityLocation\");\r\n Swal.fire(\"Oops...\", \"6something went wrong\", \"error\");\r\n });\r\n }\r\n getCityLocationOldCase(val: IGetCityLocation) {\r\n this.ngxService.start();\r\n ApiService.GetCityLocation(val)\r\n .then((responce: any) => {\r\n this.ngxService.stop();\r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n if (val.GetType === \"City\") {\r\n this.CityVal = responce.data.DATA;\r\n } else if (val.GetType === \"Location\") {\r\n this.LocationVal = responce.data.DATA;\r\n } else if (val.GetType === \"SubLocation\") {\r\n this.SubLocationVal = responce.data.DATA;\r\n } else if (val.GetType === \"pincode\") {\r\n if (responce.data.DATA) {\r\n console.log(\"Getting Error in pinCode\", responce.data.DATA[0]);\r\n this.PinCode = responce.data.DATA[0].AttributeName;\r\n }\r\n console.log(this.PinCode);\r\n } else if (val.GetType === \"Engineer\") {\r\n this.valEngineer = responce.data.DATA;\r\n console.log(\"Getting Error in engVal\");\r\n } else if (\r\n val.GetType === \"Sup\" ||\r\n val.GetType === \"ReportAnalysis\"\r\n ) {\r\n this.valSup = responce.data.DATA;\r\n console.log(\"Getting Error in supVal1\");\r\n }\r\n }\r\n }\r\n })\r\n .catch((e: any) => {\r\n this.ngxService.stop();\r\n console.log(\"Getting Error in getCityLocation\");\r\n Swal.fire(\"Oops...\", \"6something went wrong\", \"error\");\r\n });\r\n }\r\n getState(val: string) {\r\n this.ngxService.start();\r\n ApiService.GetMaster(val)\r\n .then((responce: any) => {\r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n if (val === \"State\") {\r\n this.state = responce.data.DATA;\r\n }\r\n if (val === \"Documents\") {\r\n if (responce.data.DATA) {\r\n if (responce.data.DATA.length > 0) {\r\n for (const value of responce.data.DATA) {\r\n let docVal = {\r\n id: Number(value.AttributeID),\r\n text: value.AttributeName,\r\n };\r\n this.dropdownList1.push(docVal);\r\n }\r\n this.dropdownList = this.dropdownList1;\r\n if (this.isEditCase) {\r\n console.log(\"this is edit case\");\r\n }\r\n }\r\n }\r\n }\r\n if (val === \"CaseType\") {\r\n this.LoadCaseType = responce.data.DATA;\r\n }\r\n }\r\n }\r\n this.ngxService.stop();\r\n })\r\n .catch((e: any) => {\r\n this.ngxService.stop();\r\n console.log(\"Getting Error in getState\");\r\n Swal.fire(\"Oops...\", \"7something went wrong\", \"error\");\r\n });\r\n }\r\n bindDropdownOnEdit() {\r\n try {\r\n setTimeout(() => {\r\n if (this.editCaseDetail.Documents) {\r\n const item = this.editCaseDetail.Documents;\r\n const valArray = item.split(\",\");\r\n for (const valItem in valArray) {\r\n const supVal = this.dropdownList.find(\r\n (value) => value.id === +valArray[valItem]\r\n );\r\n if (supVal) {\r\n this.newSelectedItems.push(supVal);\r\n }\r\n }\r\n this.selectedItems = this.newSelectedItems;\r\n }\r\n }, 3000);\r\n } catch (error) {\r\n console.log(\"Error IS \", error);\r\n }\r\n }\r\n GetBankDetails() {\r\n let p: IBankDetail = {\r\n userid: this.session.UserID,\r\n BankID: \"\",\r\n BranchID: \"\",\r\n RoleID: this.session.getRoleID,\r\n GetType: \"Bank\",\r\n };\r\n this.ngxService.start();\r\n ApiService.GetBankDetails(p)\r\n .then((responce: any) => {\r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n this.BankDetail = responce.data.DATA;\r\n }\r\n }\r\n this.ngxService.stop();\r\n })\r\n .catch((e: any) => {\r\n this.ngxService.stop();\r\n console.log(\"Getting Error In GetBankDetails\");\r\n Swal.fire(\"Oops...\", \"something went wrong\", \"error\");\r\n });\r\n }\r\n GetBankDetailsEditCase(isEdit: boolean) {\r\n let p: IBankDetail = {\r\n userid: this.session.UserID,\r\n BankID: \"\",\r\n BranchID: \"\",\r\n RoleID: this.session.getRoleID,\r\n GetType: \"Bank\",\r\n };\r\n this.ngxService.start();\r\n ApiService.GetBankDetails(p)\r\n .then((responce: any) => {\r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n this.BankDetail = responce.data.DATA;\r\n if (isEdit && !this.selectedOldCase) {\r\n const BankText = this.BankDetail.find(\r\n (val) => val.AttributeID === this.editCaseDetail.Bank_ID\r\n );\r\n this.BankText = BankText.AttributeName;\r\n }\r\n }\r\n }\r\n this.ngxService.stop();\r\n })\r\n .catch((e: any) => {\r\n this.ngxService.stop();\r\n console.log(\"Getting Error In GetBankDetails\");\r\n Swal.fire(\"Oops...\", \"8something went wrong\", \"error\");\r\n });\r\n }\r\n GetUsageDataNew() {\r\n this.propertyTypeNEw = \"Select\";\r\n this.GetUsageData(\"Usage\");\r\n }\r\n GetUsageDataNewpro() {\r\n this.propertyTypeNEw = \"Select\";\r\n this.GetUsageData(\"propertytype\");\r\n }\r\n GetUsageData(e: any) {\r\n this.ngxService.start();\r\n let val: IUsage;\r\n let callAPI: boolean = true;\r\n if (e == \"Usage\") {\r\n val = {\r\n CaseID: \" \",\r\n type: \"Usage\",\r\n ID: \"\",\r\n };\r\n } else {\r\n if (this.DDlUsage == \"Select\") {\r\n callAPI = false;\r\n }\r\n val = {\r\n CaseID: \"\",\r\n type: \"propertytype\",\r\n ID: this.DDlUsage,\r\n };\r\n }\r\n if (callAPI) {\r\n ApiService.GetUsageData(val)\r\n .then((responce: any) => {\r\n if (responce.status == 200) {\r\n //debugger;\r\n if (responce.data) {\r\n if (e == \"Usage\") {\r\n this.DDLUsageData = responce.data.MasterData;\r\n } else {\r\n this.DDLPropertyData = responce.data.MasterData;\r\n let p = this.propertyTypeNEw;\r\n this.DDlPropertyType = this.propertyTypeNEw;\r\n this.showMultidropDown();\r\n }\r\n }\r\n }\r\n this.ngxService.stop();\r\n })\r\n .catch((e: any) => {\r\n this.ngxService.stop();\r\n // Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n console.log(\"Error In GetUsageData\", JSON.stringify(val));\r\n });\r\n }\r\n }\r\n showMultidropDown() {\r\n if (this.DDlUsage == \"5\") {\r\n $(\"#ddlPropertyType\").attr(\"multiple\", \"multiple\");\r\n $(\"#ddlPropertyType\").attr(\r\n \"title\",\r\n \"You can select multiple value using CTRL+value\"\r\n );\r\n } else {\r\n $(\"#ddlPropertyType\").removeAttr(\"multiple\");\r\n $(\"#ddlPropertyType\").removeAttr(\"title\");\r\n }\r\n if (this.propertyTypeNEw != \"Select\") {\r\n var dataarray = this.propertyTypeNEw.split(\",\");\r\n $(\"#ddlPropertyType\").val(dataarray);\r\n $(\"#ddlPropertyType\").multiselect(\"refresh\");\r\n }\r\n }\r\n GetVerticalDetails(bankID: string, BranchID: string, isEdit: boolean) {\r\n let p: IBankDetail = {\r\n userid: this.session.UserID,\r\n BankID: BranchID,\r\n BranchID: BranchID,\r\n RoleID: this.session.getRoleID,\r\n GetType: \"Vertical\",\r\n };\r\n this.ngxService.start();\r\n\r\n ApiService.GetBankDetails(p)\r\n .then((responce: any) => {\r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n this.VerticalDetail = responce.data.DATA;\r\n if (isEdit && !this.selectedOldCase) {\r\n const BankText = this.VerticalDetail.find(\r\n (val) => val.AttributeID === this.editCaseDetail.Vertical_id\r\n );\r\n this.VerticalText = BankText.AttributeName;\r\n }\r\n }\r\n }\r\n this.ngxService.stop();\r\n })\r\n .catch((e: any) => {\r\n this.ngxService.stop();\r\n console.log(\"Getting Error In GetVerticalDetails\");\r\n Swal.fire(\"Oops...\", \"9something went wrong\", \"error\");\r\n });\r\n }\r\n Getvert(BankID: string, isEdit: boolean) {\r\n let p: IBankDetail = {\r\n userid: this.session.UserID,\r\n BankID: BankID,\r\n BranchID: \"\",\r\n RoleID: this.session.getRoleID,\r\n GetType: \"Branch\",\r\n };\r\n //this.ngxService.start();\r\n\r\n ApiService.GetBankDetails(p)\r\n .then((responce: any) => {\r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n this.BranchDetail = responce.data.DATA;\r\n if (isEdit) {\r\n const branchText = this.BranchDetail.find(\r\n (val) => val.AttributeID === this.selectedBranchValue\r\n );\r\n this.BranchPersonText = branchText.AttributeName;\r\n }\r\n }\r\n }\r\n // this.ngxService.stop();\r\n })\r\n .catch((e: any) => {\r\n this.ngxService.stop();\r\n console.log(\"Get Error In GetBranchDetails\");\r\n Swal.fire(\"Oops...\", \"Get Error In GetBranchDetails\", \"error\");\r\n });\r\n }\r\n\r\n GetBranchPersonDetails(bankID: string, BranchID: string, isEdit: boolean) {\r\n //debugger;\r\n if(this.selectedValuationValue==\"1\")\r\n this.gettypeperson=\"Person\";\r\n else\r\n this.gettypeperson=\"FTVPerson\";\r\n let p: IBankDetail = {\r\n userid: this.session.UserID,\r\n BankID: bankID,\r\n BranchID: BranchID,\r\n RoleID: this.session.getRoleID,\r\n GetType: this.gettypeperson,\r\n };\r\n this.selectedVerticalValue = bankID;\r\n this.ngxService.start();\r\n\r\n ApiService.GetBankDetails(p)\r\n .then((responce: any) => {\r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n this.BranchPersonDetail = responce.data.DATA;\r\n if (isEdit && !this.selectedOldCase) {\r\n const BankText = this.BranchPersonDetail.find(\r\n (val) => val.AttributeID === this.editCaseDetail.Branch_person\r\n );\r\n this.BranchPersonText = BankText.AttributeName;\r\n }\r\n }\r\n }\r\n this.ngxService.stop();\r\n })\r\n .catch((e: any) => {\r\n this.ngxService.stop();\r\n console.log(\"Getting Error In GetBranchPersonDetails\");\r\n Swal.fire(\"Oops...\", \"9something went wrong\", \"error\");\r\n });\r\n }\r\n GetBranchDetails(BankID: string, isEdit: boolean) {\r\n let p: IBankDetail = {\r\n userid: this.session.UserID,\r\n BankID: BankID,\r\n BranchID: \"\",\r\n RoleID: this.session.getRoleID,\r\n GetType: \"Branch\",\r\n };\r\n //this.ngxService.start();\r\n\r\n ApiService.GetBankDetails(p)\r\n .then((responce: any) => {\r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n this.BranchDetail = responce.data.DATA;\r\n if (isEdit) {\r\n const branchText = this.BranchDetail.find(\r\n (val) => val.AttributeID === this.selectedBranchValue\r\n );\r\n this.BranchText = branchText.AttributeName;\r\n }\r\n }\r\n }\r\n // this.ngxService.stop();\r\n })\r\n .catch((e: any) => {\r\n this.ngxService.stop();\r\n console.log(\"Get Error In GetBranchDetails\");\r\n Swal.fire(\"Oops...\", \"Get Error In GetBranchDetails\", \"error\");\r\n });\r\n }\r\n GetZoneDetails(BankID: string, isEdit: boolean) {\r\n let p: IBankDetail = {\r\n userid: this.session.UserID,\r\n BankID: BankID,\r\n BranchID: \"\",\r\n RoleID: this.session.getRoleID,\r\n GetType: \"Zone\",\r\n };\r\n //this.ngxService.start();\r\n this.ZoneText = \"\";\r\n this.VerticalText = \"\";\r\n ApiService.GetBankDetails(p)\r\n .then((responce: any) => {\r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n this.ZoneDetail = responce.data.DATA;\r\n if (isEdit) {\r\n const BankText = this.ZoneDetail.find(\r\n (val) => val.AttributeID === this.selectedZoneValue\r\n );\r\n this.ZoneText = BankText.AttributeName;\r\n }\r\n }\r\n }\r\n // this.ngxService.stop();\r\n })\r\n .catch((e: any) => {\r\n this.ngxService.stop();\r\n console.log(\"Get Error In GetZoneDetails\");\r\n Swal.fire(\"Oops...\", \"Get Error In GetZoneDetails\", \"error\");\r\n });\r\n }\r\n GetProductDetails(BankID: string, isEdit: boolean) {\r\n //debugger;\r\n let p: IBankDetail = {\r\n userid: this.session.UserID,\r\n BankID: BankID,\r\n BranchID: \"\",\r\n RoleID: this.session.getRoleID,\r\n GetType: \"Product\",\r\n };\r\n //this.ngxService.start();\r\n\r\n ApiService.GetBankDetails(p)\r\n .then((responce: any) => {\r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n this.LoadCaseType = responce.data.DATA;\r\n }\r\n }\r\n // this.ngxService.stop();\r\n })\r\n .catch((e: any) => {\r\n this.ngxService.stop();\r\n console.log(\"Get Error In GetProductDetails\");\r\n Swal.fire(\"Oops...\", \"Get Error In GetProductDetails\", \"error\");\r\n });\r\n }\r\n GetFeesTypeDetails(VertiCalID: string, isEdit: boolean) {\r\n //debugger;\r\n let p: IBankDetail = {\r\n userid: this.session.UserID,\r\n BankID: VertiCalID,\r\n BranchID: \"\",\r\n RoleID: this.session.getRoleID,\r\n GetType: \"FeesType\",\r\n };\r\n //this.ngxService.start();\r\n\r\n ApiService.GetBankDetails(p)\r\n .then((responce: any) => {\r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n this.LoadFeesType = responce.data.DATA;\r\n }\r\n }\r\n // this.ngxService.stop();\r\n })\r\n .catch((e: any) => {\r\n this.ngxService.stop();\r\n console.log(\"Get Error In GetFeesDetails\");\r\n Swal.fire(\"Oops...\", \"Get Error In GetFeesDetails\", \"error\");\r\n });\r\n }\r\n GetApproverDetails(BankID: string, isEdit: boolean) {\r\n //debugger;\r\n let p: IBankDetail = {\r\n userid: this.session.UserID,\r\n BankID: BankID,\r\n BranchID: \"\",\r\n RoleID: this.session.getRoleID,\r\n GetType: \"Product\",\r\n };\r\n //this.ngxService.start();\r\n // this.selectedApprover=\"Select\";\r\n ApiService.GetApproverDetails(p)\r\n .then((responce: any) => {\r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n this.LoadApprover = responce.data.DATA;\r\n // this.selectedApprover=\"Select\";\r\n }\r\n }\r\n // this.ngxService.stop();\r\n })\r\n .catch((e: any) => {\r\n this.ngxService.stop();\r\n console.log(\"Get Error In GetApproverDetails\");\r\n Swal.fire(\"Oops...\", \"Get Error In GetApproverDetails\", \"error\");\r\n });\r\n }\r\n onItemSelect(item: any) {\r\n let p = this.selectedItems.length;\r\n console.log(item);\r\n }\r\n onSelectAll(items: any) {\r\n console.log(items);\r\n }\r\n onDeSelect(items: any) {\r\n this.deleteMsg(items.id);\r\n }\r\n deleteMsg(msg: string) {}\r\n HideModel() {\r\n this.IsPopUp = false;\r\n }\r\n checkValue(e: any) {\r\n const val = e.currentTarget.value;\r\n this.IsPopUp = false;\r\n if (val) {\r\n this.selectedOldCase = true;\r\n this.GetEditOldCaseDetail(val);\r\n }\r\n console.log(e);\r\n }\r\n searchOldCases() {\r\n this.ngxService.start();\r\n let val: searchOldCases = {\r\n Applicant_Name: this.applicantName,\r\n Property_No: this.propertyNo,\r\n Building_No: this.BuildingName,\r\n Street_Sector: this.Streat,\r\n Land_mark: this.landmark,\r\n City: this.selectedCity,\r\n Contact_Persion_Mob1: this.MOb1,\r\n Contact_Persion_Mob2: this.MOb2,\r\n };\r\n let p: boolean = false;\r\n if (\r\n this.applicantName != \"\" ||\r\n this.propertyNo != \"\" ||\r\n this.BuildingName != \"\" ||\r\n this.Streat != \"\" ||\r\n this.landmark != \"\" ||\r\n this.selectedCity != \"Select\" ||\r\n this.MOb1 != \"\" ||\r\n this.MOb2 != \"\"\r\n ) {\r\n p = true;\r\n if (this.selectedCity == \"Select\") {\r\n val.City = \"\";\r\n }\r\n }\r\n if (p) {\r\n ApiService.SearchOldCases(val)\r\n .then((responce: any) => {\r\n this.HeaderText = \"Please Select Case\";\r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n this.IsPopUp = true;\r\n this.GridOldCases = responce.data.DATA;\r\n } else {\r\n Swal.fire(\"Oops...\", \"No Data Found!\", \"warning\");\r\n }\r\n } else {\r\n Swal.fire(\"No Data Found!\", \"warning\");\r\n // this.IsPopUp = true;\r\n }\r\n this.ngxService.stop();\r\n })\r\n .catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire(\"Oops...\", \"10something went wrong\", \"error\");\r\n });\r\n } else {\r\n this.ngxService.stop();\r\n Swal.fire(\"Oops...\", \"please add at least one value\", \"warning\");\r\n }\r\n }\r\n onBankCaseChange(e: any) {\r\n this.radioSelected = \"Billing\";\r\n e.target.value;\r\n if (e.target.value == \"Select\" || e.target.value == \"\") {\r\n Swal.fire(\"Oops...\", \"Please select case type!\", \"warning\");\r\n this.IsExtraFeeShow = false;\r\n this.IsconvFeeShow = false;\r\n this.IstotalFeeShow = false;\r\n this.IsapprovalShow = false;\r\n this.IscontactnoShow = false;\r\n this.IsFeeShow = false;\r\n this.IsdocShow = false;\r\n this.IsFeecase = false;\r\n } else {\r\n if (this.selectedBankValue && this.casetype && this.session.UserID) {\r\n const val: IcaseFee = {\r\n CaseTypeID: this.casetype,\r\n LoginID: this.session.UserID,\r\n BankID: this.selectedBankValue,\r\n ZoneID: this.selectedZoneValue,\r\n BranchID: this.selectedBranchValue,\r\n VerticalID: this.selectedVerticalValue,\r\n };\r\n this.ngxService.start();\r\n ApiService.CaseFee(val)\r\n .then((responce: any) => {\r\n this.ngxService.stop();\r\n if (responce.status === 200) {\r\n /* if (responce.data != \"\") { */\r\n if (\r\n this.session.getRoleID == \"22\" ||\r\n this.session.getRoleID == \"7\"\r\n ) {\r\n this.IsFeeShow = false;\r\n this.IsExtraFeeShow = false;\r\n this.IsconvFeeShow = false;\r\n this.IstotalFeeShow = false;\r\n this.IsapprovalShow = false;\r\n this.IscontactnoShow = false;\r\n this.IsdocShow = false;\r\n this.IsFeecase = false;\r\n this.CaseFee = responce.data;\r\n this.TotalFee = (\r\n +this.Conveyance +\r\n +this.CaseFee +\r\n +this.ExtraFee\r\n ).toString();\r\n } else {\r\n this.IsFeeShow = true;\r\n this.IsExtraFeeShow = true;\r\n this.IsconvFeeShow = true;\r\n this.IstotalFeeShow = true;\r\n this.IsapprovalShow = true;\r\n this.IscontactnoShow = true;\r\n this.IsdocShow = true;\r\n this.IsFeecase = true;\r\n this.CaseFee = responce.data;\r\n this.TotalFee = (\r\n +this.Conveyance +\r\n +this.CaseFee +\r\n +this.ExtraFee\r\n ).toString();\r\n }\r\n /* } else {\r\n // this.router.navigate([\"Home\"]);\r\n Swal.fire('Oops...', 'Before Create Case Update Bank Case Fees!', 'warning');\r\n this.casetype=\"Select\";\r\n this.IsExtraFeeShow=false;\r\n this.IsconvFeeShow=false;\r\n this.IstotalFeeShow=false;\r\n this.IsapprovalShow=false;\r\n this.IscontactnoShow=false;\r\n this.IsFeeShow=false;\r\n this.IsdocShow=false;\r\n this.IsFeecase=false;\r\n } */\r\n }\r\n })\r\n .catch((e: any) => {\r\n console.log(\"Getting Error in onCaseChange\");\r\n Swal.fire(\"Oops...\", \"4something went wrong\", \"error\");\r\n });\r\n }\r\n }\r\n }\r\n}\r\n","module.exports = \"
\\r\\n
\\r\\n
    \\r\\n
    \\r\\n
  • \\r\\n With Customer\\r\\n
  • \\r\\n
    \\r\\n
    \\r\\n
  • \\r\\n Quality Check\\r\\n
  • \\r\\n
    \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
Case UID {{element.CaseUID}} Name {{element.Name}} Mobile {{element.Mobile}} Bank {{element.Bank}} Location {{element.Location}} Case Action {{element.CaseStatus}} Supervisor {{element.supervisor}} CR.Date {{element.CrDate}} Action \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
Case UID {{element.CaseUID}} Name {{element.Name}} Mobile {{element.Mobile}} Bank {{element.Bank}} Location {{element.Location}} Case Action {{element.CaseStatus}} Supervisor {{element.supervisor}} CR.Date {{element.CrDate}} Action \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n

\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n

{{HeaderText}}

\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n {{ftvurl}}\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n

Send Mail

\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n\"","import { Component, OnInit, Renderer2, ElementRef,ViewChild } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { ApiService } from '../service/service';\r\nimport { SessionService } from '../service/sessionGlobalVar';\r\nimport { UpdateDataForGrid,IGridInput, IUpdateStatus, getStage,ICaseCreate ,IsendMail,IsgetMail, IsgetMailftv } from '../service/type'\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport {MatPaginator,MatTableDataSource,MatSort,Sort} from '@angular/material';\r\nimport Swal from 'sweetalert2';\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: 'app-ftv-case',\r\n templateUrl: './ftv-case.component.html',\r\n styleUrls: []\r\n})\r\nexport class FtvCaseComponent implements OnInit {\r\n SendBranchPerson: string;\r\n SendBranchPersonemail:string;\r\n MailSubject: string;\r\n MailBody: string;\r\n mailBankID:string;\r\n caseID: string;\r\n GridDetail: [];\r\n IsSendMailModel: boolean = false; \r\n sendMailForm: string;\r\n GridPublish: [];\r\n GridReview: [];\r\n isShowAllocation: boolean = true;\r\n isShowQuality: boolean;\r\n isShowPublish: boolean;\r\n IsEditStatus: boolean = false;\r\n valEngineer: any;\r\n status: any;\r\n selectedStatus: string = \"0\";\r\n selectedEngvalue: string = \"\";\r\n HeaderText: string;\r\n IsDocument: boolean = false;\r\n Component1Variable: string = \"Component1VariableSent\";\r\n logID: string;\r\n inputRemark: string = \"\";\r\n msgType: string;\r\n updatedFiles: any;\r\n typeOfStage: string;\r\n sanctionPlanDoc: any;\r\n datatablerefersh:boolean=true;\r\n getdocurl :any;\r\n ftvurl :any;\r\n displayedColumnsWithCustomer: string[] = ['CaseUID', 'name','mobileno', 'Bank', 'Location','CaseAction','EngineerStatus','CRDate','Action'];\r\n dataSourceWithCustomer = new MatTableDataSource;\r\n dataSourceQuality= new MatTableDataSource;\r\n applyFilter(filterValue: string) {\r\n this.dataSourceWithCustomer.filter = filterValue.trim().toLowerCase();\r\n this.dataSourceQuality.filter = filterValue.trim().toLowerCase();\r\n }\r\n @ViewChild(MatPaginator) paginator: MatPaginator;\r\n @ViewChild(MatSort) sort: MatSort;\r\n constructor(private router: Router, private service: ApiService, private session: SessionService, private ngxService: NgxUiLoaderService, private renderer: Renderer2, private el: ElementRef) {\r\n let val = localStorage.getItem(\"roleID\");\r\n if (val) {\r\n if (+val == 7) {\r\n this.router.navigate([\"BankCaseDetails\"]);\r\n }\r\n else {\r\n this.getMainGridData(\"4\");\r\n }\r\n }\r\n }\r\n ngOnInit() {\r\n const p = this.el.nativeElement;\r\n this.renderer.addClass(this.el.nativeElement, 'abc');\r\n }\r\n\r\n addCase() {\r\n this.router.navigate([\"Casecreation\"]);\r\n }\r\n allocation(e) {\r\n \r\n // this.quiid=\"1\";\r\n const review = document.getElementById(\"review-tab\");\r\n const allocation = document.getElementById(\"home-tab\");\r\n this.typeOfStage = \"allocation\";\r\n allocation.classList.add(\"active\");\r\n review.classList.remove(\"active\");\r\n this.isShowAllocation = true;\r\n this.isShowQuality = false;\r\n this.isShowPublish = false;\r\n this.getMainGridData(\"4\");\r\n /* if (this.GridDetail) {\r\n if(this.datatablerefersh==false){\r\n this.getMainGridData(\"4\");\r\n setTimeout(function () {\r\n $(function () {\r\n $(\"#example4\").DataTable({\r\n destroy: true,\r\n searching: true,\r\n \"order\": [[ 0, \"desc\" ]],\r\n \"lengthMenu\": [[30,100, -1], [30,100, \"All\"]] \r\n });\r\n });\r\n }, 1000);\r\n this.datatablerefersh=false;\r\n }\r\n } */\r\n return false;\r\n }\r\n review(e) {\r\n \r\n // this.quiid=\"2\";\r\n const review = document.getElementById(\"review-tab\");\r\n const allocation = document.getElementById(\"home-tab\");\r\n this.typeOfStage = \"review\";\r\n allocation.classList.remove(\"active\");\r\n review.classList.add(\"active\");\r\n this.isShowAllocation = false;\r\n this.isShowQuality = true;\r\n this.isShowPublish = false;\r\n this.getMainGridData(\"5\");\r\n /* if (this.GridReview) {\r\n if(this.datatablerefersh==false){\r\n this.getMainGridData(\"5\");\r\n setTimeout(function () {\r\n $(function () {\r\n $(\"#example5\").DataTable({\r\n destroy: true,\r\n \"order\": [[ 0, \"desc\" ]],\r\n \"lengthMenu\": [[30,100, -1], [30,100, \"All\"]] \r\n });\r\n });\r\n }, 1000);\r\n this.datatablerefersh=false;\r\n }\r\n }\r\n else{\r\n this.datatablerefersh=false;\r\n this.getMainGridData(\"5\");\r\n } */\r\n return false;\r\n }\r\n getMainGridData(qid: string) {\r\n let val: IGridInput = {\r\n LoginID: this.session.UserID,\r\n RoleID: this.session.getRoleID,\r\n UserBankBranch: this.session.BankBranchID,\r\n SelectedBankID: \"\",\r\n SelectedBranchID: \"\",\r\n CaseStage: \"A\",\r\n ValuationType: \"2\",\r\n qid: qid\r\n }\r\n this.ngxService.start();\r\n ApiService.GetGridData(val).then((responce: any) => {\r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n this.GridDetail = responce.data;\r\n if(qid==\"4\"){\r\n this.dataSourceWithCustomer=new MatTableDataSource(responce.data);\r\n this.dataSourceWithCustomer.paginator = this.paginator; \r\n this.dataSourceWithCustomer.sort = this.sort; \r\n }else{\r\n this.dataSourceQuality=new MatTableDataSource(responce.data);\r\n this.dataSourceQuality.paginator = this.paginator; \r\n this.dataSourceQuality.sort = this.sort; \r\n } \r\n /* setTimeout(function () {\r\n $(function () {\r\n $(\"#example\" + qid + \"\").DataTable();\r\n });\r\n }, 1000); */\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n\r\n HideModel() {\r\n this.IsEditStatus = false;\r\n }\r\n updateStatus() {\r\n if (this.logID) {\r\n if (this.selectedStatus == \"0\" || this.selectedStatus == \"\") {\r\n Swal.fire('Oops...', 'Please Select Action Type!', 'warning');\r\n } else if (this.inputRemark == \"\") {\r\n Swal.fire('Oops...', 'Remark Can`t be empty!', 'warning');\r\n } else {\r\n const val: IUpdateStatus = {\r\n Case_id: this.logID,\r\n CaseStatus: this.selectedStatus,\r\n statusRemark: this.inputRemark,\r\n Assignto: \"\",\r\n Message: \"\",\r\n LoginID: this.session.UserID\r\n }\r\n this.ngxService.start();\r\n this.IsEditStatus = false;\r\n ApiService.UpdateStatus(val).then((response: any) => {\r\n if (response.status == 200) {\r\n this.getMainGridData(\"1\");\r\n Swal.fire('Thanks...', 'Action Update Successfully', 'success')\r\n }else {\r\n Swal.fire('Oops...', 'Something Went Wrong In Action Update Please try again!', 'error')\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something Went Wrong In Action Please Refresh Page!', 'error')\r\n })\r\n }\r\n }\r\n }\r\n EditAction(e: any,urls: any) {\r\n debugger;\r\n this.ftvurl=urls;\r\n let val: getStage = {\r\n Type: \"1\",\r\n valType: \"2\"\r\n }\r\n \r\n this.logID = e/* .currentTarget.parentElement.firstElementChild.value */;\r\n this.ngxService.start(); \r\n ApiService.GetStages(val).then((response: any) => { \r\n this.IsEditStatus = true;\r\n this.status = response.data.DATA;\r\n this.ngxService.stop();\r\n \r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something Went Wrong In Action Please Refresh Page!', 'error')\r\n })\r\n }\r\n editCase(e) {\r\n this.logID = e/* .currentTarget.parentElement.firstElementChild.value */;\r\n const val = window.btoa(this.logID);\r\n if (this.logID) {\r\n this.router.navigate([\"/FtvSendMessage\", { id: val }]);\r\n }\r\n }\r\n logDetail(e) {\r\n this.logID = e/* .currentTarget.parentElement.firstElementChild.value */;\r\n if (this.logID) {\r\n this.router.navigate([\"/logDetails\", { id: this.logID }]);\r\n }\r\n }\r\n ResendMessage(e){\r\n\r\n let data: ICaseCreate = {\r\n CaseID: e/* .currentTarget.parentElement.firstElementChild.value */,\r\n Bank_id: \"\",\r\n branch_id: \"\",\r\n person_id: \"\",\r\n ValuationTypeID: \"2\",\r\n ApplicantName_Name: \"\",\r\n ApplicanttitleN: \"\",\r\n Applicant_nameN: \"\",\r\n Block: \"\",\r\n BuildingNameN: \"\",\r\n StreatRoadN: \"\",\r\n SectorN: \"\",\r\n state_id: \"\",\r\n distict: \"\",\r\n City_id: \"\",\r\n Locality_id: \"\",\r\n BuildingNo: \"\",\r\n propertyno: \"\",\r\n Property_titleN: \"\",\r\n PropertyValueN: \"\",\r\n Streat: \"\",\r\n landmark: \"\",\r\n SubLocality_id: \"\",\r\n pincode: \"\",\r\n ContactPersonName: \"\",\r\n Mob1: \"\",\r\n Mob2: \"\",\r\n vertical: \"\",\r\n casetype: \"\",\r\n Assignto: \"\",\r\n Case_statusID: \"\",\r\n supervisorID: \"\",\r\n StatusRemark: \"\",\r\n FileNo: \"\",\r\n Area: \"\",\r\n CaseRemark: \"\",\r\n Document_id: \"\",\r\n LoginID: this.session.UserID,\r\n OldCaseID: \"\",\r\n ActualFees: \"\",\r\n ExtraFees: \"\",\r\n TotalFees: \"\",\r\n Conveyance: \"\",\r\n ApprovalPersonName: \"\",\r\n ApprovalContact: \"\",\r\n ApprovalDocPath: \"0\",\r\n AssignType: \"D\",\r\n usage:\"\",\r\n propertytype:\"\",\r\n Operation: \"\",\r\n PaymentType:\"\",\r\n Zone_id:\"\",\r\n Vertical_id:\"\",\r\n ENgConv:\"\",\r\n Approval_Remarks:\"\",\r\n FeesType:\"\",\r\n ExtraEngConv:\"\",\r\n ExtraEngConvRemark:\"\",\r\n IsOtherOffice:\"\",\r\n OtherOffice:\"\",\r\n adroitbranch:\"\",\r\n }\r\n \r\n ApiService.FtvSendSMS(data).then((responce: any) => {\r\n \r\n this.ngxService.stop();\r\n if (responce.status === 200) {\r\n Swal.fire('Thanks...', 'Resend Message Successfully', 'success');\r\n this.router.navigate([\"Home\"]);\r\n \r\n }\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n console.log(\"Getting Error In caseCreate\",e);\r\n Swal.fire('Oops...', 'Something went wrong!', 'error');\r\n });\r\n \r\n \r\n }\r\n\r\n addDoc(e) {\r\n \r\n this.logID = e/* .currentTarget.parentElement.firstElementChild.value */;\r\n this.HeaderText = \"Upload Document\";\r\n if (this.logID) {\r\n this.IsEditStatus = true;\r\n this.IsDocument = true;\r\n this.ngxService.start();\r\n ApiService.SupSidebar(this.logID).then((responce: any) => {\r\n \r\n if (responce.status == 200) {\r\n if (responce.data) { \r\n this.getdocurl=responce.data.CaseDoc;\r\n for (const Dvalue in responce.data.CaseDoc) {\r\n \r\n let docValss = {\r\n url: this.getdocurl[Dvalue].url,\r\n name: this.getdocurl[Dvalue].name\r\n }\r\n this.getdocurl[Dvalue] = docValss;\r\n }\r\n // this.openInNewTabs(this.getdocurl);\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n }\r\n handleFileSelect(evt) {\r\n this.updatedFiles = evt.target.files;\r\n };\r\n handleSanctionPlanDoc(evt) {\r\n this.sanctionPlanDoc = evt.target.files;\r\n }\r\n updateDocument() {\r\n \r\n if (this.logID) {\r\n if (this.sanctionPlanDoc || this.updatedFiles) {\r\n \r\n let formData = new FormData();\r\n if (this.updatedFiles) {\r\n for (let val of this.updatedFiles) {\r\n formData.append(\"CaseID\", this.logID);\r\n formData.append(\"imgname\", val.name);\r\n formData.append(\"files\", val);\r\n }\r\n }\r\n if (this.sanctionPlanDoc) {\r\n \r\n // for (let val of this.sanctionPlanDoc) {\r\n // formData.append(\"CaseID\", this.logID);\r\n // formData.append(\"imgname\", val.name);\r\n // formData.append(\"files\", val);\r\n // }\r\n formData.append(\"CaseID\", this.logID);\r\n formData.append(\"imgname\", this.sanctionPlanDoc[0].name);\r\n formData.append(\"files\", this.sanctionPlanDoc[0]);\r\n }\r\n \r\n this.ngxService.start();\r\n ApiService.UpdateDocument(formData).then((responce: any) => {\r\n \r\n \r\n if (responce.status === 200) {\r\n this.IsEditStatus = false;\r\n this.sanctionPlanDoc = undefined;\r\n this.updatedFiles = undefined;\r\n Swal.fire('Success...', 'Upload Document Sucessfully!', 'success');\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong in document update!', 'error');\r\n });\r\n } else {\r\n Swal.fire('Oops...', 'Please select atleast one document!', 'warning');\r\n }\r\n }\r\n }\r\n DeleteDoc(e){\r\n \r\n this.ngxService.start();\r\n let val = {\r\n Case_id: this.logID,\r\n Status: \"\",\r\n FilePath: e,\r\n Type: \"doc\",\r\n Message: \"\",\r\n LoginID: this.session.UserID\r\n }\r\n \r\n ApiService.DeleteDocument(val).then((responce: any) => {\r\n if (responce.status == 200) { \r\n this.IsEditStatus = false;\r\n Swal.fire('Success...', 'Delete Document Sucessfully!', 'success');\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n \r\n Edit(valuationID: string, e: any) {\r\n const val = e/* .currentTarget.parentElement.firstElementChild.value */;\r\n if (val && val != \"\") {\r\n const data = window.btoa(val);\r\n this.router.navigate([\"/UpdateAddress\", { id: data, valuation: valuationID }]);\r\n }\r\n }\r\n\r\n QcPass(e: any,fee: any) {\r\n const val = window.confirm(\"Do you want to save data?\");\r\n if (val) {\r\n const data = e/* .currentTarget.parentElement.firstElementChild.value */;\r\n const waterMark = e/* .currentTarget.firstElementChild.value */;\r\n const LoginID = localStorage.getItem('userID');\r\n const val: UpdateDataForGrid = {\r\n CaseID: data,\r\n Type: \"QCPASS\",\r\n watermark: waterMark,\r\n casecreatedfrom: \"\",\r\n UserID: LoginID,\r\n Remark: \"\",\r\n Supervisor: \"\",\r\n RoleID: \"\"\r\n }\r\n this.ngxService.start();\r\n ApiService.UpdateGridDataAndGetUrl(val).then((responce: any) => {\r\n if (responce.status === 200) {\r\n debugger;\r\n Swal.fire('Thanks', 'QC Pass Sucessfully', 'success');\r\n this.openInNewTab(responce.data.URL);\r\n \r\n // this.getMainGridData();\r\n /* this.ViewReportwithqc(data); */\r\n window.location.reload();\r\n \r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n\r\n }\r\n }\r\n openInNewTab(href: any) {\r\n Object.assign(document.createElement('a'), {\r\n target: '_blank',\r\n href,\r\n }).click();\r\n }\r\n View(e: any) {\r\n let data = e/* .currentTarget.parentElement.firstElementChild.value */;\r\n const LoginID = localStorage.getItem('userID');\r\n const val: UpdateDataForGrid = {\r\n CaseID: data,\r\n Type: \"View\",\r\n watermark: \"\",\r\n casecreatedfrom: \"\",\r\n UserID: LoginID,\r\n Remark: \"\",\r\n Supervisor: \"\",\r\n RoleID: \"\",\r\n }\r\n this.ngxService.start();\r\n ApiService.UpdateGridDataAndGetUrl(val).then((responce: any) => {\r\n if (responce.status === 200) {\r\n this.openInNewTab(responce.data.URL);\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n sendReminder(e: any) {\r\n \r\n this.IsSendMailModel = true;\r\n const val: IsgetMailftv = {\r\n caseid : e/* .currentTarget.parentElement.firstElementChild.value */,\r\n type:\"get\",\r\n ApplicantName:localStorage.getItem('userID'),\r\n }\r\n this.caseID = e/* .currentTarget.parentElement.firstElementChild.value */;\r\n // this.typed=\"get\";\r\n ApiService.SentFTVMail(val).then((responce: any) => {\r\n \r\n if (responce.status === 200) {\r\n let val = responce.data;\r\n let sender=val.EmailFrom;\r\n this.sendMailForm = val.EmailTo;\r\n this.SendBranchPerson = val.ApplicantName;\r\n this.SendBranchPersonemail=sender;\r\n this.MailSubject = val.Sublect;\r\n this.MailBody = val.Body;\r\n this.mailBankID=val.BankID\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n HideModelsendMail(){\r\n this.IsSendMailModel = false;\r\n }\r\n sendReminderUpdate(e) {\r\n \r\n const val: IsendMail = {\r\n caseId : this.caseID,\r\n EmailTo: this.sendMailForm,\r\n Sublect: this.MailSubject,\r\n ApplicantName: this.SendBranchPerson,\r\n Body: this.MailBody,\r\n LoginID: this.session.UserID,\r\n BankID: this.mailBankID,\r\n type:\"update\"\r\n }\r\n this.ngxService.start();\r\n \r\n ApiService.FTVSendMailUpdate(val).then((responce: any)=>{\r\n \r\n if (responce.status === 200) {\r\n Swal.fire('Thanks', responce.data.EmailTo, 'success');\r\n this.getMainGridData(\"5\");\r\n this.IsSendMailModel = false;\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n \r\n }\r\n}\r\n","module.exports = \"
\\r\\n \\r\\n
\\r\\n\\r\\n

Case Creation

\\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n Link Shared With Customer\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n *Required fields\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n

{{HeaderText}}

\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
Case Reference No.Applicant NameBank NameCase StatusCase TypeCase_Created_OnCase Status RemarksContact PersonMobile1Mobile2EngineerLocationProperty AddressSup.Created By
{{grid.CaseUID}}{{grid.ApplicantName}}{{grid.bankbranchname}}{{grid.CaseStatus}}{{grid.CaseType}}{{grid.Case_Created_On}}{{grid.Case_Status_Remarks}}{{grid.ContactPerson}}{{grid.ContactPersonMob1}}{{grid.ContactPersonMob2}}{{grid.Eng}}{{grid.Location}}{{grid.PropertyAddress}}{{grid.Sup}}{{grid.cr_by}}
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\"","import { Component, OnInit } from '@angular/core';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { ApiService } from '../service/service';\r\nimport { SessionService } from '../service/sessionGlobalVar';\r\nimport { IcaseFee, IBankDetail, IGetCityLocation, ICaseCreate, getStage, searchOldCases,IUsage } from '../service/type'\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport Swal from 'sweetalert2';\r\ndeclare var $: any;\r\n@Component({\r\n selector: 'app-ftv-send-message',\r\n templateUrl: './ftv-send-message.component.html',\r\n styles: []\r\n})\r\nexport class FtvSendMessageComponent implements OnInit {\r\n BankDetail: any;\r\n selectedBankValue: any = \"\";\r\n selectedBranchValue: any = \"\";\r\n selectedBranchPersonValue: any = \"\";\r\n BranchDetail: any = \"\";\r\n BranchPersonDetail: any = \"\";\r\n state: any = \"\";\r\n selectedState: string = \"Select\";\r\n selectedCity: string = \"Select\";\r\n selectedLocality: string = \"Select\";\r\n selectedSubLocation: string = \"Select\";\r\n caseVertical: string = \"\";\r\n applicantFirst: string = \"\";\r\n propertyFirst: string = \"Plot No.\";\r\n selectedValuationValue: string = \"Select\";\r\n casetype: string = \"Select\";\r\n selectedStatus: string = \"Select\";\r\n CityVal: any = \"\";\r\n LocationVal: any = \"\";\r\n SubLocationVal: any = \"\";\r\n PinCode: any = \"\";\r\n status: any = \"\";\r\n DDLUsageData: any;\r\n valEngineer: any = \"\";\r\n valSup: any = \"\";\r\n selectedEngvalue: string = \"\";\r\n selectedSupvalue: string = \"\";\r\n applicantName: string = \"\";\r\n district: string = \"\";\r\n dropdownList = [];\r\n dropdownList1 = [];\r\n selectedItems = [];\r\n newSelectedItems = [];\r\n dropdownSettings = {};\r\n propertyNo: string = \"\";\r\n BuildingName: string = \"\";\r\n Streat: string = \"\";\r\n landmark: string = \"\";\r\n ContactPersonName: string = \"\";\r\n MOb1: string = \"\";\r\n MOb2: string = \"\";\r\n LoadCaseType: any = \"\";\r\n StatusRemark: string = \"\";\r\n FileNo: string = \"\";\r\n PropertyArea: string = \"\";\r\n CaseRemark: string = \"\";\r\n CaseFee: string = \"0\";\r\n ExtraFee: string = \"0\";\r\n Conveyance: string = \"0\";\r\n TotalFee: string = \"0\";\r\n ApprovalPerson: string = \"\";\r\n ContactNo: string = \"\";\r\n IsFeeShow: boolean = false;\r\n editCaseDetail: any = \"\";\r\n BankText: string = \"\";\r\n BranchText: string = \"\";\r\n BranchPersonText: string = \"\";\r\n Sector: string = \"\";\r\n AssignToText: string = \"\";\r\n supToText: string = \"\";\r\n Block: string = \"\";\r\n files;\r\n filestring;\r\n myfile;\r\n isEditCase: boolean = false;\r\n ISvaluation: boolean = true;\r\n IScasebranch: boolean = true;\r\n document: any;\r\n sectionPlaneDoc: any;\r\n ApprovelDoc: any;\r\n IsBankCase: boolean = false;\r\n IsPopUp: boolean = false;\r\n HeaderText: string;\r\n GridOldCases: any;\r\n selectedOldCase: boolean = false;\r\n oldCaseID: string = \"\";\r\n CaseID: string = \"\";\r\n propertyTypeNEw: string = \"Select\";\r\n DDlUsage: string = \"Select\";\r\n DDlPropertyType: string = \"Select\";\r\n DDLPropertyData: any;\r\n radioSelectedString:string;\r\n radioSelected:string=\"\";\r\n PaymentType:string;\r\n radioSel:any;\r\n IsExtraFeeShow:boolean=true;\r\n IsconvFeeShow:boolean=true;\r\n IstotalFeeShow:boolean=true;\r\n IsapprovalShow:boolean=true;\r\n IscontactnoShow:boolean=true;\r\n IsdocShow:boolean=true;\r\n IsFeecase:boolean=true;\r\n editabless:boolean=false;\r\n constructor(private router: Router, private service: ApiService, private ngxService: NgxUiLoaderService, private session: SessionService, private route: ActivatedRoute) {\r\n this.getState(\"State\");\r\n this.getState(\"CaseType\");\r\n this.GetUsageDataNew();\r\n this.dropdownSettings = {\r\n singleSelection: false,\r\n idField: 'id',\r\n textField: 'text',\r\n unSelectAllText: 'UnSelect All',\r\n itemsShowLimit: 3,\r\n allowSearchFilter: true\r\n };\r\n \r\n const BranchID = localStorage.getItem(\"BankBranchID\");\r\n const bankID = localStorage.getItem(\"BankID\");\r\n let val = localStorage.getItem(\"roleID\");\r\n \r\n if (BranchID && (+val == 7 || +val == 10)) {\r\n this.selectedBankValue = bankID;\r\n this.selectedBranchValue = BranchID;\r\n this.IsBankCase = false;\r\n if (this.selectedBranchValue) {\r\n this.GetBranchPersonDetails(this.selectedBankValue, this.selectedBranchValue, false);\r\n }\r\n } else {\r\n this.IsBankCase = true;\r\n this.GetBankDetails();\r\n }\r\n }\r\n ngOnInit() {\r\n if (!this.session.isLoggedIn) {\r\n this.router.navigate([\"Login\"]);\r\n }\r\n const val = this.session.getRoleID;\r\n if (val == \"3\" || val == \"10\" || val == \"7\") {\r\n this.route.params.subscribe(params => {\r\n if (params.id) {\r\n this.isEditCase = true;\r\n const id = window.atob(params.id);\r\n this.CaseID = id;\r\n this.GetEditCaseDetail(id);\r\n }\r\n });\r\n }\r\n else {\r\n localStorage.clear();\r\n this.router.navigate([\"login\"]);\r\n }\r\n\r\n this.getState(\"Documents\");\r\n /* if(val == \"7\"){\r\n this.branchview();}*/\r\n } \r\n getFiles(event) {\r\n this.files = event.target.files;\r\n var reader = new FileReader();\r\n reader.onload = this._handleReaderLoaded.bind(this.files);\r\n reader.readAsBinaryString(this.files[0]);\r\n }\r\nbranchview()\r\n{ this.IScasebranch = false;}\r\n bindPreviousValue() {\r\n \r\n console.log(\"editCaseDetail\", this.editCaseDetail);\r\n if (!this.selectedOldCase) {\r\n this.selectedBankValue = this.editCaseDetail.Bank_ID;\r\n this.selectedBranchValue = this.editCaseDetail.Branch_id;\r\n this.selectedBranchPersonValue = this.editCaseDetail.Branch_person;\r\n const BankText = this.BankDetail.find(val => val.AttributeID === this.selectedBankValue);\r\n this.BankText = BankText.AttributeName;\r\n this.selectedStatus = this.editCaseDetail.Case_Status;\r\n this.selectedValuationValue = this.editCaseDetail.Valuation_typeID;\r\n this.GetBranchPersonDetails(this.selectedBankValue, this.selectedBranchValue, true)\r\n this.GetBranchDetails(this.editCaseDetail.Bank_ID, true);\r\n } else {\r\n this.oldCaseID = this.editCaseDetail.CaseID;\r\n }\r\n this.IsFeeShow = true;\r\n this.isEditCase = true;\r\n this.selectedState = this.editCaseDetail.StateID;\r\n this.district = this.editCaseDetail.District;\r\n\r\n this.applicantName = this.editCaseDetail.Applicant_nameN;\r\n\r\n this.applicantFirst = this.editCaseDetail.ApplicanttitleN;\r\n \r\n this.PinCode = this.editCaseDetail.pin_code;\r\n this.BuildingName = this.editCaseDetail.Building_No;\r\n this.Streat = this.editCaseDetail.Street_Sector;\r\n this.Sector = this.editCaseDetail.SectorN;\r\n this.ContactPersonName = this.editCaseDetail.Contact_persion_Name;\r\n this.MOb1 = this.editCaseDetail.Contact_Persion_Mob1;\r\n this.MOb2 = this.editCaseDetail.Contact_Persion_Mob2;\r\n this.casetype = this.editCaseDetail.Type_Of_Case;\r\n this.landmark = this.editCaseDetail.Land_mark;\r\n this.FileNo = this.editCaseDetail.File_No;\r\n this.PropertyArea = this.editCaseDetail.Area;\r\n \r\n this.StatusRemark = this.editCaseDetail.Case_Status_Remarks;\r\n this.Conveyance = this.editCaseDetail.Conveyance;\r\n this.CaseFee = this.editCaseDetail.ActualFees;\r\n this.ExtraFee = this.editCaseDetail.ExtraFees;\r\n this.TotalFee = this.editCaseDetail.TotalFees;\r\n this.caseVertical = this.editCaseDetail.Case_vertical;\r\n this.ApprovalPerson = this.editCaseDetail.ApprovalPersonName;\r\n this.ContactNo = this.editCaseDetail.ApprovalContact;\r\n this.CaseRemark = this.editCaseDetail.Case_Creation_remark;\r\n this.propertyNo = this.editCaseDetail.PropertyValueN;\r\n this.propertyFirst = this.editCaseDetail.Property_titleN;\r\n this.Block = this.editCaseDetail.Block;\r\n if(this.editCaseDetail.PaymentType==\"Billing\")\r\n { //this.Compositet=true;\r\n this.radioSelected = \"Billing\";\r\n this.radioSelectedString = JSON.stringify(this.radioSel);\r\n this.IsExtraFeeShow=true;\r\n this.IsconvFeeShow=true;\r\n this.IstotalFeeShow=true;\r\n this.IsapprovalShow=true;\r\n this.IscontactnoShow=true;\r\n this.IsdocShow=true;\r\n this.editabless=false;\r\n }\r\n else if(this.editCaseDetail.PaymentType==\"Cash\"){\r\n this.radioSelected = \"Cash\";\r\n this.radioSelectedString = JSON.stringify(this.radioSel);\r\n this.IsExtraFeeShow=false;\r\n this.IsconvFeeShow=false;\r\n this.IstotalFeeShow=false;\r\n this.IsapprovalShow=false;\r\n this.IscontactnoShow=false;\r\n this.IsdocShow=false;\r\n this.editabless=true;\r\n }\r\n else{\r\n this.radioSelected = \"Billing\";\r\n this.radioSelectedString = JSON.stringify(this.radioSel);\r\n }\r\n if (this.selectedState) {\r\n const val: IGetCityLocation = {\r\n StateID: this.selectedState,\r\n CityID: \"\",\r\n LocID: \"\",\r\n GetType: \"City\",\r\n }\r\n this.getCityLocation(val);\r\n this.selectedCity = this.editCaseDetail.cityID;\r\n if (this.selectedCity) {\r\n const val: IGetCityLocation = {\r\n StateID: this.selectedState,\r\n CityID: this.selectedCity,\r\n LocID: \"\",\r\n GetType: \"Location\",\r\n }\r\n this.getCityLocation(val);\r\n this.selectedLocality = this.editCaseDetail.LocationID;\r\n this.locationChangeFUnction();\r\n this.selectedSubLocation = this.editCaseDetail.SubLocalityId;\r\n this.selectedEngvalue = this.editCaseDetail.Allocated_To;\r\n if (this.valEngineer) {\r\n const engVal = this.valEngineer.find(val => val.AttributeID === this.editCaseDetail.Allocated_To);\r\n this.AssignToText = engVal.AttributeName;\r\n }\r\n\r\n this.selectedSupvalue = this.editCaseDetail.Supervisor;\r\n if (this.valSup) {\r\n const supVal = this.valSup.find(val => val.AttributeID === this.selectedSupvalue);\r\n this.supToText = supVal.AttributeName;\r\n }\r\n }\r\n this.valuationChange();\r\n this.bindDropdownOnEdit();\r\n }\r\n }\r\n valuationChange() {\r\n const val: string = this.selectedValuationValue;\r\n if (val == '2') {\r\n this.ISvaluation = false;\r\n } else {\r\n this.ISvaluation = true;\r\n }\r\n this.GetStageDetail();\r\n }\r\n feeChange() {\r\n this.TotalFee = ((+this.Conveyance) + (+this.CaseFee) + (+this.ExtraFee)).toString();\r\n }\r\n hideShowpayment(e: any) {\r\n if (e.currentTarget.value == \"Billing\") {\r\n \r\n this.PaymentType = \"Billing\";\r\n /* this.IsExtraFeeShow=true;\r\n this.IsconvFeeShow=true;\r\n this.IstotalFeeShow=true;\r\n this.IsapprovalShow=true;\r\n this.IscontactnoShow=true;\r\n this.IsdocShow=true; */\r\n this.editabless=false;\r\n if (this.selectedBankValue && this.casetype && this.session.UserID) {\r\n const val: IcaseFee = {\r\n CaseTypeID: this.casetype,\r\n LoginID: this.session.UserID,\r\n BankID: this.selectedBankValue,\r\n ZoneID: \"\",\r\n BranchID: \"\",\r\n VerticalID: \"\"\r\n }\r\n this.ngxService.start();\r\n ApiService.CaseFee(val).then((responce: any) => {\r\n \r\n this.ngxService.stop();\r\n if (responce.status === 200) {\r\n if (responce.data != \"\") {\r\n this.IsFeeShow = true;\r\n this.IsExtraFeeShow=true;\r\n this.IsconvFeeShow=true;\r\n this.IstotalFeeShow=true;\r\n this.IsapprovalShow=true;\r\n this.IscontactnoShow=true;\r\n this.IsdocShow=true;\r\n this.IsFeecase=true;\r\n this.CaseFee = responce.data;\r\n this.TotalFee = ((+this.Conveyance) + (+this.CaseFee) + (+this.ExtraFee)).toString();\r\n } else {\r\n // this.router.navigate([\"Home\"]);\r\n Swal.fire('Oops...', 'Before Create Case Update Bank Case Fees!', 'warning');\r\n this.casetype=\"Select\";\r\n }\r\n }\r\n }).catch((e: any) => {\r\n console.log(\"Getting Error in onCaseChange\");\r\n Swal.fire('Oops...', 'something went wrong', 'error');\r\n });\r\n }\r\n }\r\n else {\r\n this.PaymentType = \"Cash\";\r\n this.IsExtraFeeShow=false;\r\n this.IsconvFeeShow=false;\r\n this.IstotalFeeShow=false;\r\n this.IsapprovalShow=false;\r\n this.IscontactnoShow=false;\r\n this.IsdocShow=false;\r\n this.editabless=true;\r\n this.CaseFee=\"\";\r\n }\r\n }\r\n GetStageDetail() {\r\n const p = this.selectedValuationValue;\r\n const valuationType = this.ISvaluation ? \"1\" : \"2\";\r\n let val: getStage = {\r\n Type: \"New\",\r\n valType: valuationType\r\n }\r\n this.ngxService.start();\r\n ApiService.GetStages(val).then((response: any) => {\r\n this.status = response.data.DATA;\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something Went Wrong In Case Status Please Refresh Page!', 'error')\r\n })\r\n }\r\n bindOldCaseValue() {\r\n \r\n console.log(\"editCaseDetail\", this.editCaseDetail);\r\n if (!this.selectedOldCase) {\r\n this.selectedBankValue = this.editCaseDetail.Bank_ID;\r\n this.selectedBranchValue = this.editCaseDetail.Branch_id;\r\n this.selectedBranchPersonValue = this.editCaseDetail.Branch_person;\r\n const BankText = this.BankDetail.find(val => val.AttributeID === this.selectedBankValue);\r\n this.BankText = BankText.AttributeName;\r\n this.selectedStatus = this.editCaseDetail.Case_Status;\r\n this.selectedValuationValue = this.editCaseDetail.Valuation_typeID;\r\n this.GetBranchPersonDetails(this.selectedBankValue, this.selectedBranchValue, true)\r\n this.GetBranchDetails(this.editCaseDetail.Bank_ID, true);\r\n } else {\r\n this.oldCaseID = this.editCaseDetail.CaseID;\r\n }\r\n this.IsFeeShow = true;\r\n this.isEditCase = true;\r\n this.selectedState = this.editCaseDetail.StateID;\r\n this.district = this.editCaseDetail.District;\r\n\r\n this.applicantName = this.editCaseDetail.Applicant_nameN;\r\n\r\n this.applicantFirst = this.editCaseDetail.ApplicanttitleN;\r\n \r\n this.PinCode = this.editCaseDetail.pin_code;\r\n this.BuildingName = this.editCaseDetail.Building_No;\r\n this.Streat = this.editCaseDetail.Street_Sector;\r\n this.Sector = this.editCaseDetail.SectorN;\r\n this.ContactPersonName = this.editCaseDetail.Contact_persion_Name;\r\n this.MOb1 = this.editCaseDetail.Contact_Persion_Mob1;\r\n this.MOb2 = this.editCaseDetail.Contact_Persion_Mob2;\r\n this.casetype = this.editCaseDetail.Type_Of_Case;\r\n this.landmark = this.editCaseDetail.Land_mark;\r\n this.FileNo = this.editCaseDetail.File_No;\r\n this.PropertyArea = this.editCaseDetail.Area;\r\n \r\n this.StatusRemark = this.editCaseDetail.Case_Status_Remarks;\r\n this.Conveyance = this.editCaseDetail.Conveyance;\r\n this.CaseFee = this.editCaseDetail.ActualFees;\r\n this.ExtraFee = this.editCaseDetail.ExtraFees;\r\n this.TotalFee = this.editCaseDetail.TotalFees;\r\n this.caseVertical = this.editCaseDetail.Case_vertical;\r\n this.ApprovalPerson = this.editCaseDetail.ApprovalPersonName;\r\n this.ContactNo = this.editCaseDetail.ApprovalContact;\r\n this.CaseRemark = this.editCaseDetail.Case_Creation_remark;\r\n this.propertyNo = this.editCaseDetail.PropertyValueN;\r\n this.propertyFirst = this.editCaseDetail.Property_titleN;\r\n this.Block = this.editCaseDetail.Block;\r\n if (this.selectedState) {\r\n const val: IGetCityLocation = {\r\n StateID: this.selectedState,\r\n CityID: \"\",\r\n LocID: \"\",\r\n GetType: \"City\",\r\n }\r\n this.getCityLocationOldCase(val);\r\n this.selectedCity = this.editCaseDetail.cityID;\r\n if (this.selectedCity) {\r\n const val: IGetCityLocation = {\r\n StateID: this.selectedState,\r\n CityID: this.selectedCity,\r\n LocID: \"\",\r\n GetType: \"Location\",\r\n }\r\n this.getCityLocationOldCase(val);\r\n this.selectedLocality = this.editCaseDetail.LocationID;\r\n this.locationChangeFUnctionOldCase();\r\n this.selectedSubLocation = this.editCaseDetail.SubLocalityId;\r\n // this.selectedEngvalue = this.editCaseDetail.Allocated_To;\r\n /* if (this.valEngineer) {\r\n const engVal = this.valEngineer.find(val => val.AttributeID === this.editCaseDetail.Allocated_To);\r\n this.AssignToText = engVal.AttributeName;\r\n } */\r\n\r\n // this.selectedSupvalue = this.editCaseDetail.Supervisor;\r\n /* if (this.valSup) {\r\n const supVal = this.valSup.find(val => val.AttributeID === this.selectedSupvalue);\r\n this.supToText = supVal.AttributeName;\r\n } */\r\n }\r\n this.valuationChange();\r\n this.bindDropdownOnEdit();\r\n }\r\n }\r\n GetEditOldCaseDetail(val: string) {\r\n this.ngxService.start();\r\n \r\n ApiService.getCaseBehalfOfID(val).then((responce: any) => {\r\n this.ngxService.stop();\r\n if (responce.status === 200) {\r\n\r\n if (responce.data) {\r\n\r\n this.editCaseDetail = responce.data;\r\n this.bindOldCaseValue();\r\n }\r\n }\r\n }).catch((e: any) => {\r\n\r\n this.ngxService.stop();\r\n console.log(\"Getting Error In GetEditCaseDetail\");\r\n Swal.fire('Oops...', 'Something went wrong!', 'error');\r\n });\r\n }\r\n GetEditCaseDetail(val: string) {\r\n this.ngxService.start();\r\n \r\n ApiService.getCaseBehalfOfID(val).then((responce: any) => {\r\n this.ngxService.stop();\r\n if (responce.status === 200) {\r\n\r\n if (responce.data) {\r\n\r\n this.editCaseDetail = responce.data;\r\n this.bindPreviousValue();\r\n }\r\n }\r\n }).catch((e: any) => {\r\n\r\n this.ngxService.stop();\r\n console.log(\"Getting Error In GetEditCaseDetail\");\r\n Swal.fire('Oops...', 'Something went wrong!', 'error');\r\n });\r\n }\r\n _handleReaderLoaded(readerEvt) {\r\n var binaryString = readerEvt.target.result;\r\n this.filestring = btoa(binaryString); // Converting binary string data.\r\n }\r\n handleFileSelect(evt: any) {\r\n this.document = evt.target.files;\r\n };\r\n HandleSectionPlaneDoc(evt: any) {\r\n this.sectionPlaneDoc = evt.target.files;\r\n }\r\n HandleApprovelDoc(evt: any) {\r\n this.ApprovelDoc = evt.target.files;\r\n }\r\n\r\n fileToBase64(fileNew) {\r\n return new Promise(resolve => {\r\n let file = fileNew;\r\n let reader = new FileReader();\r\n // Read file content on file loaded event\r\n reader.onload = function (event) {\r\n console.log(event.target);\r\n resolve(event.target);\r\n };\r\n // Convert data to base64 \r\n reader.readAsDataURL(file);\r\n });\r\n };\r\n createCase() {\r\n \r\n const loginID = localStorage.getItem('userID');\r\n let selectedDocID = \"\";\r\n if (this.selectedValuationValue == \"2\") {\r\n this.selectedStatus = \"386\";\r\n }\r\n if (this.selectedItems.length > 0) {\r\n for (const data in this.selectedItems) {\r\n if (data) {\r\n selectedDocID = selectedDocID + ',' + this.selectedItems[data].id;\r\n }\r\n }\r\n selectedDocID = selectedDocID.substr(1);\r\n }\r\n if (this.selectedBankValue == \"\") {\r\n document.getElementById(\"inptBank\").focus();\r\n Swal.fire('Oops...', 'Please Select Bank From DropDown!', 'warning');\r\n } else if (this.selectedBranchValue == \"\") {\r\n document.getElementById(\"inptBranch\").focus();\r\n Swal.fire('Oops...', 'Please Select Branch From DropDown!', 'warning');\r\n } else if (this.selectedBranchPersonValue == \"\") {\r\n document.getElementById(\"inptBranchPerson\").focus();\r\n Swal.fire('Oops...', 'Please Select Branch Person!', 'warning');\r\n } else if (this.applicantName == \"\") {\r\n document.getElementById(\"applicantName\").focus();\r\n Swal.fire('Oops...', 'Please Enter Applicant Name!', 'warning');\r\n } else if (this.selectedState == \"\" || this.selectedState == \"Select\") {\r\n document.getElementById(\"ddState\").focus();\r\n Swal.fire('Oops...', 'Please Select State!', 'warning');\r\n } else if (this.selectedCity == \"\" || this.selectedCity == \"Select\") {\r\n document.getElementById(\"ddCity\").focus();\r\n Swal.fire('Oops...', 'Please Select City!', 'warning');\r\n }\r\n else if (this.selectedLocality == \"\" || this.selectedLocality == \"Select\") {\r\n document.getElementById(\"ddLocality\").focus();\r\n Swal.fire('Oops...', 'Please Select Locality!', 'warning');\r\n }\r\n else if (this.selectedSubLocation == \"\" || this.selectedSubLocation == \"Select\") {\r\n document.getElementById(\"ddSubLocation\").focus();\r\n Swal.fire('Oops...', 'Please Select Sub Location/Building Name!', 'warning');\r\n }\r\n else if (this.PinCode == \"\") {\r\n document.getElementById(\"txtPIn\").focus();\r\n Swal.fire('Oops...', 'Please Enter Pin Code!', 'warning');\r\n }\r\n else if (this.propertyNo == \"\") {\r\n document.getElementById(\"inptPropertyNo\").focus();\r\n Swal.fire('Oops...', 'Please Enter Property No.!', 'warning');\r\n }\r\n else if (this.ContactPersonName == \"\") {\r\n document.getElementById(\"txtContactPerson\").focus();\r\n Swal.fire('Oops...', 'Please Enter Contact Person Name!', 'warning');\r\n }\r\n else if ((this.session.getRoleID!=\"7\") && (this.casetype == \"\" || this.casetype == \"Select\")) {\r\n \r\n document.getElementById(\"ddlCase\").focus();\r\n Swal.fire('Oops...', 'Please Select Case Type!', 'warning');\r\n \r\n }\r\n else {\r\n if(this.session.getRoleID==\"7\"){\r\n this.casetype = \"\"\r\n }\r\n let p: boolean = true;\r\n\r\n if (this.propertyFirst == \"Select\") {\r\n this.propertyFirst = \"\";\r\n }\r\n if (this.selectedValuationValue == \"1\") {\r\n if (this.selectedStatus == \"\" || this.selectedStatus == \"Select\") {\r\n document.getElementById(\"ddlCasestatus\").focus();\r\n p = false;\r\n Swal.fire('Oops...', 'Please Select Case Status!', 'warning');\r\n }\r\n }\r\n if (this.selectedStatus == \"40\") {\r\n /* if (this.selectedEngvalue == \"\") {\r\n p = false;\r\n document.getElementById(\"inptAssignTo\").focus();\r\n Swal.fire('Oops...', 'Please Select Assign to from dropdown!', 'warning');\r\n } else if (this.selectedSupvalue == \"\") {\r\n p = false;\r\n document.getElementById(\"inptSupervisor\").focus();\r\n Swal.fire('Oops...', 'Please Select Supervisor from dropdown!', 'warning');\r\n } */\r\n }\r\n if (p) {\r\n let caseType = \"\";\r\n if (this.isEditCase) {\r\n caseType = \"Update\";\r\n } else {\r\n caseType = \"Insert\";\r\n }\r\n if (this.selectedOldCase) {\r\n caseType = \"Insert\";\r\n }\r\n if(this.session.getRoleID==\"7\"){\r\n caseType = \"Insert\";\r\n }\r\n if(this.radioSelected==\"\"||this.radioSelected==\"undefined\"){\r\n this.radioSelected=\"Billing\"\r\n }\r\n this.ngxService.start();\r\n let data: ICaseCreate = {\r\n CaseID: this.CaseID,\r\n Bank_id: this.selectedBankValue,\r\n branch_id: this.selectedBranchValue,\r\n person_id: this.selectedBranchPersonValue,\r\n ValuationTypeID: this.selectedValuationValue,\r\n ApplicantName_Name: this.applicantFirst + \" \" + this.applicantName,\r\n ApplicanttitleN: this.applicantFirst,\r\n Applicant_nameN: this.applicantName,\r\n Block: this.Block,\r\n BuildingNameN: \"\",\r\n StreatRoadN: this.Streat,\r\n SectorN: this.Sector,\r\n state_id: this.selectedState,\r\n distict: this.district,\r\n City_id: this.selectedCity,\r\n Locality_id: this.selectedLocality,\r\n BuildingNo: this.BuildingName,\r\n propertyno: this.propertyFirst + \" \" + this.propertyNo,\r\n Property_titleN: this.propertyFirst,\r\n PropertyValueN: this.propertyNo,\r\n Streat: this.Streat,\r\n landmark: this.landmark,\r\n SubLocality_id: this.selectedSubLocation,\r\n pincode: this.PinCode,\r\n ContactPersonName: this.ContactPersonName,\r\n Mob1: this.MOb1,\r\n Mob2: this.MOb2,\r\n vertical: this.caseVertical,\r\n casetype: this.casetype,\r\n Assignto: this.selectedEngvalue,\r\n Case_statusID: this.selectedStatus,\r\n supervisorID: this.selectedSupvalue,\r\n StatusRemark: this.StatusRemark,\r\n FileNo: this.FileNo,\r\n Area: this.PropertyArea,\r\n CaseRemark: this.CaseRemark,\r\n Document_id: selectedDocID,\r\n LoginID: loginID,\r\n OldCaseID: this.oldCaseID,\r\n ActualFees: this.CaseFee,\r\n ExtraFees: this.ExtraFee,\r\n TotalFees: this.TotalFee,\r\n Conveyance: this.Conveyance,\r\n ApprovalPersonName: this.ApprovalPerson,\r\n ApprovalContact: this.ContactNo,\r\n ApprovalDocPath: \"0\",\r\n AssignType: \"D\",\r\n usage:this.DDlUsage,\r\n propertytype:this.DDlPropertyType,\r\n Operation: caseType,\r\n PaymentType:this.radioSelected,\r\n Zone_id:\"\",\r\n Vertical_id:\"\",\r\n ENgConv:\"\",\r\n Approval_Remarks:\"\",\r\n FeesType:\"\",\r\n ExtraEngConv:\"\",\r\n ExtraEngConvRemark:\"\",\r\n IsOtherOffice:\"\",\r\n OtherOffice:\"\",\r\n adroitbranch:\"\",\r\n }\r\n this.caseCreate(data);\r\n }\r\n }\r\n }\r\n caseCreate(data: ICaseCreate) {\r\n \r\n ApiService.FtvUpdatenumber(data).then((responce: any) => {\r\n \r\n this.ngxService.stop();\r\n if (responce.status === 200) {\r\n if (this.isEditCase) {\r\n Swal.fire('Thanks...', 'Case Updated Successfully', 'success');\r\n this.router.navigate([\"Home\"]);\r\n } else {\r\n if (responce.data.case_id) {\r\n if ((this.document && this.document.length) || (this.sectionPlaneDoc && this.sectionPlaneDoc.length) || (this.ApprovelDoc && this.ApprovelDoc.length)) {\r\n this.updateDocument(responce.data.case_id);\r\n } else {\r\n Swal.fire('Thanks...', 'Case Created Successfully', 'success');\r\n this.router.navigate([\"Home\"]);\r\n }\r\n }\r\n }\r\n }\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n console.log(\"Getting Error In caseCreate\",e);\r\n Swal.fire('Oops...', 'Something went wrong!', 'error');\r\n });\r\n\r\n }\r\n updateDocument(logID) {\r\n \r\n if (logID) {\r\n if (this.sectionPlaneDoc || this.document) {\r\n \r\n let formData = new FormData();\r\n if (this.document) {\r\n for (let val of this.document) {\r\n formData.append(\"CaseID\",logID);\r\n formData.append(\"imgname\", val.name);\r\n formData.append(\"files\", val);\r\n }\r\n }\r\n if (this.sectionPlaneDoc) {\r\n \r\n for (let val of this.sectionPlaneDoc) {\r\n formData.append(\"CaseID\", logID);\r\n formData.append(\"imgname\", val.name);\r\n formData.append(\"files\", val);\r\n }\r\n // formData.append(\"CaseID\", this.logID);\r\n // formData.append(\"imgname\", this.sanctionPlanDoc.name);\r\n // formData.append(\"files\", this.sanctionPlanDoc);\r\n }\r\n \r\n this.ngxService.start();\r\n ApiService.UpdateDocument(formData).then((responce: any) => {\r\n \r\n if (responce.status === 200) {\r\n // this.IsEditStatus = false;\r\n this.sectionPlaneDoc = undefined;\r\n this.document = undefined;\r\n Swal.fire('Thanks...', 'Case Created Successfully', 'success');\r\n this.router.navigate([\"Home\"]);\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong in document update!', 'error');\r\n });\r\n } else {\r\n Swal.fire('Oops...', 'Please select atleast one document!', 'warning');\r\n }\r\n }\r\n }\r\n /* updateDocument(logID) {\r\n if (logID) {\r\n let formData = new FormData();\r\n formData.append(\"CaseID\", logID);\r\n formData.append(\"DocumentLength\", this.document.length);\r\n if (this.document.length) {\r\n let p: number = 0;\r\n for (let val of this.document) {\r\n formData.append(\"Document\" + p + \"\", val);\r\n p = p + 1;\r\n }\r\n } if (this.sectionPlaneDoc.length) {\r\n for (let val of this.sectionPlaneDoc) {\r\n formData.append(\"sectionPlaneDoc\", val);\r\n }\r\n } if (this.ApprovelDoc.length) {\r\n for (let val of this.ApprovelDoc) {\r\n formData.append(\"ApprovelDoc\", val);\r\n }\r\n }\r\n console.log('Data', formData);\r\n this.ngxService.start();\r\n ApiService.UpdateDocument(formData).then((responce: any) => {\r\n if (responce.status === 200) {\r\n Swal.fire('Thanks...', 'Case Created Successfully', 'success');\r\n this.router.navigate([\"Home\"]);\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong in document update please try again!', 'error');\r\n });\r\n }\r\n } */\r\n onCaseChange(e: any) {\r\n \r\n this.radioSelected=\"Billing\"\r\n e.target.value;\r\n if(e.target.value==\"Select\"||e.target.value==\"\"){\r\n Swal.fire('Oops...', 'Please select case type!', 'warning');\r\n this.IsExtraFeeShow=false;\r\n this.IsconvFeeShow=false;\r\n this.IstotalFeeShow=false;\r\n this.IsapprovalShow=false;\r\n this.IscontactnoShow=false;\r\n this.IsFeeShow=false;\r\n this.IsdocShow=false;\r\n this.IsFeecase=false;\r\n }else{\r\n if (this.selectedBankValue && this.casetype && this.session.UserID) {\r\n const val: IcaseFee = {\r\n CaseTypeID: this.casetype,\r\n LoginID: this.session.UserID,\r\n BankID: this.selectedBankValue,\r\n ZoneID: \"\",\r\n BranchID: \"\",\r\n VerticalID: \"\"\r\n }\r\n this.ngxService.start();\r\n ApiService.CaseFee(val).then((responce: any) => {\r\n \r\n this.ngxService.stop();\r\n if (responce.status === 200) {\r\n if (responce.data != \"\") {\r\n this.IsFeeShow = true;\r\n this.IsExtraFeeShow=true;\r\n this.IsconvFeeShow=true;\r\n this.IstotalFeeShow=true;\r\n this.IsapprovalShow=true;\r\n this.IscontactnoShow=true;\r\n this.IsdocShow=true;\r\n this.IsFeecase=true;\r\n this.CaseFee = responce.data;\r\n this.TotalFee = ((+this.Conveyance) + (+this.CaseFee) + (+this.ExtraFee)).toString();\r\n } else {\r\n // this.router.navigate([\"Home\"]);\r\n Swal.fire('Oops...', 'Before Create Case Update Bank Case Fees!', 'warning');\r\n this.casetype=\"Select\";\r\n this.IsExtraFeeShow=false;\r\n this.IsconvFeeShow=false;\r\n this.IstotalFeeShow=false;\r\n this.IsapprovalShow=false;\r\n this.IscontactnoShow=false;\r\n this.IsFeeShow=false;\r\n this.IsdocShow=false;\r\n this.IsFeecase=false;\r\n }\r\n }\r\n }).catch((e: any) => {\r\n console.log(\"Getting Error in onCaseChange\");\r\n Swal.fire('Oops...', 'something went wrong', 'error');\r\n });\r\n }\r\n }\r\n }\r\n\r\n onStateChange(e: any) {\r\n const p = e.target.value;\r\n const sk = this.selectedState\r\n if (this.selectedState) {\r\n const val: IGetCityLocation = {\r\n StateID: this.selectedState,\r\n CityID: \"\",\r\n LocID: \"\",\r\n GetType: \"City\",\r\n }\r\n this.getCityLocation(val);\r\n }\r\n }\r\n onCityChange(e: any) {\r\n const p = e.target.value;\r\n if (this.selectedCity) {\r\n const val: IGetCityLocation = {\r\n StateID: this.selectedState,\r\n CityID: this.selectedCity,\r\n LocID: \"\",\r\n GetType: \"Location\",\r\n }\r\n this.getCityLocation(val);\r\n }\r\n }\r\n onLocationChange(e) {\r\n const p = e.target.value;\r\n this.locationChangeFUnction();\r\n }\r\n locationChangeFUnction() {\r\n if (this.selectedLocality) {\r\n const val: IGetCityLocation = {\r\n StateID: this.selectedState,\r\n CityID: this.selectedCity,\r\n LocID: this.selectedLocality,\r\n GetType: \"SubLocation\",\r\n }\r\n const valEng: IGetCityLocation = {\r\n StateID: this.selectedState,\r\n CityID: this.selectedCity,\r\n LocID: this.selectedLocality,\r\n GetType: \"Engineer\",\r\n }\r\n const valSup: IGetCityLocation = {\r\n StateID: this.selectedState,\r\n CityID: this.selectedCity,\r\n LocID: this.selectedLocality,\r\n GetType: \"Sup\",\r\n }\r\n this.getCityLocation(val);\r\n this.getCityLocation(valEng);\r\n this.getCityLocation(valSup);\r\n }\r\n }\r\n locationChangeFUnctionOldCase() {\r\n if (this.selectedLocality) {\r\n const val: IGetCityLocation = {\r\n StateID: this.selectedState,\r\n CityID: this.selectedCity,\r\n LocID: this.selectedLocality,\r\n GetType: \"SubLocation\",\r\n }\r\n const valEng: IGetCityLocation = {\r\n StateID: this.selectedState,\r\n CityID: this.selectedCity,\r\n LocID: this.selectedLocality,\r\n GetType: \"Engineer\",\r\n }\r\n const valSup: IGetCityLocation = {\r\n StateID: this.selectedState,\r\n CityID: this.selectedCity,\r\n LocID: this.selectedLocality,\r\n GetType: \"Sup\",\r\n }\r\n this.getCityLocationOldCase(val);\r\n this.getCityLocationOldCase(valEng);\r\n this.getCityLocationOldCase(valSup);\r\n }\r\n }\r\n onSubLocationChange(e) {\r\n const valPinCode: IGetCityLocation = {\r\n StateID: this.selectedState,\r\n CityID: this.selectedCity,\r\n LocID: this.selectedLocality,\r\n GetType: \"pincode\",\r\n }\r\n this.getCityLocation(valPinCode);\r\n }\r\n onBankChange(e: any) {\r\n \r\n const newVal = this.getSelectedBankByName(e.target.value);\r\n const val = newVal.AttributeID;\r\n this.selectedBankValue = val;\r\n this.BranchText = \"\";\r\n this.BranchPersonText = \"\";\r\n this.selectedValuationValue = \"Select\";\r\n if (val) {\r\n this.GetBranchDetails(val, false);\r\n }\r\n this.getValuationDetailsDynamically(newVal);\r\n }\r\n getValuationDetailsDynamically(data: any) {\r\n const osv = data.OSV;\r\n const ftv = data.FTV;\r\n if (osv == \"T\") {\r\n this.selectedValuationValue = \"1\";\r\n } if (ftv == \"T\") {\r\n this.selectedValuationValue = \"2\";\r\n }\r\n this.valuationChange();\r\n }\r\n\r\n onBranchChange(e) {\r\n \r\n const p = e.target.value;\r\n const BranchVal = this.getSelectedBranchByName(e.target.value);\r\n const BankID = this.selectedBankValue;\r\n this.selectedBranchValue = BranchVal.AttributeID;\r\n if (this.selectedBranchValue) {\r\n this.BranchPersonText='';\r\n this.GetBranchPersonDetails(BankID, this.selectedBranchValue, false);\r\n }\r\n }\r\n onBranchPersonChange(e) {\r\n const BranchPersonVal = this.getBranchPersoneValue(e.target.value);\r\n this.selectedBranchPersonValue = BranchPersonVal.AttributeID;\r\n }\r\n onEngChange(e) {\r\n \r\n const Val = this.getEngValue(e.target.value);\r\n if(e.target.value==\"\")\r\n {this.selectedEngvalue=\"0\";}\r\n else{ this.selectedEngvalue = Val.AttributeID;}\r\n \r\n }\r\n onSupChange(e) {\r\n const Val = this.getSupValue(e.target.value);\r\n if(e.target.value==\"\")\r\n {this.selectedSupvalue=\"0\";}\r\n else{\r\n this.selectedSupvalue = Val.AttributeID;\r\n }\r\n }\r\n getEngValue(selectedName: string) {\r\n return this.valEngineer.find(val => val.AttributeName === selectedName);\r\n }\r\n getSupValue(selectedName: string) {\r\n return this.valSup.find(val => val.AttributeName === selectedName);\r\n }\r\n getBranchPersoneValue(selectedName: string) {\r\n return this.BranchPersonDetail.find(val => val.AttributeName === selectedName);\r\n }\r\n getSelectedBankByName(selectedName: string) {\r\n return this.BankDetail.find(val => val.AttributeName === selectedName);\r\n }\r\n getSelectedBranchByName(selectedName: string) {\r\n return this.BranchDetail.find(val => val.AttributeName === selectedName);\r\n }\r\n getCityLocation(val: IGetCityLocation) {\r\n\r\n this.ngxService.start();\r\n ApiService.GetCityLocation(val).then((responce: any) => {\r\n this.ngxService.stop();\r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n if (val.GetType === \"City\") {\r\n this.CityVal = responce.data.DATA;\r\n }\r\n else if (val.GetType === \"Location\") {\r\n this.LocationVal = responce.data.DATA;\r\n }\r\n else if (val.GetType === \"SubLocation\") {\r\n this.SubLocationVal = responce.data.DATA;\r\n }\r\n else if (val.GetType === \"pincode\") {\r\n if (responce.data.DATA) {\r\n console.log(\"Getting Error in pinCode\", responce.data.DATA[0]);\r\n this.PinCode = responce.data.DATA[0].AttributeName;\r\n }\r\n console.log(this.PinCode);\r\n }\r\n else if (val.GetType === \"Engineer\") {\r\n this.valEngineer = responce.data.DATA;\r\n console.log(\"Getting Error in engVal\");\r\n if (this.isEditCase) {\r\n const engVal = this.valEngineer.find(val => val.AttributeID === this.editCaseDetail.Allocated_To);\r\n console.log(\"Getting Error in engVal\", engVal);\r\n if (engVal) {\r\n this.AssignToText = engVal.AttributeName;\r\n }\r\n }\r\n }\r\n else if (val.GetType === \"Sup\") {\r\n this.valSup = responce.data.DATA;\r\n console.log(\"Getting Error in supVal1\");\r\n if (this.isEditCase) {\r\n const supVal = this.valSup.find(val => val.AttributeID === this.selectedSupvalue);\r\n console.log(\"Getting Error in supVal\", supVal);\r\n if (supVal) {\r\n this.supToText = supVal.AttributeName;\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n console.log(\"Getting Error in getCityLocation\");\r\n Swal.fire('Oops...', 'something went wrong', 'error');\r\n });\r\n }\r\n getCityLocationOldCase(val: IGetCityLocation) {\r\n\r\n this.ngxService.start();\r\n ApiService.GetCityLocation(val).then((responce: any) => {\r\n this.ngxService.stop();\r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n if (val.GetType === \"City\") {\r\n this.CityVal = responce.data.DATA;\r\n }\r\n else if (val.GetType === \"Location\") {\r\n this.LocationVal = responce.data.DATA;\r\n }\r\n else if (val.GetType === \"SubLocation\") {\r\n this.SubLocationVal = responce.data.DATA;\r\n }\r\n else if (val.GetType === \"pincode\") {\r\n if (responce.data.DATA) {\r\n console.log(\"Getting Error in pinCode\", responce.data.DATA[0]);\r\n this.PinCode = responce.data.DATA[0].AttributeName;\r\n }\r\n console.log(this.PinCode);\r\n }\r\n else if (val.GetType === \"Engineer\") {\r\n this.valEngineer = responce.data.DATA;\r\n console.log(\"Getting Error in engVal\");\r\n }\r\n else if (val.GetType === \"Sup\") {\r\n this.valSup = responce.data.DATA;\r\n console.log(\"Getting Error in supVal1\"); \r\n }\r\n }\r\n }\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n console.log(\"Getting Error in getCityLocation\");\r\n Swal.fire('Oops...', 'something went wrong', 'error');\r\n });\r\n }\r\n getState(val: string) {\r\n this.ngxService.start();\r\n ApiService.GetMaster(val).then((responce: any) => {\r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n if (val === \"State\") {\r\n this.state = responce.data.DATA;\r\n }\r\n if (val === \"Documents\") {\r\n if (responce.data.DATA) {\r\n if (responce.data.DATA.length > 0) {\r\n for (const value of responce.data.DATA) {\r\n let docVal = {\r\n id: Number(value.AttributeID),\r\n text: value.AttributeName\r\n }\r\n this.dropdownList1.push(docVal);\r\n }\r\n this.dropdownList = this.dropdownList1;\r\n if (this.isEditCase) {\r\n console.log(\"this is edit case\");\r\n\r\n }\r\n }\r\n }\r\n }\r\n if (val === \"CaseType\") {\r\n this.LoadCaseType = responce.data.DATA;\r\n }\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n console.log(\"Getting Error in getState\");\r\n Swal.fire('Oops...', 'something went wrong', 'error');\r\n });\r\n }\r\n bindDropdownOnEdit() {\r\n try {\r\n setTimeout(() => {\r\n if (this.editCaseDetail.Documents) {\r\n const item = this.editCaseDetail.Documents;\r\n const valArray = item.split(',')\r\n for (const valItem in valArray) {\r\n const supVal = this.dropdownList.find(value => value.id === +(valArray[valItem]));\r\n if (supVal) {\r\n this.newSelectedItems.push(supVal)\r\n }\r\n }\r\n this.selectedItems = this.newSelectedItems;\r\n }\r\n }, 3000);\r\n }\r\n catch (error) {\r\n console.log(\"Error IS \", error);\r\n }\r\n }\r\n GetBankDetails() {\r\n let p: IBankDetail = {\r\n userid: this.session.UserID,\r\n BankID: \"\",\r\n BranchID: \"\",\r\n RoleID: this.session.getRoleID,\r\n GetType: \"Bank\",\r\n }\r\n this.ngxService.start();\r\n ApiService.GetBankDetails(p).then((responce: any) => {\r\n\r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n this.BankDetail = responce.data.DATA;\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n console.log(\"Getting Error In GetBankDetails\");\r\n Swal.fire('Oops...', 'something went wrong', 'error');\r\n });\r\n }\r\n \r\n GetUsageDataNew(){\r\n this.propertyTypeNEw=\"Select\";\r\n this.GetUsageData(\"Usage\")\r\n }\r\n GetUsageDataNewpro(){\r\n this.propertyTypeNEw=\"Select\";\r\n this.GetUsageData(\"propertytype\")\r\n }\r\n GetUsageData(e: any) {\r\n \r\n this.ngxService.start();\r\n let val: IUsage;\r\n let callAPI: boolean = true;\r\n if (e == \"Usage\") {\r\n val = {\r\n CaseID: \" \",\r\n type: \"Usage\",\r\n ID: \"\"\r\n }\r\n } else {\r\n if (this.DDlUsage == \"Select\") {\r\n callAPI = false;\r\n }\r\n val = {\r\n CaseID: \"\",\r\n type: \"propertytype\",\r\n ID: this.DDlUsage\r\n }\r\n }\r\n if (callAPI) { \r\n ApiService.GetUsageData(val).then((responce: any) => {\r\n \r\n if (responce.status == 200) { \r\n if (responce.data) {\r\n if (e == \"Usage\") {\r\n this.DDLUsageData = responce.data.MasterData;\r\n } else {\r\n this.DDLPropertyData = responce.data.MasterData;\r\n let p=this.propertyTypeNEw;\r\n this.DDlPropertyType = this.propertyTypeNEw;\r\n this.showMultidropDown();\r\n }\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n // Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n console.log(\"Error In GetUsageData\",JSON.stringify(val))\r\n });\r\n }\r\n }\r\n showMultidropDown() {\r\n if (this.DDlUsage == \"5\") {\r\n $('#ddlPropertyType').attr('multiple', 'multiple');\r\n $('#ddlPropertyType').attr('title', 'You can select multiple value using CTRL+value');\r\n } else {\r\n $('#ddlPropertyType').removeAttr('multiple');\r\n $('#ddlPropertyType').removeAttr('title');\r\n }\r\n if (this.propertyTypeNEw != \"Select\") {\r\n\r\n var dataarray = this.propertyTypeNEw.split(\",\");\r\n $('#ddlPropertyType').val(dataarray);\r\n $('#ddlPropertyType').multiselect(\"refresh\");\r\n }\r\n }\r\n\r\n\r\n GetBranchPersonDetails(bankID: string, BranchID: string, isEdit: boolean) {\r\n \r\n let p: IBankDetail = {\r\n userid: this.session.UserID,\r\n BankID: bankID,\r\n BranchID: BranchID,\r\n RoleID: this.session.getRoleID,\r\n GetType: \"Person\",\r\n }\r\n this.ngxService.start();\r\n \r\n ApiService.GetBankDetails(p).then((responce: any) => {\r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n this.BranchPersonDetail = responce.data.DATA;\r\n if (isEdit && !this.selectedOldCase) {\r\n const BankText = this.BranchPersonDetail.find(val => val.AttributeID === this.editCaseDetail.Branch_person);\r\n this.BranchPersonText = BankText.AttributeName;\r\n }\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n console.log(\"Getting Error In GetBranchPersonDetails\");\r\n Swal.fire('Oops...', 'something went wrong', 'error');\r\n });\r\n }\r\n GetBranchDetails(BankID: string, isEdit: boolean) {\r\n let p: IBankDetail = {\r\n userid: this.session.UserID,\r\n BankID: BankID,\r\n BranchID: \"\",\r\n RoleID: this.session.getRoleID,\r\n GetType: \"Branch\",\r\n }\r\n this.ngxService.start();\r\n \r\n ApiService.GetBankDetails(p).then((responce: any) => {\r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n this.BranchDetail = responce.data.DATA;\r\n if (isEdit) {\r\n const branchText = this.BranchDetail.find(val => val.AttributeID === this.selectedBranchValue);\r\n this.BranchText = branchText.AttributeName;\r\n }\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n console.log(\"Get Error In GetBranchDetails\");\r\n Swal.fire('Oops...', 'something went wrong', 'error');\r\n });\r\n }\r\n onItemSelect(item: any) {\r\n let p = this.selectedItems.length;\r\n console.log(item);\r\n }\r\n onSelectAll(items: any) {\r\n console.log(items);\r\n }\r\n onDeSelect(items: any) {\r\n this.deleteMsg(items.id)\r\n }\r\n deleteMsg(msg: string) {\r\n }\r\n HideModel() {\r\n this.IsPopUp = false;\r\n }\r\n checkValue(e: any) {\r\n const val = e.currentTarget.value;\r\n this.IsPopUp = false;\r\n if (val) {\r\n this.selectedOldCase = true;\r\n this.GetEditOldCaseDetail(val);\r\n }\r\n console.log(e);\r\n }\r\n searchOldCases() {\r\n \r\n this.ngxService.start();\r\n let val: searchOldCases = {\r\n Applicant_Name: this.applicantName,\r\n Property_No: this.propertyNo,\r\n Building_No: this.BuildingName,\r\n Street_Sector: this.Streat,\r\n Land_mark: this.landmark,\r\n City: this.selectedCity,\r\n Contact_Persion_Mob1: this.MOb1,\r\n Contact_Persion_Mob2: this.MOb2\r\n }\r\n let p: boolean = false;\r\n if (this.applicantName != \"\" || this.propertyNo != \"\" || this.BuildingName != \"\" || this.Streat != \"\" || this.landmark != \"\" || this.selectedCity != \"Select\" || this.MOb1 != \"\" || this.MOb2 != \"\") {\r\n p = true;\r\n if (this.selectedCity == \"Select\") {\r\n val.City = \"\";\r\n } \r\n }\r\n if (p) {\r\n ApiService.SearchOldCases(val).then((responce: any) => { \r\n \r\n this.HeaderText = \"Please Select Case\";\r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n this.IsPopUp = true;\r\n this.GridOldCases = responce.data.DATA;\r\n } else {\r\n Swal.fire('Oops...', 'No Data Found!', 'warning');\r\n }\r\n }\r\n else{\r\n Swal.fire( 'No Data Found!', 'warning');\r\n // this.IsPopUp = true;\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'something went wrong', 'error');\r\n });\r\n }\r\n else {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'please add at least one value', 'warning');\r\n }\r\n }\r\n}\r\n\r\n\r\n","module.exports = \"\\r\\n\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
    \\r\\n
    \\r\\n
  • \\r\\n Allocation\\r\\n
  • \\r\\n
    \\r\\n
    \\r\\n
  • \\r\\n Review\\r\\n
  • \\r\\n
    \\r\\n
    \\r\\n
  • \\r\\n Area Details\\r\\n
  • \\r\\n
    \\r\\n
    \\r\\n
  • \\r\\n Published\\r\\n
  • \\r\\n
    \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
Case UID {{element.CaseUID}} Name {{element.Name}} Mobile {{element.Mobile}} Bank {{element.Bank}} Location {{element.Location}} Case Action {{element.CaseStatus}} Engineer Status {{element.Engstatus}} CR.Date {{element.CrDate}} Action \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
Case UID {{element.CaseUID}} Name {{element.Name}} Mobile {{element.Mobile}} Bank {{element.Bank}} Location {{element.Location}} Case Action {{element.CaseStatus}} Engineer {{element.Engineer}} Supervisor {{element.supervisor}} Status Remark {{element.StatusRemark}} Eng Status {{element.Engstatus}} CR.Date {{element.CrDate}} Action \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
Case UID {{element.CaseUID}} Name {{element.Name}} Mobile {{element.Mobile}} Bank {{element.Bank}} Location {{element.Location}} Case Action {{element.CaseStatus}} Engineer {{element.Engineer}} Supervisor {{element.supervisor}} CR.Date {{element.CrDate}} QC Date {{element.QCDATE}} Action \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
Case UID {{element.caseuid}} Name {{element.appname}} Bank {{element.bank}} Location {{element.location}} Case Type {{element.casetype}} Valuation Type {{element.valuationtype}} Engineer {{element.Allocated_To}} Reopen Remark {{element.Case_Reopen_Remarks}} CR.Date {{element.crdate}} Action \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n

{{HeaderText}}

\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n

Send Mail

\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\"","import { Component, OnInit, Renderer2, ElementRef, Directive,ViewChild } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { ApiService } from '../service/service';\r\nimport { SessionService } from '../service/sessionGlobalVar';\r\nimport { IGridInput, IGetCityLocation, IUpdateStatus, getStage, IsendMail,IsgetMail } from '../service/type'\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport {MatPaginator,MatTableDataSource,MatSort,Sort} from '@angular/material';\r\nimport Swal from 'sweetalert2';\r\nimport * as Excel from 'exceljs/dist/exceljs.min.js';\r\nimport * as FileSaver from 'file-saver';\r\nimport { DomSanitizer } from '@angular/platform-browser';\r\ndeclare const $: any;\r\n@Component({\r\n selector: 'app-home',\r\n templateUrl: './home.component.html',\r\n styleUrls: []\r\n})\r\n/* @Directive({\r\n selector: '[rootSelecter]'\r\n}) */\r\n\r\nexport class HomeComponent implements OnInit {\r\n GridDetail: [];\r\n GridPublish: [];\r\n GridReview: [];\r\n NewMainGrid: any;\r\n isShowAllocation: boolean = true;\r\n isShowReview: boolean;\r\n isShowPublish: boolean;\r\n isnewReview: boolean = false;\r\n IsEditStatus: boolean = false;\r\n datatablerefersh:boolean=true;\r\n valEngineer: any;\r\n status: any;\r\n selectedStatus: string = \"0\";\r\n selectedEngvalue: string = \"\";\r\n selectedSupvalue:string=\"\";\r\n HeaderText: string;\r\n IsDocument: boolean = false;\r\n Isasign:boolean=false;\r\n Component1Variable: string = \"Component1VariableSent\";\r\n logID: string;\r\n inputRemark: string = \"\";\r\n msgType: string;\r\n updatedFiles: any;\r\n typeOfStage: string;\r\n sanctionPlanDoc: any;\r\n caseID: string;\r\n IsSendMailModel: boolean = false;\r\n sendMailForm: string;\r\n SendBranchPerson: string;\r\n SendBranchPersonemail:string;\r\n MailSubject: string;\r\n MailBody: string;\r\n mailBankID:string;\r\n typed:string;\r\n valSup: any = \"\";\r\n getdocurl :any;\r\n quiid:string;\r\n displayedColumnsAllocation: string[] = ['CaseUID', 'name','mobileno', 'Bank', 'Location','CaseAction','EngineerStatus','CRDate','Action'];\r\n displayedColumnsReview: string[] = ['CaseUID', 'name','mobileno', 'Bank', 'Location','CaseAction','Engineer','supervisor','StatusRemark','engstatus','CRDate','Action'];\r\n displayedColumnsPublish: string[] = ['CaseUID', 'name','mobileno', 'Bank', 'Location','CaseAction','Engineer','supervisor','CRDate','qcdate','Action'];\r\n displayedColumnsAreaDetail: string[] = ['CaseUID', 'name', 'Bank', 'Location','CaseAction','ValuationType','Engineer','reopenremark','CRDate','Action'];\r\n\r\n dataSourceAllocation = new MatTableDataSource;\r\n dataSourceReview=new MatTableDataSource;\r\n dataSourcePublish=new MatTableDataSource;\r\n dataSourceAreaDetail=new MatTableDataSource;\r\n fileUrl: any;\r\n applyFilter(filterValue: string) {\r\n this.dataSourceAllocation.filter = filterValue.trim().toLowerCase();\r\n this.dataSourceReview.filter = filterValue.trim().toLowerCase();\r\n this.dataSourcePublish.filter = filterValue.trim().toLowerCase();\r\n this.dataSourceAreaDetail.filter = filterValue.trim().toLowerCase();\r\n }\r\n \r\n @ViewChild(MatPaginator) paginator: MatPaginator;\r\n @ViewChild(MatSort) sort: MatSort;\r\n constructor(private router: Router, private service: ApiService, private session: SessionService, private ngxService: NgxUiLoaderService, private renderer: Renderer2, private el: ElementRef,private sanitizer: DomSanitizer) {\r\n \r\n /* if (val) {\r\n if (+val == 7) {\r\n this.router.navigate([\"BankCaseDetails\"]);\r\n }\r\n else if (+val == 3 || +val == 10) {\r\n this.quiid=\"1\";\r\n this.getMainGridData(\"1\");\r\n } else if (+val == 5 || +val==11) {\r\n this.router.navigate([\"SupHome\"]);\r\n } else if (+val == 13) {\r\n this.router.navigate([\"RegionalOffice\"]);\r\n }\r\n } */\r\n }\r\n ngOnInit() {\r\n debugger;\r\n /* const p = this.el.nativeElement;\r\n this.renderer.addClass(this.el.nativeElement, 'abc'); */\r\n let val = localStorage.getItem(\"roleID\");\r\n const adoff=localStorage.getItem(\"AdroitOffice\");\r\n if (val) {\r\n if (+val == 7) {\r\n this.router.navigate([\"BankCaseDetails\"]);\r\n }\r\n else if (+val == 22) {\r\n this.router.navigate([\"BankCaseDetails\"]);\r\n }\r\n else if (+val == 3 || +val == 10 || +val == 24) {\r\n // if(+adoff==1 || +adoff==39){\r\n if(+adoff!=0){\r\n this.router.navigate([\"ReportAnalysis\"]);\r\n }else{}\r\n this.quiid=\"1\";\r\n this.getMainGridData(\"1\");\r\n } else if (+val == 5 || +val==11) {\r\n this.router.navigate([\"SupHome\"]);\r\n }\r\n else if (+val == 13) {\r\n this.router.navigate([\"RegionalOffice\"]);\r\n }\r\n }\r\n }\r\n logDetail(e) {\r\n this.logID = e;\r\n if (this.logID) {\r\n this.router.navigate([\"/logDetails\", { id: this.logID }]);\r\n }\r\n }\r\n\r\n openInNewTab(href: any) {\r\n Object.assign(document.createElement('a'), {\r\n target: '_blank',\r\n href,\r\n }).click();\r\n }\r\n base64toPDF(data:string) {\r\n var bufferArray = this.base64ToArrayBuffer(data);\r\n var blobStore = new Blob([bufferArray], { type: \"application/pdf\" });\r\n /* if (window.navigator && window.navigator.msSaveOrOpenBlob) {\r\n window.navigator.msSaveOrOpenBlob(blobStore);\r\n \r\n return;\r\n } */\r\n var data = window.URL.createObjectURL(blobStore);\r\n // this.fileUrl = this.sanitizer.bypassSecurityTrustResourceUrl(window.URL.createObjectURL(blobStore));\r\n window.open(data);\r\n}\r\n\r\n base64ToArrayBuffer(data:any) {\r\n var bString = window.atob(data);\r\n var bLength = bString.length;\r\n var bytes = new Uint8Array(bLength);\r\n for (var i = 0; i < bLength; i++) {\r\n var ascii = bString.charCodeAt(i);\r\n bytes[i] = ascii;\r\n }\r\n return bytes;\r\n};\r\npublishView(e: any){\r\n let data = e;\r\n let val = {\r\n CaseID:data\r\n }\r\n ApiService.ViewReport(val).then((responce: any) => {\r\n if (responce.status === 200) {\r\n debugger;\r\n if(responce.data.status==\"202\"){\r\n this.openInNewTab(responce.data.data1);\r\n }\r\n else {\r\n this.base64toPDF(responce.data.Data);\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n}\r\n \r\n encrypt(key) {\r\n var result = \"\";\r\n const value = \"b89d20fcabec4256b80c68a633f1d9e1\";\r\n for (let i = 0; i < value.length; ++i) {\r\n result += String.fromCharCode(key[i % key.length] ^ value.charCodeAt(i));\r\n }\r\n return result;\r\n }\r\n PublishReopen(e) {\r\n this.HeaderText = \"Update Action\";\r\n this.logID = e;\r\n if (this.logID) {\r\n this.getStage();\r\n this.IsEditStatus = true;\r\n this.IsDocument = false;\r\n this.msgType = \"Case status changed from Publish\";\r\n }\r\n }\r\n HideModelsendMail(){\r\n this.IsSendMailModel = false;\r\n }\r\n sendReminderUpdate(e) {\r\n \r\n const val: IsendMail = {\r\n caseId : this.caseID,\r\n EmailTo: this.sendMailForm,\r\n Sublect: this.MailSubject,\r\n ApplicantName: this.SendBranchPerson,\r\n Body: this.MailBody,\r\n LoginID: this.session.UserID,\r\n BankID: this.mailBankID,\r\n type:\"update\"\r\n }\r\n this.ngxService.start();\r\n \r\n ApiService.MailReminderUpdate(val).then((responce: any)=>{\r\n \r\n if (responce.status === 200) {\r\n Swal.fire('Thanks', responce.data.EmailTo, 'success');\r\n this.getMainGridData(this.quiid);\r\n this.IsSendMailModel = false;\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n \r\n }\r\n\r\n sendReminder(e: any) {\r\n \r\n this.IsSendMailModel = true;\r\n const val: IsgetMail = {\r\n caseid : e,\r\n type:\"get\"\r\n }\r\n this.caseID = e;\r\n ApiService.GetMailReminderValue(val).then((responce: any) => {\r\n \r\n if (responce.status === 200) {\r\n let val = responce.data;\r\n let sender=localStorage.getItem(\"Senderemail\");\r\n this.sendMailForm = val.EmailTo;\r\n this.SendBranchPerson = val.ApplicantName;\r\n this.SendBranchPersonemail=sender;\r\n this.MailSubject = val.Sublect;\r\n this.MailBody = val.Body;\r\n this.mailBankID=val.BankID\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n\r\n\r\n document(e) {\r\n this.logID = e.currentTarget.parentElement.firstElementChild.value;\r\n alert(\"Documnt\");\r\n }\r\n \r\n editCase(e) {\r\n this.logID = e;\r\n const val = window.btoa(this.logID);\r\n if (this.logID) {\r\n this.router.navigate([\"/Casecreation\", { id: val }]);\r\n }\r\n }\r\n HideModel() {\r\n this.IsEditStatus = false;\r\n }\r\n\r\n AreaDetailsCase(e) { \r\n this.logID = e;\r\n const val = window.btoa(this.logID);\r\n if (this.logID) {\r\n this.router.navigate([\"/AreaDetails\", { id: val }]);\r\n }\r\n }\r\n\r\n editStatusAllocation(e) {\r\n this.HeaderText = \"Update Action\";\r\n this.logID = e;\r\n if (this.logID) {\r\n this.getStage();\r\n this.IsEditStatus = true;\r\n this.IsDocument = false;\r\n this.msgType = \"Case status changed from Allocation\";\r\n }\r\n }\r\n editStatusReview(e) {\r\n this.HeaderText = \"Update Action\";\r\n this.logID = e;\r\n if (this.logID) {\r\n this.getStage();\r\n this.IsEditStatus = true;\r\n this.IsDocument = false;\r\n this.msgType = \"Case status changed from Review\";\r\n }\r\n }\r\nonchangestatussup(e: any){\r\n \r\n if (this.selectedStatus==\"40\"){\r\n const val: IGetCityLocation = {\r\n StateID: this.session.UserID,\r\n CityID: \"\",\r\n LocID: \"\",\r\n GetType: \"Engineer\",\r\n }\r\n this.getCityLocation(val);\r\n}else\r\n{\r\n const val: IGetCityLocation = {\r\n StateID: this.session.UserID,\r\n CityID: \"\",\r\n LocID: \"\",\r\n GetType: \"Sup\",\r\n }\r\n this.getCityLocation(val);\r\n}\r\n\r\n}\r\n updateStatus() {\r\n \r\n if (this.logID) {\r\n if (this.selectedStatus == \"0\" || this.selectedStatus == \"\") {\r\n Swal.fire('Oops...', 'Please Select Action Type!', 'warning');\r\n } \r\n else if (this.selectedEngvalue == \"\" && (this.selectedStatus==\"40\" || this.selectedStatus==\"48\")) {\r\n Swal.fire('Oops...', 'Please Select user.!', 'warning');\r\n } else {\r\n const val: IUpdateStatus = {\r\n Case_id: this.logID,\r\n CaseStatus: this.selectedStatus,\r\n statusRemark: this.inputRemark,\r\n Assignto: this.selectedEngvalue,\r\n Message: this.msgType,\r\n LoginID: this.session.UserID\r\n }\r\n this.ngxService.start();\r\n \r\n ApiService.UpdateStatus(val).then((responce: any) => {\r\n \r\n if (responce.status === 200) {\r\n this.IsEditStatus = false;\r\n this.selectedStatus = \"0\";\r\n this.selectedEngvalue = \"\";\r\n this.inputRemark = \"\";\r\n Swal.fire('Success', 'Status Updated Sucessfully', 'success');\r\n this.getMainGridData(this.quiid);\r\n \r\n \r\n if (responce.data) {\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong in status Update!', 'error');\r\n });\r\n }\r\n }\r\n }\r\n handleFileSelect(evt) {\r\n this.updatedFiles = evt.target.files;\r\n };\r\n handleSanctionPlanDoc(evt) {\r\n this.sanctionPlanDoc = evt.target.files;\r\n }\r\n updateDocument() {\r\n \r\n if (this.logID) {\r\n if (this.sanctionPlanDoc || this.updatedFiles) {\r\n \r\n let formData = new FormData();\r\n if (this.updatedFiles) {\r\n for (let val of this.updatedFiles) {\r\n formData.append(\"CaseID\", this.logID);\r\n formData.append(\"imgname\", val.name);\r\n formData.append(\"files\", val);\r\n }\r\n }\r\n if (this.sanctionPlanDoc) {\r\n formData.append(\"CaseID\", this.logID);\r\n formData.append(\"imgname\", this.sanctionPlanDoc[0].name);\r\n formData.append(\"files\", this.sanctionPlanDoc[0]);\r\n }\r\n \r\n this.ngxService.start();\r\n ApiService.UpdateDocument(formData).then((responce: any) => {\r\n \r\n \r\n if (responce.status === 200) {\r\n this.IsEditStatus = false;\r\n this.sanctionPlanDoc = undefined;\r\n this.updatedFiles = undefined;\r\n Swal.fire('Success...', 'Upload Document Sucessfully!', 'success');\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong in document update!', 'error');\r\n });\r\n } else {\r\n Swal.fire('Oops...', 'Please select atleast one document!', 'warning');\r\n }\r\n }\r\n }\r\nDeleteDoc(e){\r\n \r\n this.ngxService.start();\r\n let val = {\r\n Case_id: this.logID,\r\n Status: \"\",\r\n FilePath: e,\r\n Type: \"doc\",\r\n Message: \"\",\r\n LoginID: this.session.UserID\r\n }\r\n \r\n ApiService.DeleteDocument(val).then((responce: any) => {\r\n if (responce.status == 200) { \r\n this.IsEditStatus = false;\r\n Swal.fire('Success...', 'Delete Document Sucessfully!', 'success');\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n}\r\n\r\n addDoc(e) {\r\n \r\n this.logID = e;\r\n this.HeaderText = \"Upload Document\";\r\n if (this.logID) {\r\n this.IsEditStatus = true;\r\n this.IsDocument = true;\r\n this.ngxService.start();\r\n ApiService.SupSidebar(this.logID).then((responce: any) => {\r\n \r\n if (responce.status == 200) {\r\n if (responce.data) { \r\n this.getdocurl=responce.data.CaseDoc;\r\n for (const Dvalue in responce.data.CaseDoc) {\r\n \r\n let docValss = {\r\n url: this.getdocurl[Dvalue].url,\r\n name: this.getdocurl[Dvalue].name\r\n }\r\n this.getdocurl[Dvalue] = docValss;\r\n }\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n }\r\n \r\n\r\n onSupChange(e) {\r\n const Val = this.getSupValue(e.target.value);\r\n this.selectedSupvalue = Val.AttributeID;\r\n }\r\n getSupValue(selectedName: string) {\r\n return this.valSup.find(val => val.AttributeName === selectedName);\r\n }\r\n onEngChange(e) {\r\n const Val = this.getEngValue(e.target.value);\r\n this.selectedEngvalue = Val.AttributeID;\r\n }\r\n getEngValue(selectedName: string) {\r\n return this.valEngineer.find(val => val.AttributeName === selectedName);\r\n }\r\n getCityLocation(val: IGetCityLocation) {\r\n \r\n this.ngxService.start();\r\n ApiService.GetCityLocation(val).then((responce: any) => {\r\n \r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n this.valEngineer = responce.data.DATA;\r\n \r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n getStatus(val: string) {\r\n this.ngxService.start();\r\n ApiService.GetMaster(val).then((responce: any) => {\r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n this.status = responce.data.DATA;\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n allocation(e) {\r\n \r\n this.quiid=\"1\";\r\n const review = document.getElementById(\"review-tab\");\r\n const publish = document.getElementById(\"publish-tab\");\r\n const allocation = document.getElementById(\"home-tab\");\r\n const Newreview = document.getElementById(\"Newreview-tab\");\r\n this.typeOfStage = \"allocation\";\r\n publish.classList.remove(\"active\");\r\n allocation.classList.add(\"active\");\r\n review.classList.remove(\"active\");\r\n Newreview.classList.remove(\"active\");\r\n this.isShowAllocation = true;\r\n this.isShowReview = false;\r\n this.isShowPublish = false;\r\n this.isnewReview = false;\r\n this.getMainGridData(\"1\");\r\n /* if (this.GridDetail) {\r\n if(this.datatablerefersh==false){\r\n this.getMainGridData(\"1\");\r\n setTimeout(function () {\r\n $(function () {\r\n $(\"#example1\").DataTable({\r\n destroy: true,\r\n searching: true,\r\n \"order\": [[ 0, \"desc\" ]],\r\n \"lengthMenu\": [[50,100, -1], [50,100, \"All\"]] \r\n });\r\n });\r\n }, 1000);\r\n this.datatablerefersh=false;\r\n }\r\n } */\r\n return false;\r\n }\r\n\r\n review(e) {\r\n \r\n this.quiid=\"2\";\r\n const review = document.getElementById(\"review-tab\");\r\n const publish = document.getElementById(\"publish-tab\");\r\n const allocation = document.getElementById(\"home-tab\");\r\n const Newreview = document.getElementById(\"Newreview-tab\");\r\n this.typeOfStage = \"review\";\r\n publish.classList.remove(\"active\");\r\n allocation.classList.remove(\"active\");\r\n Newreview.classList.remove(\"active\");\r\n review.classList.add(\"active\");\r\n this.isShowAllocation = false;\r\n this.isShowReview = true;\r\n this.isShowPublish = false;\r\n this.isnewReview = false;\r\n this.getMainGridData(\"2\");\r\n /* if (this.GridReview) {\r\n if(this.datatablerefersh==false){\r\n this.getMainGridData(\"2\");\r\n setTimeout(function () {\r\n $(function () {\r\n $(\"#example2\").DataTable({\r\n destroy: true,\r\n \"order\": [[ 0, \"desc\" ]],\r\n \"lengthMenu\": [[50,100, -1], [50,100, \"All\"]] \r\n });\r\n });\r\n }, 1000);\r\n this.datatablerefersh=false;\r\n }\r\n }\r\n else{\r\n this.datatablerefersh=true;\r\n this.getMainGridData(\"2\");\r\n } */\r\n return false;\r\n }\r\n NewgetMainGridData() {\r\n \r\n let val = {\r\n LoginID: this.session.UserID\r\n }\r\n this.ngxService.start();\r\n ApiService.GetSuperGridData(val).then((responce: any) => {\r\n if (responce.status == 200) {\r\n if (responce.data) {\r\n this.NewMainGrid = responce.data;\r\n this.dataSourceAreaDetail=new MatTableDataSource(responce.data);\r\n this.dataSourceAreaDetail.paginator = this.paginator; \r\n this.dataSourceAreaDetail.sort = this.sort; \r\n \r\n }\r\n /* if(this.datatablerefersh==true){\r\n setTimeout(function () {\r\n $(function () {\r\n $(\"#supGrid\").DataTable({\r\n \"order\": [[ 0, \"desc\" ]],\r\n \"lengthMenu\": [[50,100, -1], [50,100, \"All\"]] \r\n });\r\n });\r\n }, 1000);\r\n this.datatablerefersh=false;\r\n } */\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n NewGrid(e) {\r\n\r\n const review = document.getElementById(\"review-tab\");\r\n const publish = document.getElementById(\"publish-tab\");\r\n const allocation = document.getElementById(\"home-tab\");\r\n const Newreview = document.getElementById(\"Newreview-tab\");\r\n this.typeOfStage = \"Newreview\";\r\n\r\n publish.classList.remove(\"active\");\r\n allocation.classList.remove(\"active\");\r\n review.classList.remove(\"active\");\r\n Newreview.classList.add(\"active\");\r\n\r\n this.isShowAllocation = false;\r\n this.isShowReview = false;\r\n this.isShowPublish = false;\r\n this.isnewReview = true;\r\n this.NewgetMainGridData();\r\n /* if (this.NewMainGrid) {\r\n // this.getMainGridData(\"3\");\r\n if(this.datatablerefersh==false){\r\n this.NewgetMainGridData();\r\n setTimeout(function () {\r\n $(function () {\r\n $(\"#supGrid\").DataTable({\r\n destroy: true,\r\n \"order\": [[ 0, \"desc\" ]],\r\n \"lengthMenu\": [[50,100, -1], [50,100, \"All\"]] \r\n });\r\n });\r\n }, 1000);\r\n this.datatablerefersh=false;\r\n }\r\n }\r\n else{\r\n this.datatablerefersh=true;\r\n this.NewgetMainGridData();\r\n } */\r\n return false;\r\n \r\n }\r\n publish(e) {\r\n this.quiid=\"3\";\r\n const review = document.getElementById(\"review-tab\");\r\n const publish = document.getElementById(\"publish-tab\");\r\n const allocation = document.getElementById(\"home-tab\");\r\n const Newreview = document.getElementById(\"Newreview-tab\");\r\n this.typeOfStage = \"publish\";\r\n publish.classList.add(\"active\");\r\n allocation.classList.remove(\"active\");\r\n review.classList.remove(\"active\");\r\n Newreview.classList.remove(\"active\");\r\n\r\n this.isShowAllocation = false;\r\n this.isShowReview = false;\r\n this.isShowPublish = true;\r\n this.isnewReview = false;\r\n this.getMainGridData(\"3\");\r\n /* if (this.GridPublish) {\r\n this.getMainGridData(\"3\");\r\n if(this.datatablerefersh==false){\r\n this.getMainGridData(\"3\");\r\n setTimeout(function () {\r\n $(function () {\r\n $(\"#example3\").DataTable({\r\n destroy: true,\r\n \"order\": [[ 0, \"desc\" ]],\r\n \"lengthMenu\": [[50,100, -1], [50,100, \"All\"]] \r\n });\r\n });\r\n }, 1000);\r\n this.datatablerefersh=false;\r\n }\r\n }\r\n else{\r\n this.datatablerefersh=true;\r\n this.getMainGridData(\"3\");\r\n } */\r\n return false;\r\n }\r\n addCase() {\r\n this.router.navigate([\"Casecreation\"]);\r\n }\r\n getMainGridData(qid: string) {\r\n \r\n let val: IGridInput = {\r\n LoginID: this.session.UserID,\r\n RoleID: this.session.getRoleID,\r\n UserBankBranch: this.session.BankBranchID,\r\n SelectedBankID: \"\",\r\n SelectedBranchID: \"\",\r\n CaseStage: \"A\",\r\n ValuationType: \"1\",\r\n qid: qid\r\n }\r\n this.ngxService.start();\r\n ApiService.GetGridData(val).then((responce: any) => {\r\n \r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n if (qid === \"1\") {\r\n this.GridDetail = responce.data; \r\n this.dataSourceAllocation=new MatTableDataSource(responce.data);\r\n this.dataSourceAllocation.paginator = this.paginator; \r\n this.dataSourceAllocation.sort = this.sort; \r\n }\r\n else if (qid === \"2\") {\r\n this.GridReview = responce.data;\r\n this.dataSourceReview=new MatTableDataSource(responce.data);\r\n this.dataSourceReview.paginator = this.paginator; \r\n this.dataSourceReview.sort = this.sort; \r\n }\r\n else if (qid === \"3\") {\r\n this.GridPublish = responce.data;\r\n this.dataSourcePublish=new MatTableDataSource(responce.data);\r\n this.dataSourcePublish.paginator = this.paginator;\r\n this.dataSourcePublish.sort = this.sort;\r\n }\r\n /* if(this.datatablerefersh==true){\r\n setTimeout(function () {\r\n $(function () {\r\n $(\"#example\" + qid + \"\").DataTable({\r\n \"order\": [[ 0, \"desc\" ]],\r\n \"lengthMenu\": [[50,100, -1], [50,100, \"All\"]] \r\n });\r\n });\r\n }, 1000);\r\n this.datatablerefersh=false;\r\n } */\r\n \r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n // Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n getStage() {\r\n const valuationType = \"1\";\r\n let typeval: string = \"\";\r\n if (this.typeOfStage == \"publish\") {\r\n typeval = \"Publish\"\r\n } else if (this.typeOfStage == \"review\") {\r\n typeval = \"Review\"\r\n } else {\r\n typeval = \"Allocation\"\r\n }\r\n let val: getStage = {\r\n Type: typeval,\r\n valType: valuationType\r\n }\r\n this.ngxService.start();\r\n ApiService.GetStages(val).then((response: any) => {\r\n this.status = response.data.DATA;\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something Went Wrong In Action Please Refresh Page!', 'error')\r\n })\r\n }\r\n ExportTOExcel(caseid) {\r\n \r\n let data = [];\r\n \r\nlet header=[];\r\nlet val={\r\n caseid:caseid\r\n}\r\nlet workbook = new Excel.Workbook();\r\n this.ngxService.start();\r\n ApiService.DownloadCSVFileKotak(val).then((responce: any) => { \r\n if(responce.data){ \r\n let blob = new Blob([responce.data], { type: 'application/text' });\r\n FileSaver.saveAs(blob, caseid+'.csv');\r\n \r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n \r\n });\r\n\r\n\r\n\r\n\r\n\r\n \r\n }\r\n\r\n\r\n\r\n\r\n}\r\n","module.exports = \"

\\r\\n imageview works!\\r\\n

\\r\\n\"","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-imageview',\r\n templateUrl: './imageview.component.html',\r\n styleUrls: []\r\n})\r\nexport class ImageviewComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","module.exports = \"
\\r\\n\\r\\n\\r\\n
\\r\\n

ARMPL

\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
CaseIDCaseStageApplicationUserCaseRemarkUpdatedOnErrorStatus
{{grid.CaseID}}{{grid.CaseStage}}{{grid.ApplicationUser}}{{grid.CaseRemark}}{{grid.UpdatedOn}}{{grid.Error}}{{grid.Status}}
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \"","import { Component, OnInit, Renderer2, ElementRef, Input, EventEmitter } from '@angular/core';\r\nimport { Router , ActivatedRoute } from '@angular/router';\r\nimport { ApiService } from '../service/service';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { SessionService } from '../service/sessionGlobalVar';\r\nimport { IGridInput } from '../service/type'\r\nimport { analyzeAndValidateNgModules } from '@angular/compiler';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\ndeclare var $: any;\r\n@Component({\r\n selector: 'app-log-detail',\r\n templateUrl: './log-detail.component.html',\r\n styleUrls: []\r\n})\r\nexport class LogDetailComponent implements OnInit {\r\n GridDetail:any;\r\n constructor(private router: Router, private route: ActivatedRoute, private service: ApiService, private session: SessionService, private ngxService: NgxUiLoaderService) { }\r\n @Input() valuepassed: string;\r\n ngOnInit() {\r\n this.route.params.subscribe(params => {\r\n let val:string=params.id;\r\n this.getMainGridData(val)\r\n });\r\n }\r\n getMainGridData(caseID: string) {\r\n \r\n ApiService.GetLogData(caseID).then((responce: any) => {\r\n if (responce.status === 200) {\r\n \r\n if (responce.data) { \r\n this.GridDetail = responce.data;\r\n setTimeout(function () {\r\n $(function () {\r\n $(\"#tblLogDetail\").DataTable();\r\n });\r\n }, 1000);\r\n }\r\n }\r\n }).catch((e: any) => {\r\n alert(\"Error\" + e.message);\r\n });\r\n }\r\n}\r\n","module.exports = \"\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n Forgot Password?\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n\"","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { ApiService } from '../service/service';\r\nimport { FormBuilder} from '@angular/forms';\r\nimport { SessionService } from '../service/sessionGlobalVar';\r\nimport { IUserLogin } from '../service/type';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport Swal from 'sweetalert2';\r\n@Component({\r\n selector: 'app-login',\r\n templateUrl: './login.component.html',\r\n styleUrls: []\r\n})\r\nexport class LoginComponent implements OnInit {\r\n UserLogin: IUserLogin;\r\n islogin: boolean = false;\r\n constructor(private router: Router, private _userService: ApiService, private ngxService: NgxUiLoaderService, private sessionService: SessionService, private formBuilder: FormBuilder) {\r\n this.UserLogin = new IUserLogin();\r\n }\r\n ngOnInit() {\r\n if (this.sessionService.isLoggedIn) {\r\n const roleID = this.sessionService.getRoleID;\r\n const adoff=this.sessionService.getAdroitOffice;\r\n if (+roleID == 3 || +roleID == 10 || +roleID == 24) {\r\n // if(+adoff==1){\r\n this.router.navigate([\"ReportAnalysis\"]);\r\n // }\r\n // else{\r\n // this.router.navigate([\"Home\"]);\r\n // }\r\n this.islogin = true;\r\n } else if (+roleID == 7) {\r\n this.router.navigate([\"BankCaseDetails\"]);\r\n } \r\n else if (+roleID == 22) {\r\n this.router.navigate([\"BankCaseDetails\"]);\r\n } \r\n else if (+roleID == 5 || +roleID==11) {\r\n this.router.navigate([\"SupHome\"]);\r\n } else if (+roleID == 13) {\r\n this.router.navigate([\"RegionalOffice\"]);\r\n }\r\n }\r\n }\r\n someMethod(event: any) {\r\n if (event.keyCode == 13) {\r\n this.login();\r\n return false;\r\n }\r\n }\r\n login() { \r\n if (this.UserLogin.loginid == \"\") {\r\n Swal.fire(\"Opps..\", \"Please Enter USERNAME\", \"warning\");\r\n return false;\r\n }\r\n else if (this.UserLogin.password == \"\") {\r\n Swal.fire(\"Opps..\", \"Please Enter PASSWORD\", \"warning\");\r\n return false;\r\n }\r\n else {\r\n this.ngxService.start();\r\n ApiService.userLogin(this.UserLogin).then((responce: any) => {\r\n this.ngxService.stop();\r\n if (responce.status === 200) {\r\n const data = responce.data;\r\n if (data.status === \"Authentication Successfully\")\r\n localStorage.setItem(\"displayname\", data.displayname);\r\n localStorage.setItem(\"roleID\", data.roleID);\r\n localStorage.setItem(\"userID\", data.userid);\r\n localStorage.setItem(\"BankBranchID\", data.BankBranchID);\r\n localStorage.setItem(\"BankID\", data.BankID);\r\n localStorage.setItem(\"OfficeID\", data.AdroitOffice);\r\n localStorage.setItem(\"Senderemail\", data.Senderemail);\r\n localStorage.setItem(\"AdroitOffice\",data.AdroitOffice);\r\n localStorage.setItem(\"qc_permission\",data.qc_permission);\r\n localStorage.setItem(\"edit_report\",data.edit_report);\r\n localStorage.setItem(\"AdroitBranch\",data.AdroitBranch);\r\n localStorage.setItem(\"IsBankLogin\",data.IsBankLogin);\r\n this.islogin = true;\r\n Swal.fire('Thanks...', 'Welcome Back ' + data.displayname + '', 'success');\r\n this.router.navigate([\"Home\"]);\r\n }\r\n }).catch((e: any) => {\r\n if (e) {\r\n this.ngxService.stop();\r\n if (e.response.status == 401) {\r\n Swal.fire('Oops...', 'Unauthorized User !', 'error');\r\n }\r\n } else {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Server Error !', 'error');\r\n }\r\n });\r\n }\r\n }\r\n}\r\n","module.exports = \"\\r\\n \\r\\n body {\\r\\n font-family: Arial, Helvetica, sans-serif;\\r\\n }\\r\\n \\r\\n /* Style the header */\\r\\n \\r\\n header {\\r\\n background-color:rgb(32 87 146);\\r\\n padding: 0px;\\r\\n text-align: left;\\r\\n font-size: 25px;\\r\\n color: white;\\r\\n margin-top: 27px;\\r\\n }\\r\\n \\r\\n /* Create two columns/boxes that floats next to each other */\\r\\n \\r\\n nav {\\r\\n float: left;\\r\\n width: 30%;\\r\\n height: 300px; /* only for demonstration, should be removed */\\r\\n background: #ccc;\\r\\n padding: 20px;\\r\\n }\\r\\n \\r\\n /* Style the list inside the menu */\\r\\n \\r\\n nav ul {\\r\\n list-style-type: none;\\r\\n padding: 0;\\r\\n }\\r\\n \\r\\n article {\\r\\n float: left;\\r\\n padding: 20px;\\r\\n width: 70%;\\r\\n background-color: #f1f1f1;\\r\\n height: 300px; /* only for demonstration, should be removed */\\r\\n }\\r\\n \\r\\n /* Clear floats after the columns */\\r\\n \\r\\n section:after {\\r\\n content: \\\"\\\";\\r\\n display: table;\\r\\n clear: both;\\r\\n }\\r\\n \\r\\n /* Style the footer */\\r\\n \\r\\n footer {\\r\\n background-color: #777;\\r\\n padding: 10px;\\r\\n text-align: center;\\r\\n color: white;\\r\\n }\\r\\n \\r\\n /* Responsive layout - makes the two columns/boxes stack on top of each other instead of next to each other, on small screens */\\r\\n \\r\\n @media (max-width: 600px) {\\r\\n nav, article {\\r\\n width: 100%;\\r\\n height: auto;\\r\\n }\\r\\n }\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvbHRlbWFzdGVyLWRldGFpbC9sdGVtYXN0ZXItZGV0YWlsLmNvbXBvbmVudC5jc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7RUFFRTtJQUNFLDBDQUEwQztHQUMzQzs7RUFFRCxzQkFBc0I7O0VBQ3RCO0lBQ0UsZ0NBQWdDO0lBQ2hDLGFBQWE7SUFDYixpQkFBaUI7SUFDakIsZ0JBQWdCO0lBQ2hCLGFBQWE7SUFDYixpQkFBaUI7R0FDbEI7O0VBRUQsNkRBQTZEOztFQUM3RDtJQUNFLFlBQVk7SUFDWixXQUFXO0lBQ1gsY0FBYyxDQUFDLCtDQUErQztJQUM5RCxpQkFBaUI7SUFDakIsY0FBYztHQUNmOztFQUVELG9DQUFvQzs7RUFDcEM7SUFDRSxzQkFBc0I7SUFDdEIsV0FBVztHQUNaOztFQUVEO0lBQ0UsWUFBWTtJQUNaLGNBQWM7SUFDZCxXQUFXO0lBQ1gsMEJBQTBCO0lBQzFCLGNBQWMsQ0FBQywrQ0FBK0M7R0FDL0Q7O0VBRUQsb0NBQW9DOztFQUNwQztJQUNFLFlBQVk7SUFDWixlQUFlO0lBQ2YsWUFBWTtHQUNiOztFQUVELHNCQUFzQjs7RUFDdEI7SUFDRSx1QkFBdUI7SUFDdkIsY0FBYztJQUNkLG1CQUFtQjtJQUNuQixhQUFhO0dBQ2Q7O0VBRUQsZ0lBQWdJOztFQUNoSTtJQUNFO01BQ0UsWUFBWTtNQUNaLGFBQWE7S0FDZDtHQUNGIiwiZmlsZSI6InNyYy9hcHAvbHRlbWFzdGVyLWRldGFpbC9sdGVtYXN0ZXItZGV0YWlsLmNvbXBvbmVudC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJcclxuICBcclxuICBib2R5IHtcclxuICAgIGZvbnQtZmFtaWx5OiBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xyXG4gIH1cclxuICBcclxuICAvKiBTdHlsZSB0aGUgaGVhZGVyICovXHJcbiAgaGVhZGVyIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6cmdiKDMyIDg3IDE0Nik7XHJcbiAgICBwYWRkaW5nOiAwcHg7XHJcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgZm9udC1zaXplOiAyNXB4O1xyXG4gICAgY29sb3I6IHdoaXRlO1xyXG4gICAgbWFyZ2luLXRvcDogMjdweDtcclxuICB9XHJcbiAgXHJcbiAgLyogQ3JlYXRlIHR3byBjb2x1bW5zL2JveGVzIHRoYXQgZmxvYXRzIG5leHQgdG8gZWFjaCBvdGhlciAqL1xyXG4gIG5hdiB7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICAgIHdpZHRoOiAzMCU7XHJcbiAgICBoZWlnaHQ6IDMwMHB4OyAvKiBvbmx5IGZvciBkZW1vbnN0cmF0aW9uLCBzaG91bGQgYmUgcmVtb3ZlZCAqL1xyXG4gICAgYmFja2dyb3VuZDogI2NjYztcclxuICAgIHBhZGRpbmc6IDIwcHg7XHJcbiAgfVxyXG4gIFxyXG4gIC8qIFN0eWxlIHRoZSBsaXN0IGluc2lkZSB0aGUgbWVudSAqL1xyXG4gIG5hdiB1bCB7XHJcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gIH1cclxuICBcclxuICBhcnRpY2xlIHtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgcGFkZGluZzogMjBweDtcclxuICAgIHdpZHRoOiA3MCU7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjFmMWYxO1xyXG4gICAgaGVpZ2h0OiAzMDBweDsgLyogb25seSBmb3IgZGVtb25zdHJhdGlvbiwgc2hvdWxkIGJlIHJlbW92ZWQgKi9cclxuICB9XHJcbiAgXHJcbiAgLyogQ2xlYXIgZmxvYXRzIGFmdGVyIHRoZSBjb2x1bW5zICovXHJcbiAgc2VjdGlvbjphZnRlciB7XHJcbiAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgZGlzcGxheTogdGFibGU7XHJcbiAgICBjbGVhcjogYm90aDtcclxuICB9XHJcbiAgXHJcbiAgLyogU3R5bGUgdGhlIGZvb3RlciAqL1xyXG4gIGZvb3RlciB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzc3O1xyXG4gICAgcGFkZGluZzogMTBweDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIGNvbG9yOiB3aGl0ZTtcclxuICB9XHJcbiAgXHJcbiAgLyogUmVzcG9uc2l2ZSBsYXlvdXQgLSBtYWtlcyB0aGUgdHdvIGNvbHVtbnMvYm94ZXMgc3RhY2sgb24gdG9wIG9mIGVhY2ggb3RoZXIgaW5zdGVhZCBvZiBuZXh0IHRvIGVhY2ggb3RoZXIsIG9uIHNtYWxsIHNjcmVlbnMgKi9cclxuICBAbWVkaWEgKG1heC13aWR0aDogNjAwcHgpIHtcclxuICAgIG5hdiwgYXJ0aWNsZSB7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICB9XHJcbiAgfSJdfQ== */\"","module.exports = \"\\r\\n\\r\\n\\r\\n
\\r\\n

Manual Report Details

\\r\\n
\\r\\nCSS Template\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n

\\r\\n \\r\\n

\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n

\\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n

\\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n

\\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
  • \\r\\n
    \\r\\n
  • \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\"","import { Component, OnInit } from '@angular/core';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { ApiService } from '../service/service';\r\nimport { SessionService } from '../service/sessionGlobalVar';\r\nimport { IAreaDetails} from '../service/type'\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport Swal from 'sweetalert2';\r\nimport { HttpClient } from \"@angular/common/http\";\r\nimport * as JSZip from 'jszip';\r\nimport * as JSZipUtils from 'jszip-utils';\r\ndeclare var require: any\r\nconst FileSaver = require('file-saver');\r\n\r\ndeclare const $: any;\r\n@Component({\r\n selector: 'app-ltemaster-detail',\r\n templateUrl: './ltemaster-detail.component.html',\r\n styleUrls: ['./ltemaster-detail.component.css']\r\n})\r\nexport class LTEMasterDetailComponent implements OnInit {\r\n caseID: string;\r\n CaseUid:string;\r\n App_Name:string;\r\n Property_Numb:string;\r\n Build_no:string;\r\n Landmark:string;\r\n streat:string;\r\n state:string;\r\n city:string;\r\n location:string;\r\n case_Type:string;\r\n file_no:string;\r\n document_details:string;\r\n rate:string;\r\n unit:string;\r\n case_status:string;\r\n eng:string;\r\n Sublocation:string;\r\n getdocurl:any;\r\n getAllImage = [];\r\n dataa=[];\r\n images =[];\r\n imagename=[];\r\n Latitude: string;\r\n Longitude: string;\r\n LTE_Engineer_Remarks:string;\r\n updatedFiles:any;\r\n constructor(private router: Router, private service: ApiService, private ngxService: NgxUiLoaderService, private session: SessionService, private route: ActivatedRoute,private http: HttpClient) { }\r\n\r\n ngOnInit() {\r\n this.route.params.subscribe(params => {\r\n if (params.id) {\r\n this.caseID = window.atob(params.id);\r\n this.ViewCaseDetail();\r\n this.GetImage();\r\n\r\n }\r\n });\r\n\r\n\r\n \r\n\r\n }\r\n\r\n downloadImageZipFiles() {\r\n var links = this.images;\r\n var imgname=this.imagename;\r\n\r\n var zip = new JSZip();\r\n var count = 0;\r\n var zipFilename = this.caseID+\".zip\";\r\n\r\n links.forEach(function (url, i) {\r\n var filename = imgname[i];\r\n filename = filename.replace(/[\\/\\*\\|\\:\\<\\>\\?\\\"\\\\]/gi, '').replace(\"httpsi.imgur.com\",\"\");\r\n // loading a file and add it in a zip file\r\n JSZipUtils.getBinaryContent(url, function (err, data) {\r\n if (err) {\r\n throw err; // or handle the error\r\n }\r\n zip.file(filename, data, { binary: true });\r\n count++;\r\n if (count == links.length) {\r\n zip.generateAsync({ type: 'blob' }).then(function (content) {\r\n FileSaver.saveAs(content, zipFilename);\r\n });\r\n }\r\n });\r\n });\r\n }\r\n \r\n \r\n ViewCaseDetail() { \r\n this.ngxService.start();\r\n \r\n ApiService.SupSidebar(this.caseID).then((responce: any) => {\r\n if (responce.status == 200) {\r\n if (responce.data) {\r\n \r\n // this.HistoricalData = responce.data;\r\n this.CaseUid= responce.data.CaseUID;\r\n this.App_Name=responce.data.Applicant_Name;\r\n this.Property_Numb=responce.data.Property_No;\r\n this.Build_no=responce.data.Building_No;\r\n this.Landmark=responce.data.Land_mark;\r\n this.streat=responce.data.Street_Sector;\r\n this.state=responce.data.statename;\r\n this.city=responce.data.cityname;\r\n this.location=responce.data.LocationName;\r\n this.case_Type=responce.data.typeofcasename;\r\n this.document_details=responce.data.Documents;\r\n this.file_no=responce.data.File_No;\r\n this.rate=responce.data.TotalFees;\r\n this.unit=responce.data.Block;\r\n this.case_status=responce.data.CaseStatusname;\r\n this.eng=responce.data.engName;\r\n this.Sublocation=responce.data.SubLocationname;\r\n this.Latitude=responce.data.lat;\r\n this.Longitude=responce.data.longi;\r\n this.LTE_Engineer_Remarks=responce.data.lte_Engineer_Remarks;\r\n this.getdocurl=responce.data.CaseDoc;\r\n for (const Dvalue in responce.data.CaseDoc) {\r\n let docValss = {\r\n url: this.getdocurl[Dvalue].url,\r\n name: this.getdocurl[Dvalue].name\r\n }\r\n this.getdocurl[Dvalue] = docValss;\r\n }\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n zoomout(href: any) {\r\n Object.assign(document.createElement('a'), {\r\n target: '_blank',\r\n href,\r\n }).click();\r\n }\r\n GetImage() {\r\n \r\n this.ngxService.start();\r\n ApiService.GetSuperImage(this.caseID).then((responce: any) => { \r\n \r\n this.getAllImage = responce.data;\r\n \r\n for(let i=0; i< this.getAllImage.length; i++) {\r\n this.images.push(this.getAllImage[i].URL);\r\n this.imagename.push(this.getAllImage[i].name)\r\n }\r\n // this.downloadImageZipFiles(this.images,this.imagename);\r\n for (const Dvalue in responce.data.CaseDoc) {\r\n \r\n let docValss = {\r\n url: this.getAllImage[Dvalue].url,\r\n name: this.getAllImage[Dvalue].name\r\n }\r\n this.getAllImage[Dvalue] = docValss;\r\n }\r\n this.ngxService.stop();\r\n }).catch((error) => { \r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong', 'error');\r\n })\r\n }\r\n handleFileSelect(evt) {\r\n this.updatedFiles = evt.target.files;\r\n };\r\n UploadPdfLTE() {\r\n \r\n let formData = new FormData();\r\n if (this.updatedFiles) {\r\n for (let val of this.updatedFiles) {\r\n formData.append(\"CaseID\", this.caseID);\r\n formData.append(\"files\", val);\r\n }\r\n \r\n \r\n \r\n this.ngxService.start();\r\n ApiService.UploadLTEPDF(formData).then((responce: any) => { \r\n Swal.fire('Thanks', 'File Upload Successfully', 'success');\r\n this.router.navigate([\"Home\"]);\r\n this.ngxService.stop();\r\n }).catch((error) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong', 'error');\r\n })\r\n }else{\r\n Swal.fire('Oops...', 'Please Select PDF File', 'error');\r\n }\r\n }\r\n\r\n\r\n}\r\n","module.exports = \"

    \\r\\n map works!\\r\\n

    \\r\\n\"","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-map',\r\n templateUrl: './map.component.html',\r\n styleUrls: []\r\n})\r\nexport class MapComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL25vdC1jb21wYXRpYmxlL25vdC1jb21wYXRpYmxlLmNvbXBvbmVudC5jc3MifQ== */\"","module.exports = \"
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    Case UID {{element.CaseUID}} Name {{element.Name}} Mobile {{element.Mobile}} Bank {{element.Bank}} Location {{element.Location}} Case Action {{element.CaseStatus}} Supervisor {{element.supervisor}} CR.Date {{element.CrDate}} Action \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
    \\r\\n \\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    Case UID {{element.CaseUID}} Name {{element.Name}} Mobile {{element.Mobile}} Bank {{element.Bank}} Location {{element.Location}} Case Action {{element.CaseStatus}} Supervisor {{element.supervisor}} CR.Date {{element.CrDate}} Action \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n\\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n

    Edit Action

    \\r\\n \\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n

    {{HeaderText}}

    \\r\\n \\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n\\r\\n\\r\\n\"","import { Component, OnInit, Renderer2, ElementRef,ViewChild } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { ApiService } from '../service/service';\r\nimport { SessionService } from '../service/sessionGlobalVar';\r\nimport { IGridInput, IUpdateStatus, getStage,ICaseCreate } from '../service/type'\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport {MatPaginator,MatTableDataSource,MatSort,Sort} from '@angular/material';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'app-not-compatible',\r\n templateUrl: './not-compatible.component.html',\r\n styleUrls: ['./not-compatible.component.css']\r\n})\r\n\r\n\r\n\r\n export class NotCompatibleComponent implements OnInit {\r\n GridDetail: [];\r\n GridPublish: [];\r\n GridReview: [];\r\n isShowAllocation: boolean = true;\r\n isShowQuality: boolean;\r\n isShowPublish: boolean;\r\n IsEditStatus: boolean = false;\r\n valEngineer: any;\r\n status: any;\r\n selectedStatus: string = \"0\";\r\n selectedEngvalue: string = \"\";\r\n HeaderText: string;\r\n IsDocument: boolean = false;\r\n Component1Variable: string = \"Component1VariableSent\";\r\n logID: string;\r\n inputRemark: string = \"\";\r\n msgType: string;\r\n updatedFiles: any;\r\n typeOfStage: string;\r\n sanctionPlanDoc: any;\r\n reportPlanDoc: any;\r\n datatablerefersh:boolean=true;\r\n getdocurl :any;\r\n displayedColumnsWithCustomer: string[] = ['CaseUID', 'name','mobileno', 'Bank', 'Location','CaseAction','EngineerStatus','CRDate','Action'];\r\n dataSourceWithCustomer = new MatTableDataSource;\r\n dataSourceQuality= new MatTableDataSource;\r\n applyFilter(filterValue: string) {\r\n this.dataSourceWithCustomer.filter = filterValue.trim().toLowerCase();\r\n this.dataSourceQuality.filter = filterValue.trim().toLowerCase();\r\n }\r\n @ViewChild(MatPaginator) paginator: MatPaginator;\r\n @ViewChild(MatSort) sort: MatSort;\r\n constructor(private router: Router, private service: ApiService, private session: SessionService, private ngxService: NgxUiLoaderService, private renderer: Renderer2, private el: ElementRef) {\r\n let val = localStorage.getItem(\"roleID\");\r\n if (val) {\r\n if (+val == 7) {\r\n this.router.navigate([\"BankCaseDetails\"]);\r\n }\r\n else {\r\n this.getMainGridData(\"6\");\r\n }\r\n }\r\n }\r\n ngOnInit() {\r\n const p = this.el.nativeElement;\r\n this.renderer.addClass(this.el.nativeElement, 'abc');\r\n }\r\n \r\n addCase() {\r\n this.router.navigate([\"Casecreation\"]);\r\n }\r\n allocation(e) {\r\n \r\n // this.quiid=\"1\";\r\n const review = document.getElementById(\"review-tab\");\r\n const allocation = document.getElementById(\"home-tab\");\r\n this.typeOfStage = \"allocation\";\r\n allocation.classList.add(\"active\");\r\n review.classList.remove(\"active\");\r\n this.isShowAllocation = true;\r\n this.isShowQuality = false;\r\n this.isShowPublish = false;\r\n this.getMainGridData(\"6\");\r\n /* if (this.GridDetail) {\r\n if(this.datatablerefersh==false){\r\n this.getMainGridData(\"4\");\r\n setTimeout(function () {\r\n $(function () {\r\n $(\"#example4\").DataTable({\r\n destroy: true,\r\n searching: true,\r\n \"order\": [[ 0, \"desc\" ]],\r\n \"lengthMenu\": [[30,100, -1], [30,100, \"All\"]] \r\n });\r\n });\r\n }, 1000);\r\n this.datatablerefersh=false;\r\n }\r\n } */\r\n return false;\r\n }\r\n review(e) {\r\n \r\n // this.quiid=\"2\";\r\n const review = document.getElementById(\"review-tab\");\r\n const allocation = document.getElementById(\"home-tab\");\r\n this.typeOfStage = \"review\";\r\n allocation.classList.remove(\"active\");\r\n review.classList.add(\"active\");\r\n this.isShowAllocation = false;\r\n this.isShowQuality = false;\r\n this.isShowPublish = false;\r\n this.getMainGridData(\"6\");\r\n /* if (this.GridReview) {\r\n if(this.datatablerefersh==false){\r\n this.getMainGridData(\"5\");\r\n setTimeout(function () {\r\n $(function () {\r\n $(\"#example5\").DataTable({\r\n destroy: true,\r\n \"order\": [[ 0, \"desc\" ]],\r\n \"lengthMenu\": [[30,100, -1], [30,100, \"All\"]] \r\n });\r\n });\r\n }, 1000);\r\n this.datatablerefersh=false;\r\n }\r\n }\r\n else{\r\n this.datatablerefersh=false;\r\n this.getMainGridData(\"5\");\r\n } */\r\n return false;\r\n }\r\n getMainGridData(qid: string) {\r\n debugger;\r\n let val: IGridInput = {\r\n LoginID: this.session.UserID,\r\n RoleID: this.session.getRoleID,\r\n UserBankBranch: this.session.BankBranchID,\r\n SelectedBankID: \"\",\r\n SelectedBranchID: \"\",\r\n CaseStage: \"A\",\r\n ValuationType: \"2\",\r\n qid: qid\r\n }\r\n this.ngxService.start();\r\n ApiService.GetGridData(val).then((responce: any) => {\r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n this.GridDetail = responce.data;\r\n if(qid==\"6\"){\r\n this.dataSourceWithCustomer=new MatTableDataSource(responce.data);\r\n this.dataSourceWithCustomer.paginator = this.paginator; \r\n this.dataSourceWithCustomer.sort = this.sort; \r\n }else{\r\n this.dataSourceQuality=new MatTableDataSource(responce.data);\r\n this.dataSourceQuality.paginator = this.paginator; \r\n this.dataSourceQuality.sort = this.sort; \r\n } \r\n /* setTimeout(function () {\r\n $(function () {\r\n $(\"#example\" + qid + \"\").DataTable();\r\n });\r\n }, 1000); */\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n \r\n HideModel() {\r\n this.IsEditStatus = false;\r\n }\r\n updateStatus() {\r\n if (this.logID) {\r\n if (this.selectedStatus == \"0\" || this.selectedStatus == \"\") {\r\n Swal.fire('Oops...', 'Please Select Action Type!', 'warning');\r\n } else if (this.inputRemark == \"\") {\r\n Swal.fire('Oops...', 'Remark Can`t be empty!', 'warning');\r\n } else {\r\n const val: IUpdateStatus = {\r\n Case_id: this.logID,\r\n CaseStatus: this.selectedStatus,\r\n statusRemark: this.inputRemark,\r\n Assignto: \"\",\r\n Message: \"\",\r\n LoginID: this.session.UserID\r\n }\r\n this.ngxService.start();\r\n this.IsEditStatus = false;\r\n ApiService.UpdateStatus(val).then((response: any) => {\r\n if (response.status == 200) {\r\n this.getMainGridData(\"1\");\r\n Swal.fire('Thanks...', 'Action Update Successfully', 'success')\r\n }else {\r\n Swal.fire('Oops...', 'Something Went Wrong In Action Update Please try again!', 'error')\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something Went Wrong In Action Please Refresh Page!', 'error')\r\n })\r\n }\r\n }\r\n }\r\n EditAction(e: any) {\r\n let val: getStage = {\r\n Type: \"1\",\r\n valType: \"2\"\r\n }\r\n this.logID = e/* .currentTarget.parentElement.firstElementChild.value */;\r\n this.ngxService.start(); \r\n ApiService.GetStages(val).then((response: any) => { \r\n this.IsEditStatus = true;\r\n this.status = response.data.DATA;\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something Went Wrong In Action Please Refresh Page!', 'error')\r\n })\r\n }\r\n editCase(e) {\r\n this.logID = e/* .currentTarget.parentElement.firstElementChild.value */;\r\n const val = window.btoa(this.logID);\r\n if (this.logID) {\r\n // this.router.navigate([\"/FtvSendMessage\", { id: val }]);\r\n this.router.navigate([\"/Casecreation\", { id: val }]);\r\n }\r\n }\r\n logDetail(e) {\r\n this.logID = e/* .currentTarget.parentElement.firstElementChild.value */;\r\n if (this.logID) {\r\n this.router.navigate([\"/logDetails\", { id: this.logID }]);\r\n }\r\n }\r\n ResendMessage(e){\r\n \r\n let data: ICaseCreate = {\r\n CaseID: e/* .currentTarget.parentElement.firstElementChild.value */,\r\n Bank_id: \"\",\r\n branch_id: \"\",\r\n person_id: \"\",\r\n ValuationTypeID: \"2\",\r\n ApplicantName_Name: \"\",\r\n ApplicanttitleN: \"\",\r\n Applicant_nameN: \"\",\r\n Block: \"\",\r\n BuildingNameN: \"\",\r\n StreatRoadN: \"\",\r\n SectorN: \"\",\r\n state_id: \"\",\r\n distict: \"\",\r\n City_id: \"\",\r\n Locality_id: \"\",\r\n BuildingNo: \"\",\r\n propertyno: \"\",\r\n Property_titleN: \"\",\r\n PropertyValueN: \"\",\r\n Streat: \"\",\r\n landmark: \"\",\r\n SubLocality_id: \"\",\r\n pincode: \"\",\r\n ContactPersonName: \"\",\r\n Mob1: \"\",\r\n Mob2: \"\",\r\n vertical: \"\",\r\n casetype: \"\",\r\n Assignto: \"\",\r\n Case_statusID: \"\",\r\n supervisorID: \"\",\r\n StatusRemark: \"\",\r\n FileNo: \"\",\r\n Area: \"\",\r\n CaseRemark: \"\",\r\n Document_id: \"\",\r\n LoginID: this.session.UserID,\r\n OldCaseID: \"\",\r\n ActualFees: \"\",\r\n ExtraFees: \"\",\r\n TotalFees: \"\",\r\n Conveyance: \"\",\r\n ApprovalPersonName: \"\",\r\n ApprovalContact: \"\",\r\n ApprovalDocPath: \"0\",\r\n AssignType: \"D\",\r\n usage:\"\",\r\n propertytype:\"\",\r\n Operation: \"\",\r\n PaymentType:\"\",\r\n Zone_id:\"\",\r\n Vertical_id:\"\",\r\n ENgConv:\"\",\r\n Approval_Remarks:\"\",\r\n FeesType:\"\",\r\n ExtraEngConv:\"\",\r\n ExtraEngConvRemark:\"\",\r\n IsOtherOffice:\"\",\r\n OtherOffice:\"\",\r\n adroitbranch:\"\",\r\n }\r\n \r\n ApiService.FtvSendSMS(data).then((responce: any) => {\r\n \r\n this.ngxService.stop();\r\n if (responce.status === 200) {\r\n Swal.fire('Thanks...', 'Resend Message Successfully', 'success');\r\n this.router.navigate([\"Home\"]);\r\n \r\n }\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n console.log(\"Getting Error In caseCreate\",e);\r\n Swal.fire('Oops...', 'Something went wrong!', 'error');\r\n });\r\n \r\n \r\n }\r\n \r\n addDoc(e) {\r\n \r\n this.logID = e/* .currentTarget.parentElement.firstElementChild.value */;\r\n this.HeaderText = \"Upload Report\";\r\n if (this.logID) {\r\n this.IsEditStatus = true;\r\n this.IsDocument = true;\r\n this.ngxService.start();\r\n ApiService.SupSidebar(this.logID).then((responce: any) => {\r\n \r\n if (responce.status == 200) {\r\n if (responce.data) { \r\n this.getdocurl=responce.data.CaseDoc;\r\n for (const Dvalue in responce.data.CaseDoc) {\r\n \r\n let docValss = {\r\n url: this.getdocurl[Dvalue].url,\r\n name: this.getdocurl[Dvalue].name\r\n }\r\n this.getdocurl[Dvalue] = docValss;\r\n }\r\n // this.openInNewTabs(this.getdocurl);\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n \r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n }\r\n handleFileSelect(evt) {\r\n this.updatedFiles = evt.target.files;\r\n };\r\n handleSanctionPlanDoc(evt) {\r\n this.sanctionPlanDoc = evt.target.files;\r\n }\r\n handlereport(evt) {\r\n this.reportPlanDoc = evt.target.files;\r\n }\r\n updateDocument() {\r\n \r\n if (this.logID) {\r\n if (this.sanctionPlanDoc || this.updatedFiles || this.reportPlanDoc) {\r\n \r\n let formData = new FormData();\r\n if (this.updatedFiles) {\r\n for (let val of this.updatedFiles) {\r\n formData.append(\"CaseID\", this.logID);\r\n formData.append(\"imgname\", val.name);\r\n formData.append(\"files\", val);\r\n }\r\n }\r\n if (this.sanctionPlanDoc) {\r\n \r\n // for (let val of this.sanctionPlanDoc) {\r\n // formData.append(\"CaseID\", this.logID);\r\n // formData.append(\"imgname\", val.name);\r\n // formData.append(\"files\", val);\r\n // }\r\n formData.append(\"CaseID\", this.logID);\r\n formData.append(\"imgname\", this.sanctionPlanDoc[0].name);\r\n formData.append(\"files\", this.sanctionPlanDoc[0]);\r\n }\r\n if (this.reportPlanDoc) {\r\n \r\n formData.append(\"CaseID\", this.logID);\r\n formData.append(\"imgname\", this.reportPlanDoc[0].name);\r\n formData.append(\"files\", this.reportPlanDoc[0]);\r\n formData.append(\"loginID\", this.session.UserID);\r\n }\r\n this.ngxService.start();\r\n ApiService.UpdateReport(formData).then((responce: any) => {\r\n \r\n \r\n if (responce.status === 200) {\r\n this.IsEditStatus = false;\r\n this.sanctionPlanDoc = undefined;\r\n this.updatedFiles = undefined;\r\n this.getMainGridData(\"6\");\r\n // this.router.navigate([\"/NotCompatible\", { id: this.logID }]);\r\n //Swal.fire('Success...', 'Upload Report Sucessfully!', 'success');\r\n \r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong in document update!', 'error');\r\n });\r\n } else {\r\n Swal.fire('Oops...', 'Please select atleast one document!', 'warning');\r\n }\r\n }\r\n }\r\n DeleteDoc(e){\r\n \r\n this.ngxService.start();\r\n let val = {\r\n Case_id: this.logID,\r\n Status: \"\",\r\n FilePath: e,\r\n Type: \"doc\",\r\n Message: \"\",\r\n LoginID: this.session.UserID\r\n }\r\n \r\n ApiService.DeleteDocument(val).then((responce: any) => {\r\n if (responce.status == 200) { \r\n this.IsEditStatus = false;\r\n Swal.fire('Success...', 'Delete Document Sucessfully!', 'success');\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n \r\n \r\n \r\n \r\n \r\n \r\n }\r\n \r\n","module.exports = \"
      \\r\\n
    • \\r\\n General Details1\\r\\n
    • \\r\\n
    • \\r\\n General Details2\\r\\n
    • \\r\\n
    • \\r\\n Property Detail\\r\\n
    • \\r\\n
    • \\r\\n Catchment Area Analysis\\r\\n
    • \\r\\n
    • \\r\\n CFM\\r\\n
    • \\r\\n
    • \\r\\n Other\\r\\n
    • \\r\\n
    • \\r\\n Property Radar\\r\\n
    • \\r\\n
    • \\r\\n Case Detail\\r\\n
    • \\r\\n
    • \\r\\n \\r\\n
    • \\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n\\r\\n

    Factor

    \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    Point Of InterestAvailabilitycountNearestDistance(Nearest)Action
    {{grid.FactorName}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Open\\r\\n Map\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n

    Catchment Area

    \\r\\n Inner circle radius 200 Mrt. Outer circle radius 500 Mrt. \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    {{ModalTitle}}
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \"","import { Component, OnInit, Renderer2, ElementRef, Output, Input, EventEmitter, Directive } from '@angular/core';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { ApiService } from '../service/service';\r\nimport { SessionService } from '../service/sessionGlobalVar';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { IftvDetails, IFactorDetails, IUpdateFactorDetails,UpdateDataForGrid } from '../service/type';\r\nimport Swal from 'sweetalert2';\r\ndeclare var $: any;\r\ndeclare var google: any;\r\n\"use strict\";\r\n\r\n@Component({\r\n selector: 'app-osv-catchment-area-analysis',\r\n templateUrl: './osv-catchment-area-analysis.component.html',\r\n styleUrls: []\r\n})\r\nexport class OsvCatchmentAreaAnalysisComponent implements OnInit { \r\n caseID: string;\r\n valuationID: number;\r\n type = \"C\";\r\n Latitude: string;\r\n Longitude: string;\r\n GridDetail: any;\r\n countVal = [];\r\n historicalData: boolean = false;\r\n ModalTitle: string;\r\n HistoricalData: any;\r\n CaseUid:string;\r\n App_Name:string;\r\n Property_Numb:string;\r\n Build_no:string;\r\n Landmark:string;\r\n streat:string;\r\n state:string;\r\n city:string;\r\n location:string;\r\n case_Type:string;\r\n file_no:string;\r\n document_details:string;\r\n rate:string;\r\n unit:string;\r\n case_status:string;\r\n eng:string;\r\n Sublocation:string;\r\n getdocurl:any;\r\n showInfrasture:boolean=true;\r\n constructor(private route: ActivatedRoute, private router: Router, private service: ApiService, private session: SessionService, private ngxService: NgxUiLoaderService, private renderer: Renderer2, private el: ElementRef) { }\r\n\r\n ngOnInit() {\r\n for (let i = 0; i <= 50; i++) {\r\n this.countVal.push(i);\r\n }\r\n this.route.params.subscribe(params => {\r\n if (params.id) {\r\n const id = window.atob(params.id);\r\n this.caseID = id;\r\n this.getFactorPointDetails();\r\n this.getGioLocation();\r\n if (params.valuation == 1) {\r\n this.valuationID = params.valuation;\r\n } else {\r\n Swal.fire('Oops...', 'Something went wrong!', 'error');\r\n }\r\n } else {\r\n Swal.fire('Oops...', 'Something went wrong!', 'error');\r\n }\r\n });\r\n }\r\n //OSV Main Grid\r\n GenralDetails1(e: any) {\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 1) {\r\n this.router.navigate([\"/OsvGeneralDetail1\", { id: data, valuation: this.valuationID, type: 'G' }]);\r\n }\r\n }\r\n GenralDetails2(e: any) {\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 1) {\r\n this.router.navigate([\"/OsvGeneralDetail1\", { id: data, valuation: this.valuationID, type: 'S' }]);\r\n }\r\n }\r\n CatchMentDetails(e: any) {\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 1) {\r\n this.router.navigate([\"/OsvCatchmentAreaAnalysis\", { id: data, valuation: this.valuationID }]);\r\n }\r\n }\r\n\r\n PropertyDetail(e: any) {\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 1) {\r\n this.router.navigate([\"/OsvPropertyDetail\", { id: data, valuation: this.valuationID }]);\r\n }\r\n }\r\n CFM(e: any) {\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 1) {\r\n this.router.navigate([\"/OsvCfm\", { id: data, valuation: this.valuationID }]);\r\n }\r\n }\r\n Other(e: any) {\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 1) {\r\n this.router.navigate([\"/OsvOther\", { id: data, valuation: this.valuationID }]);\r\n }\r\n }\r\n PropertyRadar(e: any) {\r\n\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 1) {\r\n this.router.navigate([\"/PropertyRadar\", { id: data, valuation: this.valuationID }]);\r\n }\r\n }\r\n \r\n closeModel() {\r\n $(\"#modelShowData\").hide();\r\n }\r\n showHistoricalData() {\r\n this.historicalData = true;\r\n // this.webcrowlData = false;\r\n this.ModalTitle = \"Case Details\"\r\n $(\"#modelShowData\").show();\r\n \r\n this.ngxService.start();\r\n \r\n ApiService.SupSidebar(this.caseID).then((responce: any) => {\r\n if (responce.status == 200) {\r\n if (responce.data) {\r\n // this.HistoricalData = responce.data;\r\n this.CaseUid= responce.data.CaseUID;\r\n this.App_Name=responce.data.Applicant_Name;\r\n this.Property_Numb=responce.data.Property_No;\r\n this.Build_no=responce.data.Building_No;\r\n this.Landmark=responce.data.Land_mark;\r\n this.streat=responce.data.Street_Sector;\r\n this.state=responce.data.statename;\r\n this.city=responce.data.cityname;\r\n this.location=responce.data.LocationName;\r\n this.case_Type=responce.data.typeofcasename;\r\n this.document_details=responce.data.Documents;\r\n this.file_no=responce.data.File_No;\r\n this.rate=responce.data.TotalFees;\r\n this.unit=responce.data.Block;\r\n this.case_status=responce.data.CaseStatusname;\r\n this.eng=responce.data.engName;\r\n this.Sublocation=responce.data.SubLocationname;\r\n this.getdocurl=responce.data.CaseDoc;\r\n for (const Dvalue in responce.data.CaseDoc) {\r\n let docValss = {\r\n url: this.getdocurl[Dvalue].url,\r\n name: this.getdocurl[Dvalue].name\r\n }\r\n this.getdocurl[Dvalue] = docValss;\r\n } \r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n openInNewReportTab(href: any) {\r\n Object.assign(document.createElement('a'), {\r\n target: '_blank',\r\n href,\r\n }).click();\r\n }\r\n View() {\r\n let data = this.caseID/* .currentTarget.parentElement.firstElementChild.value */;\r\n const LoginID = localStorage.getItem('userID');\r\n const val: UpdateDataForGrid = {\r\n CaseID: data,\r\n Type: \"View\",\r\n watermark: \"\",\r\n casecreatedfrom: \"\",\r\n UserID: LoginID,\r\n Remark: \"\",\r\n Supervisor: \"\",\r\n RoleID: \"\",\r\n }\r\n ApiService.UpdateGridDataAndGetUrl(val).then((responce: any) => {\r\n if (responce.status === 200) {\r\n this.openInNewReportTab(responce.data.URL);\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n\r\n\r\n showMap(e: any) {\r\n if (this.Latitude && this.Longitude ) {\r\n $(\"#map111\").show();\r\n const type = e;\r\n initialize(type); \r\n } else {\r\n Swal.fire(\"Oops\", \"Location Not Found\", \"info\");\r\n }\r\n }\r\n hideMap() {\r\n $(\"#map111\").hide();\r\n }\r\n getFactorPointDetails() {\r\n this.ngxService.start();\r\n let data: IFactorDetails = {\r\n Type: this.type,\r\n CaseID: this.caseID\r\n }\r\n ApiService.GetFacorPointDetails(data).then((responce: any) => {\r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n this.GridDetail = responce.data;\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n getGioLocation() { \r\n ApiService.getGioLocation(this.caseID).then((responce: any) => { \r\n if (responce.status === 200) {\r\n if (responce.data.Latitude && responce.data.Longitude) {\r\n this.Latitude = responce.data.Latitude;\r\n this.Longitude = responce.data.Longitude;\r\n $(\"#inptLat\").val(responce.data.Latitude)\r\n $(\"#inptlog\").val(responce.data.Longitude)\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n console.log(\"Getting Error in Gio Location\");\r\n });\r\n }\r\n btnSave(e: any) {\r\n const caseID = this.caseID;\r\n let UpdateFtvData = [];\r\n let type = this.type;\r\n $(\"#example1 tbody tr\").each(function (index, val) {\r\n (val.children[4].firstElementChild).value\r\n let value: IUpdateFactorDetails = {\r\n CaseID: caseID,\r\n FactorApiTag: \"\",\r\n FactorName: val.children[0].innerHTML,\r\n available: (val.children[1].firstElementChild).value,\r\n dbcol: (val.children[5].firstElementChild).value,\r\n distnce: (val.children[4].firstElementChild).value,\r\n fcount: (val.children[2].firstElementChild).value,\r\n vicname: (val.children[3].firstElementChild).value,\r\n type: type\r\n }\r\n UpdateFtvData.push(value);\r\n\r\n });\r\n\r\n const val = window.btoa(this.caseID);\r\n let data: IftvDetails = {\r\n details: UpdateFtvData\r\n }\r\n ApiService.UpdateFtvFactorData(data).then((responce: any) => {\r\n if (responce.status === 200) {\r\n Swal.fire('Thanks...', 'Update Data Successfully', 'success');\r\n // const data = window.btoa(this.caseID);\r\n this.router.navigate([\"/SupFtvFinalValuation\", { id: val, valuation: this.valuationID }]);\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n // this.router.navigate([\"/SupFtvFinalValuation\", { id: val, valuation: this.valuationID }]);\r\n // Swal.fire('Thanks...', 'Update Data Successfully', 'success');\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n\r\n }\r\n\r\n}\r\nlet map;\r\nlet service;\r\nlet infowindow;\r\nlet pyrmont;\r\n\r\nfunction initialize(type: string) {\r\n const lat = $(\"#inptLat\").val();\r\n const lot = $(\"#inptlog\").val();\r\n pyrmont = new google.maps.LatLng(lat, lot);\r\n map = new google.maps.Map(document.getElementById('map'), {\r\n center: pyrmont,\r\n zoom: 16,\r\n backgroundColor: \"blue\"\r\n });\r\n let request = {\r\n location: pyrmont,\r\n radius: '500',\r\n type: [type.toLocaleLowerCase()]\r\n };\r\n service = new google.maps.places.PlacesService(map);\r\n service.nearbySearch(request, callback);\r\n var circle = new google.maps.Circle({\r\n center: pyrmont,\r\n map: map,\r\n radius: 200, // IN METERS.\r\n fillColor: '#FF0000',\r\n fillOpacity: 0.3,\r\n strokeColor: \"#FF0000\",\r\n strokeWeight: 2,\r\n });\r\n var circle = new google.maps.Circle({\r\n center: pyrmont,\r\n map: map,\r\n radius: 500, // IN METERS.\r\n fillColor: '#FF0000',\r\n fillOpacity: 0.3,\r\n strokeColor: \"#FF0000\",\r\n strokeWeight: 2,\r\n });\r\n\r\n}\r\n\r\nfunction callback(results, status) {\r\n console.log(results);\r\n if (status == google.maps.places.PlacesServiceStatus.OK) {\r\n \r\n for (let i = 0; i < results.length; i++) {\r\n let place = results[i];\r\n createMarker(results[i], \"palace\");\r\n }\r\n createMarker(\"\", \"mainPoint\");\r\n }\r\n}\r\nfunction createMarker(place, type: string) {\r\n let marker\r\n if (type == \"palace\") {\r\n marker = new google.maps.Marker({\r\n map: map,\r\n position: place.geometry.location,\r\n title: place.name\r\n });\r\n } else {\r\n marker = new google.maps.Marker({\r\n map: map,\r\n position: pyrmont,\r\n title: \"Subject Property\",\r\n icon: \"../assets/images/icons8-marker-52.png\"\r\n });\r\n }\r\n google.maps.event.addListener(marker, 'click', function () {\r\n infowindow.setContent(place.name);\r\n infowindow.open(map, this);\r\n\r\n });\r\n\r\n\r\n}\r\n","module.exports = \"
      \\r\\n
    • \\r\\n General Details1\\r\\n
    • \\r\\n
    • \\r\\n General Details2\\r\\n
    • \\r\\n
    • \\r\\n Property Detail\\r\\n
    • \\r\\n \\r\\n
    • \\r\\n CFM\\r\\n
    • \\r\\n
    • \\r\\n Other\\r\\n
    • \\r\\n
    • \\r\\n Property Radar\\r\\n
    • \\r\\n \\r\\n
    • \\r\\n \\r\\n
    • \\r\\n
    • \\r\\n \\r\\n
    • \\r\\n

    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n \\r\\n\\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n \\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n\\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n\\r\\n\\r\\n   \\r\\n   \\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n\\r\\n
    \\r\\n

    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n

    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n

    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n\\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n\\r\\n
    \\r\\n\\r\\n\\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    {{ModalTitle}}
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    Property TypeProp DescriptionPriceAreaRate(sqrt)Date
    {{grid.Property_type}}{{grid.Prop_description}}{{grid.Price}}{{grid.area}}{{grid.Rate_Pr_Sqft}}{{grid.Added_on}}
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    Property TypeAddressMarketRateMaxMarketRateMinCreated On
    {{grid.propertytype}}{{grid.address}}{{grid.MarketRateMax}}{{grid.MarketRateMin}}{{grid.CreatedOn}}
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    {{ModalTitle1}}
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \"","import { Component, OnInit, Renderer2, ElementRef, Output, Input, EventEmitter, Directive } from '@angular/core';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { ApiService } from '../service/service';\r\nimport { SessionService } from '../service/sessionGlobalVar';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport Swal from 'sweetalert2';\r\nimport { IFairMarketValue, ISuperPropertyDetails,IWebClowl,IQCreference ,UpdateDataForGrid} from '../service/type';\r\nimport * as JSZip from 'jszip';\r\nimport * as JSZipUtils from 'jszip-utils';\r\nimport * as FileSaver from 'file-saver';\r\ndeclare var $: any;\r\n\"use strict\";\r\n\r\n@Component({\r\n selector: 'app-osv-cfm',\r\n templateUrl: './osv-cfm.component.html',\r\n styleUrls: []\r\n})\r\nexport class OsvCfmComponent implements OnInit {\r\n caseID: string;\r\n valuationID: number;\r\n IsCompositeField: boolean = false;\r\n IsLandBuildField: boolean = false;\r\n IsFutureConstruction:boolean=false;\r\n FutureConstructionstatus:string;\r\n NAFutureConstruction:boolean=false;\r\n LandArea: number=0;\r\n TotalBuiltUpArea: number=0;\r\n AreaAdoptedValuation: number=0;\r\n MarketRateMin: number = 0;\r\n MarketRateMax: number = 0;\r\n ApplicableRateLand: number=0;\r\n CurrentMarketValueLand: number=0;\r\n ddlValueLandShareProperty: number=100;\r\n txtValueLandShareSubjectProp: number = 0;\r\n LandShareforSubjectProperty: number=0;\r\n ApplicableRateConstruction: number=0;\r\n ValueOfConstruction: number=0;\r\n ValueConstructionForPermissible: number=0;\r\n CompositeRatePerSft: number=0;\r\n FairMarketValueOfProperty: number=0;\r\n ValueOfAmenities: number=0;\r\n FairMarketValueWithAmenities: number=0;\r\n RentalValue: number=0;\r\n ddlForcedSaleValue: number=0;\r\n txtForcedSaleValue: number=0;\r\n ddlRealizableValue: number=0;\r\n txtddlRealizableValue: number=0;\r\n InsurableValueINR: number=0;\r\n ProposedAreaConstruction: number=0;\r\n ProposedRatePerFutureConstruction: number=0;\r\n FutureStageConstruction:number=0;\r\n ValueFutureConstruction:number=0;\r\n ValueFutureConstructiononDate:number=0;\r\n ValueFutureConstructionCompletion:number=0;\r\n RemarkOfAmenities:string;\r\n FMVonDate:number=0;\r\n FMVonCompletion:number=0;\r\n EstimateRecommendedRenovationConstruction: number=0;\r\n NetMarketValue: number=0;\r\n SubDivision: number=0;\r\n ValuationAsPerGovermentReckonerApprovedRates: number=0;\r\n Resalability: string;\r\n Rentability: string;\r\n FairMarketType: string;\r\n DapriciationValue: number = 0;\r\n PropertyType: string;\r\n UserId: number;\r\n SuccessFailedMsg: string;\r\n PropertyScoreFunctional: string = \"\";\r\n historicalData: boolean = false;\r\n webcrowlData: boolean = false;\r\n Gridwebcrowl: any;\r\n HistoricalData: any;\r\n ModalTitle: string;\r\n historicalData1: boolean = false;\r\n ModalTitle1: string;\r\n HistoricalData1: any;\r\n CaseUid:string;\r\n App_Name:string;\r\n Property_Numb:string;\r\n Build_no:string;\r\n Landmark:string;\r\n streat:string;\r\n state:string;\r\n city:string;\r\n location:string;\r\n case_Type:string;\r\n file_no:string;\r\n document_details:string;\r\n rate:string;\r\n unit:string;\r\n case_status:string;\r\n eng:string;\r\n Sublocation:string;\r\n getdocurl:any;\r\n radioSel:any;\r\n radioSelectedString:string;\r\n radioSelected:string;\r\n getMainImage = [];\r\n getOtherImage = [];\r\n getTemplateImage = [];\r\n SelectedImage: string = \"\";\r\n SelectedImageMain: string = \"\";\r\n SelectedImageOther: string = \"\";\r\n ImgVal: any = \"\";\r\n images =[];\r\n imagename=[];\r\n isZoomed = false;\r\n pos = { top: 0, left: 0, x: 0, y: 0 };\r\n constructor(private route: ActivatedRoute, private router: Router, private service: ApiService, private session: SessionService, private ngxService: NgxUiLoaderService, private renderer: Renderer2, private el: ElementRef) { }\r\n\r\n ngOnInit() { \r\n $(\"#modelShowDataCase\").hide();\r\n $(\"#modelShowDataPhoto\").show();\r\n this.route.params.subscribe(params => {\r\n if (params.id) {\r\n const id = window.atob(params.id);\r\n this.caseID = id;\r\n this.getSupPropertyDetails();\r\n if (params.valuation == 1) {\r\n this.valuationID = params.valuation;\r\n } else {\r\n Swal.fire('Oops...', 'Something went wrong!', 'error');\r\n }\r\n } else {\r\n Swal.fire('Oops...', 'Something went wrong!', 'error');\r\n }\r\n });\r\n \r\n this.IsCompositeField = true;\r\n this.PropertyType = \"Composite\";\r\n this.UserId = parseInt(localStorage.getItem(\"userID\"));\r\n this.WebcrollData();\r\n this.QCReferenceData();\r\n this.GetImage();\r\n this.showHistoricalData1();\r\n }\r\n //OSV Main Grid\r\n GenralDetails1(e: any) {\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 1) {\r\n this.router.navigate([\"/OsvGeneralDetail1\", { id: data, valuation: this.valuationID, type: 'G' }]);\r\n }\r\n }\r\n GenralDetails2(e: any) {\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 1) {\r\n this.router.navigate([\"/OsvGeneralDetail1\", { id: data, valuation: this.valuationID, type: 'S' }]);\r\n }\r\n }\r\n PropertyDetail(e: any) {\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 1) {\r\n this.router.navigate([\"/OsvPropertyDetail\", { id: data, valuation: this.valuationID }]);\r\n }\r\n }\r\n CFM(e: any) {\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 1) {\r\n this.router.navigate([\"/OsvCfm\", { id: data, valuation: this.valuationID }]);\r\n }\r\n }\r\n Other(e: any) {\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 1) {\r\n this.router.navigate([\"/OsvOther\", { id: data, valuation: this.valuationID }]);\r\n }\r\n }\r\n GetImage() {\r\n this.ngxService.start();\r\n ApiService.GetAllImage(this.caseID)\r\n .then((responce: any) => {\r\n this.ImgVal = responce.data.MainImage;\r\n for (const ival in responce.data.MainImage) {\r\n let docValssa = {\r\n URL:\r\n responce.data.MainImage[ival].URL +\r\n \"?type=\" +\r\n new Date().getMilliseconds(),\r\n name: responce.data.MainImage[ival].name,\r\n };\r\n this.getMainImage[ival] = docValssa;\r\n this.SelectedImageMain = this.getMainImage[0].URL;\r\n for(let i=0; i< this.getMainImage.length; i++) {\r\n this.images.push(this.getMainImage[i].URL);\r\n this.imagename.push(this.getMainImage[i].name)\r\n } \r\n }\r\n for (const ival in responce.data.TemplateImage) {\r\n let docValssa = {\r\n URL:\r\n responce.data.TemplateImage[ival].URL +\r\n \"?type=\" +\r\n new Date().getMilliseconds(),\r\n name: responce.data.TemplateImage[ival].name,\r\n };\r\n this.getTemplateImage[ival] = docValssa;\r\n this.SelectedImage = this.getTemplateImage[0].URL;\r\n for(let i=0; i< this.getTemplateImage.length; i++) {\r\n this.images.push(this.getTemplateImage[i].URL);\r\n this.imagename.push(this.getTemplateImage[i].name)\r\n } \r\n }\r\n debugger;\r\n for (const ival in responce.data.OtherImage) {\r\n let docValssa = {\r\n URL:\r\n responce.data.OtherImage[ival].URL +\r\n \"?type=\" +\r\n new Date().getMilliseconds(),\r\n name: responce.data.OtherImage[ival].name,\r\n };\r\n this.getOtherImage[ival] = docValssa;\r\n this.SelectedImageOther = this.getOtherImage[0].URL;\r\n for(let i=0; i< this.getOtherImage.length; i++) {\r\n this.images.push(this.getOtherImage[i].URL);\r\n this.imagename.push(this.getOtherImage[i].name)\r\n } \r\n }\r\n this.ngxService.stop();\r\n })\r\n .catch((error) => {\r\n this.ngxService.stop();\r\n Swal.fire(\"Oops...\", \"Something went wrong\", \"error\");\r\n });\r\n }\r\n ChangeImageTemplate(e: any) {\r\n debugger;\r\n this.SelectedImage = this.getTemplateImage[e].URL;\r\n }\r\n ChangeImageMain(e: any) {\r\n debugger;\r\n this.SelectedImageMain = this.getMainImage[e].URL;\r\n }\r\n ChangeImageOther(e: any) {\r\n debugger;\r\n this.SelectedImageOther = this.getOtherImage[e].URL;\r\n }\r\n PropertyRadar(e: any) {\r\n\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 1) {\r\n this.router.navigate([\"/PropertyRadar\", { id: data, valuation: this.valuationID }]);\r\n }\r\n }\r\n CatchMentDetails(e:any){\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 1) {\r\n this.router.navigate([\"/OsvCatchmentAreaAnalysis\", { id: data, valuation: this.valuationID }]);\r\n }\r\n }\r\n getSupPropertyDetails() {\r\n \r\n this.ngxService.start();\r\n let data: ISuperPropertyDetails = {\r\n CaseID: this.caseID,\r\n Type: \"CFMV\",\r\n Stage: \"D\"\r\n }\r\n \r\n ApiService.SupPropertydetails(data).then((response: any) => {\r\n \r\n if (response.status === 200) {\r\n \r\n if (response.data) {\r\n \r\n this.setPageDataValue(response.data, this.PropertyType);\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', '11Something went wrong try again!', 'error');\r\n });\r\n }\r\n\r\n // set page Data controls\r\n setPageDataValue(data: any, propertyType: string) {\r\n debugger;\r\n // this.caseID=data.CaseID;\r\n this.CompositeRatePerSft = data.CompositeRate;\r\n this.DapriciationValue=data.DapriciationValue;\r\n this.EstimateRecommendedRenovationConstruction = data.EstimateRecommended;\r\n if(data.FairMarketType==\"NULL\"||data.FairMarketType==\"\"){\r\n this.FairMarketType =\"Composite\";\r\n this.radioSelected = \"Composite\";\r\n this.radioSelectedString = JSON.stringify(this.radioSel);\r\n //this.Compositet = this.userForm.get('uname').value;\r\n this.IsCompositeField = true;\r\n this.IsLandBuildField = false;\r\n }else{\r\n this.FairMarketType = data.FairMarketType;\r\n }\r\n this.FairMarketValueOfProperty = data.FairMarketValueofproperty;\r\n this.FairMarketValueWithAmenities = data.FairMarketValuewithAmenities;\r\n this.txtForcedSaleValue = data.Forced_Sale_Value;\r\n if(data.Forced_Sale_ValueDDL==\"\"||data.Forced_Sale_ValueDDL==\"0\"||data.Forced_Sale_ValueDDL==\"null\")\r\n {this.ddlForcedSaleValue=0;}\r\n else{this.ddlForcedSaleValue=data.Forced_Sale_ValueDDL;}\r\n // this.ValuationAsPerGovermentReckonerApprovedRates = data.Govt_Approved_Rate;\r\n this.InsurableValueINR = data.Insurable_value;\r\n // this.CurrentMarketValueLand= data.MarketValueofProperty;\r\n this.MarketRateMin = data.MinRate;\r\n this.MarketRateMax = data.MaxRate;\r\n this.NetMarketValue = data.NetMarketValue;\r\n this.PropertyType = data.PropertyType;\r\n this.ProposedAreaConstruction = data.ProposedAreaOfConstruction;\r\n this.ProposedRatePerFutureConstruction = data.ProposedRateFuConstruction;\r\n if(data.Future_Construction_Stage==\"\"||data.Future_Construction_Stage==\"0\"||data.Future_Construction_Stage==\"null\")\r\n {this.FutureStageConstruction=0;}\r\n else{ this.FutureStageConstruction = data.Future_Construction_Stage;}\r\n this.ValueFutureConstructiononDate=data.Future_Constructionon_onDate;\r\n this.ValueFutureConstructionCompletion=data.Future_Construction_onCompletion;\r\n this.RemarkOfAmenities=data.Amenities_Remark;\r\n this.FMVonDate=data.fairMarketvalue_onDate;\r\n this.FMVonCompletion=data.NetMarketValue;\r\n if(data.RealizableValueDDL==\"\"||data.RealizableValueDDL==\"0\"||data.RealizableValueDDL==\"null\")\r\n {this.ddlRealizableValue=0;}\r\n else{ this.ddlRealizableValue = data.RealizableValueDDL;}\r\n this.txtddlRealizableValue = data.Realizable_Value;\r\n this.Rentability = data.Rentability;\r\n this.RentalValue = data.RentalValue;\r\n this.Resalability = data.Resalability;\r\n this.SubDivision = data.Subdivision;\r\n this.ValueOfAmenities = data.ValueofAmenities;\r\n this.ApplicableRateConstruction = data.applicablerate;\r\n this.ApplicableRateLand = data.applicablerateofland;\r\n this.AreaAdoptedValuation = data.areaadopted;\r\n this.CurrentMarketValueLand = data.MarketValueofProperty;\r\n if(data.LandShareDDL==\"\"||data.LandShareDDL==\"100\"||data.LandShareDDL==\"null\")\r\n {this.ddlValueLandShareProperty=100;}\r\n else{ this.ddlValueLandShareProperty = data.LandShareDDL;}\r\n this.txtValueLandShareSubjectProp = data.valuelandshare;\r\n this.LandArea = data.landarea;\r\n this.ValuationAsPerGovermentReckonerApprovedRates = data.recknor_rate;\r\n this.TotalBuiltUpArea = data.totalbuilduparea;\r\n this.ValueOfConstruction = data.valofConstruction_ACT;\r\n this.ValueConstructionForPermissible = data.valofConstruction_Per;\r\n this.PropertyScoreFunctional = data.PropertyScore;\r\n if(data.FairMarketType==\"Composite\")\r\n { //this.Compositet=true;\r\n this.radioSelected = \"Composite\";\r\n this.radioSelectedString = JSON.stringify(this.radioSel);\r\n //this.Compositet = this.userForm.get('uname').value;\r\n this.IsCompositeField = true;\r\n this.IsLandBuildField = false;\r\n this.compositepageload();\r\n }\r\n else if(data.FairMarketType==\"LandBuilding\"){\r\n this.radioSelected = \"LandBuilding\";\r\n this.radioSelectedString = JSON.stringify(this.radioSel);\r\n this.IsLandBuildField = true;\r\n this.IsCompositeField = false;\r\n if(data.Future_Construction==\"Y\"){\r\n this.NAFutureConstruction=true;\r\n this.IsFutureConstruction=true; \r\n this.calculatefutureconst(); \r\n }else{\r\n this.NAFutureConstruction=false;\r\n this.IsFutureConstruction=false;\r\n }\r\n this.landbuildingpageload();\r\n }\r\n \r\n }\r\n // hide show input controls for Composite and Land Building\r\n hideShowCFM(e: any) {\r\n if (e.currentTarget.value == \"Composite\") {\r\n this.IsCompositeField = true;\r\n this.IsLandBuildField = false;\r\n this.FairMarketType = \"Composite\";\r\n }\r\n else {\r\n this.IsLandBuildField = true;\r\n this.IsCompositeField = false;\r\n this.FairMarketType = \"LandBuilding\";\r\n }\r\n }\r\n\r\n validateMinRateRange() {\r\n if (this.MarketRateMax < this.MarketRateMin) {\r\n Swal.fire('Oops', 'Maximum Rate Range can not be less than Min Range', 'error');\r\n }\r\n }\r\n validateMaxRateRange() {\r\n \r\n let min= this.MarketRateMin.toString();\r\n let max=this.MarketRateMax.toString();\r\n if (parseInt(min) >parseInt(max)) {\r\n Swal.fire('Oops', 'Minimum Rate Range can not be greater than Max Range', 'error');\r\n } else if (parseInt(max)< parseInt(min)) {\r\n Swal.fire('Oops', 'Maximum Rate Range can not be less than Min Range', 'error');\r\n } else {\r\n\r\n }\r\n }\r\n// composite rate calculation //\r\ncompositepageload(){\r\n this.Cal_Fair_Market_Value_of_property();\r\n this.CalcFairMarketValueWithAmenities();\r\n}\r\n//keyup change the fair market value//\r\nCal_Fair_Market_Value_of_property(){\r\n let adopted_area=0;\r\n adopted_area= this.AreaAdoptedValuation;\r\n let composite_rate=0;\r\n composite_rate= this.CompositeRatePerSft;\r\n let min= this.MarketRateMin.toString();\r\n let max=this.MarketRateMax.toString();\r\n if(parseInt(composite_rate.toString()) >= parseInt(min) && parseInt(composite_rate.toString()) <= parseInt(max)){\r\n this.FairMarketValueOfProperty = (+adopted_area) * (+composite_rate);\r\n this.FairMarketValueWithAmenities = (+this.FairMarketValueOfProperty) + (+this.ValueOfAmenities);\r\n }\r\n else if(parseInt(composite_rate.toString()) >= parseInt(max)) {\r\n Swal.fire('Oops', 'Please enter the rate between Min & Max range limit.', 'error');\r\n this.CompositeRatePerSft = 0;\r\n this.FairMarketValueOfProperty=0;\r\n }\r\n}\r\n//change the place of textbox to calculate fair market value //\r\n CalcFairMarketValueOfProperty() {\r\n \r\n let adopted_area=0;\r\n adopted_area= this.AreaAdoptedValuation;\r\n let composite_rate=0;\r\n composite_rate= this.CompositeRatePerSft;\r\n let min= this.MarketRateMin.toString();\r\n let max=this.MarketRateMax.toString();\r\n if(parseInt(composite_rate.toString()) >= parseInt(min) && parseInt(composite_rate.toString()) <= parseInt(max)){\r\n this.FairMarketValueOfProperty = (+adopted_area) * (+composite_rate);\r\n this.FairMarketValueWithAmenities = (+this.FairMarketValueOfProperty) + (+this.ValueOfAmenities);\r\n }\r\n else if(parseInt(composite_rate.toString()) <= parseInt(min)) {\r\n Swal.fire('Oops', 'Please enter the rate between Min & Max range limit.', 'error');\r\n this.CompositeRatePerSft = 0;\r\n this.FairMarketValueOfProperty=0;\r\n }\r\n }\r\n CalcFairMarketValueWithAmenities() {\r\n if (this.FairMarketType == \"LandBuilding\"){\r\n this.FairMarketValueWithAmenities = (+this.FairMarketValueOfProperty) + (+this.ValueOfAmenities);\r\n // this.calCulateVal();\r\n if( this.IsFutureConstruction==true){\r\nthis.FMVonDate=this.FairMarketValueWithAmenities + this.ValueFutureConstructiononDate;\r\nthis.FMVonCompletion=this.FairMarketValueWithAmenities + this.ValueFutureConstructionCompletion;\r\n }\r\n }\r\n else{\r\n this.FairMarketValueWithAmenities = (+this.FairMarketValueOfProperty) + (+this.ValueOfAmenities);\r\n\r\n }\r\n}\r\n\r\n\r\n// Land And Building Calculation //\r\nlandbuildingpageload(){\r\n this.Current_Market_Value_of_Land();\r\n this. CalculateCurrentMarketValueLand();\r\n this.CalcFairMarketValueWithAmenities();\r\n}\r\nCurrent_Market_Value_of_Land(){\r\n let min= this.MarketRateMin.toString();\r\n let max=this.MarketRateMax.toString();\r\n let compositeRate = this.ApplicableRateLand.toString();\r\n if (this.FairMarketType == \"LandBuilding\"){\r\n if (parseInt(compositeRate) >= parseInt(min) && parseInt(compositeRate) <= parseInt(max))\r\n {\r\n this.CurrentMarketValueLand=(+this.LandArea)*(+this.ApplicableRateLand);\r\n let forcedChangeValue = +this.ddlValueLandShareProperty;\r\n if(forcedChangeValue==0){\r\n this.txtForcedSaleValue = (this.FairMarketValueOfProperty * 100) * 0.01;\r\n this.CurrentMarketValueLand=(+this.LandArea)*(+this.ApplicableRateLand);\r\n this.txtValueLandShareSubjectProp = (100 * this.CurrentMarketValueLand) * 0.01;\r\n } \r\n else{ \r\n this.txtForcedSaleValue = (this.FairMarketValueOfProperty * forcedChangeValue) * 0.01;\r\n this.CurrentMarketValueLand=(+this.LandArea)*(+this.ApplicableRateLand);\r\n this.txtValueLandShareSubjectProp = (forcedChangeValue * this.CurrentMarketValueLand) * 0.01;\r\n \r\n }\r\n this.ValueConstructionForPermissible = this.ApplicableRateConstruction * this.AreaAdoptedValuation;\r\n this.FairMarketValueOfProperty = ((+this.txtValueLandShareSubjectProp) + (+this.ValueConstructionForPermissible));\r\n this.calCulateVal();\r\n }\r\n else if(parseInt(compositeRate) >= parseInt(max)) {\r\n Swal.fire('Oops', 'Please enter the rate between Min & Max range limit.', 'error');\r\n this.ApplicableRateLand = 0;\r\n this.FairMarketValueOfProperty=0;\r\n this.CurrentMarketValueLand=0;\r\n }\r\n }\r\n}\r\n CalculateCurrentMarketValueLand() {\r\n\r\n let min= this.MarketRateMin.toString();\r\n let max=this.MarketRateMax.toString();\r\n let compositeRate = this.ApplicableRateLand.toString();\r\n if (parseInt(compositeRate) >= parseInt(min) && parseInt(compositeRate) <= parseInt(max)) {\r\n // this.ApplicableRateLand = compositeRate;\r\n \r\n let forcedChangeValue = +this.ddlValueLandShareProperty;\r\n if(forcedChangeValue==0){\r\n this.txtForcedSaleValue = (this.FairMarketValueOfProperty * 100) * 0.01;\r\n this.CurrentMarketValueLand=(+this.LandArea)*(+this.ApplicableRateLand);\r\n this.txtValueLandShareSubjectProp = (100 * this.CurrentMarketValueLand) * 0.01;\r\n } \r\n else{ \r\n this.txtForcedSaleValue = (this.FairMarketValueOfProperty * forcedChangeValue) * 0.01;\r\n this.CurrentMarketValueLand=(+this.LandArea)*(+this.ApplicableRateLand);\r\n this.txtValueLandShareSubjectProp = (forcedChangeValue * this.CurrentMarketValueLand) * 0.01;\r\n }\r\n \r\n this.ValueConstructionForPermissible = this.ApplicableRateConstruction * this.AreaAdoptedValuation;\r\n this.FairMarketValueOfProperty = ((+this.txtValueLandShareSubjectProp) + (+this.ValueConstructionForPermissible));\r\n this.calCulateVal();\r\n //this.CalculateValueOfConstructionPermisibleArea();\r\n } else {\r\n Swal.fire('Oops', 'Please enter the rate between Min & Max range limit.', 'error');\r\n this.ApplicableRateLand = 0;\r\n }\r\n }\r\n\r\n LandShareProprtyChange(e: any) {\r\n let landShareProprty = e.currentTarget.value;\r\n this.txtValueLandShareSubjectProp = (landShareProprty * this.CurrentMarketValueLand) * 0.01;\r\n if(this.ValueConstructionForPermissible!=0){\r\n this.FairMarketValueOfProperty = this.txtValueLandShareSubjectProp+this.ValueConstructionForPermissible ;\r\n }\r\n else{ this.FairMarketValueOfProperty = this.txtValueLandShareSubjectProp ;}\r\n \r\n this.calCulateVal();\r\n }\r\n\r\n CalculateValueOfConstructionActualArea() {\r\n this.ValueOfConstruction = this.TotalBuiltUpArea * this.ApplicableRateConstruction;\r\n this.ValueConstructionForPermissible = this.TotalBuiltUpArea * this.AreaAdoptedValuation;\r\n \r\n }\r\n calCulateVal(){\r\n this.ForcedSalesValueChange();\r\n this.RealizableValueChange();\r\n }\r\n caluconstvalue(){\r\n this.ValueConstructionForPermissible = this.ApplicableRateConstruction * this.AreaAdoptedValuation;\r\n this.FairMarketValueOfProperty = ((+this.txtValueLandShareSubjectProp) + (+this.ValueConstructionForPermissible));\r\n }\r\n CalculateValueOfConstructionPermisibleArea() {\r\n \r\n // this.ValueConstructionForPermissible = this.TotalBuiltUpArea * this.AreaAdoptedValuation;\r\n this.ValueOfConstruction = this.TotalBuiltUpArea * this.ApplicableRateConstruction;\r\n //this.FairMarketValueOfProperty = ((this.txtValueLandShareSubjectProp) + (this.ValueConstructionForPermissible));\r\n this.calCulateVal();\r\n }\r\n CalculateFairMarketValueOfProprty() {\r\n this.FairMarketValueOfProperty = this.txtValueLandShareSubjectProp + this.ValueConstructionForPermissible;\r\n this.calCulateVal();\r\n }\r\n ForcedSalesValueChange() {\r\n let forcedChangeValue = +this.ddlForcedSaleValue;\r\n if (this.FairMarketType == \"LandBuilding\") {\r\n if( this.IsFutureConstruction==true)\r\n {\r\n if(forcedChangeValue==0){\r\n this.txtForcedSaleValue = (this.FMVonDate * 0) * 0.01;\r\n }\r\n else{\r\n this.txtForcedSaleValue = (this.FMVonDate * forcedChangeValue) * 0.01;\r\n }\r\n }\r\n else{\r\n if(forcedChangeValue==0){\r\n this.txtForcedSaleValue = (this.FairMarketValueWithAmenities * 0) * 0.01;\r\n }\r\n else{\r\n this.txtForcedSaleValue = (this.FairMarketValueWithAmenities * forcedChangeValue) * 0.01;\r\n }\r\n }\r\n } else {\r\n this.txtForcedSaleValue = (this.FairMarketValueWithAmenities * forcedChangeValue) * 0.01;\r\n }\r\n }\r\n RealizableValueChange() {\r\n let realizableValue = +this.ddlRealizableValue;\r\n if (this.FairMarketType == \"LandBuilding\") {\r\n if( this.IsFutureConstruction==true)\r\n {\r\n if(realizableValue==0){\r\n this.txtddlRealizableValue = (this.FMVonDate * 0) * 0.01;\r\n }else{\r\n this.txtddlRealizableValue = (this.FMVonDate * realizableValue) * 0.01;\r\n }\r\n }else{\r\n if(realizableValue==0){\r\n this.txtddlRealizableValue = (this.FairMarketValueWithAmenities * 0) * 0.01;\r\n }else{\r\n this.txtddlRealizableValue = (this.FairMarketValueWithAmenities * realizableValue) * 0.01;\r\n }\r\n\r\n }\r\n } else {\r\n this.txtddlRealizableValue = (this.FairMarketValueWithAmenities * realizableValue) * 0.01;\r\n }\r\n }\r\n SaveFairMarketValue() {\r\n \r\n this.ngxService.start();\r\n if (!this.MarketRateMin) {\r\n this.MarketRateMin = 0;\r\n } if (!this.MarketRateMax) {\r\n this.MarketRateMax = 0;\r\n }\r\n if(this.FairMarketType==\"Composite\"){\r\n this.FairMarketType=\"Composite\";\r\n }else if(this.FairMarketType==\"LandBuilding\"){\r\n this.FairMarketType=\"LandBuilding\";\r\n }else{ this.FairMarketType=\"Composite\";}\r\n if( this.IsFutureConstruction==true){\r\n this.FutureConstructionstatus=\"Y\";\r\n }\r\n else{\r\n this.FutureConstructionstatus=\"N\";\r\n }\r\n /* let fairMarketValueObj: IFairMarketValue = { */\r\n let data: IFairMarketValue = {\r\n landarea: this.LandArea.toString(),\r\n totalbuilduparea: this.TotalBuiltUpArea.toString(),\r\n areaadopted: this.AreaAdoptedValuation.toString(),\r\n applicablerateofland: this.ApplicableRateLand.toString(),\r\n currentMarketVal: this.CurrentMarketValueLand.toString(),\r\n applicablerate: this.ApplicableRateLand.toString(),\r\n construction_rate: this.ApplicableRateConstruction.toString(),\r\n valofConstruction_ACT:'',\r\n valofConstruction_Per: this.ValueConstructionForPermissible.toString(),\r\n CompositeRate: this.CompositeRatePerSft.toString(),\r\n FairMarketValueofproperty: this.FairMarketValueOfProperty.toString(),\r\n ValueofAmenities: this.ValueOfAmenities.toString(),\r\n FairMarketValuewithAmenities: this.FairMarketValueWithAmenities.toString(),\r\n MarketValueofProperty: this.CurrentMarketValueLand.toString(),\r\n RentalValue: this.RentalValue.toString(),\r\n Forced_Sale_Value: this.txtForcedSaleValue.toString(),\r\n Forced_Sale_ValueDDL:this.ddlForcedSaleValue.toString(),\r\n RealizableValueDDL: this.ddlRealizableValue.toString(),\r\n Realizable_Value: this.txtddlRealizableValue.toString(),\r\n Insurable_value: this.InsurableValueINR.toString(),\r\n ProposedAreaOfConstruction: this.ProposedAreaConstruction.toString(),\r\n ProposedRateFuConstruction: this.ProposedRatePerFutureConstruction.toString(),\r\n Future_Construction:this.FutureConstructionstatus,\r\n Future_Construction_Stage:this.FutureStageConstruction.toString(),\r\n Future_Constructionon_onDate:this.ValueFutureConstructiononDate.toString(),\r\n Future_Construction_onCompletion:this.ValueFutureConstructionCompletion.toString(),\r\n Amenities_Remark:this.RemarkOfAmenities.toString(),\r\n fairMarketvalue_onDate:this.FMVonDate.toString(),\r\n EstimateRecommended: this.EstimateRecommendedRenovationConstruction.toString(),\r\n NetMarketValue: this.FMVonCompletion.toString(),\r\n Govt_Approved_Rate: this.ValuationAsPerGovermentReckonerApprovedRates.toString(),\r\n recknor_rate:this.ValuationAsPerGovermentReckonerApprovedRates.toString(),\r\n Subdivision: this.SubDivision.toString(),\r\n Resalability: this.Resalability,\r\n Rentability: this.Rentability,\r\n FairMarketType: this.FairMarketType.toString(),\r\n DapriciationValue: this.DapriciationValue.toString(),\r\n PropertyType: this.PropertyType.toString(),\r\n LandShareDDL:this.ddlValueLandShareProperty.toString(),\r\n ddlValueLandshare: (this.ddlValueLandShareProperty == null) ? \"\" : this.ddlValueLandShareProperty.toString(),\r\n\r\n\r\n valuelandshare: (this.txtValueLandShareSubjectProp == null) ? \"\" : this.txtValueLandShareSubjectProp.toString(),\r\n\r\n MinRate: this.MarketRateMin.toString(),\r\n MaxRate: this.MarketRateMax.toString(),\r\n UserID: this.UserId.toString(),\r\n CaseID: this.caseID\r\n }\r\n \r\n ApiService.saveCalculateFairMarketValue(data).then((response: any) => {\r\n if (response.status == \"200\") {\r\n Swal.fire(\"Thanks\", \"Data Saved Successfully\", \"success\");\r\n this.Other(\"\");\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire(\"Oops...\", \"Something went wrong please try again\", \"error\");\r\n })\r\n }\r\n closeModel() {\r\n $(\"#modelShowData\").hide();\r\n }\r\n showHistoricalData() {\r\n this.historicalData = true;\r\n this.webcrowlData = false;\r\n this.ModalTitle = \"Historical Data\"\r\n $(\"#modelShowData\").show();\r\n }\r\n showCrowlData() {\r\n this.webcrowlData = true;\r\n this.historicalData = false;\r\n $(\"#modelShowData\").show();\r\n this.ModalTitle = \"Web Crowl Data\"\r\n }\r\n WebcrollData() {\r\n this.ngxService.start();\r\n let val: IWebClowl = {\r\n propertytype: this.caseID,\r\n sublocation: \"\"\r\n }\r\n ApiService.GetWebCrawl(val).then((responce: any) => {\r\n if (responce.status == 200) {\r\n if (responce.data) {\r\n this.Gridwebcrowl = responce.data;\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n QCReferenceData() {\r\n this.ngxService.start();\r\n let val: IQCreference = {\r\n state: this.caseID,\r\n city: \"\",\r\n location: \"\",\r\n sublocation: \"\",\r\n propertytype: \"\",\r\n }\r\n ApiService.GetQCreference(val).then((responce: any) => {\r\n if (responce.status == 200) {\r\n if (responce.data) {\r\n this.HistoricalData = responce.data;\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n\r\n \r\n closeModel1() {\r\n $(\"#modelShowData1\").hide();\r\n }\r\n showHistoricalData1() {\r\n this.historicalData1 = true;\r\n // this.webcrowlData = false;\r\n this.ModalTitle1 = \"Case Details\"\r\n //$(\"#modelShowData1\").show();\r\n \r\n this.ngxService.start();\r\n \r\n ApiService.SupSidebar(this.caseID).then((responce: any) => {\r\n if (responce.status == 200) {\r\n if (responce.data) {\r\n // this.HistoricalData = responce.data;\r\n this.CaseUid= responce.data.CaseUID;\r\n this.App_Name=responce.data.Applicant_Name;\r\n this.Property_Numb=responce.data.Property_No;\r\n this.Build_no=responce.data.Building_No;\r\n this.Landmark=responce.data.Land_mark;\r\n this.streat=responce.data.Street_Sector;\r\n this.state=responce.data.statename;\r\n this.city=responce.data.cityname;\r\n this.location=responce.data.LocationName;\r\n this.case_Type=responce.data.typeofcasename;\r\n this.document_details=responce.data.Documents;\r\n this.file_no=responce.data.File_No;\r\n this.rate=responce.data.TotalFees;\r\n this.unit=responce.data.Block;\r\n this.case_status=responce.data.CaseStatusname;\r\n this.eng=responce.data.engName;\r\n this.Sublocation=responce.data.SubLocationname;\r\n this.getdocurl=responce.data.CaseDoc;\r\n for (const Dvalue in responce.data.CaseDoc) {\r\n let docValss = {\r\n url: this.getdocurl[Dvalue].url,\r\n name: this.getdocurl[Dvalue].name\r\n }\r\n this.getdocurl[Dvalue] = docValss;\r\n }\r\n for(let i=0; i< this.getdocurl.length; i++) {\r\n this.images.push(this.getdocurl[i].url);\r\n this.imagename.push(this.getdocurl[i].name)\r\n } \r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n\r\n GetFairMarketValue() {\r\n\r\n }\r\n changeStatus(e: any) {\r\n const val = this.NAFutureConstruction;\r\n if (val) {\r\n this.IsFutureConstruction=true;\r\n }\r\n else{\r\n this.IsFutureConstruction=false;\r\n }\r\n }\r\n calculateStagefutureconstruction(e: any){\r\n let FutureStage = e.currentTarget.value;\r\n this.ValueFutureConstructiononDate = ((this.ProposedAreaConstruction * this.ProposedRatePerFutureConstruction) * FutureStage)/100;\r\n /* ProposedAreaConstruction: number;\r\n ProposedRatePerFutureConstruction: number;\r\n FutureStageConstruction:number=0;\r\n ValueFutureConstruction:number;\r\n ValueFutureConstructiononDate:number;\r\n ValueFutureConstructionCompletion:number;\r\n RemarkOfAmenities:string;\r\n FMVonDate:number;\r\n FMVonCompletion:number; */\r\n\r\n }\r\n calculatefutureconst(){\r\n this.ValueFutureConstructionCompletion = (this.ProposedAreaConstruction * this.ProposedRatePerFutureConstruction) ;\r\n \r\n if(this.FutureStageConstruction==0){\r\n this.ValueFutureConstructiononDate = ((this.ProposedAreaConstruction * this.ProposedRatePerFutureConstruction) *0)/100;\r\n } \r\n else{ \r\n this.ValueFutureConstructiononDate = ((this.ProposedAreaConstruction * this.ProposedRatePerFutureConstruction)*this.FutureStageConstruction) /100;\r\n \r\n }\r\n this.FairMarketValueWithAmenities = (+this.FairMarketValueOfProperty) + (+this.ValueOfAmenities);\r\n // this.calCulateVal();\r\n if( this.IsFutureConstruction==true){\r\nthis.FMVonDate=this.FairMarketValueWithAmenities + this.ValueFutureConstructiononDate;\r\nthis.FMVonCompletion=this.FairMarketValueWithAmenities + this.ValueFutureConstructionCompletion;\r\n }\r\n }\r\n\r\n openInNewReportTab(href: any) {\r\n Object.assign(document.createElement('a'), {\r\n target: '_blank',\r\n href,\r\n }).click();\r\n }\r\n View() {\r\n let data = this.caseID/* .currentTarget.parentElement.firstElementChild.value */;\r\n const LoginID = localStorage.getItem('userID');\r\n const val: UpdateDataForGrid = {\r\n CaseID: data,\r\n Type: \"View\",\r\n watermark: \"\",\r\n casecreatedfrom: \"\",\r\n UserID: LoginID,\r\n Remark: \"\",\r\n Supervisor: \"\",\r\n RoleID: \"\",\r\n }\r\n ApiService.UpdateGridDataAndGetUrl(val).then((responce: any) => {\r\n if (responce.status === 200) {\r\n this.openInNewReportTab(responce.data.URL);\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n downloadImageZipFiles() {\r\n var links = this.images;\r\n var imgname=this.imagename;\r\n var zip = new JSZip();\r\n var count = 0;\r\n var zipFilename = this.caseID+\".zip\";\r\n\r\n links.forEach(function (url, i) {\r\n var filename = imgname[i];\r\n filename = filename.replace(/[\\/\\*\\|\\:\\<\\>\\?\\\"\\\\]/gi, '').replace(\"httpsi.imgur.com\",\"\");\r\n // loading a file and add it in a zip file\r\n JSZipUtils.getBinaryContent(url, function (err, data) {\r\n if (err) {\r\n throw err; // or handle the error\r\n }\r\n zip.file(filename, data, { binary: true });\r\n count++;\r\n if (count == links.length) {\r\n zip.generateAsync({ type: 'blob' }).then(function (content) {\r\n FileSaver.saveAs(content, zipFilename);\r\n });\r\n }\r\n });\r\n });\r\n }\r\n \r\n\r\n}\r\n","module.exports = \"
      \\r\\n
    • \\r\\n General Details1\\r\\n
    • \\r\\n
    • \\r\\n General Details2\\r\\n
    • \\r\\n \\r\\n
    • \\r\\n Property Detail\\r\\n
    • \\r\\n \\r\\n
    • \\r\\n CFM\\r\\n
    • \\r\\n
    • \\r\\n Other\\r\\n
    • \\r\\n
    • \\r\\n Property Radar\\r\\n
    • \\r\\n\\r\\n
    • \\r\\n \\r\\n
    • \\r\\n
    • \\r\\n \\r\\n
    • \\r\\n \\r\\n
    \\r\\n\\r\\n\\r\\n

    \\r\\n {{msgText}}\\r\\n

    \\r\\n\\r\\n\\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n\\r\\n
    \\r\\n

    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n

    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n

    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n\\r\\n
    \\r\\n
    \\r\\n

    \\r\\n \\r\\n

    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n\\r\\n  \\r\\n  \\r\\n  \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n\\r\\n  \\r\\n  \\r\\n  \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n Save\\r\\n
    \\r\\n
    \\r\\n\\r\\n\\r\\n


    \\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    {{ModalTitle}}
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n \\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\"","import { Component, OnInit, Renderer2, ElementRef, Output, Input, EventEmitter, Directive, ViewChild } from '@angular/core';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { ApiService } from '../service/service';\r\nimport { SessionService } from '../service/sessionGlobalVar';\r\nimport { IPageOsvPageTagDetails, ISaveOsvTagData, Idocumentlist,UpdateDataForGrid } from '../service/type'\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport Swal from 'sweetalert2';\r\ndeclare var $: any;\r\nimport * as JSZip from 'jszip';\r\nimport * as JSZipUtils from 'jszip-utils';\r\nimport * as FileSaver from 'file-saver';\r\n\"use strict\";\r\n@Component({\r\n selector: \"app-osv-general-detail1\",\r\n templateUrl: \"./osv-general-detail1.component.html\",\r\n styleUrls: [],\r\n})\r\nexport class OsvGeneralDetail1Component implements OnInit {\r\n caseID: string;\r\n valuationID: number;\r\n pageTagDetails: any;\r\n getdocurlName: any;\r\n dropdownSettings: any;\r\n valuationType: string;\r\n tagValues = [];\r\n dropdownList = [];\r\n dropdownList1 = [];\r\n selectedItems: any;\r\n newSelectedItems = [];\r\n type: string;\r\n msgText: string;\r\n OldUrl: string;\r\n historicalData: boolean = false;\r\n ModalTitle: string;\r\n HistoricalData: any;\r\n CaseUid: string;\r\n App_Name: string;\r\n Property_Numb: string;\r\n Build_no: string;\r\n Landmark: string;\r\n streat: string;\r\n state: string;\r\n city: string;\r\n location: string;\r\n case_Type: string;\r\n file_no: string;\r\n document_details: string;\r\n rate: string;\r\n unit: string;\r\n case_status: string;\r\n eng: string;\r\n Sublocation: string;\r\n docurl: string;\r\n getdocurl: any;\r\n optionsSelect: Array;\r\n isEditCase: boolean = false;\r\n editCaseDetail: any = \"\";\r\n Boundry_East_Act: string;\r\n Boundry_west_Act: string;\r\n Boundry_North_Act: string;\r\n Boundry_south_Act: string;\r\n Boundry_East_doc: string;\r\n Boundry_west_doc: string;\r\n Boundry_North_doc: string;\r\n Boundry_south_doc: string;\r\n v_Boundires_val: string;\r\n getMainImage = [];\r\n getOtherImage = [];\r\n getTemplateImage = [];\r\n SelectedImage: string = \"\";\r\n SelectedImageMain: string = \"\";\r\n SelectedImageOther: string = \"\";\r\n ImgVal: any = \"\";\r\n images =[];\r\n imagename=[];\r\n isZoomed = false;\r\n pos = { top: 0, left: 0, x: 0, y: 0 };\r\n\r\n @ViewChild(\"container\") \"container\": ElementRef;\r\n @ViewChild(\"img\") \"img\": ElementRef;\r\n constructor(\r\n private route: ActivatedRoute,\r\n private router: Router,\r\n private service: ApiService,\r\n private session: SessionService,\r\n private ngxService: NgxUiLoaderService,\r\n private renderer: Renderer2,\r\n private el: ElementRef\r\n ) {\r\n this.dropdownSettings = {\r\n singleSelection: false,\r\n idField: \"id\",\r\n textField: \"text\",\r\n unSelectAllText: \"UnSelect All\",\r\n itemsShowLimit: 3,\r\n allowSearchFilter: false,\r\n };\r\n }\r\n ngOnInit() {\r\n $(\"#modelShowDataCase\").hide();\r\n $(\"#modelShowDataPhoto\").show();\r\n this.route.params.subscribe((params) => {\r\n if (params.id) {\r\n const id = window.atob(params.id);\r\n this.caseID = id;\r\n this.GetOldCaseMessage();\r\n if (params.valuation == 1) {\r\n this.valuationID = params.valuation;\r\n }\r\n if (params.type == \"S\" || params.type == \"G\") {\r\n this.type = params.type;\r\n const id = window.atob(params.id);\r\n this.caseID = id;\r\n this.GetEditCaseDetail(id);\r\n this.isEditCase = true;\r\n this.getState(\"Documents\");\r\n this.getPageDetails();\r\n this.ViewCaseGeneralDetail();\r\n this.showHistoricalData();\r\n this.GetImage();\r\n } else {\r\n Swal.fire(\"Oops...\", \"Something went wrong!\", \"error\");\r\n }\r\n } else {\r\n Swal.fire(\"Oops...\", \"Something went wrong!\", \"error\");\r\n }\r\n });\r\n this.optionsSelect = [\r\n { value: \"1\", label: \"Option 1\" },\r\n { value: \"2\", label: \"Option 2\" },\r\n { value: \"3\", label: \"Option 3\" },\r\n ];\r\n // this.QCReferenceData();\r\n }\r\n\r\n onItemSelect(item: any) {\r\n let p = this.selectedItems.length;\r\n console.log(item);\r\n }\r\n onSelectAll(items: any) {\r\n console.log(items);\r\n }\r\n onDeSelect(items: any) {\r\n this.deleteMsg(items.id);\r\n }\r\n deleteMsg(msg: string) {}\r\n getPageDetails() {\r\n this.ngxService.start();\r\n let data: IPageOsvPageTagDetails = {\r\n CaseID: this.caseID,\r\n Type: \"get\",\r\n Stage: this.type,\r\n officeID: \"1\",\r\n };\r\n ApiService.GetOsvGeneralDetailsTagData(data)\r\n .then((responce: any) => {\r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n this.pageTagDetails = responce.data;\r\n this.showmulti();\r\n if (responce.data.length > 0) {\r\n /* for (const value in responce.data) {\r\n if (this.pageTagDetails[value].TextType == 'MD') {\r\n let docVal = {\r\n id: Number(this.pageTagDetails[value].Value),\r\n text: this.pageTagDetails[value].Value\r\n }\r\n this.pageTagDetails[value] = docVal;\r\n // this.selectedItems[value]=docVal.text;\r\n }\r\n } */\r\n if (responce.data) {\r\n let DetailsData = responce.data;\r\n if (responce.data.length > 0) {\r\n for (const value in responce.data) {\r\n if (DetailsData[value].TextType == \"M\") {\r\n const newddData = DetailsData[value].valuetext;\r\n if (DetailsData[value].valuetext == \"\") {\r\n DetailsData[value].valuetext =\r\n newddData.replace(\" x\", \"\") + \",\";\r\n } else {\r\n DetailsData[value].valuetext = newddData.split(\",\");\r\n }\r\n }\r\n }\r\n }\r\n this.pageTagDetails = DetailsData;\r\n }\r\n } else {\r\n debugger;\r\n this.ngxService.stop();\r\n Swal.fire(\r\n \"Format not Compatible\",\r\n \"Format is not bind with the client. You can prepare manual report and upload with basic detail\",\r\n \"error\"\r\n );\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 1) {\r\n this.router.navigate([\r\n \"/SupNotCompatable\",\r\n { id: data, valuation: this.valuationID },\r\n ]);\r\n }\r\n }\r\n }\r\n }\r\n this.ngxService.stop();\r\n })\r\n .catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire(\"Oops...\", \"Something went wrong try again!\", \"error\");\r\n });\r\n }\r\n onChangeEvent(e: any) {\r\n const id = \"div\" + e.currentTarget.id;\r\n const selectedvalue = e.currentTarget.value;\r\n $(\"#\" + id).appen;\r\n\r\n console.log(\"value\");\r\n }\r\n /* openlandingpage(){\r\n // this.router.navigate([myBaseUrl + '\\0'], { queryParams: { 'param1': 123, 'param2': 321 } }).then(result => { window.open(link, '_blank'); });\r\n const data = window.btoa(this.caseID);\r\n let myBaseUrl= this.router.navigate([\"/OsvOther\", { id: data, valuation: this.valuationID }]);\r\n\r\n window.open('#/OsvLandingPageComponent;id='+data+';valuation=1','_blank');\r\n } */\r\n /* checkValue(e: any) {\r\n const val = e.currentTarget.value;\r\n this.IsPopUp = false;\r\n if (val) {\r\n this.selectedOldCase = true;\r\n this.GetEditOldCaseDetail(val);\r\n }\r\n console.log(e);\r\n } */\r\n updatedoclist() {\r\n const loginID = localStorage.getItem(\"userID\");\r\n let selectedDocID = \"\";\r\n if (this.selectedItems.length > 0) {\r\n for (const data in this.selectedItems) {\r\n if (data) {\r\n selectedDocID = selectedDocID + \",\" + this.selectedItems[data].id;\r\n }\r\n }\r\n selectedDocID = selectedDocID.substr(1);\r\n } else {\r\n }\r\n this.ngxService.start();\r\n let data: Idocumentlist = {\r\n CaseID: this.caseID,\r\n Document_id: selectedDocID,\r\n };\r\n this.docsupdate(data);\r\n }\r\n docsupdate(data: Idocumentlist) {\r\n ApiService.Documentlistupdate(data)\r\n .then((responce: any) => {\r\n this.ngxService.stop();\r\n if (responce.status === 200) {\r\n }\r\n })\r\n .catch((e: any) => {\r\n this.ngxService.stop();\r\n console.log(\"Getting Error In document updated\", e);\r\n Swal.fire(\"Oops...\", \"Something went wrong!\", \"error\");\r\n });\r\n }\r\n\r\n GetEditOldCaseDetail(val: string) {\r\n this.ngxService.start();\r\n\r\n ApiService.getCaseBehalfOfID(val)\r\n .then((responce: any) => {\r\n this.ngxService.stop();\r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n this.editCaseDetail = responce.data;\r\n this.bindDropdownOnEdit();\r\n // this.bindOldCaseValue();\r\n }\r\n }\r\n })\r\n .catch((e: any) => {\r\n this.ngxService.stop();\r\n console.log(\"Getting Error In GetEditCaseDetail\");\r\n Swal.fire(\"Oops...\", \"Something went wrong!\", \"error\");\r\n });\r\n }\r\n GetEditCaseDetail(val: string) {\r\n this.ngxService.start();\r\n\r\n ApiService.getCaseBehalfOfID(val)\r\n .then((responce: any) => {\r\n this.ngxService.stop();\r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n this.editCaseDetail = responce.data;\r\n console.log(this.editCaseDetail);\r\n this.bindDropdownOnEdit();\r\n // this.bindPreviousValue();\r\n }\r\n }\r\n })\r\n .catch((e: any) => {\r\n this.ngxService.stop();\r\n console.log(\"Getting Error In GetEditCaseDetail\");\r\n Swal.fire(\"Oops...\", \"Something went wrong!\", \"error\");\r\n });\r\n }\r\n ViewCaseGeneralDetail() {\r\n this.ngxService.start();\r\n let val = { caseid: this.caseID };\r\n ApiService.ViewCaseGeneralDetail(val)\r\n .then((responce: any) => {\r\n this.ngxService.stop();\r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n this.Boundry_East_Act = responce.data.Boundry_East_Act;\r\n this.Boundry_west_Act = responce.data.Boundry_west_Act;\r\n this.Boundry_south_Act = responce.data.Boundry_south_Act;\r\n this.Boundry_North_Act = responce.data.Boundry_North_Act;\r\n this.Boundry_East_doc = responce.data.Boundry_East_doc;\r\n this.Boundry_west_doc = responce.data.Boundry_west_doc;\r\n this.Boundry_North_doc = responce.data.Boundry_North_doc;\r\n this.Boundry_south_doc = responce.data.Boundry_south_doc;\r\n this.v_Boundires_val = responce.data.v_Boundires_val;\r\n }\r\n }\r\n })\r\n .catch((e: any) => {\r\n this.ngxService.stop();\r\n console.log(\"Getting Error In GetEditCaseDetail\");\r\n Swal.fire(\"Oops...\", \"Something went wrong!\", \"error\");\r\n });\r\n }\r\n getState(val: string) {\r\n this.ngxService.start();\r\n ApiService.GetMaster(val)\r\n .then((responce: any) => {\r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n if (val === \"State\") {\r\n this.state = responce.data.DATA;\r\n }\r\n if (val === \"Documents\") {\r\n if (responce.data.DATA) {\r\n if (responce.data.DATA.length > 0) {\r\n for (const value of responce.data.DATA) {\r\n let docVal = {\r\n id: Number(value.AttributeID),\r\n text: value.AttributeName,\r\n };\r\n this.dropdownList1.push(docVal);\r\n }\r\n this.dropdownList = this.dropdownList1;\r\n if (this.isEditCase) {\r\n console.log(\"this is edit case\");\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }\r\n this.ngxService.stop();\r\n })\r\n .catch((e: any) => {\r\n this.ngxService.stop();\r\n console.log(\"Getting Error in getState\");\r\n Swal.fire(\"Oops...\", \"something went wrong\", \"error\");\r\n });\r\n }\r\n downloadImageZipFiles() {\r\n var links = this.images;\r\n var imgname=this.imagename;\r\n var zip = new JSZip();\r\n var count = 0;\r\n var zipFilename = this.caseID+\".zip\";\r\ndebugger;\r\n links.forEach(function (url, i) {\r\n var filename = imgname[i];\r\n filename = filename.replace(/[\\/\\*\\|\\:\\<\\>\\?\\\"\\\\]/gi, '').replace(\"httpsi.imgur.com\",\"\");\r\n // loading a file and add it in a zip file\r\n JSZipUtils.getBinaryContent(url, function (err, data) {\r\n if (err) {\r\n throw err; // or handle the error\r\n }\r\n zip.file(filename, data, { binary: true });\r\n count++;\r\n if (count == links.length) {\r\n zip.generateAsync({ type: 'blob' }).then(function (content) {\r\n FileSaver.saveAs(content, zipFilename);\r\n });\r\n }\r\n });\r\n });\r\n }\r\n bindDropdownOnEdit() {\r\n try {\r\n setTimeout(() => {\r\n if (this.editCaseDetail.Documents) {\r\n const item = this.editCaseDetail.Documents;\r\n const valArray = item.split(\",\");\r\n for (const valItem in valArray) {\r\n const supVal = this.dropdownList.find(\r\n (value) => value.id === +valArray[valItem]\r\n );\r\n if (supVal) {\r\n this.newSelectedItems.push(supVal);\r\n }\r\n }\r\n this.selectedItems = this.newSelectedItems;\r\n }\r\n }, 3000);\r\n } catch (error) {\r\n console.log(\"Error IS \", error);\r\n }\r\n }\r\n\r\n SaveOsvGenralDetails1() {\r\n let val1 = {\r\n TagName: \"Boundry East Actual\",\r\n TagValue: this.Boundry_East_Act,\r\n TagType: \"T\",\r\n dbcol: \"Boundry_East_Act\",\r\n };\r\n let val2 = {\r\n TagName: \"Boundry West Actual\",\r\n TagValue: this.Boundry_west_Act,\r\n TagType: \"T\",\r\n dbcol: \"Boundry_west_Act\",\r\n };\r\n let val3 = {\r\n TagName: \"Boundry North Actual\",\r\n TagValue: this.Boundry_North_Act,\r\n TagType: \"T\",\r\n dbcol: \"Boundry_North_Act\",\r\n };\r\n let val4 = {\r\n TagName: \"Boundry South Actual\",\r\n TagValue: this.Boundry_south_Act,\r\n TagType: \"T\",\r\n dbcol: \"Boundry_south_Act\",\r\n };\r\n let val5 = {\r\n TagName: \"Boundry East Document\",\r\n TagValue: this.Boundry_East_doc,\r\n TagType: \"T\",\r\n dbcol: \"Boundry_East_doc\",\r\n };\r\n let val6 = {\r\n TagName: \"Boundry West Document\",\r\n TagValue: this.Boundry_west_doc,\r\n TagType: \"T\",\r\n dbcol: \"Boundry_west_doc\",\r\n };\r\n let val7 = {\r\n TagName: \"Boundry North Document\",\r\n TagValue: this.Boundry_North_doc,\r\n TagType: \"T\",\r\n dbcol: \"Boundry_North_doc\",\r\n };\r\n let val8 = {\r\n TagName: \"Boundry South Document\",\r\n TagValue: this.Boundry_south_doc,\r\n TagType: \"T\",\r\n dbcol: \"Boundry_south_doc\",\r\n };\r\n let val9 = {\r\n TagName: \"Boundaries Matching\",\r\n TagValue: this.v_Boundires_val,\r\n TagType: \"T\",\r\n dbcol: \"v_Boundires_val\",\r\n };\r\n debugger;\r\n //this.updatedoclist();\r\n const Data = document.getElementsByClassName(\"tagDetails\");\r\n let val;\r\n let UpdateOsvData = [];\r\n if (Data.length > 0) {\r\n Array.from(document.getElementsByClassName(\"tagDetails\")).forEach(\r\n function (item) {\r\n const type = ((\r\n item.getElementsByClassName(\"dbTextType\")[0]\r\n )).value;\r\n let tagValue = \"\";\r\n if (type == \"T\" || type == \"CD\" || type == \"GT\") {\r\n tagValue = item.getElementsByTagName(\"input\")[1].value;\r\n } else if (type == \"D\" || type == \"GD\") {\r\n tagValue = item.getElementsByTagName(\"select\")[0].value;\r\n if (tagValue == \"Select\") {\r\n tagValue = \"\";\r\n }\r\n } /* else if (type == \"MD\") {\r\n tagValue = item.getElementsByTagName(\"select\")[0].value;\r\n if (tagValue == \"Select\") {\r\n tagValue = \"\";\r\n }\r\n } */ else if (type == \"M\") {\r\n const dataVal = item\r\n .getElementsByTagName(\"ng-multiselect-dropdown\")[0]\r\n .getElementsByClassName(\"selected-item\");\r\n if (dataVal.length > 0) {\r\n for (let data = 0; data < dataVal.length; data++) {\r\n const newVal = dataVal[data];\r\n const selectedData = newVal.innerText;\r\n tagValue += newVal.innerText.replace(\" x\", \"\") + \",\";\r\n window.console.log(\"selected data is\", selectedData);\r\n }\r\n tagValue = tagValue.slice(0, tagValue.length - 1);\r\n }\r\n }\r\n val = {\r\n TagName: item.getElementsByTagName(\"label\")[0].textContent,\r\n TagValue: tagValue,\r\n TagType: type,\r\n dbcol: ((\r\n item.getElementsByClassName(\"dbColumn\")[0]\r\n )).value,\r\n };\r\n if (val.dbcol != \"\" && val.TagType != \"\") {\r\n UpdateOsvData.push(val);\r\n }\r\n /* UpdateOsvData.push(val1);\r\n UpdateOsvData.push(val2);\r\n UpdateOsvData.push(val3);\r\n UpdateOsvData.push(val4);\r\n UpdateOsvData.push(val5);\r\n UpdateOsvData.push(val6);\r\n UpdateOsvData.push(val7);\r\n UpdateOsvData.push(val8);\r\n UpdateOsvData.push(val9); */\r\n }\r\n );\r\n UpdateOsvData.push(val1);\r\n UpdateOsvData.push(val2);\r\n UpdateOsvData.push(val3);\r\n UpdateOsvData.push(val4);\r\n UpdateOsvData.push(val5);\r\n UpdateOsvData.push(val6);\r\n UpdateOsvData.push(val7);\r\n UpdateOsvData.push(val8);\r\n UpdateOsvData.push(val9);\r\n\r\n let insertData: ISaveOsvTagData = {\r\n CaseID: this.caseID,\r\n Stage: this.type,\r\n Data: UpdateOsvData,\r\n };\r\n\r\n this.saveGenralDetails(insertData);\r\n console.log(insertData);\r\n }\r\n this.updatedoclist();\r\n }\r\n saveGenralDetails(data: ISaveOsvTagData) {\r\n this.ngxService.start();\r\n\r\n ApiService.InsertOsvGenralDetails(data)\r\n .then((responce: any) => {\r\n if (responce.status === 200) {\r\n Swal.fire(\"Thanks...\", \"Data Save Successfully\", \"success\");\r\n\r\n if (this.type == \"G\") {\r\n this.GenralDetails2(\"\");\r\n } else {\r\n this.PropertyDetail(\"\");\r\n }\r\n }\r\n this.ngxService.stop();\r\n })\r\n .catch((e: any) => {\r\n this.ngxService.stop();\r\n console.log(\"Error In showHistoricalData1\");\r\n // Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n\r\n GenralDetails1(e: any) {\r\n this.type = \"G\";\r\n this.getPageDetails();\r\n const gen1 = document.getElementById(\"ligenralDetails1\");\r\n const gen2 = document.getElementById(\"ligenralDetails2\");\r\n gen1.classList.add(\"headerActive\");\r\n gen2.classList.remove(\"headerActive\");\r\n }\r\n GenralDetails2(e: any) {\r\n this.type = \"S\";\r\n this.getPageDetails();\r\n const gen2 = document.getElementById(\"ligenralDetails2\");\r\n const gen1 = document.getElementById(\"ligenralDetails1\");\r\n gen2.classList.add(\"headerActive\");\r\n gen1.classList.remove(\"headerActive\");\r\n }\r\n PropertyDetail(e: any) {\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 1) {\r\n this.router.navigate([\r\n \"/OsvPropertyDetail\",\r\n { id: data, valuation: this.valuationID },\r\n ]);\r\n }\r\n }\r\n /* PropertyDetailnew(e: any) {\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 1) {\r\n this.router.navigate([\"/SUPPropertyDetails\", { id: data, valuation: this.valuationID }]);\r\n }\r\n } */\r\n CFM(e: any) {\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 1) {\r\n this.router.navigate([\r\n \"/OsvCfm\",\r\n { id: data, valuation: this.valuationID },\r\n ]);\r\n }\r\n }\r\n Other(e: any) {\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 1) {\r\n this.router.navigate([\r\n \"/OsvOther\",\r\n { id: data, valuation: this.valuationID },\r\n ]);\r\n }\r\n }\r\n PropertyRadar(e: any) {\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 1) {\r\n this.router.navigate([\r\n \"/PropertyRadar\",\r\n { id: data, valuation: this.valuationID },\r\n ]);\r\n }\r\n }\r\n CatchMentDetails(e: any) {\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 1) {\r\n this.router.navigate([\r\n \"/OsvCatchmentAreaAnalysis\",\r\n { id: data, valuation: this.valuationID },\r\n ]);\r\n }\r\n }\r\n GetOldCaseMessage() {\r\n this.caseID;\r\n this.ngxService.start();\r\n //\r\n ApiService.GetOldCaseMessage(this.caseID)\r\n .then((responce: any) => {\r\n if (responce.status === 200) {\r\n //\r\n this.msgText = responce.data.CaseTitle;\r\n this.OldUrl = responce.data.CaseLink;\r\n // CaseTitle,CaseLink\r\n }\r\n this.ngxService.stop();\r\n })\r\n .catch((e: any) => {\r\n this.ngxService.stop();\r\n\r\n Swal.fire(\"Oops...\", \"Something went wrong try again!\", \"error\");\r\n });\r\n }\r\n\r\n closeModel() {\r\n $(\"#modelShowData\").hide();\r\n }\r\n showmulti() {\r\n setTimeout(function () {\r\n $(\".selectpicker\").selectpicker();\r\n }, 5000);\r\n }\r\n ShowCaseData(ds: any) {\r\n if (ds == \"P\") {\r\n $(\"#modelShowDataCase\").hide();\r\n $(\"#modelShowDataPhoto\").show();\r\n }\r\n if (ds == \"C\") {\r\n $(\"#modelShowDataCase\").show();\r\n $(\"#modelShowDataPhoto\").hide();\r\n }\r\n }\r\n GetImage() {\r\n this.ngxService.start();\r\n ApiService.GetAllImage(this.caseID)\r\n .then((responce: any) => {\r\n this.ImgVal = responce.data.MainImage;\r\n for (const ival in responce.data.MainImage) {\r\n let docValssa = {\r\n URL:\r\n responce.data.MainImage[ival].URL +\r\n \"?type=\" +\r\n new Date().getMilliseconds(),\r\n name: responce.data.MainImage[ival].name,\r\n };\r\n this.getMainImage[ival] = docValssa;\r\n this.SelectedImageMain = this.getMainImage[0].URL;\r\n for(let i=0; i< this.getMainImage.length; i++) {\r\n this.images.push(this.getMainImage[i].URL);\r\n this.imagename.push(this.getMainImage[i].name)\r\n } \r\n }\r\n for (const ival in responce.data.TemplateImage) {\r\n let docValssa = {\r\n URL:\r\n responce.data.TemplateImage[ival].URL +\r\n \"?type=\" +\r\n new Date().getMilliseconds(),\r\n name: responce.data.TemplateImage[ival].name,\r\n };\r\n this.getTemplateImage[ival] = docValssa;\r\n this.SelectedImage = this.getTemplateImage[0].URL;\r\n for(let i=0; i< this.getTemplateImage.length; i++) {\r\n this.images.push(this.getTemplateImage[i].URL);\r\n this.imagename.push(this.getTemplateImage[i].name)\r\n } \r\n }\r\n debugger;\r\n for (const ival in responce.data.OtherImage) {\r\n let docValssa = {\r\n URL:\r\n responce.data.OtherImage[ival].URL +\r\n \"?type=\" +\r\n new Date().getMilliseconds(),\r\n name: responce.data.OtherImage[ival].name,\r\n };\r\n this.getOtherImage[ival] = docValssa;\r\n this.SelectedImageOther = this.getOtherImage[0].URL;\r\n for(let i=0; i< this.getOtherImage.length; i++) {\r\n this.images.push(this.getOtherImage[i].URL);\r\n this.imagename.push(this.getOtherImage[i].name)\r\n } \r\n }\r\n this.ngxService.stop();\r\n })\r\n .catch((error) => {\r\n this.ngxService.stop();\r\n Swal.fire(\"Oops...\", \"Something went wrong\", \"error\");\r\n });\r\n }\r\n showHistoricalData() {\r\n this.historicalData = true;\r\n // this.webcrowlData = false;\r\n // this.ModalTitle = \"Case Details\"\r\n // $(\"#modelShowData\").show();\r\n\r\n this.ngxService.start();\r\n\r\n ApiService.SupSidebar(this.caseID)\r\n .then((responce: any) => {\r\n if (responce.status == 200) {\r\n if (responce.data) {\r\n // this.HistoricalData = responce.data;\r\n this.CaseUid = responce.data.CaseUID;\r\n this.App_Name = responce.data.Applicant_Name;\r\n this.Property_Numb = responce.data.Property_No;\r\n this.Build_no = responce.data.Building_No;\r\n this.Landmark = responce.data.Land_mark;\r\n this.streat = responce.data.Street_Sector;\r\n this.state = responce.data.statename;\r\n this.city = responce.data.cityname;\r\n this.location = responce.data.LocationName;\r\n this.case_Type = responce.data.typeofcasename;\r\n this.document_details = responce.data.Documents;\r\n this.file_no = responce.data.File_No;\r\n this.rate = responce.data.TotalFees;\r\n this.unit = responce.data.Block;\r\n this.case_status = responce.data.CaseStatusname;\r\n this.eng = responce.data.engName;\r\n this.Sublocation = responce.data.SubLocationname;\r\n this.getdocurl = responce.data.CaseDoc;\r\n // this.getdocurlName = responce.data.CaseDocName;\r\n for (const Dvalue in responce.data.CaseDoc) {\r\n let docValss = {\r\n url: this.getdocurl[Dvalue].url,\r\n name: this.getdocurl[Dvalue].name,\r\n };\r\n this.getdocurl[Dvalue] = docValss;\r\n }\r\n for(let i=0; i< this.getdocurl.length; i++) {\r\n this.images.push(this.getdocurl[i].url);\r\n this.imagename.push(this.getdocurl[i].name)\r\n } \r\n }\r\n }\r\n this.ngxService.stop();\r\n })\r\n .catch((e: any) => {\r\n this.ngxService.stop();\r\n\r\n Swal.fire(\"Oops...\", \"Something went wrong try again!\", \"error\");\r\n });\r\n }\r\n ChangeImageTemplate(e: any) {\r\n debugger;\r\n this.SelectedImage = this.getTemplateImage[e].URL;\r\n }\r\n ChangeImageMain(e: any) {\r\n debugger;\r\n this.SelectedImageMain = this.getMainImage[e].URL;\r\n }\r\n ChangeImageOther(e: any) {\r\n debugger;\r\n this.SelectedImageOther = this.getOtherImage[e].URL;\r\n }\r\n openInNewTab() {\r\n const href = this.OldUrl;\r\n if (href != \"\") {\r\n Object.assign(document.createElement(\"a\"), {\r\n target: \"_blank\",\r\n href,\r\n }).click();\r\n } else {\r\n Swal.fire(\"Oops\", \"Url Not Found\", \"info\");\r\n }\r\n }\r\n openInNewReportTab(href: any) {\r\n Object.assign(document.createElement(\"a\"), {\r\n target: \"_blank\",\r\n href,\r\n }).click();\r\n }\r\n View() {\r\n let data =\r\n this.caseID; /* .currentTarget.parentElement.firstElementChild.value */\r\n const LoginID = localStorage.getItem(\"userID\");\r\n const val: UpdateDataForGrid = {\r\n CaseID: data,\r\n Type: \"View\",\r\n watermark: \"\",\r\n casecreatedfrom: \"\",\r\n UserID: LoginID,\r\n Remark: \"\",\r\n Supervisor: \"\",\r\n RoleID: \"\",\r\n };\r\n ApiService.UpdateGridDataAndGetUrl(val)\r\n .then((responce: any) => {\r\n if (responce.status === 200) {\r\n this.openInNewReportTab(responce.data.URL);\r\n }\r\n this.ngxService.stop();\r\n })\r\n .catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire(\"Oops...\", \"Something went wrong try again!\", \"error\");\r\n });\r\n }\r\n\r\n onClick(e) {\r\n console.log(e.clientY, e.clientX);\r\n this.isZoomed = !this.isZoomed;\r\n if (this.isZoomed) {\r\n this.container.nativeElement.style.overflow = \"hidden\";\r\n this.img.nativeElement.style.width = \"200%\";\r\n this.img.nativeElement.style.cursor = \"zoom-out\";\r\n this.img.nativeElement.style.cursor = \"zoom-out\";\r\n this.img.nativeElement.style.left = `-${e.clientX}`;\r\n this.img.nativeElement.style.top = `-${e.clientY}`;\r\n } else {\r\n this.container.nativeElement.style.overflow = \"hidden\";\r\n this.img.nativeElement.style.width = \"100%\";\r\n this.img.nativeElement.style.cursor = \"zoom-in\";\r\n }\r\n }\r\n onMouseDown(e) {\r\n this.pos = {\r\n // The current scroll\r\n left: this.container.nativeElement.scrollLeft,\r\n top: this.container.nativeElement.scrollTop,\r\n // Get the current mouse position\r\n x: e.clientX,\r\n y: e.clientY,\r\n };\r\n }\r\n\r\n mouseMoveHandler(e) {\r\n // How far the mouse has been moved\r\n const dx = (e.clientX - this.pos.x) * 2;\r\n const dy = (e.clientY - this.pos.y) * 3;\r\n\r\n // Scroll the element\r\n this.container.nativeElement.scrollTop = this.pos.top - dy;\r\n this.container.nativeElement.scrollLeft = this.pos.left - dx;\r\n }\r\n\r\n onLeave() {\r\n this.container.nativeElement.style.overflow = \"hidden\";\r\n this.img.nativeElement.style.transform = \"scale(1)\";\r\n this.img.nativeElement.style.cursor = \"zoom-in\";\r\n }\r\n}","module.exports = \"

    \\r\\n osv-landing-page works!\\r\\n

    \\r\\n\"","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-osv-landing-page',\r\n templateUrl: './osv-landing-page.component.html',\r\n styles: []\r\n})\r\nexport class OsvLandingPageComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","module.exports = \"
      \\r\\n
    • \\r\\n General Details1\\r\\n
    • \\r\\n
    • \\r\\n General Details2\\r\\n
    • \\r\\n
    • \\r\\n Property Detail\\r\\n
    • \\r\\n \\r\\n
    • \\r\\n CFM\\r\\n
    • \\r\\n
    • \\r\\n Other\\r\\n
    • \\r\\n
    • \\r\\n Property Radar\\r\\n
    • \\r\\n \\r\\n
    • \\r\\n \\r\\n
    • \\r\\n
    • \\r\\n \\r\\n
    • \\r\\n
    \\r\\n\\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n\\r\\n \\r\\n
    \\r\\n Floor\\r\\n \\r\\n Actual(Sft.)\\r\\n \\r\\n Permissible(Sft.)\\r\\n \\r\\n Sanction Plan\\r\\n \\r\\n Area adopted for valuation\\r\\n \\r\\n Deviations\\r\\n \\r\\n Usage\\r\\n \\r\\n Occupant\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n this.maxLength) this.value = this.value.slice(0, this.maxLength);\\\" maxlength=\\\"10\\\"/>\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n this.maxLength) this.value = this.value.slice(0, this.maxLength);\\\" maxlength=\\\"10\\\" />\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n

    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n

    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n

    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    Slab wise Construction Status
    SR.NO. ACTIVITY ALLOTED % FOR ACTIVITY PRESENT COMPLETION (%)REMARKS ON PROGRESS
    1PLINTH20%
    2R.C.C. ABOVE GROUND40%
    3BRICKWORK10%
    4INTERNAL PLASTER5%
    5EXTERNAL PLASTER5%
    6FLOORING5%
    7PLUMBING & ELECTRIC WORK5%
    8DOOR, WINDOW & PAINT5%
    9FINISHING & POSSESSION5%
    TOTAL COMPLETION (%)100%{{TotalPresentValue}}%
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\nSave\\r\\n
    \\r\\n
    \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    {{ModalTitle}}
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n

    Are you want to sure moved Main Image

    \\r\\n \\r\\n \\r\\n
    \\r\\n\\r\\n
    \\r\\n

    Move to Template Image\\r\\n

    \\r\\n

    Move to Other Image\\r\\n

    \\r\\n

    \\r\\n \\r\\n

    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n

    Are you want to sure Template Image

    \\r\\n \\r\\n \\r\\n
    \\r\\n\\r\\n
    \\r\\n

    Move to Main Image\\r\\n

    \\r\\n

    Move to Other Image\\r\\n

    \\r\\n

    \\r\\n \\r\\n

    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n

    Are you want to sure moved Other Image

    \\r\\n \\r\\n \\r\\n
    \\r\\n\\r\\n
    \\r\\n

    Move to Main Image\\r\\n

    \\r\\n

    Move to Template Image\\r\\n

    \\r\\n

    \\r\\n \\r\\n

    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \"","import { Component, OnInit, Renderer2, ElementRef, Output, Input, EventEmitter, Directive } from '@angular/core';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { ApiService } from '../service/service';\r\nimport { SessionService } from '../service/sessionGlobalVar';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { ISupPropertydetailsOther, IupdateOtherData, ISuperPropertyDetails, IFtpImage,UpdateDataForGrid } from '../service/type';\r\nimport {trigger, state, style, animate, transition} from '@angular/animations';\r\nimport Swal from 'sweetalert2';\r\ndeclare var $: any;\r\nimport * as JSZip from 'jszip';\r\nimport * as JSZipUtils from 'jszip-utils';\r\nimport * as FileSaver from 'file-saver';\r\n\"use strict\";\r\n\r\n@Component({\r\n selector: 'app-osv-other',\r\n templateUrl: './osv-other.component.html',\r\n styleUrls: [],\r\n /* animations: [\r\n // Each unique animation requires its own trigger. The first argument of the trigger function is the name\r\n trigger('rotatedState', [\r\n state('default', style({ transform: 'rotate(0)' })),\r\n state('rotated', style({ transform: 'rotate(-90deg)', })),\r\n state('rotated1', style({ transform: 'rotate(-180deg)', })),\r\n transition('rotated => default', animate('1500ms ease-out')),\r\n transition('default => rotated', animate('400ms ease-in'))\r\n \r\n ])\r\n] */\r\n})\r\nexport class OsvOtherComponent implements OnInit {\r\n caseID: string;\r\n valuationID: number;\r\n NoFloorOFBuilding: string;\r\n LocationOfFloor: string;\r\n SelectRemarkType: string;\r\n BrokerName1: string;\r\n BrokerName2: string;\r\n BrokerMob1: string;\r\n BrokerMob2: string;\r\n Quote1: string;\r\n Quote2: string;\r\n GenralRemark: string;\r\n ExtraRemark: string;\r\n VisitDate: string;\r\n QCDoneDate: string;\r\n ValuationResult: string;\r\n IndiaBullsReportMode: string;\r\n MarketValueDecrease: string;\r\n getAllImage = [];\r\n Latitude: string;\r\n Longitude: string;\r\n showTable: boolean = true;\r\n base64textString = [];\r\n fileName: string;\r\n historicalData: boolean = false;\r\n ModalTitle: string;\r\n HistoricalData: any;\r\n CaseUid:string;\r\n App_Name:string;\r\n Property_Numb:string;\r\n Build_no:string;\r\n Landmark:string;\r\n streat:string;\r\n state:string;\r\n city:string;\r\n location:string;\r\n case_Type:string;\r\n file_no:string;\r\n document_details:string;\r\n rate:string;\r\n unit:string;\r\n case_status:string;\r\n eng:string;\r\n Sublocation:string;\r\n getdocurl:any;\r\n updatedFiles:any;\r\n stated: string = 'default';\r\n angle:number = 0;\r\n PlinthValue:number=0;\r\n PlinthRemarks:string;\r\n RCCGroundValue:number=0;\r\n RCCGroundRemarks:string;\r\n BrickworkValue:number=0;\r\n BrickworkRemarks:string;\r\n InPlasterValue:number=0;\r\n InPlasterRemarks:string;\r\n ExPlasterValue:number=0;\r\n ExPlasterRemarks:string;\r\n FlooringValue:number=0;\r\n FlooringRemarks:string;\r\n PlumpingValue:number=0;\r\n PlumpingRemarks:string;\r\n DoorwindowValue:number=0;\r\n DoorwindowRemarks:string;\r\n PossessionValue:number=0;\r\n PossessionRemarks:string;\r\n TotalPresentValue:number=0;\r\n constructor(private route: ActivatedRoute, private router: Router, private service: ApiService, private session: SessionService, private ngxService: NgxUiLoaderService, private renderer: Renderer2, private el: ElementRef) { }\r\n getMainImage = [];\r\n getOtherImage = [];\r\n getTemplateImage = [];\r\n GetMovedImgType:any=\"\";\r\n GetMovedImgName:any=\"\";\r\n images =[];\r\n imagename=[];\r\n SelectedImage: string = \"\";\r\n SelectedImageMain: string = \"\";\r\n SelectedImageOther: string = \"\";\r\n ImgVal: any = \"\";\r\n\r\n isZoomed = false;\r\n pos = { top: 0, left: 0, x: 0, y: 0 };\r\n ngOnInit() {\r\n $(\"#modelShowDataCase\").hide();\r\n $(\"#modelShowDataPhoto\").show();\r\n this.route.params.subscribe(params => {\r\n if (params.id) {\r\n const id = window.atob(params.id);\r\n this.caseID = id;\r\n this.GetMainPageData();\r\n this.GetSlabwiseData();\r\n this.getSupPropertyDetails();\r\n this.GetImage();\r\n this.showHistoricalData();\r\n if (params.valuation == 1) {\r\n this.valuationID = params.valuation;\r\n } else {\r\n Swal.fire('Oops...', 'Something went wrong1!', 'error');\r\n }\r\n } else {\r\n Swal.fire('Oops...', 'Something went wrong1!', 'error');\r\n }\r\n });\r\n }\r\n \r\n rotateImage(direction,i,url){\r\n debugger;\r\n console.log(url);\r\n //this.angle = this.angle + 90;\r\n this.angle = direction == 'left' ? -90 : 90;\r\n this.renderer.setStyle(document.querySelector('.abc'+i), 'transform' , `rotate(${this.angle}deg)`);\r\n console.log(url);\r\n let formData = new FormData();\r\n \r\n formData.append(\"imgurl\", url);\r\n ApiService.RotateAndSaveImage(formData).then((responce: any) => {\r\n \r\n if (responce.status == 200) { \r\n this.GetImage();\r\n /* Swal.fire('Success...', 'Image Rotate Sucessfully!', 'success'); */\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n\r\n }\r\n MoveImagePopup(imgtyp,url){\r\n debugger;\r\n this.GetMovedImgType=imgtyp;\r\n this.GetMovedImgName=url;\r\n }\r\nMoveImage(dFolder)\r\n{\r\n debugger;\r\n this.ngxService.start();\r\n let val = {\r\n Case_id: this.caseID,\r\n SFolder: this.GetMovedImgType,\r\n SFileName: this.GetMovedImgName,\r\n DFolder: dFolder,\r\n LoginID: this.session.UserID\r\n }\r\n \r\n ApiService.ImageMoved(val).then((responce: any) => {\r\n \r\n if (responce.status == 200) { \r\n // this.IsEditStatus = false;\r\n this.getMainImage = [];\r\n this.getOtherImage = [];\r\n this.getTemplateImage = [];\r\n this.GetImage();\r\n Swal.fire('Success...', 'Image Moved Sucessfully!', 'success');\r\n }\r\n \r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n}\r\n DeleteDoc(e){\r\n \r\n this.ngxService.start();\r\n let val = {\r\n Case_id: this.caseID,\r\n Status: \"\",\r\n FilePath: e,\r\n Type: \"images\",\r\n Message: \"\",\r\n LoginID: this.session.UserID\r\n }\r\n \r\n ApiService.DeleteDocument(val).then((responce: any) => {\r\n \r\n if (responce.status == 200) { \r\n // this.IsEditStatus = false;\r\n this.GetImage();\r\n Swal.fire('Success...', 'Delete Document Sucessfully!', 'success');\r\n }\r\n \r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n UpdateImagesave(e) {\r\n \r\n let val = {\r\n Case_id: this.caseID,\r\n name: \"jp\"+e.name,\r\n type: \"image/jpeg\"\r\n \r\n } \r\n let formData = new FormData();\r\n \r\n formData.append(\"CaseID\", this.caseID);\r\n formData.append(\"imgname\", val.name);\r\n formData.append(\"files\", val.type); \r\n \r\n \r\n this.ngxService.start();\r\n ApiService.UploadFTPImagemultiple(formData).then((responce: any) => {\r\n \r\n this.GetImage(); \r\n Swal.fire('Thanks', 'Image Upload Successfully', 'success');\r\n this.ngxService.stop();\r\n }).catch((error) => {\r\n this.ngxService.stop();\r\n console.log(\"Error in GetImage\");\r\n Swal.fire('Oops...', 'Something went wrong U', 'error');\r\n })\r\n\r\n }\r\n UpdateImage() {\r\n \r\n let formData = new FormData();\r\n if (this.updatedFiles) {\r\n for (let val of this.updatedFiles) {\r\n formData.append(\"CaseID\", this.caseID);\r\n formData.append(\"imgname\", val.name);\r\n formData.append(\"files\", val); \r\n }\r\n }\r\n \r\n this.ngxService.start();\r\n ApiService.UploadFTPImagemultiple(formData).then((responce: any) => {\r\n \r\n this.GetImage(); \r\n Swal.fire('Thanks', 'Image Upload Successfully', 'success');\r\n this.ngxService.stop();\r\n }).catch((error) => {\r\n this.ngxService.stop();\r\n console.log(\"Error in GetImage\");\r\n Swal.fire('Oops...', 'Something went wrong F', 'error');\r\n })\r\n\r\n }\r\n ChangeImageTemplate(e: any) {\r\n debugger;\r\n this.SelectedImage = this.getTemplateImage[e].URL;\r\n }\r\n ChangeImageMain(e: any) {\r\n debugger;\r\n this.SelectedImageMain = this.getMainImage[e].URL;\r\n }\r\n ChangeImageOther(e: any) {\r\n debugger;\r\n this.SelectedImageOther = this.getOtherImage[e].URL;\r\n }\r\n GetImage() {\r\n debugger;\r\n this.ngxService.start();\r\n ApiService.GetAllImage(this.caseID).then((responce: any) => { \r\n this.ImgVal = responce.data.MainImage; \r\n for(const ival in responce.data.MainImage) {\r\n let docValssa = {\r\n URL: responce.data.MainImage[ival].URL+\"?type=\"+new Date().getMilliseconds(),\r\n name: responce.data.MainImage[ival].name,\r\n URLN: responce.data.MainImage[ival].URL,\r\n }\r\n this.getMainImage[ival]=docValssa; \r\n this.SelectedImageMain = this.getMainImage[0].URL; \r\n for(let i=0; i< this.getMainImage.length; i++) {\r\n this.images.push(this.getMainImage[i].URL);\r\n this.imagename.push(this.getMainImage[i].name)\r\n } \r\n }\r\n for(const ival in responce.data.TemplateImage) {\r\n let docValssa = {\r\n URL: responce.data.TemplateImage[ival].URL+\"?type=\"+new Date().getMilliseconds(),\r\n name: responce.data.TemplateImage[ival].name,\r\n URLN: responce.data.TemplateImage[ival].URL,\r\n }\r\n this.getTemplateImage[ival]=docValssa; \r\n \r\n this.SelectedImage = this.getTemplateImage[0].URL; \r\n for(let i=0; i< this.getTemplateImage.length; i++) {\r\n this.images.push(this.getTemplateImage[i].URL);\r\n this.imagename.push(this.getTemplateImage[i].name)\r\n } \r\n }\r\n for(const ival in responce.data.OtherImage) {\r\n let docValssa = {\r\n URL: responce.data.OtherImage[ival].URL+\"?type=\"+new Date().getMilliseconds(),\r\n name: responce.data.OtherImage[ival].name,\r\n URLN: responce.data.OtherImage[ival].URL,\r\n }\r\n this.getOtherImage[ival]=docValssa; \r\n this.SelectedImageOther = this.getOtherImage[0].URL; \r\n for(let i=0; i< this.getOtherImage.length; i++) {\r\n this.images.push(this.getOtherImage[i].URL);\r\n this.imagename.push(this.getOtherImage[i].name)\r\n } \r\n }\r\n // for(const ival in responce.data) {\r\n // let docValssa = {\r\n // URL: responce.data[ival].URL+\"?type=\"+new Date().getMilliseconds(),\r\n // name: responce.data[ival].name\r\n // }\r\n // this.getAllImage[ival]=docValssa;\r\n \r\n // }\r\n //console.log(this.getAllImage);\r\n //this.getAllImage = responce.data;\r\n for (const Dvalue in responce.data.CaseDoc) {\r\n \r\n let docValss = {\r\n url: this.getAllImage[Dvalue].url,\r\n name: this.getAllImage[Dvalue].name,\r\n urlN: this.getAllImage[Dvalue].url,\r\n }\r\n this.getAllImage[Dvalue] = docValss;\r\n }\r\n this.ngxService.stop();\r\n }).catch((error) => { \r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong GI', 'error');\r\n })\r\n }\r\n downloadImageZipFiles() {\r\n var links = this.images;\r\n var imgname=this.imagename;\r\n var zip = new JSZip();\r\n var count = 0;\r\n var zipFilename = this.caseID+\".zip\";\r\n links.forEach(function (url, i) {\r\n var filename = imgname[i];\r\n filename = filename.replace(/[\\/\\*\\|\\:\\<\\>\\?\\\"\\\\]/gi, '').replace(\"httpsi.imgur.com\",\"\");\r\n // loading a file and add it in a zip file\r\n JSZipUtils.getBinaryContent(url, function (err, data) {\r\n if (err) {\r\n throw err; // or handle the error\r\n }\r\n zip.file(filename, data, { binary: true });\r\n count++;\r\n if (count == links.length) {\r\n zip.generateAsync({ type: 'blob' }).then(function (content) {\r\n FileSaver.saveAs(content, zipFilename);\r\n });\r\n }\r\n });\r\n });\r\n }\r\n GetMainPageData() {\r\n this.ngxService.start();\r\n let data: ISupPropertydetailsOther = {\r\n CaseID: this.caseID,\r\n Type: \"D\",\r\n Stage: \"Other\"\r\n }\r\n ApiService.GetPropertyDetailOther(data).then((responce: any) => {\r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n let val = responce.data;\r\n this.NoFloorOFBuilding = val.total_floor;\r\n this.LocationOfFloor = val.location_floor;\r\n this.SelectRemarkType = \"select\";\r\n this.BrokerName1 = val.Broker_name;\r\n this.BrokerName2 = val.Broker_name2;\r\n this.BrokerMob1 = val.Broker_mobile;\r\n this.BrokerMob2 = val.Broker_mobile2;\r\n this.Quote1 = val.Broker_quote;\r\n this.Quote2 = val.Broker_quote2;\r\n this.GenralRemark = val.General_Remarks;\r\n this.ExtraRemark = val.extra_remark;\r\n this.VisitDate = val.visit_date;\r\n this.QCDoneDate = val.qcDatedone;\r\n this.ValuationResult = val.ValuationResult;\r\n this.IndiaBullsReportMode = val.report_mode;\r\n this.MarketValueDecrease = val.MV_Decrease;\r\n this.Latitude = val.Latitude;\r\n this.Longitude = val.longitude;\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n\r\n\r\n }\r\n GetSlabwiseData() {\r\n this.ngxService.start();\r\n let data= {\r\n caseid: this.caseID \r\n }\r\n ApiService.GetGeneralDetail2Other(data).then((responce: any) => { \r\n if (responce.data) {\r\n let val = responce.data;\r\n this.PlinthValue=val.PlinthValue;\r\n this.PlinthRemarks=val.PlinthRemarks;\r\n this.RCCGroundValue=val.RCCGroundValue;\r\n this.RCCGroundRemarks=val.RCCGroundRemarks;\r\n this.BrickworkValue=val.BrickworkValue;\r\n this.BrickworkRemarks=val.BrickworkRemarks;\r\n this.InPlasterValue=val.InPlasterValue;\r\n this. InPlasterRemarks= val.InPlasterRemarks; \r\n this.ExPlasterValue=val.ExPlasterValue;\r\n this.ExPlasterRemarks=val.ExPlasterRemarks;\r\n this.FlooringValue=val.FlooringValue;\r\n this.FlooringRemarks=val.FlooringRemarks;\r\n this.PlumpingValue=val.PlumpingValue;\r\n this.PlumpingRemarks=val.PlumpingRemarks;\r\n this.DoorwindowValue=val.DoorwindowValue;\r\n this.DoorwindowRemarks=val.DoorwindowRemarks;\r\n this.PossessionValue=val.PossessionValue;\r\n this.PossessionRemarks=val.PossessionRemarks; \r\n this.TotalPresentValue=val.TotalPresentValue;\r\n }\r\n \r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n\r\n\r\n }\r\n\r\n closeModel() {\r\n $(\"#modelShowData\").hide();\r\n }\r\n showHistoricalData() {\r\n // this.historicalData = true;\r\n // this.webcrowlData = false;\r\n // this.ModalTitle = \"Case Details\"\r\n // $(\"#modelShowData\").show();\r\n \r\n this.ngxService.start();\r\n \r\n ApiService.SupSidebar(this.caseID).then((responce: any) => {\r\n if (responce.status == 200) {\r\n if (responce.data) {\r\n // this.HistoricalData = responce.data;\r\n this.CaseUid= responce.data.CaseUID;\r\n this.App_Name=responce.data.Applicant_Name;\r\n this.Property_Numb=responce.data.Property_No;\r\n this.Build_no=responce.data.Building_No;\r\n this.Landmark=responce.data.Land_mark;\r\n this.streat=responce.data.Street_Sector;\r\n this.state=responce.data.statename;\r\n this.city=responce.data.cityname;\r\n this.location=responce.data.LocationName;\r\n this.case_Type=responce.data.typeofcasename;\r\n this.document_details=responce.data.Documents;\r\n this.file_no=responce.data.File_No;\r\n this.rate=responce.data.TotalFees;\r\n this.unit=responce.data.Block;\r\n this.case_status=responce.data.CaseStatusname;\r\n this.eng=responce.data.engName;\r\n this.Sublocation=responce.data.SubLocationname;\r\n this.getdocurl=responce.data.CaseDoc;\r\n for (const Dvalue in responce.data.CaseDoc) {\r\n let docValss = {\r\n url: this.getdocurl[Dvalue].url,\r\n name: this.getdocurl[Dvalue].name\r\n }\r\n this.getdocurl[Dvalue] = docValss;\r\n }\r\n for(let i=0; i< this.getdocurl.length; i++) {\r\n this.images.push(this.getdocurl[i].url);\r\n this.imagename.push(this.getdocurl[i].name)\r\n } \r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n Cal_Slabwisekeyup(){\r\n if(this.PlinthValue>20){\r\n this.PlinthValue=0;\r\n }else if(this.RCCGroundValue>40){this.RCCGroundValue=0;}\r\n else if(this.BrickworkValue>10){this.BrickworkValue=0;}\r\n else if(this.InPlasterValue>5){this.InPlasterValue=0;}\r\n else if(this.ExPlasterValue>5){this.ExPlasterValue=0;}\r\n else if(this.FlooringValue>5){this.FlooringValue=0;}\r\n else if(this.PlumpingValue>5){this.PlumpingValue=0;}\r\n else if(this.DoorwindowValue>5){this.DoorwindowValue=0;}\r\n else if(this.PossessionValue>5){this.PossessionValue=0;}\r\n else{\r\n }\r\n this.TotalPresentValue=this.PlinthValue+this.RCCGroundValue+this.BrickworkValue+this.InPlasterValue+this.ExPlasterValue+this.FlooringValue+this.PlumpingValue+this.DoorwindowValue+this.PossessionValue;\r\n \r\n }\r\n\r\n getSupPropertyDetails() {\r\n this.ngxService.start();\r\n let data: ISuperPropertyDetails = {\r\n CaseID: this.caseID,\r\n Type: \"PD\",\r\n Stage: \"P\"\r\n }\r\n ApiService.SupPropertydetails(data).then((responce: any) => {\r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n this.setPageDataValue(responce.data);\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n setPageDataValue(value: any) {\r\n this.showTable = true;\r\n $(\"#tbl2List > tbody\").html(\"\");\r\n let HTML2Val = \"\";\r\n for (const val in value) {\r\n if(value[val].Floor){\r\n const Property_usage = \"Property_usage\" + val;\r\n const Occupant = \"Occupant\" + val;\r\n HTML2Val += \" \";\r\n HTML2Val += \"\";\r\n HTML2Val += \"\";\r\n HTML2Val += \"\";\r\n HTML2Val += \"\";\r\n HTML2Val += \"\";\r\n HTML2Val += \"\"\r\n HTML2Val += \"\";\r\n }\r\n }\r\n // $('#tbl1LIst tbody').append(HTMLVal);\r\n HTML2Val += \"\";\r\n\r\n HTML2Val += \"\";\r\n HTML2Val += \"\";\r\n HTML2Val += \"\";\r\n HTML2Val += \"\";\r\n HTML2Val += \"\";\r\n\r\n HTML2Val += \"\"\r\n // $('#tbl2List tbody').append(HTML2Val);\r\n // HTML2Val += \"\";\r\n // HTML2Val += \"\";\r\n // HTML2Val += \"\";\r\n // HTML2Val += \"\";\r\n // HTML2Val += \"\";\r\n // HTML2Val += \"\";\r\n // HTML2Val += \"\"\r\n $('#tbl2List tbody').append(HTML2Val);\r\n for (const val in value) {\r\n const Property_usage = \"Property_usage\" + val;\r\n const Occupant = \"Occupant\" + val;\r\n $(\"#\" + Property_usage + \"\").val(value[val].Property_usage);\r\n $(\"#\" + Occupant + \"\").val(value[val].Occupant);\r\n }\r\n getTotelRecord();\r\n }\r\n onSelect(e: any) {\r\n this.GenralRemark = e;\r\n }\r\n handleFileSelect(evt) {\r\n this.updatedFiles = evt.target.files;\r\n };\r\n /* handleFileSelect(evt: any) {\r\n const file = evt.target.files[0];\r\n this.fileName = file.name + Math.random();\r\n if (file) {\r\n const reader = new FileReader();\r\n reader.onload = this.handleReaderLoaded.bind(this);\r\n reader.readAsBinaryString(file);\r\n }\r\n } */\r\n\r\n handleReaderLoaded(e) {\r\n this.base64textString.push(btoa(e.target.result));\r\n //'data:image/png;base64,'\r\n }\r\n\r\n\r\n UpdateOtherData() {\r\n let pattern = new RegExp('^-?([1-8]?[1-9]|[1-9]0)\\\\.{1}\\\\d{1,6}');\r\n if( pattern.test(this.Latitude) && pattern.test(this.Longitude)==true){\r\n this.ngxService.start();\r\n let data: IupdateOtherData = {\r\n UserID: this.session.UserID,\r\n General_Remarks: this.GenralRemark,\r\n extra_remark: this.ExtraRemark,\r\n location_floor: this.LocationOfFloor,\r\n Broker_name: this.BrokerName1,\r\n Broker_mobile: this.BrokerMob1,\r\n Broker_quote: this.Quote1,\r\n Broker_name2: this.BrokerName2,\r\n Broker_mobile2: this.BrokerMob2,\r\n Broker_quote2: this.Quote2,\r\n ValuationResult: this.ValuationResult,\r\n visit_date: this.VisitDate,\r\n qcDatedone: this.QCDoneDate,\r\n report_mode: \"\",\r\n Latitude: this.Latitude,\r\n longitude: this.Longitude,\r\n MV_Decrease: this.MarketValueDecrease,\r\n caseID:this.caseID,\r\n PlinthValue:this.PlinthValue,\r\n PlinthRemarks:this.PlinthRemarks,\r\n RCCGroundValue:this.RCCGroundValue,\r\n RCCGroundRemarks:this.RCCGroundRemarks,\r\n BrickworkValue:this.BrickworkValue,\r\n BrickworkRemarks:this.BrickworkRemarks,\r\n InPlasterValue:this.InPlasterValue,\r\n InPlasterRemarks:this.InPlasterRemarks,\r\n ExPlasterValue:this.ExPlasterValue,\r\n ExPlasterRemarks:this.ExPlasterRemarks,\r\n FlooringValue:this.FlooringValue,\r\n FlooringRemarks:this.FlooringRemarks,\r\n PlumpingValue:this.PlumpingValue,\r\n PlumpingRemarks:this.PlumpingRemarks,\r\n DoorwindowValue:this.DoorwindowValue,\r\n DoorwindowRemarks:this.DoorwindowRemarks,\r\n PossessionValue:this.PossessionValue,\r\n PossessionRemarks:this.PossessionRemarks,\r\n TotalPresentValue:this.TotalPresentValue\r\n }\r\n ApiService.UpdateOtherDetails(data).then((responce: any) => {\r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n let val = responce.data;\r\n Swal.fire('Thanks', 'Data Save sucessfully', 'success');\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }else{\r\n Swal.fire('Oops...', 'Please update correct Latitude and Longitude!', 'error');\r\n }\r\n }\r\n\r\n //OSV Main Grid\r\n GenralDetails1(e: any) {\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 1) {\r\n this.router.navigate([\"/OsvGeneralDetail1\", { id: data, valuation: this.valuationID, type: 'G' }]);\r\n }\r\n }\r\n GenralDetails2(e: any) {\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 1) {\r\n this.router.navigate([\"/OsvGeneralDetail1\", { id: data, valuation: this.valuationID, type: 'S' }]);\r\n }\r\n }\r\n CatchMentDetails(e:any){\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 1) {\r\n this.router.navigate([\"/OsvCatchmentAreaAnalysis\", { id: data, valuation: this.valuationID }]);\r\n }\r\n }\r\n\r\n PropertyDetail(e: any) {\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 1) {\r\n this.router.navigate([\"/OsvPropertyDetail\", { id: data, valuation: this.valuationID }]);\r\n }\r\n }\r\n CFM(e: any) {\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 1) {\r\n this.router.navigate([\"/OsvCfm\", { id: data, valuation: this.valuationID }]);\r\n }\r\n }\r\n Other(e: any) {\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 1) {\r\n this.router.navigate([\"/OsvOther\", { id: data, valuation: this.valuationID }]);\r\n }\r\n }\r\n PropertyRadar(e: any) {\r\n\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 1) {\r\n this.router.navigate([\"/PropertyRadar\", { id: data, valuation: this.valuationID }]);\r\n }\r\n }\r\n openInNewReportTab(href: any) {\r\n Object.assign(document.createElement('a'), {\r\n target: '_blank',\r\n href,\r\n }).click();\r\n }\r\n View() {\r\n let data = this.caseID/* .currentTarget.parentElement.firstElementChild.value */;\r\n const LoginID = localStorage.getItem('userID');\r\n const val: UpdateDataForGrid = {\r\n CaseID: data,\r\n Type: \"View\",\r\n watermark: \"\",\r\n casecreatedfrom: \"\",\r\n UserID: LoginID,\r\n Remark: \"\",\r\n Supervisor: \"\",\r\n RoleID: \"\",\r\n }\r\n ApiService.UpdateGridDataAndGetUrl(val).then((responce: any) => {\r\n if (responce.status === 200) {\r\n this.openInNewReportTab(responce.data.URL);\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n\r\n}\r\n\r\nfunction getTotelRecord() {\r\n let TotalActual = \"0\";\r\n let TotalPermissible = \"0\";\r\n let TotalSanctionPlan = \"0\";\r\n let TotalAreaAdopted = \"0\";\r\n let TotalDeviations = \"0\";\r\n const length = $('#tbl2List > tbody > tr').length;\r\n $('#tbl2List > tbody > tr').each(function (item) {\r\n if (parseInt(item + 1) < parseInt(length)) {\r\n let Actual = $(this).find(\"td:eq(1) input\")[0].value;\r\n let Permissible = $(this).find(\"td:eq(2) input\")[0].value;\r\n let SanctionPlan = $(this).find(\"td:eq(3) input\")[0].value;\r\n let AreaAdopted = $(this).find(\"td:eq(4) input\")[0].value;\r\n let Deviations = $(this).find(\"td:eq(5) input\")[0].value;\r\n if (Actual == \"\") {\r\n Actual = \"0\";\r\n } if (Permissible == \"\") {\r\n Permissible = \"0\";\r\n } if (SanctionPlan == \"\") {\r\n SanctionPlan = \"0\";\r\n } if (AreaAdopted == \"\") {\r\n AreaAdopted = \"0\";\r\n } if (Deviations == \"\") {\r\n Deviations = \"0\";\r\n }\r\n TotalActual = (parseInt(TotalActual) + parseInt(Actual)).toString();\r\n TotalPermissible = (parseInt(TotalPermissible) + parseInt(Permissible)).toString();\r\n TotalSanctionPlan = (parseInt(TotalSanctionPlan) + parseInt(SanctionPlan)).toString();\r\n TotalAreaAdopted = (parseInt(TotalAreaAdopted) + parseInt(AreaAdopted)).toString();\r\n TotalDeviations = (parseInt(TotalDeviations) + parseInt(Deviations)).toString();\r\n }\r\n });\r\n\r\n $(\"#txtActual\").val(TotalActual);\r\n $(\"#txtPermissible\").val(TotalPermissible);\r\n $(\"#txtSanctionPlan\").val(TotalSanctionPlan);\r\n $(\"#txtAreaAdopted\").val(TotalAreaAdopted);\r\n $(\"#txtDeviations\").val(TotalDeviations);\r\n}\r\n\r\n","module.exports = \"
      \\r\\n
    • \\r\\n General Details1\\r\\n
    • \\r\\n
    • \\r\\n General Details2\\r\\n
    • \\r\\n
    • \\r\\n Property Detail\\r\\n
    • \\r\\n
    • \\r\\n Catchment Area Analysis\\r\\n
    • \\r\\n
    • \\r\\n CFM\\r\\n
    • \\r\\n
    • \\r\\n Other\\r\\n
    • \\r\\n
    • \\r\\n Property Radar\\r\\n
    • \\r\\n\\r\\n
    • Case Detail
    • \\r\\n
    • \\r\\n \\r\\n
    • \\r\\n

    \\r\\n\\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n
    \\r\\n Details\\r\\n \\r\\n Room\\r\\n \\r\\n Kitchen\\r\\n \\r\\n Toilet\\r\\n \\r\\n Lobby\\r\\n \\r\\n Sitting Room\\r\\n \\r\\n Hall\\r\\n \\r\\n Dining hall \\r\\n \\r\\n Other \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n Build Up Area Details - Floor-wise Break up of Build up Area(if Applicable)\\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n\\r\\n \\r\\n
    \\r\\n Floor\\r\\n \\r\\n Actual(Sft.)\\r\\n \\r\\n Permissible(Sft.)\\r\\n \\r\\n Sanction Plan\\r\\n \\r\\n Area adopted for valuation\\r\\n \\r\\n Deviations\\r\\n \\r\\n Usage\\r\\n \\r\\n Occupant\\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n \\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n\\r\\n
    \\r\\n\\r\\n \\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    {{ModalTitle}}
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    Property TypeProp DescriptionPriceAreaRate(sqrt)Date
    {{grid.Property_type}}{{grid.Prop_description}}{{grid.Price}}{{grid.area}}{{grid.Rate_Pr_Sqft}}{{grid.Added_on}}
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    Property TypeAddressMarketRateMaxMarketRateMinCreated On
    {{grid.propertytype}}{{grid.address}}{{grid.MarketRateMax}}{{grid.MarketRateMin}}{{grid.CreatedOn}}
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n\\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    {{ModalTitle1}}
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n\\r\\n
    \\r\\n\"","import { Component, OnInit, Renderer2, ElementRef, Output, Input, EventEmitter, Directive } from '@angular/core';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { ApiService } from '../service/service';\r\nimport { SessionService } from '../service/sessionGlobalVar';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport Swal from 'sweetalert2';\r\nimport { ISuperPropertyDetails, ISuperPropertyDetailsUpdate, Ibylaws, IWebClowl, IQCreference, IUsage,UpdateDataForGrid } from '../service/type'\r\nimport { iterateListLike } from '@angular/core/src/change_detection/change_detection_util';\r\n\r\ndeclare var $: any;\r\n\"use strict\";\r\n@Component({\r\n selector: 'app-osv-property-detail',\r\n templateUrl: './osv-property-detail.component.html',\r\n styleUrls: []\r\n})\r\nexport class OsvPropertyDetailComponent implements OnInit {\r\n caseID: string;\r\n valuationID: number;\r\n historicalData: boolean = false;\r\n webcrowlData: boolean = false;\r\n DDlUsage: string = \"Select\";\r\n DDlPropertyType: string = \"Select\";\r\n FloorDropDown = []\r\n dropdownList = [];\r\n selectedItems = [];\r\n sanactionPlane: string = \"No\";\r\n dropdownSettings = {};\r\n dropdownSettingsProperty = {};\r\n MBasement: string = \"B\";\r\n MStilt: string = \"S\";\r\n MLG: string = \"LG\";\r\n MUG: string = \"UG\";\r\n MMAZZ: string = \"MAZZ\";\r\n MGround: string = \"G\";\r\n MFloor: string = \"Floor\";\r\n areaOfPlotDocument: string = \"\";\r\n areaOfPlotApprovedPlan: string = \"\";\r\n areaOfPlotAct: string = \"\";\r\n carpetArea: string = \"\";\r\n buildUpArea: string = \"\";\r\n loadingForBua: string = \"\";\r\n wheatherCompundable: string = \"\";\r\n PropertyRemark: string = \"\";\r\n yearsOfCompletion: string = \"\";\r\n AgeOfproperty: string = \"\";\r\n conditionOfTheBuilding: string = \"Select\";\r\n EstimateFutureLifeProperty: string = \"\";\r\n NACompletion: boolean = false;\r\n HidefirstTable: boolean = false;\r\n Gridwebcrowl: any;\r\n HistoricalData: any;\r\n HeightOfTheBuilding: string = \"\";\r\n DDLUsageData: any;\r\n DDLPropertyData: any;\r\n ModalTitle: string;\r\n propertyTypeNEw: string = \"Select\";\r\n historicalData1: boolean = false;\r\n ModalTitle1: string;\r\n HistoricalData1: any;\r\n CaseUid: string;\r\n App_Name: string;\r\n Property_Numb: string;\r\n Build_no: string;\r\n Landmark: string;\r\n streat: string;\r\n state: string;\r\n city: string;\r\n location: string;\r\n case_Type: string;\r\n file_no: string;\r\n document_details: string;\r\n rate: string;\r\n unit: string;\r\n case_status: string;\r\n eng: string;\r\n Sublocation: string;\r\n getdocurl:any;\r\n calcarpet:string;\r\n constructor(private route: ActivatedRoute, private router: Router, private service: ApiService, private session: SessionService, private ngxService: NgxUiLoaderService, private renderer: Renderer2, private el: ElementRef) { }\r\n\r\n ngOnInit() {\r\n debugger;\r\n this.route.params.subscribe(params => {\r\n if (params.id) {\r\n const id = window.atob(params.id);\r\n this.caseID = id;\r\n if (params.valuation == 1) {\r\n this.valuationID = params.valuation;\r\n } else {\r\n Swal.fire('Oops...', 'Something went wrong!', 'error');\r\n this.router.navigate([\"/SupHome\"]);\r\n }\r\n } else {\r\n Swal.fire('Oops...', 'Something went wrong!', 'error');\r\n this.router.navigate([\"/SupHome\"]);\r\n }\r\n this.GetUsageData(\"Usage\");\r\n this.getSupPropertyDetails(\"P\");\r\n this.getSupPropertyDetails(\"A\");\r\n this.getSupPropertyDetails(\"D\");\r\n this.bindFloorDropDown();\r\n this.multiSelectedDropDownLIst();\r\n this.ShowAndHideTableRow();\r\n this.WebcrollData();\r\n this.QCReferenceData(); \r\n });\r\n }\r\n openInNewReportTab(href: any) {\r\n Object.assign(document.createElement('a'), {\r\n target: '_blank',\r\n href,\r\n }).click();\r\n }\r\n View() {\r\n let data = this.caseID/* .currentTarget.parentElement.firstElementChild.value */;\r\n const LoginID = localStorage.getItem('userID');\r\n const val: UpdateDataForGrid = {\r\n CaseID: data,\r\n Type: \"View\",\r\n watermark: \"\",\r\n casecreatedfrom: \"\",\r\n UserID: LoginID,\r\n Remark: \"\",\r\n Supervisor: \"\",\r\n RoleID: \"\",\r\n }\r\n ApiService.UpdateGridDataAndGetUrl(val).then((responce: any) => {\r\n if (responce.status === 200) {\r\n this.openInNewReportTab(responce.data.URL);\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n onDropDownChange() {\r\n this.dropdownList = [];\r\n if (this.MBasement != \"B\") {\r\n for (let p = 1; p <= (+this.MBasement); p++) {\r\n const val = { item_id: 'B' + p + '', item_text: 'B' + p + '' };\r\n this.dropdownList.push(val)\r\n }\r\n }\r\n if (this.MStilt != \"S\") {\r\n if (this.MStilt == \"YES\") {\r\n const val = { item_id: 'S', item_text: 'S' };\r\n this.dropdownList.push(val)\r\n }\r\n }\r\n if (this.MLG != \"LG\") {\r\n if (this.MLG == \"YES\") {\r\n const val = { item_id: 'LG', item_text: 'LG' };\r\n this.dropdownList.push(val)\r\n }\r\n }\r\n if (this.MUG != \"UG\") {\r\n if (this.MUG == \"YES\") {\r\n const val = { item_id: 'UG', item_text: 'UG' };\r\n this.dropdownList.push(val)\r\n }\r\n }\r\n if (this.MMAZZ != \"MAZZ\") {\r\n if (this.MMAZZ == \"YES\") {\r\n const val = { item_id: 'MAZZ', item_text: 'MAZZ' };\r\n this.dropdownList.push(val)\r\n }\r\n }\r\n if (this.MGround != \"G\") {\r\n if (this.MGround == \"YES\") {\r\n const val = { item_id: 'G', item_text: 'G' };\r\n this.dropdownList.push(val)\r\n }\r\n }\r\n if (this.MFloor != \"Floor\") {\r\n for (let p = 1; p <= (+this.MFloor); p++) {\r\n const val = { item_id: 'F' + p + '', item_text: 'F' + p + '' };\r\n this.dropdownList.push(val)\r\n }\r\n }\r\n }\r\n SupUpdateBuiltupTable() {\r\n this.ngxService.start();\r\n const caseID = this.caseID;\r\n let tbl2LIstVal = [];\r\n $('#tbl2List > tbody > tr').each(function (item) {\r\n const floor = $(this).find(\"td:eq(0) label\")[0].innerText;\r\n const actual = $(this).find(\"td:eq(1) input\")[0].value;\r\n const permisible = $(this).find(\"td:eq(2) input\")[0].value;\r\n const sanction = $(this).find(\"td:eq(3) input\")[0].value;\r\n const areaadopted = $(this).find(\"td:eq(4) input\")[0].value;\r\n const deviation = $(this).find(\"td:eq(5) input\")[0].value;\r\n const Property_usage = $(this).find(\"td:eq(6) select option:selected\").val();\r\n const Occupant = $(this).find(\"td:eq(7) select option:selected\").val();\r\n let data = {\r\n CaseID: caseID,\r\n Floor: floor,\r\n actual: actual,\r\n permisible: permisible,\r\n sanction: sanction,\r\n areaadopted: areaadopted,\r\n deviation: deviation,\r\n Property_usage: Property_usage,\r\n Occupant: Occupant,\r\n Subject_property: \"\",\r\n Adopted_Rate: \"\",\r\n Deviation_Calc: \"\",\r\n Occ_dtls_Name: \"\",\r\n Occ_year: \"\",\r\n Occ_mobile: \"\",\r\n }\r\n tbl2LIstVal.push(data);\r\n });\r\n console.log(\"Value IS\", tbl2LIstVal);\r\n let val = {\r\n Data: tbl2LIstVal\r\n }\r\n ApiService.SupUpdateBuiltupTable(val).then((responce: any) => {\r\n if (responce.status == \"200\") {\r\n this.saveSuperaccomdeationDetails();\r\n \r\n }\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n this.ngxService.stop();\r\n console.log(\"Error In SupUpdateBuiltupTable\", JSON.stringify(val));\r\n // Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n saveSuperaccomdeationDetails() {\r\n \r\n const caseID = this.caseID;\r\n let tbl1LIstVal = [];\r\n \r\n $('#tbl1LIst > tbody > tr').each(function (item) {\r\n // if( $(this).find(\"td:eq(0) label\")[0].innerText !=\"\"){\r\n let data = {\r\n CaseID: caseID,\r\n Floor: $(this).find(\"td:eq(0) label\")[0].innerText,\r\n Room: $(this).find(\"td:eq(1) select option:selected\").val(),\r\n Accommodation_Details: $(this).find(\"td:eq(0) label\")[0].innerText,\r\n Kitchen: $(this).find(\"td:eq(2) select option:selected\").val(),\r\n Toilet: $(this).find(\"td:eq(3) select option:selected\").val(),\r\n loby: $(this).find(\"td:eq(4) select option:selected\").val(),\r\n SittingRoom: $(this).find(\"td:eq(5) select option:selected\").val(),\r\n Hall: $(this).find(\"td:eq(6) select option:selected\").val(),\r\n DiningHall: $(this).find(\"td:eq(7) select option:selected\").val(),\r\n Other: $(this).find(\"td:eq(8) input\")[0].value\r\n }\r\n tbl1LIstVal.push(data);\r\n \r\n });\r\n //alert(tbl1LIstVal.length);\r\n if(tbl1LIstVal.length ==0){\r\n \r\n let data = {\r\n CaseID: caseID,\r\n Floor: \"\",\r\n Room: \"\",\r\n Accommodation_Details: \"\",\r\n Kitchen: \"\",\r\n Toilet:\"\",\r\n loby: \"\",\r\n SittingRoom: \"\",\r\n Hall: \"\",\r\n DiningHall:\"\",\r\n Other: \"\"\r\n }\r\n tbl1LIstVal.push(data);\r\n\r\n let val = {\r\n Data: tbl1LIstVal \r\n }\r\n ApiService.InsertSupAccomdeationUpdate(val).then((responce: any) => {\r\n if (responce.status == \"200\") {\r\n this.CFM(\"\");\r\n Swal.fire(\"Thanks\", \"Data Save Successfully\", \"success\");\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n //Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n console.log(\"Error In saveSuperaccomdeationDetails\",JSON.stringify(val))\r\n });\r\n }\r\n else{\r\n let val = {\r\n Data: tbl1LIstVal \r\n } \r\n ApiService.InsertSupAccomdeationUpdate(val).then((responce: any) => {\r\n if (responce.status == \"200\") {\r\n this.CFM(\"\");\r\n Swal.fire(\"Thanks\", \"Data Save Successfully\", \"success\");\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n //Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n console.log(\"Error In saveSuperaccomdeationDetails\",JSON.stringify(val))\r\n });\r\n }\r\n}\r\n saveSuperPropertyDetails() {\r\n \r\n this.ngxService.start();\r\n let NAConstruction = \"\";\r\n let loginID = localStorage.getItem(\"userID\");\r\n let FloorVal = \"\";\r\n if (this.conditionOfTheBuilding == \"Select\") {\r\n this.conditionOfTheBuilding = \"\";\r\n }\r\n if (this.selectedItems.length > 0) {\r\n for (const val in this.selectedItems) {\r\n FloorVal += this.selectedItems[val] + ',';\r\n }\r\n FloorVal = FloorVal.slice(0, -1);\r\n }\r\n //\r\n let tfloor=\"\";\r\n if (this.MBasement != \"B\")\r\n tfloor += this.MBasement+\"B\"+',';\r\n else\r\n tfloor =\"BB\"+',';\r\n if (this.MStilt != \"S\")\r\n if(this.MStilt==\"YES\")\r\n tfloor += \"Yes\"+',';\r\n else\r\n tfloor += \"S\"+',';\r\n else\r\n tfloor += \"S\"+',';\r\n if (this.MLG != \"LG\")\r\n if(this.MLG==\"YES\")\r\n tfloor += \"LG\"+',';\r\n else\r\n tfloor += \"No\"+',';\r\n else\r\n tfloor += \"No\"+',';\r\n if (this.MUG != \"UG\")\r\n if(this.MUG==\"YES\")\r\n tfloor += \"UG\"+',';\r\n else\r\n tfloor += \"No\"+','; \r\n else\r\n tfloor += \"No\"+',';\r\n if (this.MMAZZ != \"MAZZ\")\r\n if(this.MGround==\"YES\")\r\n tfloor += \"MAZZ\"+',';\r\n else\r\n tfloor += \"No\"+',';\r\n else\r\n tfloor += \"No\"+',';\r\n if (this.MGround != \"G\")\r\n if(this.MGround==\"YES\")\r\n tfloor += \"G\"+'';\r\n else\r\n tfloor += \"No\"+''; \r\n else\r\n tfloor += \"No\"+'';\r\n \r\n if (this.MFloor != \"0\")\r\n if(this.MFloor==\"Floor\")\r\n tfloor+=\"\";\r\n else\r\n tfloor += ','+ this.MFloor;\r\n else\r\n tfloor = tfloor;\r\n//alert(tfloor);\r\n //\r\n if (this.NACompletion) {\r\n NAConstruction = \"true\";\r\n } else {\r\n NAConstruction = \"false\";\r\n }\r\n if (this.DDlPropertyType == \"Select\") {\r\n this.DDlPropertyType = \"\";\r\n }\r\n let usageVal = \"\";\r\n if (this.DDlUsage != \"Select\") {\r\n const data = this.DDLUsageData.find(val => val.Name === this.DDlUsage);\r\n usageVal = data.Name;\r\n }\r\n const ddlDropVal = $('#ddlPropertyType').val();\r\n //const ddlDropVal=$('#ddlPropertyType').val.ID;\r\n let ddlNewVal = \"\";\r\n // if (this.DDlPropertyType!= \"\") {\r\n if(this.DDlUsage==\"Mixed\"){\r\n for (const newVal in ddlDropVal) {\r\n // for (let newVal=0;newVal<=ddlDropVal;newVal++){\r\n if (ddlDropVal[newVal] != \"Select\") {\r\n ddlNewVal += ',' + ddlDropVal[newVal]\r\n }\r\n }\r\n ddlNewVal = ddlNewVal.slice(1);\r\n } else {\r\n ddlNewVal = this.DDlPropertyType;\r\n }\r\n if(this.buildUpArea!=\"\"){\r\n this.buildUpArea=(document.getElementById(\"buildUpArea\")).value;\r\n }\r\n let val: ISuperPropertyDetailsUpdate = {\r\n Basement: this.MBasement,\r\n Stilt: this.MStilt,\r\n LG: this.MLG,\r\n UG: this.MUG,\r\n Ground: this.MGround,\r\n Mazz: this.MMAZZ,\r\n Floor: this.MFloor,\r\n LocationFloor: FloorVal,\r\n LocFloor: FloorVal,\r\n Plot_area_act: this.areaOfPlotAct,\r\n Plot_area_doc: this.areaOfPlotDocument,\r\n Plot_area_approved: this.areaOfPlotApprovedPlan,\r\n CarpetArea: this.carpetArea,\r\n Loading: this.loadingForBua,\r\n Builtup: this.buildUpArea,\r\n WheatherCompoundable: this.wheatherCompundable,\r\n PropertyRemark: this.PropertyRemark,\r\n Yearofcompleation: this.yearsOfCompletion,\r\n Ageofproperty: this.AgeOfproperty,\r\n BuildingCondition: this.conditionOfTheBuilding,\r\n FutureLife: this.EstimateFutureLifeProperty,\r\n NAConstruction: NAConstruction,\r\n CaseID: this.caseID,\r\n Propertytype: ddlNewVal,\r\n UserID: loginID,\r\n PropertyUsage: usageVal,\r\n TotFloor:tfloor\r\n }\r\n ApiService.InsertSuperPropertyDetails(val).then((responce: any) => {\r\n this.ngxService.start();\r\n if (responce.status == \"200\") {\r\n this.SupUpdateBuiltupTable();\r\n /* if(tfloor==\"BB,S,No,No,No,No,F\"){\r\n this.CFM(\"\");\r\n Swal.fire(\"Thanks\", \"Data Save Successfully\", \"success\");\r\n }\r\n else{\r\n this.SupUpdateBuiltupTable();\r\n } */\r\n }\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error'); \r\n });\r\n }\r\n closeModel() {\r\n $(\"#modelShowData\").hide();\r\n }\r\n showHistoricalData() {\r\n this.historicalData = true;\r\n this.webcrowlData = false;\r\n this.ModalTitle = \"Historical Data\"\r\n $(\"#modelShowData\").show();\r\n }\r\n showCrowlData() {\r\n this.webcrowlData = true;\r\n this.historicalData = false;\r\n $(\"#modelShowData\").show();\r\n this.ModalTitle = \"Web Crawl Data\"\r\n }\r\n WebcrollData() {\r\n\r\n this.ngxService.start();\r\n let val: IWebClowl = {\r\n propertytype: this.caseID,\r\n sublocation: \"\"\r\n }\r\n ApiService.GetWebCrawl(val).then((responce: any) => {\r\n if (responce.status == 200) {\r\n if (responce.data) {\r\n this.Gridwebcrowl = responce.data;\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n console.log(\"Error In WebcrollData\",JSON.stringify(val))\r\n });\r\n }\r\n calculateBUA() {\r\n if (this.buildUpArea != \"\" && this.carpetArea != \"\") {\r\n this.loadingForBua = ((parseInt(this.buildUpArea) / parseInt(this.carpetArea)).toFixed(2)).toString();\r\n }\r\n }\r\n calculateCarpetarea(){\r\n // this.buildUpArea=(document.getElementById(\"buildUpArea\")).value;\r\n this.calcarpet=(((parseInt(this.buildUpArea)* parseInt(this.loadingForBua))/100).toFixed());\r\n this.carpetArea=(parseInt(this.buildUpArea)-parseInt(this.calcarpet)).toFixed();\r\n }\r\n calculatebuildup(){\r\n this.calcarpet=(((parseInt(this.carpetArea)* parseInt(this.loadingForBua))/100).toFixed());\r\n this.buildUpArea=(parseInt(this.carpetArea)+parseInt(this.calcarpet)).toFixed();\r\n // this.buildUpArea=(((parseInt(this.carpetArea)* parseInt(this.loadingForBua))).toFixed());\r\n }\r\n GetUsageDataNew(){\r\n this.propertyTypeNEw=\"Select\";\r\n this.GetUsageData(\"PropertyType\")\r\n }\r\n getpropertytype(ID:string,type:string){\r\n \r\n let val: IUsage;\r\n val = {\r\n CaseID: this.caseID,\r\n type: \"propertytype\",\r\n ID: ID\r\n }\r\n ApiService.GetUsageData(val).then((responce: any) => {\r\n \r\n if (responce.status == 200) { \r\n if (responce.data) {\r\n this.DDLPropertyData = responce.data.MasterData;\r\n if(this.DDLPropertyData){\r\n const data = this.DDLPropertyData.find(val => val.Name ===this.propertyTypeNEw);\r\n if (data) {\r\n this.DDlPropertyType = data.Name;\r\n }\r\n else{\r\n // let p=this.propertyTypeNEw;\r\n this.DDlPropertyType = this.propertyTypeNEw;\r\n this.showMultidropDown();\r\n }\r\n }\r\n \r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n // Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n console.log(\"Error In GetUsageData\",JSON.stringify(val))\r\n });\r\n }\r\n GetUsageData(e: any) {\r\n \r\n this.ngxService.start();\r\n let val: IUsage;\r\n let callAPI: boolean = true;\r\n if (e == \"Usage\") {\r\n val = {\r\n CaseID: this.caseID,\r\n type: \"Usage\",\r\n ID: \"\"\r\n }\r\n } else {\r\n if (this.DDlUsage == \"Select\") {\r\n callAPI = false;\r\n }\r\n val = {\r\n CaseID: this.caseID,\r\n type: \"propertytype\",\r\n ID: this.DDlUsage\r\n }\r\n }\r\n if (callAPI) { \r\n ApiService.GetUsageData(val).then((responce: any) => {\r\n \r\n if (responce.status == 200) { \r\n if (responce.data) {\r\n if (e == \"Usage\") {\r\n this.DDLUsageData = responce.data.MasterData;\r\n } else {\r\n this.DDLPropertyData = responce.data.MasterData;\r\n if(this.DDLPropertyData){\r\n const data = this.DDLPropertyData.find(val => val.Name ===this.propertyTypeNEw);\r\n if (data) {\r\n this.DDlPropertyType = data.Name;\r\n }\r\n else{\r\n // let p=this.propertyTypeNEw;\r\n this.DDlPropertyType = this.propertyTypeNEw;\r\n this.showMultidropDown();\r\n }\r\n }\r\n }\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n // Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n console.log(\"Error In GetUsageData\",JSON.stringify(val))\r\n });\r\n }\r\n }\r\n showMultidropDown() {\r\n \r\n // if (this.DDlUsage == \"5\") { \r\n if (this.DDlUsage == \"Mixed\") {\r\n $('#ddlPropertyType').attr('multiple', 'multiple');\r\n $('#ddlPropertyType').attr('title', 'You can select multiple value using CTRL+value');\r\n } else {\r\n $('#ddlPropertyType').removeAttr('multiple');\r\n $('#ddlPropertyType').removeAttr('title');\r\n }\r\n if (this.propertyTypeNEw != \"Select\") {\r\n var dataarray = this.propertyTypeNEw.split(\",\");\r\n $('#ddlPropertyType').val(dataarray);\r\n $('#ddlPropertyType').multiselect(\"refresh\");\r\n }\r\n }\r\n QCReferenceData() {\r\n this.ngxService.start();\r\n let val: IQCreference = {\r\n state: this.caseID,\r\n city: \"\",\r\n location: \"\",\r\n sublocation: \"\",\r\n propertytype: \"\",\r\n }\r\n ApiService.GetQCreference(val).then((responce: any) => {\r\n if (responce.status == 200) {\r\n if (responce.data) {\r\n this.HistoricalData = responce.data;\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n console.log(\"Error In QCReferenceData\",JSON.stringify(val));\r\n // Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n getSupPropertyDetails(stage: string) {\r\n this.ngxService.start();\r\n let data: ISuperPropertyDetails = {\r\n CaseID: this.caseID,\r\n Type: \"PD\",\r\n Stage: stage\r\n }\r\n ApiService.SupPropertydetails(data).then((responce: any) => {\r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n this.setPageDataValue(responce.data, stage);\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n console.log(\"Error In getSupPropertyDetails\",JSON.stringify(e));\r\n // Swal.fire('Oops...', 'data is-' + JSON.stringify(data) + 'Something went wrong try again!' + stage, 'error');\r\n });\r\n }\r\n changeStatus(e: any) {\r\n const val = this.NACompletion;\r\n if (val) {\r\n this.yearsOfCompletion = \"\";\r\n this.AgeOfproperty = \"\";\r\n this.EstimateFutureLifeProperty = \"\";\r\n $(\"#txt_YearOfCompletion\").prop('disabled', true);\r\n $(\"#AgeOfproperty\").prop('disabled', true);\r\n $(\"#EstimateFutureLifeProperty\").prop('disabled', true);\r\n $(\"#ddlConditionOfBuilding\").prop('disabled', true);\r\n } else {\r\n $(\"#txt_YearOfCompletion\").prop('disabled', false);\r\n $(\"#AgeOfproperty\").prop('disabled', false);\r\n $(\"#EstimateFutureLifeProperty\").prop('disabled', false);\r\n $(\"#ddlConditionOfBuilding\").prop('disabled', false);\r\n this.conditionOfTheBuilding = \"\";\r\n }\r\n\r\n }\r\n setPageDataValue(value: any, stage: string) {\r\n \r\n try {\r\n if (stage == \"D\") {\r\n this.DDlUsage=value.propertyUsage;\r\n this.getpropertytype(this.DDlUsage,\"PropertyType\"); \r\n if (value.Propertytype) {\r\n this.propertyTypeNEw = value.Propertytype;\r\n }\r\n if (value.Basement != \"\") {\r\n this.MBasement = value.Basement;\r\n }\r\n if (value.Stilt != \"\") {\r\n this.MStilt = value.Stilt;\r\n }\r\n if (value.LG != \"\") {\r\n this.MLG = value.LG;\r\n }\r\n if (value.UG != \"\") {\r\n this.MUG = value.UG;\r\n }\r\n if (value.Ground != \"\") {\r\n this.MGround = value.Ground;\r\n }\r\n if (value.Mazz != \"\") {\r\n this.MMAZZ = value.Mazz;\r\n }\r\n if (value.Floor != \"\") {\r\n this.MFloor = value.Floor\r\n }\r\n this.sanactionPlane = value.Sanction_Plans;\r\n this.areaOfPlotDocument = value.Plot_area_doc;\r\n this.areaOfPlotAct = value.Plot_area_act;\r\n this.areaOfPlotApprovedPlan = value.Plot_area_approved;\r\n\r\n this.carpetArea = value.CarpetArea;\r\n if (value.Builtup != \"\") {\r\n this.buildUpArea = value.Builtup;\r\n }\r\n\r\n \r\n \r\n this.wheatherCompundable = value.WheatherCompoundable;\r\n this.PropertyRemark = value.PropertyRemark;\r\n this.conditionOfTheBuilding = value.BuildingCondition;\r\n this.EstimateFutureLifeProperty = value.FutureLife;\r\n this.loadingForBua = value.Loading;\r\n if (value.Yearofcompleation == \"9999\") {\r\n this.yearsOfCompletion = \"\";\r\n this.AgeOfproperty = value.Ageofproperty;\r\n } \r\n \r\n else {\r\n this.yearsOfCompletion = value.Yearofcompleation;\r\n }\r\n this.onload_age_property(); \r\n this.NACompletion = value.NAConstruction;\r\n \r\n if (value.LocationFloor.length > 0) {\r\n if (value.LocationFloor[0] != \"\") {\r\n this.selectedItems = value.LocationFloor;\r\n this.dropdownList = value.LocationFloor;\r\n }\r\n }\r\n if (value.NAConstruction == \"true\") {\r\n this.NACompletion = true;\r\n this.changeStatus(\"\");\r\n } else {\r\n this.NACompletion = false;\r\n }\r\n // this.calculateCarpetarea();\r\n // this.calculateBUA();\r\n this.onDropDownChange();\r\n }\r\n else if (stage == \"P\") {\r\n $(\"#tbl2List > tbody\").html(\"\");\r\n let HTML2Val = \"\";\r\n for (const val in value) {\r\n if(value[val].Floor){\r\n const Property_usage = \"Property_usage\" + val;\r\n const Occupant = \"Occupant\" + val;\r\n const ID = \"trtbl2\" + value[val].Floor;\r\n HTML2Val += \" \";\r\n HTML2Val += \"\";\r\n HTML2Val += \"\";\r\n HTML2Val += \"\";\r\n HTML2Val += \"\";\r\n HTML2Val += \"\";\r\n HTML2Val += \"\"\r\n HTML2Val += \"\";\r\n }\r\n }\r\n HTML2Val += \"\";\r\n HTML2Val += \"\";\r\n HTML2Val += \"\";\r\n HTML2Val += \"\";\r\n HTML2Val += \"\";\r\n HTML2Val += \"\";\r\n HTML2Val += \"\"\r\n $('#tbl2List tbody').append(HTML2Val);\r\n\r\n for (const val in value) {\r\n const Property_usage = \"Property_usage\" + val;\r\n const Occupant = \"Occupant\" + val;\r\n $(\"#\" + Property_usage + \"\").val(value[val].Property_usage);\r\n $(\"#\" + Occupant + \"\").val(value[val].Occupant);\r\n }\r\n getTotelRecord();\r\n }\r\n else if (stage == \"A\") {\r\n $(\"#tbl1LIst > tbody\").html(\"\");\r\n let HTMLVal = \"\";\r\n for (const val in value) {\r\n if(value[val].Floor !=\"\"){\r\n const room = \"room\" + val;\r\n const Kitchen = \"Kitchen\" + val;\r\n const Toilet = \"Toilet\" + val;\r\n const loby = \"loby\" + val;\r\n const Hall = \"Hall\" + val;\r\n const DiningHall = \"DiningHall\" + val;\r\n const SittingRoom = \"SittingRoom\" + val;\r\n const Other = \"Other\" + val;\r\n const ID = \"trtbl1\" + value[val].Floor;\r\n HTMLVal += \"\";\r\n HTMLVal += \"\";\r\n HTMLVal += \"\";\r\n HTMLVal += \"\";\r\n HTMLVal += \"\";\r\n HTMLVal += \"\";\r\n HTMLVal += \"\";\r\n HTMLVal += \"\";\r\n HTMLVal += \"\";\r\n }\r\n /* else{\r\n const room = \"room\" + 0;\r\n const Kitchen = \"Kitchen\" + 0;\r\n const Toilet = \"Toilet\" + 0;\r\n const loby = \"loby\" + 0;\r\n const Hall = \"Hall\" + 0;\r\n const DiningHall = \"DiningHall\" + 0;\r\n const SittingRoom = \"SittingRoom\" + 0;\r\n const Other = \"Other\" + 0;\r\n const ID = \"trtbl1\" + value[val].Floor;\r\n HTMLVal += \"\";\r\n HTMLVal += \"\";\r\n HTMLVal += \"\";\r\n HTMLVal += \"\";\r\n HTMLVal += \"\";\r\n HTMLVal += \"\";\r\n HTMLVal += \"\";\r\n HTMLVal += \"\";\r\n HTMLVal += \"\";\r\n\r\n } */\r\n }\r\n $('#tbl1LIst tbody').append(HTMLVal);\r\n for (const val in value) {\r\n const room = \"room\" + val;\r\n const Kitchen = \"Kitchen\" + val;\r\n const Toilet = \"Toilet\" + val;\r\n const loby = \"loby\" + val;\r\n const Hall = \"Hall\" + val;\r\n const DiningHall = \"DiningHall\" + val;\r\n const SittingRoom = \"SittingRoom\" + val;\r\n if (value[val].Room != \"\") {\r\n $(\"#\" + room + \"\").val(value[val].Room);\r\n } if (value[val].Kitchen != \"\") {\r\n $(\"#\" + Kitchen + \"\").val(value[val].Kitchen);\r\n }\r\n if (value[val].Toilet != \"\") {\r\n $(\"#\" + Toilet + \"\").val(value[val].Toilet);\r\n } if (value[val].loby != \"\") {\r\n $(\"#\" + loby + \"\").val(value[val].loby);\r\n } if (value[val].Hall != \"\") {\r\n $(\"#\" + Hall + \"\").val(value[val].Hall);\r\n } if (value[val].DiningHall != \"\") {\r\n $(\"#\" + DiningHall + \"\").val(value[val].DiningHall);\r\n }\r\n if (value[val].SittingRoom != \"\") {\r\n $(\"#\" + SittingRoom + \"\").val(value[val].SittingRoom);\r\n }\r\n }\r\n }\r\n }\r\n catch (e) {\r\n alert(e)\r\n };\r\n }\r\n multiSelectedDropDownLIst() {\r\n this.dropdownSettings = {\r\n singleSelection: false,\r\n idField: 'item_id',\r\n textField: 'item_text',\r\n itemsShowLimit: 3,\r\n allowSearchFilter: false,\r\n enableCheckAll: false\r\n };\r\n }\r\n Alert() {\r\n alert(\"HEllo\");\r\n }\r\n ShowAndHideTableRow() {\r\n let HTMLVal = \"\";\r\n let HTML2Val = \"\";\r\n this.HidefirstTable = true;\r\n $(\"#tbl1LIst > tbody\").html(\"\");\r\n $(\"#tbl2List > tbody\").html(\"\");\r\n for (const val in this.selectedItems) {\r\n const value = this.selectedItems[val];\r\n const ID = \"trtbl1\" + value;\r\n const ID2 = \"trtbl2\" + value;\r\n\r\n HTMLVal += \"\";\r\n HTMLVal += \"\";\r\n HTMLVal += \"\";\r\n HTMLVal += \"\";\r\n HTMLVal += \"\";\r\n HTMLVal += \"\";\r\n HTMLVal += \"\";\r\n\r\n HTML2Val += \" \";\r\n HTML2Val += \"\";\r\n HTML2Val += \"\";\r\n HTML2Val += \"\";\r\n HTML2Val += \"\";\r\n HTML2Val += \"\";\r\n\r\n HTML2Val += \"\"\r\n HTML2Val += \"\";\r\n }\r\n $('#tbl1LIst tbody').append(HTMLVal);\r\n HTML2Val += \"\";\r\n\r\n HTML2Val += \"\";\r\n HTML2Val += \"\";\r\n HTML2Val += \"\";\r\n HTML2Val += \"\";\r\n HTML2Val += \"\";\r\n\r\n HTML2Val += \"\"\r\n $('#tbl2List tbody').append(HTML2Val);\r\n }\r\n ShowAndHideTableRowdeselect() {\r\n \r\n let HTMLVal = \"\";\r\n let HTML2Val = \"\";\r\n this.HidefirstTable = true;\r\n $(\"#tbl1LIst > tbody\").html(\"\");\r\n $(\"#tbl2List > tbody\").html(\"\");\r\n for (const val in this.selectedItems) {\r\n const value = this.selectedItems[val];\r\n const ID = \"trtbl1\" + value;\r\n const ID2 = \"trtbl2\" + value;\r\n\r\n HTMLVal += \"\";\r\n HTMLVal += \"\";\r\n HTMLVal += \"\";\r\n HTMLVal += \"\";\r\n HTMLVal += \"\";\r\n HTMLVal += \"\";\r\n HTMLVal += \"\";\r\n\r\n HTML2Val += \" \";\r\n HTML2Val += \"\";\r\n HTML2Val += \"\";\r\n HTML2Val += \"\";\r\n HTML2Val += \"\";\r\n HTML2Val += \"\";\r\n\r\n HTML2Val += \"\"\r\n HTML2Val += \"\";\r\n }\r\n $('#tbl1LIst tbody').append(HTMLVal);\r\n HTML2Val += \"\";\r\n\r\n HTML2Val += \"\";\r\n HTML2Val += \"\";\r\n HTML2Val += \"\";\r\n HTML2Val += \"\";\r\n HTML2Val += \"\";\r\n\r\n HTML2Val += \"\"\r\n $('#tbl2List tbody').append(HTML2Val);\r\n }\r\n onItemSelect(item: any) {\r\n let HTMLVal = \"\";\r\n let HTML2Val = \"\";\r\n const value = item;\r\n const ID = \"trtbl1\" + item;\r\n const tbl2ID = \"trtbl2\" + item;\r\n HTMLVal += \"\";\r\n HTMLVal += \"\";\r\n HTMLVal += \"\";\r\n HTMLVal += \"\";\r\n HTMLVal += \"\";\r\n HTMLVal += \"\";\r\n HTMLVal += \"\"\r\n\r\n HTML2Val += \" \";\r\n HTML2Val += \"\";\r\n HTML2Val += \"\";\r\n HTML2Val += \"\";\r\n HTML2Val += \"\";\r\n HTML2Val += \"\";\r\n\r\n HTML2Val += \"\"\r\n HTML2Val += \"\";\r\n\r\n $('#tbl1LIst tbody').append(HTMLVal);\r\n $('#tbl2List tbody').prepend(HTML2Val);\r\n // this.ShowAndHideTableRow();\r\n }\r\n onDeSelect(items: any) {\r\n \r\n const ID = \"trtbl1\" + items;\r\n console.log(\"ID is\", items);\r\n //this.ShowAndHideTableRow();\r\n this.ShowAndHideTableRowdeselect();\r\n }\r\n bindFloorDropDown() {\r\n let i = 1;\r\n while (i <= 100) {\r\n const val = { id: i }\r\n this.FloorDropDown.push(val);\r\n i++\r\n }\r\n }\r\n //OSV Main Grid\r\n GenralDetails1(e: any) {\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 1) {\r\n this.router.navigate([\"/OsvGeneralDetail1\", { id: data, valuation: this.valuationID, type: 'G' }]);\r\n }\r\n }\r\n GenralDetails2(e: any) {\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 1) {\r\n this.router.navigate([\"/OsvGeneralDetail1\", { id: data, valuation: this.valuationID, type: 'S' }]);\r\n }\r\n }\r\n PropertyDetail(e: any) {\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 1) {\r\n this.router.navigate([\"/OsvPropertyDetail\", { id: data, valuation: this.valuationID }]);\r\n }\r\n }\r\n CatchMentDetails(e: any) {\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 1) {\r\n this.router.navigate([\"/OsvCatchmentAreaAnalysis\", { id: data, valuation: this.valuationID }]);\r\n }\r\n }\r\n\r\n CFM(e: any) {\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 1) {\r\n this.router.navigate([\"/OsvCfm\", { id: data, valuation: this.valuationID }]);\r\n }\r\n }\r\n Other(e: any) {\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 1) {\r\n this.router.navigate([\"/OsvOther\", { id: data, valuation: this.valuationID }]);\r\n }\r\n }\r\n PropertyRadar(e: any) {\r\n\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 1) {\r\n this.router.navigate([\"/PropertyRadar\", { id: data, valuation: this.valuationID }]);\r\n }\r\n }\r\n Estimat_Future_life() {\r\n var life_prop = 0;\r\n if (this.yearsOfCompletion == \"\") {\r\n document.getElementById('txt_YearOfCompletion').focus();\r\n }\r\n else {\r\n if (this.conditionOfTheBuilding == \"Very Good\") {\r\n life_prop = 100 - parseInt(this.AgeOfproperty);\r\n }\r\n if (this.conditionOfTheBuilding == \"Good\") {\r\n life_prop = 100 - (parseInt(this.AgeOfproperty) + 10);\r\n }\r\n if (this.conditionOfTheBuilding == \"Well maintained\") {\r\n life_prop = 100 - (parseInt(this.AgeOfproperty) + 20);\r\n }\r\n if (this.conditionOfTheBuilding == \"Average\") {\r\n life_prop = 100 - (parseInt(this.AgeOfproperty) + 30);\r\n }\r\n if (this.conditionOfTheBuilding == \"Poor\") {\r\n life_prop = 100 - (parseInt(this.AgeOfproperty) + 40);\r\n }\r\n if (life_prop < 0)\r\n this.EstimateFutureLifeProperty = \"0\";\r\n else\r\n this.EstimateFutureLifeProperty = life_prop.toString();\r\n }\r\n }\r\n\r\n Calc_age_property() {\r\n const d = new Date();\r\n const n = d.getFullYear();\r\n let yr_c = this.yearsOfCompletion;\r\n if (this.yearsOfCompletion == \"\" || yr_c.toString().length != 4) {\r\n Swal.fire(\"Sorry\", \"Enter 4 digit year of completion\", \"warning\");\r\n }\r\n else {\r\n this.AgeOfproperty = (n - (+yr_c)).toString();\r\n }\r\n }\r\n EstimatFuturelife(e: any) {\r\n this.Estimat_Future_life();\r\n }\r\n Keyup_age_property(){\r\n const d = new Date();\r\n const n = d.getFullYear();\r\n let yr_c = this.yearsOfCompletion;\r\n if (this.yearsOfCompletion == \"\" || yr_c.toString().length != 4||this.yearsOfCompletion == \"NULL\"||this.yearsOfCompletion == \"0\") {\r\n \r\n }\r\n else {\r\n this.AgeOfproperty = (n - (+yr_c)).toString();\r\n this.Estimat_Future_life();\r\n }\r\n }\r\n onload_age_property(){\r\n const d = new Date();\r\n const n = d.getFullYear();\r\n let yr_c = this.yearsOfCompletion;\r\n if (this.yearsOfCompletion == \"\" || yr_c.toString().length != 4||this.yearsOfCompletion == \"NULL\"||this.yearsOfCompletion == \"0\") {\r\n \r\n /* this.NACompletion=true;\r\n this.yearsOfCompletion = \"\";\r\n this.AgeOfproperty = \"\";\r\n this.EstimateFutureLifeProperty = \"\";\r\n this.conditionOfTheBuilding = \"\";\r\n $(\"#txt_YearOfCompletion\").prop('disabled', true);\r\n $(\"#AgeOfproperty\").prop('disabled', true);\r\n $(\"#EstimateFutureLifeProperty\").prop('disabled', true);\r\n $(\"#ddlConditionOfBuilding\").prop('disabled', true); */ \r\n }\r\n else {\r\n this.AgeOfproperty = (n - (+yr_c)).toString();\r\n // this.Estimat_Future_life();\r\n }\r\n }\r\n GetBylaws() {\r\n this.ngxService.start();\r\n let val: Ibylaws = {\r\n caseid: this.caseID,\r\n area: this.areaOfPlotAct\r\n }\r\n ApiService.UpdateBylaws(val).then((responce: any) => {\r\n if (responce.status == 200) {\r\n if (responce.data) {\r\n this.setBylowsValue(responce.data)\r\n $('#tbl2List').focus();\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n console.log(\"Error In GetBylaws\",JSON.stringify(e));\r\n // Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n\r\n closeModel1() {\r\n $(\"#modelShowData1\").hide();\r\n }\r\n showHistoricalData1() {\r\n this.historicalData1 = true;\r\n // this.webcrowlData = false;\r\n this.ModalTitle1 = \"Case Details\"\r\n $(\"#modelShowData1\").show();\r\n\r\n this.ngxService.start();\r\n\r\n ApiService.SupSidebar(this.caseID).then((responce: any) => {\r\n if (responce.status == 200) {\r\n if (responce.data) {\r\n // this.HistoricalData = responce.data;\r\n this.CaseUid = responce.data.CaseUID;\r\n this.App_Name = responce.data.Applicant_Name;\r\n this.Property_Numb = responce.data.Property_No;\r\n this.Build_no = responce.data.Building_No;\r\n this.Landmark = responce.data.Land_mark;\r\n this.streat = responce.data.Street_Sector;\r\n this.state = responce.data.statename;\r\n this.city = responce.data.cityname;\r\n this.location = responce.data.LocationName;\r\n this.case_Type = responce.data.typeofcasename;\r\n this.document_details = responce.data.Documents;\r\n this.file_no = responce.data.File_No;\r\n this.rate = responce.data.TotalFees;\r\n this.unit = responce.data.Block;\r\n this.case_status = responce.data.CaseStatusname;\r\n this.eng = responce.data.engName;\r\n this.Sublocation = responce.data.SubLocationname;\r\n this.getdocurl=responce.data.CaseDoc;\r\n for (const Dvalue in responce.data.CaseDoc) {\r\n \r\n let docValss = {\r\n url: this.getdocurl[Dvalue].url,\r\n name: this.getdocurl[Dvalue].name\r\n }\r\n this.getdocurl[Dvalue] = docValss;\r\n } \r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n console.log(\"Error In showHistoricalData1\");\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n\r\n\r\n\r\n\r\n setBylowsValue(val: any) {\r\n $('#tbl2List > tbody > tr').each(function (item) {\r\n const floor = $(this).find(\"td:eq(0) label\")[0].innerText;\r\n if (floor == \"B1\" || floor == \"B2\" || floor == \"B3\" || floor == \"B4\") {\r\n $(this).find(\"td:eq(2) input\")[0].value = val.BF;\r\n }\r\n if (floor == \"G\" || floor == \"UG\" || floor == \"LG\") {\r\n $(this).find(\"td:eq(2) input\")[0].value = val.GF;\r\n }\r\n if (floor == \"F1\") {\r\n $(this).find(\"td:eq(2) input\")[0].value = val.FF\r\n }\r\n if (floor == \"F2\") {\r\n $(this).find(\"td:eq(2) input\")[0].value = val.SF;\r\n }\r\n if (floor == \"F3\") {\r\n $(this).find(\"td:eq(2) input\")[0].value = val.TF;\r\n }\r\n if (floor == \"F4\") {\r\n $(this).find(\"td:eq(2) input\")[0].value = val.FOURF;\r\n }\r\n });\r\n getTotelRecord();\r\n }\r\n}\r\n$(document).on('input', '.nnp', function () {\r\n const name = $(this).context.name;\r\n const sec = $(\"#hiddenSection\").val();\r\n let actual = $(this).closest('tr').find(\"td:eq(1) input\")[0].value;\r\n let permisible = $(this).closest('tr').find(\"td:eq(2) input\")[0].value;\r\n let sanction = $(this).closest('tr').find(\"td:eq(3) input\")[0].value;\r\n let areaadopted = $(this).closest('tr').find(\"td:eq(4) input\")[0].value;\r\n let deviation = $(this).closest('tr').find(\"td:eq(5) input\")[0].value;\r\n if (actual == \"\") {\r\n actual = \"0\";\r\n } if (permisible == \"\") {\r\n permisible = \"0\";\r\n }\r\n if (sanction == \"\") {\r\n sanction = \"0\"\r\n } if (areaadopted == \"\") {\r\n areaadopted = \"0\"\r\n } if (deviation == \"\") {\r\n deviation = \"0\"\r\n }\r\n if (sec == \"Yes\") {\r\n //if(sanction!=\"\"){\r\n if (name == \"actual\" || name == \"sanction\") {\r\n if (parseInt(actual) < parseInt(sanction)) {\r\n $(this).closest('tr').find(\"td:eq(4) input\")[0].value = actual;\r\n } else {\r\n $(this).closest('tr').find(\"td:eq(4) input\")[0].value = sanction;\r\n }\r\n }\r\n const diva = ((parseInt(actual) - parseInt(sanction)) * 100) / parseInt(sanction);\r\n if (diva < 0) {\r\n $(this).closest('tr').find(\"td:eq(5) input\")[0].value =0; /* -diva.toFixed(2); */\r\n } else {\r\n $(this).closest('tr').find(\"td:eq(5) input\")[0].value = diva.toFixed(2);\r\n }\r\n\r\n }\r\n //if (sec == \"No\") {\r\n else {\r\n if (name == \"actual\" || name == \"permisible\") {\r\n if (parseInt(actual) < parseInt(permisible)) {\r\n $(this).closest('tr').find(\"td:eq(4) input\")[0].value = actual;\r\n } else {\r\n $(this).closest('tr').find(\"td:eq(4) input\")[0].value = permisible;\r\n }\r\n }\r\n const diva = ((parseInt(actual) - parseInt(permisible)) * 100) / parseInt(permisible);\r\n if (diva < 0) {\r\n $(this).closest('tr').find(\"td:eq(5) input\")[0].value = 0;\r\n }\r\n else {\r\n $(this).closest('tr').find(\"td:eq(5) input\")[0].value = diva.toFixed(2);\r\n }\r\n\r\n }\r\n //else{}\r\n getTotelRecord();\r\n});\r\n\r\nfunction getTotelRecord() {\r\n let TotalActual = \"0\";\r\n let TotalPermissible = \"0\";\r\n let TotalSanctionPlan = \"0\";\r\n let TotalAreaAdopted = \"0\";\r\n let TotalDeviations = \"0\";\r\n let buildUpArea=\"0\";\r\n const length = $('#tbl2List > tbody > tr').length;\r\n $('#tbl2List > tbody > tr').each(function (item) {\r\n if (parseInt(item + 1) < parseInt(length)) {\r\n let Actual = $(this).find(\"td:eq(1) input\")[0].value;\r\n let Permissible = $(this).find(\"td:eq(2) input\")[0].value;\r\n let SanctionPlan = $(this).find(\"td:eq(3) input\")[0].value;\r\n let AreaAdopted = $(this).find(\"td:eq(4) input\")[0].value;\r\n let Deviations = $(this).find(\"td:eq(5) input\")[0].value;\r\n if (Actual == \"\") {\r\n Actual = \"0\";\r\n } if (Permissible == \"\") {\r\n Permissible = \"0\";\r\n } if (SanctionPlan == \"\") {\r\n SanctionPlan = \"0\";\r\n } if (AreaAdopted == \"\") {\r\n AreaAdopted = \"0\";\r\n } if (Deviations == \"\") {\r\n Deviations = \"0\";\r\n }\r\n TotalActual = (parseInt(TotalActual) + parseInt(Actual)).toString();\r\n TotalPermissible = (parseInt(TotalPermissible) + parseInt(Permissible)).toString();\r\n TotalSanctionPlan = (parseInt(TotalSanctionPlan) + parseInt(SanctionPlan)).toString();\r\n TotalAreaAdopted = (parseInt(TotalAreaAdopted) + parseInt(AreaAdopted)).toString();\r\n if(parseInt(TotalActual) < parseInt(TotalPermissible)){\r\n TotalDeviations=\"0\";\r\n }else{\r\n TotalDeviations = (((parseInt(TotalActual) - parseInt(TotalPermissible))*100)/(parseInt(TotalPermissible)*1)).toFixed(2);\r\n }\r\n // TotalDeviations = (parseInt(TotalDeviations) + parseInt(Deviations)).toString();\r\n // buildUpArea=(parseInt(TotalAreaAdopted) + parseInt(AreaAdopted)).toString();\r\n }\r\n });\r\n\r\n $(\"#txtActual\").val(TotalActual);\r\n $(\"#txtPermissible\").val(TotalPermissible);\r\n $(\"#txtSanctionPlan\").val(TotalSanctionPlan);\r\n $(\"#txtAreaAdopted\").val(TotalAreaAdopted);\r\n $(\"#txtDeviations\").val(TotalDeviations); \r\n \r\n let builduphidden : string = (document.getElementById(\"buildUpAreashidden\")).value; \r\n //alert(unit);\r\n if(builduphidden==\"true\"){\r\n (document.getElementById(\"buildUpAreashidden\")).value=\"false\";\r\n }else{\r\n $(\"#buildUpArea\").val(TotalAreaAdopted);\r\n // alert(this.buildUpArea.val(TotalAreaAdopted));\r\n // this.buildUpArea.val(TotalAreaAdopted);\r\n }\r\n \r\n}\r\n","module.exports = \"
      \\r\\n
    • \\r\\n General Details1\\r\\n
    • \\r\\n
    • \\r\\n General Details2\\r\\n
    • \\r\\n
    • \\r\\n Property Detail\\r\\n
    • \\r\\n
    • \\r\\n Catchment Area Analysis\\r\\n
    • \\r\\n
    • \\r\\n CFM\\r\\n
    • \\r\\n
    • \\r\\n Other\\r\\n
    • \\r\\n
    • \\r\\n Property Radar\\r\\n
    • \\r\\n\\r\\n
    • Case Detail
    • \\r\\n
    • \\r\\n \\r\\n
    • \\r\\n

    \\r\\n\\r\\n \\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    Case UIDMin ValueMax ValueFair Market ValueDistanceAction
    {{i}}{{grid.detail}}{{grid.marketrangemin}}{{grid.marketrangemax}}{{grid.fairmarketvalue}}{{grid.distance}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n\\r\\n \\r\\n\"","import { Component, OnInit, Renderer2, ElementRef, ViewChild, Input, EventEmitter, Directive } from '@angular/core';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { ApiService } from '../service/service';\r\nimport { SessionService } from '../service/sessionGlobalVar';\r\nimport { IUpdateFactorDetails, IFactorDetails, IftvDetails,ISaveFtvsurroundData,UpdateDataForGrid } from '../service/type'\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { } from 'googlemaps';\r\nimport Swal from 'sweetalert2';\r\ndeclare var $: any;\r\ndeclare var google: any;\r\nvar dataa;\r\n@Component({\r\n selector: 'app-osv-property-radar',\r\n templateUrl: './osv-property-radar.component.html',\r\n styles: []\r\n})\r\nexport class OsvPropertyRadarComponent implements OnInit {\r\n Latitude: string;\r\n Longitude: string;\r\n caseID: string = \"\";\r\n GridDetail: any;\r\n IsEditStatus: boolean = true;\r\n @ViewChild('map') mapElement: any;\r\n map: google.maps.Map;\r\n countVal = [];\r\n factorDetails: IUpdateFactorDetails[] = [];\r\n pageTypeValue: string;\r\n valuationID: number;\r\n type: string = \"\";\r\n showInfrasture: boolean = true;\r\n modelPopUp: boolean = false;\r\n surroundingstatus:string=\"\";\r\n historicalData: boolean = false;\r\n ModalTitle: string;\r\n HistoricalData: any;\r\n CaseUid:string;\r\n App_Name:string;\r\n Property_Numb:string;\r\n Build_no:string;\r\n Landmark:string;\r\n streat:string;\r\n state:string;\r\n city:string;\r\n location:string;\r\n case_Type:string;\r\n file_no:string;\r\n document_details:string;\r\n rate:string;\r\n unit:string;\r\n case_status:string;\r\n eng:string;\r\n Sublocation:string;\r\n docurl:string;\r\n getdocurl :any;\r\n getcustomerdocurl:any;\r\n supGridData:any;\r\n constructor(private router: Router, private service: ApiService, private session: SessionService, private ngxService: NgxUiLoaderService, private renderer: Renderer2, private el: ElementRef, private route: ActivatedRoute) { }\r\n\r\n ngOnInit() {\r\n this.route.params.subscribe(params => {\r\n if (params.id) {\r\n const id = window.atob(params.id);\r\n this.caseID = id; \r\n if (params.valuation == 1) {\r\n this.valuationID = params.valuation;\r\n }\r\n this.PropertyRadarr();\r\n this.getGioLocation(); \r\n } else {\r\n Swal.fire('Oops...', 'Something went wrong!', 'error');\r\n }\r\n });\r\n }\r\n getGioLocation() {\r\n ApiService.getGioLocation(this.caseID).then((responce: any) => {\r\n if (responce.status === 200) { \r\n if (responce.data.Latitude && responce.data.Longitude) {\r\n this.Latitude = responce.data.Latitude;\r\n this.Longitude = responce.data.Longitude;\r\n $(\"#inptLat\").val(responce.data.Latitude)\r\n $(\"#inptlog\").val(responce.data.Longitude)\r\n \r\n const type = \"school\";\r\n // initialize(type);\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n console.log(\"Getting Error in Gio Location\");\r\n });\r\n }\r\n showHistoricalData() {\r\n this.historicalData = true;\r\n // this.webcrowlData = false;\r\n this.ModalTitle = \"Case Details\"\r\n $(\"#modelShowData\").show();\r\n \r\n this.ngxService.start();\r\n \r\n ApiService.FTVCasedocdetails(this.caseID).then((responce: any) => {\r\n \r\n if (responce.status == 200) {\r\n if (responce.data) {\r\n // this.HistoricalData = responce.data;\r\n this.CaseUid= responce.data.CaseUID;\r\n this.App_Name=responce.data.Applicant_Name;\r\n this.Property_Numb=responce.data.Property_No;\r\n this.Build_no=responce.data.Building_No;\r\n this.Landmark=responce.data.Land_mark;\r\n this.streat=responce.data.Street_Sector;\r\n this.state=responce.data.statename;\r\n this.city=responce.data.cityname;\r\n this.location=responce.data.LocationName;\r\n this.case_Type=responce.data.typeofcasename;\r\n this.document_details=responce.data.Documents;\r\n this.file_no=responce.data.File_No;\r\n this.rate=responce.data.TotalFees;\r\n this.unit=responce.data.Block;\r\n this.case_status=responce.data.CaseStatusname;\r\n this.eng=responce.data.engName;\r\n this.Sublocation=responce.data.SubLocationname;\r\n this.getdocurl=responce.data.CaseDoc;\r\n for (const Dvalue in responce.data.CaseDoc) {\r\n let docValss = {\r\n url: this.getdocurl[Dvalue].url,\r\n name: this.getdocurl[Dvalue].name\r\n }\r\n this.getdocurl[Dvalue] = docValss;\r\n }\r\n this.getcustomerdocurl=responce.data.CustomerDoc;\r\n for (const Dvalue in responce.data.CustomerDoc) {\r\n let docValss = {\r\n url: this.getcustomerdocurl[Dvalue].url,\r\n name: this.getcustomerdocurl[Dvalue].name\r\n }\r\n this.getcustomerdocurl[Dvalue] = docValss;\r\n }\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n PropertyRadarr() {\r\n debugger;\r\n let val={\r\n CaseID:this.caseID}\r\n ApiService.PropertyRadar(val).then((responce: any) => {\r\n if (responce.status === 200) { \r\n dataa=responce.data;\r\n this.supGridData=responce.data;\r\n setTimeout(function () {\r\n $(function () {\r\n \r\n $(\"#supGrid\").DataTable(\r\n {\r\n //disable sorting on last column\r\n \"columnDefs\": [\r\n { \"orderable\": false, \"targets\": 5 }\r\n ],\r\n language: {\r\n //customize pagination prev and next buttons: use arrows instead of words\r\n 'paginate': {\r\n 'previous': '',\r\n 'next': ''\r\n },\r\n //customize number of elements to be displayed\r\n \"lengthMenu\": 'Display results'\r\n }\r\n }\r\n );\r\n \r\n });\r\n }, 1000);\r\n const type = \"school\";\r\n initialize(type);\r\n \r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n console.log(\"Getting Error in Gio Location\");\r\n });\r\n }\r\n\r\n PropertyDetails(e: any) {\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 2) {\r\n this.router.navigate([\"/UpdateAddress\", { id: data, valuation: this.valuationID }]);\r\n }\r\n }\r\n InfractureDetails(e: any) {\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 2) {\r\n this.router.navigate([\"/SupEditFtv\", { id: data, valuation: this.valuationID, type: \"Infracture\" }]);\r\n }\r\n }\r\n CatchMentAnalysis(e: any) {\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 2) {\r\n this.router.navigate([\"/SupEditFtv\", { id: data, valuation: this.valuationID, type: \"CatchMent\" }]);\r\n }\r\n }\r\n Valuation(e: any) {\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 2) {\r\n this.router.navigate([\"/SupFtvFinalValuation\", { id: data, valuation: this.valuationID }]);\r\n }\r\n }\r\n GenralDetails1(e: any) {\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 1) {\r\n this.router.navigate([\"/OsvGeneralDetail1\", { id: data, valuation: this.valuationID, type: 'G' }]);\r\n }\r\n }\r\n GenralDetails2(e: any) {\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 1) {\r\n this.router.navigate([\"/OsvGeneralDetail1\", { id: data, valuation: this.valuationID, type: 'S' }]);\r\n }\r\n }\r\n\r\n PropertyDetail(e: any) {\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 1) {\r\n this.router.navigate([\"/OsvPropertyDetail\", { id: data, valuation: this.valuationID }]);\r\n }\r\n }\r\n CatchMentDetails(e: any) {\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 1) {\r\n this.router.navigate([\"/OsvCatchmentAreaAnalysis\", { id: data, valuation: this.valuationID }]);\r\n }\r\n }\r\n CFM(e: any) {\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 1) {\r\n this.router.navigate([\"/OsvCfm\", { id: data, valuation: this.valuationID }]);\r\n }\r\n }\r\n Other(e: any) {\r\n\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 1) {\r\n this.router.navigate([\"/OsvOther\", { id: data, valuation: this.valuationID }]);\r\n }\r\n }\r\n PropertyRadar(e: any) {\r\n\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 1) {\r\n this.router.navigate([\"/PropertyRadar\", { id: data, valuation: this.valuationID }]);\r\n }\r\n }\r\n openInNewTab(href: any) {\r\n Object.assign(document.createElement('a'), {\r\n target: '_blank',\r\n href,\r\n }).click();\r\n }\r\n base64toPDF(data:string) {\r\n var bufferArray = this.base64ToArrayBuffer(data);\r\n var blobStore = new Blob([bufferArray], { type: \"application/pdf\" });\r\n /* if (window.navigator && window.navigator.msSaveOrOpenBlob) {\r\n window.navigator.msSaveOrOpenBlob(blobStore);\r\n return;\r\n } */\r\n var data = window.URL.createObjectURL(blobStore);\r\n window.open(data);\r\n}\r\n base64ToArrayBuffer(data:any) {\r\n var bString = window.atob(data);\r\n var bLength = bString.length;\r\n var bytes = new Uint8Array(bLength);\r\n for (var i = 0; i < bLength; i++) {\r\n var ascii = bString.charCodeAt(i);\r\n bytes[i] = ascii;\r\n }\r\n return bytes;\r\n};\r\n publishView(e: any){\r\n let data = e;\r\n let val = {\r\n CaseID:data\r\n }\r\n ApiService.ViewReport(val).then((responce: any) => {\r\n if (responce.status === 200) {\r\n \r\n if(responce.data.status==\"202\"){\r\n this.openInNewTab(responce.data.data1);\r\n }\r\n else {\r\n this.base64toPDF(responce.data.Data);\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n\r\n openInNewReportTab(href: any) {\r\n Object.assign(document.createElement('a'), {\r\n target: '_blank',\r\n href,\r\n }).click();\r\n }\r\n View() {\r\n let data = this.caseID/* .currentTarget.parentElement.firstElementChild.value */;\r\n const LoginID = localStorage.getItem('userID');\r\n const val: UpdateDataForGrid = {\r\n CaseID: data,\r\n Type: \"View\",\r\n watermark: \"\",\r\n casecreatedfrom: \"\",\r\n UserID: LoginID,\r\n Remark: \"\",\r\n Supervisor: \"\",\r\n RoleID: \"\",\r\n }\r\n ApiService.UpdateGridDataAndGetUrl(val).then((responce: any) => {\r\n if (responce.status === 200) {\r\n this.openInNewReportTab(responce.data.URL);\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n\r\n\r\n\r\n\r\n}\r\n\r\n//var dataa=[{\"lat\":28.697114,\"lot\":77.428835},{\"lat\":28.7039048,\"lot\":77.4299453},{\"lat\":28.7039815,\"lot\":77.4329048}]\r\n\r\nlet map;\r\nlet service;\r\n//let infowindow;\r\nlet pyrmont;\r\nvar infowindow = new google.maps.InfoWindow();\r\nfunction initialize(type: string) {\r\n var marker;\r\n \r\n const lat = $(\"#inptLat\").val();\r\n const lot = $(\"#inptlog\").val();\r\n \r\n pyrmont = new google.maps.LatLng(lat,lot);\r\n map = new google.maps.Map(document.getElementById('map'), {\r\n center: pyrmont,\r\n zoom: 17,\r\n backgroundColor: \"blue\"\r\n });\r\n let request = {\r\n location: pyrmont,\r\n radius: '500',\r\n type: [type.toLocaleLowerCase()]\r\n };\r\n service = new google.maps.places.PlacesService(map);\r\n console.log(service);\r\n service.nearbySearch(request, callback);\r\n var circle = new google.maps.Circle({\r\n center: pyrmont,\r\n map: map,\r\n radius: 200, // IN METERS.\r\n fillColor: '#FF0000',\r\n fillOpacity: 0.3,\r\n strokeColor: \"#FF0000\",\r\n strokeWeight: 2,\r\n });\r\n var circle = new google.maps.Circle({\r\n center: pyrmont,\r\n map: map,\r\n radius: 500, // IN METERS.\r\n fillColor: '#FF0000',\r\n fillOpacity: 0.3,\r\n strokeColor: \"#FF0000\",\r\n strokeWeight: 2,\r\n });\r\n for(var i=0;i\" + dataa[i].lat + \"

    Address: \" + dataa[i].lat + \"
    \" + dataa[i].lat + \"
    \" + dataa[i].lat + \"

    \";\r\n // infowindow.setContent(html);\r\n infowindow.open(map, marker);\r\n }\r\n });\r\n}\r\n\r\n}\r\n\r\nfunction callback(results, status) {\r\n console.log(results);\r\n if (status == google.maps.places.PlacesServiceStatus.OK) {\r\n \r\n for (let i = 0; i < results.length; i++) {\r\n let place = results[i];\r\n createMarker(results[i], \"palace\");\r\n }\r\n createMarker(\"\", \"mainPoint\");\r\n }\r\n}\r\nfunction createMarker(place, type: string) {\r\n \r\n /* if (type == \"palace\") {\r\n marker = new google.maps.Marker({\r\n map: map,\r\n position: place.geometry.location,\r\n title: place.name\r\n });\r\n } *//* else {\r\n marker = new google.maps.Marker({\r\n map: map,\r\n position: pyrmont,\r\n title: \"Subject Property\",\r\n icon: \"../assets/images/icons8-marker-52.png\"\r\n });\r\n } */\r\n \r\n var marker = new google.maps.Marker({\r\n map: map,\r\n position: pyrmont,\r\n title: \"Subject Property\",\r\n icon: \"../assets/images/subjectproperty.png\"\r\n });\r\n google.maps.event.addListener(marker, 'click', function () {\r\n infowindow.setContent(place.name);\r\n infowindow.open(map, this);\r\n\r\n });\r\n}\r\n","module.exports = \"\\r\\n\\r\\n\\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    Case UID {{element.CaseUID}} Name {{element.Name}} Mobile {{element.Mobile}} Bank {{element.Bank}} Location {{element.Location}} Case Action {{element.CaseStatus}} Engineer Status {{element.Engstatus}} CR.Date {{element.CrDate}} Action \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    Case UID {{element.CaseUID}} Name {{element.Name}} Mobile {{element.Mobile}} Bank {{element.Bank}} Location {{element.Location}} Case Action {{element.CaseStatus}} Engineer {{element.Engineer}} Supervisor / Analysis {{element.supervisor}} Status Remark {{element.StatusRemark}} Eng Status {{element.Engstatus}} CR.Date {{element.CrDate}} Action \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    Case UID {{element.CaseUID}} Name {{element.Name}} Mobile {{element.Mobile}} Bank {{element.Bank}} Location {{element.Location}} Case Action {{element.CaseStatus}} Engineer {{element.Engineer}} Supervisor / Analysis {{element.supervisor}} CR.Date {{element.CrDate}} QC Date {{element.QCDATE}} Action \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    Case UID {{element.caseuid}} Name {{element.appname}} Bank {{element.bank}} Location {{element.location}} Case Type {{element.casetype}} Valuation Type {{element.valuationtype}} Engineer {{element.Allocated_To}} Reopen Remark {{element.Case_Reopen_Remarks}} CR.Date {{element.crdate}} Action \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n\\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n

    {{HeaderText}}

    \\r\\n \\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n

    Send Mail

    \\r\\n \\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n \\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n\\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n\\r\\n
    \\r\\n\\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n

    {{popUpHeading}}

    \\r\\n \\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n\"","import { Component, OnInit, Renderer2, ElementRef, Directive,ViewChild } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { ApiService } from '../service/service';\r\nimport { SessionService } from '../service/sessionGlobalVar';\r\nimport { IGridInput, IGetCityLocation, IUpdateStatus, getStage, IsendMail,IsgetMail, UpdateDataForGrid } from '../service/type'\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport {MatPaginator,MatTableDataSource,MatSort,Sort} from '@angular/material';\r\nimport Swal from 'sweetalert2';\r\nimport * as Excel from 'exceljs/dist/exceljs.min.js';\r\nimport * as FileSaver from 'file-saver';\r\nimport { DomSanitizer } from '@angular/platform-browser';\r\ndeclare const $: any;\r\n\r\n@Component({\r\n selector: 'app-other-office-cases',\r\n templateUrl: './other-office-cases.component.html',\r\n styleUrls: []\r\n})\r\nexport class OtherOfficeCasesComponent implements OnInit {\r\n\r\n GridDetail: [];\r\n GridPublish: [];\r\n GridReview: [];\r\n NewMainGrid: any;\r\n isShowAllocation: boolean = true;\r\n isShowReview: boolean=false;;\r\n isShowPublish: boolean;\r\n isnewReview: boolean = false;\r\n IsEditStatus: boolean = false;\r\n datatablerefersh:boolean=true;\r\n qcpasspermission:boolean=false;\r\n editcasepermission:boolean=false;\r\n viewAreadetailedit:boolean=true;\r\n valEngineer: any;\r\n status: any;\r\n selectedStatus: string = \"0\";\r\n selectedEngvalue: string = \"\";\r\n selectedSupvalue:string=\"\";\r\n HeaderText: string;\r\n IsDocument: boolean = false;\r\n Isasign:boolean=false;\r\n Component1Variable: string = \"Component1VariableSent\";\r\n logID: string;\r\n inputRemark: string = \"\";\r\n msgType: string;\r\n updatedFiles: any;\r\n typeOfStage: string;\r\n sanctionPlanDoc: any;\r\n caseID: string;\r\n IsSendMailModel: boolean = false;\r\n sendMailForm: string;\r\n SendBranchPerson: string;\r\n SendBranchPersonemail:string;\r\n MailSubject: string;\r\n MailBody: string;\r\n mailBankID:string;\r\n typed:string;\r\n valSup: any = \"\";\r\n getdocurl :any;\r\n quiid:string;\r\n ShowStatusTag: boolean = false;\r\n showAllocateStatusTag: boolean = false;\r\n AllocateCaseRemark: string;\r\n popUpHeading: string;\r\n getUserDetailsArr = [];\r\n displayedColumnsAllocation: string[] = ['CaseUID', 'name','mobileno', 'Bank', 'Location','CaseAction','EngineerStatus','CRDate','Action'];\r\n displayedColumnsReview: string[] = ['CaseUID', 'name','mobileno', 'Bank', 'Location','CaseAction','Engineer','supervisor','StatusRemark','engstatus','CRDate','Action'];\r\n displayedColumnsPublish: string[] = ['CaseUID', 'name','mobileno', 'Bank', 'Location','CaseAction','Engineer','supervisor','CRDate','qcdate','Action'];\r\n displayedColumnsAreaDetail: string[] = ['CaseUID', 'name', 'Bank', 'Location','CaseAction','ValuationType','Engineer','reopenremark','CRDate','Action'];\r\n\r\n dataSourceAllocation = new MatTableDataSource;\r\n dataSourceReview=new MatTableDataSource;\r\n dataSourcePublish=new MatTableDataSource;\r\n dataSourceAreaDetail=new MatTableDataSource;\r\n fileUrl: any;\r\n ddlrole: string;\r\n AllocateSelectedUser: string=\"Select\";\r\n IsEditadmin: boolean=false;\r\n applyFilter(filterValue: string) {\r\n this.dataSourceAllocation.filter = filterValue.trim().toLowerCase();\r\n this.dataSourceReview.filter = filterValue.trim().toLowerCase();\r\n this.dataSourcePublish.filter = filterValue.trim().toLowerCase();\r\n this.dataSourceAreaDetail.filter = filterValue.trim().toLowerCase();\r\n }\r\n \r\n @ViewChild(MatPaginator) paginator: MatPaginator;\r\n @ViewChild(MatSort) sort: MatSort;\r\n constructor(private router: Router, private service: ApiService, private session: SessionService, private ngxService: NgxUiLoaderService, private renderer: Renderer2, private el: ElementRef,private sanitizer: DomSanitizer) {\r\n \r\n }\r\n ngOnInit() {\r\n \r\n /* const p = this.el.nativeElement;\r\n this.renderer.addClass(this.el.nativeElement, 'abc'); */\r\n let val = localStorage.getItem(\"roleID\");\r\n const adoff=localStorage.getItem(\"AdroitOffice\");\r\n if (val) {\r\n if (+val == 7) {\r\n this.router.navigate([\"BankCaseDetails\"]);\r\n }\r\n else if (+val == 22) {\r\n this.router.navigate([\"BankCaseDetails\"]);\r\n }\r\n else if (+val == 3 ) { \r\n this.quiid=\"1\";\r\n // this.getMainGridData(\"1\");\r\n } \r\n else if (+val == 10) { \r\n this.quiid=\"1\";\r\n this.getMainGridData(\"1\");\r\n } \r\n else if (+val == 5 || +val==11) {\r\n \r\n this.router.navigate([\"SupHome\"]);\r\n }\r\n else if (+val == 13) {\r\n this.router.navigate([\"RegionalOffice\"]);\r\n }\r\n }\r\n }\r\n logDetail(e) {\r\n this.logID = e;\r\n if (this.logID) {\r\n this.router.navigate([\"/logDetails\", { id: this.logID }]);\r\n }\r\n }\r\n\r\n openInNewTab(href: any) {\r\n Object.assign(document.createElement('a'), {\r\n target: '_blank',\r\n href,\r\n }).click();\r\n }\r\n base64toPDF(data:string) {\r\n var bufferArray = this.base64ToArrayBuffer(data);\r\n var blobStore = new Blob([bufferArray], { type: \"application/pdf\" });\r\n /* if (window.navigator && window.navigator.msSaveOrOpenBlob) {\r\n window.navigator.msSaveOrOpenBlob(blobStore);\r\n \r\n return;\r\n } */\r\n var data = window.URL.createObjectURL(blobStore);\r\n // this.fileUrl = this.sanitizer.bypassSecurityTrustResourceUrl(window.URL.createObjectURL(blobStore));\r\n window.open(data);\r\n}\r\n\r\n base64ToArrayBuffer(data:any) {\r\n var bString = window.atob(data);\r\n var bLength = bString.length;\r\n var bytes = new Uint8Array(bLength);\r\n for (var i = 0; i < bLength; i++) {\r\n var ascii = bString.charCodeAt(i);\r\n bytes[i] = ascii;\r\n }\r\n return bytes;\r\n};\r\npublishView(e: any){\r\n let data = e;\r\n let val = {\r\n CaseID:data\r\n }\r\n ApiService.ViewReport(val).then((responce: any) => {\r\n if (responce.status === 200) {\r\n debugger;\r\n if(responce.data.status==\"202\"){\r\n this.openInNewTab(responce.data.data1);\r\n }\r\n else {\r\n this.base64toPDF(responce.data.Data);\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n}\r\n \r\n encrypt(key) {\r\n var result = \"\";\r\n const value = \"b89d20fcabec4256b80c68a633f1d9e1\";\r\n for (let i = 0; i < value.length; ++i) {\r\n result += String.fromCharCode(key[i % key.length] ^ value.charCodeAt(i));\r\n }\r\n return result;\r\n }\r\n PublishReopen(e) {\r\n this.HeaderText = \"Update Action\";\r\n this.logID = e;\r\n if (this.logID) {\r\n this.getStage();\r\n this.IsEditStatus = true;\r\n this.IsDocument = false;\r\n this.msgType = \"Case status changed from Publish\";\r\n }\r\n }\r\n HideModelsendMail(){\r\n this.IsSendMailModel = false;\r\n }\r\n sendReminderUpdate(e) {\r\n \r\n const val: IsendMail = {\r\n caseId : this.caseID,\r\n EmailTo: this.sendMailForm,\r\n Sublect: this.MailSubject,\r\n ApplicantName: this.SendBranchPerson,\r\n Body: this.MailBody,\r\n LoginID: this.session.UserID,\r\n BankID: this.mailBankID,\r\n type:\"update\"\r\n }\r\n this.ngxService.start();\r\n \r\n ApiService.MailReminderUpdate(val).then((responce: any)=>{\r\n \r\n if (responce.status === 200) {\r\n Swal.fire('Thanks', responce.data.EmailTo, 'success');\r\n this.getMainGridData(this.quiid);\r\n this.IsSendMailModel = false;\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n \r\n }\r\n\r\n sendReminder(e: any) {\r\n \r\n this.IsSendMailModel = true;\r\n const val: IsgetMail = {\r\n caseid : e,\r\n type:\"get\"\r\n }\r\n this.caseID = e;\r\n ApiService.GetMailReminderValue(val).then((responce: any) => {\r\n \r\n if (responce.status === 200) {\r\n let val = responce.data;\r\n let sender=localStorage.getItem(\"Senderemail\");\r\n this.sendMailForm = val.EmailTo;\r\n this.SendBranchPerson = val.ApplicantName;\r\n this.SendBranchPersonemail=sender;\r\n this.MailSubject = val.Sublect;\r\n this.MailBody = val.Body;\r\n this.mailBankID=val.BankID\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n\r\n\r\n document(e) {\r\n this.logID = e.currentTarget.parentElement.firstElementChild.value;\r\n alert(\"Documnt\");\r\n }\r\n \r\n editCase(e) {\r\n this.logID = e;\r\n const val = window.btoa(this.logID);\r\n if (this.logID) {\r\n this.router.navigate([\"/Casecreation\", { id: val }]);\r\n }\r\n }\r\n HideModel() {\r\n this.IsEditStatus = false;\r\n }\r\n\r\n AreaDetailsCase(e) { \r\n this.logID = e;\r\n const val = window.btoa(this.logID);\r\n if (this.logID) {\r\n this.router.navigate([\"/AreaDetails\", { id: val }]);\r\n }\r\n }\r\n\r\n editStatusAllocation(e) {\r\n this.HeaderText = \"Update Action\";\r\n this.logID = e;\r\n if (this.logID) {\r\n this.getStage();\r\n this.IsEditStatus = true;\r\n this.IsDocument = false;\r\n this.msgType = \"Case status changed from Allocation\";\r\n }\r\n }\r\n editStatusReview(e) {\r\n this.HeaderText = \"Update Action\";\r\n this.logID = e;\r\n if (this.logID) {\r\n this.getStage();\r\n this.IsEditStatus = true;\r\n this.IsDocument = false;\r\n this.msgType = \"Case status changed from Review\";\r\n }\r\n }\r\nonchangestatussup(e: any){\r\n debugger;\r\n if(this.session.getAdroitOffice==\"1\" || this.session.getAdroitOffice==\"39\"){\r\n this.ddlrole=\"ReportAnalysis\";\r\n }else{\r\n this.ddlrole=\"Sup\";\r\n }\r\n if (this.selectedStatus==\"40\"){\r\n const val: IGetCityLocation = {\r\n StateID: localStorage.getItem('AdroitBranch'),\r\n CityID: \"\",\r\n LocID: \"\",\r\n GetType: \"OfficeEngineer\",\r\n }\r\n this.getCityLocation(val);\r\n}\r\nif (this.selectedStatus==\"48\"){\r\n const val: IGetCityLocation = {\r\n StateID: localStorage.getItem('userID'),\r\n CityID: \"\",\r\n LocID: \"\",\r\n GetType: \"Supp\",\r\n }\r\n this.getCityLocation(val);\r\n}\r\nelse\r\n{\r\n const val: IGetCityLocation = {\r\n StateID: \"\",\r\n CityID: \"\",\r\n LocID: \"\",\r\n GetType: this.ddlrole,\r\n }\r\n this.getCityLocation(val);\r\n}\r\n\r\n}\r\n updateStatus() {\r\n \r\n if (this.logID) {\r\n if (this.selectedStatus == \"0\" || this.selectedStatus == \"\") {\r\n Swal.fire('Oops...', 'Please Select Action Type!', 'warning');\r\n } \r\n else if (this.selectedEngvalue == \"\" && (this.selectedStatus==\"40\" || this.selectedStatus==\"48\")) {\r\n Swal.fire('Oops...', 'Please Select user.!', 'warning');\r\n } else {\r\n const val: IUpdateStatus = {\r\n Case_id: this.logID,\r\n CaseStatus: this.selectedStatus,\r\n statusRemark: this.inputRemark,\r\n Assignto: this.selectedEngvalue,\r\n Message: this.msgType,\r\n LoginID: this.session.UserID\r\n }\r\n this.ngxService.start();\r\n \r\n ApiService.UpdateStatus(val).then((responce: any) => {\r\n \r\n if (responce.status === 200) {\r\n this.IsEditStatus = false;\r\n this.selectedStatus = \"0\";\r\n this.selectedEngvalue = \"\";\r\n this.inputRemark = \"\";\r\n Swal.fire('Success', 'Status Updated Sucessfully', 'success');\r\n this.getMainGridData(this.quiid);\r\n \r\n \r\n if (responce.data) {\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong in status Update!', 'error');\r\n });\r\n }\r\n }\r\n }\r\n handleFileSelect(evt) {\r\n this.updatedFiles = evt.target.files;\r\n };\r\n handleSanctionPlanDoc(evt) {\r\n this.sanctionPlanDoc = evt.target.files;\r\n }\r\n updateDocument() {\r\n \r\n if (this.logID) {\r\n if (this.sanctionPlanDoc || this.updatedFiles) {\r\n \r\n let formData = new FormData();\r\n if (this.updatedFiles) {\r\n for (let val of this.updatedFiles) {\r\n formData.append(\"CaseID\", this.logID);\r\n formData.append(\"imgname\", val.name);\r\n formData.append(\"files\", val);\r\n }\r\n }\r\n if (this.sanctionPlanDoc) {\r\n formData.append(\"CaseID\", this.logID);\r\n formData.append(\"imgname\", this.sanctionPlanDoc[0].name);\r\n formData.append(\"files\", this.sanctionPlanDoc[0]);\r\n }\r\n \r\n this.ngxService.start();\r\n ApiService.UpdateDocument(formData).then((responce: any) => {\r\n \r\n \r\n if (responce.status === 200) {\r\n this.IsEditStatus = false;\r\n this.sanctionPlanDoc = undefined;\r\n this.updatedFiles = undefined;\r\n Swal.fire('Success...', 'Upload Document Sucessfully!', 'success');\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong in document update!', 'error');\r\n });\r\n } else {\r\n Swal.fire('Oops...', 'Please select atleast one document!', 'warning');\r\n }\r\n }\r\n }\r\nDeleteDoc(e){\r\n \r\n this.ngxService.start();\r\n let val = {\r\n Case_id: this.logID,\r\n Status: \"\",\r\n FilePath: e,\r\n Type: \"doc\",\r\n Message: \"\",\r\n LoginID: this.session.UserID\r\n }\r\n \r\n ApiService.DeleteDocument(val).then((responce: any) => {\r\n if (responce.status == 200) { \r\n this.IsEditStatus = false;\r\n Swal.fire('Success...', 'Delete Document Sucessfully!', 'success');\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n}\r\n\r\n addDoc(e) {\r\n \r\n this.logID = e;\r\n this.HeaderText = \"Upload Document\";\r\n if (this.logID) {\r\n this.IsEditStatus = true;\r\n this.IsDocument = true;\r\n this.ngxService.start();\r\n ApiService.SupSidebar(this.logID).then((responce: any) => {\r\n \r\n if (responce.status == 200) {\r\n if (responce.data) { \r\n this.getdocurl=responce.data.CaseDoc;\r\n for (const Dvalue in responce.data.CaseDoc) {\r\n \r\n let docValss = {\r\n url: this.getdocurl[Dvalue].url,\r\n name: this.getdocurl[Dvalue].name\r\n }\r\n this.getdocurl[Dvalue] = docValss;\r\n }\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n }\r\n \r\n\r\n onSupChange(e) {\r\n const Val = this.getSupValue(e.target.value);\r\n this.selectedSupvalue = Val.AttributeID;\r\n }\r\n getSupValue(selectedName: string) {\r\n return this.valSup.find(val => val.AttributeName === selectedName);\r\n }\r\n onEngChange(e) {\r\n const Val = this.getEngValue(e.target.value);\r\n this.selectedEngvalue = Val.AttributeID;\r\n }\r\n getEngValue(selectedName: string) {\r\n return this.valEngineer.find(val => val.AttributeName === selectedName);\r\n }\r\n getCityLocation(val: IGetCityLocation) {\r\n \r\n this.ngxService.start();\r\n ApiService.GetCityLocation(val).then((responce: any) => {\r\n \r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n this.valEngineer = responce.data.DATA;\r\n \r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n getStatus(val: string) {\r\n this.ngxService.start();\r\n ApiService.GetMaster(val).then((responce: any) => {\r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n this.status = responce.data.DATA;\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n allocation(e) {\r\n \r\n this.quiid=\"1\";\r\n const review = document.getElementById(\"review-tab\");\r\n const publish = document.getElementById(\"publish-tab\");\r\n const allocation = document.getElementById(\"home-tab\");\r\n const Newreview = document.getElementById(\"Newreview-tab\");\r\n this.typeOfStage = \"allocation\";\r\n publish.classList.remove(\"active\");\r\n allocation.classList.add(\"active\");\r\n review.classList.remove(\"active\");\r\n Newreview.classList.remove(\"active\");\r\n this.isShowAllocation = true;\r\n this.isShowReview = false;\r\n this.isShowPublish = false;\r\n this.isnewReview = false;\r\n this.getMainGridData(\"1\");\r\n /* if (this.GridDetail) {\r\n if(this.datatablerefersh==false){\r\n this.getMainGridData(\"1\");\r\n setTimeout(function () {\r\n $(function () {\r\n $(\"#example1\").DataTable({\r\n destroy: true,\r\n searching: true,\r\n \"order\": [[ 0, \"desc\" ]],\r\n \"lengthMenu\": [[50,100, -1], [50,100, \"All\"]] \r\n });\r\n });\r\n }, 1000);\r\n this.datatablerefersh=false;\r\n }\r\n } */\r\n return false;\r\n }\r\n\r\n review(e) {\r\n \r\n this.quiid=\"2\";\r\n const review = document.getElementById(\"review-tab\");\r\n const publish = document.getElementById(\"publish-tab\");\r\n const allocation = document.getElementById(\"home-tab\");\r\n const Newreview = document.getElementById(\"Newreview-tab\");\r\n this.typeOfStage = \"review\";\r\n publish.classList.remove(\"active\");\r\n allocation.classList.remove(\"active\");\r\n Newreview.classList.remove(\"active\");\r\n review.classList.add(\"active\");\r\n this.isShowAllocation = false;\r\n this.isShowReview = false;\r\n this.isShowPublish = false;\r\n this.isnewReview = false;\r\n this.getMainGridData(\"2\");\r\n /* if (this.GridReview) {\r\n if(this.datatablerefersh==false){\r\n this.getMainGridData(\"2\");\r\n setTimeout(function () {\r\n $(function () {\r\n $(\"#example2\").DataTable({\r\n destroy: true,\r\n \"order\": [[ 0, \"desc\" ]],\r\n \"lengthMenu\": [[50,100, -1], [50,100, \"All\"]] \r\n });\r\n });\r\n }, 1000);\r\n this.datatablerefersh=false;\r\n }\r\n }\r\n else{\r\n this.datatablerefersh=true;\r\n this.getMainGridData(\"2\");\r\n } */\r\n return false;\r\n }\r\n NewgetMainGridData() {\r\n \r\n let val = {\r\n LoginID: this.session.UserID\r\n }\r\n this.ngxService.start();\r\n ApiService.GetSuperGridData(val).then((responce: any) => {\r\n if (responce.status == 200) {\r\n if (responce.data) {\r\n this.NewMainGrid = responce.data;\r\n this.dataSourceAreaDetail=new MatTableDataSource(responce.data);\r\n this.dataSourceAreaDetail.paginator = this.paginator; \r\n this.dataSourceAreaDetail.sort = this.sort; \r\n \r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n ViewCaseReportAnalysis() {\r\n \r\n let val = {\r\n LoginID: this.session.UserID\r\n }\r\n this.ngxService.start();\r\n ApiService.ViewCaseReportAnalysis(val).then((responce: any) => {\r\n if (responce.status == 200) {\r\n if (responce.data) {\r\n this.NewMainGrid = responce.data;\r\n this.dataSourceAreaDetail=new MatTableDataSource(responce.data);\r\n this.dataSourceAreaDetail.paginator = this.paginator; \r\n this.dataSourceAreaDetail.sort = this.sort; \r\n \r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n NewGrid(e) {\r\n\r\n const review = document.getElementById(\"review-tab\");\r\n const publish = document.getElementById(\"publish-tab\");\r\n const allocation = document.getElementById(\"home-tab\");\r\n const Newreview = document.getElementById(\"Newreview-tab\");\r\n this.typeOfStage = \"Newreview\";\r\n\r\n publish.classList.remove(\"active\");\r\n allocation.classList.remove(\"active\");\r\n review.classList.remove(\"active\");\r\n Newreview.classList.add(\"active\");\r\n\r\n this.isShowAllocation = false;\r\n this.isShowReview = false;\r\n this.isShowPublish = false;\r\n this.isnewReview = false;\r\n debugger;\r\n if(this.session.getAdroitOffice==\"1\" || this.session.getAdroitOffice==\"39\"){\r\n this.qcpasspermission=this.session.getqc_permission;\r\n this.editcasepermission=this.session.getedit_report;\r\n this.viewAreadetailedit=false;\r\n this.ViewCaseReportAnalysis()\r\n \r\n }\r\n else{\r\n this.viewAreadetailedit=true;\r\n this.NewgetMainGridData();\r\n }\r\n \r\n return false;\r\n \r\n }\r\n publish(e) {\r\n this.quiid=\"3\";\r\n const review = document.getElementById(\"review-tab\");\r\n const publish = document.getElementById(\"publish-tab\");\r\n const allocation = document.getElementById(\"home-tab\");\r\n const Newreview = document.getElementById(\"Newreview-tab\");\r\n this.typeOfStage = \"publish\";\r\n publish.classList.add(\"active\");\r\n allocation.classList.remove(\"active\");\r\n review.classList.remove(\"active\");\r\n Newreview.classList.remove(\"active\");\r\n\r\n this.isShowAllocation = false;\r\n this.isShowReview = false;\r\n this.isShowPublish = true;\r\n this.isnewReview = false;\r\n this.getMainGridData(\"7\");\r\n /* if (this.GridPublish) {\r\n this.getMainGridData(\"3\");\r\n if(this.datatablerefersh==false){\r\n this.getMainGridData(\"3\");\r\n setTimeout(function () {\r\n $(function () {\r\n $(\"#example3\").DataTable({\r\n destroy: true,\r\n \"order\": [[ 0, \"desc\" ]],\r\n \"lengthMenu\": [[50,100, -1], [50,100, \"All\"]] \r\n });\r\n });\r\n }, 1000);\r\n this.datatablerefersh=false;\r\n }\r\n }\r\n else{\r\n this.datatablerefersh=true;\r\n this.getMainGridData(\"3\");\r\n } */\r\n return false;\r\n }\r\n addCase() {\r\n this.router.navigate([\"Casecreation\"]);\r\n }\r\n getMainGridData(qid: string) {\r\n debugger;\r\n let val: IGridInput = {\r\n LoginID: this.session.UserID,\r\n RoleID: this.session.getRoleID,\r\n UserBankBranch: this.session.BankBranchID,\r\n SelectedBankID: \"\",\r\n SelectedBranchID: \"\",\r\n CaseStage: \"A\",\r\n ValuationType: \"1\",\r\n qid: \"7\"\r\n }\r\n this.ngxService.start();\r\n ApiService.GetGridData(val).then((responce: any) => {\r\n debugger;\r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n if (qid === \"1\") {\r\n this.GridDetail = responce.data; \r\n this.dataSourceAllocation=new MatTableDataSource(responce.data);\r\n this.dataSourceAllocation.paginator = this.paginator; \r\n this.dataSourceAllocation.sort = this.sort; \r\n }\r\n else if (qid === \"2\") {\r\n this.GridReview = responce.data;\r\n this.dataSourceReview=new MatTableDataSource(responce.data);\r\n this.dataSourceReview.paginator = this.paginator; \r\n this.dataSourceReview.sort = this.sort; \r\n }\r\n else if (qid === \"3\" || qid === \"7\") {\r\n this.GridPublish = responce.data;\r\n this.dataSourcePublish=new MatTableDataSource(responce.data);\r\n this.dataSourcePublish.paginator = this.paginator;\r\n this.dataSourcePublish.sort = this.sort;\r\n }\r\n /* if(this.datatablerefersh==true){\r\n setTimeout(function () {\r\n $(function () {\r\n $(\"#example\" + qid + \"\").DataTable({\r\n \"order\": [[ 0, \"desc\" ]],\r\n \"lengthMenu\": [[50,100, -1], [50,100, \"All\"]] \r\n });\r\n });\r\n }, 1000);\r\n this.datatablerefersh=false;\r\n } */\r\n \r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n // Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n getStage() {\r\n const valuationType = \"1\";\r\n let typeval: string = \"\";\r\n if (this.typeOfStage == \"publish\") {\r\n typeval = \"Publish\"\r\n } else if (this.typeOfStage == \"review\") {\r\n typeval = \"Review\"\r\n } else {\r\n typeval = \"Allocation\"\r\n }\r\n let val: getStage = {\r\n Type: typeval,\r\n valType: valuationType\r\n }\r\n this.ngxService.start();\r\n ApiService.GetStages(val).then((response: any) => {\r\n this.status = response.data.DATA;\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something Went Wrong In Action Please Refresh Page!', 'error')\r\n })\r\n }\r\n ExportTOExcel(caseid) {\r\n \r\n let data = [];\r\n \r\nlet header=[];\r\nlet val={\r\n caseid:caseid\r\n}\r\nlet workbook = new Excel.Workbook();\r\n this.ngxService.start();\r\n ApiService.DownloadCSVFileKotak(val).then((responce: any) => { \r\n if(responce.data){ \r\n let blob = new Blob([responce.data], { type: 'application/text' });\r\n FileSaver.saveAs(blob, caseid+'.csv');\r\n \r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n \r\n });\r\n\r\n\r\n\r\n\r\n\r\n \r\n }\r\n\r\n Edit(valuationID: string, e: any) {\r\n const val = e/* .currentTarget.parentElement.firstElementChild.value */;\r\n if (val && val != \"\") {\r\n const data = window.btoa(val);\r\n this.router.navigate([\"/UpdateAddress\", { id: data, valuation: valuationID }]);\r\n }\r\n }\r\n \r\n View(e: any) {\r\n let data = e/* .currentTarget.parentElement.firstElementChild.value */;\r\n const LoginID = localStorage.getItem('userID');\r\n const val: UpdateDataForGrid = {\r\n CaseID: data,\r\n Type: \"View\",\r\n watermark: \"\",\r\n casecreatedfrom: \"\",\r\n UserID: LoginID,\r\n Remark: \"\",\r\n Supervisor: \"\",\r\n RoleID: \"\",\r\n }\r\n ApiService.UpdateGridDataAndGetUrl(val).then((responce: any) => {\r\n if (responce.status === 200) {\r\n this.openInNewTab(responce.data.URL);\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n QcPass(e: any,fee: any) {\r\n const val = window.confirm(\"Do you want to save data?\");\r\n if (val) {\r\n const data = e/* .currentTarget.parentElement.firstElementChild.value */;\r\n const waterMark = e/* .currentTarget.firstElementChild.value */;\r\n const LoginID = localStorage.getItem('userID');\r\n const val: UpdateDataForGrid = {\r\n CaseID: data,\r\n Type: \"QCPASS\",\r\n watermark: waterMark,\r\n casecreatedfrom: \"\",\r\n UserID: LoginID,\r\n Remark: \"\",\r\n Supervisor: \"\",\r\n RoleID: \"\"\r\n }\r\n this.ngxService.start();\r\n ApiService.UpdateGridDataAndGetUrl(val).then((responce: any) => {\r\n if (responce.status === 200) {\r\n debugger;\r\n Swal.fire('Thanks', 'QC Pass Sucessfully', 'success');\r\n this.openInNewTab(responce.data.URL);\r\n \r\n // this.getMainGridData();\r\n /* this.ViewReportwithqc(data); */\r\n window.location.reload();\r\n \r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n \r\n }\r\n }\r\n allocateAdminSup(e: any) {\r\n this.caseID = e/* .currentTarget.parentElement.firstElementChild.value */;\r\n this.popUpHeading = \"Allocate Case \"\r\n this.IsEditadmin = true;\r\n this.ShowStatusTag = false;\r\n this.showAllocateStatusTag = true;\r\n this.getUserDetails();\r\n }\r\n getUserDetails() {\r\n this.ngxService.start();\r\n const LoginID = localStorage.getItem('userID');\r\n let val: IGetCityLocation = {\r\n StateID: LoginID,\r\n CityID: \"\",\r\n LocID: \"\",\r\n GetType: \"Supp\",\r\n }\r\n ApiService.GetCityLocation(val).then((responce: any) => {\r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n this.getUserDetailsArr = responce.data.DATA;\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n HideModell() {\r\n this.IsEditadmin = false;\r\n }\r\n updateAllocateStatus() {\r\n let roleID = localStorage.getItem(\"roleID\");\r\n if (this.AllocateSelectedUser == \"Select\") {\r\n Swal.fire(\"Opps..\", \"Please Select User\", \"warning\");\r\n }\r\n else if(this.AllocateCaseRemark==\"\"){\r\n Swal.fire(\"Opps..\", \"Please Enter Remark\", \"warning\");\r\n } \r\n else {\r\n const val: UpdateDataForGrid = {\r\n CaseID: this.caseID,\r\n Type: \"AllocateSuperAdmin\",\r\n watermark: \"\",\r\n casecreatedfrom: \"\",\r\n UserID: this.session.UserID,\r\n Remark: this.AllocateCaseRemark,\r\n Supervisor: this.AllocateSelectedUser,\r\n RoleID: roleID,\r\n }\r\n ApiService.UpdateGridDataAndGetUrl(val).then((responce: any) => {\r\n if (responce.status === 200) {\r\n Swal.fire(\"Thanks..\", \"Save Sucessfully\", \"success\");\r\n this.HideModell();\r\n this.AllocateCaseRemark=\"\";\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n }\r\n \r\n}\r\n","module.exports = \"
    \\r\\n
    \\r\\n

    Bank Templete Maping

    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n\\r\\n
    \"","import { Component, OnInit } from '@angular/core';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { ApiService } from '../service/service';\r\nimport { SessionService } from '../service/sessionGlobalVar';\r\nimport { IBankDetail, IBankTagData } from '../service/type'\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'app-regional-office',\r\n templateUrl: './regional-office.component.html',\r\n styleUrls: []\r\n})\r\nexport class RegionalOfficeComponent implements OnInit {\r\n selectedBankValue: any;\r\n BankDetail: any;\r\n regionalPageTag: any;\r\n LoadCaseType = [];\r\n LoadCaseType1 = [];\r\n selectedPositionVal = [];\r\n selectedStatusVal = [];\r\n bankTagData: IBankTagData;\r\n BankText:string;\r\n constructor(private router: Router, private service: ApiService, private ngxService: NgxUiLoaderService, private session: SessionService, private route: ActivatedRoute) { }\r\n\r\n ngOnInit() {\r\n const val: boolean = this.session.regionalOffice;\r\n if (val) {\r\n this.GetBankDetails();\r\n this.GetRegionalPageTag();\r\n for (let p = 0; p <= 100; p++) {\r\n let id = {\r\n id: p\r\n }\r\n this.LoadCaseType1.push(id);\r\n }\r\n this.LoadCaseType = this.LoadCaseType1;\r\n } else {\r\n localStorage.clear();\r\n Swal.fire('Oops...', 'something went wrong please login again!', 'error');\r\n this.router.navigate([\"login\"]);\r\n }\r\n }\r\n onBankChange(e: any) {\r\n const p = e.target.value;\r\n const newVal = this.getSelectedBankByName(e.target.value);\r\n const val = newVal.AttributeID;\r\n this.selectedBankValue = val;\r\n }\r\n changeStatus(val: any, e: any) {\r\n const p = val;\r\n const data = e;\r\n if (!e.currentTarget.checked) {\r\n // this.selectedStatusVal.push(val);\r\n for (let sval in this.selectedPositionVal) {\r\n if (+this.selectedPositionVal[sval].tagID === +val) {\r\n this.selectedPositionVal.splice(+sval, 1);\r\n const chkID = \"dropdown\" + val\r\n const chkVal = document.getElementById(chkID);\r\n chkVal.value = '0';\r\n }\r\n }\r\n }\r\n //else {\r\n // for (let sval in this.selectedStatusVal) {\r\n // if (this.selectedStatusVal[sval] === val) {\r\n // this.selectedStatusVal.splice(+sval, 1)\r\n // }\r\n // }\r\n // for (let sval in this.selectedPositionVal) {\r\n // if (+this.selectedPositionVal[sval].tagID === +val) {\r\n // this.selectedPositionVal.splice(+sval, 1);\r\n // const chkID=\"dropdown\"+val\r\n // const chkVal = document.getElementById(chkID);\r\n // chkVal.value = '0';\r\n // } \r\n // }\r\n // }\r\n\r\n }\r\n onChangePosition(tagID: any, e: any) {\r\n const val = e.target.value;\r\n let isInsert: boolean = true;\r\n const chkID = \"chkBox\" + tagID;\r\n const chkVal = document.getElementById(chkID);\r\n if (chkVal.checked) {\r\n for (let sval in this.selectedPositionVal) {\r\n if (+this.selectedPositionVal[sval].tagID === +tagID) {\r\n this.selectedPositionVal.splice(+sval, 1);\r\n } else {\r\n if (+val == +this.selectedPositionVal[sval].position) {\r\n isInsert = false\r\n }\r\n }\r\n }\r\n if (isInsert) {\r\n let value = {\r\n tagID: tagID,\r\n position: val\r\n }\r\n this.selectedPositionVal.push(value);\r\n } else {\r\n e.target.value = 0;\r\n Swal.fire('Oops...', 'this position allready selected please select another position', 'warning');\r\n }\r\n } else {\r\n e.target.value = 0;\r\n Swal.fire('Oops...', 'Please select CheckBox first', 'warning');\r\n }\r\n }\r\n SaveRegionalOfficeTag() {\r\n const val = window.confirm(\"Are You Sure You Want To Save This\");\r\n let tagID = \"\";\r\n let position = \"\";\r\n let text = \"\";\r\n let isSave: boolean = true;\r\n \r\n if (val) {\r\n for (let sval in this.selectedPositionVal) {\r\n if (+this.selectedPositionVal[sval].position == 0) {\r\n isSave = false;\r\n const chkID = \"dropdown\" + this.selectedPositionVal[sval].tagID;\r\n const chkVal = document.getElementById(chkID);\r\n chkVal.focus();\r\n chkVal.style.borderColor = \"red\";\r\n } else { \r\n text += (document.getElementById(\"tagName\" + this.selectedPositionVal[sval].tagID)).value + ',&#~';\r\n tagID += this.selectedPositionVal[sval].tagID + ',&#~';\r\n position += this.selectedPositionVal[sval].position + ',&#~';\r\n }\r\n }\r\n }\r\n \r\n if (isSave) {\r\n if(!this.selectedBankValue){\r\n Swal.fire('Oops...', 'Please select Bank', 'warning');\r\n }else{\r\n tagID =tagID.slice(0,-4);\r\n text=text.slice(0,-4);\r\n position=position.slice(0,-4);\r\n \r\n const data: IBankTagData = {\r\n BankID: this.selectedBankValue,\r\n OfficeID: localStorage.getItem(\"OfficeID\"),\r\n TagID: tagID,\r\n tagname: text,\r\n Tagseq: position\r\n }\r\n console.log(data);\r\n this.SaveBankTagData(data);\r\n }\r\n }else{\r\n Swal.fire('Oops...', 'Please select position', 'warning');\r\n }\r\n }\r\n\r\n SaveBankTagData(data: IBankTagData) {\r\n this.ngxService.start();\r\n ApiService.saveTagData(data).then((responce: any) => {\r\n if (responce.status === 200) {\r\n Swal.fire('Thanks', 'Tag Data Save Successfully', 'success');\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'something went wrong', 'error');\r\n });\r\n }\r\n\r\n\r\n GetBankDetails() {\r\n let p: IBankDetail = {\r\n userid: this.session.UserID,\r\n BankID: \"\",\r\n BranchID: \"\",\r\n RoleID: this.session.getRoleID,\r\n GetType: \"Bank\",\r\n }\r\n this.ngxService.start();\r\n ApiService.GetBankDetails(p).then((responce: any) => {\r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n this.BankDetail = responce.data.DATA;\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'something went wrong', 'error');\r\n });\r\n }\r\n\r\n GetRegionalPageTag() {\r\n this.ngxService.start();\r\n ApiService.GetRegionalPageTag().then((responce: any) => {\r\n this.ngxService.stop();\r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n this.regionalPageTag = responce.data;\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'something went wrong', 'error');\r\n });\r\n }\r\n getSelectedBankByName(selectedName: string) {\r\n return this.BankDetail.find(val => val.AttributeName === selectedName);\r\n }\r\n}\r\n","module.exports = \"\\r\\n\\r\\n\\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n
      \\r\\n
      \\r\\n
    • \\r\\n Allocation\\r\\n
    • \\r\\n
      \\r\\n
      \\r\\n
    • \\r\\n Review\\r\\n
    • \\r\\n
      \\r\\n
      \\r\\n
    • \\r\\n Report Details\\r\\n
    • \\r\\n
      \\r\\n
      \\r\\n
    • \\r\\n Published\\r\\n
    • \\r\\n
      \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    Case UID {{element.CaseUID}} Name {{element.Name}} Mobile {{element.Mobile}} Bank {{element.Bank}} Location {{element.Location}} Case Action {{element.CaseStatus}} Engineer Status {{element.Engstatus}} CR.Date {{element.CrDate}} Action \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    Case UID {{element.CaseUID}} Name {{element.Name}} Mobile {{element.Mobile}} Bank {{element.Bank}} Location {{element.Location}} Case Action {{element.CaseStatus}} Engineer {{element.Engineer}} Supervisor / Analysis {{element.supervisor}} Status Remark {{element.StatusRemark}} Eng Status {{element.Engstatus}} CR.Date {{element.CrDate}} Action \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    Case UID {{element.CaseUID}} Name {{element.Name}} Mobile {{element.Mobile}} Bank {{element.Bank}} Location {{element.Location}} Case Action {{element.CaseStatus}} Engineer {{element.Engineer}} Supervisor / Analysis {{element.supervisor}} CR.Date {{element.CrDate}} QC Date {{element.QCDATE}} Action \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    Case UID {{element.caseuid}} Name {{element.appname}} Bank {{element.bank}} Location {{element.location}} Case Type {{element.casetype}} Valuation Type {{element.valuationtype}} Engineer {{element.Allocated_To}} Reopen Remark {{element.Case_Reopen_Remarks}} CR.Date {{element.crdate}} Action \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n\\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n

    {{HeaderText}}

    \\r\\n \\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n

    Send Mail

    \\r\\n \\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n \\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n\\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n\\r\\n
    \\r\\n\\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n

    {{popUpHeading}}

    \\r\\n \\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n\"","import { Component, OnInit, Renderer2, ElementRef, Directive,ViewChild } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { ApiService } from '../service/service';\r\nimport { SessionService } from '../service/sessionGlobalVar';\r\nimport { IGridInput, IGetCityLocation, IUpdateStatus, getStage, IsendMail,IsgetMail, UpdateDataForGrid } from '../service/type'\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport {MatPaginator,MatTableDataSource,MatSort,Sort} from '@angular/material';\r\nimport Swal from 'sweetalert2';\r\nimport * as Excel from 'exceljs/dist/exceljs.min.js';\r\nimport * as FileSaver from 'file-saver';\r\nimport { DomSanitizer } from '@angular/platform-browser';\r\ndeclare const $: any;\r\n\r\n@Component({\r\n selector: 'app-report-analysis',\r\n templateUrl: './report-analysis.component.html',\r\n styles: []\r\n})\r\nexport class ReportAnalysisComponent implements OnInit {\r\n\r\n GridDetail: [];\r\n GridPublish: [];\r\n GridReview: [];\r\n NewMainGrid: any;\r\n isShowAllocation: boolean = true;\r\n isShowReview: boolean;\r\n isShowPublish: boolean;\r\n isnewReview: boolean = false;\r\n IsEditStatus: boolean = false;\r\n datatablerefersh:boolean=true;\r\n qcpasspermission:boolean=false;\r\n editcasepermission:boolean=false;\r\n viewAreadetailedit:boolean=true;\r\n valEngineer: any;\r\n status: any;\r\n selectedStatus: string = \"0\";\r\n selectedEngvalue: string = \"\";\r\n selectedSupvalue:string=\"\";\r\n HeaderText: string;\r\n IsDocument: boolean = false;\r\n Isasign:boolean=false;\r\n Component1Variable: string = \"Component1VariableSent\";\r\n logID: string;\r\n inputRemark: string = \"\";\r\n msgType: string;\r\n updatedFiles: any;\r\n typeOfStage: string;\r\n sanctionPlanDoc: any;\r\n caseID: string;\r\n IsSendMailModel: boolean = false;\r\n sendMailForm: string;\r\n SendBranchPerson: string;\r\n SendBranchPersonemail:string;\r\n MailSubject: string;\r\n MailBody: string;\r\n mailBankID:string;\r\n typed:string;\r\n valSup: any = \"\";\r\n getdocurl :any;\r\n quiid:string;\r\n ShowStatusTag: boolean = false;\r\n showAllocateStatusTag: boolean = false;\r\n AllocateCaseRemark: string;\r\n popUpHeading: string;\r\n getUserDetailsArr = [];\r\n displayedColumnsAllocation: string[] = ['CaseUID', 'name','mobileno', 'Bank', 'Location','CaseAction','EngineerStatus','CRDate','Action'];\r\n displayedColumnsReview: string[] = ['CaseUID', 'name','mobileno', 'Bank', 'Location','CaseAction','Engineer','supervisor','StatusRemark','engstatus','CRDate','Action'];\r\n displayedColumnsPublish: string[] = ['CaseUID', 'name','mobileno', 'Bank', 'Location','CaseAction','Engineer','supervisor','CRDate','qcdate','Action'];\r\n displayedColumnsAreaDetail: string[] = ['CaseUID', 'name', 'Bank', 'Location','CaseAction','ValuationType','Engineer','reopenremark','CRDate','Action'];\r\n\r\n dataSourceAllocation = new MatTableDataSource;\r\n dataSourceReview=new MatTableDataSource;\r\n dataSourcePublish=new MatTableDataSource;\r\n dataSourceAreaDetail=new MatTableDataSource;\r\n fileUrl: any;\r\n ddlrole: string;\r\n AllocateSelectedUser: string=\"Select\";\r\n IsEditadmin: boolean=false;\r\n applyFilter(filterValue: string) {\r\n this.dataSourceAllocation.filter = filterValue.trim().toLowerCase();\r\n this.dataSourceReview.filter = filterValue.trim().toLowerCase();\r\n this.dataSourcePublish.filter = filterValue.trim().toLowerCase();\r\n this.dataSourceAreaDetail.filter = filterValue.trim().toLowerCase();\r\n }\r\n \r\n @ViewChild(MatPaginator) paginator: MatPaginator;\r\n @ViewChild(MatSort) sort: MatSort;\r\n constructor(private router: Router, private service: ApiService, private session: SessionService, private ngxService: NgxUiLoaderService, private renderer: Renderer2, private el: ElementRef,private sanitizer: DomSanitizer) {\r\n \r\n }\r\n ngOnInit() {\r\n debugger;\r\n /* const p = this.el.nativeElement;\r\n this.renderer.addClass(this.el.nativeElement, 'abc'); */\r\n let val = localStorage.getItem(\"roleID\");\r\n const adoff=localStorage.getItem(\"AdroitOffice\");\r\n if (val) {\r\n if (+val == 7) {\r\n this.router.navigate([\"BankCaseDetails\"]);\r\n }\r\n else if (+val == 22) {\r\n this.router.navigate([\"BankCaseDetails\"]);\r\n }\r\n else if (+val == 3 || +val == 10|| +val == 24) { \r\n const IsBankLogin= localStorage.getItem(\"IsBankLogin\");\r\n if(IsBankLogin=='True')\r\n {\r\n this.isShowAllocation = false;\r\n this.isShowReview = false;\r\n this.isShowPublish = true;\r\n this.isnewReview = false;\r\n this.quiid=\"8\";\r\n this.getMainGridData(\"8\");\r\n }else{\r\n this.quiid=\"1\";\r\n this.getMainGridData(\"1\");\r\n } \r\n } else if (+val == 5 || +val==11) {\r\n this.router.navigate([\"SupHome\"]);\r\n }\r\n else if (+val == 13) {\r\n this.router.navigate([\"RegionalOffice\"]);\r\n }\r\n }\r\n }\r\n logDetail(e) {\r\n this.logID = e;\r\n if (this.logID) {\r\n this.router.navigate([\"/logDetails\", { id: this.logID }]);\r\n }\r\n }\r\n\r\n openInNewTab(href: any) {\r\n Object.assign(document.createElement('a'), {\r\n target: '_blank',\r\n href,\r\n }).click();\r\n }\r\n base64toPDF(data:string) {\r\n var bufferArray = this.base64ToArrayBuffer(data);\r\n var blobStore = new Blob([bufferArray], { type: \"application/pdf\" });\r\n /* if (window.navigator && window.navigator.msSaveOrOpenBlob) {\r\n window.navigator.msSaveOrOpenBlob(blobStore);\r\n \r\n return;\r\n } */\r\n var data = window.URL.createObjectURL(blobStore);\r\n // this.fileUrl = this.sanitizer.bypassSecurityTrustResourceUrl(window.URL.createObjectURL(blobStore));\r\n window.open(data);\r\n}\r\n\r\n base64ToArrayBuffer(data:any) {\r\n var bString = window.atob(data);\r\n var bLength = bString.length;\r\n var bytes = new Uint8Array(bLength);\r\n for (var i = 0; i < bLength; i++) {\r\n var ascii = bString.charCodeAt(i);\r\n bytes[i] = ascii;\r\n }\r\n return bytes;\r\n};\r\npublishView(e: any){\r\n let data = e;\r\n let val = {\r\n CaseID:data\r\n }\r\n ApiService.ViewReport(val).then((responce: any) => {\r\n if (responce.status === 200) {\r\n debugger;\r\n if(responce.data.status==\"202\"){\r\n this.openInNewTab(responce.data.data1);\r\n }\r\n else {\r\n this.base64toPDF(responce.data.Data);\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n}\r\n \r\n encrypt(key) {\r\n var result = \"\";\r\n const value = \"b89d20fcabec4256b80c68a633f1d9e1\";\r\n for (let i = 0; i < value.length; ++i) {\r\n result += String.fromCharCode(key[i % key.length] ^ value.charCodeAt(i));\r\n }\r\n return result;\r\n }\r\n PublishReopen(e) {\r\n this.HeaderText = \"Update Action\";\r\n this.logID = e;\r\n if (this.logID) {\r\n this.getStage();\r\n this.IsEditStatus = true;\r\n this.IsDocument = false;\r\n this.msgType = \"Case status changed from Publish\";\r\n }\r\n }\r\n HideModelsendMail(){\r\n this.IsSendMailModel = false;\r\n }\r\n sendReminderUpdate(e) {\r\n \r\n const val: IsendMail = {\r\n caseId : this.caseID,\r\n EmailTo: this.sendMailForm,\r\n Sublect: this.MailSubject,\r\n ApplicantName: this.SendBranchPerson,\r\n Body: this.MailBody,\r\n LoginID: this.session.UserID,\r\n BankID: this.mailBankID,\r\n type:\"update\"\r\n }\r\n this.ngxService.start();\r\n \r\n ApiService.MailReminderUpdate(val).then((responce: any)=>{\r\n \r\n if (responce.status === 200) {\r\n Swal.fire('Thanks', responce.data.EmailTo, 'success');\r\n this.getMainGridData(this.quiid);\r\n this.IsSendMailModel = false;\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n \r\n }\r\n\r\n sendReminder(e: any, fee: any) { \r\n let val1 = window.confirm(\"Do you want to save data?\" + fee);\r\n if (val1 == false) {\r\n console.log(\"cancel\");\r\n } else {\r\n this.IsSendMailModel = true;\r\n const val: IsgetMail = {\r\n caseid: e,\r\n type: \"get\"\r\n }\r\n this.caseID = e;\r\n ApiService.GetMailReminderValue(val).then((responce: any) => {\r\n \r\n if (responce.status === 200) {\r\n let val = responce.data;\r\n let sender = localStorage.getItem(\"Senderemail\");\r\n this.sendMailForm = val.EmailTo;\r\n this.SendBranchPerson = val.ApplicantName;\r\n this.SendBranchPersonemail = sender;\r\n this.MailSubject = val.Sublect;\r\n this.MailBody = val.Body;\r\n this.mailBankID = val.BankID\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n }\r\n\r\n\r\n document(e) {\r\n this.logID = e.currentTarget.parentElement.firstElementChild.value;\r\n alert(\"Documnt\");\r\n }\r\n \r\n editCase(e) {\r\n this.logID = e;\r\n const val = window.btoa(this.logID);\r\n if (this.logID) {\r\n this.router.navigate([\"/Casecreation\", { id: val }]);\r\n }\r\n }\r\n HideModel() {\r\n this.IsEditStatus = false;\r\n }\r\n\r\n AreaDetailsCase(e) { \r\n this.logID = e;\r\n const val = window.btoa(this.logID);\r\n if (this.logID) {\r\n this.router.navigate([\"/AreaDetails\", { id: val }]);\r\n }\r\n }\r\n\r\n editStatusAllocation(e) {\r\n this.HeaderText = \"Update Action\";\r\n this.logID = e;\r\n if (this.logID) {\r\n this.getStage();\r\n this.IsEditStatus = true;\r\n this.IsDocument = false;\r\n this.msgType = \"Case status changed from Allocation\";\r\n }\r\n }\r\n editStatusReview(e) {\r\n this.HeaderText = \"Update Action\";\r\n this.logID = e;\r\n if (this.logID) {\r\n this.getStage();\r\n this.IsEditStatus = true;\r\n this.IsDocument = false;\r\n this.msgType = \"Case status changed from Review\";\r\n }\r\n }\r\nonchangestatussup(e: any){\r\n debugger;\r\n // if(this.session.getAdroitOffice==\"1\" || this.session.getAdroitOffice==\"39\"){\r\n if(this.session.getAdroitOffice!=\"0\"){\r\n this.ddlrole=\"ReportAnalysis\";\r\n }else{\r\n this.ddlrole=\"Sup\";\r\n }\r\n if (this.selectedStatus==\"40\"){\r\n const val: IGetCityLocation = {\r\n StateID: \"\",\r\n CityID: \"\",\r\n LocID: \"\",\r\n GetType: \"Engineer\",\r\n }\r\n this.getCityLocation(val);\r\n}\r\nif (this.selectedStatus==\"48\"){\r\n const val: IGetCityLocation = {\r\n StateID: localStorage.getItem('userID'),\r\n CityID: \"\",\r\n LocID: \"\",\r\n GetType: \"Supp\",\r\n }\r\n this.getCityLocation(val);\r\n}\r\nelse\r\n{\r\n const val: IGetCityLocation = {\r\n StateID: \"\",\r\n CityID: \"\",\r\n LocID: \"\",\r\n GetType: this.ddlrole,\r\n }\r\n this.getCityLocation(val);\r\n}\r\n\r\n}\r\n updateStatus() {\r\n \r\n if (this.logID) {\r\n if (this.selectedStatus == \"0\" || this.selectedStatus == \"\") {\r\n Swal.fire('Oops...', 'Please Select Action Type!', 'warning');\r\n } \r\n else if (this.selectedEngvalue == \"\" && (this.selectedStatus==\"40\" || this.selectedStatus==\"48\")) {\r\n Swal.fire('Oops...', 'Please Select user.!', 'warning');\r\n } else {\r\n const val: IUpdateStatus = {\r\n Case_id: this.logID,\r\n CaseStatus: this.selectedStatus,\r\n statusRemark: this.inputRemark,\r\n Assignto: this.selectedEngvalue,\r\n Message: this.msgType,\r\n LoginID: this.session.UserID\r\n }\r\n this.ngxService.start();\r\n \r\n ApiService.UpdateStatus(val).then((responce: any) => {\r\n \r\n if (responce.status === 200) {\r\n this.IsEditStatus = false;\r\n this.selectedStatus = \"0\";\r\n this.selectedEngvalue = \"\";\r\n this.inputRemark = \"\";\r\n Swal.fire('Success', 'Status Updated Sucessfully', 'success');\r\n this.getMainGridData(this.quiid);\r\n \r\n \r\n if (responce.data) {\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong in status Update!', 'error');\r\n });\r\n }\r\n }\r\n }\r\n handleFileSelect(evt) {\r\n this.updatedFiles = evt.target.files;\r\n };\r\n handleSanctionPlanDoc(evt) {\r\n this.sanctionPlanDoc = evt.target.files;\r\n }\r\n updateDocument() {\r\n \r\n if (this.logID) {\r\n if (this.sanctionPlanDoc || this.updatedFiles) {\r\n \r\n let formData = new FormData();\r\n if (this.updatedFiles) {\r\n for (let val of this.updatedFiles) {\r\n formData.append(\"CaseID\", this.logID);\r\n formData.append(\"imgname\", val.name);\r\n formData.append(\"files\", val);\r\n }\r\n }\r\n if (this.sanctionPlanDoc) {\r\n formData.append(\"CaseID\", this.logID);\r\n formData.append(\"imgname\", this.sanctionPlanDoc[0].name);\r\n formData.append(\"files\", this.sanctionPlanDoc[0]);\r\n }\r\n \r\n this.ngxService.start();\r\n ApiService.UpdateDocument(formData).then((responce: any) => {\r\n \r\n \r\n if (responce.status === 200) {\r\n this.IsEditStatus = false;\r\n this.sanctionPlanDoc = undefined;\r\n this.updatedFiles = undefined;\r\n Swal.fire('Success...', 'Upload Document Sucessfully!', 'success');\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong in document update!', 'error');\r\n });\r\n } else {\r\n Swal.fire('Oops...', 'Please select atleast one document!', 'warning');\r\n }\r\n }\r\n }\r\nDeleteDoc(e){\r\n \r\n this.ngxService.start();\r\n let val = {\r\n Case_id: this.logID,\r\n Status: \"\",\r\n FilePath: e,\r\n Type: \"doc\",\r\n Message: \"\",\r\n LoginID: this.session.UserID\r\n }\r\n \r\n ApiService.DeleteDocument(val).then((responce: any) => {\r\n if (responce.status == 200) { \r\n this.IsEditStatus = false;\r\n Swal.fire('Success...', 'Delete Document Sucessfully!', 'success');\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n}\r\n\r\n addDoc(e) {\r\n \r\n this.logID = e;\r\n this.HeaderText = \"Upload Document\";\r\n if (this.logID) {\r\n this.IsEditStatus = true;\r\n this.IsDocument = true;\r\n this.ngxService.start();\r\n ApiService.SupSidebar(this.logID).then((responce: any) => {\r\n \r\n if (responce.status == 200) {\r\n if (responce.data) { \r\n this.getdocurl=responce.data.CaseDoc;\r\n for (const Dvalue in responce.data.CaseDoc) {\r\n \r\n let docValss = {\r\n url: this.getdocurl[Dvalue].url,\r\n name: this.getdocurl[Dvalue].name\r\n }\r\n this.getdocurl[Dvalue] = docValss;\r\n }\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n }\r\n \r\n\r\n onSupChange(e) {\r\n const Val = this.getSupValue(e.target.value);\r\n this.selectedSupvalue = Val.AttributeID;\r\n }\r\n getSupValue(selectedName: string) {\r\n return this.valSup.find(val => val.AttributeName === selectedName);\r\n }\r\n onEngChange(e) {\r\n const Val = this.getEngValue(e.target.value);\r\n this.selectedEngvalue = Val.AttributeID;\r\n }\r\n getEngValue(selectedName: string) {\r\n return this.valEngineer.find(val => val.AttributeName === selectedName);\r\n }\r\n getCityLocation(val: IGetCityLocation) {\r\n \r\n this.ngxService.start();\r\n ApiService.GetCityLocation(val).then((responce: any) => {\r\n \r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n this.valEngineer = responce.data.DATA;\r\n \r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n getStatus(val: string) {\r\n this.ngxService.start();\r\n ApiService.GetMaster(val).then((responce: any) => {\r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n this.status = responce.data.DATA;\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n allocation(e) {\r\n \r\n this.quiid=\"1\";\r\n const review = document.getElementById(\"review-tab\");\r\n const publish = document.getElementById(\"publish-tab\");\r\n const allocation = document.getElementById(\"home-tab\");\r\n const Newreview = document.getElementById(\"Newreview-tab\");\r\n this.typeOfStage = \"allocation\";\r\n publish.classList.remove(\"active\");\r\n allocation.classList.add(\"active\");\r\n review.classList.remove(\"active\");\r\n Newreview.classList.remove(\"active\");\r\n this.isShowAllocation = true;\r\n this.isShowReview = false;\r\n this.isShowPublish = false;\r\n this.isnewReview = false;\r\n this.getMainGridData(\"1\");\r\n /* if (this.GridDetail) {\r\n if(this.datatablerefersh==false){\r\n this.getMainGridData(\"1\");\r\n setTimeout(function () {\r\n $(function () {\r\n $(\"#example1\").DataTable({\r\n destroy: true,\r\n searching: true,\r\n \"order\": [[ 0, \"desc\" ]],\r\n \"lengthMenu\": [[50,100, -1], [50,100, \"All\"]] \r\n });\r\n });\r\n }, 1000);\r\n this.datatablerefersh=false;\r\n }\r\n } */\r\n return false;\r\n }\r\n\r\n review(e) {\r\n \r\n this.quiid=\"2\";\r\n const review = document.getElementById(\"review-tab\");\r\n const publish = document.getElementById(\"publish-tab\");\r\n const allocation = document.getElementById(\"home-tab\");\r\n const Newreview = document.getElementById(\"Newreview-tab\");\r\n this.typeOfStage = \"review\";\r\n publish.classList.remove(\"active\");\r\n allocation.classList.remove(\"active\");\r\n Newreview.classList.remove(\"active\");\r\n review.classList.add(\"active\");\r\n this.isShowAllocation = false;\r\n this.isShowReview = true;\r\n this.isShowPublish = false;\r\n this.isnewReview = false;\r\n this.getMainGridData(\"2\");\r\n /* if (this.GridReview) {\r\n if(this.datatablerefersh==false){\r\n this.getMainGridData(\"2\");\r\n setTimeout(function () {\r\n $(function () {\r\n $(\"#example2\").DataTable({\r\n destroy: true,\r\n \"order\": [[ 0, \"desc\" ]],\r\n \"lengthMenu\": [[50,100, -1], [50,100, \"All\"]] \r\n });\r\n });\r\n }, 1000);\r\n this.datatablerefersh=false;\r\n }\r\n }\r\n else{\r\n this.datatablerefersh=true;\r\n this.getMainGridData(\"2\");\r\n } */\r\n return false;\r\n }\r\n NewgetMainGridData() {\r\n \r\n let val = {\r\n LoginID: this.session.UserID\r\n }\r\n this.ngxService.start();\r\n ApiService.GetSuperGridData(val).then((responce: any) => {\r\n if (responce.status == 200) {\r\n if (responce.data) {\r\n this.NewMainGrid = responce.data;\r\n this.dataSourceAreaDetail=new MatTableDataSource(responce.data);\r\n this.dataSourceAreaDetail.paginator = this.paginator; \r\n this.dataSourceAreaDetail.sort = this.sort; \r\n \r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n ViewCaseReportAnalysis() {\r\n \r\n let val = {\r\n LoginID: this.session.UserID\r\n }\r\n this.ngxService.start();\r\n ApiService.ViewCaseReportAnalysis(val).then((responce: any) => {\r\n if (responce.status == 200) {\r\n if (responce.data) {\r\n this.NewMainGrid = responce.data;\r\n this.dataSourceAreaDetail=new MatTableDataSource(responce.data);\r\n this.dataSourceAreaDetail.paginator = this.paginator; \r\n this.dataSourceAreaDetail.sort = this.sort; \r\n \r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n NewGrid(e) {\r\n\r\n const review = document.getElementById(\"review-tab\");\r\n const publish = document.getElementById(\"publish-tab\");\r\n const allocation = document.getElementById(\"home-tab\");\r\n const Newreview = document.getElementById(\"Newreview-tab\");\r\n this.typeOfStage = \"Newreview\";\r\n\r\n publish.classList.remove(\"active\");\r\n allocation.classList.remove(\"active\");\r\n review.classList.remove(\"active\");\r\n Newreview.classList.add(\"active\");\r\n\r\n this.isShowAllocation = false;\r\n this.isShowReview = false;\r\n this.isShowPublish = false;\r\n this.isnewReview = true;\r\n debugger;\r\n if(this.session.getAdroitOffice!=\"0\" ){\r\n this.qcpasspermission=this.session.getqc_permission;\r\n this.editcasepermission=this.session.getedit_report;\r\n this.viewAreadetailedit=false;\r\n this.ViewCaseReportAnalysis()\r\n \r\n }\r\n else{\r\n this.viewAreadetailedit=true;\r\n this.NewgetMainGridData();\r\n }\r\n \r\n return false;\r\n \r\n }\r\n publish(e) {\r\n this.quiid=\"3\";\r\n const review = document.getElementById(\"review-tab\");\r\n const publish = document.getElementById(\"publish-tab\");\r\n const allocation = document.getElementById(\"home-tab\");\r\n const Newreview = document.getElementById(\"Newreview-tab\");\r\n this.typeOfStage = \"publish\";\r\n publish.classList.add(\"active\");\r\n allocation.classList.remove(\"active\");\r\n review.classList.remove(\"active\");\r\n Newreview.classList.remove(\"active\");\r\n\r\n this.isShowAllocation = false;\r\n this.isShowReview = false;\r\n this.isShowPublish = true;\r\n this.isnewReview = false;\r\n this.getMainGridData(\"3\");\r\n /* if (this.GridPublish) {\r\n this.getMainGridData(\"3\");\r\n if(this.datatablerefersh==false){\r\n this.getMainGridData(\"3\");\r\n setTimeout(function () {\r\n $(function () {\r\n $(\"#example3\").DataTable({\r\n destroy: true,\r\n \"order\": [[ 0, \"desc\" ]],\r\n \"lengthMenu\": [[50,100, -1], [50,100, \"All\"]] \r\n });\r\n });\r\n }, 1000);\r\n this.datatablerefersh=false;\r\n }\r\n }\r\n else{\r\n this.datatablerefersh=true;\r\n this.getMainGridData(\"3\");\r\n } */\r\n return false;\r\n }\r\n addCase() {\r\n this.router.navigate([\"Casecreation\"]);\r\n }\r\n getMainGridData(qid: string) {\r\n \r\n let val: IGridInput = {\r\n LoginID: this.session.UserID,\r\n RoleID: this.session.getRoleID,\r\n UserBankBranch: this.session.BankBranchID,\r\n SelectedBankID: \"\",\r\n SelectedBranchID: \"\",\r\n CaseStage: \"A\",\r\n ValuationType: \"1\",\r\n qid: qid\r\n }\r\n this.ngxService.start();\r\n ApiService.GetGridData(val).then((responce: any) => {\r\n \r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n if (qid === \"1\") {\r\n this.GridDetail = responce.data; \r\n this.dataSourceAllocation=new MatTableDataSource(responce.data);\r\n this.dataSourceAllocation.paginator = this.paginator; \r\n this.dataSourceAllocation.sort = this.sort; \r\n }\r\n else if (qid === \"2\") {\r\n this.GridReview = responce.data;\r\n this.dataSourceReview=new MatTableDataSource(responce.data);\r\n this.dataSourceReview.paginator = this.paginator; \r\n this.dataSourceReview.sort = this.sort; \r\n }\r\n else if (qid === \"3\" || qid === \"8\") {\r\n this.GridPublish = responce.data;\r\n this.dataSourcePublish=new MatTableDataSource(responce.data);\r\n this.dataSourcePublish.paginator = this.paginator;\r\n this.dataSourcePublish.sort = this.sort;\r\n }\r\n /* if(this.datatablerefersh==true){\r\n setTimeout(function () {\r\n $(function () {\r\n $(\"#example\" + qid + \"\").DataTable({\r\n \"order\": [[ 0, \"desc\" ]],\r\n \"lengthMenu\": [[50,100, -1], [50,100, \"All\"]] \r\n });\r\n });\r\n }, 1000);\r\n this.datatablerefersh=false;\r\n } */\r\n \r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n // Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n getStage() {\r\n const valuationType = \"1\";\r\n let typeval: string = \"\";\r\n if (this.typeOfStage == \"publish\") {\r\n typeval = \"Publish\"\r\n } else if (this.typeOfStage == \"review\") {\r\n typeval = \"Review\"\r\n } else {\r\n typeval = \"Allocation\"\r\n }\r\n let val: getStage = {\r\n Type: typeval,\r\n valType: valuationType\r\n }\r\n this.ngxService.start();\r\n ApiService.GetStages(val).then((response: any) => {\r\n this.status = response.data.DATA;\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something Went Wrong In Action Please Refresh Page!', 'error')\r\n })\r\n }\r\n ExportTOExcel(caseid) {\r\n \r\n let data = [];\r\n \r\nlet header=[];\r\nlet val={\r\n caseid:caseid\r\n}\r\nlet workbook = new Excel.Workbook();\r\n this.ngxService.start();\r\n ApiService.DownloadCSVFileKotak(val).then((responce: any) => { \r\n if(responce.data){ \r\n let blob = new Blob([responce.data], { type: 'application/text' });\r\n FileSaver.saveAs(blob, caseid+'.csv');\r\n \r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n \r\n });\r\n\r\n\r\n\r\n\r\n\r\n \r\n }\r\n\r\n Edit(valuationID: string, e: any) {\r\n const val = e/* .currentTarget.parentElement.firstElementChild.value */;\r\n if (val && val != \"\") {\r\n const data = window.btoa(val);\r\n this.router.navigate([\"/UpdateAddress\", { id: data, valuation: valuationID }]);\r\n }\r\n }\r\n \r\n View(e: any) {\r\n let data = e/* .currentTarget.parentElement.firstElementChild.value */;\r\n const LoginID = localStorage.getItem('userID');\r\n const val: UpdateDataForGrid = {\r\n CaseID: data,\r\n Type: \"View\",\r\n watermark: \"\",\r\n casecreatedfrom: \"\",\r\n UserID: LoginID,\r\n Remark: \"\",\r\n Supervisor: \"\",\r\n RoleID: \"\",\r\n }\r\n this.ngxService.start();\r\n ApiService.UpdateGridDataAndGetUrl(val).then((responce: any) => {\r\n if (responce.status === 200) {\r\n this.openInNewTab(responce.data.URL);\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n // this.ngxService.stop();\r\n }\r\n QcPass(e: any,fee: any) {\r\n const val = window.confirm(\"Do you want to save data?\");\r\n if (val) {\r\n const data = e/* .currentTarget.parentElement.firstElementChild.value */;\r\n const waterMark = e/* .currentTarget.firstElementChild.value */;\r\n const LoginID = localStorage.getItem('userID');\r\n const val: UpdateDataForGrid = {\r\n CaseID: data,\r\n Type: \"QCPASS\",\r\n watermark: waterMark,\r\n casecreatedfrom: \"\",\r\n UserID: LoginID,\r\n Remark: \"\",\r\n Supervisor: \"\",\r\n RoleID: \"\"\r\n }\r\n this.ngxService.start();\r\n ApiService.UpdateGridDataAndGetUrl(val).then((responce: any) => {\r\n if (responce.status === 200) {\r\n debugger;\r\n Swal.fire('Thanks', 'QC Pass Sucessfully', 'success');\r\n this.openInNewTab(responce.data.URL);\r\n \r\n // this.getMainGridData();\r\n /* this.ViewReportwithqc(data); */\r\n window.location.reload();\r\n \r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n \r\n }\r\n }\r\n allocateAdminSup(e: any) {\r\n this.caseID = e/* .currentTarget.parentElement.firstElementChild.value */;\r\n this.popUpHeading = \"Allocate Case \"\r\n this.IsEditadmin = true;\r\n this.ShowStatusTag = false;\r\n this.showAllocateStatusTag = true;\r\n this.getUserDetails();\r\n }\r\n getUserDetails() {\r\n this.ngxService.start();\r\n const LoginID = localStorage.getItem('userID');\r\n let val: IGetCityLocation = {\r\n StateID: LoginID,\r\n CityID: \"\",\r\n LocID: \"\",\r\n GetType: \"Supp\",\r\n }\r\n ApiService.GetCityLocation(val).then((responce: any) => {\r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n this.getUserDetailsArr = responce.data.DATA;\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n HideModell() {\r\n this.IsEditadmin = false;\r\n }\r\n updateAllocateStatus() {\r\n let roleID = localStorage.getItem(\"roleID\");\r\n if (this.AllocateSelectedUser == \"Select\") {\r\n Swal.fire(\"Opps..\", \"Please Select User\", \"warning\");\r\n }\r\n else if(this.AllocateCaseRemark==\"\"){\r\n Swal.fire(\"Opps..\", \"Please Enter Remark\", \"warning\");\r\n } \r\n else {\r\n const val: UpdateDataForGrid = {\r\n CaseID: this.caseID,\r\n Type: \"AllocateSuperAdmin\",\r\n watermark: \"\",\r\n casecreatedfrom: \"\",\r\n UserID: this.session.UserID,\r\n Remark: this.AllocateCaseRemark,\r\n Supervisor: this.AllocateSelectedUser,\r\n RoleID: roleID,\r\n }\r\n ApiService.UpdateGridDataAndGetUrl(val).then((responce: any) => {\r\n if (responce.status === 200) {\r\n Swal.fire(\"Thanks..\", \"Save Sucessfully\", \"success\");\r\n this.HideModell();\r\n this.AllocateCaseRemark=\"\";\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n }\r\n \r\n}\r\n","module.exports = \"
    \\n \\n
    \\n\\n

    Case Creation

    \\n \\n
    \\n\\n\\n
    \\n
    \\n
    Bank Details
    \\n
    \\n \\n
    \\n \\n \\n \\n \\n
    \\n
    \\n \\n
    \\n \\n
    \\n \\n \\n \\n \\n {{SBfC_Zone_name}}\\n
    \\n
    \\n
    \\n \\n
    \\n \\n \\n \\n \\n {{SBfC_branch_name}}\\n
    \\n \\n
    \\n
    \\n \\n
    \\n \\n \\n \\n \\n {{SBfC_Vertical_name}}\\n
    \\n \\n
    \\n
    \\n \\n
    \\n \\n \\n \\n \\n {{SBfC_BR_PR_NM}}\\n
    \\n \\n \\n
    \\n \\n {{SBfC_Case_type}}\\n
    \\n
    \\n
    \\n

    \\n
    \\n
    Customer Details
    \\n
    \\n \\n \\n
    \\n \\n
    \\n
    \\n \\n Special Characters Like % / \\\" - etc Not Allowed in Applicant Name\\n
    \\n
    \\n \\n
    \\n \\n
    \\n \\n {{SBfC_state}}\\n
    \\n \\n \\n
    \\n \\n {{SBFC_city}}\\n
    \\n
    \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n \\n
    \\n

    {{SBFC_add1}}

    \\n

    {{SBFC_add2}}

    \\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n {{SBfC_location}}\\n
    \\n \\n \\n
    \\n \\n
    \\n
    \\n
    \\n \\n
    \\n \\n
    \\n \\n \\n \\n
    \\n \\n
    \\n
    \\n\\n
    \\n \\n \\n
    \\n \\n
    \\n
    \\n \\n
    \\n
    \\n \\n \\n \\n\\n
    \\n \\n
    \\n \\n
    \\n
    \\n\\n
    \\n \\n
    \\n \\n
    \\n
    \\n\\n \\n\\n
    \\n \\n
    \\n \\n
    \\n
    \\n\\n
    \\n \\n
    \\n \\n
    \\n
    \\n\\n
    \\n \\n
    \\n \\n
    \\n\\n \\n \\n
    \\n \\n
    \\n
    \\n \\n \\n

    \\n
    \\n
    Fees Details
    \\n
    \\n \\n\\n \\n \\n
    \\n \\n
    \\n
    \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n\\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n\\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n \\n
    \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n \\n
    \\n \\n \\n \\n
    \\n
    \\n \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n\\n
    \\n

    \\n
    \\n
    Other Details
    \\n
    \\n \\n
    \\n \\n
    \\n \\n \\n
    \\n \\n
    \\n
    \\n
    \\n \\n
    \\n \\n Link Shared With Customer\\n
    \\n \\n \\n
    \\n \\n
    \\n
    \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n
    \\n \\n
    \\n\\n
    \\n \\n \\n
    \\n \\n
    \\n\\n
    \\n \\n
    \\n \\n \\n
    \\n\\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n
    \\n
    \\n \\n
    \\n
    \\n \\n
    \\n
    \\n\\n
    \\n \\n
    \\n \\n \\n \\n \\n
    \\n \\n
    \\n \\n Click here for manual conveyance\\n
    \\n \\n
    \\n
    \\n \\n \\n \\n \\n
    \\n
    \\n \\n
    \\n \\n \\n \\n \\n
    \\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n \\n
    \\n \\n \\n
    \\n
    \\n \\n
    \\n
    \\n \\n
    \\n \\n
    \\n \\n \\n
    \\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n *Required fields\\n
    \\n
    \\n \\n
    \\n
    \\n\\n
    \\n
    \\n
    \\n\\n
    \\n

    {{HeaderText}}

    \\n \\n
    \\n\\n
    \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    Case Reference No.Applicant NameBank NameCase StatusCase TypeCase_Created_OnCase Status RemarksContact PersonMobile1Mobile2EngineerLocationProperty AddressSup.Created By
    {{grid.CaseUID}}{{grid.ApplicantName}}{{grid.bankbranchname}}{{grid.CaseStatus}}{{grid.CaseType}}{{grid.Case_Created_On}}{{grid.Case_Status_Remarks}}{{grid.ContactPerson}}{{grid.ContactPersonMob1}}{{grid.ContactPersonMob2}}{{grid.Eng}}{{grid.Location}}{{grid.PropertyAddress}}{{grid.Sup}}{{grid.cr_by}}
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\\n
    \\n
    \\n
    \\n\\n
    \\n \\n

    \\n
    \\n\\n
    \\n

    Enter Amount : \\n

    \\n

    Convence Remark : \\n

    \\n

    \\n \\n

    \\n

    \\n

    \\n
    \\n \\n
    \\n
    \\n
    \\n
    \"","import { Component, OnInit } from \"@angular/core\";\nimport { Router, ActivatedRoute } from \"@angular/router\";\nimport { ApiService } from \"../service/service\";\nimport { SessionService } from \"../service/sessionGlobalVar\";\nimport {\n IcaseFee,\n IBankDetail,\n IGetCityLocation,\n ICaseCreate,\n getStage,\n searchOldCases,\n IUsage,\n ICaseCreateSBFC,\n} from \"../service/type\";\nimport { NgxUiLoaderService } from \"ngx-ui-loader\";\nimport Swal from \"sweetalert2\";\nimport { DISABLED } from \"@angular/forms/src/model\";\n\ndeclare var $: any;\n@Component({\n selector: 'app-sbfc-case-creation',\n templateUrl: './sbfc-case-creation.component.html'\n})\nexport class SbfcCaseCreationComponent implements OnInit {\n BankDetail: any;\n selectedBankValue: any = \"\";\n selectedZoneValue: any = \"\";\n selectedBranchValue: any = \"\";\n selectedVerticalValue: any = \"\";\n selectedBranchPersonValue: any = \"\";\n ZoneDetail: any = \"\";\n BranchDetail: any = \"\";\n BranchPersonDetail: any = \"\";\n VerticalDetail: any = \"\";\n state: any = \"\";\n EngConv: any = \"\";\n selectedState: string = \"Select\";\n selectedEngConv: string = \"Select\";\n selectedCity: string = \"Select\";\n selectedLocality: string = \"Select\";\n selectedSubLocation: string = \"Select\";\n selectedApprover: string = \"Select\";\n caseVertical: string = \"\";\n applicantFirst: string = \"\";\n propertyFirst: string = \"Plot No.\";\n selectedValuationValue: string = \"1\";\n casetype: string = \"Select\";\n feestype: string = \"Select\";\n selectedStatus: string = \"Select\";\n CityVal: any = \"\";\n LocationVal: any = \"\";\n SubLocationVal: any = \"\";\n PinCode: any = \"\";\n status: any = \"\";\n DDLUsageData: any;\n valEngineer: any = \"\";\n valSup: any = \"\";\n valReportAnalysis: any = \"\";\n selectedEngvalue: string = \"\";\n selectedSupvalue: string = \"\";\n applicantName: string = \"\";\n district: string = \"\";\n dropdownList = [];\n dropdownList1 = [];\n selectedItems = [];\n newSelectedItems = [];\n dropdownSettings = {};\n propertyNo: string = \"\";\n BuildingName: string = \"\";\n Streat: string = \"\";\n landmark: string = \"\";\n ContactPersonName: string = \"\";\n MOb1: string = \"\";\n MOb2: string = \"\";\n LoadCaseType: any = \"\";\n LoadFeesType: any = \"\";\n LoadApprover: any = \"\";\n StatusRemark: string = \"\";\n FileNo: string = \"\";\n FileNoOrignal: any = \"\";\n PropertyArea: string = \"\";\n CaseRemark: string = \"\";\n CaseFee: string = \"0\";\n ExtraFee: string = \"0\";\n Conveyance: string = \"0\";\n TotalFee: string = \"0\";\n ApprovalRemarks: string = \"\";\n ConAmount: string = \"\";\n ConRemark: string = \"\";\n ApprovalPerson: string = \"\";\n ContactNo: string = \"\";\n IsFeeShow: boolean = false;\n ISExtrafeeReadonly: boolean = false;\n editCaseDetail: any = \"\";\n BankText: string = \"\";\n ZoneText: string = \"\";\n BranchText: string = \"\";\n BranchPersonText: string = \"\";\n VerticalText: string = \"\";\n Sector: string = \"\";\n AssignToText: string = \"\";\n supToText: string = \"\";\n Block: string = \"\";\n files;\n filestring;\n myfile;\n isEditCase: boolean = false;\n ISvaluation: boolean = true;\n IScasebranch: boolean = true;\n document: any;\n sectionPlaneDoc: any;\n ApprovelDoc: any;\n isdisable: boolean = false;\n isrodisable: boolean = false;\n IsBankCase: boolean = false;\n IsENGEXTCOn: boolean = false;\n IsZoneCase: boolean = false;\n IsBranchCase: boolean = false;\n IsPopUp: boolean = false;\n HeaderText: string;\n GridOldCases: any;\n selectedOldCase: boolean = false;\n oldCaseID: string = \"\";\n CaseID: string = \"\";\n propertyTypeNEw: string = \"Select\";\n DDlUsage: string = \"Select\";\n DDlPropertyType: string = \"Select\";\n DDLPropertyData: any;\n radioSelectedString: string;\n radioSelected: string = \"\";\n PaymentType: string;\n ExtraEngConvApproved: any;\n radioSel: any;\n IsExtraFeeShow: boolean = true;\n IsconvFeeShow: boolean = true;\n IstotalFeeShow: boolean = true;\n IsapprovalShow: boolean = true;\n IscontactnoShow: boolean = true;\n IsdocShow: boolean = true;\n IsFeecase: boolean = true;\n editabless: boolean = false;\n ddlrole: string;\n getApprovaldocurl: any;\n btnextconsave: string = \"Save\";\n DDladrofficedata: any = \"\";\n IsOfficeChange:string=\"N\";\n DDladroffice: any = \"\";\n DDlROadrofficedata: any = \"\";\n DDlROadroffice: any = \"\";\n SBfC_branch_name:any;\n SBfC_Zone_name:any;\n SBfC_Vertical_name:any;\n SBfC_BR_PR_NM:any;\n SBfC_state:any;\n SBFC_city:any;\nSBfC_location:any;\nSBfC_Case_type:any;\nSBFC_add1:any;\nSBFC_add2:any;\n constructor(\n private router: Router,\n private service: ApiService,\n private ngxService: NgxUiLoaderService,\n private session: SessionService,\n private route: ActivatedRoute\n ) {\n this.getState(\"State\");\n const val1: IGetCityLocation = {\n StateID: this.session.getAdroitOffice,\n CityID: \"\",\n LocID: \"\",\n GetType: \"ENGCONV\",\n };\n this.getEngConvence(val1);\n // this.getState(\"CaseType\");\n /* this.GetUsageDataNew(); */\n this.dropdownSettings = {\n singleSelection: false,\n idField: \"id\",\n textField: \"text\",\n unSelectAllText: \"UnSelect All\",\n itemsShowLimit: 3,\n allowSearchFilter: true,\n };\n\n const BranchID = localStorage.getItem(\"BankBranchID\");\n const bankID = localStorage.getItem(\"BankID\");\n let val = localStorage.getItem(\"roleID\");\n\n if (BranchID && (+val == 7 || +val == 10)) {\n this.selectedBankValue = bankID;\n this.selectedBranchValue = BranchID;\n this.IsBankCase = false;\n this.IsZoneCase = false;\n this.IsBranchCase = false;\n this.selectedValuationValue = \"1\";\n this.valuationChange();\n if (this.selectedBranchValue) {\n this.GetBranchPersonDetails(\n this.selectedBankValue,\n this.selectedBranchValue,\n false\n );\n }\n } else if (BranchID && +val == 22) {\n this.selectedBankValue = bankID;\n //this.selectedBranchValue = BranchID;\n this.selectedValuationValue = \"1\";\n this.valuationChange();\n this.IsBankCase = false;\n this.IsZoneCase = true;\n this.IsBranchCase = true;\n if (this.selectedBankValue) {\n this.GetBranchDetails(this.selectedBankValue, false);\n // this.GetBranchPersonDetails(this.selectedBankValue, this.selectedBranchValue, false);\n }\n } else {\n this.IsBankCase = true;\n this.IsZoneCase = true;\n this.IsBranchCase = true;\n this.GetBankDetails();\n }\n }\n ngOnInit() {\n if (!this.session.isLoggedIn) {\n this.router.navigate([\"Login\"]);\n }\n const val = this.session.getRoleID;\n if (val == \"3\" || val == \"10\" || val == \"7\" || val == \"22\" || val == \"24\") {\n this.route.params.subscribe((params) => {\n if (params.id) {\n this.isEditCase = true;\n const id = window.atob(params.id);\n this.CaseID = id;\n this.GetEditCaseDetail();\n }\n });\n } else {\n localStorage.clear();\n this.router.navigate([\"login\"]);\n }\n\n this.getState(\"Documents\");\n /* if(val == \"7\"){\n this.branchview();}*/\n // if(val==\"24\")\n // {\n const valroOffice: IGetCityLocation = {\n StateID: this.session.UserID,\n CityID: this.selectedCity,\n LocID: this.selectedLocality,\n GetType: \"ROOFFICE\",\n }\n this.getCityLocation(valroOffice);\n // }else{\n const valOffice: IGetCityLocation = {\n StateID: this.session.UserID,\n CityID: this.selectedCity,\n LocID: this.selectedLocality,\n GetType: \"AdroitOffice\",\n }\n this.getCityLocation(valOffice);\n // }\n \n const valEng: IGetCityLocation = {\n StateID: localStorage.getItem('AdroitBranch'),\n CityID: this.selectedCity,\n LocID: this.selectedLocality,\n GetType: \"OfficeEngineer\",\n }\n this.getCityLocation(valEng);\n }\n getFiles(event) {\n this.files = event.target.files;\n var reader = new FileReader();\n reader.onload = this._handleReaderLoaded.bind(this.files);\n reader.readAsBinaryString(this.files[0]);\n }\n branchview() {\n this.IScasebranch = false;\n }\n bindPreviousValue() {\n debugger;\n console.log(\"editCaseDetaillook\", this.editCaseDetail);\n if (!this.selectedOldCase) {\n this.GetBankDetailsEditCase(true);\n this.selectedBankValue = this.editCaseDetail.Bank_ID;\n\n this.GetZoneDetails(this.editCaseDetail.Bank_ID, true);\n this.selectedZoneValue = this.editCaseDetail.Zone_id;\n\n this.GetBranchDetails(this.editCaseDetail.Zone_id, true);\n this.selectedBranchValue = this.editCaseDetail.Branch_id;\n\n this.GetVerticalDetails(\n this.selectedBankValue,\n this.selectedBranchValue,\n true\n );\n this.selectedVerticalValue = this.editCaseDetail.Vertical_id;\n this.selectedEngConv = this.editCaseDetail.EngConv;\n this.selectedStatus = this.editCaseDetail.Case_Status;\n this.selectedValuationValue = this.editCaseDetail.Valuation_typeID;\n this.GetBranchPersonDetails(\n this.editCaseDetail.Vertical_id,\n this.editCaseDetail.Branch_id,\n true\n );\n this.selectedBranchPersonValue = this.editCaseDetail.Branch_person;\n this.getApprovaldocurl = this.editCaseDetail.ApprovalDocPath;\n this.GetProductDetails(this.selectedBankValue, true);\n this.GetFeesTypeDetails(this.selectedVerticalValue, true);\n } else {\n this.oldCaseID = this.editCaseDetail.CaseID;\n }\n this.IsFeeShow = true;\n this.isEditCase = true;\n this.selectedState = this.editCaseDetail.StateID;\n this.selectedEngConv = this.editCaseDetail.EngConv;\n this.district = this.editCaseDetail.District;\n\n this.applicantName = this.editCaseDetail.Applicant_nameN;\n\n this.applicantFirst = this.editCaseDetail.ApplicanttitleN;\n\n this.PinCode = this.editCaseDetail.pin_code;\n this.BuildingName = this.editCaseDetail.Building_No;\n this.Streat = this.editCaseDetail.Street_Sector;\n this.Sector = this.editCaseDetail.SectorN;\n this.ContactPersonName = this.editCaseDetail.Contact_persion_Name;\n this.MOb1 = this.editCaseDetail.Contact_Persion_Mob1;\n this.MOb2 = this.editCaseDetail.Contact_Persion_Mob2;\n this.casetype = this.editCaseDetail.Type_Of_Case;\n this.feestype = this.editCaseDetail.FeesType;\n this.landmark = this.editCaseDetail.Land_mark;\n this.FileNo = this.editCaseDetail.File_No;\n // this.FileNoOrignal= this.editCaseDetail.File_No;\n this.PropertyArea = this.editCaseDetail.Area;\n\n this.StatusRemark = this.editCaseDetail.Case_Status_Remarks;\n this.Conveyance = this.editCaseDetail.Conveyance;\n this.CaseFee = this.editCaseDetail.ActualFees;\n this.ExtraFee = this.editCaseDetail.ExtraFees;\n this.TotalFee = this.editCaseDetail.TotalFees;\n this.ApprovalRemarks = this.editCaseDetail.Approval_Remarks;\n this.ConAmount = this.editCaseDetail.ExtraEngConv;\n this.ConRemark = this.editCaseDetail.ExtraEngConvRemark;\n this.caseVertical = this.editCaseDetail.Case_vertical;\n if (\n this.editCaseDetail.ExtraEngConv != \"0\" &&\n this.editCaseDetail.ExtraEngConv != \"\"\n ) {\n this.IsENGEXTCOn = true;\n this.ConAmount = this.editCaseDetail.ExtraEngConv;\n this.ConRemark = this.editCaseDetail.ExtraEngConvRemark;\n this.ExtraEngConvApproved =\n \"Convence Approved by Branch : \" +\n this.editCaseDetail.ExtraEngConvApproved;\n if (this.editCaseDetail.ExtraEngConvApproved == \"Yes\") {\n this.ISExtrafeeReadonly = true;\n }\n this.btnextconsave = \"Close\";\n }\n debugger;\n this.GetApproverDetails(this.selectedBankValue, true);\n this.selectedApprover = this.editCaseDetail.ApprovalPersonName;\n this.ContactNo = this.editCaseDetail.ApprovalContact;\n this.CaseRemark = this.editCaseDetail.Case_Creation_remark;\n this.propertyNo = this.editCaseDetail.PropertyValueN;\n this.propertyFirst = this.editCaseDetail.Property_titleN;\n this.Block = this.editCaseDetail.Block;\n if (this.editCaseDetail.PaymentType == \"Billing\") {\n //this.Compositet=true;\n this.radioSelected = \"Billing\";\n this.radioSelectedString = JSON.stringify(this.radioSel);\n this.IsExtraFeeShow = true;\n this.IsconvFeeShow = true;\n this.IstotalFeeShow = true;\n this.IsapprovalShow = true;\n this.IscontactnoShow = true;\n this.IsdocShow = true;\n this.editabless = false;\n } else if (this.editCaseDetail.PaymentType == \"Cash\") {\n this.radioSelected = \"Cash\";\n this.radioSelectedString = JSON.stringify(this.radioSel);\n this.IsExtraFeeShow = false;\n this.IsconvFeeShow = false;\n this.IstotalFeeShow = false;\n this.IsapprovalShow = false;\n this.IscontactnoShow = false;\n this.IsdocShow = false;\n this.editabless = true;\n } else {\n this.radioSelected = \"Billing\";\n this.radioSelectedString = JSON.stringify(this.radioSel);\n }\n if (this.selectedState) {\n const val: IGetCityLocation = {\n StateID: this.selectedState,\n CityID: \"\",\n LocID: \"\",\n GetType: \"City\",\n };\n this.getCityLocation(val);\n this.selectedCity = this.editCaseDetail.cityID;\n if (this.selectedCity) {\n const val: IGetCityLocation = {\n StateID: this.selectedState,\n CityID: this.selectedCity,\n LocID: \"\",\n GetType: \"Location\",\n };\n this.getCityLocation(val);\n this.selectedLocality = this.editCaseDetail.LocationID;\n this.locationChangeFUnction();\n this.selectedSubLocation = this.editCaseDetail.SubLocalityId;\n this.selectedEngvalue = this.editCaseDetail.Allocated_To;\n try{\n debugger;\n if( this.editCaseDetail.OtherOfficeStatus==\"Y\")\n this.DDladroffice=this.editCaseDetail.OtherOfficeID;\n else\n {\n this.DDlROadroffice=this.editCaseDetail.adroitoffice;\n this.DDladroffice=this.editCaseDetail.adroitoffice;\n const valEng: IGetCityLocation = {\n StateID: this.DDlROadroffice,\n CityID: this.selectedCity,\n LocID: this.selectedLocality,\n GetType: \"OfficeEngineer\",\n }\n this.getCityLocation(valEng);\n const valSup: IGetCityLocation = {\n StateID: this.session.UserID,\n CityID: this.selectedCity,\n LocID: this.session.getRoleID,\n GetType: \"ReportAnalysis\",\n }; \n this.getCityLocation(valSup);\n }\n if (this.valEngineer) {\n const engVal = this.valEngineer.find(\n (val) => val.AttributeID === this.editCaseDetail.Allocated_To\n );\n this.AssignToText = engVal.AttributeName;\n }\n\n this.selectedSupvalue = this.editCaseDetail.Supervisor;\n if (this.valSup) {\n const supVal = this.valSup.find(\n (val) => val.AttributeID === this.selectedSupvalue\n );\n this.supToText = supVal.AttributeName;\n }\n \n }\n catch(e){}\n }\n debugger;\n this.valuationChange();\n this.bindDropdownOnEdit();\n }\n }\n valuationChange() {\n const val: string = this.selectedValuationValue;\n if (val == \"2\") {\n this.ISvaluation = false;\n } else {\n this.ISvaluation = true;\n }\n this.GetStageDetail();\n }\n feeChange() {\n this.TotalFee = (\n +this.Conveyance +\n +this.CaseFee +\n +this.ExtraFee\n ).toString();\n }\n hideShowpayment(e: any) {\n if (e.currentTarget.value == \"Billing\") {\n this.PaymentType = \"Billing\";\n /* this.IsExtraFeeShow=true;\n this.IsconvFeeShow=true;\n this.IstotalFeeShow=true;\n this.IsapprovalShow=true;\n this.IscontactnoShow=true;\n this.IsdocShow=true; */\n this.editabless = false;\n if (this.selectedBankValue && this.casetype && this.session.UserID) {\n const val: IcaseFee = {\n CaseTypeID: this.casetype,\n LoginID: this.session.UserID,\n BankID: this.selectedBankValue,\n ZoneID: this.selectedZoneValue,\n BranchID: this.selectedBranchValue,\n VerticalID: this.selectedVerticalValue,\n };\n this.ngxService.start();\n ApiService.CaseFee(val)\n .then((responce: any) => {\n this.ngxService.stop();\n if (responce.status === 200) {\n if (responce.data != \"\") {\n this.IsFeeShow = true;\n this.IsExtraFeeShow = true;\n this.IsconvFeeShow = true;\n this.IstotalFeeShow = true;\n this.IsapprovalShow = true;\n this.IscontactnoShow = true;\n this.IsdocShow = true;\n this.IsFeecase = true;\n this.CaseFee = responce.data;\n this.TotalFee = (\n +this.Conveyance +\n +this.CaseFee +\n +this.ExtraFee\n ).toString();\n } else {\n // this.router.navigate([\"Home\"]);\n Swal.fire(\n \"Oops...\",\n \"Before Create Case Update Bank Case Fees!\",\n \"warning\"\n );\n this.casetype = \"Select\";\n }\n }\n })\n .catch((e: any) => {\n console.log(\"Getting Error in onCaseChange\");\n Swal.fire(\"Oops...\", \"11something went wrong\", \"error\");\n });\n }\n } else {\n this.PaymentType = \"Cash\";\n this.IsExtraFeeShow = false;\n this.IsconvFeeShow = false;\n this.IstotalFeeShow = false;\n this.IsapprovalShow = false;\n this.IscontactnoShow = false;\n this.IsdocShow = false;\n this.editabless = true;\n this.CaseFee = \"\";\n }\n }\n GetStageDetail() {\n const p = this.selectedValuationValue;\n const valuationType = this.ISvaluation ? \"1\" : \"2\";\n let val: getStage = {\n Type: \"New\",\n valType: valuationType,\n };\n this.ngxService.start();\n ApiService.GetStages(val)\n .then((response: any) => {\n this.status = response.data.DATA;\n this.ngxService.stop();\n })\n .catch((e: any) => {\n this.ngxService.stop();\n Swal.fire(\n \"Oops...\",\n \"Something Went Wrong In Case Status Please Refresh Page!\",\n \"error\"\n );\n });\n }\n bindOldCaseValue() {\n console.log(\"editCaseDetail\", this.editCaseDetail);\n if (!this.selectedOldCase) {\n this.selectedBankValue = this.editCaseDetail.Bank_ID;\n this.selectedBranchValue = this.editCaseDetail.Branch_id;\n this.selectedBranchPersonValue = this.editCaseDetail.Branch_person;\n this.GetBranchDetails(this.editCaseDetail.Bank_ID, true);\n /* const BankText = this.BankDetail.find(val => val.AttributeID === this.selectedBankValue);\n this.BankText = BankText.AttributeName; */\n this.selectedStatus = this.editCaseDetail.Case_Status;\n this.selectedValuationValue = this.editCaseDetail.Valuation_typeID;\n this.GetBranchPersonDetails(\n this.editCaseDetail.Bank_ID,\n this.editCaseDetail.Branch_id,\n true\n );\n } else {\n this.oldCaseID = this.editCaseDetail.CaseID;\n }\n this.IsFeeShow = true;\n this.isEditCase = true;\n this.selectedState = this.editCaseDetail.StateID;\n this.selectedEngConv = this.editCaseDetail.EngConv;\n this.district = this.editCaseDetail.District;\n\n this.applicantName = this.editCaseDetail.Applicant_nameN;\n\n this.applicantFirst = this.editCaseDetail.ApplicanttitleN;\n\n this.PinCode = this.editCaseDetail.pin_code;\n this.BuildingName = this.editCaseDetail.Building_No;\n this.Streat = this.editCaseDetail.Street_Sector;\n this.Sector = this.editCaseDetail.SectorN;\n this.ContactPersonName = this.editCaseDetail.Contact_persion_Name;\n this.MOb1 = this.editCaseDetail.Contact_Persion_Mob1;\n this.MOb2 = this.editCaseDetail.Contact_Persion_Mob2;\n this.casetype = this.editCaseDetail.Type_Of_Case;\n this.landmark = this.editCaseDetail.Land_mark;\n this.FileNo = this.editCaseDetail.File_No;\n this.PropertyArea = this.editCaseDetail.Area;\n\n this.StatusRemark = this.editCaseDetail.Case_Status_Remarks;\n this.Conveyance = this.editCaseDetail.Conveyance;\n this.CaseFee = this.editCaseDetail.ActualFees;\n this.ExtraFee = this.editCaseDetail.ExtraFees;\n this.TotalFee = this.editCaseDetail.TotalFees;\n this.caseVertical = this.editCaseDetail.Case_vertical;\n this.ApprovalPerson = this.editCaseDetail.ApprovalPersonName;\n this.ContactNo = this.editCaseDetail.ApprovalContact;\n this.CaseRemark = this.editCaseDetail.Case_Creation_remark;\n this.propertyNo = this.editCaseDetail.PropertyValueN;\n this.propertyFirst = this.editCaseDetail.Property_titleN;\n this.Block = this.editCaseDetail.Block;\n if (this.selectedState) {\n const val: IGetCityLocation = {\n StateID: this.selectedState,\n CityID: \"\",\n LocID: \"\",\n GetType: \"City\",\n };\n this.getCityLocationOldCase(val);\n this.selectedCity = this.editCaseDetail.cityID;\n if (this.selectedCity) {\n const val: IGetCityLocation = {\n StateID: this.selectedState,\n CityID: this.selectedCity,\n LocID: \"\",\n GetType: \"Location\",\n };\n this.getCityLocationOldCase(val);\n this.selectedLocality = this.editCaseDetail.LocationID;\n this.locationChangeFUnctionOldCase();\n this.selectedSubLocation = this.editCaseDetail.SubLocalityId;\n // this.selectedEngvalue = this.editCaseDetail.Allocated_To;\n /* if (this.valEngineer) {\n const engVal = this.valEngineer.find(val => val.AttributeID === this.editCaseDetail.Allocated_To);\n this.AssignToText = engVal.AttributeName;\n } */\n\n // this.selectedSupvalue = this.editCaseDetail.Supervisor;\n /* if (this.valSup) {\n const supVal = this.valSup.find(val => val.AttributeID === this.selectedSupvalue);\n this.supToText = supVal.AttributeName;\n } */\n }\n this.valuationChange();\n this.bindDropdownOnEdit();\n }\n }\n GetEditOldCaseDetail(val: string) {\n this.ngxService.start();\n\n ApiService.getCaseBehalfOfID(val)\n .then((responce: any) => {\n this.ngxService.stop();\n if (responce.status === 200) {\n if (responce.data) {\n this.editCaseDetail = responce.data;\n this.bindOldCaseValue();\n }\n }\n })\n .catch((e: any) => {\n this.ngxService.stop();\n console.log(\"Getting Error In GetEditCaseDetail\");\n Swal.fire(\"Oops...\", \"1Something went wrong!\", \"error\");\n });\n }\n GetEditCaseDetail() {\n this.ngxService.start();\n let vals: any = {\n id:\"\"+ this.CaseID \n }\n ApiService.getSBFCCaseBehalfOfID(vals)\n .then((responce: any) => {\n this.ngxService.stop();\n debugger;\n if (responce.status === 200) {\n if (responce.data) {\n this.editCaseDetail = responce.data;\n // this.bindPreviousValue();\n this.selectedBankValue = 521; \n this.BankText = \"SBFC Finance Private Limited\";\n this.onBankChange( this.BankText); \ndebugger;\n this.SBfC_branch_name = this.editCaseDetail.branch_name;\n this.SBfC_Zone_name = this.editCaseDetail.Zone_name;\n this.SBfC_Vertical_name = this.editCaseDetail.Vertical_name;\n this.SBfC_BR_PR_NM = this.editCaseDetail.BR_PR_NM;\n this.SBfC_state = this.editCaseDetail.state;\n this.SBFC_city = this.editCaseDetail.city;\n this.SBfC_location = this.editCaseDetail.location;\n this.SBfC_Case_type = this.editCaseDetail.Case_type;\n this.applicantName=this.editCaseDetail.Applicant_Name;\n this.SBFC_add1=this.editCaseDetail.Address1;\n this.SBFC_add2=this.editCaseDetail.Address2;\n this.FileNo=this.editCaseDetail.File_no;\n this.FileNoOrignal= this.editCaseDetail.File_no;\n this.PinCode=this.editCaseDetail.pincode;\n this.ContactPersonName=this.editCaseDetail.Contact_person_NM;\n this.MOb1=this.editCaseDetail.Contact_mob1;\n this.MOb2=this.editCaseDetail.Contact_mob2;\n this.PropertyArea=this.editCaseDetail.Area;\n this.CaseRemark=this.editCaseDetail.message;\n this.getApprovaldocurl = this.editCaseDetail.ApprovalDocPath;\n this.GetProductDetails(this.selectedBankValue, true);\n debugger;\n }\n }\n })\n .catch((e: any) => {\n this.ngxService.stop();\n console.log(\"Getting Error In GetEditCaseDetail\");\n //Swal.fire(\"Oops...\", \"2Something went wrong!\", \"error\");\n });\n }\n _handleReaderLoaded(readerEvt) {\n var binaryString = readerEvt.target.result;\n this.filestring = btoa(binaryString); // Converting binary string data.\n }\n handleFileSelect(evt: any) {\n this.document = evt.target.files;\n }\n HandleSectionPlaneDoc(evt: any) {\n this.sectionPlaneDoc = evt.target.files;\n }\n HandleApprovelDoc(evt: any) {\n this.ApprovelDoc = evt.target.files;\n }\n\n fileToBase64(fileNew) {\n return new Promise((resolve) => {\n let file = fileNew;\n let reader = new FileReader();\n // Read file content on file loaded event\n reader.onload = function (event) {\n console.log(event.target);\n resolve(event.target);\n };\n // Convert data to base64\n reader.readAsDataURL(file);\n });\n }\n createCase() {\n debugger;\n const loginID = localStorage.getItem(\"userID\");\n let selectedDocID = \"\";\n if (this.selectedValuationValue == \"2\") {\n this.selectedStatus = \"386\";\n }\n if (this.selectedItems.length > 0) {\n for (const data in this.selectedItems) {\n if (data) {\n selectedDocID = selectedDocID + \",\" + this.selectedItems[data].id;\n }\n }\n selectedDocID = selectedDocID.substr(1);\n }\n if (this.selectedBankValue == \"\") {\n document.getElementById(\"inptBank\").focus();\n Swal.fire(\"Oops...\", \"Please Select Bank From DropDown!\", \"warning\");\n } else if (this.selectedZoneValue == \"\") {\n document.getElementById(\"inptZone\").focus();\n Swal.fire(\"Oops...\", \"Please Select Zone!\", \"warning\");\n } else if (this.selectedBranchValue == \"\") {\n document.getElementById(\"inptBranch\").focus();\n Swal.fire(\"Oops...\", \"Please Select Branch From DropDown!\", \"warning\");\n } else if (this.selectedVerticalValue == \"\" || this.selectedVerticalValue == undefined) {\n document.getElementById(\"inptVertical\").focus();\n Swal.fire(\"Oops...\", \"Please Select Vertical!\", \"warning\");\n } else if (this.selectedBranchPersonValue == \"\") {\n document.getElementById(\"inptBranchPerson\").focus();\n Swal.fire(\"Oops...\", \"Please Select Branch Person!\", \"warning\");\n } else if (this.applicantName == \"\") {\n document.getElementById(\"applicantName\").focus();\n Swal.fire(\"Oops...\", \"Please Enter Applicant Name!\", \"warning\");\n } else if (this.selectedState == \"\" || this.selectedState == \"Select\") {\n document.getElementById(\"ddState\").focus();\n Swal.fire(\"Oops...\", \"Please Select State!\", \"warning\");\n } else if (this.selectedCity == \"\" || this.selectedCity == \"Select\") {\n document.getElementById(\"ddCity\").focus();\n Swal.fire(\"Oops...\", \"Please Select City!\", \"warning\");\n } else if (\n this.selectedLocality == \"\" ||\n this.selectedLocality == \"Select\"\n ) {\n document.getElementById(\"ddLocality\").focus();\n Swal.fire(\"Oops...\", \"Please Select Locality!\", \"warning\");\n } else if (\n this.selectedSubLocation == \"\" ||\n this.selectedSubLocation == \"Select\"\n ) {\n document.getElementById(\"ddSubLocation\").focus();\n Swal.fire(\n \"Oops...\",\n \"Please Select Sub Location/Building Name!\",\n \"warning\"\n );\n } else if (this.PinCode == \"\") {\n document.getElementById(\"txtPIn\").focus();\n Swal.fire(\"Oops...\", \"Please Enter Pin Code!\", \"warning\");\n } else if (this.propertyNo == \"\") {\n document.getElementById(\"inptPropertyNo\").focus();\n Swal.fire(\"Oops...\", \"Please Enter Property No.!\", \"warning\");\n } else if (this.ContactPersonName == \"\") {\n document.getElementById(\"txtContactPerson\").focus();\n Swal.fire(\"Oops...\", \"Please Enter Contact Person Name!\", \"warning\");\n } else if (\n this.CaseFee != this.TotalFee &&\n (this.selectedApprover == \"Select\" ||\n this.selectedApprover == \"undefined\" ||\n this.selectedApprover == \"0\") &&\n (this.ApprovelDoc == null || this.ApprovelDoc == \"undefined\") &&\n this.getApprovaldocurl == null\n ) {\n Swal.fire(\n \"Oops...\",\n \"Please Select Approval Person Name or Attach Approval Document!\",\n \"warning\"\n );\n } else if (\n this.session.getRoleID != \"7\" &&\n (this.casetype == \"\" || this.casetype == \"Select\")\n ) {\n document.getElementById(\"ddlCase\").focus();\n Swal.fire(\"Oops...\", \"Please Select Case Type!\", \"warning\");\n } else {\n if (this.session.getRoleID == \"7\") {\n this.casetype = \"\";\n }\n let p: boolean = true;\n\n if (this.propertyFirst == \"Select\") {\n this.propertyFirst = \"\";\n }\n if (this.feestype == \"\" || this.feestype == \"Select\") {\n document.getElementById(\"ddlCasefees\").focus();\n Swal.fire(\"Oops...\", \"Please Select Fees Type!\", \"warning\");\n p=false;\n }\n if (this.selectedEngConv == \"\" || this.selectedEngConv == \"Select\") {\n document.getElementById(\"engcon\").focus();\n Swal.fire(\"Oops...\", \"Please Select Engineer conveyance!\", \"warning\");\n p=false;\n }\n if (this.selectedValuationValue == \"1\") {\n if (this.selectedStatus == \"\" || this.selectedStatus == \"Select\") {\n document.getElementById(\"ddlCasestatus\").focus();\n p = false;\n Swal.fire(\"Oops...\", \"Please Select Case Status!\", \"warning\");\n }\n }\n if (this.selectedStatus == \"40\") {\n /* if (this.selectedEngvalue == \"\") {\n p = false;\n document.getElementById(\"inptAssignTo\").focus();\n Swal.fire('Oops...', 'Please Select Assign to from dropdown!', 'warning');\n } else if (this.selectedSupvalue == \"\") {\n p = false;\n document.getElementById(\"inptSupervisor\").focus();\n Swal.fire('Oops...', 'Please Select Supervisor from dropdown!', 'warning');\n } */\n }\n if (p) {\n let caseType = \"\";\n if (this.isEditCase) {\n caseType = \"Update\";\n } else {\n caseType = \"Insert\";\n }\n if (this.selectedOldCase) {\n caseType = \"Insert\";\n }\n if (this.session.getRoleID == \"7\") {\n caseType = \"Insert\";\n }\n if (this.radioSelected == \"\" || this.radioSelected == \"undefined\") {\n this.radioSelected = \"Billing\";\n }\n debugger;\n if(this.DDladroffice==this.DDlROadroffice){\n this.IsOfficeChange=\"N\" ;\n this.DDladroffice=\"\"; \n }else\n { this.IsOfficeChange=\"Y\" ;\n \n }\n this.ngxService.start();\n let data: ICaseCreateSBFC = {\n CaseID: this.CaseID,\n Bank_id: this.selectedBankValue,\n branch_id: this.selectedBranchValue,\n person_id: this.selectedBranchPersonValue,\n ValuationTypeID: \"1\",\n ApplicantName_Name: this.applicantFirst + \" \" + this.applicantName,\n ApplicanttitleN: this.applicantFirst,\n Applicant_nameN: this.applicantName,\n Block: this.Block,\n BuildingNameN: \"\",\n StreatRoadN: this.Streat,\n SectorN: this.Sector,\n state_id: this.selectedState,\n distict: this.district,\n City_id: this.selectedCity,\n Locality_id: this.selectedLocality,\n BuildingNo: this.BuildingName,\n propertyno: this.propertyFirst + \" \" + this.propertyNo,\n Property_titleN: this.propertyFirst,\n PropertyValueN: this.propertyNo,\n Streat: this.Streat,\n landmark: this.landmark,\n SubLocality_id: this.selectedSubLocation,\n pincode: this.PinCode,\n ContactPersonName: this.ContactPersonName,\n Mob1: this.MOb1,\n Mob2: this.MOb2,\n vertical: this.caseVertical,\n casetype: this.casetype,\n Assignto: this.selectedEngvalue,\n Case_statusID: this.selectedStatus,\n supervisorID: this.selectedSupvalue,\n StatusRemark: this.StatusRemark,\n FileNo: this.FileNo,\n Area: this.PropertyArea,\n CaseRemark: this.CaseRemark,\n Document_id: selectedDocID,\n LoginID: loginID,\n OldCaseID: this.oldCaseID,\n ActualFees: this.CaseFee,\n ExtraFees: this.ExtraFee,\n TotalFees: this.TotalFee,\n Conveyance: this.Conveyance,\n ApprovalPersonName: this.selectedApprover,\n ApprovalContact: this.ContactNo,\n ApprovalDocPath: \"0\",\n AssignType: \"D\",\n usage: this.DDlUsage,\n propertytype: this.DDlPropertyType,\n Operation: caseType,\n PaymentType: this.radioSelected,\n Zone_id: this.selectedZoneValue,\n Vertical_id: this.selectedVerticalValue,\n ENgConv: this.selectedEngConv,\n Approval_Remarks: this.ApprovalRemarks,\n FeesType: this.feestype,\n ExtraEngConv: this.ConAmount,\n ExtraEngConvRemark: this.ConRemark,\n IsOtherOffice:this.IsOfficeChange,\n OtherOffice:this.DDladroffice,\n adroitbranch:this.DDlROadroffice,\n FileNoOrignal:this.FileNoOrignal,\n };\n this.caseCreate(data);\n }\n }\n }\n caseCreate(data: ICaseCreate) {\n ApiService.CreateCasesbfc(data)\n .then((responce: any) => {\n debugger;\n this.ngxService.stop();\n if (responce.status === 200) {\n if (this.isEditCase) {\n if (this.ApprovelDoc && this.ApprovelDoc.length) {\n this.updateDocument(this.CaseID);\n }\n Swal.fire(\"Thanks...\", \"Case Updated Successfully\", \"success\");\n this.router.navigate([\"Home\"]);\n } else {\n if (responce.data.case_id) {\n if (\n (this.document && this.document.length) ||\n (this.sectionPlaneDoc && this.sectionPlaneDoc.length) ||\n (this.ApprovelDoc && this.ApprovelDoc.length)\n ) {\n this.updateDocument(responce.data.case_id);\n } else {\n Swal.fire(\"Thanks...\", \"Case Created Successfully\", \"success\");\n this.router.navigate([\"Home\"]);\n }\n }\n }\n }\n })\n .catch((e: any) => {\n this.ngxService.stop();\n console.log(\"Getting Error In caseCreate\", e);\n Swal.fire(\"Oops...\", \"3Something went wrong!\", \"error\");\n });\n }\n updateDocument(logID) {\n debugger;\n if (logID) {\n if (this.sectionPlaneDoc || this.document || this.ApprovelDoc) {\n let formData = new FormData();\n if (this.document) {\n for (let val of this.document) {\n formData.append(\"CaseID\", logID);\n formData.append(\"imgname\", val.name);\n formData.append(\"files\", val);\n }\n }\n if (this.sectionPlaneDoc) {\n for (let val of this.sectionPlaneDoc) {\n formData.append(\"CaseID\", logID);\n formData.append(\"imgname\", val.name);\n formData.append(\"files\", val);\n }\n // formData.append(\"CaseID\", this.logID);\n // formData.append(\"imgname\", this.sanctionPlanDoc.name);\n // formData.append(\"files\", this.sanctionPlanDoc);\n }\n if (this.ApprovelDoc) {\n for (let val of this.ApprovelDoc) {\n formData.append(\"CaseID\", logID);\n formData.append(\"imgname\", val.name);\n formData.append(\"files\", val);\n formData.append(\"UserID\", this.session.UserID);\n }\n }\n if (this.ApprovelDoc) {\n this.ngxService.start();\n ApiService.UpdateApprovalDocument(formData)\n .then((responce: any) => {\n if (responce.status === 200) {\n // this.IsEditStatus = false;\n this.sectionPlaneDoc = undefined;\n this.document = undefined;\n if (this.isEditCase)\n Swal.fire(\n \"Thanks...\",\n \"Case Updated Successfully\",\n \"success\"\n );\n else\n Swal.fire(\n \"Thanks...\",\n \"Case Created Successfully\",\n \"success\"\n );\n this.router.navigate([\"Home\"]);\n }\n this.ngxService.stop();\n })\n .catch((e: any) => {\n this.ngxService.stop();\n Swal.fire(\n \"Oops...\",\n \"Something went wrong in document update!\",\n \"error\"\n );\n });\n } else {\n this.ngxService.start();\n ApiService.UpdateDocument(formData)\n .then((responce: any) => {\n if (responce.status === 200) {\n // this.IsEditStatus = false;\n this.sectionPlaneDoc = undefined;\n this.document = undefined;\n Swal.fire(\"Thanks...\", \"Case Created Successfully\", \"success\");\n this.router.navigate([\"Home\"]);\n }\n this.ngxService.stop();\n })\n .catch((e: any) => {\n this.ngxService.stop();\n Swal.fire(\n \"Oops...\",\n \"Something went wrong in document update!\",\n \"error\"\n );\n });\n }\n } else {\n Swal.fire(\"Oops...\", \"Please select atleast one document!\", \"warning\");\n }\n }\n }\n /* updateDocument(logID) {\n if (logID) {\n let formData = new FormData();\n formData.append(\"CaseID\", logID);\n formData.append(\"DocumentLength\", this.document.length);\n if (this.document.length) {\n let p: number = 0;\n for (let val of this.document) {\n formData.append(\"Document\" + p + \"\", val);\n p = p + 1;\n }\n } if (this.sectionPlaneDoc.length) {\n for (let val of this.sectionPlaneDoc) {\n formData.append(\"sectionPlaneDoc\", val);\n }\n } if (this.ApprovelDoc.length) {\n for (let val of this.ApprovelDoc) {\n formData.append(\"ApprovelDoc\", val);\n }\n }\n console.log('Data', formData);\n this.ngxService.start();\n ApiService.UpdateDocument(formData).then((responce: any) => {\n if (responce.status === 200) {\n Swal.fire('Thanks...', 'Case Created Successfully', 'success');\n this.router.navigate([\"Home\"]);\n }\n this.ngxService.stop();\n }).catch((e: any) => {\n\n this.ngxService.stop();\n Swal.fire('Oops...', 'Something went wrong in document update please try again!', 'error');\n });\n }\n } */\n onCaseChange(e: any) {\n this.radioSelected = \"Billing\";\n e.target.value;\n if (e.target.value == \"Select\" || e.target.value == \"\") {\n Swal.fire(\"Oops...\", \"Please select Fees type!\", \"warning\");\n this.IsExtraFeeShow = false;\n this.IsconvFeeShow = false;\n this.IstotalFeeShow = false;\n this.IsapprovalShow = false;\n this.IscontactnoShow = false;\n this.IsFeeShow = false;\n this.IsdocShow = false;\n this.IsFeecase = false;\n } else {\n if (this.selectedBankValue && this.feestype && this.session.UserID) {\n const val: IcaseFee = {\n CaseTypeID: this.feestype,\n LoginID: this.session.UserID,\n BankID: this.selectedBankValue,\n ZoneID: this.selectedZoneValue,\n BranchID: this.selectedBranchValue,\n VerticalID: this.selectedVerticalValue,\n };\n this.ngxService.start();\n ApiService.CaseFee(val)\n .then((responce: any) => {\n this.ngxService.stop();\n if (responce.status === 200) {\n if (responce.data != \"\") {\n if (this.session.getRoleID == \"22\") {\n this.IsFeeShow = false;\n this.IsExtraFeeShow = false;\n this.IsconvFeeShow = false;\n this.IstotalFeeShow = false;\n this.IsapprovalShow = false;\n this.IscontactnoShow = false;\n this.IsdocShow = false;\n this.IsFeecase = false;\n this.CaseFee = responce.data;\n this.TotalFee = (\n +this.Conveyance +\n +this.CaseFee +\n +this.ExtraFee\n ).toString();\n } else {\n this.IsFeeShow = true;\n this.IsExtraFeeShow = true;\n this.IsconvFeeShow = true;\n this.IstotalFeeShow = true;\n this.IsapprovalShow = true;\n this.IscontactnoShow = true;\n this.IsdocShow = true;\n this.IsFeecase = true;\n this.CaseFee = responce.data;\n this.TotalFee = (\n +this.Conveyance +\n +this.CaseFee +\n +this.ExtraFee\n ).toString();\n }\n } else {\n // this.router.navigate([\"Home\"]);\n Swal.fire(\n \"Oops...\",\n \"Before Create Case Update Bank Case Fees!\",\n \"warning\"\n );\n this.casetype = \"Select\";\n this.IsExtraFeeShow = false;\n this.IsconvFeeShow = false;\n this.IstotalFeeShow = false;\n this.IsapprovalShow = false;\n this.IscontactnoShow = false;\n this.IsFeeShow = false;\n this.IsdocShow = false;\n this.IsFeecase = false;\n }\n }\n })\n .catch((e: any) => {\n this.ngxService.stop();\n console.log(\"Getting Error in onCaseChange\");\n Swal.fire(\"Oops...\", \"4something went wrong\", \"error\");\n });\n }\n }\n }\n\n onStateChange(e: any) {\n const p = e.target.value;\n const sk = this.selectedState;\n if (this.selectedState) {\n const val: IGetCityLocation = {\n StateID: this.selectedState,\n CityID: \"\",\n LocID: \"\",\n GetType: \"City\",\n };\n\n this.getCityLocation(val);\n }\n }\n onROOfficeChange(e: any) {\n debugger;\n if( this.session.getRoleID==\"24\"){\n const p = e.target.value;\n const sk = this.selectedState\n \n const valEng: IGetCityLocation = {\n StateID: this.DDlROadroffice,\n CityID: this.selectedCity,\n LocID: this.selectedLocality,\n GetType: \"OfficeEngineer\",\n } \n this.getCityLocation(valEng);\n const valSup: IGetCityLocation = {\n StateID: this.session.UserID,\n CityID: this.selectedCity,\n LocID: this.session.getRoleID,\n GetType: \"ReportAnalysis\",\n }; \n this.getCityLocation(valSup);\n if(this.DDladroffice==\"\"){\n this.DDladroffice=this.DDlROadroffice;\n }\n else if(this.DDladroffice==this.DDlROadroffice){\n this.IsOfficeChange=\"N\";\n this.isdisable=false;\n }else\n { this.IsOfficeChange=\"Y\";\n this.isdisable=true;\n }\n \n }else{\n const p = e.target.value;\n const sk = this.selectedState\n \n const valEng: IGetCityLocation = {\n StateID: this.DDladroffice,\n CityID: this.selectedCity,\n LocID: this.selectedLocality,\n GetType: \"OfficeEngineer\",\n } \n this.getCityLocation(valEng);\n if(this.DDladroffice==localStorage.getItem('AdroitBranch')){\n this.IsOfficeChange=\"N\";\n this.isdisable=false;\n }else\n { this.IsOfficeChange=\"Y\";\n this.isdisable=true;\n }\n }\n }\n onOfficeChange(e: any) {\n debugger;\n if( this.session.getRoleID==\"24\"){\n const p = e.target.value;\n const sk = this.selectedState\n \n const valEng: IGetCityLocation = {\n StateID: this.DDladroffice,\n CityID: this.selectedCity,\n LocID: this.selectedLocality,\n GetType: \"OfficeEngineer\",\n } \n this.getCityLocation(valEng);\n const valSup: IGetCityLocation = {\n StateID: this.session.UserID,\n CityID: this.selectedCity,\n LocID: this.session.getRoleID,\n GetType: \"ReportAnalysis\",\n }; \n this.getCityLocation(valSup);\n \n if(this.DDladroffice==this.DDlROadroffice){\n this.IsOfficeChange=\"N\";\n this.isdisable=false;\n }else\n { this.IsOfficeChange=\"Y\";\n this.isdisable=true;\n }\n \n }else{\n const p = e.target.value;\n const sk = this.selectedState\n \n const valEng: IGetCityLocation = {\n StateID: this.DDladroffice,\n CityID: this.selectedCity,\n LocID: this.selectedLocality,\n GetType: \"OfficeEngineer\",\n } \n this.getCityLocation(valEng);\n if(this.DDladroffice==localStorage.getItem('AdroitBranch')){\n this.IsOfficeChange=\"N\";\n this.isdisable=false;\n }else\n { this.IsOfficeChange=\"Y\";\n this.isdisable=true;\n }\n }\n }\n onCityChange(e: any) {\n const p = e.target.value;\n if (this.selectedCity) {\n const val: IGetCityLocation = {\n StateID: this.selectedState,\n CityID: this.selectedCity,\n LocID: \"\",\n GetType: \"Location\",\n };\n this.getCityLocation(val);\n }\n }\n onLocationChange(e) {\n const p = e.target.value;\n this.locationChangeFUnction();\n }\n locationChangeFUnction() {\n if (\n this.session.getAdroitOffice == \"1\" ||\n this.session.getAdroitOffice == \"39\"\n ) \n {\n this.ddlrole = \"ReportAnalysis\";\n } else {\n this.ddlrole = \"ReportAnalysis\";\n }\n if (this.selectedLocality) {\n const val: IGetCityLocation = {\n StateID: this.selectedState,\n CityID: this.selectedCity,\n LocID: this.selectedLocality,\n GetType: \"SubLocation\",\n };\n // const valEng: IGetCityLocation = {\n // StateID: this.session.UserID,\n // CityID: this.selectedCity,\n // LocID: this.selectedLocality,\n // GetType: \"Engineer\",\n // }\n // const valEng: IGetCityLocation = {\n // StateID: localStorage.getItem('AdroitOffice'),\n // CityID: this.selectedCity,\n // LocID: this.selectedLocality,\n // GetType: \"OfficeEngineer\",\n // }\n // this.getCityLocation(valEng);\n const valSup: IGetCityLocation = {\n StateID: this.session.UserID,\n CityID: this.selectedCity,\n LocID: this.selectedLocality,\n GetType: this.ddlrole,\n };\n this.getCityLocation(val);\n \n this.getCityLocation(valSup);\n }\n }\n locationChangeFUnctionOldCase() {\n if (\n this.session.getAdroitOffice == \"1\" ||\n this.session.getAdroitOffice == \"39\"\n ) {\n this.ddlrole = \"ReportAnalysis\";\n } else {\n this.ddlrole = \"ReportAnalysis\";\n }\n if (this.selectedLocality) {\n const val: IGetCityLocation = {\n StateID: this.selectedState,\n CityID: this.selectedCity,\n LocID: this.selectedLocality,\n GetType: \"SubLocation\",\n };\n const valEng: IGetCityLocation = {\n StateID: this.session.UserID,\n CityID: this.selectedCity,\n LocID: this.selectedLocality,\n GetType: \"Engineer\",\n };\n const valSup: IGetCityLocation = {\n StateID: this.session.UserID,\n CityID: this.selectedCity,\n LocID: this.selectedLocality,\n GetType: this.ddlrole,\n };\n this.getCityLocationOldCase(val);\n this.getCityLocationOldCase(valEng);\n this.getCityLocationOldCase(valSup);\n }\n }\n onSubLocationChange(e) {\n const valPinCode: IGetCityLocation = {\n StateID: this.selectedState,\n CityID: this.selectedCity,\n LocID: this.selectedLocality,\n GetType: \"pincode\",\n };\n this.getCityLocation(valPinCode);\n }\n onApproverChange(e: any) {\n debugger;\n const newVal = this.getSelectedApproverByName(e.target.value);\n const val = newVal.Emp_name;\n this.selectedApprover = val;\n }\n onBankChange(e: any) {\n debugger;\n this.BranchText = \"\";\n this.ZoneText = \"\";\n this.BranchPersonText = \"\";\n this.VerticalText = \"\";\n // const newVal = this.getSelectedBankByName(e);\n const val = \"521\";//newVal.AttributeID;\n this.selectedBankValue = val;\n\n this.selectedValuationValue = \"1\";\n // this.selectedApprover=\"Select\";\n if (val) {\n this.GetZoneDetails(val, false);\n this.GetProductDetails(val, false);\n // this.GetFeesTypeDetails(val,false);\n this.GetApproverDetails(val, false);\n }\n // this.getValuationDetailsDynamically(newVal);\n this.selectedValuationValue = \"1\";\n this.valuationChange();\n }\n getValuationDetailsDynamically(data: any) {\n const osv = data.OSV;\n const ftv = data.FTV;\n // if (osv == \"T\") {\n this.selectedValuationValue = \"1\";\n // }\n // if (ftv == \"T\") {\n // this.selectedValuationValue = \"2\";\n // }\n this.valuationChange();\n }\n onZoneChange(e: any) {\n this.BranchText = \"\";\n //this.ZoneText = \"\";\n this.BranchPersonText = \"\";\n this.VerticalText = \"\";\n const newVal = this.getSelectedZoneByName(e.target.value);\n const val = newVal.AttributeID;\n this.selectedZoneValue = val;\n // this.selectedValuationValue = \"1\";\n if (val) {\n this.GetBranchDetails(val, false);\n }\n //\n }\n\n onBranchChange(e) {\n const p = e.target.value;\n this.BranchPersonText = \"\";\n this.VerticalText = \"\";\n const BranchVal = this.getSelectedBranchByName(e.target.value);\n const BankID = this.selectedBankValue;\n this.selectedBranchValue = BranchVal.AttributeID;\n if (this.selectedBranchValue) {\n this.BranchPersonText = \"\";\n this.GetVerticalDetails(BankID, this.selectedBranchValue, false);\n }\n }\n onBranchPersonChange(e) {\n const BranchPersonVal = this.getBranchPersoneValue(e.target.value);\n this.selectedBranchPersonValue = BranchPersonVal.AttributeID;\n }\n\n onVerticalChange(e) {\n debugger;\n const p = e.target.value;\n this.BranchPersonText = \"\";\n this.selectedVerticalValue = this.getSelectedVerticalByName(e.target.value);\n const BankID = this.getSelectedVerticalByName(e.target.value);\n // this.selectedBranchValue = BranchVal.AttributeID;\n if (this.selectedVerticalValue) {\n this.BranchPersonText = \"\";\n this.GetBranchPersonDetails(\n BankID.AttributeID,\n this.selectedVerticalValue.AttributeID,\n false\n );\n this.GetFeesTypeDetails(BankID.AttributeID, true);\n }\n }\n\n onEngChange(e) {\n const Val = this.getEngValue(e.target.value);\n if (e.target.value == \"\") {\n this.selectedEngvalue = \"0\";\n } else {\n this.selectedEngvalue = Val.AttributeID;\n }\n }\n onSupChange(e) {\n const Val = this.getSupValue(e.target.value);\n if (e.target.value == \"\") {\n this.selectedSupvalue = \"0\";\n } else {\n this.selectedSupvalue = Val.AttributeID;\n }\n }\n getEngValue(selectedName: string) {\n return this.valEngineer.find((val) => val.AttributeName === selectedName);\n }\n getSupValue(selectedName: string) {\n return this.valSup.find((val) => val.AttributeName === selectedName);\n }\n getBranchPersoneValue(selectedName: string) {\n return this.BranchPersonDetail.find(\n (val) => val.AttributeName === selectedName\n );\n }\n getSelectedBankByName(selectedName: string) {\n return this.BankDetail.find((val) => val.AttributeName === selectedName);\n }\n getSelectedApproverMobile(selectedName: string) {\n return this.LoadApprover.find((val) => val.Emp_name === selectedName);\n }\n getSelectedZoneByName(selectedName: string) {\n return this.ZoneDetail.find((val) => val.AttributeName === selectedName);\n }\n getSelectedApproverByName(selectedName: string) {\n return this.LoadApprover.find((val) => val.Emp_name === selectedName);\n }\n getSelectedBranchByName(selectedName: string) {\n return this.BranchDetail.find((val) => val.AttributeName === selectedName);\n }\n getSelectedVerticalByName(selectedName: string) {\n return this.VerticalDetail.find(\n (val) => val.AttributeName === selectedName\n );\n }\n getCityLocation(val: IGetCityLocation) {\n\n this.ngxService.start();\n ApiService.GetCityLocation(val).then((responce: any) => {\n this.ngxService.stop();\n if (responce.status === 200) {\n if (responce.data) {\n if (val.GetType === \"City\") {\n this.CityVal = responce.data.DATA;\n }\n else if (val.GetType === \"Location\") {\n this.LocationVal = responce.data.DATA;\n }\n else if (val.GetType === \"AdroitOffice\") {\n this.DDladrofficedata = responce.data.DATA;\n this.DDladroffice= localStorage.getItem('AdroitBranch');\n }\n else if ( val.GetType === \"ROOFFICE\") {\n this.DDlROadrofficedata = responce.data.DATA;\n if( this.session.getRoleID==\"24\")\n this.DDlROadroffice=\"Select\";\n else\n this.DDlROadroffice= localStorage.getItem('AdroitBranch');\n }\n else if (val.GetType === \"SubLocation\") {\n this.SubLocationVal = responce.data.DATA;\n }\n else if (val.GetType === \"pincode\") {\n if (responce.data.DATA) {\n console.log(\"Getting Error in pinCode\", responce.data.DATA[0]);\n this.PinCode = responce.data.DATA[0].AttributeName;\n }\n console.log(this.PinCode);\n }\n else if (val.GetType === \"Engineer\" || val.GetType === \"OfficeEngineer\") {\n this.valEngineer = responce.data.DATA;\n console.log(\"Getting Error in engVal\");\n if (this.isEditCase) {\n const engVal = this.valEngineer.find(val => val.AttributeID === this.editCaseDetail.Allocated_To);\n console.log(\"Getting Error in engVal\", engVal);\n if (engVal) {\n this.AssignToText = engVal.AttributeName;\n }\n }\n }\n else if (val.GetType === \"Sup\"||val.GetType === \"ReportAnalysis\") {\n this.valSup = responce.data.DATA;\n console.log(\"Getting Error in supVal1\");\n if (this.isEditCase) {\n const supVal = this.valSup.find(val => val.AttributeID === this.selectedSupvalue);\n console.log(\"Getting Error in supVal\", supVal);\n if (supVal) {\n this.supToText = supVal.AttributeName;\n }\n }\n }\n }\n }\n }).catch((e: any) => {\n this.ngxService.stop();\n console.log(\"Getting Error in getCityLocation\");\n //Swal.fire('Oops...', '5something went wrong'+val.GetType, 'error');\n });\n }\n getEngConvence(val: IGetCityLocation) {\n //this.session.getAdroitOffice\n this.ngxService.start();\n ApiService.GetCityLocation(val)\n .then((responce: any) => {\n this.ngxService.stop();\n if (responce.status === 200) {\n if (responce.data) {\n this.EngConv = responce.data.DATA;\n console.log(\"EngConv\", this.EngConv);\n\n // this.selectedEngConv = \"Select Convence\";\n }\n }\n })\n .catch((e: any) => {\n this.ngxService.stop();\n console.log(\"Getting Error in getCityLocation\");\n Swal.fire(\"Oops...\", \"6something went wrong\", \"error\");\n });\n }\n getCityLocationOldCase(val: IGetCityLocation) {\n this.ngxService.start();\n ApiService.GetCityLocation(val)\n .then((responce: any) => {\n this.ngxService.stop();\n if (responce.status === 200) {\n if (responce.data) {\n if (val.GetType === \"City\") {\n this.CityVal = responce.data.DATA;\n } else if (val.GetType === \"Location\") {\n this.LocationVal = responce.data.DATA;\n } else if (val.GetType === \"SubLocation\") {\n this.SubLocationVal = responce.data.DATA;\n } else if (val.GetType === \"pincode\") {\n if (responce.data.DATA) {\n console.log(\"Getting Error in pinCode\", responce.data.DATA[0]);\n this.PinCode = responce.data.DATA[0].AttributeName;\n }\n console.log(this.PinCode);\n } else if (val.GetType === \"Engineer\") {\n this.valEngineer = responce.data.DATA;\n console.log(\"Getting Error in engVal\");\n } else if (\n val.GetType === \"Sup\" ||\n val.GetType === \"ReportAnalysis\"\n ) {\n this.valSup = responce.data.DATA;\n console.log(\"Getting Error in supVal1\");\n }\n }\n }\n })\n .catch((e: any) => {\n this.ngxService.stop();\n console.log(\"Getting Error in getCityLocation\");\n Swal.fire(\"Oops...\", \"6something went wrong\", \"error\");\n });\n }\n getState(val: string) {\n this.ngxService.start();\n ApiService.GetMaster(val)\n .then((responce: any) => {\n if (responce.status === 200) {\n if (responce.data) {\n if (val === \"State\") {\n this.state = responce.data.DATA;\n }\n if (val === \"Documents\") {\n if (responce.data.DATA) {\n if (responce.data.DATA.length > 0) {\n for (const value of responce.data.DATA) {\n let docVal = {\n id: Number(value.AttributeID),\n text: value.AttributeName,\n };\n this.dropdownList1.push(docVal);\n }\n this.dropdownList = this.dropdownList1;\n if (this.isEditCase) {\n console.log(\"this is edit case\");\n }\n }\n }\n }\n if (val === \"CaseType\") {\n this.LoadCaseType = responce.data.DATA;\n }\n }\n }\n this.ngxService.stop();\n })\n .catch((e: any) => {\n this.ngxService.stop();\n console.log(\"Getting Error in getState\");\n Swal.fire(\"Oops...\", \"7something went wrong\", \"error\");\n });\n }\n bindDropdownOnEdit() {\n try {\n setTimeout(() => {\n if (this.editCaseDetail.Documents) {\n const item = this.editCaseDetail.Documents;\n const valArray = item.split(\",\");\n for (const valItem in valArray) {\n const supVal = this.dropdownList.find(\n (value) => value.id === +valArray[valItem]\n );\n if (supVal) {\n this.newSelectedItems.push(supVal);\n }\n }\n this.selectedItems = this.newSelectedItems;\n }\n }, 3000);\n } catch (error) {\n console.log(\"Error IS \", error);\n }\n }\n GetBankDetails() {\n let p: IBankDetail = {\n userid: this.session.UserID,\n BankID: \"\",\n BranchID: \"\",\n RoleID: this.session.getRoleID,\n GetType: \"Bank\",\n };\n this.ngxService.start();\n ApiService.GetBankDetails(p)\n .then((responce: any) => {\n if (responce.status === 200) {\n if (responce.data) {\n this.BankDetail = responce.data.DATA;\n }\n }\n this.ngxService.stop();\n })\n .catch((e: any) => {\n this.ngxService.stop();\n console.log(\"Getting Error In GetBankDetails\");\n Swal.fire(\"Oops...\", \"something went wrong\", \"error\");\n });\n }\n GetBankDetailsEditCase(isEdit: boolean) {\n let p: IBankDetail = {\n userid: this.session.UserID,\n BankID: \"\",\n BranchID: \"\",\n RoleID: this.session.getRoleID,\n GetType: \"Bank\",\n };\n this.ngxService.start();\n ApiService.GetBankDetails(p)\n .then((responce: any) => {\n if (responce.status === 200) {\n if (responce.data) {\n this.BankDetail = responce.data.DATA;\n if (isEdit && !this.selectedOldCase) {\n const BankText = this.BankDetail.find(\n (val) => val.AttributeID === this.editCaseDetail.Bank_ID\n );\n this.BankText = BankText.AttributeName;\n }\n }\n }\n this.ngxService.stop();\n })\n .catch((e: any) => {\n this.ngxService.stop();\n console.log(\"Getting Error In GetBankDetails\");\n Swal.fire(\"Oops...\", \"8something went wrong\", \"error\");\n });\n }\n GetUsageDataNew() {\n this.propertyTypeNEw = \"Select\";\n this.GetUsageData(\"Usage\");\n }\n GetUsageDataNewpro() {\n this.propertyTypeNEw = \"Select\";\n this.GetUsageData(\"propertytype\");\n }\n GetUsageData(e: any) {\n this.ngxService.start();\n let val: IUsage;\n let callAPI: boolean = true;\n if (e == \"Usage\") {\n val = {\n CaseID: \" \",\n type: \"Usage\",\n ID: \"\",\n };\n } else {\n if (this.DDlUsage == \"Select\") {\n callAPI = false;\n }\n val = {\n CaseID: \"\",\n type: \"propertytype\",\n ID: this.DDlUsage,\n };\n }\n if (callAPI) {\n ApiService.GetUsageData(val)\n .then((responce: any) => {\n if (responce.status == 200) {\n debugger;\n if (responce.data) {\n if (e == \"Usage\") {\n this.DDLUsageData = responce.data.MasterData;\n } else {\n this.DDLPropertyData = responce.data.MasterData;\n let p = this.propertyTypeNEw;\n this.DDlPropertyType = this.propertyTypeNEw;\n this.showMultidropDown();\n }\n }\n }\n this.ngxService.stop();\n })\n .catch((e: any) => {\n this.ngxService.stop();\n // Swal.fire('Oops...', 'Something went wrong try again!', 'error');\n console.log(\"Error In GetUsageData\", JSON.stringify(val));\n });\n }\n }\n showMultidropDown() {\n if (this.DDlUsage == \"5\") {\n $(\"#ddlPropertyType\").attr(\"multiple\", \"multiple\");\n $(\"#ddlPropertyType\").attr(\n \"title\",\n \"You can select multiple value using CTRL+value\"\n );\n } else {\n $(\"#ddlPropertyType\").removeAttr(\"multiple\");\n $(\"#ddlPropertyType\").removeAttr(\"title\");\n }\n if (this.propertyTypeNEw != \"Select\") {\n var dataarray = this.propertyTypeNEw.split(\",\");\n $(\"#ddlPropertyType\").val(dataarray);\n $(\"#ddlPropertyType\").multiselect(\"refresh\");\n }\n }\n GetVerticalDetails(bankID: string, BranchID: string, isEdit: boolean) {\n let p: IBankDetail = {\n userid: this.session.UserID,\n BankID: BranchID,\n BranchID: BranchID,\n RoleID: this.session.getRoleID,\n GetType: \"Vertical\",\n };\n this.ngxService.start();\n\n ApiService.GetBankDetails(p)\n .then((responce: any) => {\n if (responce.status === 200) {\n if (responce.data) {\n this.VerticalDetail = responce.data.DATA;\n if (isEdit && !this.selectedOldCase) {\n const BankText = this.VerticalDetail.find(\n (val) => val.AttributeID === this.editCaseDetail.Vertical_id\n );\n this.VerticalText = BankText.AttributeName;\n }\n }\n }\n this.ngxService.stop();\n })\n .catch((e: any) => {\n this.ngxService.stop();\n console.log(\"Getting Error In GetVerticalDetails\");\n Swal.fire(\"Oops...\", \"9something went wrong\", \"error\");\n });\n }\n Getvert(BankID: string, isEdit: boolean) {\n let p: IBankDetail = {\n userid: this.session.UserID,\n BankID: BankID,\n BranchID: \"\",\n RoleID: this.session.getRoleID,\n GetType: \"Branch\",\n };\n //this.ngxService.start();\n\n ApiService.GetBankDetails(p)\n .then((responce: any) => {\n if (responce.status === 200) {\n if (responce.data) {\n this.BranchDetail = responce.data.DATA;\n if (isEdit) {\n const branchText = this.BranchDetail.find(\n (val) => val.AttributeID === this.selectedBranchValue\n );\n this.BranchPersonText = branchText.AttributeName;\n }\n }\n }\n // this.ngxService.stop();\n })\n .catch((e: any) => {\n this.ngxService.stop();\n console.log(\"Get Error In GetBranchDetails\");\n Swal.fire(\"Oops...\", \"Get Error In GetBranchDetails\", \"error\");\n });\n }\n\n GetBranchPersonDetails(bankID: string, BranchID: string, isEdit: boolean) {\n debugger;\n let p: IBankDetail = {\n userid: this.session.UserID,\n BankID: bankID,\n BranchID: BranchID,\n RoleID: this.session.getRoleID,\n GetType: \"Person\",\n };\n this.selectedVerticalValue = bankID;\n this.ngxService.start();\n\n ApiService.GetBankDetails(p)\n .then((responce: any) => {\n if (responce.status === 200) {\n if (responce.data) {\n this.BranchPersonDetail = responce.data.DATA;\n if (isEdit && !this.selectedOldCase) {\n const BankText = this.BranchPersonDetail.find(\n (val) => val.AttributeID === this.editCaseDetail.Branch_person\n );\n this.BranchPersonText = BankText.AttributeName;\n }\n }\n }\n this.ngxService.stop();\n })\n .catch((e: any) => {\n this.ngxService.stop();\n console.log(\"Getting Error In GetBranchPersonDetails\");\n Swal.fire(\"Oops...\", \"9something went wrong\", \"error\");\n });\n }\n GetBranchDetails(BankID: string, isEdit: boolean) {\n let p: IBankDetail = {\n userid: this.session.UserID,\n BankID: BankID,\n BranchID: \"\",\n RoleID: this.session.getRoleID,\n GetType: \"Branch\",\n };\n //this.ngxService.start();\n\n ApiService.GetBankDetails(p)\n .then((responce: any) => {\n if (responce.status === 200) {\n if (responce.data) {\n this.BranchDetail = responce.data.DATA;\n if (isEdit) {\n const branchText = this.BranchDetail.find(\n (val) => val.AttributeID === this.selectedBranchValue\n );\n this.BranchText = branchText.AttributeName;\n }\n }\n }\n // this.ngxService.stop();\n })\n .catch((e: any) => {\n this.ngxService.stop();\n console.log(\"Get Error In GetBranchDetails\");\n Swal.fire(\"Oops...\", \"Get Error In GetBranchDetails\", \"error\");\n });\n }\n GetZoneDetails(BankID: string, isEdit: boolean) {\n debugger;\n let p: IBankDetail = {\n userid: this.session.UserID,\n BankID: BankID,\n BranchID: \"\",\n RoleID: this.session.getRoleID,\n GetType: \"Zone\",\n };\n //this.ngxService.start();\n this.ZoneText = \"\";\n this.VerticalText = \"\";\n ApiService.GetBankDetails(p)\n .then((responce: any) => {\n if (responce.status === 200) {\n if (responce.data) {\n this.ZoneDetail = responce.data.DATA;\n // if (isEdit) {\n // const BankText = this.ZoneDetail.find(\n // (val) => val.AttributeID === this.selectedZoneValue\n // );\n // this.ZoneText = BankText.AttributeName;\n // }\n }\n }\n // this.ngxService.stop();\n })\n .catch((e: any) => {\n this.ngxService.stop();\n console.log(\"Get Error In GetZoneDetails\");\n Swal.fire(\"Oops...\", \"Get Error In GetZoneDetails\", \"error\");\n });\n }\n GetProductDetails(BankID: string, isEdit: boolean) {\n debugger;\n let p: IBankDetail = {\n userid: this.session.UserID,\n BankID: BankID,\n BranchID: \"\",\n RoleID: this.session.getRoleID,\n GetType: \"Product\",\n };\n //this.ngxService.start();\n\n ApiService.GetBankDetails(p)\n .then((responce: any) => {\n if (responce.status === 200) {\n if (responce.data) {\n this.LoadCaseType = responce.data.DATA;\n }\n }\n // this.ngxService.stop();\n })\n .catch((e: any) => {\n this.ngxService.stop();\n console.log(\"Get Error In GetProductDetails\");\n Swal.fire(\"Oops...\", \"Get Error In GetProductDetails\", \"error\");\n });\n }\n GetFeesTypeDetails(VertiCalID: string, isEdit: boolean) {\n debugger;\n let p: IBankDetail = {\n userid: this.session.UserID,\n BankID: VertiCalID,\n BranchID: \"\",\n RoleID: this.session.getRoleID,\n GetType: \"FeesType\",\n };\n //this.ngxService.start();\n\n ApiService.GetBankDetails(p)\n .then((responce: any) => {\n if (responce.status === 200) {\n if (responce.data) {\n this.LoadFeesType = responce.data.DATA;\n }\n }\n // this.ngxService.stop();\n })\n .catch((e: any) => {\n this.ngxService.stop();\n console.log(\"Get Error In GetFeesDetails\");\n Swal.fire(\"Oops...\", \"Get Error In GetFeesDetails\", \"error\");\n });\n }\n GetApproverDetails(BankID: string, isEdit: boolean) {\n debugger;\n let p: IBankDetail = {\n userid: this.session.UserID,\n BankID: BankID,\n BranchID: \"\",\n RoleID: this.session.getRoleID,\n GetType: \"Product\",\n };\n //this.ngxService.start();\n // this.selectedApprover=\"Select\";\n ApiService.GetApproverDetails(p)\n .then((responce: any) => {\n if (responce.status === 200) {\n if (responce.data) {\n this.LoadApprover = responce.data.DATA;\n // this.selectedApprover=\"Select\";\n }\n }\n // this.ngxService.stop();\n })\n .catch((e: any) => {\n this.ngxService.stop();\n console.log(\"Get Error In GetApproverDetails\");\n Swal.fire(\"Oops...\", \"Get Error In GetApproverDetails\", \"error\");\n });\n }\n onItemSelect(item: any) {\n let p = this.selectedItems.length;\n console.log(item);\n }\n onSelectAll(items: any) {\n console.log(items);\n }\n onDeSelect(items: any) {\n this.deleteMsg(items.id);\n }\n deleteMsg(msg: string) {}\n HideModel() {\n this.IsPopUp = false;\n }\n checkValue(e: any) {\n const val = e.currentTarget.value;\n this.IsPopUp = false;\n if (val) {\n this.selectedOldCase = true;\n this.GetEditOldCaseDetail(val);\n }\n console.log(e);\n }\n searchOldCases() {\n this.ngxService.start();\n let val: searchOldCases = {\n Applicant_Name: this.applicantName,\n Property_No: this.propertyNo,\n Building_No: this.BuildingName,\n Street_Sector: this.Streat,\n Land_mark: this.landmark,\n City: this.selectedCity,\n Contact_Persion_Mob1: this.MOb1,\n Contact_Persion_Mob2: this.MOb2,\n };\n let p: boolean = false;\n if (\n this.applicantName != \"\" ||\n this.propertyNo != \"\" ||\n this.BuildingName != \"\" ||\n this.Streat != \"\" ||\n this.landmark != \"\" ||\n this.selectedCity != \"Select\" ||\n this.MOb1 != \"\" ||\n this.MOb2 != \"\"\n ) {\n p = true;\n if (this.selectedCity == \"Select\") {\n val.City = \"\";\n }\n }\n if (p) {\n ApiService.SearchOldCases(val)\n .then((responce: any) => {\n this.HeaderText = \"Please Select Case\";\n if (responce.status === 200) {\n if (responce.data) {\n this.IsPopUp = true;\n this.GridOldCases = responce.data.DATA;\n } else {\n Swal.fire(\"Oops...\", \"No Data Found!\", \"warning\");\n }\n } else {\n Swal.fire(\"No Data Found!\", \"warning\");\n // this.IsPopUp = true;\n }\n this.ngxService.stop();\n })\n .catch((e: any) => {\n this.ngxService.stop();\n Swal.fire(\"Oops...\", \"10something went wrong\", \"error\");\n });\n } else {\n this.ngxService.stop();\n Swal.fire(\"Oops...\", \"please add at least one value\", \"warning\");\n }\n }\n onBankCaseChange(e: any) {\n this.radioSelected = \"Billing\";\n e.target.value;\n if (e.target.value == \"Select\" || e.target.value == \"\") {\n Swal.fire(\"Oops...\", \"Please select case type!\", \"warning\");\n this.IsExtraFeeShow = false;\n this.IsconvFeeShow = false;\n this.IstotalFeeShow = false;\n this.IsapprovalShow = false;\n this.IscontactnoShow = false;\n this.IsFeeShow = false;\n this.IsdocShow = false;\n this.IsFeecase = false;\n } else {\n if (this.selectedBankValue && this.casetype && this.session.UserID) {\n const val: IcaseFee = {\n CaseTypeID: this.casetype,\n LoginID: this.session.UserID,\n BankID: this.selectedBankValue,\n ZoneID: this.selectedZoneValue,\n BranchID: this.selectedBranchValue,\n VerticalID: this.selectedVerticalValue,\n };\n this.ngxService.start();\n ApiService.CaseFee(val)\n .then((responce: any) => {\n this.ngxService.stop();\n if (responce.status === 200) {\n /* if (responce.data != \"\") { */\n if (\n this.session.getRoleID == \"22\" ||\n this.session.getRoleID == \"7\"\n ) {\n this.IsFeeShow = false;\n this.IsExtraFeeShow = false;\n this.IsconvFeeShow = false;\n this.IstotalFeeShow = false;\n this.IsapprovalShow = false;\n this.IscontactnoShow = false;\n this.IsdocShow = false;\n this.IsFeecase = false;\n this.CaseFee = responce.data;\n this.TotalFee = (\n +this.Conveyance +\n +this.CaseFee +\n +this.ExtraFee\n ).toString();\n } else {\n this.IsFeeShow = true;\n this.IsExtraFeeShow = true;\n this.IsconvFeeShow = true;\n this.IstotalFeeShow = true;\n this.IsapprovalShow = true;\n this.IscontactnoShow = true;\n this.IsdocShow = true;\n this.IsFeecase = true;\n this.CaseFee = responce.data;\n this.TotalFee = (\n +this.Conveyance +\n +this.CaseFee +\n +this.ExtraFee\n ).toString();\n }\n /* } else {\n // this.router.navigate([\"Home\"]);\n Swal.fire('Oops...', 'Before Create Case Update Bank Case Fees!', 'warning');\n this.casetype=\"Select\";\n this.IsExtraFeeShow=false;\n this.IsconvFeeShow=false;\n this.IstotalFeeShow=false;\n this.IsapprovalShow=false;\n this.IscontactnoShow=false;\n this.IsFeeShow=false;\n this.IsdocShow=false;\n this.IsFeecase=false;\n } */\n }\n })\n .catch((e: any) => {\n console.log(\"Getting Error in onCaseChange\");\n Swal.fire(\"Oops...\", \"4something went wrong\", \"error\");\n });\n }\n }\n }\n}\n","module.exports = \"
    \\r\\n
    \\r\\n \\r\\n

    Search Case

    \\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n\\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    Case IDNameMobileLocationCase StatusEngineerSupervisorCr. ByCr. DateAction
    {{grid.caseid}}{{grid.Applicant_Name}}{{grid.Contact_Persion_Mob1}}{{grid.loc}}{{grid.casestatus}}{{grid.eng}}{{grid.sup}}{{grid.cr_by}}{{grid.Case_Created_On}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n

    {{HeaderText}}

    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n

    Send Mail

    \\r\\n \\r\\n
    \\r\\n\\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n\\r\\n
    \\r\\n\\r\\n \\r\\n
    \\r\\n\\r\\n
    \\r\\n\\r\\n
    \"","import { Component, OnInit } from '@angular/core';\r\nimport { DatePipe } from '@angular/common';\r\nimport { Location } from '@angular/common';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { ApiService } from '../service/service';\r\nimport { SessionService } from '../service/sessionGlobalVar';\r\nimport { IBankDetail, IGetCityLocation, getStage, searchOldCases, ICaseSearch, UpdateDataForGrid , IUpdateStatus , IsendMail,IsgetMail } from '../service/type'\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport Swal from 'sweetalert2';\r\nimport * as Excel from 'exceljs/dist/exceljs.min.js';\r\nimport * as FileSaver from 'file-saver';\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: 'app-search-case',\r\n templateUrl: './search-case.component.html',\r\n styleUrls: []\r\n})\r\nexport class SearchCaseComponent implements OnInit {\r\n\r\n BankDetail: any;\r\n ZoneDetail: any = \"\";\r\n ZoneText: string = \"\";\r\n selectedZoneValue: any = \"\";\r\n selectedBankValue: any = \"\";\r\n selectedBranchValue: any = \"\";\r\n selectedBranchPersonValue: any = \"\";\r\n selectedVerticalValue: any = \"\";\r\n caseVertical: string = \"\";\r\n VerticalText: string = \"\";\r\n BranchDetail: any = \"\";\r\n VerticalDetail: any = \"\";\r\n BranchPersonDetail: any = \"\";\r\n state: any = \"\";\r\n selectedState: string = \"Select\";\r\n selectedCity: string = \"Select\";\r\n selectedLocality: string = \"Select\";\r\n selectedSubLocation: string = \"Select\";\r\n selectedValuationValue: string = \"Select\";\r\n casetype: string = \"Select\";\r\n selectedStatus: string = \"Select\";\r\n CityVal: any = \"\";\r\n LocationVal: any = \"\";\r\n PinCode: any = \"\";\r\n status: any = \"\";\r\n valEngineer: any = \"\";\r\n valSup: any = \"\";\r\n selectedEngvalue: string = \"\";\r\n selectedSupvalue: string = \"\";\r\n applicantName: string = \"\";\r\n district: string = \"\";\r\n dropdownList = [];\r\n dropdownList1 = [];\r\n selectedItems = [];\r\n newSelectedItems = [];\r\n dropdownSettings = {};\r\n propertyNo: string = \"\";\r\n BuildingName: string = \"\";\r\n Streat: string = \"\";\r\n landmark: string = \"\";\r\n ContactPersonName: string = \"\";\r\n MOb1: string = \"\";\r\n MOb2: string = \"\";\r\n LoadCaseType: any = \"\";\r\n StatusRemark: string = \"\";\r\n FileNo: string = \"\";\r\n PropertyArea: string = \"\";\r\n CaseRemark: string = \"\";\r\n CaseFee: string = \"0\";\r\n ExtraFee: string = \"0\";\r\n Conveyance: string = \"0\";\r\n TotalFee: string = \"0\";\r\n ApprovalPerson: string = \"\";\r\n ContactNo: string = \"\";\r\n IsFeeShow: boolean = false;\r\n editCaseDetail: any = \"\";\r\n BankText: string = \"\";\r\n BranchText: string = \"\";\r\n BranchPersonText: string = \"\";\r\n Sector: string = \"\";\r\n AssignToText: string = \"\";\r\n supToText: string = \"\";\r\n Block: string = \"\";\r\n files;\r\n filestring;\r\n myfile;\r\n isEditCase: boolean = false;\r\n ISvaluation: boolean = true;\r\n document: any;\r\n sectionPlaneDoc: any;\r\n ApprovelDoc: any;\r\n IsBankCase: boolean = false;\r\n IsPopUp: boolean = false;\r\n HeaderText: string;\r\n GridOldCases: any;\r\n selectedOldCase: boolean = false;\r\n oldCaseID: string = \"\";\r\n engineersList: any;\r\n supervisorList: any;\r\n getdocurl:any;\r\n txtKeyword: string = \"\";\r\n txtdateFrom: string = \"\";\r\n txtdateTo: string = \"\";\r\n txtQCPassDateFrom: string = \"\";\r\n txtQCPassDateTo: string = \"\";\r\n txtMobile: string = \"\";\r\n txtPropertyAddress: string;\r\n logID: string = \"\";\r\n IsEditStatus:boolean = false;\r\n IsDocument:boolean = true;\r\n msgType:string ;\r\n inputRemark:string;\r\n sendMailForm:string=\"\";\r\n SendBranchPerson:string=\"\";\r\n MailSubject:string=\"\";\r\n MailBody:string=\"\";\r\n mailBankID:string=\"\";\r\n CaseID:string=\"\";\r\n IsSendMailModel:boolean=false;\r\n sanctionPlanDoc: any;\r\n updatedFiles: any;\r\n datatablerefersh:boolean=true;\r\n IsCosearch:boolean=true;\r\n\r\n constructor(private router: Router, private service: ApiService, private ngxService: NgxUiLoaderService, private session: SessionService, private route: ActivatedRoute,private location: Location ) {\r\n this.getState(\"State\");\r\n this.getState(\"CaseType\");\r\n this.dropdownSettings = {\r\n singleSelection: false,\r\n idField: 'id',\r\n textField: 'text',\r\n unSelectAllText: 'UnSelect All',\r\n itemsShowLimit: 3,\r\n allowSearchFilter: true\r\n };\r\n \r\n const BranchID = localStorage.getItem(\"BankBranchID\");\r\n const bankID = localStorage.getItem(\"BankID\");\r\n let val = localStorage.getItem(\"roleID\");\r\n if (BranchID && (+val == 7 || +val == 10)) {\r\n this.selectedBankValue = bankID;\r\n this.selectedBranchValue = BranchID;\r\n this.IsBankCase = false;\r\n if (this.selectedBranchValue) {\r\n this.GetBranchPersonDetails(this.selectedBankValue, this.selectedBranchValue, false);\r\n }\r\n } else {\r\n this.IsBankCase = true;\r\n this.GetBankDetails();\r\n }\r\n }\r\n ngOnInit() {\r\n \r\n if (!this.session.isLoggedIn) {\r\n this.router.navigate([\"Login\"]);\r\n }\r\n this.route.params.subscribe(params => {\r\n if (params.id) {\r\n this.isEditCase = true;\r\n const id = window.atob(params.id);\r\n //this.GetEditCaseDetail(id);\r\n }\r\n });\r\n this.GetStageDetail('Search');\r\n }\r\n generateExcel(data, headers, name) {\r\n \r\n let date = new Date();\r\n let dateString = date.getDate() + '-' + (date.getMonth() + 1 ) + '-' + date.getFullYear() + ' , ' + date.getHours() + '_' + date.getMinutes() + '_' + date.getSeconds();\r\n\t\tconst header = headers;\r\n\t \r\n\t\t//Create workbook and worksheet\r\n\t\tlet workbook = new Excel.Workbook();\r\n\t\tlet worksheet = workbook.addWorksheet('data');\r\n\t\r\n\t\tlet headerRow = worksheet.addRow(header);\r\n\t\t\r\n\t\t// Cell Style : Fill and Border\r\n\t\theaderRow.eachCell((cell, number) => {\r\n\t\t cell.fill = {\r\n\t\t\ttype: 'pattern',\r\n\t\t\tpattern: 'solid',\r\n\t\t\tfgColor: { argb: 'FFFFFF00' },\r\n\t\t\tbgColor: { argb: 'FF0000FF' }\r\n\t\t }\r\n\t\t cell.border = { top: { style: 'thin' }, left: { style: 'thin' }, bottom: { style: 'thin' }, right: { style: 'thin' } }\r\n\t\t})\r\n\t \r\n\t\t// Add Data and Conditional Formatting\r\n\t\tdata.forEach(d => {\r\n\t\t let row = worksheet.addRow(d);\r\n\t\t}\r\n\t\r\n\t\t);\r\n\t\tfor(let i =0; i< header.length; i++) {\r\n\t\t\tworksheet.getColumn(i+1).width = 40;\r\n\t\t}\r\n\t\t worksheet.addRow([]);\r\n\t\r\n\t\t//Generate Excel File with given name\r\n\t\tworkbook.xlsx.writeBuffer().then((data) => {\r\n\t\t let blob = new Blob([data], { type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' });\r\n FileSaver.saveAs(blob, name+dateString+'.xlsx');\r\n\t\t})\r\n\t }\r\n goBack() {\r\n // window.history.back();\r\n this.location.back();\r\n\r\n console.log( 'goBack()...' );\r\n }\r\n GetStageDetail(stageType:string) {\r\n const valuationType = this.ISvaluation ? \"1\" : \"2\";\r\n let val: getStage = {\r\n Type: stageType,\r\n valType: valuationType\r\n }\r\n this.ngxService.start();\r\n ApiService.GetStages(val).then((response: any) => {\r\n this.status = response.data.DATA;\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something Went Wrong In Case Status Please Refresh Page!', 'error')\r\n })\r\n }\r\n\r\n\r\n onStateChange(e: any) {\r\n const p = e.target.value;\r\n const sk = this.selectedState\r\n if (this.selectedState) {\r\n const val: IGetCityLocation = {\r\n StateID: this.selectedState,\r\n CityID: \"\",\r\n LocID: \"\",\r\n GetType: \"City\",\r\n }\r\n this.getCityLocation(val);\r\n }\r\n }\r\n onCityChange(e: any) {\r\n const p = e.target.value;\r\n if (this.selectedCity) {\r\n const val: IGetCityLocation = {\r\n StateID: this.selectedState,\r\n CityID: this.selectedCity,\r\n LocID: \"\",\r\n GetType: \"Location\",\r\n }\r\n this.getCityLocation(val);\r\n }\r\n }\r\n onLocationChange(e) {\r\n const p = e.target.value;\r\n this.locationChangeFUnction();\r\n }\r\n locationChangeFUnction() {\r\n if (this.selectedLocality) {\r\n const valEng: IGetCityLocation = {\r\n StateID: this.session.UserID,\r\n CityID: this.selectedCity,\r\n LocID: this.selectedLocality,\r\n GetType: \"Engineer\",\r\n }\r\n const valSup: IGetCityLocation = {\r\n StateID: this.session.UserID,\r\n CityID: this.selectedCity,\r\n LocID: this.selectedLocality,\r\n GetType: \"Supvisor\",\r\n }\r\n this.getCityLocation(valEng);\r\n this.getCityLocation(valSup);\r\n }\r\n }\r\n onchangestatussup(e: any){\r\n \r\n if (this.selectedStatus==\"40\"){\r\n const val: IGetCityLocation = {\r\n StateID: this.session.UserID,\r\n CityID: \"\",\r\n LocID: \"\",\r\n GetType: \"Engineer\",\r\n }\r\n this.getCityLocationupdate(val);\r\n }else\r\n {\r\n const val: IGetCityLocation = {\r\n StateID: this.session.UserID,\r\n CityID: \"\",\r\n LocID: \"\",\r\n GetType: \"Supvisor\",\r\n }\r\n this.getCityLocationupdate(val);\r\n // this.getCityLocation(valSup);\r\n }\r\n \r\n }\r\n\r\n updateStatus() {\r\n if (this.logID) {\r\n if (this.selectedStatus == \"0\" || this.selectedStatus == \"\") {\r\n Swal.fire('Oops...', 'Please Select Action Type!', 'warning');\r\n } else if (this.inputRemark == \"\") {\r\n Swal.fire('Oops...', 'Remark Can`t be empty!', 'warning');\r\n } else if (this.selectedEngvalue == \"\") {\r\n Swal.fire('Oops...', 'Please Select Eng.!', 'warning');\r\n } else {\r\n const val: IUpdateStatus = {\r\n Case_id: this.logID,\r\n CaseStatus: this.selectedStatus,\r\n statusRemark: this.inputRemark,\r\n Assignto: this.selectedEngvalue,\r\n Message: this.msgType,\r\n LoginID: this.session.UserID\r\n }\r\n this.ngxService.start();\r\n ApiService.UpdateStatus(val).then((responce: any) => {\r\n if (responce.status === 200) {\r\n this.IsEditStatus = false;\r\n this.selectedStatus = \"0\";\r\n this.selectedEngvalue = \"\";\r\n this.inputRemark = \"\";\r\n Swal.fire('Success', 'Status Updated Sucessfully', 'success');\r\n if (responce.data) {\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong in status Update!', 'error');\r\n // alert(\"Error\" + e.message);\r\n });\r\n }\r\n }\r\n }\r\n Reopen(e:any) {\r\n this.HeaderText = \"Update Action\";\r\n let val: IGetCityLocation = {\r\n GetType: \"Engineer\",\r\n StateID: this.session.UserID,\r\n CityID: \"\",\r\n LocID: \"\"\r\n }\r\n this.logID = e.currentTarget.parentElement.firstElementChild.value;\r\n if (this.logID) {\r\n this.getCityLocation(val);\r\n this.GetStageDetail(\"Publish\");\r\n this.IsEditStatus = true;\r\n this.IsDocument = false;\r\n this.msgType = \"Case status changed from Publish\";\r\n }\r\n }\r\n openInNewTab(href: any) {\r\n Object.assign(document.createElement('a'), {\r\n target: '_blank',\r\n href,\r\n }).click();\r\n }\r\n onBankChange(e: any) {\r\n const p = e.target.value;\r\n const newVal = this.getSelectedBankByName(e.target.value);\r\n const val = newVal.AttributeID;\r\n this.selectedBankValue = val;\r\n if (val) {\r\n // this.GetBranchDetails(val, false);\r\n this.GetZoneDetails(val, false);\r\n }\r\n }\r\n onZoneChange(e: any) {\r\n \r\n const newVal = this.getSelectedZoneByName(e.target.value);\r\n const val = newVal.AttributeID;\r\n this.selectedZoneValue = val;\r\n this.BranchText = \"\";\r\n //this.ZoneText = \"\";\r\n this.BranchPersonText = \"\";\r\n // this.selectedValuationValue = \"1\";\r\n if (val) {\r\n this.GetBranchDetails(val, false);\r\n }\r\n //\r\n }\r\n \r\n onBranchChange(e) {\r\n const p = e.target.value;\r\n const BranchVal = this.getSelectedBranchByName(e.target.value);\r\n const BankID = this.selectedBankValue;\r\n this.selectedBranchValue = BranchVal.AttributeID;\r\n if (this.selectedBranchValue) {\r\n this.BranchPersonText='';\r\n this.GetVerticalDetails(BankID, this.selectedBranchValue, false);\r\n }\r\n }\r\n onVerticalChange(e) {\r\n debugger;\r\n const p = e.target.value;\r\n this.selectedVerticalValue=this.getSelectedVerticalByName(e.target.value)\r\n const BankID = this.getSelectedVerticalByName(e.target.value);\r\n // this.selectedBranchValue = BranchVal.AttributeID;\r\n if (this.selectedVerticalValue) {\r\n this.BranchPersonText='';\r\n this.GetBranchPersonDetails(BankID.AttributeID, this.selectedVerticalValue.AttributeID, false);\r\n }\r\n }\r\n getSelectedVerticalByName(selectedName: string) {\r\n return this.VerticalDetail.find(val => val.AttributeName === selectedName);\r\n }\r\n onBranchPersonChange(e) {\r\n const BranchPersonVal = this.getBranchPersoneValue(e.target.value);\r\n this.selectedBranchPersonValue = BranchPersonVal.AttributeID;\r\n }\r\n onEngChange(e) {\r\n const Val = this.getEngValue(e.target.value);\r\n this.selectedEngvalue = Val.AttributeID;\r\n }\r\n onSupChange(e) {\r\n const Val = this.getSupValue(e.target.value);\r\n this.selectedSupvalue = Val.AttributeID;\r\n }\r\n getEngValue(selectedName: string) {\r\n return this.valEngineer.find(val => val.AttributeName === selectedName);\r\n }\r\n getSupValue(selectedName: string) {\r\n return this.valSup.find(val => val.AttributeName === selectedName);\r\n }\r\n getBranchPersoneValue(selectedName: string) {\r\n return this.BranchPersonDetail.find(val => val.AttributeName === selectedName);\r\n }\r\n getSelectedBankByName(selectedName: string) {\r\n return this.BankDetail.find(val => val.AttributeName === selectedName);\r\n }\r\n getSelectedZoneByName(selectedName: string) {\r\n return this.ZoneDetail.find(val => val.AttributeName === selectedName);\r\n }\r\n getSelectedBranchByName(selectedName: string) {\r\n return this.BranchDetail.find(val => val.AttributeName === selectedName);\r\n }\r\n getCityLocationupdate(val: IGetCityLocation) {\r\n \r\n this.ngxService.start();\r\n ApiService.GetCityLocation(val).then((responce: any) => {\r\n \r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n this.valEngineer = responce.data.DATA;\r\n \r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n \r\n getCityLocation(val: IGetCityLocation) {\r\n this.ngxService.start();\r\n ApiService.GetCityLocation(val).then((responce: any) => {\r\n this.ngxService.stop();\r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n if (val.GetType === \"City\") {\r\n this.CityVal = responce.data.DATA;\r\n }\r\n else if (val.GetType === \"Location\") {\r\n this.LocationVal = responce.data.DATA;\r\n }\r\n else if (val.GetType === \"Engineer\") {\r\n this.valEngineer = responce.data.DATA;\r\n if (this.isEditCase) {\r\n const engVal = this.valEngineer.find(val => val.AttributeID === this.editCaseDetail.Allocated_To);\r\n this.AssignToText = engVal.AttributeName;\r\n }\r\n }\r\n else if (val.GetType === \"Sup\") {\r\n this.valSup = responce.data.DATA;\r\n if (this.isEditCase) {\r\n const supVal = this.valSup.find(val => val.AttributeID === this.selectedSupvalue);\r\n this.supToText = supVal.AttributeName;\r\n }\r\n }\r\n }\r\n }\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'something went wrong', 'error');\r\n });\r\n }\r\n getState(val: string) {\r\n this.ngxService.start();\r\n ApiService.GetMaster(val).then((responce: any) => {\r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n if (val === \"State\") {\r\n this.state = responce.data.DATA;\r\n }\r\n if (val === \"CaseType\") {\r\n this.LoadCaseType = responce.data.DATA;\r\n }\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'something went wrong', 'error');\r\n });\r\n }\r\n\r\n GetBankDetails() {\r\n let p: IBankDetail = {\r\n userid: this.session.UserID,\r\n BankID: \"\",\r\n BranchID: \"\",\r\n RoleID: this.session.getRoleID,\r\n GetType: \"Bank\",\r\n }\r\n this.ngxService.start();\r\n ApiService.GetBankDetails(p).then((responce: any) => {\r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n this.BankDetail = responce.data.DATA;\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'something went wrong', 'error');\r\n });\r\n }\r\n\r\n GetBranchPersonDetails(bankID: string, BranchID: string, isEdit: boolean) {\r\n let p: IBankDetail = {\r\n userid: this.session.UserID,\r\n BankID: bankID,\r\n BranchID: BranchID,\r\n RoleID: this.session.getRoleID,\r\n GetType: \"Person\",\r\n }\r\n this.ngxService.start();\r\n ApiService.GetBankDetails(p).then((responce: any) => {\r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n this.BranchPersonDetail = responce.data.DATA;\r\n if (isEdit && !this.selectedOldCase) {\r\n const BankText = this.BranchPersonDetail.find(val => val.AttributeID === this.editCaseDetail.Branch_person);\r\n this.BranchPersonText = BankText.AttributeName;\r\n }\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'something went wrong', 'error');\r\n });\r\n }\r\n GetZoneDetails(BankID: string, isEdit: boolean) {\r\n let p: IBankDetail = {\r\n userid: this.session.UserID,\r\n BankID: BankID,\r\n BranchID: \"\",\r\n RoleID: this.session.getRoleID,\r\n GetType: \"Zone\",\r\n }\r\n //this.ngxService.start();\r\n \r\n ApiService.GetBankDetails(p).then((responce: any) => {\r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n this.ZoneDetail = responce.data.DATA;\r\n if (isEdit) {\r\n const BankText = this.ZoneDetail.find(val => val.AttributeID === this.selectedZoneValue);\r\n this.ZoneText = BankText.AttributeName;\r\n }\r\n }\r\n }\r\n // this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n console.log(\"Get Error In GetZoneDetails\");\r\n Swal.fire('Oops...', 'Get Error In GetZoneDetails', 'error');\r\n });\r\n }\r\n GetVerticalDetails(bankID: string, BranchID: string, isEdit: boolean) {\r\n \r\n let p: IBankDetail = {\r\n userid: this.session.UserID,\r\n BankID: BranchID,\r\n BranchID: BranchID,\r\n RoleID: this.session.getRoleID,\r\n GetType: \"Vertical\",\r\n }\r\n this.ngxService.start();\r\n \r\n ApiService.GetBankDetails(p).then((responce: any) => {\r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n this.VerticalDetail = responce.data.DATA;\r\n if (isEdit && !this.selectedOldCase) {\r\n const BankText = this.VerticalDetail.find(val => val.AttributeID === this.editCaseDetail.Vertical_id);\r\n this.VerticalText = BankText.AttributeName;\r\n }\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n console.log(\"Getting Error In GetVerticalDetails\");\r\n Swal.fire('Oops...', '9something went wrong', 'error');\r\n });\r\n }\r\n GetBranchDetails(BankID: string, isEdit: boolean) {\r\n let p: IBankDetail = {\r\n userid: this.session.UserID,\r\n BankID: BankID,\r\n BranchID: \"\",\r\n RoleID: this.session.getRoleID,\r\n GetType: \"Branch\",\r\n }\r\n this.ngxService.start();\r\n ApiService.GetBankDetails(p).then((responce: any) => {\r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n this.BranchDetail = responce.data.DATA;\r\n if (isEdit) {\r\n const branchText = this.BranchDetail.find(val => val.AttributeID === this.selectedBranchValue);\r\n this.BranchText = branchText.AttributeName;\r\n }\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'something went wrong', 'error');\r\n });\r\n }\r\n onItemSelect(item: any) {\r\n let p = this.selectedItems.length;\r\n console.log(item);\r\n }\r\n onSelectAll(items: any) {\r\n console.log(items);\r\n }\r\n onDeSelect(items: any) {\r\n this.deleteMsg(items.id)\r\n }\r\n deleteMsg(msg: string) {\r\n }\r\n HideModel() {\r\n this.IsEditStatus=false;\r\n }\r\n\r\n base64toPDF(data:string) {\r\n var bufferArray = this.base64ToArrayBuffer(data);\r\n var blobStore = new Blob([bufferArray], { type: \"application/pdf\" });\r\n /* if (window.navigator && window.navigator.msSaveOrOpenBlob) {\r\n window.navigator.msSaveOrOpenBlob(blobStore);\r\n return;\r\n } */\r\n var data = window.URL.createObjectURL(blobStore);\r\n window.open(data);\r\n}\r\n\r\n base64ToArrayBuffer(data:any) {\r\n var bString = window.atob(data);\r\n var bLength = bString.length;\r\n var bytes = new Uint8Array(bLength);\r\n for (var i = 0; i < bLength; i++) {\r\n var ascii = bString.charCodeAt(i);\r\n bytes[i] = ascii;\r\n }\r\n return bytes;\r\n};\r\nView(e: any){\r\n let data = e.currentTarget.parentElement.firstElementChild.value;\r\n let val = {\r\n CaseID:data\r\n }\r\n ApiService.ViewReport(val).then((responce: any) => {\r\n if (responce.status === 200) {\r\n \r\n if(responce.data.status==\"202\"){\r\n this.openInNewTab(responce.data.data1);\r\n }\r\n else {\r\n this.base64toPDF(responce.data.Data);\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n}\r\n /* View(e: any) {\r\n let data = e.currentTarget.parentElement.firstElementChild.value;\r\n const LoginID = localStorage.getItem('userID');\r\n const val: UpdateDataForGrid = {\r\n CaseID: data,\r\n Type: \"View\",\r\n watermark: \"\",\r\n casecreatedfrom: \"\",\r\n UserID: LoginID,\r\n Remark: \"\",\r\n Supervisor: \"\",\r\n RoleID: \"\",\r\n }\r\n ApiService.UpdateGridDataAndGetUrl(val).then((responce: any) => {\r\n if (responce.status === 200) {\r\n // this.openInNewTab(responce.data.URL);\r\n this.openInNewTab(\"http://adroitvaluation.in/casePDF/\"+(data)+\".pdf\");\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n } */\r\n searchOldCases() {\r\n this.ngxService.start();\r\n let val: searchOldCases = {\r\n Applicant_Name: this.applicantName,\r\n Property_No: this.propertyNo,\r\n Building_No: this.BuildingName,\r\n Street_Sector: this.Streat,\r\n Land_mark: this.landmark,\r\n City: this.selectedCity,\r\n Contact_Persion_Mob1: this.MOb1,\r\n Contact_Persion_Mob2: this.MOb2\r\n }\r\n let p = 0;\r\n if (this.applicantName == \"\") {\r\n p += 1;\r\n } if (this.propertyNo == \"\") {\r\n p += 1;\r\n } if (this.BuildingName == \"\") {\r\n p += 1;\r\n } if (this.Streat == \"\") {\r\n p += 1;\r\n } if (this.landmark == \"\") {\r\n p += 1;\r\n } if (this.selectedCity == \"Select\") {\r\n p += 1;\r\n val.City = \"\";\r\n } if (this.MOb1 == \"\") {\r\n p += 1;\r\n } if (this.MOb2 == \"\") {\r\n p += 1;\r\n }\r\n if (p <= 6) {\r\n ApiService.SearchOldCases(val).then((responce: any) => {\r\n this.HeaderText = \"Please Select Case\";\r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n this.IsPopUp = true;\r\n this.GridOldCases = responce.data.DATA;\r\n \r\n } else {\r\n Swal.fire('Oops...', 'No Data Found!', 'warning');\r\n }\r\n \r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'something went wrong', 'error');\r\n });\r\n }\r\n else {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'please add at least two value', 'warning');\r\n }\r\n }\r\n SearchCase() {\r\n // const loginID = localStorage.getItem('userID');\r\n // let p: boolean = true\r\n // if (this.txtQCPassDateFrom == \"\" || this.txtQCPassDateFrom == \"\") {\r\n // document.getElementById(\"txtQCPassDateFrom\").focus();\r\n // p = false;\r\n // Swal.fire('Oops...', 'please select QC Pass Date From', 'warning');\r\n // }\r\n // else if (this.txtQCPassDateFrom == \"\" || this.txtQCPassDateTo == \"\") {\r\n // document.getElementById(\"txtQCPassDateTo\").focus();\r\n // p = false;\r\n // Swal.fire('Oops...', 'please select QC Pass Date To', 'warning');\r\n // }\r\n // else {\r\n // if (p) {\r\n var datePipe = new DatePipe(\"en-IN\");\r\n this.ngxService.start();\r\n \r\n let data: ICaseSearch = {\r\n keyword: (this.txtKeyword == undefined) ? \"\" : this.txtKeyword,\r\n fromdate: (this.txtdateFrom == \"\" || this.txtdateFrom == null) ? \"\" : datePipe.transform(this.txtdateFrom, \"d/MM/yyyy\"),\r\n todate: (this.txtdateTo == \"\" || this.txtdateTo == null) ? \"\" : datePipe.transform(this.txtdateTo, \"d/MM/yyyy\"),\r\n Mobile: (this.txtMobile == undefined) ? \"\" : this.txtMobile,\r\n bankid: this.selectedBankValue,\r\n bankbranchid: this.selectedBranchValue,\r\n branchpersion: this.selectedBranchPersonValue,\r\n state: (this.selectedState == \"Select\") ? \"\" : this.selectedState,\r\n city: (this.selectedCity == \"Select\") ? \"\" : this.selectedCity,\r\n location: (this.selectedLocality == \"Select\") ? \"\" : this.selectedLocality,\r\n status: (this.selectedStatus == \"Select\") ? \"\" : this.selectedStatus,\r\n qcfrom: (this.txtQCPassDateFrom == \"\" || this.txtQCPassDateFrom == null) ? \"\" : datePipe.transform(this.txtQCPassDateFrom, \"d/MM/yyyy\"),\r\n qcto: (this.txtQCPassDateTo == \"\" || this.txtQCPassDateTo == null) ? \"\" : datePipe.transform(this.txtQCPassDateTo, \"d/MM/yyyy\"),\r\n\r\n eng: this.selectedEngvalue,\r\n Supervisor: this.selectedSupvalue,\r\n propAdd: (this.txtPropertyAddress == undefined) ? \"\" : this.txtPropertyAddress,\r\n userid: this.session.UserID,\r\n RoleID: this.session.getRoleID\r\n }\r\n this.GetRecordForSearch(data);\r\n console.log(\"Data IS\", data);\r\n // }\r\n // }\r\n }\r\n\r\n GetRecordForSearch(data: ICaseSearch) {\r\n this.ngxService.start();\r\n \r\n ApiService.SearchCase(data).then((responce: any) => {\r\n if (responce.status === 200) {\r\n this.HeaderText = \"View Search Cases \";\r\n this.GridOldCases = responce.data;\r\n if(localStorage.getItem(\"roleID\")==\"5\"){\r\n this.IsPopUp = true;\r\n this.IsCosearch=false;\r\n }else{\r\n this.IsPopUp = true;\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.IsPopUp = false;\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong!', 'error');\r\n });\r\n\r\n }\r\n ExportTOExcel() {\r\n \r\n let data = [];\r\n let header = ['Case Ref No','Name',\r\n 'Mobile',\r\n 'Contact Person Name',\r\n 'Bank & Branch',\r\n 'Location',\r\n 'Property Address',\r\n 'File No',\r\n 'Case Type',\r\n 'Case Status',\r\n 'Engineer',\r\n 'Supervisor',\r\n 'Cr. By',\r\n 'Cr. Date',\r\n 'QC Pass',\r\n'Mail Date'];\r\n for(let i=0; i{\r\n if (responce.status === 200) {\r\n Swal.fire('Thanks', 'Mail Send Successfully', 'success');\r\n this.IsSendMailModel = false;\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n \r\n }\r\n sendReminder(e: any) {\r\n \r\n this.IsSendMailModel = true;\r\n this.CaseID = e.currentTarget.parentElement.firstElementChild.value;\r\n const val: IsgetMail = {\r\n caseid : this.CaseID,\r\n type:\"get\"\r\n }\r\n // this.CaseID = e.currentTarget.parentElement.firstElementChild.value;\r\n ApiService.GetMailReminderValue(val).then((responce: any) => {\r\n if (responce.status === 200) {\r\n let val = responce.data;\r\n this.sendMailForm = val.EmailTo;\r\n this.SendBranchPerson = val.ApplicantName;\r\n this.MailSubject = val.Sublect;\r\n this.MailBody = val.Body;\r\n this.mailBankID=val.BankID\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n\r\n logDetail(e) {\r\n this.logID = e.currentTarget.parentElement.firstElementChild.value;\r\n if (this.logID) {\r\n this.router.navigate([\"/logDetails\", { id: this.logID }]);\r\n }\r\n }\r\n\r\n addDoc(e) {\r\n this.logID = e.currentTarget.parentElement.firstElementChild.value;\r\n this.HeaderText = \"Upload Document\";\r\n if (this.logID) {\r\n this.IsEditStatus = true;\r\n this.IsDocument = true;\r\n this.ngxService.start();\r\n ApiService.SupSidebar(this.logID).then((responce: any) => {\r\n \r\n if (responce.status == 200) {\r\n if (responce.data) { \r\n this.getdocurl=responce.data.CaseDoc;\r\n for (const Dvalue in responce.data.CaseDoc) {\r\n \r\n let docValss = {\r\n url: this.getdocurl[Dvalue].url,\r\n name: this.getdocurl[Dvalue].name\r\n }\r\n this.getdocurl[Dvalue] = docValss;\r\n }\r\n // this.openInNewTabs(this.getdocurl);\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n \r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n }\r\n handleFileSelect(evt) {\r\n this.updatedFiles = evt.target.files;\r\n };\r\n handleSanctionPlanDoc(evt) {\r\n this.sanctionPlanDoc = evt.target.files;\r\n }\r\n updateDocument() {\r\n if (this.logID) {\r\n if (this.sanctionPlanDoc || this.updatedFiles) {\r\n let formData = new FormData();\r\n if (this.updatedFiles) {\r\n for (let val of this.updatedFiles) {\r\n formData.append(\"CaseID\", this.logID);\r\n formData.append(\"imgname\", val.name);\r\n formData.append(\"files\", val);\r\n }\r\n }\r\n if (this.sanctionPlanDoc) {\r\n formData.append(\"CaseID\", this.logID);\r\n formData.append(\"imgname\", this.sanctionPlanDoc.name);\r\n formData.append(\"files\", this.sanctionPlanDoc);\r\n }\r\n this.ngxService.start();\r\n ApiService.UpdateDocument(formData).then((responce: any) => {\r\n if (responce.status === 200) {\r\n this.IsEditStatus = false;\r\n this.sanctionPlanDoc = undefined;\r\n this.updatedFiles = undefined;\r\n Swal.fire('Success...', 'Upload Document Sucessfully!', 'success');\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong in document update!', 'error');\r\n });\r\n } else {\r\n Swal.fire('Oops...', 'Please select atleast one document!', 'warning');\r\n }\r\n }\r\n }\r\n\r\n\r\n\r\n \r\n}\r\n","import axios from \"axios\";\r\nimport { HttpClient } from \"@angular/common/http\";\r\nimport {\r\n IUserLogin, IBankDetail, getStage, IGetCityLocation, ICaseCreate, IGridInput, IWebClowl,\r\n IcaseFee, IUpdateStatus, searchOldCases, IBankTagData, IUpdateAddress, IQCreference, IFactorDetails,\r\n IValuationEstimate, GetFairMarketValue, IBrokerDetails, IupdateValuationDetails, IPageOsvPageTagDetails,\r\n ISaveOsvTagData , ISuperPropertyDetails , ISuperPropertyDetailsUpdate , ISupPropertydetailsOther,\r\n IupdateOtherData , IFtpImage ,IFairMarketValue , UpdateDataForGrid , Ibylaws,IUsage , IAreaDetails , IsendMail,IsgetMail ,ICaseSearch,Idocdetail,ISaveFtvsurroundData,Deletedoc, Idocumentlist,IUpdateFormatNotCompatable, moveImage, IsgetMailftv\r\n} from './type'\r\nexport class ApiService {\r\n //static APIURL: string = \"http://localhost:49302//\";\r\n static APIURL: string=\"http://adroitvaluation.in:8087//\";\r\n public static async userLogin(input: IUserLogin) {\r\n return new Promise((resolve, reject) => {\r\n axios.post(this.APIURL+`api//Login`, input).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n // save property's fair market value details\r\n public static async saveCalculateFairMarketValue(data:IFairMarketValue){\r\n return new Promise((resolve,reject) =>{\r\n axios.post(this.APIURL+`api//UpdateCFMV`, data).then((response)=>{\r\n resolve(response);\r\n }, (err)=>{\r\n reject(err);\r\n })\r\n }) \r\n\r\n}\r\n\r\n\r\npublic static async UpdateGridDataAndGetUrl(input: UpdateDataForGrid) {\r\n return new Promise((resolve, reject) => {\r\n axios.post(this.APIURL+`api//Updatedata`, input).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n}\r\npublic static async DownloadImage(input: any) {\r\n return new Promise((resolve, reject) => {\r\n axios.post(this.APIURL+`api//DownloadImage`, input).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n}\r\npublic static async MailReminderUpdate(input: IsendMail) { \r\n return new Promise((resolve, reject) => {\r\n axios.post(this.APIURL+`api//SendMailUpdate`, input).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n}\r\npublic static async FTVSendMailUpdate(input: IsendMail) { \r\n return new Promise((resolve, reject) => {\r\n axios.post(this.APIURL+`api//FTVSendMailUpdate`, input).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n}\r\npublic static async GetMailReminderValue(input: IsgetMail) {\r\n \r\n return new Promise((resolve, reject) => {\r\n axios.post(this.APIURL+`api//SendMail`, input).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n}\r\npublic static async SentFTVMail(input: IsgetMailftv) {\r\n \r\n return new Promise((resolve, reject) => {\r\n axios.post(this.APIURL+`api//SendMailFTV`, input).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n}\r\n/* public static async GetMailReminderValue(input: string) {\r\n const val={\r\n caseid:input,\r\n type:input\r\n }\r\n return new Promise((resolve, reject) => {\r\n axios.post(this.APIURL+`api//SendMail`, val).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n} */\r\n\r\n\r\n public static async GetPropertyDetailOther(input: ISupPropertydetailsOther) {\r\n return new Promise((resolve, reject) => {\r\n axios.post(this.APIURL+`api//SupPropertydetails`, input).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n\r\n public static async UpdateOtherDetails(input: IupdateOtherData) {\r\n return new Promise((resolve, reject) => {\r\n axios.post(this.APIURL+`api//UpdateOtherDetails`, input).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n public static async GetBankDetails(input: IBankDetail) {\r\n return new Promise((resolve, reject) => {\r\n axios.post(this.APIURL+`api//GetBankDetails`, input).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n public static async GetApproverDetails(input: IBankDetail) {\r\n return new Promise((resolve, reject) => {\r\n axios.post(this.APIURL+`api//GetApproverDetails`, input).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n public static async InsertSuperPropertyDetails(input: ISuperPropertyDetailsUpdate) {\r\n return new Promise((resolve, reject) => {\r\n axios.post(this.APIURL+`api//SupPropertyDetailsUpdate`, input).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n public static async InsertSupAccomdeationUpdate(input: any) {\r\n return new Promise((resolve, reject) => {\r\n axios.post(this.APIURL+`api//SupAccomdeationUpdate`, input).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n\r\n public static async SupUpdateBuiltupTable(input: any) {\r\n return new Promise((resolve, reject) => {\r\n axios.post(this.APIURL+`api//SupUpdateBuiltupTable`, input).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n\r\n public static async UpdateValuationDetails(input: IupdateValuationDetails) {\r\n return new Promise((resolve, reject) => {\r\n axios.post(this.APIURL+`api//SupFTVFMVUpdate`, input).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n\r\n public static async GetQCreference(input: IQCreference) {\r\n return new Promise((resolve, reject) => {\r\n axios.post(this.APIURL+`api//AVMgetQCRefrence`, input).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n \r\n public static async GetUsageData(input: IUsage) {\r\n return new Promise((resolve, reject) => {\r\n axios.post(this.APIURL+`api//GetUsage`, input).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n\r\n public static async GetWebCrawl(input: IWebClowl) {\r\n return new Promise((resolve, reject) => {\r\n axios.post(this.APIURL+`api//AVMQCWebCrawl`, input).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n\r\n\r\n public static async GetMaster(input: string) {\r\n return new Promise((resolve, reject) => {\r\n const val = {\r\n Type: input\r\n };\r\n axios.post(this.APIURL+`api//GetMaster`, val).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n public static async GetCityLocation(input: IGetCityLocation) {\r\n return new Promise((resolve, reject) => {\r\n axios.post(this.APIURL+`api//GetCityLocation`, input).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n public static async SupUpdateAddress(input: IUpdateAddress) {\r\n return new Promise((resolve, reject) => {\r\n axios.post(this.APIURL+`api//SupUpdateAddress`, input).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n public static async UpdateLatitudeLongitude(input: IUpdateAddress) {\r\n return new Promise((resolve, reject) => {\r\n axios.post(this.APIURL+`api//UpdateLatitudeLongitude`, input).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n public static async SupUpdateNotCData(input: IUpdateFormatNotCompatable) {\r\n return new Promise((resolve, reject) => {\r\n axios.post(this.APIURL+`api//UpdateNotComData`, input).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n public static async getGioLocation(val: string) {\r\n const input={\r\n CaseID:val\r\n }\r\n return new Promise((resolve, reject) => {\r\n axios.post(this.APIURL+`api//GetCaseLocation`, input).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n \r\n public static async GetFacorPointDetails(val: IFactorDetails) {\r\n return new Promise((resolve, reject) => {\r\n axios.post(this.APIURL+`api//FTVfactorData`, val).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n public static async GetOsvGeneralDetailsTagData(val: IPageOsvPageTagDetails) {\r\n return new Promise((resolve, reject) => {\r\n axios.post(this.APIURL+`api//SUPShowTAgData`, val).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n public static async InsertOsvGenralDetails(val: ISaveOsvTagData) {\r\n return new Promise((resolve, reject) => {\r\n axios.post(this.APIURL+`api//SupSaveTagData`, val).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n public static async SupPropertydetails(val:ISuperPropertyDetails) {\r\n return new Promise((resolve, reject) => {\r\n axios.post(this.APIURL+`api//SupPropertydetails`, val).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n public static async GetValuationEstimateDetails(val: IValuationEstimate) {\r\n return new Promise((resolve, reject) => {\r\n axios.post(this.APIURL+`api//SupFTVFMVData`, val).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n public static async saveBrokerDetails(val: IBrokerDetails) {\r\n return new Promise((resolve, reject) => {\r\n axios.post(this.APIURL+`api//UpdateBroker`, val).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n public static async GetFairMarketValue(val: GetFairMarketValue) {\r\n return new Promise((resolve, reject) => {\r\n axios.post(this.APIURL+`api//SUPFactorPointRate`, val).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n\r\n\r\n\r\n\r\n\r\n public static async SearchOldCases(input: searchOldCases) {\r\n return new Promise((resolve, reject) => {\r\n axios.post(this.APIURL+`api//SearchOldCaseCO`, input).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n public static async UpdateFtvFactorData(input: any) {\r\n return new Promise((resolve, reject) => {\r\n axios.post(this.APIURL+`api//FTVFactorDataUpdate`, input).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n public static async CreateCase(input: ICaseCreate) {\r\n return new Promise((resolve, reject) => {\r\n axios.post(this.APIURL+`api//CreateCaseCOnew`, input).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n public static async CreateCasesbfc(input: ICaseCreate) {\r\n return new Promise((resolve, reject) => {\r\n axios.post(this.APIURL+`api//SBFCCreateCase`, input).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n public static async FtvUpdatenumber(input: ICaseCreate) {\r\n return new Promise((resolve, reject) => {\r\n axios.post(this.APIURL+`api//FtvUpdatenumber`, input).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n public static async FtvSendSMS(input: ICaseCreate) {\r\n return new Promise((resolve, reject) => {\r\n axios.post(this.APIURL+`api//FtvSendSMS`, input).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n public static async GetStages(input: getStage) {\r\n return new Promise((resolve, reject) => {\r\n axios.post(this.APIURL+`api//GetStages`, input).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n public static async GetProfileDetail(input: any) {\r\n return new Promise((resolve, reject) => {\r\n axios.post(this.APIURL+`api//Profile`, input).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n public static async CaseFee(input: IcaseFee) {\r\n return new Promise((resolve, reject) => {\r\n axios.post(this.APIURL+`api//CaseFee`, input).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n public static async GetDocdetails(input: Idocdetail) {\r\n return new Promise((resolve, reject) => {\r\n axios.post(this.APIURL+`api//GetDocdetails`, input).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n public static async GetBankCaseDetail(input: any) {\r\n return new Promise((resolve, reject) => {\r\n axios.post(this.APIURL+`api//ViewBankCases`, input).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n public static async SaveAreaDetails(input: IAreaDetails) {\r\n return new Promise((resolve, reject) => {\r\n axios.post(this.APIURL+`api//UpdateAreaDetails`, input).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n public static async GetAreaDetails(input: string) {\r\n const val={\r\n CaseID:input\r\n }\r\n return new Promise((resolve, reject) => {\r\n axios.post(this.APIURL+`api//GetAreaDetails`, val).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n public static async getCaseBehalfOfID(input: string) {\r\n return new Promise((resolve, reject) => {\r\n let val = {\r\n CaseID: input\r\n }\r\n axios.post(this.APIURL+`api//EditCase`, val).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n public static async SupSidebar(input: string) {\r\n return new Promise((resolve, reject) => {\r\n let val = {\r\n CaseID: input\r\n }\r\n axios.post(this.APIURL+`api//SupSidebar`, val).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n public static async FTVCasedocdetails(input: string) {\r\n return new Promise((resolve, reject) => {\r\n let val = {\r\n CaseID: input\r\n }\r\n axios.post(this.APIURL+`api//FTVCasedocdetails`, val).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n public static async SupSidebar1(input: string) {\r\n return new Promise((resolve, reject) => {\r\n let val = {\r\n CaseID: input\r\n }\r\n axios.post(this.APIURL+`api//SupSidebar`, val).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n\r\n public static async UpdateStatus(input: IUpdateStatus) {\r\n return new Promise((resolve, reject) => {\r\n axios.post(this.APIURL+`api//UpdateStatus`, input).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n public static async UpdateBylaws(input: Ibylaws) {\r\n return new Promise((resolve, reject) => {\r\n axios.post(this.APIURL+`api//bylaws`, input).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n // public static async UpdateFtvStatus(input: IUpdateStatus) { \r\n // return new Promise((resolve, reject) => { \r\n // axios.post(this.APIURL+`api//Updateftpstatus`, input).then((response) => { \r\n // resolve(response);\r\n // }, (err) => {\r\n // reject(err);\r\n // });\r\n // });\r\n // }\r\n public static async UpdateDocument(input: any) {\r\n return new Promise((resolve, reject) => {\r\n axios.post(this.APIURL+`api//AddDoc`, input).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n \r\n public static async UpdateApprovalDocument(input: any) {\r\n return new Promise((resolve, reject) => {\r\n axios.post(this.APIURL+`api//AddApprovalDoc`, input).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n public static async UpdateReport(input: any) {\r\n return new Promise((resolve, reject) => {\r\n axios.post(this.APIURL+`api//AddReport`, input).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n public static async GetLogData(input: string) {\r\n return new Promise((resolve, reject) => {\r\n const val = {\r\n CaseID: input\r\n };\r\n axios.post(this.APIURL+`api//CaseLog`, val).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n public static async GetGridData(input: IGridInput) {\r\n return new Promise((resolve, reject) => {\r\n axios.post(this.APIURL+`api//CoGrid`, input).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n public static async GetSuperGridData(input: any) {\r\n return new Promise((resolve, reject) => {\r\n axios.post(this.APIURL+`api//SUPViewCase`, input).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n public static async GetRegionalPageTag() {\r\n return new Promise((resolve, reject) => {\r\n axios.post(this.APIURL+`api//BankTag`).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n public static async saveTagData(data: IBankTagData) {\r\n return new Promise((resolve, reject) => {\r\n axios.post(this.APIURL+`api//SaveBankTagData`, data).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n public static async UploadFTPImage(input: IFtpImage) { \r\n return new Promise((resolve, reject) => { \r\n axios.post(this.APIURL+`api//UploadFTPImage`, input).then((response) => { \r\n resolve(response);\r\n }, (err) => { \r\n reject(err);\r\n });\r\n });\r\n }\r\n public static async UploadFTPImagemultiple(input: any) { \r\n return new Promise((resolve, reject) => { \r\n axios.post(this.APIURL+`api//UploadFTPImagemultiple`, input).then((response) => { \r\n resolve(response);\r\n }, (err) => { \r\n reject(err);\r\n });\r\n });\r\n }\r\n\r\n public static async GetSuperImage(input: string) { \r\n let val={\r\n CaseID:input\r\n } \r\n return new Promise((resolve, reject) => { \r\n axios.post(this.APIURL+`api//ShowImage`, val).then((response) => { \r\n resolve(response);\r\n }, (err) => { \r\n reject(err);\r\n });\r\n });\r\n }\r\n public static async GetAllImage(input: string) { \r\n let val={\r\n CaseID:input\r\n } \r\n return new Promise((resolve, reject) => { \r\n axios.post(this.APIURL+`api//ShowImageAll`, val).then((response) => { \r\n resolve(response);\r\n }, (err) => { \r\n reject(err);\r\n });\r\n });\r\n }\r\n public static async FTVsurrounding(val: ISaveFtvsurroundData) {\r\n return new Promise((resolve, reject) => {\r\n axios.post(this.APIURL+`api//FTPsurrounding`, val).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n public static async GetFTVsurrounding(val: ISaveFtvsurroundData) {\r\n return new Promise((resolve, reject) => {\r\n axios.post(this.APIURL+`api//FTPsurrounding`, val).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n public static async SearchCase(input: ICaseSearch) {\r\n return new Promise((resolve, reject) => {\r\n axios.post(this.APIURL+`api//CoSearch`, input).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n\r\n public static async GetOldCaseMessage(caseid:string) {\r\n const input={\r\n CaseID:caseid\r\n }\r\n return new Promise((resolve, reject) => {\r\n debugger;\r\n axios.post(this.APIURL+`api//OldCaseReport`, input).then((response) => {\r\n debugger;\r\n resolve(response);\r\n }, (err) => {\r\n debugger;\r\n reject(err);\r\n });\r\n });\r\n }\r\n public static async DeleteDocument(input: Deletedoc) {\r\n return new Promise((resolve, reject) => {\r\n axios.post(this.APIURL+`api//DeleteFiles`, input).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n public static async ImageMoved(input: moveImage) {\r\n return new Promise((resolve, reject) => {\r\n axios.post(this.APIURL+`api//MoveImage`, input).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n public static async Documentlistupdate(input: Idocumentlist) {\r\n return new Promise((resolve, reject) => {\r\n axios.post(this.APIURL+`api//DoucumentListUpdate`, input).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n public static async UploadLTEPDF(input: any) { \r\n return new Promise((resolve, reject) => { \r\n axios.post(this.APIURL+`api//LTEUploadPDF`, input).then((response) => { \r\n resolve(response);\r\n }, (err) => { \r\n reject(err);\r\n });\r\n });\r\n }\r\n public static async LTEUpdateQCOrAreaDetail(input: any) {\r\n return new Promise((resolve, reject) => {\r\n axios.post(this.APIURL+`api//LTEUpdateQcPass`, input).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n public static async ViewReport(input: any) {\r\n return new Promise((resolve, reject) => {\r\n axios.post(this.APIURL+`api//ViewReport`, input).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n public static async RotateAndSaveImage(input: any) {\r\n return new Promise((resolve, reject) => {\r\n axios.post(this.APIURL+`api//RotateAndSaveImage`, input).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n public static async ViewCaseGeneralDetail(input: any) {\r\n return new Promise((resolve, reject) => {\r\n axios.post(this.APIURL+`api//ViewCaseGeneralDetail`, input).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n public static async DownloadCSVFileKotak(input: any) {\r\n return new Promise((resolve, reject) => {\r\n axios.post(this.APIURL+`api//DownloadCSVFileKotak`, input).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n public static async PropertyRadar(input: any) {\r\n return new Promise((resolve, reject) => {\r\n axios.post(this.APIURL+`api//PropertyRadar`, input).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n\r\n public static async GetGeneralDetail2Other(input: any) {\r\n return new Promise((resolve, reject) => {\r\n axios.post(this.APIURL+`api//GetGeneralDetail2`, input).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n\r\n public static async ViewCaseReportAnalysis(input: any) {\r\n return new Promise((resolve, reject) => {\r\n axios.post(this.APIURL+`api//ViewCaseReportAnalysis`, input).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n public static async ViewSBFCLead(input: any) {\r\n return new Promise((resolve, reject) => {\r\n axios.post(this.APIURL+`api//ViewSBFCLead`, input).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n } \r\n public static async getSBFCCaseBehalfOfID(input: any) {\r\n return new Promise((resolve, reject) => {\r\n \r\n axios.post(this.APIURL+`api//SBFCeditCasedetails`, input).then((response) => {\r\n resolve(response);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n}\r\n\r\n//GetBankDetails\r\nexport default ApiService;\r\n","\r\nimport { ApiService } from '../service/service';\r\nimport { Router } from '@angular/router';\r\nimport { Injectable } from '@angular/core';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SessionService {\r\n public ISlogin: boolean = false;\r\n public ISedit_report: boolean = false;\r\n public ISqc_permission: boolean = false;\r\n constructor(private router: Router) { }\r\n token: string = \"\";\r\n\r\n get isLoggedIn(): boolean {\r\n const isLogin = localStorage.getItem('userID');\r\n if (isLogin) {\r\n return true;\r\n }\r\n else {\r\n return false;\r\n }\r\n }\r\n // this.wrapperclass = \"wrapper\";\r\n // this.sidebarwrapper=\"sidebar-wrapper\"; \r\n get wrapper(): string {\r\n const isLogin = localStorage.getItem('userID');\r\n if (isLogin) {\r\n return \"wrapper\";\r\n }\r\n else {\r\n return \"\";\r\n }\r\n }\r\n get showCoordinator() {\r\n let val = localStorage.getItem(\"roleID\");\r\n if (val) {\r\n if (+val == 3 || +val == 10 || +val == 24) {\r\n return true;\r\n } else {\r\n return false\r\n }\r\n } else {\r\n return false;\r\n }\r\n }\r\n get showSUPCoordinator() {\r\n let val = localStorage.getItem(\"roleID\");\r\n if (val) {\r\n if ( +val == 10 || +val == 24) {\r\n return true;\r\n } else {\r\n return false\r\n }\r\n } else {\r\n return false;\r\n }\r\n }\r\n get showSuper() {\r\n let val = localStorage.getItem(\"roleID\");\r\n if (val) {\r\n if (+val == 5) {\r\n return true;\r\n } else {\r\n return false\r\n }\r\n } else {\r\n return false;\r\n }\r\n }\r\n get showBank() {\r\n let val = localStorage.getItem(\"roleID\");\r\n if (val) {\r\n if (+val == 7) {\r\n return true;\r\n } else {\r\n return false\r\n }\r\n } else {\r\n return false;\r\n }\r\n }\r\n get showBankPerson() {\r\n let val = localStorage.getItem(\"roleID\");\r\n if (val) {\r\n if (+val == 22) {\r\n return true;\r\n } else {\r\n return false\r\n }\r\n } else {\r\n return false;\r\n }\r\n }\r\n get regionalOffice(){ \r\n let val = localStorage.getItem(\"roleID\");\r\n if (val) {\r\n if (+val == 13) {\r\n return true;\r\n } else {\r\n return false\r\n }\r\n } else {\r\n return false;\r\n }\r\n}\r\n\r\n get showTopMenu() {\r\n let val = localStorage.getItem(\"roleID\");\r\n if (val) {\r\n if (+val == 3 || +val == 10 || +val == 24) {\r\n return true;\r\n } else {\r\n return false\r\n }\r\n } else {\r\n return false;\r\n }\r\n }\r\n get sidebarwrapper(): string {\r\n const isLogin = localStorage.getItem('userID');\r\n if (isLogin) {\r\n return \"sidebar-wrapper\";\r\n }\r\n else {\r\n return \"\";\r\n }\r\n }\r\n get getUserName(): string {\r\n return localStorage.getItem('displayname');\r\n }\r\n get getRoleID(): string {\r\n return localStorage.getItem('roleID');\r\n }\r\n get UserID(): string {\r\n return localStorage.getItem('userID');\r\n }\r\n get BankBranchID(): string {\r\n return localStorage.getItem('BankBranchID');\r\n }\r\n get getAdroitOffice(): string {\r\n return localStorage.getItem('AdroitOffice');\r\n }\r\n get getqc_permission(): boolean {\r\n const permission= localStorage.getItem('qc_permission');\r\n if (permission=='True') {\r\n return true;\r\n }\r\n else {\r\n return false;\r\n }\r\n }\r\n get getedit_report(): boolean {\r\n const edit= localStorage.getItem('edit_report');\r\n if (edit=='True') {\r\n return true;\r\n }\r\n else {\r\n return false;\r\n }\r\n }\r\n get getIsBankLogin (): boolean {\r\n const permission= localStorage.getItem('IsBankLogin');\r\n if (permission=='True') {\r\n return false;\r\n }\r\n else {\r\n return true;\r\n }\r\n }\r\n // localStorage.setItem(\"BankBranchID\", data.BankBranchID);\r\n}\r\n const APIURL: string = \"http://adroitvaluation.in:8087//\";\r\n//export const APIURL: string = \"http://192.168.1.231:85//\";\r\n\r\n\r\n","export class IUserLogin {\r\n loginid: string = \"\";\r\n password: string = \"\";\r\n}\r\nexport class UdetailField {\r\n userDetail: string = \"\";\r\n userID: string = \"\";\r\n}\r\nexport interface IcaseFee {\r\n LoginID: string;\r\n BankID: string;\r\n CaseTypeID: string;\r\n ZoneID: string;\r\n BranchID: string;\r\n VerticalID: string;\r\n}\r\nexport interface Idocdetail{\r\n Case_id:string;\r\n LoginID:string;\r\n Type:string;\r\n}\r\nexport interface IUpdateStatus {\r\n Case_id: string;\r\n CaseStatus: string;\r\n statusRemark: string;\r\n Assignto: string;\r\n Message: string;\r\n LoginID: string\r\n}\r\n\r\nexport interface IGridInput {\r\n LoginID: string;\r\n RoleID: string;\r\n UserBankBranch: string;\r\n SelectedBankID: string;\r\n SelectedBranchID: string;\r\n CaseStage: string;\r\n ValuationType: string;\r\n qid: string;\r\n}\r\nexport interface IBankDetail {\r\n userid: string;\r\n BankID: string;\r\n BranchID: string;\r\n RoleID: string;\r\n GetType: string;\r\n}\r\nexport interface IUpdateAddress {\r\n CaseID: string;\r\n StateID: string;\r\n CityID: string;\r\n SubLocality: string;\r\n Locality: string;\r\n Pincode: string;\r\n PropertyNo: string;\r\n PropertyValueN:string;\r\n Block: string;\r\n Sector: string;\r\n Building: string;\r\n Streat: string;\r\n AddressSite: string;\r\n AddressTRF: string;\r\n AddressDOC: string;\r\n usage:string;\r\n propertytype:string;\r\n Documents:string;\r\n ApplicantName:string;\r\n}\r\nexport interface IUpdateFormatNotCompatable {\r\n CaseID: string;\r\n Usage: string;\r\n PropertyType: string;\r\n YearC: string;\r\n VMethod: string;\r\n MinRate: string;\r\n MaxRate: string;\r\n RateAdopted:string;\r\n FMV: string;\r\n ExtraRemark: string;\r\n Latitude: string;\r\n Longitude: string;\r\n}\r\nexport interface IFactorDetails {\r\n CaseID: string;\r\n Type: string;\r\n}\r\nexport interface IftvDetails {\r\n details: any;\r\n}\r\nexport interface IValuationEstimate {\r\n CaseID: string;\r\n Type: string;\r\n}\r\nexport interface IUpdateFactorDetails {\r\n CaseID: string;\r\n FactorApiTag: string;\r\n FactorName: string;\r\n available: string;\r\n dbcol: string;\r\n distnce: string;\r\n fcount: string;\r\n vicname: string;\r\n type: string;\r\n}\r\nexport interface IQCreference {\r\n state: string;\r\n city: string;\r\n location: string;\r\n sublocation: string;\r\n propertytype: string;\r\n}\r\nexport interface IWebClowl {\r\n sublocation: string;\r\n propertytype: string;\r\n}\r\nexport interface ICaseDeal{\r\n CaseID: string;\r\n CaseUID:string;\r\n}\r\n\r\nexport interface IBrokerDetails {\r\n Type: string;\r\n CaseID: string;\r\n Broker_name1: string;\r\n Broker_mobile1: string;\r\n Broker_quote1_min: string;\r\n Broker_quote1_max: string;\r\n Broker_name2: string;\r\n Broker_mobile2: string;\r\n Broker_quote2_min: string;\r\n Broker_quote2_max: string;\r\n}\r\nexport interface IPageOsvPageTagDetails {\r\n CaseID: string;\r\n Type: string;\r\n Stage: string;\r\n officeID: string;\r\n}\r\n\r\nexport interface ISaveOsvTagData {\r\n CaseID: string;\r\n Stage: string;\r\n Data: any;\r\n}\r\nexport interface ISaveFtvsurroundData{\r\n CaseID: string;\r\n Type:string;\r\n Value :any;\r\n}\r\nexport interface ISuperPropertyDetails {\r\n CaseID: string;\r\n Type: string;\r\n Stage: string;\r\n}\r\nexport interface ISuperaccomdeationDetails {\r\n CaseID: string;\r\n Floor: string;\r\n Room: string;\r\n Accommodation_Details: string;\r\n Kitchen: string;\r\n Toilet: string;\r\n loby: string;\r\n SittingRoom: string;\r\n Hall: string;\r\n DiningHall: string;\r\n Other: string;\r\n}\r\nexport interface ISuperPropertyDetailsUpdate {\r\n Basement: string;\r\n Stilt: string;\r\n LG: string;\r\n UG: string;\r\n Ground: string;\r\n Mazz: string;\r\n Floor: string;\r\n LocationFloor: string;\r\n LocFloor: string;\r\n Plot_area_act: string;\r\n Plot_area_doc: string;\r\n Plot_area_approved: string;\r\n CarpetArea: string;\r\n Loading: string;\r\n Builtup: string;\r\n WheatherCompoundable: string;\r\n PropertyRemark: string;\r\n Yearofcompleation: string;\r\n Ageofproperty: string;\r\n BuildingCondition: string;\r\n FutureLife: string;\r\n NAConstruction: string;\r\n CaseID: string;\r\n Propertytype: string;\r\n UserID: string;\r\n PropertyUsage:string;\r\n TotFloor:string;\r\n}\r\nexport interface IAreaDetails{\r\n CaseID :string;\r\n OwnerName :string;\r\n Address :string;\r\n PlotNo :string;\r\n PropertyAreaApproved :string;\r\n PropertyAreaDoc :string;\r\n frontSetback :string;\r\n Side1Setback :string;\r\n Side2Setback :string;\r\n Rear :string;\r\n EastBoundary :string;\r\n WestBoundary :string;\r\n NorthBoundary :string;\r\n SouthBoundary :string;\r\n LoginID :string;\r\n\r\n}\r\nexport interface IsendMail{\r\n caseId :string;\r\n EmailTo :string;\r\n Sublect :string;\r\n ApplicantName :string;\r\n Body :string;\r\n LoginID :string;\r\n BankID :string;\r\n type:string;\r\n\r\n}\r\nexport interface IsgetMail{\r\n caseid :string;\r\n type:string;\r\n}\r\nexport interface IsgetMailftv{\r\n caseid :string;\r\n type:string;\r\n ApplicantName:string\r\n}\r\nexport interface IupdateValuationDetails {\r\n CaseID: string;\r\n CheckBoxvalue: string;\r\n Propertyscore: string;\r\n MinRate: string;\r\n MaxRate: string;\r\n RateAdpoted: string;\r\n propertyArea: string;\r\n FMV: string;\r\n Type: string;\r\n ValuationType: string;\r\n applicablerate:string;\r\n BuiltupArea:string;\r\n remark:string;\r\n FRCDDL:string;\r\n FRCVALUE:string;\r\n RelizableDDL:string;\r\n RelizableValue:string;\r\n qcDatedone:string;\r\n BasementFTV: string;\r\n StiltFTV: string;\r\n LG: string;\r\n UG: string;\r\n Ground: string;\r\n MAZZ: string;\r\n TotalFllorFTV: string;\r\n LocationFloorFTV: string;\r\n Age_of_property:string;\r\n LoginID:string;\r\n}\r\nexport interface GetFairMarketValue {\r\n CaseID: string;\r\n areaadopted: string;\r\n Rateadropted: string;\r\n}\r\nexport interface ISupPropertydetailsOther {\r\n CaseID: string,\r\n Type: string,\r\n Stage: string\r\n}\r\nexport interface UpdateDataForGrid {\r\n CaseID: string;\r\n Type: string;\r\n watermark: string;\r\n casecreatedfrom: string;\r\n UserID: string;\r\n Remark: string;\r\n Supervisor: string;\r\n RoleID: string;\r\n}\r\n\r\nexport interface IupdateOtherData {\r\n UserID: string,\r\n General_Remarks: string,\r\n extra_remark: string,\r\n location_floor: string,\r\n Broker_name: string,\r\n Broker_mobile: string,\r\n Broker_quote: string,\r\n Broker_name2: string,\r\n Broker_mobile2: string,\r\n Broker_quote2: string,\r\n ValuationResult: string,\r\n visit_date: string,\r\n qcDatedone: string,\r\n report_mode: string,\r\n Latitude: string,\r\n longitude: string,\r\n MV_Decrease: string,\r\n caseID:string,\r\n PlinthValue:number,\r\n PlinthRemarks:string,\r\n RCCGroundValue:number,\r\n RCCGroundRemarks:string,\r\n BrickworkValue:number,\r\n BrickworkRemarks:string,\r\n InPlasterValue:number,\r\n InPlasterRemarks:string,\r\n ExPlasterValue:number,\r\n ExPlasterRemarks:string\r\n FlooringValue:number,\r\n FlooringRemarks:string\r\n PlumpingValue:number,\r\n PlumpingRemarks:string,\r\n DoorwindowValue:number,\r\n DoorwindowRemarks:string,\r\n PossessionValue:number,\r\n PossessionRemarks:string,\r\n TotalPresentValue:number,\r\n}\r\nexport interface IFtpImage {\r\n CaseID: string,\r\n Image_tag_Name: string,\r\n ImageName: string,\r\n Latitude: string,\r\n Longitude: string,\r\n TimestampDate: string,\r\n ImgData: string\r\n}\r\nexport interface IBankTagData {\r\n BankID: string;\r\n OfficeID: string;\r\n TagID: string;\r\n tagname: string;\r\n Tagseq: string;\r\n}\r\nexport interface Ibylaws {\r\n caseid: string;\r\n area: string\r\n}\r\nexport interface IGetCityLocation {\r\n StateID: string,\r\n CityID: string,\r\n LocID: string,\r\n GetType: string,\r\n}\r\nexport interface IUsage {\r\n type: string,\r\n ID: string,\r\n CaseID: string\r\n}\r\nexport interface IupdateProfile {\r\n userName: string;\r\n displayName: string;\r\n role: string;\r\n mobile: string;\r\n email: string;\r\n address: string;\r\n oldPassword: string;\r\n newPassword: string;\r\n confirmPassword: string;\r\n loginid: string;\r\n Type: string;\r\n}\r\nexport interface getStage {\r\n Type: string,\r\n valType: string\r\n}\r\nexport interface searchOldCases {\r\n Applicant_Name?: string,\r\n Property_No?: string,\r\n Building_No?: string,\r\n Street_Sector?: string,\r\n Land_mark?: string,\r\n City?: string,\r\n Contact_Persion_Mob1?: string,\r\n Contact_Persion_Mob2?: string\r\n}\r\nexport interface ICaseCreate {\r\n CaseID:string,\r\n Bank_id: string,\r\n Block: string,\r\n branch_id: string,\r\n person_id: string,\r\n ValuationTypeID: string,\r\n ApplicantName_Name: string,\r\n propertyno: string,\r\n BuildingNo: string,\r\n Streat: string,\r\n landmark: string,\r\n state_id: string,\r\n City_id: string,\r\n Locality_id: string,\r\n SubLocality_id: string,\r\n pincode: string,\r\n distict: string,\r\n ContactPersonName: string,\r\n Mob1: string,\r\n Mob2: string,\r\n vertical: string,\r\n casetype: string,\r\n Assignto: string,\r\n Case_statusID: string,\r\n supervisorID: string,\r\n StatusRemark: string,\r\n FileNo: string,\r\n Area: string,\r\n CaseRemark: string,\r\n Document_id: string,\r\n LoginID: string,\r\n OldCaseID: string,\r\n ActualFees: string,\r\n ExtraFees: string,\r\n TotalFees: string,\r\n\r\n ApprovalPersonName: string,\r\n ApprovalContact: string,\r\n ApprovalDocPath: string,\r\n Conveyance: string,\r\n AssignType: string,\r\n Operation: string,\r\n ApplicanttitleN: string;\r\n Applicant_nameN: string;\r\n Property_titleN: string;\r\n PropertyValueN: string;\r\n BuildingNameN: string;\r\n StreatRoadN: string;\r\n SectorN: string;\r\n usage:string;\r\n propertytype:string;\r\n PaymentType:string;\r\n Zone_id:string;\r\n Vertical_id:string;\r\n ENgConv:string;\r\n Approval_Remarks:string;\r\n FeesType:string;\r\n ExtraEngConv:string;\r\n ExtraEngConvRemark:string;\r\n IsOtherOffice:string;\r\n OtherOffice:string;\r\n adroitbranch:string;\r\n}\r\n\r\nexport interface ICaseCreateSBFC {\r\n CaseID:string,\r\n Bank_id: string,\r\n Block: string,\r\n branch_id: string,\r\n person_id: string,\r\n ValuationTypeID: string,\r\n ApplicantName_Name: string,\r\n propertyno: string,\r\n BuildingNo: string,\r\n Streat: string,\r\n landmark: string,\r\n state_id: string,\r\n City_id: string,\r\n Locality_id: string,\r\n SubLocality_id: string,\r\n pincode: string,\r\n distict: string,\r\n ContactPersonName: string,\r\n Mob1: string,\r\n Mob2: string,\r\n vertical: string,\r\n casetype: string,\r\n Assignto: string,\r\n Case_statusID: string,\r\n supervisorID: string,\r\n StatusRemark: string,\r\n FileNo: string,\r\n Area: string,\r\n CaseRemark: string,\r\n Document_id: string,\r\n LoginID: string,\r\n OldCaseID: string,\r\n ActualFees: string,\r\n ExtraFees: string,\r\n TotalFees: string,\r\n\r\n ApprovalPersonName: string,\r\n ApprovalContact: string,\r\n ApprovalDocPath: string,\r\n Conveyance: string,\r\n AssignType: string,\r\n Operation: string,\r\n ApplicanttitleN: string;\r\n Applicant_nameN: string;\r\n Property_titleN: string;\r\n PropertyValueN: string;\r\n BuildingNameN: string;\r\n StreatRoadN: string;\r\n SectorN: string;\r\n usage:string;\r\n propertytype:string;\r\n PaymentType:string;\r\n Zone_id:string;\r\n Vertical_id:string;\r\n ENgConv:string;\r\n Approval_Remarks:string;\r\n FeesType:string;\r\n ExtraEngConv:string;\r\n ExtraEngConvRemark:string;\r\n IsOtherOffice:string;\r\n OtherOffice:string;\r\n adroitbranch:string;\r\n FileNoOrignal:any;\r\n}\r\n\r\nexport interface Idocumentlist{\r\n CaseID:string,\r\n Document_id: string\r\n}\r\n\r\nexport interface IFairMarketValue {\r\n CaseID: string;\r\n landarea: string;\r\n totalbuilduparea: string;\r\n areaadopted: string;\r\n applicablerateofland: string;\r\n currentMarketVal: string\r\n valuelandshare: string;\r\n applicablerate: string;\r\n valofConstruction_ACT: string;\r\n valofConstruction_Per: string;\r\n CompositeRate: string;\r\n FairMarketValueofproperty: string;\r\n ValueofAmenities: string;\r\n FairMarketValuewithAmenities: string;\r\n MarketValueofProperty: string;\r\n RentalValue: string;\r\n Forced_Sale_Value: string;\r\n Forced_Sale_ValueDDL:string;\r\n RealizableValueDDL: string;\r\n Realizable_Value: string;\r\n Insurable_value: string;\r\n ProposedAreaOfConstruction: string;\r\n ProposedRateFuConstruction: string;\r\n EstimateRecommended: string;\r\n NetMarketValue: string;\r\n Govt_Approved_Rate: string;\r\n Subdivision: string;\r\n Resalability: string;\r\n Rentability: string;\r\n FairMarketType: string;\r\n DapriciationValue: string;\r\n PropertyType: string;\r\n ddlValueLandshare: string;\r\n MinRate: string;\r\n MaxRate: string;\r\n UserID: string;\r\n construction_rate:string;\r\n LandShareDDL:string;\r\n recknor_rate:string;\r\n Future_Construction:string;\r\n Future_Construction_Stage:string;\r\n Future_Constructionon_onDate:string;\r\n Future_Construction_onCompletion:string;\r\n Amenities_Remark:string;\r\n fairMarketvalue_onDate:string;\r\n\r\n}\r\n\r\nexport interface ICaseSearch {\r\n keyword:string,\r\n fromdate:string,\r\n todate:string,\r\n Mobile:string,\r\n bankid: string,\r\n bankbranchid:string,\r\n branchpersion:string,\r\n state: string,\r\n city: string,\r\n location: string,\r\n status: string,\r\n qcfrom:string,\r\n qcto:string,\r\n eng: string,\r\n Supervisor: string,\r\n propAdd: string,\r\n userid:string,\r\n RoleID: string\r\n \r\n}\r\nexport interface Deletedoc{\r\n FilePath:string, \r\n Type:string, \r\n Case_id:string, \r\n Status:string, \r\n Message:string,\r\n LoginID:string \r\n}\r\nexport interface moveImage{\r\n Case_id:string, \r\n SFolder:string, \r\n SFileName:string, \r\n DFolder:string, \r\n LoginID:string\r\n}","module.exports = \"\\r\\n\\r\\n
      \\r\\n
    • \\r\\n Property Details\\r\\n
    • \\r\\n
    • \\r\\n Infrastructure Details\\r\\n
    • \\r\\n
    • \\r\\n Catchment Area Analysis\\r\\n
    • \\r\\n
    • \\r\\n Valuation Estimate\\r\\n
    • \\r\\n\\r\\n
    • \\r\\n \\r\\n Case Detail\\r\\n
    • \\r\\n
    \\r\\n\\r\\n\\r\\n
    \\r\\n\\r\\n\\r\\n

    Factor

    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    Point Of InterestAvailabilitycountNearestNearest Distance In MeterAction
    {{grid.FactorName}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n Open\\r\\n Map\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n

    Catchment Area

    \\r\\n Inner circle radius 200 Mrt. Outer circle radius 500 Mrt. \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    {{ModalTitle}}
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n Customer Details\\r\\n \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n\\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n\\r\\n\"","import { Component, OnInit, Renderer2, ElementRef, ViewChild, Input, EventEmitter, Directive } from '@angular/core';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { ApiService } from '../service/service';\r\nimport { SessionService } from '../service/sessionGlobalVar';\r\nimport { IUpdateFactorDetails, IFactorDetails, IftvDetails,ISaveFtvsurroundData } from '../service/type'\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { } from 'googlemaps';\r\nimport Swal from 'sweetalert2';\r\ndeclare var $: any;\r\ndeclare var google: any;\r\n\r\n@Component({\r\n selector: 'app-sup-edit-ftv',\r\n templateUrl: './sup-edit-ftv.component.html',\r\n styleUrls: []\r\n})\r\nexport class SupEditFtvComponent implements OnInit {\r\n Latitude: string;\r\n Longitude: string;\r\n caseID: string = \"\";\r\n GridDetail: any;\r\n IsEditStatus: boolean = true;\r\n @ViewChild('map') mapElement: any;\r\n map: google.maps.Map;\r\n countVal = [];\r\n factorDetails: IUpdateFactorDetails[] = [];\r\n pageTypeValue: string;\r\n valuationID: string;\r\n type: string = \"\";\r\n showInfrasture: boolean = true;\r\n modelPopUp: boolean = false;\r\n surroundingstatus:string=\"\";\r\n historicalData: boolean = false;\r\n ModalTitle: string;\r\n HistoricalData: any;\r\n CaseUid:string;\r\n App_Name:string;\r\n Property_Numb:string;\r\n Build_no:string;\r\n Landmark:string;\r\n streat:string;\r\n state:string;\r\n city:string;\r\n location:string;\r\n case_Type:string;\r\n file_no:string;\r\n document_details:string;\r\n rate:string;\r\n unit:string;\r\n case_status:string;\r\n eng:string;\r\n Sublocation:string;\r\n docurl:string;\r\n getdocurl :any;\r\n getcustomerdocurl:any;\r\n constructor(private router: Router, private service: ApiService, private session: SessionService, private ngxService: NgxUiLoaderService, private renderer: Renderer2, private el: ElementRef, private route: ActivatedRoute) { }\r\n ngOnInit() {\r\n for (let i = 0; i <= 50; i++) {\r\n this.countVal.push(i);\r\n }\r\n this.route.params.subscribe(params => {\r\n if (params.id) {\r\n const id = window.atob(params.id);\r\n this.caseID = id;\r\n if (params.type) {\r\n this.pageTypeValue = params.type;\r\n if (this.pageTypeValue == \"CatchMent\") {\r\n this.type = \"C\";\r\n this.showInfrasture = false;\r\n }\r\n else if (this.pageTypeValue == \"Infracture\") {\r\n this.type = \"I\"\r\n this.showInfrasture = true;\r\n }\r\n this.ActiveTab();\r\n }\r\n if (params.valuation == 2) {\r\n this.valuationID = params.valuation;\r\n }\r\n this.getFactorPointDetails(id);\r\n this.getGioLocation();\r\n this. getFtvsurrounding();\r\n } else {\r\n Swal.fire('Oops...', 'Something went wrong!', 'error');\r\n }\r\n });\r\n }\r\n ActiveTab() {\r\n let value = document.getElementById(\"liCatch\");\r\n let liInfra = document.getElementById(\"liInfra\");\r\n if (this.pageTypeValue == \"CatchMent\") {\r\n liInfra.classList.remove(\"headerActive\")\r\n value.classList.add(\"headerActive\");\r\n }\r\n else if (this.pageTypeValue == \"Infracture\") {\r\n value.classList.remove(\"headerActive\");\r\n liInfra.classList.add(\"headerActive\");\r\n }\r\n }\r\n showMap(e: any) {\r\n debugger;\r\n if (this.Latitude && this.Longitude ) {\r\n this.modelPopUp = true;\r\n $(\"#map111\").show();\r\n const type = e;\r\n initialize(type);\r\n \r\n } else {\r\n Swal.fire(\"Oops\", \"Location Not Found\", \"info\");\r\n }\r\n }\r\n hideMap() {\r\n this.modelPopUp = false;\r\n $(\"#map111\").hide();\r\n }\r\n \r\n getFactorPointDetails(caseID: string) {\r\n this.ngxService.start();\r\n caseID = this.caseID;\r\n let data: IFactorDetails = {\r\n Type: this.type,\r\n CaseID: this.caseID\r\n }\r\n ApiService.GetFacorPointDetails(data).then((responce: any) => {\r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n this.GridDetail = responce.data;\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n getGioLocation() {\r\n ApiService.getGioLocation(this.caseID).then((responce: any) => {\r\n if (responce.status === 200) { \r\n if (responce.data.Latitude && responce.data.Longitude) {\r\n this.Latitude = responce.data.Latitude;\r\n this.Longitude = responce.data.Longitude;\r\n $(\"#inptLat\").val(responce.data.Latitude)\r\n $(\"#inptlog\").val(responce.data.Longitude)\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n console.log(\"Getting Error in Gio Location\");\r\n });\r\n }\r\n btnSave() {\r\n \r\n this.savesurrounding();\r\n const caseID = this.caseID;\r\n let UpdateFtvData = [];\r\n let type = this.type;\r\n $(\"#example1 tbody tr\").each(function (index, val) {\r\n (val.children[4].firstElementChild).value\r\n let value: IUpdateFactorDetails = {\r\n CaseID: caseID,\r\n FactorApiTag: \"\",\r\n FactorName: val.children[0].innerHTML,\r\n available: (val.children[1].firstElementChild).value,\r\n dbcol: (val.children[5].firstElementChild).value,\r\n distnce: (val.children[4].firstElementChild).value,\r\n fcount: (val.children[2].firstElementChild).value,\r\n vicname: (val.children[3].firstElementChild).value,\r\n type: type\r\n }\r\n UpdateFtvData.push(value);\r\n\r\n });\r\n\r\n const val = window.btoa(this.caseID);\r\n let data: IftvDetails = {\r\n details: UpdateFtvData\r\n }\r\n ApiService.UpdateFtvFactorData(data).then((responce: any) => {\r\n if (responce.status === 200) {\r\n Swal.fire('Thanks...', 'Update Data Successfully', 'success');\r\n // const data = window.btoa(this.caseID);\r\n this.router.navigate([\"/SupFtvFinalValuation\", { id: val, valuation: this.valuationID }]);\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n // this.router.navigate([\"/SupFtvFinalValuation\", { id: val, valuation: this.valuationID }]);\r\n // Swal.fire('Thanks...', 'Update Data Successfully', 'success');\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n\r\n }\r\n closeModel() {\r\n $(\"#modelShowData\").hide();\r\n }\r\n showHistoricalData() {\r\n this.historicalData = true;\r\n // this.webcrowlData = false;\r\n this.ModalTitle = \"Case Details\"\r\n $(\"#modelShowData\").show();\r\n \r\n this.ngxService.start();\r\n \r\n ApiService.FTVCasedocdetails(this.caseID).then((responce: any) => {\r\n \r\n if (responce.status == 200) {\r\n if (responce.data) {\r\n // this.HistoricalData = responce.data;\r\n this.CaseUid= responce.data.CaseUID;\r\n this.App_Name=responce.data.Applicant_Name;\r\n this.Property_Numb=responce.data.Property_No;\r\n this.Build_no=responce.data.Building_No;\r\n this.Landmark=responce.data.Land_mark;\r\n this.streat=responce.data.Street_Sector;\r\n this.state=responce.data.statename;\r\n this.city=responce.data.cityname;\r\n this.location=responce.data.LocationName;\r\n this.case_Type=responce.data.typeofcasename;\r\n this.document_details=responce.data.Documents;\r\n this.file_no=responce.data.File_No;\r\n this.rate=responce.data.TotalFees;\r\n this.unit=responce.data.Block;\r\n this.case_status=responce.data.CaseStatusname;\r\n this.eng=responce.data.engName;\r\n this.Sublocation=responce.data.SubLocationname;\r\n this.getdocurl=responce.data.CaseDoc;\r\n for (const Dvalue in responce.data.CaseDoc) {\r\n let docValss = {\r\n url: this.getdocurl[Dvalue].url,\r\n name: this.getdocurl[Dvalue].name\r\n }\r\n this.getdocurl[Dvalue] = docValss;\r\n }\r\n this.getcustomerdocurl=responce.data.CustomerDoc;\r\n for (const Dvalue in responce.data.CustomerDoc) {\r\n let docValss = {\r\n url: this.getcustomerdocurl[Dvalue].url,\r\n name: this.getcustomerdocurl[Dvalue].name\r\n }\r\n this.getcustomerdocurl[Dvalue] = docValss;\r\n }\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n\r\n getFtvsurrounding() {\r\n this.ngxService.start();\r\n let val: ISaveFtvsurroundData = {\r\n CaseID: this.caseID,\r\n Type: \"get\",\r\n Value:\"\"\r\n }\r\n ApiService.GetFTVsurrounding(val).then((responce: any) => {\r\n \r\n if (responce.status == 200) {\r\n if (responce.data) {\r\n this.surroundingstatus = responce.data.Value;\r\n // this.fillValuationData();\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\nsavesurrounding(){\r\n \r\n this.ngxService.start();\r\n\r\n const data: ISaveFtvsurroundData = {\r\n \r\n CaseID: this.caseID,\r\n Type:\"update\",\r\n Value:this.surroundingstatus\r\n \r\n }\r\n this.ngxService.start();\r\n ApiService.FTVsurrounding(data).then((responce: any) => {\r\n \r\n if (responce.status == 200) {\r\n // this.getFtvFinalValuationData();\r\n // Swal.fire('Thanks', 'Broker Details Save Successfully', 'success');\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n}\r\n\r\n //Top Header Function\r\n\r\n PropertyDetails(e: any) {\r\n const data = window.btoa(this.caseID);\r\n this.router.navigate([\"/UpdateAddress\", { id: data, valuation: this.valuationID }]);\r\n }\r\n InfractureDetails(e: any) {\r\n const data = window.btoa(this.caseID);\r\n this.router.navigate([\"/SupEditFtv\", { id: data, valuation: this.valuationID, type: \"Infracture\" }]);\r\n }\r\n CatchMentAnalysis(e: any) {\r\n const data = window.btoa(this.caseID);\r\n this.router.navigate([\"/SupEditFtv\", { id: data, valuation: this.valuationID, type: \"CatchMent\" }]);\r\n }\r\n Valuation(e: any) {\r\n const data = window.btoa(this.caseID);\r\n this.router.navigate([\"/SupFtvFinalValuation\", { id: data, valuation: this.valuationID }]);\r\n }\r\n}\r\nlet map;\r\nlet service;\r\nlet infowindow;\r\nlet pyrmont;\r\n\r\nfunction initialize(type: string) {\r\n const lat = $(\"#inptLat\").val();\r\n const lot = $(\"#inptlog\").val();\r\n pyrmont = new google.maps.LatLng(lat, lot);\r\n map = new google.maps.Map(document.getElementById('map'), {\r\n center: pyrmont,\r\n zoom: 15,\r\n backgroundColor: \"blue\"\r\n });\r\n let request = {\r\n location: pyrmont,\r\n radius: '500', \r\n type: [type.toLocaleLowerCase()]\r\n };\r\n service = new google.maps.places.PlacesService(map);\r\n service.nearbySearch(request, callback);\r\n var circle = new google.maps.Circle({\r\n center: pyrmont,\r\n map: map,\r\n radius: 200, // IN METERS.\r\n fillColor: '#FF0000',\r\n fillOpacity: 0.3,\r\n strokeColor: \"#FF0000\",\r\n strokeWeight: 2,\r\n });\r\n var circle = new google.maps.Circle({\r\n center: pyrmont,\r\n map: map,\r\n radius: 500, // IN METERS.\r\n fillColor: '#FF0000',\r\n fillOpacity: 0.3,\r\n strokeColor: \"#FF0000\",\r\n strokeWeight: 2,\r\n });\r\n\r\n}\r\n\r\nfunction callback(results, status) {\r\n if (status == google.maps.places.PlacesServiceStatus.OK) {\r\n for (let i = 0; i < results.length; i++) {\r\n let place = results[i];\r\n createMarker(results[i],\"palace\");\r\n }\r\n createMarker(\"\",\"mainPoint\");\r\n }\r\n}\r\nfunction createMarker(place,type:string) {\r\n let marker \r\n if(type==\"palace\"){\r\n marker = new google.maps.Marker({\r\n map: map,\r\n position: place.geometry.location,\r\n title: place.name\r\n });\r\n }else{\r\n marker = new google.maps.Marker({\r\n map: map,\r\n position: pyrmont,\r\n title: \"Centre Your Position\",\r\n icon:\"../assets/images/icons8-marker-52.png\"\r\n });\r\n }\r\n google.maps.event.addListener(marker, 'click', function () {\r\n infowindow.setContent(place.name);\r\n infowindow.open(map, this);\r\n\r\n });\r\n\r\n\r\n}","module.exports = \"
    \\r\\n
      \\r\\n \\r\\n
    • \\r\\n Genral Details 1\\r\\n
    • \\r\\n
    • \\r\\n Genral Details 1\\r\\n
    • \\r\\n
    \\r\\n
    \\r\\n\"","import { Component, OnInit, Renderer2, ElementRef, Output, Input, EventEmitter, Directive } from '@angular/core';\r\nimport { Router , ActivatedRoute} from '@angular/router';\r\nimport { ApiService } from '../service/service';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { SessionService } from '../service/sessionGlobalVar';\r\nimport { IGridInput, IGetCityLocation, IUpdateStatus, getStage } from '../service/type'\r\nimport { analyzeAndValidateNgModules } from '@angular/compiler';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport Swal from 'sweetalert2';\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: 'app-sup-edit',\r\n templateUrl: './sup-edit.component.html',\r\n styleUrls: []\r\n})\r\nexport class SupEditComponent implements OnInit {\r\n\r\n constructor( private route: ActivatedRoute , private router: Router, private service: ApiService, private session: SessionService, private ngxService: NgxUiLoaderService, private renderer: Renderer2, private el: ElementRef) { }\r\n\r\n ngOnInit() {\r\n if (!this.session.isLoggedIn) {\r\n this.router.navigate([\"Login\"]);\r\n }\r\n this.route.params.subscribe(params => {\r\n if (params.id) {\r\n // this.isEditCase = true;\r\n const id = window.atob(params.id);\r\n // this.GetEditCaseDetail(id);\r\n }\r\n });\r\n }\r\n\r\n}\r\n","module.exports = \"
      \\r\\n
    • \\r\\n Property Details\\r\\n
    • \\r\\n
    • \\r\\n Infrastructure Details\\r\\n
    • \\r\\n
    • \\r\\n Catchment Area Analysis\\r\\n
    • \\r\\n
    • \\r\\n Valuation Estimate\\r\\n
    • \\r\\n
    • \\r\\n Image View\\r\\n
    • \\r\\n\\r\\n
    • \\r\\n \\r\\n Case Detail\\r\\n
    • \\r\\n
    \\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n\\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n \\r\\n\\r\\n\\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n


    \\r\\n \\r\\n \\r\\n\\r\\n\\r\\n\\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n \\r\\n Historical Data\\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n View\\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n Web Crowl Data\\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n View\\r\\n
    \\r\\n\\r\\n
    \\r\\n\\r\\n\\r\\n
    \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n\\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n\\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n\\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n\\r\\n
    \\r\\n\\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n\\r\\n
    \\r\\n

    Broker Details 1

    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n

    Broker Details 2

    \\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n
    \\r\\n\\r\\n \\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
      \\r\\n

    • \\r\\n \\r\\n
    • \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    Property TypeProp DescriptionPriceAreaRate(sqrt)Date
    {{grid.Property_type}}{{grid.Prop_description}}{{grid.Price}}{{grid.area}}{{grid.Rate_Pr_Sqft}}{{grid.Added_on}}
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n\\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    Property TypeAddressMarketRateMinMarketRateMaxCreated On
    {{grid.propertytype}}{{grid.address}}{{grid.MarketRateMin}}{{grid.MarketRateMax}}{{grid.CreatedOn}}
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    {{ModalTitle1}}
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n Customer Details\\r\\n \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \"","import { Component, OnInit, Renderer2, ElementRef, ViewChild, Input, EventEmitter, Directive } from '@angular/core';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { ApiService } from '../service/service';\r\nimport { FormBuilder, FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { SessionService } from '../service/sessionGlobalVar';\r\nimport { IQCreference, IWebClowl, IValuationEstimate, GetFairMarketValue, IBrokerDetails, IupdateValuationDetails } from '../service/type'\r\nimport { analyzeAndValidateNgModules } from '@angular/compiler';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport Swal from 'sweetalert2';\r\ndeclare var $: any;\r\n\r\n\r\n@Component({\r\n selector: 'app-sup-ftv-final-valuation',\r\n templateUrl: './sup-ftv-final-valuation.component.html',\r\n styleUrls: []\r\n})\r\nexport class SupFtvFinalValuationComponent implements OnInit {\r\n\r\n isValidFormSubmitted: boolean = null;\r\n userForm = new FormGroup({\r\n uname: new FormControl('', Validators.required)\r\n // gender: new FormControl('', Validators.required),\r\n });\r\n HistoricalData: any;\r\n caseID: string;\r\n Gridwebcrowl: any;\r\n\r\n historicalData: boolean = false;\r\n webcrowlData: boolean = false;\r\n showValuationPage: boolean = true;\r\n valuationID: string;\r\n valuationEstimateData: any;\r\n getAllImage: any;\r\n historicalMin: number = 0;\r\n historicalMax: number = 0;\r\n historicalRate: number = 0;\r\n minvalue: string;\r\n webCrowlMin: number = 0;\r\n webCrowlMax: number = 0;\r\n webCrowlRate: number = 0;\r\n BuiltupArea: string;\r\n applicablerate: string;\r\n BrokerMInRate: number = 0;\r\n BrokerMaxRate: number = 0;\r\n BrokerRate: number = 0;\r\n PropertyType: string;\r\n IsCompositeField: boolean = false;\r\n IsLandBuildField: boolean = false;\r\n showBrokerPopUp: boolean = false;\r\n Compositet: boolean = false;\r\n radioSel: any;\r\n radioSelectedString: string;\r\n radioSelected: string;\r\n BrokerName: string = \"\";\r\n BrokerMobile: string = \"\";\r\n BrokerMax: string = \"\";\r\n BrokerMin: string = \"\";\r\n\r\n BrokerName2: string = \"\";\r\n BrokerMobile2: string = \"\";\r\n BrokerMax2: string = \"\";\r\n BrokerMin2: string = \"\";\r\n\r\n Basement: string = \"\";\r\n Stlit: string = \"\";\r\n TotelFloor: string = \"\";\r\n LocationFloorFTV: string = \"\";\r\n Propertyscore: string = \"\";\r\n MinRate: string = \"\";\r\n MaxRate: string = \"\";\r\n RateAdpoted: string = \"\";\r\n propertyArea: string = \"\"\r\n FairMarketValue: string = \"\";\r\n CheckBoxvalue: string = \"\";\r\n historicalData1: boolean = false;\r\n ModalTitle1: string;\r\n HistoricalData1: any;\r\n CaseUid: string;\r\n App_Name: string;\r\n Property_Numb: string;\r\n Build_no: string;\r\n Landmark: string;\r\n streat: string;\r\n state: string;\r\n city: string;\r\n location: string;\r\n case_Type: string;\r\n file_no: string;\r\n document_details: string;\r\n rate: string;\r\n unit: string;\r\n case_status: string;\r\n eng: string;\r\n Sublocation: string;\r\n getdocurl: any;\r\n remark: string;\r\n ForcedSaleValue: string = '0';\r\n CalForcedSaleValue: string = '0';\r\n RealizableValue: string = '0';\r\n CalRealizableValue: string = '0';\r\n QCDoneDate:string;\r\n getcustomerdocurl:any;\r\n MBasement: string = \"B\";\r\n MStilt: string = \"S\";\r\n MLG: string = \"LG\";\r\n MUG: string = \"UG\";\r\n MMAZZ: string = \"MAZZ\";\r\n MGround: string = \"G\";\r\n MFloor: string = \"Floor\";\r\n FloorDropDown = []\r\n dropdownList = [];\r\n selectedItems = [];\r\n newSelectedItems = [];\r\n sanactionPlane: string = \"No\";\r\n dropdownSettings = {};\r\n dropdownSettingsProperty = {};\r\n AgeOfproperty:string=\"\";\r\n constructor(private router: Router, private service: ApiService, private session: SessionService, private ngxService: NgxUiLoaderService, private renderer: Renderer2, private el: ElementRef, private route: ActivatedRoute) {\r\n \r\n }\r\n\r\n ngOnInit() {\r\n this.route.params.subscribe(params => {\r\n if (params.id) {\r\n const id = window.atob(params.id);\r\n this.caseID = id;\r\n this.QCReferenceData(id);\r\n this.WebcrollData(id);\r\n this.getFtvFinalValuationData();\r\n this.GetImage();\r\n this.bindFloorDropDown();\r\n this.multiSelectedDropDownLIst();\r\n }\r\n if (params.valuation) {\r\n this.valuationID = params.valuation;\r\n }\r\n });\r\n }\r\n bindFloorDropDown() {\r\n let i = 1;\r\n while (i <= 100) {\r\n const val = { id: i }\r\n this.FloorDropDown.push(val);\r\n i++\r\n }\r\n }\r\n onItemSelect(item: any) {}\r\n onDeSelect(items: any) {\r\n \r\n \r\n }\r\n onDropDownChange() {\r\n this.dropdownList = [];\r\n if (this.MBasement != \"B\") {\r\n for (let p = 1; p <= (+this.MBasement); p++) {\r\n const val = { item_id: 'B' + p + '', item_text: 'B' + p + '' };\r\n this.dropdownList.push(val)\r\n }\r\n }\r\n if (this.MStilt != \"S\") {\r\n if (this.MStilt == \"YES\") {\r\n const val = { item_id: 'S', item_text: 'S' };\r\n this.dropdownList.push(val)\r\n }\r\n }\r\n if (this.MLG != \"LG\") {\r\n if (this.MLG == \"YES\") {\r\n const val = { item_id: 'LG', item_text: 'LG' };\r\n this.dropdownList.push(val)\r\n }\r\n }\r\n if (this.MUG != \"UG\") {\r\n if (this.MUG == \"YES\") {\r\n const val = { item_id: 'UG', item_text: 'UG' };\r\n this.dropdownList.push(val)\r\n }\r\n }\r\n if (this.MMAZZ != \"MAZZ\") {\r\n if (this.MMAZZ == \"YES\") {\r\n const val = { item_id: 'MAZZ', item_text: 'MAZZ' };\r\n this.dropdownList.push(val)\r\n }\r\n }\r\n if (this.MGround != \"G\") {\r\n if (this.MGround == \"YES\") {\r\n const val = { item_id: 'G', item_text: 'G' };\r\n this.dropdownList.push(val)\r\n }\r\n }\r\n if (this.MFloor != \"Floor\") {\r\n for (let p = 1; p <= (+this.MFloor); p++) {\r\n const val = { item_id: 'F' + p + '', item_text: 'F' + p + '' };\r\n this.dropdownList.push(val)\r\n }\r\n }\r\n }\r\n showHistoricalData() {\r\n this.historicalData = true;\r\n this.webcrowlData = false;\r\n this.showBrokerPopUp = false;\r\n }\r\n showCrowlData() {\r\n this.webcrowlData = true;\r\n this.historicalData = false;\r\n this.showBrokerPopUp = false;\r\n }\r\n onChangeValue() {\r\n if (this.MinRate && this.MaxRate) {\r\n this.RateAdpoted = (((+this.MinRate) + (+this.MaxRate)) / 2).toFixed();\r\n if (this.PropertyType == \"Composite\") {\r\n this.FairMarketValue = (((parseInt(this.RateAdpoted) * parseInt(this.propertyArea)) + (((parseInt(this.RateAdpoted) * parseInt(this.propertyArea)) * parseInt(this.Propertyscore)) / 100)).toFixed());\r\n }\r\n else if (this.PropertyType == \"Land Building\") {\r\n this.FairMarketValue = ((((parseInt(this.RateAdpoted) * parseInt(this.propertyArea)) + (parseInt(this.BuiltupArea) * parseInt(this.applicablerate))) + ((((parseInt(this.RateAdpoted) * parseInt(this.propertyArea)) + (parseInt(this.BuiltupArea) * parseInt(this.applicablerate))) * parseInt(this.Propertyscore)) / 100)).toFixed());\r\n }\r\n else {\r\n this.FairMarketValue = (((parseInt(this.RateAdpoted) * parseInt(this.propertyArea)) + (((parseInt(this.RateAdpoted) * parseInt(this.propertyArea)) * parseInt(this.Propertyscore)) / 100)).toFixed());\r\n }\r\n }\r\n\r\n }\r\n saveValuation() {\r\n debugger;\r\n let FloorVal = \"\";\r\n if (this.selectedItems.length > 0) {\r\n for (const val in this.selectedItems) {\r\n FloorVal += this.selectedItems[val].item_text + ',';\r\n }\r\n FloorVal = FloorVal.slice(0, -1);\r\n }\r\n if (this.PropertyType == \"Composite\") {\r\n this.PropertyType = \"Composite\";\r\n } else if (this.PropertyType == \"Land Building\") {\r\n this.PropertyType = \"Land Building\";\r\n } else { this.PropertyType = \"Composite\"; }\r\n const data: IupdateValuationDetails = {\r\n CaseID: this.caseID,\r\n CheckBoxvalue: this.CheckBoxvalue,\r\n Propertyscore: this.Propertyscore,\r\n MinRate: this.MinRate,\r\n MaxRate: this.MaxRate,\r\n RateAdpoted: this.RateAdpoted,\r\n propertyArea: this.propertyArea,\r\n FMV: this.FairMarketValue,\r\n Type: \"Update\",\r\n ValuationType: this.PropertyType,\r\n applicablerate: this.applicablerate,\r\n BuiltupArea: this.BuiltupArea,\r\n remark: this.remark,\r\n FRCDDL: this.ForcedSaleValue,\r\n FRCVALUE: this.CalForcedSaleValue,\r\n RelizableDDL: this.RealizableValue,\r\n RelizableValue: this.CalRealizableValue,\r\n qcDatedone:this.QCDoneDate,\r\n BasementFTV:this.MBasement,\r\n StiltFTV:this.MStilt,\r\n LG:this.MLG,\r\n UG:this.MUG,\r\n MAZZ:this.MMAZZ,\r\n Ground:this.MGround,\r\n TotalFllorFTV:this.MFloor,\r\n LocationFloorFTV:FloorVal,\r\n Age_of_property:this.AgeOfproperty,\r\n LoginID:localStorage.getItem('userID')\r\n }\r\n this.ngxService.start();\r\n console.log(\"the data is\", data);\r\n ApiService.UpdateValuationDetails(data).then((responce: any) => {\r\n if (responce.status == 200) {\r\n Swal.fire('Thanks', 'Valuation Data Save Successfully', 'success');\r\n this.router.navigate([\"SupHome\"]);\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', '444Something went wrong try again!', 'error');\r\n });\r\n }\r\n showBrokerDetails() {\r\n this.showBrokerPopUp = true;\r\n }\r\n saveBroker() {\r\n this.ngxService.start();\r\n\r\n const data: IBrokerDetails = {\r\n Type: \"Update\",\r\n CaseID: this.caseID,\r\n Broker_name1: this.BrokerName,\r\n Broker_mobile1: this.BrokerMobile,\r\n Broker_quote1_min: this.BrokerMin,\r\n Broker_quote1_max: this.BrokerMax,\r\n\r\n Broker_name2: this.BrokerName2,\r\n Broker_mobile2: this.BrokerMobile2,\r\n Broker_quote2_min: this.BrokerMin2,\r\n Broker_quote2_max: this.BrokerMax2\r\n }\r\n this.ngxService.start();\r\n this.calculateBrokerData();\r\n ApiService.saveBrokerDetails(data).then((responce: any) => {\r\n if (responce.status == 200) {\r\n // this.getFtvFinalValuationData();\r\n Swal.fire('Thanks', 'Broker Details Save Successfully', 'success');\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n multiSelectedDropDownLIst() {\r\n this.dropdownSettings = {\r\n singleSelection: false,\r\n idField: 'item_id',\r\n textField: 'item_text',\r\n itemsShowLimit: 3,\r\n allowSearchFilter: false,\r\n enableCheckAll: false\r\n };\r\n }\r\n fillValuationData() {\r\n \r\n if (this.valuationEstimateData) {\r\n if (this.valuationEstimateData.BasementFTV != \"\") {\r\n this.MBasement = this.valuationEstimateData.BasementFTV;\r\n }\r\n if (this.valuationEstimateData.StiltFTV != \"\") {\r\n this.MStilt = this.valuationEstimateData.StiltFTV;\r\n }\r\n if (this.valuationEstimateData.LG != \"\") {\r\n this.MLG = this.valuationEstimateData.LG;\r\n }\r\n if (this.valuationEstimateData.UG != \"\") {\r\n this.MUG = this.valuationEstimateData.UG;\r\n }\r\n if (this.valuationEstimateData.Ground != \"\") {\r\n this.MGround = this.valuationEstimateData.Ground;\r\n }\r\n if (this.valuationEstimateData.MAZZ != \"\") {\r\n this.MMAZZ = this.valuationEstimateData.MAZZ;\r\n }\r\n if (this.valuationEstimateData.TotalFllorFTV != \"\") {\r\n this.MFloor = this.valuationEstimateData.TotalFllorFTV\r\n }\r\n debugger;\r\n if (this.valuationEstimateData.LocationFloor !=\"\") {\r\n // if (this.valuationEstimateData.LocationFloorFTV[0] != \"\") {\r\n this.dropdownList = this.valuationEstimateData.LocationFloor;\r\n this.selectedItems = this.valuationEstimateData.LocationFloor;\r\n // this.selectedItems = this.newSelectedItems;\r\n //}\r\n }\r\n this.onDropDownChange();\r\n // this.Basement = this.valuationEstimateData.BasementFTV;\r\n // this.Stlit = this.valuationEstimateData.StiltFTV;\r\n // this.TotelFloor = this.valuationEstimateData.TotalFllorFTV;\r\n // this.LocationFloorFTV = this.valuationEstimateData.LocationFloorFTV;\r\nthis.QCDoneDate=this.valuationEstimateData.qcDatedone;\r\n this.Propertyscore = this.valuationEstimateData.Propertyscore;\r\n this.MinRate = this.valuationEstimateData.MinRate;\r\n this.MaxRate = this.valuationEstimateData.MaxRate;\r\n this.RateAdpoted = this.valuationEstimateData.RateAdpoted;\r\n this.propertyArea = this.valuationEstimateData.propertyArea;\r\n this.FairMarketValue = this.valuationEstimateData.FMV;\r\n this.applicablerate = this.valuationEstimateData.Applicablerate;\r\n this.BuiltupArea = this.valuationEstimateData.Builtuparea;\r\n this.remark = this.valuationEstimateData.remark;\r\n\r\n this.BrokerName = this.valuationEstimateData.Broker_name1;\r\n this.BrokerMobile = this.valuationEstimateData.Broker_mobile1;\r\n this.BrokerMax = this.valuationEstimateData.Broker_quote1_max;\r\n this.BrokerMin = this.valuationEstimateData.Broker_quote1_min;\r\n\r\n this.BrokerName2 = this.valuationEstimateData.Broker_name2;\r\n this.BrokerMobile2 = this.valuationEstimateData.Broker_mobile2;\r\n this.BrokerMax2 = this.valuationEstimateData.Broker_quote2_max;\r\n this.BrokerMin2 = this.valuationEstimateData.Broker_quote2_min;\r\n this.AgeOfproperty=this.valuationEstimateData.Age_of_property;\r\n\r\n if (this.valuationEstimateData.ValuationType == \"Composite\") { //this.Compositet=true;\r\n this.radioSelected = \"Composite\";\r\n this.radioSelectedString = JSON.stringify(this.radioSel);\r\n //this.Compositet = this.userForm.get('uname').value;\r\n this.IsCompositeField = true;\r\n this.IsLandBuildField = false;\r\n }\r\n else if (this.valuationEstimateData.ValuationType == \"Land Building\") {\r\n this.radioSelected = \"Land Building\";\r\n this.radioSelectedString = JSON.stringify(this.radioSel);\r\n this.IsLandBuildField = true;\r\n this.IsCompositeField = false;\r\n }\r\n if (this.valuationEstimateData.FRCDDL == \"\") { this.ForcedSaleValue = \"0\" } else {\r\n this.ForcedSaleValue = this.valuationEstimateData.FRCDDL;\r\n }\r\n if (this.valuationEstimateData.FRCVALUE == \"\") { this.CalForcedSaleValue = \"0\" } else {\r\n this.CalForcedSaleValue = this.valuationEstimateData.FRCVALUE;\r\n }\r\n if (this.valuationEstimateData.RelizableDDL == \"\") {\r\n this.RealizableValue = \"0\";\r\n } else {\r\n this.RealizableValue = this.valuationEstimateData.RelizableDDL;\r\n }\r\n if (this.valuationEstimateData.RelizableValue == \"\") { this.CalRealizableValue == \"0\" } else {\r\n this.CalRealizableValue = this.valuationEstimateData.RelizableValue;\r\n }\r\n this.calculateBrokerData();\r\n }\r\n }\r\n\r\n // hide show input controls for Composite and Land Building\r\n hideShowCFM(e: any) {\r\n if (e.currentTarget.value == \"Composite\") {\r\n this.IsCompositeField = true;\r\n this.IsLandBuildField = false;\r\n this.PropertyType = \"Composite\";\r\n this.FairMarketValue = (((parseInt(this.RateAdpoted) * parseInt(this.propertyArea)) + (((parseInt(this.RateAdpoted) * parseInt(this.propertyArea)) * parseInt(this.Propertyscore)) / 100)).toFixed());\r\n }\r\n else if (e.currentTarget.value == \"Land Building\") {\r\n this.IsLandBuildField = true;\r\n this.IsCompositeField = false;\r\n this.PropertyType = \"Land Building\";\r\n // this.FairMarketValue=((parseInt(this.BuiltupArea)*parseInt(this.applicablerate)+((parseInt(this.RateAdpoted) *parseInt(this.propertyArea))*parseInt(this.Propertyscore))/100).toFixed());\r\n this.FairMarketValue = ((((parseInt(this.RateAdpoted) * parseInt(this.propertyArea)) + (parseInt(this.BuiltupArea) * parseInt(this.applicablerate))) + ((((parseInt(this.RateAdpoted) * parseInt(this.propertyArea)) + (parseInt(this.BuiltupArea) * parseInt(this.applicablerate))) * parseInt(this.Propertyscore)) / 100)).toFixed());\r\n }\r\n else {\r\n this.IsCompositeField = true;\r\n this.IsLandBuildField = false;\r\n this.PropertyType = \"Composite\";\r\n this.FairMarketValue = (((parseInt(this.RateAdpoted) * parseInt(this.propertyArea)) + (((parseInt(this.RateAdpoted) * parseInt(this.propertyArea)) * parseInt(this.Propertyscore)) / 100)).toFixed());\r\n }\r\n }\r\n\r\n getFtvFinalValuationData() {\r\n this.ngxService.start();\r\n let val: IValuationEstimate = {\r\n CaseID: this.caseID,\r\n Type: \"Get\"\r\n }\r\n ApiService.GetValuationEstimateDetails(val).then((responce: any) => {\r\n if (responce.status == 200) {\r\n if (responce.data) {\r\n this.valuationEstimateData = responce.data;\r\n this.fillValuationData();\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n\r\n QCReferenceData(caseID: string) {\r\n \r\n this.ngxService.start();\r\n let val: IQCreference = {\r\n state: this.caseID,\r\n city: \"\",\r\n location: \"\",\r\n sublocation: \"\",\r\n propertytype: \"\",\r\n }\r\n ApiService.GetQCreference(val).then((responce: any) => {\r\n if (responce.status == 200) {\r\n if (responce.data) {\r\n this.HistoricalData = responce.data;\r\n this.calculateHistoricalData();\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n calculateWebCrawlData() {\r\n let webcrowlmin = 0, webcrowlmax = 0;\r\n if (this.Gridwebcrowl.length > 0) {\r\n for (let val of this.Gridwebcrowl) {\r\n if (webcrowlmin == 0 && webcrowlmax == 0) {\r\n webcrowlmin = val.Rate_Pr_Sqft;\r\n webcrowlmax = val.Rate_Pr_Sqft;\r\n }\r\n if (val.Rate_Pr_Sqft < webcrowlmin) {\r\n webcrowlmin = val.Rate_Pr_Sqft\r\n } if (val.Rate_Pr_Sqft > webcrowlmax) {\r\n webcrowlmax = val.Rate_Pr_Sqft;\r\n }\r\n }\r\n this.webCrowlMax = webcrowlmax;\r\n this.webCrowlMin = webcrowlmin;\r\n this.webCrowlRate = parseInt((((+this.webCrowlMax) + (+this.webCrowlMin)) / 2).toFixed());\r\n }\r\n }\r\n\r\n\r\n\r\n HideBrokerPopUp() {\r\n this.showBrokerPopUp = false;\r\n }\r\n calculateBrokerData() {\r\n this.BrokerMInRate = ((+this.BrokerMin) + (+this.BrokerMin2)) / 2;\r\n this.BrokerMaxRate = ((+this.BrokerMax) + (+this.BrokerMax2)) / 2;\r\n this.BrokerRate = (this.BrokerMInRate + this.BrokerMaxRate) / 2;\r\n }\r\n calculateHistoricalData() {\r\n \r\n let hismin = 0, hismax = 0;\r\n if (this.HistoricalData.length > 0) {\r\n for (let val of this.HistoricalData) {\r\n hismin += (+val.MarketRateMin);\r\n hismax += (+val.MarketRateMax);\r\n }\r\n //this.minvalue=(hismax / this.HistoricalData.length).toFixed();\r\n this.historicalMax = parseInt((hismax / this.HistoricalData.length).toFixed());\r\n this.historicalMin = parseInt((hismin / this.HistoricalData.length).toFixed());\r\n if (this.HistoricalData.length == \"1\") {\r\n this.historicalRate = parseInt(((this.historicalMax + this.historicalMin) / 2).toFixed());\r\n }\r\n else {\r\n this.historicalRate = parseInt(((this.historicalMax + this.historicalMin) / 2).toFixed());\r\n }\r\n }\r\n }\r\n handleChange(e: any) {\r\n this.RateAdpoted = \"0\";\r\n const val = e.currentTarget.value;\r\n if (val == \"Crowl\") {\r\n this.MinRate = this.webCrowlMin.toString();\r\n this.MaxRate = this.webCrowlMax.toString();\r\n this.CheckBoxvalue = \"C\";\r\n // this.FairMarketValue = \"0\";\r\n //alert(this.PropertyType)\r\n this.RateAdpoted = (((+this.MinRate) + (+this.MaxRate)) / 2).toFixed();\r\n if (this.PropertyType == \"Composite\") {\r\n this.FairMarketValue = (((parseInt(this.RateAdpoted) * parseInt(this.propertyArea)) + (((parseInt(this.RateAdpoted) * parseInt(this.propertyArea)) * parseInt(this.Propertyscore)) / 100)).toFixed());\r\n }\r\n else if (this.PropertyType == \"Land Building\") {\r\n this.FairMarketValue = ((((parseInt(this.RateAdpoted) * parseInt(this.propertyArea)) + (parseInt(this.BuiltupArea) * parseInt(this.applicablerate))) + ((((parseInt(this.RateAdpoted) * parseInt(this.propertyArea)) + (parseInt(this.BuiltupArea) * parseInt(this.applicablerate))) * parseInt(this.Propertyscore)) / 100)).toFixed());\r\n }\r\n else {\r\n this.FairMarketValue = (((parseInt(this.RateAdpoted) * parseInt(this.propertyArea)) + (((parseInt(this.RateAdpoted) * parseInt(this.propertyArea)) * parseInt(this.Propertyscore)) / 100)).toFixed());\r\n }\r\n }\r\n if (val == \"Broker\") {\r\n this.MinRate = this.BrokerMInRate.toString();\r\n this.MaxRate = this.BrokerMaxRate.toString();\r\n this.CheckBoxvalue = \"B\";\r\n this.FairMarketValue = \"0\";\r\n }\r\n if (val == \"Historical\") {\r\n // this.calculatelandbuilding();\r\n this.MinRate = this.historicalMin.toString();\r\n this.MaxRate = this.historicalMax.toString();\r\n this.CheckBoxvalue = \"H\";\r\n // this.FairMarketValue = \"0\";\r\n this.RateAdpoted = (((+this.MinRate) + (+this.MaxRate)) / 2).toFixed();\r\n if (this.PropertyType == \"Composite\") {\r\n this.FairMarketValue = (((parseInt(this.RateAdpoted) * parseInt(this.propertyArea)) + (((parseInt(this.RateAdpoted) * parseInt(this.propertyArea)) * parseInt(this.Propertyscore)) / 100)).toFixed());\r\n }\r\n else if (this.PropertyType == \"Land Building\") {\r\n this.FairMarketValue = ((((parseInt(this.RateAdpoted) * parseInt(this.propertyArea)) + (parseInt(this.BuiltupArea) * parseInt(this.applicablerate))) + ((((parseInt(this.RateAdpoted) * parseInt(this.propertyArea)) + (parseInt(this.BuiltupArea) * parseInt(this.applicablerate))) * parseInt(this.Propertyscore)) / 100)).toFixed());\r\n }\r\n else {\r\n this.FairMarketValue = (((parseInt(this.RateAdpoted) * parseInt(this.propertyArea)) + (((parseInt(this.RateAdpoted) * parseInt(this.propertyArea)) * parseInt(this.Propertyscore)) / 100)).toFixed());\r\n }\r\n }\r\n if (this.MinRate && this.MaxRate) {\r\n this.RateAdpoted = (((+this.MinRate) + (+this.MaxRate)) / 2).toFixed();\r\n }\r\n }\r\n WebcrollData(caseID: string) {\r\n this.ngxService.start();\r\n let val: IWebClowl = {\r\n propertytype: this.caseID,\r\n sublocation: \"\"\r\n }\r\n ApiService.GetWebCrawl(val).then((responce: any) => {\r\n if (responce.status == 200) {\r\n if (responce.data) {\r\n this.Gridwebcrowl = responce.data;\r\n this.calculateWebCrawlData();\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n\r\n closeModel1() {\r\n $(\"#modelShowData1\").hide();\r\n }\r\n showHistoricalData1() {\r\n this.historicalData1 = true;\r\n // this.webcrowlData = false;\r\n this.ModalTitle1 = \"Case Details\"\r\n $(\"#modelShowData1\").show();\r\n\r\n this.ngxService.start();\r\n\r\n ApiService.FTVCasedocdetails(this.caseID).then((responce: any) => {\r\n if (responce.status == 200) {\r\n if (responce.data) {\r\n // this.HistoricalData = responce.data;\r\n this.CaseUid = responce.data.CaseUID;\r\n this.App_Name = responce.data.Applicant_Name;\r\n this.Property_Numb = responce.data.Property_No;\r\n this.Build_no = responce.data.Building_No;\r\n this.Landmark = responce.data.Land_mark;\r\n this.streat = responce.data.Street_Sector;\r\n this.state = responce.data.statename;\r\n this.city = responce.data.cityname;\r\n this.location = responce.data.LocationName;\r\n this.case_Type = responce.data.typeofcasename;\r\n this.document_details = responce.data.Documents;\r\n this.file_no = responce.data.File_No;\r\n this.rate = responce.data.TotalFees;\r\n this.unit = responce.data.Block;\r\n this.case_status = responce.data.CaseStatusname;\r\n this.eng = responce.data.engName;\r\n this.Sublocation = responce.data.SubLocationname;\r\n this.getdocurl = responce.data.CaseDoc;\r\n for (const Dvalue in responce.data.CaseDoc) {\r\n let docValss = {\r\n url: this.getdocurl[Dvalue].url,\r\n name: this.getdocurl[Dvalue].name\r\n }\r\n this.getdocurl[Dvalue] = docValss;\r\n }\r\n this.getcustomerdocurl=responce.data.CustomerDoc;\r\n for (const Dvalue in responce.data.CustomerDoc) {\r\n let docValss = {\r\n url: this.getcustomerdocurl[Dvalue].url,\r\n name: this.getcustomerdocurl[Dvalue].name\r\n }\r\n this.getcustomerdocurl[Dvalue] = docValss;\r\n }\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n getFairMarketValue() {\r\n let data: GetFairMarketValue = {\r\n CaseID: this.caseID,\r\n areaadopted: this.propertyArea,\r\n Rateadropted: this.RateAdpoted\r\n }\r\n this.ngxService.start();\r\n ApiService.GetFairMarketValue(data).then((responce: any) => {\r\n if (responce.status == 200) {\r\n if (responce.data) {\r\n this.FairMarketValue = responce.data.fairmarketvalue;\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n\r\n }\r\n GetImage() {\r\n this.ngxService.start();\r\n ApiService.GetSuperImage(this.caseID).then((responce: any) => {\r\n this.getAllImage = responce.data;\r\n this.ngxService.stop();\r\n }).catch((error) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong', 'error');\r\n })\r\n }\r\n\r\n //Top Header Function\r\n PropertyDetails(e: any) {\r\n const data = window.btoa(this.caseID);\r\n this.router.navigate([\"/UpdateAddress\", { id: data, valuation: this.valuationID }]);\r\n }\r\n InfractureDetails(e: any) {\r\n const data = window.btoa(this.caseID);\r\n this.router.navigate([\"/SupEditFtv\", { id: data, valuation: this.valuationID, type: \"Infracture\" }]);\r\n }\r\n CatchMentAnalysis(e: any) {\r\n const data = window.btoa(this.caseID);\r\n this.router.navigate([\"/SupEditFtv\", { id: data, valuation: this.valuationID, type: \"CatchMent\" }]);\r\n }\r\n Valuation(e: any) {\r\n const valu = document.getElementById(\"liftValuation\");\r\n const image = document.getElementById(\"liImage\");\r\n valu.classList.add(\"headerActive\");\r\n image.classList.remove(\"headerActive\");\r\n this.showValuationPage = true;\r\n // const data = window.btoa(this.caseID);\r\n // this.router.navigate([\"/SupFtvFinalValuation\", { id: data, valuation: this.valuationID }]);\r\n }\r\n showImage() {\r\n const valu = document.getElementById(\"liftValuation\");\r\n const image = document.getElementById(\"liImage\");\r\n valu.classList.remove(\"headerActive\");\r\n image.classList.add(\"headerActive\");\r\n this.showValuationPage = false;\r\n }\r\n //Top Header Function End\r\n calculatelandbuilding() {\r\n this.FairMarketValue = '';\r\n if (this.PropertyType == \"Composite\") {\r\n this.FairMarketValue = (((parseInt(this.RateAdpoted) * parseInt(this.propertyArea)) + (((parseInt(this.RateAdpoted) * parseInt(this.propertyArea)) * parseInt(this.Propertyscore)) / 100)).toFixed());\r\n }\r\n else if (this.PropertyType == \"Land Building\") {\r\n this.FairMarketValue = ((((parseInt(this.RateAdpoted) * parseInt(this.propertyArea)) + (parseInt(this.BuiltupArea) * parseInt(this.applicablerate))) + ((((parseInt(this.RateAdpoted) * parseInt(this.propertyArea)) + (parseInt(this.BuiltupArea) * parseInt(this.applicablerate))) * parseInt(this.Propertyscore)) / 100)).toFixed());\r\n }\r\n else {\r\n this.FairMarketValue = (((parseInt(this.RateAdpoted) * parseInt(this.propertyArea)) + (((parseInt(this.RateAdpoted) * parseInt(this.propertyArea)) * parseInt(this.Propertyscore)) / 100)).toFixed());\r\n }\r\n\r\n }\r\n calculatecomposite() {\r\n this.FairMarketValue = '';\r\n this.FairMarketValue = (((parseInt(this.RateAdpoted) * parseInt(this.propertyArea)) + (((parseInt(this.RateAdpoted) * parseInt(this.propertyArea)) * parseInt(this.Propertyscore)) / 100)).toFixed());\r\n }\r\n\r\n ForcedSaleValueChange() {\r\n this.CalForcedSaleValue = (Number(this.FairMarketValue) * 0.01 * Number(this.ForcedSaleValue)).toFixed(0).toString();\r\n }\r\n RealizableValueChange() {\r\n this.CalRealizableValue = (Number(this.FairMarketValue) * 0.01 * Number(this.RealizableValue)).toFixed(0).toString();\r\n }\r\n}\r\n","module.exports = \"\\r\\n \\r\\n\\r\\n\\r\\n\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    Case UID {{element.caseuid}} Name {{element.appname}} Bank {{element.bank}} Location {{element.location}} Case Type {{element.casetype}} Valuation Type {{element.valuationtype}} Engineer {{element.Allocated_To}} Reopen Remark {{element.Case_Reopen_Remarks}} CR.Date {{element.crdate}} Action \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n

    {{popUpHeading}}

    \\r\\n \\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n

    Send Mail

    \\r\\n \\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n \\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n\\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n\\r\\n
    \\r\\n\\r\\n
    \\r\\n\"","import { Component, OnInit, Renderer2, ElementRef,ViewChild } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { ApiService } from '../service/service';\r\nimport { SessionService } from '../service/sessionGlobalVar';\r\nimport { UpdateDataForGrid, IGetCityLocation, IUpdateStatus ,IsendMail,IsgetMail } from '../service/type'\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport Swal from 'sweetalert2';\r\nimport { ResourceLoader } from '@angular/compiler';\r\nimport {MatPaginator,MatTableDataSource,MatSort,Sort} from '@angular/material';\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: 'app-sup-home',\r\n templateUrl: './sup-home.component.html',\r\n styleUrls: []\r\n})\r\nexport class SupHomeComponent implements OnInit {\r\n supGridData: any;\r\n IsEditStatus: boolean = false;\r\n ShowStatusTag: boolean = false;\r\n showAllocateStatusTag: boolean = false;\r\n inputRemark: string = \"\";\r\n AllocateCaseRemark: string;\r\n popUpHeading: string;\r\n getUserDetailsArr = [];\r\n caseID: string;\r\n IsSendMailModel: boolean = false;\r\n sendMailForm: string;\r\n SendBranchPerson: string;\r\n SendBranchPersonemail:string;\r\n MailSubject: string;\r\n MailBody: string;\r\n mailBankID:string;\r\n AllocateSelectedUser: string = \"Select\"\r\n displayedColumns: string[] = ['CaseUID', 'name', 'Bank', 'Location','CaseType','ValuationType','Engineer','ReopenRemark','CRDate','Action'];\r\n dataSource = new MatTableDataSource;\r\n applyFilter(filterValue: string) {\r\n this.dataSource.filter = filterValue.trim().toLowerCase();\r\n }\r\n @ViewChild(MatPaginator) paginator: MatPaginator;\r\n @ViewChild(MatSort) sort: MatSort;\r\n constructor(private router: Router, private service: ApiService, private session: SessionService, private ngxService: NgxUiLoaderService, private renderer: Renderer2, private el: ElementRef) { }\r\n ngOnInit() {\r\n let val = localStorage.getItem(\"roleID\");\r\n if (val) {\r\n if (+val == 5 || +val == 11) {\r\n this.getMainGridData();\r\n }\r\n if (+val == 7) {\r\n this.router.navigate([\"BankCaseDetails\"]);\r\n }\r\n else if (+val == 3 || +val == 10 || +val == 10) {\r\n this.router.navigate([\"Home\"]);\r\n }\r\n }\r\n }\r\n getMainGridData() {\r\n this.ngxService.start();\r\n let val = {\r\n LoginID: this.session.UserID\r\n }\r\n ApiService.GetSuperGridData(val).then((responce: any) => {\r\n if (responce.status == 200) {\r\n if (responce.data) {\r\n this.dataSource=new MatTableDataSource(responce.data);\r\n this.dataSource.paginator = this.paginator;\r\n this.dataSource.sort = this.sort; \r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n getUserDetails() {\r\n this.ngxService.start();\r\n const LoginID = localStorage.getItem('userID');\r\n let val: IGetCityLocation = {\r\n StateID: \"\",\r\n CityID: \"\",\r\n LocID: \"\",\r\n GetType: \"AdminSup\",\r\n }\r\n ApiService.GetCityLocation(val).then((responce: any) => {\r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n this.getUserDetailsArr = responce.data.DATA;\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n HideModel() {\r\n this.IsEditStatus = false;\r\n }\r\n updateAllocateStatus() {\r\n let roleID = localStorage.getItem(\"roleID\");\r\n if (this.AllocateSelectedUser == \"Select\") {\r\n Swal.fire(\"Opps..\", \"Please Select User\", \"warning\");\r\n }\r\n else if(this.AllocateCaseRemark==\"\"){\r\n Swal.fire(\"Opps..\", \"Please Enter Remark\", \"warning\");\r\n } \r\n else {\r\n const val: UpdateDataForGrid = {\r\n CaseID: this.caseID,\r\n Type: \"AllocateSuperAdmin\",\r\n watermark: \"\",\r\n casecreatedfrom: \"\",\r\n UserID: this.session.UserID,\r\n Remark: this.AllocateCaseRemark,\r\n Supervisor: this.AllocateSelectedUser,\r\n RoleID: roleID,\r\n }\r\n ApiService.UpdateGridDataAndGetUrl(val).then((responce: any) => {\r\n if (responce.status === 200) {\r\n Swal.fire(\"Thanks..\", \"Save Sucessfully\", \"success\");\r\n this.HideModel();\r\n this.AllocateCaseRemark=\"\";\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n }\r\n sendReminder(e: any) {\r\n \r\n this.IsSendMailModel = true;\r\n const val: IsgetMail = {\r\n caseid : e/* .currentTarget.parentElement.firstElementChild.value */,\r\n type:\"get\"\r\n }\r\n this.caseID = e/* .currentTarget.parentElement.firstElementChild.value */;\r\n // this.typed=\"get\";\r\n ApiService.GetMailReminderValue(val).then((responce: any) => {\r\n \r\n if (responce.status === 200) {\r\n let val = responce.data;\r\n let sender=val.EmailFrom;\r\n this.sendMailForm = val.EmailTo;\r\n this.SendBranchPerson = val.ApplicantName;\r\n this.SendBranchPersonemail=sender;\r\n this.MailSubject = val.Sublect;\r\n this.MailBody = val.Body;\r\n this.mailBankID=val.BankID\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n HideModelsendMail(){\r\n this.IsSendMailModel = false;\r\n }\r\n sendReminderUpdate(e) {\r\n \r\n const val: IsendMail = {\r\n caseId : this.caseID,\r\n EmailTo: this.sendMailForm,\r\n Sublect: this.MailSubject,\r\n ApplicantName: this.SendBranchPerson,\r\n Body: this.MailBody,\r\n LoginID: this.session.UserID,\r\n BankID: this.mailBankID,\r\n type:\"update\"\r\n }\r\n this.ngxService.start();\r\n \r\n ApiService.FTVSendMailUpdate(val).then((responce: any)=>{\r\n \r\n if (responce.status === 200) {\r\n Swal.fire('Thanks', responce.data.EmailTo, 'success');\r\n this.getMainGridData();\r\n this.IsSendMailModel = false;\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n \r\n }\r\n allocateAdminSup(e: any) {\r\n this.caseID = e/* .currentTarget.parentElement.firstElementChild.value */;\r\n this.popUpHeading = \"Allocate Case \"\r\n this.IsEditStatus = true;\r\n this.ShowStatusTag = false;\r\n this.showAllocateStatusTag = true;\r\n this.getUserDetails();\r\n }\r\n manualPage(e: any){\r\n const caseid = e/* .currentTarget.parentElement.firstElementChild.value */;\r\n const data = window.btoa(caseid);\r\n this.router.navigate([\"/SUPLTEDetails\", { id: data }]); \r\n }\r\n QcPass(e: any,fee: any) {\r\n const val = window.confirm(\"Do you want to save data?\");\r\n if (val) {\r\n const data = e/* .currentTarget.parentElement.firstElementChild.value */;\r\n const waterMark = e/* .currentTarget.firstElementChild.value */;\r\n const LoginID = localStorage.getItem('userID');\r\n const val: UpdateDataForGrid = {\r\n CaseID: data,\r\n Type: \"QCPASS\",\r\n watermark: waterMark,\r\n casecreatedfrom: \"\",\r\n UserID: LoginID,\r\n Remark: \"\",\r\n Supervisor: \"\",\r\n RoleID: \"\"\r\n }\r\n this.ngxService.start();\r\n ApiService.UpdateGridDataAndGetUrl(val).then((responce: any) => {\r\n if (responce.status === 200) {\r\n debugger;\r\n Swal.fire('Thanks', 'QC Pass Sucessfully', 'success');\r\n this.openInNewTab(responce.data.URL);\r\n \r\n // this.getMainGridData();\r\n /* this.ViewReportwithqc(data); */\r\n window.location.reload();\r\n \r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n\r\n }\r\n }\r\n openInNewTab(href: any) {\r\n Object.assign(document.createElement('a'), {\r\n target: '_blank',\r\n href,\r\n }).click();\r\n }\r\n View(e: any) {\r\n let data = e/* .currentTarget.parentElement.firstElementChild.value */;\r\n const LoginID = localStorage.getItem('userID');\r\n const val: UpdateDataForGrid = {\r\n CaseID: data,\r\n Type: \"View\",\r\n watermark: \"\",\r\n casecreatedfrom: \"\",\r\n UserID: LoginID,\r\n Remark: \"\",\r\n Supervisor: \"\",\r\n RoleID: \"\",\r\n }\r\n this.ngxService.start();\r\n ApiService.UpdateGridDataAndGetUrl(val).then((responce: any) => {\r\n if (responce.status === 200) {\r\n this.openInNewTab(responce.data.URL);\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n ViewReportwithqc(caseiddd) {\r\n //let data = e.currentTarget.parentElement.firstElementChild.value;\r\n const LoginID = localStorage.getItem('userID');\r\n const val: UpdateDataForGrid = {\r\n CaseID: caseiddd,\r\n Type: \"View\",\r\n watermark: \"\",\r\n casecreatedfrom: \"\",\r\n UserID: LoginID,\r\n Remark: \"\",\r\n Supervisor: \"\",\r\n RoleID: \"\",\r\n }\r\n ApiService.UpdateGridDataAndGetUrl(val).then((responce: any) => {\r\n if (responce.status === 200) {\r\n this.openInNewTab(responce.data.URL);\r\n window.location.reload();\r\n }\r\n // this.ngxService.stop();\r\n }).catch((e: any) => {\r\n // this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n Status(e: any) {\r\n this.caseID = e/* .currentTarget.parentElement.firstElementChild.value */;\r\n this.popUpHeading = \"Add Status\"\r\n this.IsEditStatus = true;\r\n this.ShowStatusTag = true;\r\n this.showAllocateStatusTag = false;\r\n }\r\n updateStatus() {\r\n if (this.inputRemark == \"\") {\r\n Swal.fire('Opps.', 'Please Enter Remark', 'error');\r\n } else {\r\n const val: IUpdateStatus = {\r\n Case_id: this.caseID,\r\n CaseStatus: \"43\",\r\n statusRemark: this.inputRemark,\r\n Assignto: \"\",\r\n Message: \"\",\r\n LoginID: this.session.UserID\r\n }\r\n this.ngxService.start();\r\n ApiService.UpdateStatus(val).then((responce: any) => {\r\n if (responce.status === 200) {\r\n Swal.fire('Success', 'Status Updated Sucessfully', 'success');\r\n this.HideModel();\r\n this.inputRemark=\"\";\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong in status Update!', 'error');\r\n });\r\n }\r\n }\r\n Edit(valuationID: string, e: any) {\r\n const val = e/* .currentTarget.parentElement.firstElementChild.value */;\r\n if (val && val != \"\") {\r\n const data = window.btoa(val);\r\n this.router.navigate([\"/UpdateAddress\", { id: data, valuation: valuationID }]);\r\n }\r\n }\r\n\r\n}\r\n","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL3N1cC1sdGUtZGV0YWlscy9zdXAtbHRlLWRldGFpbHMuY29tcG9uZW50LmNzcyJ9 */\"","module.exports = \"\\r\\n\\r\\n\\r\\n
    \\r\\n

    Manual Report Details

    \\r\\n
    \\r\\nCSS Template\\r\\n\\r\\n\\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n

    \\r\\n \\r\\n

    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n

    \\r\\n \\r\\n

    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n

    \\r\\n \\r\\n

    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n

    \\r\\n \\r\\n

    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
  • \\r\\n
    \\r\\n
  • \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\"","import { Component, OnInit } from '@angular/core';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { ApiService } from '../service/service';\r\nimport { SessionService } from '../service/sessionGlobalVar';\r\nimport { IAreaDetails} from '../service/type'\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'app-sup-lte-details',\r\n templateUrl: './sup-lte-details.component.html',\r\n styleUrls: ['./sup-lte-details.component.css']\r\n})\r\nexport class SupLteDetailsComponent implements OnInit {\r\n caseID: string;\r\n CaseUid:string;\r\n App_Name:string;\r\n Property_Numb:string;\r\n Build_no:string;\r\n Landmark:string;\r\n streat:string;\r\n state:string;\r\n city:string;\r\n location:string;\r\n case_Type:string;\r\n file_no:string;\r\n document_details:string;\r\n rate:string;\r\n unit:string;\r\n case_status:string;\r\n eng:string;\r\n Sublocation:string;\r\n getdocurl:any;\r\n getAllImage = [];\r\n Latitude: string;\r\n Longitude: string;\r\n LTE_Engineer_Remarks:string;\r\n updatedFiles:any;\r\n IsAreaDetails:boolean=false;\r\n ReopenRemark:string;\r\n LTESTATUS:string=\"select\";\r\n reporturl:string;\r\n constructor(private router: Router, private service: ApiService, private ngxService: NgxUiLoaderService, private session: SessionService, private route: ActivatedRoute) { }\r\n\r\n ngOnInit() {\r\n this.route.params.subscribe(params => {\r\n if (params.id) {\r\n this.caseID = window.atob(params.id);\r\n this.ViewCaseDetail();\r\n this.GetImage();\r\n\r\n }\r\n });\r\n }\r\n statuschange(e: any){\r\n let data = e.currentTarget.parentElement.firstElementChild.value;\r\n if(data==\"QCPASS\"){\r\n this.IsAreaDetails=false;\r\n this.ReopenRemark=\"\";\r\n }else if(data==\"select\"){\r\n this.IsAreaDetails=false;\r\n this.ReopenRemark=\"\";\r\n }\r\n else{\r\n this.IsAreaDetails=true;\r\n }\r\n }\r\n LteUpdateQC(){\r\n const val = window.confirm(\"Do you want to save data?\");\r\n if (val) { \r\n const LoginID = localStorage.getItem('userID');\r\nif(this.LTESTATUS==\"\"||this.LTESTATUS==\"select\"){\r\n Swal.fire('Oops...', 'Please select Status!', 'error');\r\n}\r\nelse{\r\n if (this.updatedFiles) {\r\n this.UploadPdfLTE();\r\n }\r\n const data = {\r\n CaseID: this.caseID,\r\n Type: this.LTESTATUS,\r\n UserID: LoginID,\r\n Remark: this.ReopenRemark\r\n }\r\n ApiService.LTEUpdateQCOrAreaDetail(data).then((responce: any) => {\r\n\r\n if (responce.status === 200) {\r\n Swal.fire('Thanks', 'Update Sucessfully', 'success');\r\n this.router.navigate([\"SupHome\"]); \r\n }else{\r\n Swal.fire('Oops...', 'Please upload the pdf file not accept other format!', 'error');\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n }\r\n }\r\n ViewPdf(){\r\n // this.openInNewTab(\"http://adroitvaluation.in/TEMPLTEPDF/\"+(this.caseID)+\".pdf\");\r\n if(this.reporturl==\"\"){\r\n Swal.fire('Oops...', 'No file!', 'error');\r\n }else{\r\n this.openInNewTab(this.reporturl);\r\n }\r\n }\r\n openInNewTab(href: any) {\r\n Object.assign(document.createElement('a'), {\r\n target: '_blank',\r\n href,\r\n }).click();\r\n }\r\n\r\n ViewCaseDetail() { \r\n this.ngxService.start();\r\n \r\n ApiService.SupSidebar(this.caseID).then((responce: any) => {\r\n if (responce.status == 200) {\r\n if (responce.data) {\r\n \r\n // this.HistoricalData = responce.data;\r\n this.CaseUid= responce.data.CaseUID;\r\n this.App_Name=responce.data.Applicant_Name;\r\n this.Property_Numb=responce.data.Property_No;\r\n this.Build_no=responce.data.Building_No;\r\n this.Landmark=responce.data.Land_mark;\r\n this.streat=responce.data.Street_Sector;\r\n this.state=responce.data.statename;\r\n this.city=responce.data.cityname;\r\n this.location=responce.data.LocationName;\r\n this.case_Type=responce.data.typeofcasename;\r\n this.document_details=responce.data.Documents;\r\n this.file_no=responce.data.File_No;\r\n this.rate=responce.data.TotalFees;\r\n this.unit=responce.data.Block;\r\n this.case_status=responce.data.CaseStatusname;\r\n this.eng=responce.data.engName;\r\n this.Sublocation=responce.data.SubLocationname;\r\n this.Latitude=responce.data.lat;\r\n this.Longitude=responce.data.longi;\r\n this.LTE_Engineer_Remarks=responce.data.lte_Engineer_Remarks;\r\n this.getdocurl=responce.data.CaseDoc;\r\n this.reporturl=responce.data.reporturl;\r\n for (const Dvalue in responce.data.CaseDoc) {\r\n let docValss = {\r\n url: this.getdocurl[Dvalue].url,\r\n name: this.getdocurl[Dvalue].name\r\n }\r\n this.getdocurl[Dvalue] = docValss;\r\n }\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n zoomout(href: any) {\r\n Object.assign(document.createElement('a'), {\r\n target: '_blank',\r\n href,\r\n }).click();\r\n }\r\n GetImage() {\r\n \r\n this.ngxService.start();\r\n ApiService.GetSuperImage(this.caseID).then((responce: any) => { \r\n \r\n this.getAllImage = responce.data;\r\n for (const Dvalue in responce.data.CaseDoc) {\r\n \r\n let docValss = {\r\n url: this.getAllImage[Dvalue].url,\r\n name: this.getAllImage[Dvalue].name\r\n }\r\n this.getAllImage[Dvalue] = docValss;\r\n }\r\n this.ngxService.stop();\r\n }).catch((error) => { \r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong', 'error');\r\n })\r\n }\r\n handleFileSelect(evt) {\r\n this.updatedFiles = evt.target.files;\r\n };\r\n UploadPdfLTE() {\r\n \r\n let formData = new FormData();\r\n if (this.updatedFiles) {\r\n for (let val of this.updatedFiles) {\r\n formData.append(\"CaseID\", this.caseID);\r\n formData.append(\"files\", val);\r\n }\r\n \r\n \r\n \r\n this.ngxService.start();\r\n ApiService.UploadLTEPDF(formData).then((responce: any) => { \r\n // Swal.fire('Thanks', 'PDF Upload Successfully', 'success');\r\n // this.router.navigate([\"Home\"]);\r\n this.ngxService.stop();\r\n }).catch((error) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong', 'error');\r\n })\r\n }else{\r\n Swal.fire('Oops...', 'Please Select PDF File', 'error');\r\n }\r\n }\r\n\r\n\r\n}\r\n","module.exports = \"\\r\\n\\r\\n
    \\r\\n
    \\r\\n

    Property Address Details As Per TRF

    \\r\\n \\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n\\r\\n

    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n\\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n

    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n

    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n

    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n Save And Close\\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    {{ModalTitle}}
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \"","import { Component, OnInit } from '@angular/core';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { ApiService } from '../service/service';\r\nimport { SessionService } from '../service/sessionGlobalVar';\r\nimport { IGetCityLocation, IUpdateFormatNotCompatable, IUsage,UpdateDataForGrid,ISupPropertydetailsOther } from '../service/type'\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport Swal from 'sweetalert2';\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: \"app-sup-not-compatable\",\r\n templateUrl: \"./sup-not-compatable.component.html\",\r\n styleUrls: [],\r\n})\r\nexport class SupNotCompatableComponent implements OnInit {\r\n selectedUsage: string = \"Select\";\r\n selectedPropertytype: string = \"Select\";\r\n\r\n YearofCompletion: string = \"\";\r\n caseDetails: any;\r\n caseID: string = \"\";\r\n changeLocation: boolean = false;\r\n valuationID: number;\r\n showHeader: boolean = false;\r\n addressPerDocument: string;\r\n addressPerActule: string;\r\n showOsvHeader: boolean = false;\r\n propertyTypeNEw: string = \"Select\";\r\n //DDlPropertyType: string = \"Select\";\r\n DDLPropertyData: any;\r\n DDLUsageData: any;\r\n propertyNo: string = \"\";\r\n Latitude: string = \"\";\r\n Longitude: string = \"\";\r\n YearCompletiomn: string = \"\";\r\n propertyMethod: string = \"Select\";\r\n MarketRateMin: string = \"\";\r\n MarketRateMax: string = \"\";\r\n RateAdopted: string = \"\";\r\n fairmarketvalue: string = \"\";\r\n ExtraRemark: string = \"\";\r\n historicalData: boolean = false;\r\n ModalTitle: string;\r\n HistoricalData: any;\r\n CaseUid: string;\r\n App_Name: string;\r\n Property_Numb: string;\r\n Build_no: string;\r\n Landmark: string;\r\n streat: string;\r\n city: string;\r\n location: string;\r\n case_Type: string;\r\n file_no: string;\r\n document_details: string;\r\n rate: string;\r\n unit: string;\r\n case_status: string;\r\n eng: string;\r\n Sublocation: string;\r\n docurl: string;\r\n getdocurl: any;\r\n BankName: string;\r\n BranchName: string;\r\n addressofproperty: string;\r\n propertyDescription: string;\r\n dropdownList = [];\r\n dropdownList1 = [];\r\n selectedItems: any;\r\n newSelectedItems = [];\r\n dropdownSettings: any;\r\n getMainImage = [];\r\n getOtherImage = [];\r\n getTemplateImage = [];\r\n SelectedImage: string = \"\";\r\n SelectedImageMain: string = \"\";\r\n SelectedImageOther: string = \"\";\r\n ImgVal: any = \"\";\r\n reportPlanDoc: any;\r\n selectedUsageType: any = \"\";\r\n selectedPropertyType: any = \"\";\r\n selectedYear: any = \"\";\r\n constructor(\r\n private router: Router,\r\n private service: ApiService,\r\n private ngxService: NgxUiLoaderService,\r\n private session: SessionService,\r\n private route: ActivatedRoute\r\n ) {\r\n this.dropdownSettings = {\r\n singleSelection: false,\r\n idField: \"id\",\r\n textField: \"text\",\r\n unSelectAllText: \"UnSelect All\",\r\n itemsShowLimit: 3,\r\n allowSearchFilter: false,\r\n };\r\n }\r\n\r\n ngOnInit() {\r\n $(\"#modelShowDataCase\").hide();\r\n $(\"#modelShowDataPhoto\").show();\r\n this.route.params.subscribe((params) => {\r\n if (params.id && params.valuation) {\r\n const id = window.atob(params.id);\r\n this.caseID = id;\r\n if (params.valuation)\r\n if (params.valuation == 2) {\r\n this.showHeader = true;\r\n } else if (params.valuation == 1) {\r\n this.showOsvHeader = true;\r\n }\r\n this.valuationID = params.valuation;\r\n this.GetEditCaseDetail(id);\r\n this.GetUsageDataNew();\r\n this.showHistoricalData();\r\n this.GetMainPageData();\r\n this.GetImage();\r\n } else {\r\n Swal.fire(\"Oops...\", \"21Something went wrong!\", \"error\");\r\n }\r\n });\r\n }\r\n getDetails() {}\r\n openInNewReportTab(href: any) {\r\n Object.assign(document.createElement(\"a\"), {\r\n target: \"_blank\",\r\n href,\r\n }).click();\r\n }\r\n View() {\r\n let data =\r\n this.caseID; /* .currentTarget.parentElement.firstElementChild.value */\r\n const LoginID = localStorage.getItem(\"userID\");\r\n const val: UpdateDataForGrid = {\r\n CaseID: data,\r\n Type: \"View\",\r\n watermark: \"\",\r\n casecreatedfrom: \"\",\r\n UserID: LoginID,\r\n Remark: \"\",\r\n Supervisor: \"\",\r\n RoleID: \"\",\r\n };\r\n ApiService.UpdateGridDataAndGetUrl(val)\r\n .then((responce: any) => {\r\n if (responce.status === 200) {\r\n this.openInNewReportTab(responce.data.URL);\r\n }\r\n this.ngxService.stop();\r\n })\r\n .catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire(\"Oops...\", \"Something went wrong try again!\", \"error\");\r\n });\r\n }\r\n onItemSelect(item: any) {\r\n let p = this.selectedItems.length;\r\n console.log(item);\r\n }\r\n onSelectAll(items: any) {\r\n console.log(items);\r\n }\r\n onDeSelect(items: any) {\r\n this.deleteMsg(items.id);\r\n }\r\n deleteMsg(msg: string) {}\r\n bindDropdownOnEdit() {\r\n try {\r\n setTimeout(() => {\r\n if (this.caseDetails.Document_id) {\r\n const item = this.caseDetails.Document_id;\r\n const valArray = item.split(\",\");\r\n for (const valItem in valArray) {\r\n const supVal = this.dropdownList.find(\r\n (value) => value.id === +valArray[valItem]\r\n );\r\n if (supVal) {\r\n this.newSelectedItems.push(supVal);\r\n }\r\n }\r\n this.selectedItems = this.newSelectedItems;\r\n }\r\n }, 500);\r\n } catch (error) {\r\n console.log(\"Error IS \", error);\r\n }\r\n }\r\n GetUsageDataNew() {\r\n this.propertyTypeNEw = \"Select\";\r\n this.GetUsageData(\"Usage\");\r\n }\r\n GetUsageDataNewpro() {\r\n this.propertyTypeNEw = \"Select\";\r\n this.GetUsageData(\"propertytype\");\r\n }\r\n GetUsageData(e: any) {\r\n this.ngxService.start();\r\n let val: IUsage;\r\n let callAPI: boolean = true;\r\n if (e == \"Usage\") {\r\n val = {\r\n CaseID: this.caseID,\r\n type: \"Usage\",\r\n ID: \"\",\r\n };\r\n } else {\r\n if (this.selectedUsage == \"Select\") {\r\n callAPI = false;\r\n }\r\n val = {\r\n CaseID: this.caseID,\r\n type: \"propertytype\",\r\n ID: this.selectedUsage,\r\n };\r\n }\r\n if (callAPI) {\r\n ApiService.GetUsageData(val)\r\n .then((responce: any) => {\r\n if (responce.status == 200) {\r\n if (responce.data) {\r\n if (e == \"Usage\") {\r\n this.DDLUsageData = responce.data.MasterData;\r\n } else {\r\n this.DDLPropertyData = responce.data.MasterData;\r\n let p = this.propertyTypeNEw;\r\n this.selectedPropertytype = this.propertyTypeNEw;\r\n this.showMultidropDown();\r\n }\r\n }\r\n }\r\n this.ngxService.stop();\r\n })\r\n .catch((e: any) => {\r\n this.ngxService.stop();\r\n // Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n console.log(\"Error In GetUsageData\", JSON.stringify(val));\r\n });\r\n }\r\n }\r\n showMultidropDown() {\r\n if (this.selectedUsage == \"5\") {\r\n $(\"#ddlPropertyType\").attr(\"multiple\", \"multiple\");\r\n $(\"#ddlPropertyType\").attr(\r\n \"title\",\r\n \"You can select multiple value using CTRL+value\"\r\n );\r\n } else {\r\n $(\"#ddlPropertyType\").removeAttr(\"multiple\");\r\n $(\"#ddlPropertyType\").removeAttr(\"title\");\r\n }\r\n if (this.propertyTypeNEw != \"Select\") {\r\n var dataarray = this.propertyTypeNEw.split(\",\");\r\n $(\"#ddlPropertyType\").val(dataarray);\r\n $(\"#ddlPropertyType\").multiselect(\"refresh\");\r\n }\r\n }\r\n\r\n closeModel() {\r\n $(\"#modelShowData\").hide();\r\n }\r\n showHistoricalData() {\r\n this.historicalData = true;\r\n // this.webcrowlData = false;\r\n // this.ModalTitle = \"Case Details\"\r\n /// $(\"#modelShowData\").show();\r\n\r\n this.ngxService.start();\r\n\r\n window.console.log(\"CaseID\", this.caseID);\r\n // window.atob(this.caseID);\r\n // const data = window.btoa(this.caseID);\r\n // const id=window.atob(data);data;\r\n // this.caseID=data;\r\n ApiService.SupSidebar(this.caseID)\r\n .then((responce: any) => {\r\n if (responce.status == 200) {\r\n if (responce.data) {\r\n this.ngxService.stop();\r\n try {\r\n // this.HistoricalData = responce.data;\r\n this.CaseUid = responce.data.CaseUID;\r\n this.BankName = responce.data.BankName;\r\n this.BranchName = responce.data.BranchName;\r\n this.App_Name = responce.data.Applicant_Name;\r\n this.Property_Numb = responce.data.Property_No;\r\n this.Build_no = responce.data.Building_No;\r\n this.Landmark = responce.data.Land_mark;\r\n this.streat = responce.data.Street_Sector;\r\n // this.state = responce.data.statename;\r\n this.city = responce.data.cityname;\r\n this.location = responce.data.LocationName;\r\n this.case_Type = responce.data.typeofcasename;\r\n this.document_details = responce.data.Documents;\r\n this.file_no = responce.data.File_No;\r\n this.rate = responce.data.TotalFees;\r\n this.unit = responce.data.Block;\r\n this.case_status = responce.data.CaseStatusname;\r\n this.eng = responce.data.engName;\r\n this.Sublocation = responce.data.SubLocationname;\r\n this.getdocurl = responce.data.CaseDoc;\r\n for (const Dvalue in responce.data.CaseDoc) {\r\n let docValss = {\r\n url: this.getdocurl[Dvalue].url,\r\n name: this.getdocurl[Dvalue].name,\r\n };\r\n this.getdocurl[Dvalue] = docValss;\r\n }\r\n } catch (e) {\r\n window.console.log(e);\r\n }\r\n // this.openInNewTabs(this.getdocurl);\r\n }\r\n }\r\n this.ngxService.stop();\r\n })\r\n .catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire(\"Oops...\", \"Something went wrong try again!\", \"error\");\r\n });\r\n }\r\n\r\n ShowCaseData(ds: any) {\r\n if (ds == \"P\") {\r\n $(\"#modelShowDataCase\").hide();\r\n $(\"#modelShowDataPhoto\").show();\r\n }\r\n if (ds == \"C\") {\r\n $(\"#modelShowDataCase\").show();\r\n $(\"#modelShowDataPhoto\").hide();\r\n }\r\n }\r\n GetImage() {\r\n this.ngxService.start();\r\n ApiService.GetAllImage(this.caseID)\r\n .then((responce: any) => {\r\n this.ImgVal = responce.data.MainImage;\r\n for (const ival in responce.data.MainImage) {\r\n let docValssa = {\r\n URL:\r\n responce.data.MainImage[ival].URL +\r\n \"?type=\" +\r\n new Date().getMilliseconds(),\r\n name: responce.data.MainImage[ival].name,\r\n };\r\n this.getMainImage[ival] = docValssa;\r\n this.SelectedImageMain = this.getMainImage[0].URL;\r\n }\r\n for (const ival in responce.data.TemplateImage) {\r\n let docValssa = {\r\n URL:\r\n responce.data.TemplateImage[ival].URL +\r\n \"?type=\" +\r\n new Date().getMilliseconds(),\r\n name: responce.data.TemplateImage[ival].name,\r\n };\r\n this.getTemplateImage[ival] = docValssa;\r\n this.SelectedImage = this.getTemplateImage[0].URL;\r\n }\r\n debugger;\r\n for (const ival in responce.data.OtherImage) {\r\n let docValssa = {\r\n URL:\r\n responce.data.OtherImage[ival].URL +\r\n \"?type=\" +\r\n new Date().getMilliseconds(),\r\n name: responce.data.OtherImage[ival].name,\r\n };\r\n this.getOtherImage[ival] = docValssa;\r\n this.SelectedImageOther = this.getOtherImage[0].URL;\r\n }\r\n this.ngxService.stop();\r\n })\r\n .catch((error) => {\r\n this.ngxService.stop();\r\n Swal.fire(\"Oops...\", \"Something went wrong\", \"error\");\r\n });\r\n }\r\n\r\n GetEditCaseDetail(val: string) {\r\n this.ngxService.start();\r\n ApiService.SupSidebar(val)\r\n .then((responce: any) => {\r\n this.ngxService.stop();\r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n this.caseDetails = responce.data;\r\n this.bindDropdownOnEdit();\r\n this.bindPreviousValue();\r\n }\r\n }\r\n })\r\n .catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire(\"Oops...\", \"1111Something went wrong!\", \"error\");\r\n });\r\n }\r\n\r\n bindPreviousValue() {\r\n // this.YearCompletiomn= this.caseDetails.year_of_Completion;\r\n // this.propertyMethod= this.caseDetails.V_Fair_Market_Type;\r\n // this.MarketRateMin= this.caseDetails.Market_Rate_Property_Min;\r\n // this.MarketRateMax= this.caseDetails.Market_Rate_Property_Max;\r\n // this.RateAdopted= this.caseDetails.Applicable_Rate_Land;\r\n // this.fairmarketvalue= this.caseDetails.Fair_Market_Value;\r\n // this.ExtraRemark= this.caseDetails.V_extra_remark;\r\n // this.Latitude= this.caseDetails.lat;\r\n // this.Longitude= this.caseDetails.longi;\r\n\r\n // this.BuildingName = this.caseDetails.BuildingNameN;\r\n // this.Streat = this.caseDetails.StreatRoadN;\r\n //this.Sector = this.caseDetails.SectorN;\r\n // this.propertyFirst = this.caseDetails.Property_titleN;\r\n console.log(\"preivous\",this.caseDetails);\r\n \r\n this.propertyNo = this.caseDetails.PropertyValueN;\r\n // this.Block = this.caseDetails.Block;\r\n\r\n // this.CompleteAddress = this.caseDetails.AddressTRF;\r\n this.addressPerDocument = this.caseDetails.AddressDOC;\r\n this.addressPerActule = this.caseDetails.AddressSite;\r\n this.addressofproperty = this.caseDetails.AddressSite;\r\n this.propertyDescription = this.caseDetails.PropertyRemarks;\r\n this.selectedUsage = this.caseDetails.usage;\r\n this.Latitude = this.caseDetails.lat;\r\n this.Longitude = this.caseDetails.longi;\r\n debugger;\r\n\r\n if (this.caseDetails.usage != \"Select\") {\r\n if (this.DDLUsageData) {\r\n const data = this.DDLUsageData.find(\r\n (val) => val.Name === this.caseDetails.usage\r\n );\r\n if (data) {\r\n this.selectedUsage = data.Name;\r\n this.GetUsageData(\"propertytype\");\r\n }\r\n } else {\r\n setTimeout(function () {\r\n const data = this.DDLUsageData.find(\r\n (val) => val.Name === this.caseDetails.usage\r\n );\r\n if (data) {\r\n this.selectedUsage = data.Name;\r\n this.GetUsageData(\"propertytype\");\r\n }\r\n }, 3000);\r\n }\r\n }\r\n if (this.caseDetails.propertytype) {\r\n this.propertyTypeNEw = this.caseDetails.propertytype;\r\n this.GetUsageData(\"propertytype\");\r\n }\r\n }\r\n GetMainPageData() {\r\n this.ngxService.start();\r\n let data: ISupPropertydetailsOther = {\r\n CaseID: this.caseID,\r\n Type: \"PD\",\r\n Stage: \"D\",\r\n };\r\n ApiService.SupPropertydetails(data)\r\n .then((responce: any) => {\r\n debugger;\r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n let val = responce.data;\r\n this.YearCompletiomn = val.year_of_Completion;\r\n this.propertyMethod = val.V_Fair_Market_Type;\r\n this.MarketRateMin = val.Market_Rate_Property_Min;\r\n this.MarketRateMax = val.Market_Rate_Property_Max;\r\n this.RateAdopted = val.Applicable_Rate_Land;\r\n this.fairmarketvalue = val.Fair_Market_Value;\r\n this.ExtraRemark = val.V_extra_remark;\r\n this.Latitude = val.lat;\r\n this.Longitude = val.longi;\r\n }\r\n }\r\n this.ngxService.stop();\r\n })\r\n .catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire(\"Oops...\", \"Something went wrong try again!\", \"error\");\r\n });\r\n }\r\n\r\n updateAddress() {\r\n debugger;\r\n\r\n this.ngxService.start();\r\n let val: IUpdateFormatNotCompatable = {\r\n CaseID: this.caseID,\r\n Usage: this.selectedUsage,\r\n PropertyType: this.selectedPropertytype,\r\n YearC: this.YearCompletiomn,\r\n VMethod: this.propertyMethod,\r\n MinRate: this.MarketRateMin,\r\n MaxRate: this.MarketRateMax,\r\n RateAdopted: this.RateAdopted,\r\n FMV: this.fairmarketvalue,\r\n ExtraRemark: this.ExtraRemark,\r\n Latitude: this.Latitude,\r\n Longitude: this.Longitude,\r\n };\r\n ApiService.SupUpdateNotCData(val)\r\n .then((responce: any) => {\r\n this.ngxService.stop();\r\n const val = window.btoa(this.caseID);\r\n if (responce.status === 200) {\r\n // if (this.valuationID == 1) {\r\n // this.router.navigate([\"/OsvGeneralDetail1\", { id: val, valuation: this.valuationID, type: 'G' }]);\r\n // } else if (this.valuationID == 2) {\r\n // this.router.navigate([\"SupEditFtv\", { id: val, valuation: this.valuationID, type: \"Infracture\" }]);\r\n // }\r\n Swal.fire(\"Thanks...\", \"Update Data Successfully\", \"success\");\r\n // this.router.navigate([\"/ReportAnalysis\"]);\r\n }\r\n })\r\n .catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire(\"Oops...\", \"something went wrong\", \"error\");\r\n });\r\n }\r\n\r\n // Skip() {\r\n // const val = window.btoa(this.caseID);\r\n // if (this.valuationID == 2) {\r\n\r\n // this.router.navigate([\"SupEditFtv\", { id: val }]);\r\n // } else if (this.valuationID == 1) {\r\n // this.router.navigate([\"SupEdit\", { id: val }]);\r\n // }\r\n // }\r\n\r\n //Top Header Function\r\n handlereport(evt) {\r\n this.reportPlanDoc = evt.target.files;\r\n }\r\n updateDocument() {\r\n console.log(\"clicked\");\r\n console.log(\"clicked2\", this.reportPlanDoc);\r\n if (this.selectedUsage == \"\") {\r\n document.getElementById(\"ddlUsageType\").focus();\r\n Swal.fire(\"Oops...\", \"Please Select Usage Type!\", \"warning\");\r\n } else if (this.selectedPropertytype == \"\") {\r\n document.getElementById(\"ddlPropertyType\").focus();\r\n Swal.fire(\"Oops...\", \"Please Select Property Type!\", \"warning\");\r\n } else if (this.YearCompletiomn == \"\") {\r\n document.getElementById(\"txtYear\").focus();\r\n Swal.fire(\"Oops...\", \"Please Select Year!\", \"warning\");\r\n } else if (this.propertyMethod == \"\") {\r\n document.getElementById(\"ddlproper\").focus();\r\n Swal.fire(\"Oops...\", \"Please Select Valuation Method!\", \"warning\");\r\n } else if (this.MarketRateMin == \"\") {\r\n document.getElementById(\"txtMarketRateMin\").focus();\r\n Swal.fire(\"Oops...\", \"Please Select Min Market Rate!\", \"warning\");\r\n } else if (this.MarketRateMax == \"\") {\r\n document.getElementById(\"txtMarketRateMax\").focus();\r\n Swal.fire(\"Oops...\", \"Please Select Max Market Rate!\", \"warning\");\r\n } else if (this.RateAdopted == \"\") {\r\n document.getElementById(\"inptRate\").focus();\r\n Swal.fire(\"Oops...\", \"Please Select Rate!\", \"warning\");\r\n } else if (this.fairmarketvalue == \"\") {\r\n document.getElementById(\"txtFairmarketval\").focus();\r\n Swal.fire(\"Oops...\", \"Please Select Fair Market Value!\", \"warning\");\r\n } else if (this.ExtraRemark == \"\") {\r\n document.getElementById(\"extraRemarks\").focus();\r\n Swal.fire(\"Oops...\", \"Please Select Extra Remark!\", \"warning\");\r\n } else if (this.Latitude == \"\") {\r\n document.getElementById(\"txtlatitude\").focus();\r\n Swal.fire(\"Oops...\", \"Please Select latitude!\", \"warning\");\r\n } else if (this.Longitude == \"\") {\r\n document.getElementById(\"txtlongitude\").focus();\r\n Swal.fire(\"Oops...\", \"Please Select longitude!\", \"warning\");\r\n } else if (this.reportPlanDoc) {\r\n console.log(\"datat\", this.reportPlanDoc);\r\n\r\n let formData = new FormData();\r\n if (this.reportPlanDoc) {\r\n formData.append(\"CaseID\", this.caseID);\r\n formData.append(\"imgname\", this.reportPlanDoc[0].name);\r\n formData.append(\"files\", this.reportPlanDoc[0]);\r\n formData.append(\"loginID\", this.session.UserID);\r\n }\r\n this.ngxService.start();\r\n ApiService.UpdateReport(formData)\r\n .then((responce: any) => {\r\n debugger;\r\n\r\n if (responce.status === 200) {\r\n this.updateAddress();\r\n // this.router.navigate([\"/ReportAnalysis\", { id: this.logID }]);\r\n //Swal.fire('Success...', 'Upload Report Sucessfully!', 'success');\r\n }\r\n this.ngxService.stop();\r\n })\r\n .catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire(\r\n \"Oops...\",\r\n \"Something went wrong in document update!\",\r\n \"error\"\r\n );\r\n });\r\n } else {\r\n Swal.fire(\"Oops...\", \"Please atteched the manual report PDF!\", \"warning\");\r\n }\r\n }\r\n PropertyDetails(e: any) {\r\n debugger;\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 2) {\r\n this.router.navigate([\r\n \"/UpdateAddress\",\r\n { id: data, valuation: this.valuationID },\r\n ]);\r\n }\r\n }\r\n InfractureDetails(e: any) {\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 2) {\r\n this.router.navigate([\r\n \"/SupEditFtv\",\r\n { id: data, valuation: this.valuationID, type: \"Infracture\" },\r\n ]);\r\n }\r\n }\r\n CatchMentAnalysis(e: any) {\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 2) {\r\n this.router.navigate([\r\n \"/SupEditFtv\",\r\n { id: data, valuation: this.valuationID, type: \"CatchMent\" },\r\n ]);\r\n }\r\n }\r\n Valuation(e: any) {\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 2) {\r\n this.router.navigate([\r\n \"/SupFtvFinalValuation\",\r\n { id: data, valuation: this.valuationID },\r\n ]);\r\n }\r\n }\r\n GenralDetails1(e: any) {\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 1) {\r\n this.router.navigate([\r\n \"/OsvGeneralDetail1\",\r\n { id: data, valuation: this.valuationID, type: \"G\" },\r\n ]);\r\n }\r\n }\r\n GenralDetails2(e: any) {\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 1) {\r\n this.router.navigate([\r\n \"/OsvGeneralDetail1\",\r\n { id: data, valuation: this.valuationID, type: \"S\" },\r\n ]);\r\n }\r\n }\r\n\r\n PropertyDetail(e: any) {\r\n debugger;\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 1) {\r\n this.router.navigate([\r\n \"/OsvPropertyDetail\",\r\n { id: data, valuation: this.valuationID },\r\n ]);\r\n }\r\n }\r\n CatchMentDetails(e: any) {\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 1) {\r\n this.router.navigate([\r\n \"/OsvCatchmentAreaAnalysis\",\r\n { id: data, valuation: this.valuationID },\r\n ]);\r\n }\r\n }\r\n CFM(e: any) {\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 1) {\r\n this.router.navigate([\r\n \"/OsvCfm\",\r\n { id: data, valuation: this.valuationID },\r\n ]);\r\n }\r\n }\r\n Other(e: any) {\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 1) {\r\n this.router.navigate([\r\n \"/OsvOther\",\r\n { id: data, valuation: this.valuationID },\r\n ]);\r\n }\r\n }\r\n ChangeImageTemplate(e: any) {\r\n debugger;\r\n this.SelectedImage = this.getTemplateImage[e].URL;\r\n }\r\n ChangeImageMain(e: any) {\r\n debugger;\r\n this.SelectedImageMain = this.getMainImage[e].URL;\r\n }\r\n ChangeImageOther(e: any) {\r\n debugger;\r\n this.SelectedImageOther = this.getOtherImage[e].URL;\r\n }\r\n PropertyRadar(e: any) {\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 1) {\r\n this.router.navigate([\r\n \"/PropertyRadar\",\r\n { id: data, valuation: this.valuationID },\r\n ]);\r\n }\r\n }\r\n}\r\n","module.exports = \"\\r\\n
      \\r\\n
    • \\r\\n General Details1\\r\\n
    • \\r\\n
    • \\r\\n General Details2\\r\\n
    • \\r\\n
    • \\r\\n Property Detail\\r\\n
    • \\r\\n \\r\\n
    • \\r\\n CFM\\r\\n
    • \\r\\n
    • \\r\\n Other\\r\\n
    • \\r\\n
    • \\r\\n Property Radar\\r\\n
    • \\r\\n\\r\\n
    • \\r\\n \\r\\n
    • \\r\\n
    • \\r\\n \\r\\n
    • \\r\\n\\r\\n

    \\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n Floor\\r\\n \\r\\n Room\\r\\n \\r\\n Kitchen\\r\\n \\r\\n Toilet\\r\\n \\r\\n Lobby\\r\\n \\r\\n Sitting Room\\r\\n \\r\\n Hall\\r\\n \\r\\n Dining hall \\r\\n \\r\\n Other \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n Build Up Area Details - Floor-wise Break up of Build up Area(if Applicable)\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n 0\\\">\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n Floor\\r\\n \\r\\n Actual(sq.ft.)\\r\\n \\r\\n Permissible(sq.ft.)\\r\\n \\r\\n Sanction Plan\\r\\n \\r\\n Area Adopted for Valuation (sq.ft.)\\r\\n \\r\\n Deviations\\r\\n \\r\\n Usage \\r\\n \\r\\n Occupant \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n\\r\\n\\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n\\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n\\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n\\r\\n
    \\r\\n

    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n

    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n

    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n\\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n\\r\\n \\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n Save\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n\\r\\n\\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    {{ModalTitle1}}
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \"","import { Component, OnInit, Renderer2, ElementRef, Output, Input, EventEmitter, Directive } from '@angular/core';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { ApiService } from '../service/service';\r\nimport { SessionService } from '../service/sessionGlobalVar';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport Swal from 'sweetalert2';\r\nimport { ISuperPropertyDetails, ISuperPropertyDetailsUpdate, Ibylaws, IWebClowl, IQCreference, IUsage,UpdateDataForGrid } from '../service/type'\r\nimport { iterateListLike } from '@angular/core/src/change_detection/change_detection_util';\r\ndeclare var $: any;\r\nimport * as JSZip from 'jszip';\r\nimport * as JSZipUtils from 'jszip-utils';\r\nimport * as FileSaver from 'file-saver';\r\ninterface Floor {\r\n name: string;\r\n id:number;\r\n}\r\n\r\n@Component({\r\n selector: 'app-sup-property-details',\r\n templateUrl: './sup-property-details.component.html',\r\n styles: []\r\n})\r\nexport class SUPPropertyDetailsComponent implements OnInit {\r\n\r\n caseID: string;\r\n valuationID: number;\r\n historicalData: boolean = false;\r\n webcrowlData: boolean = false;\r\n DDlUsage: string = \"Select\";\r\n DDlPropertyType: string = \"Select\";\r\n FloorDropDown = []\r\n dropdownList:Floor[] = [];\r\n selectedItems:Floor[] = [];\r\n sanactionPlane: string = \"No\";\r\n dropdownSettings = {};\r\n dropdownSettingsProperty = {};\r\n MBasement: string = \"B\";\r\n MStilt: string = \"S\";\r\n MLG: string = \"LG\";\r\n MUG: string = \"UG\";\r\n MMAZZ: string = \"MAZZ\";\r\n MGround: string = \"G\";\r\n MFloor: string = \"Floor\";\r\n areaOfPlotDocument: string = \"\";\r\n areaOfPlotApprovedPlan: string = \"\";\r\n areaOfPlotAct: string = \"\";\r\n carpetArea: string = \"\";\r\n buildUpArea:string = \"\";\r\n loadingForBua: string = \"\";\r\n wheatherCompundable: string = \"\";\r\n PropertyRemark: string = \"\";\r\n yearsOfCompletion: string = \"\";\r\n AgeOfproperty: string = \"\";\r\n conditionOfTheBuilding: string = \"Select\";\r\n EstimateFutureLifeProperty: string = \"\";\r\n NACompletion: boolean = false;\r\n HidefirstTable: boolean = false;\r\n Gridwebcrowl: any;\r\n HistoricalData: any;\r\n HeightOfTheBuilding: string = \"\";\r\n DDLUsageData: any;\r\n DDLPropertyData: any;\r\n ModalTitle: string;\r\n propertyTypeNEw: string = \"Select\";\r\n historicalData1: boolean = false;\r\n ModalTitle1: string;\r\n HistoricalData1: any;\r\n CaseUid: string;\r\n App_Name: string;\r\n Property_Numb: string;\r\n Build_no: string;\r\n Landmark: string;\r\n streat: string;\r\n state: string;\r\n city: string;\r\n location: string;\r\n case_Type: string;\r\n file_no: string;\r\n document_details: string;\r\n rate: string;\r\n unit: string;\r\n case_status: string;\r\n eng: string;\r\n Sublocation: string;\r\n totalageCalc:any;\r\n getdocurl:any;\r\n calcarpet:string;\r\n accomodationDetail=[];\r\n accomodationDetailSort=[];\r\n builtuppropertyDetails=[];\r\n builtuppropertyDetailsSort=[];\r\n selectedItemsSort=[];\r\n TotalActual:number=0;\r\n TotalPermissible:number=0;\r\n TotalSaction:number=0;\r\n TotalAreaDoc:number=0;\r\n TotalAreaAdopted:number=0;\r\n TotalDeviation:number=0;\r\n dropdownList2 = [];\r\n dropdownList3 = [];\r\n selectedItems2 = [];\r\n newSelectedItems = [];\r\n dropdownSettings2 = {};\r\n IsMixedShow:boolean=false;\r\n EditpropertyAll:any=\"\";\r\n getAllImage = [];\r\n getMainImage = [];\r\n getOtherImage = [];\r\n getTemplateImage = [];\r\n SelectedImage: string = \"\";\r\n SelectedImageMain: string = \"\";\r\n SelectedImageOther: string = \"\";\r\n ImgVal: any = \"\";\r\n images =[];\r\n imagename=[];\r\n isZoomed = false;\r\n pos = { top: 0, left: 0, x: 0, y: 0 };\r\n constructor(private route: ActivatedRoute, private router: Router, private service: ApiService, private session: SessionService, private ngxService: NgxUiLoaderService, private renderer: Renderer2, private el: ElementRef) { }\r\n\r\n\r\n ngOnInit() {\r\n debugger;\r\n $(\"#modelShowDataCase\").hide();\r\n $(\"#modelShowDataPhoto\").show();\r\n this.route.params.subscribe(params => {\r\n if (params.id) {\r\n const id = window.atob(params.id);\r\n this.caseID = id;\r\n if (params.valuation == 1) {\r\n this.valuationID = params.valuation;\r\n } else {\r\n Swal.fire('Oops...', 'Something went wrong!', 'error');\r\n this.router.navigate([\"/SupHome\"]);\r\n }\r\n } else {\r\n Swal.fire('Oops...', 'Something went wrong!', 'error');\r\n this.router.navigate([\"/SupHome\"]);\r\n }\r\n this.GetUsageData(\"Usage\");\r\n this.getSupPropertyDetails(\"D\"); \r\n this.getSupPropertyDetails(\"P\");\r\n this.getSupPropertyDetails(\"A\"); \r\n this.bindFloorDropDown();\r\n this.multiSelectedDropDownLIst();\r\n this.showHistoricalData1()\r\n this.GetImage();\r\n // this.ShowCaseData(\"P\");\r\n /* this.ShowAndHideTableRow();\r\n this.WebcrollData();\r\n this.QCReferenceData(); */\r\n });\r\n }\r\n onDropDownChange() {\r\n \r\n this.dropdownList = [];\r\n if (this.MBasement != \"B\") {\r\n for (let p = 1; p <= (+this.MBasement); p++) {\r\n // const val = { item_id: 'B' + p + '', item_text: 'B' + p + '' };\r\n const val={name:'B'+p, id:p};\r\n this.dropdownList.push(val)\r\n }\r\n }\r\n if (this.MStilt != \"S\") {\r\n if (this.MStilt == \"YES\") {\r\n // const val = { item_id: 'S', item_text: 'S' };\r\n const val={name:'S', id:5};\r\n this.dropdownList.push(val)\r\n }\r\n }\r\n if (this.MLG != \"LG\") {\r\n if (this.MLG == \"YES\") {\r\n // const val = { item_id: 'LG', item_text: 'LG' };\r\n const val={name:'LG', id:6};\r\n this.dropdownList.push(val)\r\n }\r\n }\r\n if (this.MUG != \"UG\") {\r\n if (this.MUG == \"YES\") {\r\n // const val = { item_id: 'UG', item_text: 'UG' };\r\n const val={name:'UG', id:7};\r\n this.dropdownList.push(val)\r\n }\r\n }\r\n if (this.MMAZZ != \"MAZZ\") {\r\n if (this.MMAZZ == \"YES\") {\r\n // const val = { item_id: 'MAZZ', item_text: 'MAZZ' };\r\n const val={name:'MAZZ', id:8};\r\n this.dropdownList.push(val)\r\n }\r\n }\r\n if (this.MGround != \"G\") {\r\n if (this.MGround == \"YES\") {\r\n // const val = { item_id: 'G', item_text: 'G' };\r\n const val={name:'G', id:9};\r\n this.dropdownList.push(val)\r\n }\r\n }\r\n if (this.MFloor != \"Floor\") {\r\n for (let p = 1; p <= (+this.MFloor); p++) {\r\n //const val = { item_id: 'F' + p + '', item_text: 'F' + p + '' };\r\n let c = p+9;\r\n const val={name:'F'+p, id:c};\r\n this.dropdownList.push(val)\r\n }\r\n }\r\n console.log(this.dropdownList);\r\n }\r\n ChangeImageTemplate(e: any) {\r\n debugger;\r\n this.SelectedImage = this.getTemplateImage[e].URL;\r\n }\r\n ChangeImageMain(e: any) {\r\n debugger;\r\n this.SelectedImageMain = this.getMainImage[e].URL;\r\n }\r\n ChangeImageOther(e: any) {\r\n debugger;\r\n this.SelectedImageOther = this.getOtherImage[e].URL;\r\n }\r\n multiSelectedDropDownLIst() {\r\n this.dropdownSettings = {\r\n singleSelection: false,\r\n idField: 'id',\r\n textField: 'name',\r\n itemsShowLimit: 7,\r\n allowSearchFilter: false,\r\n enableCheckAll: false\r\n };\r\n }\r\n bindFloorDropDown() {\r\n let i = 1;\r\n while (i <= 100) {\r\n const val = { id: i }\r\n this.FloorDropDown.push(val);\r\n i++\r\n }\r\n }\r\n onItemSelect(item: any) {\r\n console.log(item);\r\n const flrr=this.accomodationDetailSort.find(val=>val.Floor==item.name);\r\n if(flrr){}\r\n else{\r\n this.accomodationDetail.push({\r\n id: item.id,\r\n Floor: item.name,\r\n Room: 'R',\r\n Accommodation_Details: item,\r\n Kitchen: 'K',\r\n Toilet:'T',\r\n loby: 'L',\r\n SittingRoom: 'S',\r\n Hall: 'H',\r\n DiningHall:'D',\r\n Other: ''\r\n });\r\n }\r\n this.accomodationDetailSort = [];\r\n this.accomodationDetailSort = this.accomodationDetail.sort((a,b)=> a.id-b.id);\r\n \r\n //\r\n // Buildup Property Details //\r\nconst flr=this.builtuppropertyDetailsSort.find(val=>val.Floor==item.name);\r\nif(flr){}else{\r\nthis.builtuppropertyDetails.push({\r\n id: item.id,\r\n Floor: item.name,\r\n actual: 0,\r\n permisible: 0,\r\n sanction: 0,\r\n areaadopted: 0,\r\n deviation: 0, \r\n Property_usage:'',\r\n Occupant:''\r\n});\r\n}\r\nthis.builtuppropertyDetailsSort = [];\r\nthis.builtuppropertyDetailsSort = this.builtuppropertyDetails.sort((a,b)=> a.id-b.id);\r\n //\r\n //this.CalulateCarpetOnPageLoad();\r\n //this.CalulateBuiltUpPageLoad();\r\n this.selectedItemsSort=[];\r\n this.selectedItemsSort=this.selectedItems.sort((a,b)=> a.id-b.id);\r\n console.log(this.selectedItemsSort);\r\n }\r\n onDeSelect(items: any) {\r\n debugger;\r\n console.log(items);\r\n for(let i =0; i< this.accomodationDetail.length; i++) {\r\n let acc = this.accomodationDetail[i];\r\n if(acc.Floor == items.name) {\r\n this.accomodationDetail.splice(i, 1);\r\n }\r\n }\r\n this.accomodationDetailSort = [];\r\n this.accomodationDetailSort = this.accomodationDetail.sort((a,b)=> a.id-b.id);\r\n \r\n \r\n //Property Details //\r\n for(let i =0; i< this.builtuppropertyDetails.length; i++) {\r\n let bu = this.builtuppropertyDetails[i];\r\n if(bu.Floor == items.name) {\r\n this.builtuppropertyDetails.splice(i, 1);\r\n }\r\n }\r\n this.builtuppropertyDetailsSort = [];\r\n this.builtuppropertyDetailsSort = this.builtuppropertyDetails.sort((a,b)=> a.id-b.id);\r\n this.CalulateBuiltUpOnLoad(); \r\n //\r\n }\r\n\r\n CalulateBuiltUpnKeyup(){\r\n debugger;\r\n this.TotalActual=0;\r\n this.TotalSaction=0;\r\n this.TotalPermissible=0;\r\n this.TotalAreaAdopted=0;\r\n this.TotalDeviation=0;\r\n \r\n for(let i =0; i< this.builtuppropertyDetails.length; i++) {\r\n \r\n \r\n //\r\n \r\n if(this.sanactionPlane==\"Yes\") {\r\n // calculate sanction value\r\n var items = [this.builtuppropertyDetails[i].actual, this.builtuppropertyDetails[i].sanction];\r\n var a = 0;\r\n var filtered = items.filter(function(x, y) {\r\n return x >= a;\r\n });\r\n this.builtuppropertyDetails[i].areaadopted=Math.min.apply(Math, filtered);\r\n console.log(Math.min.apply(Math, filtered));\r\n\r\n let diva =0;\r\n if(this.builtuppropertyDetails[i].actual>0 && this.builtuppropertyDetails[i].sanction>0){\r\n diva= ((this.builtuppropertyDetails[i].actual - this.builtuppropertyDetails[i].sanction) * 100) / this.builtuppropertyDetails[i].sanction;\r\n }\r\n if (diva < 0) {\r\n this.builtuppropertyDetails[i].deviation =0;\r\n }\r\n else {\r\n this.builtuppropertyDetails[i].deviation = diva.toFixed(2);\r\n }\r\n // total deviation//\r\n const Totaldiva = ((this.TotalActual - this.TotalSaction) * 100) / this.TotalSaction;\r\n if (Totaldiva < 0) {\r\n this.TotalDeviation =0;\r\n } else {\r\n this.TotalDeviation = parseFloat(Totaldiva.toFixed(2));\r\n }\r\n \r\n }\r\n else {\r\n // calculate permissible value\r\n var items = [this.builtuppropertyDetails[i].actual,this.builtuppropertyDetails[i].permisible];\r\n var a = 0;\r\n var filtered = items.filter(function(x, y) {\r\n return x >= a;\r\n });\r\n this.builtuppropertyDetails[i].areaadopted=Math.min.apply(Math, filtered);\r\n console.log(Math.min.apply(Math, filtered));\r\n \r\n let diva =0;\r\n if(this.builtuppropertyDetails[i].actual>0 && this.builtuppropertyDetails[i].permisible>0){\r\n diva= ((this.builtuppropertyDetails[i].actual - this.builtuppropertyDetails[i].permisible) * 100) / this.builtuppropertyDetails[i].permisible;\r\n }\r\n if (diva < 0) {\r\n this.builtuppropertyDetails[i].deviation =0;\r\n } \r\n else {\r\n this.builtuppropertyDetails[i].deviation = diva.toFixed(2);\r\n }\r\n // total deviation//\r\n const Totaldiva = ((this.TotalActual - this.TotalPermissible) * 100) / this.TotalPermissible;\r\n if (Totaldiva < 0) {\r\n this.TotalDeviation =0;\r\n } else {\r\n this.TotalDeviation = parseFloat(Totaldiva.toFixed(2));\r\n }\r\n //\r\n }\r\n this.TotalActual = this.TotalActual+parseFloat(this.builtuppropertyDetails[i].actual);\r\n this.TotalPermissible=this.TotalPermissible+parseFloat(this.builtuppropertyDetails[i].permisible);\r\n this.TotalSaction=this.TotalSaction+parseFloat(this.builtuppropertyDetails[i].sanction); \r\n this.TotalAreaAdopted=this.TotalAreaAdopted+parseFloat(this.builtuppropertyDetails[i].areaadopted);\r\n this.buildUpArea= this.TotalAreaAdopted.toFixed();\r\n //\r\n }\r\n \r\n }\r\n CalulateBuiltUpOnLoad(){\r\n this.TotalActual=0;\r\n this.TotalSaction=0;\r\n this.TotalPermissible=0;\r\n this.TotalAreaAdopted=0;\r\n this.TotalDeviation=0;\r\n \r\n for(let i =0; i< this.builtuppropertyDetails.length; i++) {\r\n \r\n this.TotalActual = this.TotalActual+parseFloat(this.builtuppropertyDetails[i].actual);\r\n this.TotalPermissible=this.TotalPermissible+parseFloat(this.builtuppropertyDetails[i].permisible);\r\n this.TotalSaction=this.TotalSaction+parseFloat(this.builtuppropertyDetails[i].sanction); \r\n this.TotalAreaAdopted=this.TotalAreaAdopted+parseFloat(this.builtuppropertyDetails[i].areaadopted);\r\n // this.TotalDeviation=this.TotalDeviation+parseFloat(this.builtuppropertyDetails[i].deviation); \r\n // this.buildUpArea= this.TotalAreaAdopted.toFixed();\r\n if(this.sanactionPlane==\"Yes\") {\r\n // calculate permissible value \r\n // total deviation//\r\n const Totaldiva = ((this.TotalActual - this.TotalSaction) * 100) / this.TotalSaction;\r\n if (Totaldiva < 0) {\r\n this.TotalDeviation =0;\r\n } else {\r\n this.TotalDeviation = parseFloat(Totaldiva.toFixed(2));\r\n }\r\n \r\n //\r\n }\r\n else {\r\n // calculate sanction value \r\n // total deviation//\r\n const Totaldiva = ((this.TotalActual - this.TotalPermissible) * 100) / this.TotalPermissible;\r\n if (Totaldiva < 0) {\r\n this.TotalDeviation =0;\r\n } else {\r\n this.TotalDeviation = parseFloat(Totaldiva.toFixed(2));\r\n }\r\n \r\n }\r\n\r\n } \r\n }\r\n CalculateAreaAdopted()\r\n {\r\n this.TotalAreaAdopted=0;\r\n for(let i =0; i< this.builtuppropertyDetails.length; i++) {\r\n this.TotalAreaAdopted=this.TotalAreaAdopted+parseFloat(this.builtuppropertyDetails[i].areaadopted);\r\n this.buildUpArea= this.TotalAreaAdopted.toFixed();\r\n }\r\n }\r\n///////////////////////////////////////////////////////////////////////////////////////////////\r\nGetUsageDataNew(){\r\n this.propertyTypeNEw=\"Select\";\r\n this.GetUsageData(\"PropertyType\")\r\n}\r\nGetUsageData(e: any) {\r\n debugger; \r\n this.ngxService.start();\r\n let val: IUsage;\r\n let callAPI: boolean = true;\r\n if (e == \"Usage\") {\r\n val = {\r\n CaseID: this.caseID,\r\n type: \"Usage\",\r\n ID: \"\"\r\n }\r\n } else {\r\n if (this.DDlUsage == \"Select\") {\r\n callAPI = false;\r\n }\r\n val = {\r\n CaseID: this.caseID,\r\n type: \"propertytype\",\r\n ID: this.DDlUsage\r\n }\r\n }\r\n if (callAPI) { \r\n ApiService.GetUsageData(val).then((responce: any) => {\r\n \r\n if (responce.status == 200) { \r\n if (responce.data) {\r\n if (e == \"Usage\") {\r\n this.DDLUsageData = responce.data.MasterData;\r\n } else {\r\n this.DDLPropertyData = responce.data.MasterData;\r\n if(this.DDLPropertyData){\r\n debugger;\r\n if(this.DDlUsage==\"Mixed\"){\r\n this.IsMixedShow=true;\r\n \r\n for (const value of this.DDLPropertyData) {\r\n \r\n let docVal = {\r\n id: Number(value.ID),\r\n text: value.Name\r\n }\r\n this.dropdownList3.push(docVal);\r\n }\r\n this.dropdownList2 = this.dropdownList3;\r\n }\r\n else{\r\n this.IsMixedShow=false;\r\n const data = this.DDLPropertyData.find(val => val.Name ===this.propertyTypeNEw);\r\n if (data) {\r\n this.DDlPropertyType = data.Name;\r\n }\r\n else{\r\n // let p=this.propertyTypeNEw;\r\n this.DDlPropertyType = this.propertyTypeNEw;\r\n // this.showMultidropDown();\r\n } \r\n }\r\n /* debugger;\r\n const data = this.DDLPropertyData.find(val => val.Name ===this.propertyTypeNEw);\r\n if (data) {\r\n this.DDlPropertyType = data.Name;\r\n }\r\n else{\r\n // let p=this.propertyTypeNEw;\r\n this.DDlPropertyType = this.propertyTypeNEw;\r\n // this.showMultidropDown();\r\n } */\r\n }\r\n }\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n // Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n console.log(\"Error In GetUsageData\",JSON.stringify(val))\r\n });\r\n }\r\n}\r\ngetpropertytype(ID:string,type:string){ \r\n let val: IUsage;\r\n val = {\r\n CaseID: this.caseID,\r\n type: \"propertytype\",\r\n ID: ID\r\n }\r\n ApiService.GetUsageData(val).then((responce: any) => {\r\n \r\n if (responce.status == 200) { \r\n if (responce.data) {\r\n debugger;\r\n this.DDLPropertyData = responce.data.MasterData;\r\n if(this.DDLPropertyData){\r\n if(this.DDlUsage==\"Mixed\"){\r\n debugger;\r\n this.IsMixedShow=true;\r\n \r\n for (const value of this.DDLPropertyData) {\r\n \r\n let docVal = {\r\n id: Number(value.ID),\r\n text: value.Name\r\n }\r\n this.dropdownList3.push(docVal);\r\n }\r\n this.dropdownList2 = this.dropdownList3;\r\n this.bindDropdownOnEdit();\r\n }\r\n else{\r\n \r\n const data = this.DDLPropertyData.find(val1 => val1.Name ===this.propertyTypeNEw);\r\n if (data) {\r\n this.DDlPropertyType = data.Name;\r\n }\r\n else{\r\n // let p=this.propertyTypeNEw;\r\n this.DDlPropertyType = this.propertyTypeNEw;\r\n // this.showMultidropDown();\r\n }\r\n }\r\n }\r\n \r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n // Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n console.log(\"Error In GetUsageData\",JSON.stringify(val))\r\n });\r\n}\r\nshowMultidropDown() {\r\n \r\n // if (this.DDlUsage == \"5\") { \r\n if (this.DDlUsage == \"Mixed\") {\r\n $('#ddlPropertyType').attr('multiple', 'multiple');\r\n $('#ddlPropertyType').attr('title', 'You can select multiple value using CTRL+value');\r\n } else {\r\n $('#ddlPropertyType').removeAttr('multiple');\r\n $('#ddlPropertyType').removeAttr('title');\r\n }\r\n if (this.propertyTypeNEw != \"Select\") {\r\n var dataarray = this.propertyTypeNEw.split(\",\");\r\n $('#ddlPropertyType').val(dataarray);\r\n $('#ddlPropertyType').multiselect(\"refresh\");\r\n }\r\n }\r\n onload_age_property(){\r\n const d = new Date();\r\n const n = d.getFullYear();\r\n let yr_c = this.yearsOfCompletion;\r\n if (this.yearsOfCompletion == \"\" || yr_c.toString().length != 4||this.yearsOfCompletion == \"NULL\"||this.yearsOfCompletion == \"0\") {\r\n \r\n }\r\n else {\r\n this.AgeOfproperty = (n - (+yr_c)).toString();\r\n // this.Estimat_Future_life();\r\n }\r\n}\r\nchangeStatus(e: any) {\r\n const val = this.NACompletion;\r\n if (val) {\r\n this.yearsOfCompletion = \"\";\r\n this.AgeOfproperty = \"\";\r\n this.EstimateFutureLifeProperty = \"\";\r\n $(\"#txt_YearOfCompletion\").prop('disabled', true);\r\n $(\"#AgeOfproperty\").prop('disabled', true);\r\n $(\"#EstimateFutureLifeProperty\").prop('disabled', true);\r\n $(\"#ddlConditionOfBuilding\").prop('disabled', true);\r\n } else {\r\n $(\"#txt_YearOfCompletion\").prop('disabled', false);\r\n $(\"#AgeOfproperty\").prop('disabled', false);\r\n $(\"#EstimateFutureLifeProperty\").prop('disabled', false);\r\n $(\"#ddlConditionOfBuilding\").prop('disabled', false);\r\n this.conditionOfTheBuilding = \"\";\r\n }\r\n\r\n}\r\n//Page load data //\r\nLoadDropDownChange() {\r\n this.dropdownList = [];\r\n if (this.MBasement != \"B\") {\r\n for (let p = 1; p <= (+this.MBasement); p++) {\r\n // const val = { item_id: 'B' + p + '', item_text: 'B' + p + '' };\r\n const val={name:'B'+p, id:p};\r\n this.dropdownList.push(val)\r\n }\r\n }\r\n if (this.MStilt != \"S\") {\r\n if (this.MStilt == \"YES\") {\r\n // const val = { item_id: 'S', item_text: 'S' };\r\n const val={name:'S', id:5};\r\n this.dropdownList.push(val)\r\n }\r\n }\r\n if (this.MLG != \"LG\") {\r\n if (this.MLG == \"YES\") {\r\n // const val = { item_id: 'LG', item_text: 'LG' };\r\n const val={name:'LG', id:6};\r\n this.dropdownList.push(val)\r\n }\r\n }\r\n if (this.MUG != \"UG\") {\r\n if (this.MUG == \"YES\") {\r\n // const val = { item_id: 'UG', item_text: 'UG' };\r\n const val={name:'UG', id:7};\r\n this.dropdownList.push(val)\r\n }\r\n }\r\n if (this.MMAZZ != \"MAZZ\") {\r\n if (this.MMAZZ == \"YES\") {\r\n // const val = { item_id: 'MAZZ', item_text: 'MAZZ' };\r\n const val={name:'MAZZ', id:8};\r\n this.dropdownList.push(val)\r\n }\r\n }\r\n if (this.MGround != \"G\") {\r\n if (this.MGround == \"YES\") {\r\n // const val = { item_id: 'G', item_text: 'G' };\r\n const val={name:'G', id:9};\r\n this.dropdownList.push(val)\r\n }\r\n }\r\n if (this.MFloor != \"Floor\") {\r\n for (let p = 1; p <= (+this.MFloor); p++) {\r\n //const val = { item_id: 'F' + p + '', item_text: 'F' + p + '' };\r\n let c = p+9;\r\n const val={name:'F'+p, id:c};\r\n this.dropdownList.push(val)\r\n }\r\n }\r\n console.log(this.dropdownList);\r\n}\r\n getSupPropertyDetails(stage: string) {\r\n this.ngxService.start();\r\n let data: ISuperPropertyDetails = {\r\n CaseID: this.caseID,\r\n Type: \"PD\",\r\n Stage: stage\r\n }\r\n ApiService.SupPropertydetails(data).then((responce: any) => {\r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n this.setPageDataValue(responce.data, stage);\r\n }\r\n if(stage==\"P\"){\r\n this.ngxService.stop();\r\n }\r\n }\r\n \r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n console.log(\"Error In getSupPropertyDetails\",JSON.stringify(e));\r\n // Swal.fire('Oops...', 'data is-' + JSON.stringify(data) + 'Something went wrong try again!' + stage, 'error');\r\n });\r\n}\r\n\r\nsetPageDataValue(value: any, stage: string) {\r\n \r\n try {\r\n if (stage == \"D\") {\r\n debugger;\r\n this.DDlUsage=value.propertyUsage;\r\n if(value.propertyUsage==\"Mixed\"){\r\n this.getpropertytype(this.DDlUsage,\"PropertyType\"); \r\n this.EditpropertyAll=value.Propertytype;\r\n const item = this.EditpropertyAll;\r\n const valArray = item.split(',')\r\n //\r\n\r\n\r\n //\r\n \r\n }\r\n else{\r\n \r\n this.propertyTypeNEw = value.Propertytype;\r\n this.getpropertytype(this.DDlUsage,\"PropertyType\"); \r\n }\r\n \r\n /* if (value.Propertytype) {\r\n this.propertyTypeNEw = value.Propertytype;\r\n } */\r\n if (value.Basement != \"\") {\r\n this.MBasement = value.Basement;\r\n }\r\n if (value.Stilt != \"\") {\r\n this.MStilt = value.Stilt;\r\n }\r\n if (value.LG != \"\") {\r\n this.MLG = value.LG;\r\n }\r\n if (value.UG != \"\") {\r\n this.MUG = value.UG;\r\n }\r\n if (value.Ground != \"\") {\r\n this.MGround = value.Ground;\r\n }\r\n if (value.Mazz != \"\") {\r\n this.MMAZZ = value.Mazz;\r\n }\r\n if (value.Floor != \"\") {\r\n this.MFloor = value.Floor\r\n }\r\n this.sanactionPlane = value.Sanction_Plans;\r\n this.areaOfPlotDocument = value.Plot_area_doc;\r\n this.areaOfPlotAct = value.Plot_area_act;\r\n this.areaOfPlotApprovedPlan = value.Plot_area_approved;\r\n\r\n this.carpetArea = value.CarpetArea;\r\n /* if (value.Builtup != \"\") { */\r\n this.buildUpArea = value.Builtup;\r\n /* } */\r\n\r\n \r\n \r\n this.wheatherCompundable = value.WheatherCompoundable;\r\n this.PropertyRemark = value.PropertyRemark;\r\n this.conditionOfTheBuilding = value.BuildingCondition;\r\n this.EstimateFutureLifeProperty = value.FutureLife;\r\n this.loadingForBua = value.Loading;\r\n if (value.Yearofcompleation == \"9999\") {\r\n this.yearsOfCompletion = \"\";\r\n this.AgeOfproperty = value.Ageofproperty;\r\n } \r\n \r\n else {\r\n this.yearsOfCompletion = value.Yearofcompleation;\r\n }\r\n this.onload_age_property(); \r\n this.NACompletion = value.NAConstruction;\r\n this.LoadDropDownChange();\r\n if (value.LocationFloor.length > 0) {\r\n debugger;\r\n if (value.LocationFloor[0] != \"\") {\r\n //this.dropdownList = value.locationFloor;\r\n this.selectedItems=[];\r\n for(let i =0; i fl.name == value.LocationFloor[i]);\r\n this.selectedItems.push({name: val.name, id: val.id});\r\n }\r\n //value.locationFloor; \r\n }\r\n /* if (value.LocationFloor[0] != \"\") {\r\n this.selectedItems = value.LocationFloor;\r\n this.dropdownList = value.LocationFloor;\r\n } */\r\n }\r\n if (value.NAConstruction == \"true\") {\r\n this.NACompletion = true;\r\n this.changeStatus(\"\");\r\n } else {\r\n this.NACompletion = false;\r\n }\r\n // this.calculateCarpetarea();\r\n // this.calculateBUA();\r\n this.onDropDownChange();\r\n \r\n }\r\n else if (stage == \"P\") {\r\n for(let i=0;i {\r\n if (responce.status == 200) {\r\n if (responce.data) {\r\n this.setBylowsValue(responce.data)\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n console.log(\"Error In GetBylaws\",JSON.stringify(e));\r\n // Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n}\r\nsetBylowsValue(val: any) {\r\n for(let i =0; i< this.builtuppropertyDetails.length; i++) {\r\n let bu = this.builtuppropertyDetails[i];\r\n if(bu.Floor == \"B1\" || bu.Floor == \"B2\" || bu.Floor == \"B3\" || bu.Floor == \"B4\") {\r\n this.builtuppropertyDetails[i].permisible=val.BF;\r\n }\r\n if(bu.Floor == \"G\" || bu.Floor == \"UG\" || bu.Floor == \"LG\") {\r\n this.builtuppropertyDetails[i].permisible=val.GF;;\r\n}\r\nif(bu.Floor == \"F1\") {\r\n this.builtuppropertyDetails[i].permisible= val.FF;\r\n}\r\nif(bu.Floor == \"F2\") {\r\n this.builtuppropertyDetails[i].permisible= val.SF;\r\n}\r\nif(bu.Floor == \"F3\") {\r\n this.builtuppropertyDetails[i].permisible= val.TF;\r\n}\r\nif(bu.Floor == \"F4\") {\r\n this.builtuppropertyDetails[i].permisible= val.FOURF;\r\n}\r\n \r\n}\r\n\r\n}\r\n\r\ncalculatebuildup(){\r\n this.calcarpet=(((parseInt(this.carpetArea)* parseInt(this.loadingForBua))/100).toFixed());\r\nthis.buildUpArea=(parseInt(this.carpetArea)+parseInt(this.calcarpet)).toFixed();\r\n // this.buildUpArea=(((parseInt(this.carpetArea)* parseInt(this.loadingForBua))).toFixed());\r\n}\r\n\r\n\r\nsaveSuperPropertyDetails() {\r\n debugger;\r\n this.ngxService.start();\r\n let NAConstruction = \"\";\r\n let loginID = localStorage.getItem(\"userID\");\r\n let FloorVal = \"\";\r\n if (this.conditionOfTheBuilding == \"Select\") {\r\n this.conditionOfTheBuilding = \"\";\r\n }\r\n if (this.selectedItems.length > 0) {\r\n for (const val in this.selectedItems) {\r\n FloorVal += this.selectedItems[val].name + ',';\r\n }\r\n FloorVal = FloorVal.slice(0, -1);\r\n }\r\n //\r\n let tfloor=\"\";\r\n if (this.MBasement != \"B\")\r\n tfloor += this.MBasement+\"B\"+',';\r\n else\r\n tfloor =\"BB\"+',';\r\n if (this.MStilt != \"S\")\r\n if(this.MStilt==\"YES\")\r\n tfloor += \"Yes\"+',';\r\n else\r\n tfloor += \"S\"+',';\r\n else\r\n tfloor += \"S\"+',';\r\n if (this.MLG != \"LG\")\r\n if(this.MLG==\"YES\")\r\n tfloor += \"LG\"+',';\r\n else\r\n tfloor += \"No\"+',';\r\n else\r\n tfloor += \"No\"+',';\r\n if (this.MUG != \"UG\")\r\n if(this.MUG==\"YES\")\r\n tfloor += \"UG\"+',';\r\n else\r\n tfloor += \"No\"+','; \r\n else\r\n tfloor += \"No\"+',';\r\n if (this.MMAZZ != \"MAZZ\")\r\n if(this.MGround==\"YES\")\r\n tfloor += \"MAZZ\"+',';\r\n else\r\n tfloor += \"No\"+',';\r\n else\r\n tfloor += \"No\"+',';\r\n if (this.MGround != \"G\")\r\n if(this.MGround==\"YES\")\r\n tfloor += \"G\"+'';\r\n else\r\n tfloor += \"No\"+''; \r\n else\r\n tfloor += \"No\"+'';\r\n \r\n if (this.MFloor != \"0\")\r\n if(this.MFloor==\"Floor\")\r\n tfloor+=\"\";\r\n else\r\n tfloor += ','+ this.MFloor;\r\n else\r\n tfloor = tfloor;\r\n//alert(tfloor);\r\n //\r\n if (this.NACompletion) {\r\n NAConstruction = \"true\";\r\n } else {\r\n NAConstruction = \"false\";\r\n }\r\n if (this.DDlPropertyType == \"Select\") {\r\n this.DDlPropertyType = \"\";\r\n }\r\n let usageVal = \"\";\r\n if (this.DDlUsage != \"Select\") {\r\n const data = this.DDLUsageData.find(val => val.Name === this.DDlUsage);\r\n usageVal = data.Name;\r\n }\r\n /* const ddlDropVal = $('#ddlPropertyType').val();\r\n //const ddlDropVal=$('#ddlPropertyType').val.ID;\r\n let ddlNewVal = \"\";\r\n // if (this.DDlPropertyType!= \"\") {\r\n if(this.DDlUsage==\"Mixed\"){\r\n for (const newVal in ddlDropVal) {\r\n // for (let newVal=0;newVal<=ddlDropVal;newVal++){\r\n if (ddlDropVal[newVal] != \"Select\") {\r\n ddlNewVal += ',' + ddlDropVal[newVal]\r\n }\r\n }\r\n ddlNewVal = ddlNewVal.slice(1);\r\n } else {\r\n ddlNewVal = this.DDlPropertyType;\r\n } */\r\n let selectedTypeOfProperty = \"\";\r\n if(this.DDlUsage==\"Mixed\"){\r\n \r\n if (this.selectedItems2.length > 0) {\r\n for (const data in this.selectedItems2) {\r\n if (data) {\r\n selectedTypeOfProperty = selectedTypeOfProperty + ',' + this.selectedItems2[data].text;\r\n }\r\n }\r\n selectedTypeOfProperty = selectedTypeOfProperty.substr(1);\r\n } else{\r\n \r\n } \r\n }\r\n else{\r\n selectedTypeOfProperty=this.DDlPropertyType;\r\n }\r\n\r\n if(this.buildUpArea!=\"\"){\r\n this.buildUpArea=this.buildUpArea;\r\n //this.TotalAreaAdopted.toFixed();\r\n }\r\n let val: ISuperPropertyDetailsUpdate = {\r\n Basement: this.MBasement,\r\n Stilt: this.MStilt,\r\n LG: this.MLG,\r\n UG: this.MUG,\r\n Ground: this.MGround,\r\n Mazz: this.MMAZZ,\r\n Floor: this.MFloor,\r\n LocationFloor: FloorVal,\r\n LocFloor: FloorVal,\r\n Plot_area_act: this.areaOfPlotAct,\r\n Plot_area_doc: this.areaOfPlotDocument,\r\n Plot_area_approved: this.areaOfPlotApprovedPlan,\r\n CarpetArea: this.carpetArea,\r\n Loading: this.loadingForBua,\r\n Builtup: this.buildUpArea,\r\n WheatherCompoundable: this.wheatherCompundable,\r\n PropertyRemark: this.PropertyRemark,\r\n Yearofcompleation: this.yearsOfCompletion,\r\n Ageofproperty: this.AgeOfproperty,\r\n BuildingCondition: this.conditionOfTheBuilding,\r\n FutureLife: this.EstimateFutureLifeProperty,\r\n NAConstruction: NAConstruction,\r\n CaseID: this.caseID,\r\n Propertytype: selectedTypeOfProperty,\r\n UserID: loginID,\r\n PropertyUsage: usageVal,\r\n TotFloor:tfloor\r\n }\r\n ApiService.InsertSuperPropertyDetails(val).then((responce: any) => {\r\n if (responce.status == \"200\") {\r\n debugger;\r\n this.SupUpdateBuiltupTable();\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error'); \r\n });\r\n}\r\n\r\nSupUpdateBuiltupTable() {\r\n debugger;\r\n this.ngxService.start();\r\n const caseID = this.caseID;\r\n let tbl2LIstVal = [];\r\n if(this.builtuppropertyDetails.length>0){\r\n for(let i =0; i< this.builtuppropertyDetails.length; i++) {\r\n const floor = this.builtuppropertyDetails[i].Floor;\r\n const actual = this.builtuppropertyDetails[i].actual;\r\n const permisible = this.builtuppropertyDetails[i].permisible;\r\n const sanction = this.builtuppropertyDetails[i].sanction;\r\n const areaadopted = this.builtuppropertyDetails[i].areaadopted;\r\n const deviation = this.builtuppropertyDetails[i].deviation;\r\n const Property_usage = this.builtuppropertyDetails[i].Property_usage;\r\n const Occupant = this.builtuppropertyDetails[i].Occupant;\r\n let data = {\r\n CaseID: caseID,\r\n Floor: floor,\r\n actual: actual,\r\n permisible: permisible,\r\n sanction: sanction,\r\n areaadopted: areaadopted,\r\n deviation: deviation,\r\n Property_usage: Property_usage,\r\n Occupant: Occupant,\r\n Subject_property: \"\",\r\n Adopted_Rate: \"\",\r\n Deviation_Calc: \"\",\r\n Occ_dtls_Name: \"\",\r\n Occ_year: \"\",\r\n Occ_mobile: \"\",\r\n }\r\n tbl2LIstVal.push(data);\r\n }\r\n}\r\nelse{\r\n let data = {\r\n CaseID: caseID,\r\n Floor: '',\r\n actual: '',\r\n permisible: '',\r\n sanction: '',\r\n areaadopted: '',\r\n deviation: '',\r\n Property_usage: '',\r\n Occupant: '',\r\n Subject_property: \"\",\r\n Adopted_Rate: \"\",\r\n Deviation_Calc: \"\",\r\n Occ_dtls_Name: \"\",\r\n Occ_year: \"\",\r\n Occ_mobile: \"\",\r\n }\r\n tbl2LIstVal.push(data);\r\n}\r\n console.log(\"Value IS\", tbl2LIstVal);\r\n let val = {\r\n Data: tbl2LIstVal\r\n }\r\n ApiService.SupUpdateBuiltupTable(val).then((responce: any) => {\r\n if (responce.status == \"200\") {\r\n debugger;\r\n this.saveSuperaccomdeationDetails();\r\n this.ngxService.stop();\r\n }\r\n }).catch((e: any) => {\r\n \r\n this.ngxService.stop();\r\n console.log(\"Error In SupUpdateBuiltupTable\", JSON.stringify(val));\r\n // Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n}\r\n\r\nsaveSuperaccomdeationDetails() {\r\n debugger;\r\n this.ngxService.start();\r\n const caseID = this.caseID;\r\n let tbl1LIstVal = [];\r\n if(this.accomodationDetailSort.length>0){\r\n for(let i =0; i< this.accomodationDetailSort.length; i++) {\r\n const Floor = this.accomodationDetailSort[i].Floor;\r\n const Room = this.accomodationDetailSort[i].Room;\r\n const Accommodation_Details = this.accomodationDetailSort[i].Floor;\r\n const Kitchen = this.accomodationDetailSort[i].Kitchen;\r\n const Toilet = this.accomodationDetailSort[i].Toilet;\r\n const loby = this.accomodationDetailSort[i].loby;\r\n const SittingRoom = this.accomodationDetailSort[i].SittingRoom;\r\n const Hall = this.accomodationDetailSort[i].Hall;\r\n const DiningHall = this.accomodationDetailSort[i].DiningHall;\r\n const Other= this.accomodationDetailSort[i].Other;\r\n let data = {\r\n CaseID: caseID,\r\n Floor: Floor,\r\n Room: Room,\r\n Accommodation_Details: Accommodation_Details,\r\n Kitchen: Kitchen,\r\n Toilet:Toilet,\r\n loby: loby,\r\n SittingRoom: SittingRoom,\r\n Hall: Hall,\r\n DiningHall:DiningHall,\r\n Other: Other\r\n }\r\n tbl1LIstVal.push(data);\r\n }\r\n}else{\r\n let data = {\r\n CaseID: caseID,\r\n Floor: '',\r\n Room: '',\r\n Accommodation_Details: '',\r\n Kitchen: '',\r\n Toilet:'',\r\n loby: '',\r\n SittingRoom: '',\r\n Hall: '',\r\n DiningHall:'',\r\n Other: ''\r\n }\r\n tbl1LIstVal.push(data);\r\n}\r\n\r\n let val = {\r\n Data: tbl1LIstVal \r\n }\r\nconsole.log(val);\r\nApiService.InsertSupAccomdeationUpdate(val).then((responce: any) => {\r\n if (responce.status == \"200\") {\r\n this.CFM(\"\");\r\n Swal.fire(\"Thanks\", \"Data Save Successfully\", \"success\");\r\n \r\n }\r\n this.ngxService.stop();\r\n}).catch((e: any) => {\r\n this.ngxService.stop();\r\n });\r\n\r\n}\r\n\r\n //OSV Main Grid\r\n GenralDetails1(e: any) {\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 1) {\r\n this.router.navigate([\"/OsvGeneralDetail1\", { id: data, valuation: this.valuationID, type: 'G' }]);\r\n }\r\n}\r\nGenralDetails2(e: any) {\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 1) {\r\n this.router.navigate([\"/OsvGeneralDetail1\", { id: data, valuation: this.valuationID, type: 'S' }]);\r\n }\r\n}\r\nPropertyDetail(e: any) {\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 1) {\r\n this.router.navigate([\"/OsvPropertyDetail\", { id: data, valuation: this.valuationID }]);\r\n }\r\n}\r\nCatchMentDetails(e: any) {\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 1) {\r\n this.router.navigate([\"/OsvCatchmentAreaAnalysis\", { id: data, valuation: this.valuationID }]);\r\n }\r\n}\r\n\r\nCFM(e: any) {\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 1) {\r\n this.router.navigate([\"/OsvCfm\", { id: data, valuation: this.valuationID }]);\r\n }\r\n}\r\nOther(e: any) {\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 1) {\r\n this.router.navigate([\"/OsvOther\", { id: data, valuation: this.valuationID }]);\r\n }\r\n}\r\nPropertyRadar(e: any) {\r\n\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 1) {\r\n this.router.navigate([\"/PropertyRadar\", { id: data, valuation: this.valuationID }]);\r\n }\r\n}\r\n\r\ncloseModel1() {\r\n $(\"#modelShowData1\").hide();\r\n}\r\n\r\nShowCaseData(ds : any) {\r\n if(ds==\"P\"){\r\n $(\"#modelShowDataCase\").show();\r\n $(\"#modelShowDataPhoto\").hide();\r\n }\r\n if(ds==\"C\"){\r\n $(\"#modelShowDataCase\").show();\r\n $(\"#modelShowDataPhoto\").hide();\r\n }\r\n}\r\nGetImage() {\r\n this.ngxService.start();\r\n ApiService.GetAllImage(this.caseID)\r\n .then((responce: any) => {\r\n this.ImgVal = responce.data.MainImage;\r\n for (const ival in responce.data.MainImage) {\r\n let docValssa = {\r\n URL:\r\n responce.data.MainImage[ival].URL +\r\n \"?type=\" +\r\n new Date().getMilliseconds(),\r\n name: responce.data.MainImage[ival].name,\r\n };\r\n this.getMainImage[ival] = docValssa;\r\n this.SelectedImageMain = this.getMainImage[0].URL;\r\n for(let i=0; i< this.getMainImage.length; i++) {\r\n this.images.push(this.getMainImage[i].URL);\r\n this.imagename.push(this.getMainImage[i].name)\r\n } \r\n }\r\n for (const ival in responce.data.TemplateImage) {\r\n let docValssa = {\r\n URL:\r\n responce.data.TemplateImage[ival].URL +\r\n \"?type=\" +\r\n new Date().getMilliseconds(),\r\n name: responce.data.TemplateImage[ival].name,\r\n };\r\n this.getTemplateImage[ival] = docValssa;\r\n this.SelectedImage = this.getTemplateImage[0].URL;\r\n for(let i=0; i< this.getTemplateImage.length; i++) {\r\n this.images.push(this.getTemplateImage[i].URL);\r\n this.imagename.push(this.getTemplateImage[i].name)\r\n } \r\n }\r\n debugger;\r\n for (const ival in responce.data.OtherImage) {\r\n let docValssa = {\r\n URL:\r\n responce.data.OtherImage[ival].URL +\r\n \"?type=\" +\r\n new Date().getMilliseconds(),\r\n name: responce.data.OtherImage[ival].name,\r\n };\r\n this.getOtherImage[ival] = docValssa;\r\n this.SelectedImageOther = this.getOtherImage[0].URL;\r\n for(let i=0; i< this.getOtherImage.length; i++) {\r\n this.images.push(this.getOtherImage[i].URL);\r\n this.imagename.push(this.getOtherImage[i].name)\r\n } \r\n }\r\n this.ngxService.stop();\r\n })\r\n .catch((error) => {\r\n this.ngxService.stop();\r\n Swal.fire(\"Oops...\", \"Something went wrong\", \"error\");\r\n });\r\n}\r\nshowHistoricalData1() {\r\n this.historicalData1 = true;\r\n // this.webcrowlData = false;\r\n /* this.ModalTitle1 = \"Case Details\"\r\n $(\"#modelShowData1\").show(); */\r\n\r\n this.ngxService.start();\r\n\r\n ApiService.SupSidebar(this.caseID).then((responce: any) => {\r\n if (responce.status == 200) {\r\n if (responce.data) {\r\n // this.HistoricalData = responce.data;\r\n this.CaseUid = responce.data.CaseUID;\r\n this.App_Name = responce.data.Applicant_Name;\r\n this.Property_Numb = responce.data.Property_No;\r\n this.Build_no = responce.data.Building_No;\r\n this.Landmark = responce.data.Land_mark;\r\n this.streat = responce.data.Street_Sector;\r\n this.state = responce.data.statename;\r\n this.city = responce.data.cityname;\r\n this.location = responce.data.LocationName;\r\n this.case_Type = responce.data.typeofcasename;\r\n this.document_details = responce.data.Documents;\r\n this.file_no = responce.data.File_No;\r\n this.rate = responce.data.TotalFees;\r\n this.unit = responce.data.Block;\r\n this.case_status = responce.data.CaseStatusname;\r\n this.eng = responce.data.engName;\r\n this.Sublocation = responce.data.SubLocationname;\r\n this.totalageCalc=responce.data.totalageCalc;\r\n this.getdocurl=responce.data.CaseDoc;\r\n for (const Dvalue in responce.data.CaseDoc) {\r\n \r\n let docValss = {\r\n url: this.getdocurl[Dvalue].url,\r\n name: this.getdocurl[Dvalue].name\r\n }\r\n this.getdocurl[Dvalue] = docValss;\r\n } \r\n for(let i=0; i< this.getdocurl.length; i++) {\r\n this.images.push(this.getdocurl[i].url);\r\n this.imagename.push(this.getdocurl[i].name)\r\n } \r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n console.log(\"Error In showHistoricalData1\");\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n}\r\ndownloadImageZipFiles() {\r\n var links = this.images;\r\n var imgname=this.imagename;\r\nvar zip = new JSZip();\r\nvar count = 0;\r\nvar zipFilename = this.caseID+\".zip\";\r\n\r\nlinks.forEach(function (url, i) {\r\n var filename = imgname[i];\r\n filename = filename.replace(/[\\/\\*\\|\\:\\<\\>\\?\\\"\\\\]/gi, '').replace(\"httpsi.imgur.com\",\"\");\r\n // loading a file and add it in a zip file\r\n JSZipUtils.getBinaryContent(url, function (err, data) {\r\n if (err) {\r\n throw err; // or handle the error\r\n }\r\n zip.file(filename, data, { binary: true });\r\n count++;\r\n if (count == links.length) {\r\n zip.generateAsync({ type: 'blob' }).then(function (content) {\r\n FileSaver.saveAs(content, zipFilename);\r\n });\r\n }\r\n });\r\n});\r\n}\r\nopenInNewReportTab(href: any) {\r\n Object.assign(document.createElement('a'), {\r\n target: '_blank',\r\n href,\r\n }).click();\r\n}\r\nView() {\r\n let data = this.caseID/* .currentTarget.parentElement.firstElementChild.value */;\r\n const LoginID = localStorage.getItem('userID');\r\n const val: UpdateDataForGrid = {\r\n CaseID: data,\r\n Type: \"View\",\r\n watermark: \"\",\r\n casecreatedfrom: \"\",\r\n UserID: LoginID,\r\n Remark: \"\",\r\n Supervisor: \"\",\r\n RoleID: \"\",\r\n }\r\n ApiService.UpdateGridDataAndGetUrl(val).then((responce: any) => {\r\n if (responce.status === 200) {\r\n this.openInNewReportTab(responce.data.URL);\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n}\r\nonItemSelect2(item:any){\r\n // console.log(\"\",item);\r\n}\r\nOnItemDeSelect2(item:any){\r\n// console.log(\"\",item);\r\n}\r\nonSelectAll2(items: any){\r\n// console.log(\"\",items);\r\n}\r\nonSelectAll(items: any){\r\n// console.log(\"\",items);\r\n}\r\nonDeSelectAll2(items: any){\r\n// console.log(\"\",items);\r\n}\r\nonDeSelectAll(items: any){\r\n // console.log(\"\",items);\r\n}\r\nonDeSelect2(item: any){\r\n// console.log(\"\",item);\r\n}\r\nbindDropdownOnEdit() {\r\n \r\n try {\r\n debugger;\r\n // setTimeout(() => {\r\n if (this.EditpropertyAll) {\r\n const item = this.EditpropertyAll;\r\n const valArray = item.split(',')\r\n if (valArray.length > 0) {\r\n if (valArray[0] != \"\") {\r\n //this.dropdownList = value.locationFloor;\r\n this.selectedItems2=[];\r\n for(let i =0; i fl.text == valArray[i]);\r\n this.newSelectedItems.push(val)\r\n // this.selectedItems2.push({text: val.text, id: val.id});\r\n }\r\n this.selectedItems2 = this.newSelectedItems;\r\n }\r\n }\r\n\r\n /* for (const valItem in valArray) {\r\n const supVal = this.dropdownList2.find(value => value.text === (valArray[valItem]));\r\n if (supVal) {\r\n this.newSelectedItems.push(supVal)\r\n }\r\n }\r\n this.selectedItems2 = this.newSelectedItems; */\r\n }\r\n //}, 100);\r\n }\r\n catch (error) {\r\n // console.log(\"Error IS \", error);\r\n }\r\n}\r\nKeyup_age_property(){\r\n const d = new Date();\r\n const n = d.getFullYear();\r\n let yr_c = this.yearsOfCompletion;\r\n if (this.yearsOfCompletion == \"\" || yr_c.toString().length != 4||this.yearsOfCompletion == \"NULL\"||this.yearsOfCompletion == \"0\") {\r\n \r\n }\r\n else {\r\n this.AgeOfproperty = (n - (+yr_c)).toString();\r\n this.Estimat_Future_life();\r\n }\r\n}\r\nCalc_age_property() {\r\n const d = new Date();\r\n const n = d.getFullYear();\r\n let yr_c = this.yearsOfCompletion;\r\n if (this.yearsOfCompletion == \"\" || yr_c.toString().length != 4) {\r\n Swal.fire(\"Sorry\", \"Enter 4 digit year of completion\", \"warning\");\r\n }\r\n else {\r\n this.AgeOfproperty = (n - (+yr_c)).toString();\r\n }\r\n}\r\nEstimat_Future_life() {\r\n var life_prop = 0;\r\n if (this.yearsOfCompletion == \"\") {\r\n document.getElementById('txt_YearOfCompletion').focus();\r\n }\r\n else {\r\n if (this.conditionOfTheBuilding == \"Very Good\") {\r\n life_prop = this.totalageCalc - parseInt(this.AgeOfproperty);\r\n }\r\n if (this.conditionOfTheBuilding == \"Good\") {\r\n life_prop = this.totalageCalc - (parseInt(this.AgeOfproperty) + 10);\r\n }\r\n if (this.conditionOfTheBuilding == \"Well maintained\") {\r\n life_prop = this.totalageCalc - (parseInt(this.AgeOfproperty) + 20);\r\n }\r\n if (this.conditionOfTheBuilding == \"Average\") {\r\n life_prop = this.totalageCalc - (parseInt(this.AgeOfproperty) + 30);\r\n }\r\n if (this.conditionOfTheBuilding == \"Poor\") {\r\n life_prop = this.totalageCalc - (parseInt(this.AgeOfproperty) + 40);\r\n }\r\n if (life_prop < 0)\r\n this.EstimateFutureLifeProperty = \"0\";\r\n else\r\n this.EstimateFutureLifeProperty = life_prop.toString();\r\n }\r\n}\r\nEstimatFuturelife(e: any) {\r\n this.Estimat_Future_life();\r\n}\r\n}\r\n","module.exports = \"\\r\\n
      \\r\\n
    • \\r\\n Property Details\\r\\n
    • \\r\\n
    • \\r\\n Infrastructure Details\\r\\n
    • \\r\\n
    • \\r\\n Catchment Area Analysis\\r\\n
    • \\r\\n
    • \\r\\n Valuation Estimate\\r\\n
    • \\r\\n
    \\r\\n\\r\\n\\r\\n
      \\r\\n
    • \\r\\n General Details1\\r\\n
    • \\r\\n
    • \\r\\n General Details2\\r\\n
    • \\r\\n
    • \\r\\n Property Detail\\r\\n
    • \\r\\n \\r\\n
    • \\r\\n CFM\\r\\n
    • \\r\\n
    • \\r\\n Other\\r\\n
    • \\r\\n
    • \\r\\n Property Radar\\r\\n
    • \\r\\n
    • \\r\\n \\r\\n
    • \\r\\n
    • \\r\\n \\r\\n
    • \\r\\n \\r\\n \\r\\n
    \\r\\n\\r\\n\\r\\n
    \\r\\n
    \\r\\n

    Property Address Details As Per TRF

    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n

    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n

    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n

    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n Save And Next\\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n\\r\\n
    ...
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    {{ModalTitle}}
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\\r\\n\\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    {{ModalTitle}}
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n\"","import { Component, OnInit } from '@angular/core';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { ApiService } from '../service/service';\r\nimport { SessionService } from '../service/sessionGlobalVar';\r\nimport { IGetCityLocation, IUpdateAddress, IUsage,UpdateDataForGrid } from '../service/type'\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport Swal from 'sweetalert2';\r\n\r\ndeclare var $: any;\r\nimport * as JSZip from 'jszip';\r\nimport * as JSZipUtils from 'jszip-utils';\r\nimport * as FileSaver from 'file-saver';\r\n@Component({\r\n selector: 'app-update-address',\r\n templateUrl: './update-address.component.html',\r\n styleUrls: []\r\n})\r\nexport class UpdateAddressComponent implements OnInit {\r\n state: any = \"\";\r\n Applicant_Name:string=\"\";\r\n selectedState: string = \"Select\";\r\n selectedCity: string = \"Select\";\r\n selectedLocality: string = \"Select\";\r\n selectedSubLocation: string = \"Select\";\r\n CompleteAddress: string;\r\n CityVal: any = \"\";\r\n ImgVal: any = \"\";\r\n LocationVal: any = \"\";\r\n SubLocationVal: any = \"\";\r\n PinCode: string = \"\";\r\n propertyFirst: string = \"Select\";\r\n Block: string = \"\";\r\n BuildingName: string = \"\";\r\n Streat: string = \"\";\r\n Sector: string = \"\";\r\n caseDetails: any;\r\n caseID: string = \"\";\r\n changeLocation: boolean = false;\r\n valuationID: number;\r\n showHeader: boolean = false;\r\n ISvaluation: boolean = false;\r\n addressPerDocument: string;\r\n addressPerActule: string;\r\n showOsvHeader: boolean = false;\r\n propertyTypeNEw: string = \"Select\";\r\n DDlUsage: string = \"Select\";\r\n DDlPropertyType: string = \"Select\";\r\n DDLPropertyData: any;\r\n DDLUsageData: any;\r\n propertyNo: string = \"\";\r\n Latitude: string = \"\";\r\n Longitude: string = \"\";\r\n historicalData: boolean = false;\r\n ModalTitle: string;\r\n HistoricalData: any;\r\n CaseUid: string;\r\n App_Name: string;\r\n Property_Numb: string;\r\n Build_no: string;\r\n Landmark: string;\r\n streat: string;\r\n city: string;\r\n location: string;\r\n case_Type: string;\r\n file_no: string;\r\n document_details: string;\r\n rate: string;\r\n unit: string;\r\n case_status: string;\r\n eng: string;\r\n Sublocation: string;\r\n docurl: string;\r\n getdocurl: any;\r\n BankName:string;\r\n BranchName:string;\r\n addressofproperty:string;\r\n propertyDescription:string;\r\n dropdownList = [];\r\n dropdownList1 = [];\r\n selectedItems: any;\r\n newSelectedItems = [];\r\n dropdownSettings: any;\r\n getMainImage = [];\r\n getOtherImage = [];\r\n getTemplateImage = [];\r\n SelectedImage:string=\"\";\r\n SelectedImageMain:string=\"\";\r\n SelectedImageOther:string=\"\";\r\n images =[];\r\n imagename=[];\r\n Valuation_typeID: any;\r\n boundryMatching: any;\r\n ConverttoOSV: any;\r\n Area: any;\r\n Branch_personName:any;\r\n constructor(private router: Router, private service: ApiService, private ngxService: NgxUiLoaderService, private session: SessionService, private route: ActivatedRoute) {\r\n \r\n this.getState(\"State\");\r\n this.dropdownSettings = {\r\n singleSelection: false,\r\n idField: 'id',\r\n textField: 'text',\r\n unSelectAllText: 'UnSelect All',\r\n itemsShowLimit: 3,\r\n allowSearchFilter: false,\r\n\r\n };\r\n }\r\n\r\n ngOnInit() {\r\n $(\"#modelShowDataCase\").hide();\r\n $(\"#modelShowDataPhoto\").show();\r\n this.route.params.subscribe(params => {\r\n if (params.id && params.valuation) {\r\n const id = window.atob(params.id);\r\n this.caseID = id;\r\n if (params.valuation)\r\n if (params.valuation == 2) {\r\n this.getState(\"Documents\");\r\n this.showHeader = true;\r\n this.ISvaluation = true;\r\n } else if (params.valuation == 1) {\r\n this.showOsvHeader = true;\r\n this.getState(\"Documents\");\r\n }\r\n //debugger;\r\n this.valuationID = params.valuation;\r\n this.GetEditCaseDetail(id);\r\n this.GetUsageDataNew();\r\n this.showHistoricalData();\r\n this.GetImage();\r\n } else {\r\n Swal.fire('Oops...', '21Something went wrong!', 'error');\r\n }\r\n });\r\n }\r\n getDetails() {\r\n\r\n }\r\n openInNewReportTab(href: any) {\r\n Object.assign(document.createElement('a'), {\r\n target: '_blank',\r\n href,\r\n }).click();\r\n }\r\n View() {\r\n let data = this.caseID/* .currentTarget.parentElement.firstElementChild.value */;\r\n const LoginID = localStorage.getItem('userID');\r\n const val: UpdateDataForGrid = {\r\n CaseID: data,\r\n Type: \"View\",\r\n watermark: \"\",\r\n casecreatedfrom: \"\",\r\n UserID: LoginID,\r\n Remark: \"\",\r\n Supervisor: \"\",\r\n RoleID: \"\",\r\n }\r\n ApiService.UpdateGridDataAndGetUrl(val).then((responce: any) => {\r\n if (responce.status === 200) {\r\n this.openInNewReportTab(responce.data.URL);\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n downloadImageZipFiles() {\r\n var links = this.images;\r\n var imgname=this.imagename;\r\n var zip = new JSZip();\r\n var count = 0;\r\n var zipFilename = this.caseID+\".zip\";\r\n\r\n links.forEach(function (url, i) {\r\n var filename = imgname[i];\r\n filename = filename.replace(/[\\/\\*\\|\\:\\<\\>\\?\\\"\\\\]/gi, '').replace(\"httpsi.imgur.com\",\"\");\r\n // loading a file and add it in a zip file\r\n JSZipUtils.getBinaryContent(url, function (err, data) {\r\n if (err) {\r\n throw err; // or handle the error\r\n }\r\n zip.file(filename, data, { binary: true });\r\n count++;\r\n if (count == links.length) {\r\n zip.generateAsync({ type: 'blob' }).then(function (content) {\r\n FileSaver.saveAs(content, zipFilename);\r\n });\r\n }\r\n });\r\n });\r\n }\r\n // downloadimages() {\r\n // let data = this.caseID/* .currentTarget.parentElement.firstElementChild.value */;\r\n // const LoginID = localStorage.getItem('userID');\r\n // const val: UpdateDataForGrid = {\r\n // CaseID: data,\r\n // }\r\n // ApiService.DownloadImage(val).then((responce: any) => {\r\n // if (responce.status === 200) {\r\n // let blob = new Blob([responce.data]);\r\n // FileSaver.saveAs(blob, data+'.zip');\r\n // }\r\n // this.ngxService.stop();\r\n // }).catch((e: any) => {\r\n // this.ngxService.stop();\r\n // Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n // });\r\n // }\r\n onItemSelect(item: any) {\r\n let p = this.selectedItems.length;\r\n console.log(item);\r\n }\r\n onSelectAll(items: any) {\r\n console.log(items);\r\n }\r\n onDeSelect(items: any) {\r\n this.deleteMsg(items.id)\r\n }\r\n deleteMsg(msg: string) {\r\n }\r\n bindDropdownOnEdit() {\r\n \r\n try {\r\n setTimeout(() => {\r\n if (this.caseDetails.Document_id) {\r\n const item = this.caseDetails.Document_id;\r\n const valArray = item.split(',')\r\n for (const valItem in valArray) {\r\n const supVal = this.dropdownList.find(value => value.id === +(valArray[valItem]));\r\n if (supVal) {\r\n this.newSelectedItems.push(supVal)\r\n }\r\n }\r\n this.selectedItems = this.newSelectedItems;\r\n }\r\n }, 500);\r\n }\r\n catch (error) {\r\n console.log(\"Error IS \", error);\r\n }\r\n }\r\n GetUsageDataNew() {\r\n this.propertyTypeNEw = \"Select\";\r\n this.GetUsageData(\"Usage\")\r\n }\r\n GetUsageDataNewpro() {\r\n this.propertyTypeNEw = \"Select\";\r\n this.GetUsageData(\"propertytype\")\r\n }\r\n GetUsageData(e: any) {\r\n\r\n this.ngxService.start();\r\n let val: IUsage;\r\n let callAPI: boolean = true;\r\n if (e == \"Usage\") {\r\n val = {\r\n CaseID: this.caseID,\r\n type: \"Usage\",\r\n ID: \"\"\r\n }\r\n } else {\r\n if (this.DDlUsage == \"Select\") {\r\n callAPI = false;\r\n }\r\n val = {\r\n CaseID: this.caseID,\r\n type: \"propertytype\",\r\n ID: this.DDlUsage\r\n }\r\n }\r\n if (callAPI) {\r\n ApiService.GetUsageData(val).then((responce: any) => {\r\n\r\n if (responce.status == 200) {\r\n if (responce.data) {\r\n if (e == \"Usage\") {\r\n this.DDLUsageData = responce.data.MasterData;\r\n } else {\r\n this.DDLPropertyData = responce.data.MasterData;\r\n let p = this.propertyTypeNEw;\r\n this.DDlPropertyType = this.propertyTypeNEw;\r\n this.showMultidropDown();\r\n }\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n // Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n console.log(\"Error In GetUsageData\", JSON.stringify(val))\r\n });\r\n }\r\n }\r\n showMultidropDown() {\r\n if (this.DDlUsage == \"5\") {\r\n $('#ddlPropertyType').attr('multiple', 'multiple');\r\n $('#ddlPropertyType').attr('title', 'You can select multiple value using CTRL+value');\r\n } else {\r\n $('#ddlPropertyType').removeAttr('multiple');\r\n $('#ddlPropertyType').removeAttr('title');\r\n }\r\n if (this.propertyTypeNEw != \"Select\") {\r\n\r\n var dataarray = this.propertyTypeNEw.split(\",\");\r\n $('#ddlPropertyType').val(dataarray);\r\n $('#ddlPropertyType').multiselect(\"refresh\");\r\n }\r\n }\r\n\r\n closeModel() {\r\n $(\"#modelShowData\").hide();\r\n }\r\n openModal() {\r\n debugger;\r\n $(\"#modelShowDataLatitudeLongitude\").show();\r\n }\r\n openModalhide() {\r\n $(\"#modelShowDataLatitudeLongitude\").hide();\r\n }\r\n showHistoricalData() {\r\n \r\n this.historicalData = true;\r\n // this.webcrowlData = false;\r\n // this.ModalTitle = \"Case Details\"\r\n /// $(\"#modelShowData\").show();\r\n\r\n this.ngxService.start();\r\n \r\n window.console.log(\"CaseID\", this.caseID);\r\n // window.atob(this.caseID);\r\n // const data = window.btoa(this.caseID);\r\n // const id=window.atob(data);data;\r\n // this.caseID=data;\r\n ApiService.SupSidebar(this.caseID).then((responce: any) => {\r\n \r\n if (responce.status == 200) {\r\n if (responce.data) {\r\n this.ngxService.stop();\r\n try {\r\n // this.HistoricalData = responce.data;\r\n this.CaseUid = responce.data.CaseUID;\r\n this.BankName=responce.data.BankName;\r\n this.BranchName=responce.data.BranchName;\r\n this.App_Name = responce.data.Applicant_Name;\r\n this.Property_Numb = responce.data.Property_No;\r\n this.Build_no = responce.data.Building_No;\r\n this.Landmark = responce.data.Land_mark;\r\n this.streat = responce.data.Street_Sector;\r\n // this.state = responce.data.statename;\r\n this.city = responce.data.cityname;\r\n this.location = responce.data.LocationName;\r\n this.case_Type = responce.data.typeofcasename;\r\n this.document_details = responce.data.Documents;\r\n this.file_no = responce.data.File_No;\r\n this.rate = responce.data.TotalFees;\r\n this.unit = responce.data.Block;\r\n this.case_status = responce.data.CaseStatusname;\r\n this.eng = responce.data.engName;\r\n this.Sublocation = responce.data.SubLocationname;\r\n this.getdocurl = responce.data.CaseDoc;\r\n\r\n \r\n // this.Valuation_typeID = responce.data.Valuation_typeID;\r\n this.boundryMatching = responce.data.boundryMatching;\r\n this.ConverttoOSV = responce.data.ConverttoOSV;\r\n this.Area = responce.data.Area;\r\n this.Branch_personName = responce.data.Branch_personName;\r\n for (const Dvalue in responce.data.CaseDoc) {\r\n \r\n let docValss = {\r\n url: this.getdocurl[Dvalue].url,\r\n name: this.getdocurl[Dvalue].name\r\n }\r\n this.getdocurl[Dvalue] = docValss;\r\n }\r\n for(let i=0; i< this.getdocurl.length; i++) {\r\n this.images.push(this.getdocurl[i].url);\r\n this.imagename.push(this.getdocurl[i].name)\r\n } \r\n } catch (e) {\r\n \r\n window.console.log(e);\r\n }\r\n // this.openInNewTabs(this.getdocurl);\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\r\n });\r\n }\r\n\r\n ShowCaseData(ds : any) {\r\n if(ds==\"P\"){\r\n $(\"#modelShowDataCase\").hide();\r\n $(\"#modelShowDataPhoto\").show();\r\n }\r\n if(ds==\"C\"){\r\n $(\"#modelShowDataCase\").show();\r\n $(\"#modelShowDataPhoto\").hide();\r\n }\r\n }\r\n GetImage() {\r\n \r\n this.ngxService.start();\r\n ApiService.GetAllImage(this.caseID).then((responce: any) => { \r\n \r\n this.ImgVal = responce.data.MainImage; \r\n for(const ival in responce.data.MainImage) {\r\n let docValssa = {\r\n URL: responce.data.MainImage[ival].URL+\"?type=\"+new Date().getMilliseconds(),\r\n name: responce.data.MainImage[ival].name\r\n }\r\n this.getMainImage[ival]=docValssa; \r\n this.SelectedImageMain= this.getMainImage[0].URL \r\n for(let i=0; i< this.getMainImage.length; i++) {\r\n this.images.push(this.getMainImage[i].URL);\r\n this.imagename.push(this.getMainImage[i].name)\r\n } \r\n }\r\n for(const ival in responce.data.TemplateImage) {\r\n let docValssa = {\r\n URL: responce.data.TemplateImage[ival].URL+\"?type=\"+new Date().getMilliseconds(),\r\n name: responce.data.TemplateImage[ival].name\r\n }\r\n this.getTemplateImage[ival]=docValssa; \r\n this.SelectedImage= this.getTemplateImage[0].URL;\r\n for(let i=0; i< this.getTemplateImage.length; i++) {\r\n this.images.push(this.getTemplateImage[i].URL);\r\n this.imagename.push(this.getTemplateImage[i].name)\r\n } \r\n }\r\n //debugger;\r\n for(const ival in responce.data.OtherImage) {\r\n let docValssa = {\r\n URL: responce.data.OtherImage[ival].URL+\"?type=\"+new Date().getMilliseconds(),\r\n name: responce.data.OtherImage[ival].name\r\n }\r\n this.getOtherImage[ival]=docValssa; \r\n this.SelectedImageOther= this.getOtherImage[0].URL;\r\n for(let i=0; i< this.getOtherImage.length; i++) {\r\n this.images.push(this.getOtherImage[i].URL);\r\n this.imagename.push(this.getOtherImage[i].name)\r\n } \r\n }\r\n this.ngxService.stop();\r\n }).catch((error) => { \r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong', 'error');\r\n })\r\n \r\n }\r\n\r\n GetEditCaseDetail(val: string) {\r\n \r\n this.ngxService.start();\r\n ApiService.SupSidebar(val).then((responce: any) => {\r\n this.ngxService.stop();\r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n\r\n this.caseDetails = responce.data;\r\n this.bindDropdownOnEdit();\r\n this.bindPreviousValue();\r\n }\r\n }\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', '1111Something went wrong!', 'error');\r\n });\r\n\r\n\r\n }\r\n\r\n bindPreviousValue() {\r\n this.Applicant_Name=this.caseDetails.Applicant_Name;\r\n this.selectedState = this.caseDetails.StateID;\r\n this.PinCode = this.caseDetails.pin_code;\r\n this.BuildingName = this.caseDetails.BuildingNameN;\r\n this.Streat = this.caseDetails.StreatRoadN;\r\n this.Sector = this.caseDetails.SectorN;\r\n this.propertyFirst = this.caseDetails.Property_titleN;\r\n this.propertyNo = this.caseDetails.PropertyValueN;\r\n this.Block = this.caseDetails.Block;\r\n\r\n this.CompleteAddress = this.caseDetails.AddressTRF;\r\n this.addressPerDocument = this.caseDetails.AddressDOC;\r\n this.addressPerActule = this.caseDetails.AddressSite;\r\n this.addressofproperty=this.caseDetails.AddressSite;\r\n this.propertyDescription=this.caseDetails.PropertyRemarks;\r\n this.DDlUsage = this.caseDetails.usage;\r\n this.Latitude = this.caseDetails.lat;\r\n this.Longitude = this.caseDetails.longi;\r\n if (this.selectedState) {\r\n const val: IGetCityLocation = {\r\n StateID: this.selectedState,\r\n CityID: \"\",\r\n LocID: \"\",\r\n GetType: \"City\",\r\n }\r\n this.getCityLocation(val);\r\n this.selectedCity = this.caseDetails.cityID;\r\n if (this.selectedCity) {\r\n const val: IGetCityLocation = {\r\n StateID: this.selectedState,\r\n CityID: this.selectedCity,\r\n LocID: \"\",\r\n GetType: \"Location\",\r\n }\r\n this.getCityLocation(val);\r\n\r\n this.selectedLocality = this.caseDetails.LocationID;\r\n this.locationChangeFUnction();\r\n this.selectedSubLocation = this.caseDetails.SubLocalityId;\r\n\r\n\r\n }\r\n }\r\n \r\n if (this.caseDetails.usage != \"Select\") {\r\n if (this.DDLUsageData) {\r\n const data = this.DDLUsageData.find(val => val.Name === this.caseDetails.usage);\r\n if (data) {\r\n this.DDlUsage = data.Name;\r\n this.GetUsageData(\"propertytype\");\r\n }\r\n } else {\r\n setTimeout(function () {\r\n const data = this.DDLUsageData.find(val => val.Name === this.caseDetails.usage);\r\n if (data) {\r\n this.DDlUsage = data.Name;\r\n this.GetUsageData(\"propertytype\");\r\n }\r\n }, 3000);\r\n }\r\n }\r\n if (this.caseDetails.propertytype) {\r\n\r\n this.propertyTypeNEw = this.caseDetails.propertytype;\r\n this.GetUsageData(\"propertytype\");\r\n }\r\n }\r\n\r\n\r\n onStateChange(e: any) {\r\n const p = e.target.value;\r\n const sk = this.selectedState\r\n if (this.selectedState) {\r\n const val: IGetCityLocation = {\r\n StateID: this.selectedState,\r\n CityID: \"\",\r\n LocID: \"\",\r\n GetType: \"City\",\r\n }\r\n this.getCityLocation(val);\r\n }\r\n }\r\n onCityChange(e: any) {\r\n const p = e.target.value;\r\n if (this.selectedCity) {\r\n const val: IGetCityLocation = {\r\n StateID: this.selectedState,\r\n CityID: this.selectedCity,\r\n LocID: \"\",\r\n GetType: \"Location\",\r\n }\r\n this.getCityLocation(val);\r\n }\r\n }\r\n onLocationChange(e) {\r\n const p = e.target.value;\r\n this.locationChangeFUnction();\r\n }\r\n locationChangeFUnction() {\r\n if (this.selectedLocality) {\r\n const val: IGetCityLocation = {\r\n StateID: this.selectedState,\r\n CityID: this.selectedCity,\r\n LocID: this.selectedLocality,\r\n GetType: \"SubLocation\",\r\n }\r\n this.changeLocation = true;\r\n this.getCityLocation(val);\r\n }\r\n }\r\n\r\n getState(val: string) {\r\n this.ngxService.start();\r\n ApiService.GetMaster(val).then((responce: any) => {\r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n if (val === \"State\") {\r\n this.state = responce.data.DATA;\r\n }\r\n if (val === \"Documents\") {\r\n if (responce.data.DATA) {\r\n if (responce.data.DATA.length > 0) {\r\n for (const value of responce.data.DATA) {\r\n let docVal = {\r\n id: Number(value.AttributeID),\r\n text: value.AttributeName\r\n }\r\n this.dropdownList1.push(docVal);\r\n }\r\n this.dropdownList = this.dropdownList1;\r\n \r\n }\r\n }\r\n }\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', '3something went wrong', 'error');\r\n });\r\n }\r\n getCityLocation(val: IGetCityLocation) {\r\n this.ngxService.start();\r\n ApiService.GetCityLocation(val).then((responce: any) => {\r\n this.ngxService.stop();\r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n if (val.GetType === \"City\") {\r\n this.CityVal = responce.data.DATA;\r\n }\r\n else if (val.GetType === \"Location\") {\r\n this.LocationVal = responce.data.DATA;\r\n }\r\n else if (val.GetType === \"SubLocation\") {\r\n this.SubLocationVal = responce.data.DATA;\r\n if (this.changeLocation) {\r\n this.changeLocation = false;\r\n this.selectedSubLocation = \"Select\";\r\n }\r\n this.selectedSubLocation = this.caseDetails.SubLocalityId;\r\n }\r\n }\r\n }\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'something went wrong', 'error');\r\n });\r\n }\r\n\r\n updateAddress() {\r\n //debugger;\r\n let selectedDocID = \"\";\r\n try{\r\n if (this.selectedItems.length > 0) {\r\n for (const data in this.selectedItems) {\r\n if (data) {\r\n selectedDocID = selectedDocID + ',' + this.selectedItems[data].id;\r\n }\r\n }\r\n selectedDocID = selectedDocID.substr(1);\r\n }\r\n } catch (error) {\r\n console.log(\"Error IS \", error);\r\n }\r\n this.ngxService.start();\r\n let val: IUpdateAddress = {\r\n CaseID: this.caseID,\r\n StateID: this.selectedState,\r\n CityID: this.selectedCity,\r\n SubLocality: this.selectedSubLocation,\r\n Locality: this.selectedLocality,\r\n Pincode: this.PinCode,\r\n PropertyNo: this.propertyFirst,\r\n PropertyValueN: this.propertyNo,\r\n Block: this.Block,\r\n Sector: this.Sector,\r\n Building: this.BuildingName,\r\n Streat: this.Streat,\r\n AddressSite: this.addressPerActule,\r\n AddressTRF: this.CompleteAddress,\r\n AddressDOC: this.addressPerDocument,\r\n usage: this.DDlUsage,\r\n propertytype: this.DDlPropertyType,\r\n Documents:selectedDocID,\r\n ApplicantName:this.Applicant_Name\r\n //this.CompleteAddress\r\n }\r\n ApiService.SupUpdateAddress(val).then((responce: any) => {\r\n this.ngxService.stop();\r\n const val = window.btoa(this.caseID);\r\n if (responce.status === 200) {\r\n if (this.valuationID == 1) {\r\n this.router.navigate([\"/OsvGeneralDetail1\", { id: val, valuation: this.valuationID, type: 'G' }]);\r\n } else if (this.valuationID == 2) {\r\n this.router.navigate([\"SupEditFtv\", { id: val, valuation: this.valuationID, type: \"Infracture\" }]);\r\n }\r\n Swal.fire('Thanks...', 'Update Address Successfully', 'success');\r\n\r\n }\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'something went wrong', 'error');\r\n });\r\n }\r\n SaveLatitudeLongitude() {\r\n debugger;\r\n \r\n this.ngxService.start();\r\n let val: any = {\r\n CaseID: this.caseID,\r\n UserID: localStorage.getItem('userID'),\r\n Latitude: this.Latitude,\r\n Longitude: this.Longitude\r\n }\r\n ApiService.UpdateLatitudeLongitude(val).then((responce: any) => {\r\n this.ngxService.stop();\r\n const val = window.btoa(this.caseID);\r\n if (responce.status === 200) {\r\n $(\"#modelShowDataLatitudeLongitude\").hide();\r\n Swal.fire('Thanks...', 'Update Latitude and Longitude', 'success');\r\n\r\n }\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'something went wrong', 'error');\r\n });\r\n }\r\n // Skip() {\r\n // const val = window.btoa(this.caseID);\r\n // if (this.valuationID == 2) {\r\n\r\n // this.router.navigate([\"SupEditFtv\", { id: val }]);\r\n // } else if (this.valuationID == 1) {\r\n // this.router.navigate([\"SupEdit\", { id: val }]);\r\n // }\r\n // }\r\n\r\n //Top Header Function\r\n\r\n PropertyDetails(e: any) {\r\n //debugger;\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 2) {\r\n this.router.navigate([\"/UpdateAddress\", { id: data, valuation: this.valuationID }]);\r\n }\r\n }\r\n InfractureDetails(e: any) {\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 2) {\r\n this.router.navigate([\"/SupEditFtv\", { id: data, valuation: this.valuationID, type: \"Infracture\" }]);\r\n }\r\n }\r\n CatchMentAnalysis(e: any) {\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 2) {\r\n this.router.navigate([\"/SupEditFtv\", { id: data, valuation: this.valuationID, type: \"CatchMent\" }]);\r\n }\r\n }\r\n Valuation(e: any) {\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 2) {\r\n this.router.navigate([\"/SupFtvFinalValuation\", { id: data, valuation: this.valuationID }]);\r\n }\r\n }\r\n GenralDetails1(e: any) {\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 1) {\r\n this.router.navigate([\"/OsvGeneralDetail1\", { id: data, valuation: this.valuationID, type: 'G' }]);\r\n }\r\n }\r\n GenralDetails2(e: any) {\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 1) {\r\n this.router.navigate([\"/OsvGeneralDetail1\", { id: data, valuation: this.valuationID, type: 'S' }]);\r\n }\r\n }\r\n\r\n PropertyDetail(e: any) {\r\n //debugger;\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 1) {\r\n this.router.navigate([\"/OsvPropertyDetail\", { id: data, valuation: this.valuationID }]);\r\n }\r\n }\r\n CatchMentDetails(e: any) {\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 1) {\r\n this.router.navigate([\"/OsvCatchmentAreaAnalysis\", { id: data, valuation: this.valuationID }]);\r\n }\r\n }\r\n CFM(e: any) {\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 1) {\r\n this.router.navigate([\"/OsvCfm\", { id: data, valuation: this.valuationID }]);\r\n }\r\n }\r\n Other(e: any) {\r\n\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 1) {\r\n this.router.navigate([\"/OsvOther\", { id: data, valuation: this.valuationID }]);\r\n }\r\n }\r\n ChangeImageTemplate(e: any) {\r\n //debugger;\r\n this.SelectedImage=this.getTemplateImage[e].URL;\r\n }\r\n ChangeImageMain(e: any) {\r\n //debugger;\r\n this.SelectedImageMain=this.getMainImage[e].URL;\r\n}\r\nChangeImageOther(e: any) {\r\n //debugger;\r\n this.SelectedImageOther=this.getOtherImage[e].URL;\r\n}\r\n PropertyRadar(e: any) {\r\n\r\n const data = window.btoa(this.caseID);\r\n if (this.valuationID == 1) {\r\n this.router.navigate([\"/PropertyRadar\", { id: data, valuation: this.valuationID }]);\r\n }\r\n }\r\n\r\n}\r\n","module.exports = \"
    \\r\\n\\r\\n
    \\r\\n

    User Profile

    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n\\r\\n
    \\r\\n \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n \\r\\n
    \\r\\n
    \\r\\n
    \"","import { Component, OnInit, Renderer2, ElementRef, Output, Input, EventEmitter, Directive } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { ApiService } from '../service/service';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { SessionService } from '../service/sessionGlobalVar';\r\nimport { IGridInput, IGetCityLocation, IUpdateStatus, IupdateProfile } from '../service/type'\r\nimport { analyzeAndValidateNgModules } from '@angular/compiler';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport Swal from 'sweetalert2';\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: 'app-user-profile',\r\n templateUrl: './user-profile.component.html',\r\n styleUrls: []\r\n})\r\nexport class UserProfileComponent implements OnInit {\r\n userName: string;\r\n displayName: string;\r\n role: string;\r\n mobile: string;\r\n email: string;\r\n address: string;\r\n oldPassword: string;\r\n newPassword: string;\r\n confirmPassword: string;\r\n oldpasswordData: string;\r\n constructor(private router: Router, private service: ApiService, private session: SessionService, private ngxService: NgxUiLoaderService, private renderer: Renderer2, private el: ElementRef) {\r\n \r\n this.updateStatus();\r\n }\r\n\r\n ngOnInit() {\r\n\r\n }\r\n updateStatus() {\r\n let logID = localStorage.getItem(\"userID\");\r\n const val = {\r\n loginid: logID,\r\n Type: \"get\"\r\n }\r\n this.ngxService.start();\r\n \r\n ApiService.GetProfileDetail(val).then((responce: any) => {\r\n \r\n if (responce.status === 200) {\r\n if (responce.data) {\r\n const data = responce.data;\r\n this.userName = data.UserName;\r\n this.displayName = data.DisplayName;\r\n this.role = data.Role;\r\n this.mobile = data.Mobile;\r\n this.email = data.Email;\r\n this.address = data.Address;\r\n this.oldpasswordData = data.OldPassword;\r\n }\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong in status Update!', 'error');\r\n // alert(\"Error\" + e.message);\r\n });\r\n }\r\n btnSaveUserProfile() {\r\n let logID = localStorage.getItem(\"userID\");\r\n if (this.newPassword !== this.confirmPassword) {\r\n Swal.fire('Oops...', 'password and confirm password does not match!', 'error');\r\n return;\r\n } else if (this.oldPassword.trim() !== this.oldpasswordData.trim()) {\r\n Swal.fire('Oops...', 'old password is wrong!', 'error');\r\n } else {\r\n const val: IupdateProfile = {\r\n userName: \"\",\r\n displayName: \"\",\r\n role: \"\",\r\n mobile: this.mobile,\r\n email: this.email,\r\n address: \"\",\r\n oldPassword: this.oldPassword.trim(),\r\n newPassword: this.newPassword.trim(),\r\n confirmPassword: this.confirmPassword,\r\n loginid:logID,\r\n Type:\"update\"\r\n }\r\n this.ngxService.start(); \r\n ApiService.GetProfileDetail(val).then((responce: any) => { \r\n if (responce.status === 200) {\r\n Swal.fire('Thanks...',\"Profile Update Successfully...\",'success');\r\n this.router.navigate([\"BankCaseDetails\"]);\r\n }\r\n this.ngxService.stop();\r\n }).catch((e: any) => {\r\n this.ngxService.stop();\r\n Swal.fire('Oops...', 'Something went wrong in profile update!', 'error'); \r\n });\r\n }\r\n }\r\n}\r\n\r\n\r\n","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL3ZpZXctc2JmY2xlYWQvdmlldy1zYmZjbGVhZC5jb21wb25lbnQuY3NzIn0= */\"","module.exports = \"\\n\\n\\n
    \\n\\n
    \\n \\n \\n \\n \\n \\n\\n
    \\n
    \\n \\n \\n\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    Applicant Name {{element.Applicant_Name}} Address {{element.Address1}} Branch Name {{element.branch_name}} File No - Client ID {{element.File_no}} Lead recevied {{element.UPD_DT}} Action \\n \\n \\n
    \\n \\n
    \\n\\n
    \\n \\n \\n\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    Case UID {{element.CaseUID}} Name {{element.Name}} Mobile {{element.Mobile}} Bank {{element.Bank}} Location {{element.Location}} Case Action {{element.CaseStatus}} Engineer {{element.Engineer}} Supervisor / Analysis {{element.supervisor}} Status Remark {{element.StatusRemark}} Eng Status {{element.Engstatus}} CR.Date {{element.CrDate}} Action \\n \\n \\n \\n \\n \\n
    \\n \\n
    \\n\\n
    \\n \\n \\n\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    Case UID {{element.CaseUID}} Name {{element.Name}} Mobile {{element.Mobile}} Bank {{element.Bank}} Location {{element.Location}} Case Action {{element.CaseStatus}} Engineer {{element.Engineer}} Supervisor / Analysis {{element.supervisor}} CR.Date {{element.CrDate}} QC Date {{element.QCDATE}} Action \\n \\n \\n \\n \\n \\n \\n
    \\n \\n
    \\n\\n
    \\n \\n \\n\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    Case UID {{element.caseuid}} Name {{element.appname}} Bank {{element.bank}} Location {{element.location}} Case Type {{element.casetype}} Valuation Type {{element.valuationtype}} Engineer {{element.Allocated_To}} Reopen Remark {{element.Case_Reopen_Remarks}} CR.Date {{element.crdate}} Action \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n \\n \\n
    \\n
    \\n\\n \\n
    \\n
    \\n\\n\\n\\n
    \\n
    \\n
    \\n\\n
    \\n

    {{HeaderText}}

    \\n \\n
    \\n\\n
    \\n
    \\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n\\n
    \\n \\n
    \\n \\n
    \\n
    \\n\\n
    \\n \\n
    \\n \\n \\n \\n \\n
    \\n
    \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n\\n \\n
    \\n
    \\n
    \\n\\n\\n\\n\\n\\n\\n
    \\n
    \\n
    \\n\\n
    \\n

    Send Mail

    \\n \\n
    \\n\\n
    \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n\\n \\n\\n
    \\n \\n
    \\n \\n
    \\n
    \\n\\n \\n
    \\n \\n
    \\n \\n \\n
    \\n
    \\n\\n\\n
    \\n \\n \\n
    \\n\\n
    \\n\\n
    \\n\\n
    \\n
    \\n
    \\n\\n
    \\n

    {{popUpHeading}}

    \\n \\n
    \\n\\n
    \\n
    \\n \\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n\\n
    \\n\\n
    \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n\\n\"","import { Component, OnInit, Renderer2, ElementRef, Directive,ViewChild } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { ApiService } from '../service/service';\nimport { SessionService } from '../service/sessionGlobalVar';\nimport { IGridInput, IGetCityLocation, IUpdateStatus, getStage, IsendMail,IsgetMail, UpdateDataForGrid } from '../service/type'\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\nimport {MatPaginator,MatTableDataSource,MatSort,Sort} from '@angular/material';\nimport Swal from 'sweetalert2';\nimport * as Excel from 'exceljs/dist/exceljs.min.js';\nimport * as FileSaver from 'file-saver';\nimport { DomSanitizer } from '@angular/platform-browser';\ndeclare const $: any;\n\n@Component({\n selector: 'app-view-sbfclead',\n templateUrl: './view-sbfclead.component.html',\n styleUrls: ['./view-sbfclead.component.css']\n})\nexport class ViewSBFCLeadComponent implements OnInit {\n\n GridDetail: [];\n GridPublish: [];\n GridReview: [];\n NewMainGrid: any;\n isShowAllocation: boolean = true;\n isShowReview: boolean=false;;\n isShowPublish: boolean;\n isnewReview: boolean = false;\n IsEditStatus: boolean = false;\n datatablerefersh:boolean=true;\n qcpasspermission:boolean=false;\n editcasepermission:boolean=false;\n viewAreadetailedit:boolean=true;\n valEngineer: any;\n status: any;\n selectedStatus: string = \"0\";\n selectedEngvalue: string = \"\";\n selectedSupvalue:string=\"\";\n HeaderText: string;\n IsDocument: boolean = false;\n Isasign:boolean=false;\n Component1Variable: string = \"Component1VariableSent\";\n logID: string;\n inputRemark: string = \"\";\n msgType: string;\n updatedFiles: any;\n typeOfStage: string;\n sanctionPlanDoc: any;\n caseID: string;\n IsSendMailModel: boolean = false;\n sendMailForm: string;\n SendBranchPerson: string;\n SendBranchPersonemail:string;\n MailSubject: string;\n MailBody: string;\n mailBankID:string;\n typed:string;\n valSup: any = \"\";\n getdocurl :any;\n quiid:string;\n ShowStatusTag: boolean = false;\n showAllocateStatusTag: boolean = false;\n AllocateCaseRemark: string;\n popUpHeading: string;\n getUserDetailsArr = [];\n displayedColumnsAllocation: string[] = ['Applicant_Name', 'Address1','branch_name', 'BR_PR_NM','UPD_DT','Action'];\n displayedColumnsReview: string[] = ['CaseUID', 'name','mobileno', 'Bank', 'Location','CaseAction','Engineer','supervisor','StatusRemark','engstatus','CRDate','Action'];\n displayedColumnsPublish: string[] = ['CaseUID', 'name','mobileno', 'Bank', 'Location','CaseAction','Engineer','supervisor','CRDate','qcdate','Action'];\n displayedColumnsAreaDetail: string[] = ['CaseUID', 'name', 'Bank', 'Location','CaseAction','ValuationType','Engineer','reopenremark','CRDate','Action'];\n\n dataSourceAllocation = new MatTableDataSource;\n dataSourceReview=new MatTableDataSource;\n dataSourcePublish=new MatTableDataSource;\n dataSourceAreaDetail=new MatTableDataSource;\n fileUrl: any;\n ddlrole: string;\n AllocateSelectedUser: string=\"Select\";\n IsEditadmin: boolean=false;\n applyFilter(filterValue: string) {\n this.dataSourceAllocation.filter = filterValue.trim().toLowerCase();\n this.dataSourceReview.filter = filterValue.trim().toLowerCase();\n this.dataSourcePublish.filter = filterValue.trim().toLowerCase();\n this.dataSourceAreaDetail.filter = filterValue.trim().toLowerCase();\n }\n \n @ViewChild(MatPaginator) paginator: MatPaginator;\n @ViewChild(MatSort) sort: MatSort;\n constructor(private router: Router, private service: ApiService, private session: SessionService, private ngxService: NgxUiLoaderService, private renderer: Renderer2, private el: ElementRef,private sanitizer: DomSanitizer) {\n \n }\n ngOnInit() {\n debugger;\n /* const p = this.el.nativeElement;\n this.renderer.addClass(this.el.nativeElement, 'abc'); */\n let val = localStorage.getItem(\"roleID\");\n const adoff=localStorage.getItem(\"AdroitOffice\");\n this.getMainGridData(\"1\");\n // if (val) {\n // if (+val == 7) {\n // this.router.navigate([\"BankCaseDetails\"]);\n // }\n // else if (+val == 22) {\n // this.router.navigate([\"BankCaseDetails\"]);\n // }\n // else if (+val == 3 ) { \n // this.quiid=\"1\";\n // // this.getMainGridData(\"1\");\n // } \n // else if (+val == 10) { \n // this.quiid=\"1\";\n // this.getMainGridData(\"1\");\n // } \n // else if (+val == 5 || +val==11) {\n \n // this.router.navigate([\"SupHome\"]);\n // }\n // else if (+val == 13) {\n // this.router.navigate([\"RegionalOffice\"]);\n // }\n //}\n }\n logDetail(e) {\n this.logID = e;\n if (this.logID) {\n this.router.navigate([\"/logDetails\", { id: this.logID }]);\n }\n }\n\n openInNewTab(href: any) {\n Object.assign(document.createElement('a'), {\n target: '_blank',\n href,\n }).click();\n }\n base64toPDF(data:string) {\n var bufferArray = this.base64ToArrayBuffer(data);\n var blobStore = new Blob([bufferArray], { type: \"application/pdf\" });\n /* if (window.navigator && window.navigator.msSaveOrOpenBlob) {\n window.navigator.msSaveOrOpenBlob(blobStore);\n \n return;\n } */\n var data = window.URL.createObjectURL(blobStore);\n // this.fileUrl = this.sanitizer.bypassSecurityTrustResourceUrl(window.URL.createObjectURL(blobStore));\n window.open(data);\n}\n\n base64ToArrayBuffer(data:any) {\n var bString = window.atob(data);\n var bLength = bString.length;\n var bytes = new Uint8Array(bLength);\n for (var i = 0; i < bLength; i++) {\n var ascii = bString.charCodeAt(i);\n bytes[i] = ascii;\n }\n return bytes;\n};\npublishView(e: any){\n let data = e;\n let val = {\n CaseID:data\n }\n ApiService.ViewReport(val).then((responce: any) => {\n if (responce.status === 200) {\n debugger;\n if(responce.data.status==\"202\"){\n this.openInNewTab(responce.data.data1);\n }\n else {\n this.base64toPDF(responce.data.Data);\n }\n }\n this.ngxService.stop();\n }).catch((e: any) => {\n this.ngxService.stop();\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\n });\n}\n \n encrypt(key) {\n var result = \"\";\n const value = \"b89d20fcabec4256b80c68a633f1d9e1\";\n for (let i = 0; i < value.length; ++i) {\n result += String.fromCharCode(key[i % key.length] ^ value.charCodeAt(i));\n }\n return result;\n }\n PublishReopen(e) {\n this.HeaderText = \"Update Action\";\n this.logID = e;\n if (this.logID) {\n this.getStage();\n this.IsEditStatus = true;\n this.IsDocument = false;\n this.msgType = \"Case status changed from Publish\";\n }\n }\n HideModelsendMail(){\n this.IsSendMailModel = false;\n }\n sendReminderUpdate(e) {\n \n const val: IsendMail = {\n caseId : this.caseID,\n EmailTo: this.sendMailForm,\n Sublect: this.MailSubject,\n ApplicantName: this.SendBranchPerson,\n Body: this.MailBody,\n LoginID: this.session.UserID,\n BankID: this.mailBankID,\n type:\"update\"\n }\n this.ngxService.start();\n \n ApiService.MailReminderUpdate(val).then((responce: any)=>{\n \n if (responce.status === 200) {\n Swal.fire('Thanks', responce.data.EmailTo, 'success');\n this.getMainGridData(this.quiid);\n this.IsSendMailModel = false;\n }\n this.ngxService.stop();\n }).catch((e: any) => {\n this.ngxService.stop();\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\n });\n \n }\n\n sendReminder(e: any) {\n \n this.IsSendMailModel = true;\n const val: IsgetMail = {\n caseid : e,\n type:\"get\"\n }\n this.caseID = e;\n ApiService.GetMailReminderValue(val).then((responce: any) => {\n \n if (responce.status === 200) {\n let val = responce.data;\n let sender=localStorage.getItem(\"Senderemail\");\n this.sendMailForm = val.EmailTo;\n this.SendBranchPerson = val.ApplicantName;\n this.SendBranchPersonemail=sender;\n this.MailSubject = val.Sublect;\n this.MailBody = val.Body;\n this.mailBankID=val.BankID\n }\n this.ngxService.stop();\n }).catch((e: any) => {\n this.ngxService.stop();\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\n });\n }\n\n\n document(e) {\n this.logID = e.currentTarget.parentElement.firstElementChild.value;\n alert(\"Documnt\");\n }\n \n editCase(e) {\n this.logID = e;\n const val = window.btoa(this.logID);\n if (this.logID) {\n this.router.navigate([\"/SbfcCaseCreation\", { id: val }]);\n }\n }\n HideModel() {\n this.IsEditStatus = false;\n }\n\n AreaDetailsCase(e) { \n this.logID = e;\n const val = window.btoa(this.logID);\n if (this.logID) {\n this.router.navigate([\"/AreaDetails\", { id: val }]);\n }\n }\n\n editStatusAllocation(e) {\n this.HeaderText = \"Update Action\";\n this.logID = e;\n if (this.logID) {\n this.getStage();\n this.IsEditStatus = true;\n this.IsDocument = false;\n this.msgType = \"Case status changed from Allocation\";\n }\n }\n editStatusReview(e) {\n this.HeaderText = \"Update Action\";\n this.logID = e;\n if (this.logID) {\n this.getStage();\n this.IsEditStatus = true;\n this.IsDocument = false;\n this.msgType = \"Case status changed from Review\";\n }\n }\nonchangestatussup(e: any){\n debugger;\n if(this.session.getAdroitOffice==\"1\" || this.session.getAdroitOffice==\"39\"){\n this.ddlrole=\"ReportAnalysis\";\n }else{\n this.ddlrole=\"Sup\";\n }\n if (this.selectedStatus==\"40\"){\n const val: IGetCityLocation = {\n StateID: localStorage.getItem('AdroitBranch'),\n CityID: \"\",\n LocID: \"\",\n GetType: \"OfficeEngineer\",\n }\n this.getCityLocation(val);\n}\nif (this.selectedStatus==\"48\"){\n const val: IGetCityLocation = {\n StateID: localStorage.getItem('userID'),\n CityID: \"\",\n LocID: \"\",\n GetType: \"Supp\",\n }\n this.getCityLocation(val);\n}\nelse\n{\n const val: IGetCityLocation = {\n StateID: \"\",\n CityID: \"\",\n LocID: \"\",\n GetType: this.ddlrole,\n }\n this.getCityLocation(val);\n}\n\n}\n updateStatus() {\n \n if (this.logID) {\n if (this.selectedStatus == \"0\" || this.selectedStatus == \"\") {\n Swal.fire('Oops...', 'Please Select Action Type!', 'warning');\n } \n else if (this.selectedEngvalue == \"\" && (this.selectedStatus==\"40\" || this.selectedStatus==\"48\")) {\n Swal.fire('Oops...', 'Please Select user.!', 'warning');\n } else {\n const val: IUpdateStatus = {\n Case_id: this.logID,\n CaseStatus: this.selectedStatus,\n statusRemark: this.inputRemark,\n Assignto: this.selectedEngvalue,\n Message: this.msgType,\n LoginID: this.session.UserID\n }\n this.ngxService.start();\n \n ApiService.UpdateStatus(val).then((responce: any) => {\n \n if (responce.status === 200) {\n this.IsEditStatus = false;\n this.selectedStatus = \"0\";\n this.selectedEngvalue = \"\";\n this.inputRemark = \"\";\n Swal.fire('Success', 'Status Updated Sucessfully', 'success');\n this.getMainGridData(this.quiid);\n \n \n if (responce.data) {\n }\n }\n this.ngxService.stop();\n }).catch((e: any) => {\n this.ngxService.stop();\n Swal.fire('Oops...', 'Something went wrong in status Update!', 'error');\n });\n }\n }\n }\n handleFileSelect(evt) {\n this.updatedFiles = evt.target.files;\n };\n handleSanctionPlanDoc(evt) {\n this.sanctionPlanDoc = evt.target.files;\n }\n updateDocument() {\n \n if (this.logID) {\n if (this.sanctionPlanDoc || this.updatedFiles) {\n \n let formData = new FormData();\n if (this.updatedFiles) {\n for (let val of this.updatedFiles) {\n formData.append(\"CaseID\", this.logID);\n formData.append(\"imgname\", val.name);\n formData.append(\"files\", val);\n }\n }\n if (this.sanctionPlanDoc) {\n formData.append(\"CaseID\", this.logID);\n formData.append(\"imgname\", this.sanctionPlanDoc[0].name);\n formData.append(\"files\", this.sanctionPlanDoc[0]);\n }\n \n this.ngxService.start();\n ApiService.UpdateDocument(formData).then((responce: any) => {\n \n \n if (responce.status === 200) {\n this.IsEditStatus = false;\n this.sanctionPlanDoc = undefined;\n this.updatedFiles = undefined;\n Swal.fire('Success...', 'Upload Document Sucessfully!', 'success');\n }\n this.ngxService.stop();\n }).catch((e: any) => {\n this.ngxService.stop();\n Swal.fire('Oops...', 'Something went wrong in document update!', 'error');\n });\n } else {\n Swal.fire('Oops...', 'Please select atleast one document!', 'warning');\n }\n }\n }\nDeleteDoc(e){\n \n this.ngxService.start();\n let val = {\n Case_id: this.logID,\n Status: \"\",\n FilePath: e,\n Type: \"doc\",\n Message: \"\",\n LoginID: this.session.UserID\n }\n \n ApiService.DeleteDocument(val).then((responce: any) => {\n if (responce.status == 200) { \n this.IsEditStatus = false;\n Swal.fire('Success...', 'Delete Document Sucessfully!', 'success');\n }\n this.ngxService.stop();\n }).catch((e: any) => {\n this.ngxService.stop();\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\n });\n}\n\n addDoc(e) {\n \n this.logID = e;\n this.HeaderText = \"Upload Document\";\n if (this.logID) {\n this.IsEditStatus = true;\n this.IsDocument = true;\n this.ngxService.start();\n ApiService.SupSidebar(this.logID).then((responce: any) => {\n \n if (responce.status == 200) {\n if (responce.data) { \n this.getdocurl=responce.data.CaseDoc;\n for (const Dvalue in responce.data.CaseDoc) {\n \n let docValss = {\n url: this.getdocurl[Dvalue].url,\n name: this.getdocurl[Dvalue].name\n }\n this.getdocurl[Dvalue] = docValss;\n }\n }\n }\n this.ngxService.stop();\n }).catch((e: any) => {\n this.ngxService.stop();\n\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\n });\n }\n }\n \n\n onSupChange(e) {\n const Val = this.getSupValue(e.target.value);\n this.selectedSupvalue = Val.AttributeID;\n }\n getSupValue(selectedName: string) {\n return this.valSup.find(val => val.AttributeName === selectedName);\n }\n onEngChange(e) {\n const Val = this.getEngValue(e.target.value);\n this.selectedEngvalue = Val.AttributeID;\n }\n getEngValue(selectedName: string) {\n return this.valEngineer.find(val => val.AttributeName === selectedName);\n }\n getCityLocation(val: IGetCityLocation) {\n \n this.ngxService.start();\n ApiService.GetCityLocation(val).then((responce: any) => {\n \n if (responce.status === 200) {\n if (responce.data) {\n this.valEngineer = responce.data.DATA;\n \n }\n }\n this.ngxService.stop();\n }).catch((e: any) => {\n this.ngxService.stop();\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\n });\n }\n getStatus(val: string) {\n this.ngxService.start();\n ApiService.GetMaster(val).then((responce: any) => {\n if (responce.status === 200) {\n if (responce.data) {\n this.status = responce.data.DATA;\n }\n }\n this.ngxService.stop();\n }).catch((e: any) => {\n this.ngxService.stop();\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\n });\n }\n allocation(e) {\n \n this.quiid=\"1\";\n const review = document.getElementById(\"review-tab\");\n const publish = document.getElementById(\"publish-tab\");\n const allocation = document.getElementById(\"home-tab\");\n const Newreview = document.getElementById(\"Newreview-tab\");\n this.typeOfStage = \"allocation\";\n publish.classList.remove(\"active\");\n allocation.classList.add(\"active\");\n review.classList.remove(\"active\");\n Newreview.classList.remove(\"active\");\n this.isShowAllocation = true;\n this.isShowReview = false;\n this.isShowPublish = false;\n this.isnewReview = false;\n this.getMainGridData(\"1\");\n /* if (this.GridDetail) {\n if(this.datatablerefersh==false){\n this.getMainGridData(\"1\");\n setTimeout(function () {\n $(function () {\n $(\"#example1\").DataTable({\n destroy: true,\n searching: true,\n \"order\": [[ 0, \"desc\" ]],\n \"lengthMenu\": [[50,100, -1], [50,100, \"All\"]] \n });\n });\n }, 1000);\n this.datatablerefersh=false;\n }\n } */\n return false;\n }\n\n review(e) {\n \n this.quiid=\"2\";\n const review = document.getElementById(\"review-tab\");\n const publish = document.getElementById(\"publish-tab\");\n const allocation = document.getElementById(\"home-tab\");\n const Newreview = document.getElementById(\"Newreview-tab\");\n this.typeOfStage = \"review\";\n publish.classList.remove(\"active\");\n allocation.classList.remove(\"active\");\n Newreview.classList.remove(\"active\");\n review.classList.add(\"active\");\n this.isShowAllocation = false;\n this.isShowReview = false;\n this.isShowPublish = false;\n this.isnewReview = false;\n this.getMainGridData(\"2\");\n /* if (this.GridReview) {\n if(this.datatablerefersh==false){\n this.getMainGridData(\"2\");\n setTimeout(function () {\n $(function () {\n $(\"#example2\").DataTable({\n destroy: true,\n \"order\": [[ 0, \"desc\" ]],\n \"lengthMenu\": [[50,100, -1], [50,100, \"All\"]] \n });\n });\n }, 1000);\n this.datatablerefersh=false;\n }\n }\n else{\n this.datatablerefersh=true;\n this.getMainGridData(\"2\");\n } */\n return false;\n }\n NewgetMainGridData() {\n \n let val = {\n LoginID: this.session.UserID\n }\n this.ngxService.start();\n ApiService.GetSuperGridData(val).then((responce: any) => {\n if (responce.status == 200) {\n if (responce.data) {\n this.NewMainGrid = responce.data;\n this.dataSourceAreaDetail=new MatTableDataSource(responce.data);\n this.dataSourceAreaDetail.paginator = this.paginator; \n this.dataSourceAreaDetail.sort = this.sort; \n \n }\n }\n this.ngxService.stop();\n }).catch((e: any) => {\n this.ngxService.stop();\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\n });\n }\n ViewCaseReportAnalysis() {\n \n let val = {\n LoginID: this.session.UserID\n }\n this.ngxService.start();\n ApiService.ViewCaseReportAnalysis(val).then((responce: any) => {\n if (responce.status == 200) {\n if (responce.data) {\n this.NewMainGrid = responce.data;\n this.dataSourceAreaDetail=new MatTableDataSource(responce.data);\n this.dataSourceAreaDetail.paginator = this.paginator; \n this.dataSourceAreaDetail.sort = this.sort; \n \n }\n }\n this.ngxService.stop();\n }).catch((e: any) => {\n this.ngxService.stop();\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\n });\n }\n NewGrid(e) {\n\n const review = document.getElementById(\"review-tab\");\n const publish = document.getElementById(\"publish-tab\");\n const allocation = document.getElementById(\"home-tab\");\n const Newreview = document.getElementById(\"Newreview-tab\");\n this.typeOfStage = \"Newreview\";\n\n publish.classList.remove(\"active\");\n allocation.classList.remove(\"active\");\n review.classList.remove(\"active\");\n Newreview.classList.add(\"active\");\n\n this.isShowAllocation = false;\n this.isShowReview = false;\n this.isShowPublish = false;\n this.isnewReview = false;\n debugger;\n if(this.session.getAdroitOffice==\"1\" || this.session.getAdroitOffice==\"39\"){\n this.qcpasspermission=this.session.getqc_permission;\n this.editcasepermission=this.session.getedit_report;\n this.viewAreadetailedit=false;\n this.ViewCaseReportAnalysis()\n \n }\n else{\n this.viewAreadetailedit=true;\n this.NewgetMainGridData();\n }\n \n return false;\n \n }\n publish(e) {\n this.quiid=\"3\";\n const review = document.getElementById(\"review-tab\");\n const publish = document.getElementById(\"publish-tab\");\n const allocation = document.getElementById(\"home-tab\");\n const Newreview = document.getElementById(\"Newreview-tab\");\n this.typeOfStage = \"publish\";\n publish.classList.add(\"active\");\n allocation.classList.remove(\"active\");\n review.classList.remove(\"active\");\n Newreview.classList.remove(\"active\");\n\n this.isShowAllocation = false;\n this.isShowReview = false;\n this.isShowPublish = true;\n this.isnewReview = false;\n this.getMainGridData(\"1\");\n \n return false;\n }\n addCase() {\n this.router.navigate([\"Casecreation\"]);\n }\n getMainGridData(qid: string) {\n debugger;\n let val: any = {\n loginid:\"\"+ this.session.UserID \n }\n this.ngxService.start();\n ApiService.ViewSBFCLead(val).then((responce: any) => {\n debugger;\n if (responce.status === 200) {\n if (responce.data) {\n if (qid === \"1\") {\n this.GridDetail = responce.data; \n this.dataSourceAllocation=new MatTableDataSource(responce.data);\n this.dataSourceAllocation.paginator = this.paginator; \n this.dataSourceAllocation.sort = this.sort; \n }\n else if (qid === \"2\") {\n this.GridReview = responce.data;\n this.dataSourceReview=new MatTableDataSource(responce.data);\n this.dataSourceReview.paginator = this.paginator; \n this.dataSourceReview.sort = this.sort; \n }\n else if (qid === \"3\" || qid === \"7\") {\n this.GridPublish = responce.data;\n this.dataSourcePublish=new MatTableDataSource(responce.data);\n this.dataSourcePublish.paginator = this.paginator;\n this.dataSourcePublish.sort = this.sort;\n }\n /* if(this.datatablerefersh==true){\n setTimeout(function () {\n $(function () {\n $(\"#example\" + qid + \"\").DataTable({\n \"order\": [[ 0, \"desc\" ]],\n \"lengthMenu\": [[50,100, -1], [50,100, \"All\"]] \n });\n });\n }, 1000);\n this.datatablerefersh=false;\n } */\n \n }\n }\n this.ngxService.stop();\n }).catch((e: any) => {\n this.ngxService.stop();\n // Swal.fire('Oops...', 'Something went wrong try again!', 'error');\n });\n }\n getStage() {\n const valuationType = \"1\";\n let typeval: string = \"\";\n if (this.typeOfStage == \"publish\") {\n typeval = \"Publish\"\n } else if (this.typeOfStage == \"review\") {\n typeval = \"Review\"\n } else {\n typeval = \"Allocation\"\n }\n let val: getStage = {\n Type: typeval,\n valType: valuationType\n }\n this.ngxService.start();\n ApiService.GetStages(val).then((response: any) => {\n this.status = response.data.DATA;\n this.ngxService.stop();\n }).catch((e: any) => {\n this.ngxService.stop();\n Swal.fire('Oops...', 'Something Went Wrong In Action Please Refresh Page!', 'error')\n })\n }\n ExportTOExcel(caseid) {\n \n let data = [];\n \nlet header=[];\nlet val={\n caseid:caseid\n}\nlet workbook = new Excel.Workbook();\n this.ngxService.start();\n ApiService.DownloadCSVFileKotak(val).then((responce: any) => { \n if(responce.data){ \n let blob = new Blob([responce.data], { type: 'application/text' });\n FileSaver.saveAs(blob, caseid+'.csv');\n \n }\n this.ngxService.stop();\n }).catch((e: any) => {\n this.ngxService.stop();\n \n });\n\n\n\n\n\n \n }\n\n Edit(valuationID: string, e: any) {\n const val = e/* .currentTarget.parentElement.firstElementChild.value */;\n if (val && val != \"\") {\n const data = window.btoa(val);\n this.router.navigate([\"/UpdateAddress\", { id: data, valuation: valuationID }]);\n }\n }\n \n View(e: any) {\n let data = e/* .currentTarget.parentElement.firstElementChild.value */;\n const LoginID = localStorage.getItem('userID');\n const val: UpdateDataForGrid = {\n CaseID: data,\n Type: \"View\",\n watermark: \"\",\n casecreatedfrom: \"\",\n UserID: LoginID,\n Remark: \"\",\n Supervisor: \"\",\n RoleID: \"\",\n }\n ApiService.UpdateGridDataAndGetUrl(val).then((responce: any) => {\n if (responce.status === 200) {\n this.openInNewTab(responce.data.URL);\n }\n this.ngxService.stop();\n }).catch((e: any) => {\n this.ngxService.stop();\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\n });\n }\n QcPass(e: any,fee: any) {\n const val = window.confirm(\"Do you want to save data?\");\n if (val) {\n const data = e/* .currentTarget.parentElement.firstElementChild.value */;\n const waterMark = e/* .currentTarget.firstElementChild.value */;\n const LoginID = localStorage.getItem('userID');\n const val: UpdateDataForGrid = {\n CaseID: data,\n Type: \"QCPASS\",\n watermark: waterMark,\n casecreatedfrom: \"\",\n UserID: LoginID,\n Remark: \"\",\n Supervisor: \"\",\n RoleID: \"\"\n }\n this.ngxService.start();\n ApiService.UpdateGridDataAndGetUrl(val).then((responce: any) => {\n if (responce.status === 200) {\n debugger;\n Swal.fire('Thanks', 'QC Pass Sucessfully', 'success');\n this.openInNewTab(responce.data.URL);\n \n // this.getMainGridData();\n /* this.ViewReportwithqc(data); */\n window.location.reload();\n \n }\n this.ngxService.stop();\n }).catch((e: any) => {\n this.ngxService.stop();\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\n });\n \n }\n }\n allocateAdminSup(e: any) {\n this.caseID = e/* .currentTarget.parentElement.firstElementChild.value */;\n this.popUpHeading = \"Allocate Case \"\n this.IsEditadmin = true;\n this.ShowStatusTag = false;\n this.showAllocateStatusTag = true;\n this.getUserDetails();\n }\n getUserDetails() {\n this.ngxService.start();\n const LoginID = localStorage.getItem('userID');\n let val: IGetCityLocation = {\n StateID: LoginID,\n CityID: \"\",\n LocID: \"\",\n GetType: \"Supp\",\n }\n ApiService.GetCityLocation(val).then((responce: any) => {\n if (responce.status === 200) {\n if (responce.data) {\n this.getUserDetailsArr = responce.data.DATA;\n }\n }\n this.ngxService.stop();\n }).catch((e: any) => {\n this.ngxService.stop();\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\n });\n }\n HideModell() {\n this.IsEditadmin = false;\n }\n updateAllocateStatus() {\n let roleID = localStorage.getItem(\"roleID\");\n if (this.AllocateSelectedUser == \"Select\") {\n Swal.fire(\"Opps..\", \"Please Select User\", \"warning\");\n }\n else if(this.AllocateCaseRemark==\"\"){\n Swal.fire(\"Opps..\", \"Please Enter Remark\", \"warning\");\n } \n else {\n const val: UpdateDataForGrid = {\n CaseID: this.caseID,\n Type: \"AllocateSuperAdmin\",\n watermark: \"\",\n casecreatedfrom: \"\",\n UserID: this.session.UserID,\n Remark: this.AllocateCaseRemark,\n Supervisor: this.AllocateSelectedUser,\n RoleID: roleID,\n }\n ApiService.UpdateGridDataAndGetUrl(val).then((responce: any) => {\n if (responce.status === 200) {\n Swal.fire(\"Thanks..\", \"Save Sucessfully\", \"success\");\n this.HideModell();\n this.AllocateCaseRemark=\"\";\n }\n this.ngxService.stop();\n }).catch((e: any) => {\n this.ngxService.stop();\n Swal.fire('Oops...', 'Something went wrong try again!', 'error');\n });\n }\n }\n \n}\n","\r\n// This file can be replaced during build by using the `fileReplacements` array.\r\n// `ng build --prod` replaces `environment.ts` with `environment.prod.ts`.\r\n// The list of file replacements can be found in `angular.json`.\r\n\r\nexport const environment = {\r\n production: true\r\n};\r\n\r\n/*\r\n * For easier debugging in development mode, you can import the following file\r\n * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`.\r\n *\r\n * This import should be commented out in production mode because it will have a negative impact\r\n * on performance if an error is thrown.\r\n */\r\n// import 'zone.js/dist/zone-error'; // Included with Angular CLI.\r\n","import 'hammerjs';\r\nimport { enableProdMode } from '@angular/core';\r\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\r\n\r\nimport { AppModule } from './app/app.module';\r\nimport { environment } from './environments/environment';\r\n\r\nif (environment.production) {\r\n enableProdMode();\r\n}\r\n\r\nplatformBrowserDynamic().bootstrapModule(AppModule)\r\n .catch(err => console.error(err));\r\n"],"sourceRoot":""}