From 9a01a792419b8fb58a6ef59ae5bd2b7a8a06c226 Mon Sep 17 00:00:00 2001 From: "venbatechnologies@gmail.com" Date: Mon, 8 Apr 2019 17:32:22 +0530 Subject: [PATCH] Rentalform : ps --- .../pd-question-rental-info.html | 37 ++++++- .../pd-question-rental-info.ts | 102 +++++++++++++++--- 2 files changed, 124 insertions(+), 15 deletions(-) diff --git a/src/pages/pd-question/pd-question-rental-info/pd-question-rental-info.html b/src/pages/pd-question/pd-question-rental-info/pd-question-rental-info.html index 2e4ae8bf..697fe68f 100755 --- a/src/pages/pd-question/pd-question-rental-info/pd-question-rental-info.html +++ b/src/pages/pd-question/pd-question-rental-info/pd-question-rental-info.html @@ -31,6 +31,16 @@ {{stVal.name}} + @@ -40,6 +50,18 @@ {{ctVal.city_name}} + @@ -49,6 +71,17 @@ {{pinVal.pincode}} +
@@ -281,8 +314,8 @@
Rent Unit {{fu+1}} - - {{"₹"}} {{rent_per_unit_2_Inwords[fu]}} Only + + {{"₹"}} {{fUnits.value.rent_per_unit != '' ? inWordsmultiple(fUnits.value.rent_per_unit,f,fu,1) : ''}} Only
diff --git a/src/pages/pd-question/pd-question-rental-info/pd-question-rental-info.ts b/src/pages/pd-question/pd-question-rental-info/pd-question-rental-info.ts index f7671d98..ae6b91e8 100755 --- a/src/pages/pd-question/pd-question-rental-info/pd-question-rental-info.ts +++ b/src/pages/pd-question/pd-question-rental-info/pd-question-rental-info.ts @@ -8,6 +8,9 @@ import {ConstantsProvider} from '../../../providers/constants/constants'; import {DatePipe} from '@angular/common' import { Message } from '@angular/compiler/src/i18n/i18n_ast'; +import { takeUntil } from 'rxjs/operators'; +import { Subject } from 'rxjs'; + /** * Generated class for the PdQuestionRentalInfoPage page. * @@ -40,6 +43,9 @@ export class PdQuestionRentalInfoPage { stateList:any=[]; cityList:any=[]; pincodeList:any=[]; + stateData:any=[]; + cityData:any=[]; + pincodeData:any=[]; documentList: any=[{id:2,name:"Property Title Document"},{id:3,name:"Electricity Bill with name of owner mentioned therein"},{id:4,name:"Property tax Receipts"},{id:1,name:"Others (Please Specify)"}]; //floorList: any=[{id:1,name:"Ground Floor"},{id:1,name:"First Floor"},{id:1,name:"Second Floor"},{id:1,name:"Third Floor"}] //unitMeasurementList: any=[{id:2,name:"Square Feet"},{id:3,name:"Square Yards"},{id:4,name:"Square Meters"},{id:5,name:"Acres"},{id:6,name:"Hectares"},{id:1,name:"Others (Please Specify)"}]; @@ -47,7 +53,8 @@ export class PdQuestionRentalInfoPage { rent_per_unit_Inwords : any= []; amount_Inwords : any=[]; - rent_per_unit_2_Inwords: any=[]; + // rent_per_unit_2_Inwords: any=[]; + floor_rent_per_unit_Inwords : any[][]; floor_rent_amount_Inwords: any=[]; monthly_rent_amount_Inwords: any=[]; amount_received_cash_Inwords: any=[]; @@ -58,7 +65,8 @@ export class PdQuestionRentalInfoPage { paid_monthly_rent_per_met_Inwords: any=[]; amount_received_cash_per_met_Inwords: any=[]; amount_received_bank_per_met_Inwords: any=[]; - + protected _onDestroy = new Subject(); + constructor(public navCtrl: NavController, public navParams: NavParams,public aws:AwsServiceProvider,public toast:ToastProvider,public qustCat:QuestionCategoryProvider,public fb:FormBuilder,public constprovider:ConstantsProvider,public alertCtrl:AlertController) { this.FormId = this.navParams.get('FormId'); this.pdDetails = this.navParams.get('pdDetails'); @@ -75,8 +83,11 @@ export class PdQuestionRentalInfoPage { formid: this.FormId.form_id, address_property:['',Validators.required], state:['',Validators.required], + stateSearch:[''], city:['',Validators.required], + citySearch:[''], pincode:['',Validators.required], + pincodeSearch:[''], validate_visited_address:[true], person_met: ['',Validators.required], property_owner: ['',Validators.required], @@ -150,8 +161,10 @@ export class PdQuestionRentalInfoPage { this.rentalForms.controls['state'].valueChanges.subscribe(val => { this.qustCat.getStateWiseCities(val).subscribe(data => { if (data.status == 200) { + this.cityData = data.records.cities; this.cityList = data.records.cities; - this.pincodeList = data.records.pincode; + this.pincodeData = data.records.pincode; + this.pincodeList = data.records.cities; } }); }); @@ -193,7 +206,7 @@ export class PdQuestionRentalInfoPage { } // set unit type list details let resiDentialProperty = [{id:2,name:'Independent Flat',group_id:1},{id:3,name:'Independent Floor',group_id:1}, - {id:4,name:'Independent Bungalow',group_id:1},{id:5,name:'Independent Row House',group_id:1},{id:6,name:'Multi Storey Building',group_id:1},{id:1,name:'Other (Please Specify)',group_id:1}]; + {id:4,name:'Independent House',group_id:1},{id:5,name:'Independent Row House',group_id:1},{id:6,name:'Multi Storey Building',group_id:1},{id:1,name:'Other (Please Specify)',group_id:1}]; let commercialProperty = [{id:2,name:'Independent Office',group_id:2},{id:3,name:'Independent Shop',group_id:2},{id:4,name:'Warehouse/Godown',group_id:2}, {id:5,name:'Workshop',group_id:2},{id:6,name:'Independent Clinic',group_id:2},{id:7,name:'Multi Storey Building',group_id:2},{id:1,name:'Other (Please Specify)',group_id:2}]; @@ -234,7 +247,8 @@ export class PdQuestionRentalInfoPage { { if(res['dataStatus']==true) { - this.stateList = res['records'].filter(data => data.isactive == 1); + this.stateData = res['records'].filter(data => data.isactive == 1); + this.stateList = this.stateData.slice(); } }) @@ -884,25 +898,42 @@ compareSingleObjects(o1: any, o2: any) { // } // } saveAlert(answerData){ - let ApplicantRentAmt : any ; + let ApplicantRentAmt : any ; let TenantRentAmt : any ; + let FloorsTotalRentAmt : any ; + let TempArray1 : any = []; let TempArray2 : any = []; - + let TempArray3 : any = []; + + let TextMessage :any; + if(answerData.property_unit_details.length > 0){ - answerData.property_unit_details.forEach((data,index) => { TempArray1[index] = data.monthly_rent_amount; ApplicantRentAmt = TempArray1.reduce((sum, val) => sum + +val, 0); TempArray2[index] = data.paid_monthly_rent_per_met; TenantRentAmt = TempArray2.reduce((sum, val) => sum + +val, 0); }) + TextMessage = 'Monthly Rent as Per Loan Applicant =' + ApplicantRentAmt+'
'; + } + + + if(answerData.multistoried_building_details.length > 0){ + answerData.multistoried_building_details.forEach((val,index) => { + TempArray3[index] = val.floor_rent_amount; + FloorsTotalRentAmt = TempArray3.reduce((sum, val) => sum + +val, 0); + }); + TextMessage = TextMessage +'Rent amount calculated = '+FloorsTotalRentAmt; + } + else{ + TextMessage = TextMessage +'Monthly Rent amount as Per Tenant met = '+TenantRentAmt; } let alert=this.alertCtrl.create({ title:'Confirm The Rent Amount', - message:'Monthly Rent as Per Loan Applicant =' + ApplicantRentAmt+'
'+'Monthly Rent as Per Lease or Tenant Met = '+TenantRentAmt , + message:TextMessage, buttons:[ { text:'Cancel', @@ -922,9 +953,16 @@ compareSingleObjects(o1: any, o2: any) { alert.present(); } saveRentalDetails(answerData) { + console.log('answerData',answerData); - answerData.fk_createdby = this.users; + + delete answerData.stateSearch; + delete answerData.citySearch; + delete answerData.pincodeSearch; + answerData.fk_createdby = this.users; + console.log('answerData',answerData); + this.qustCat.saveForm(answerData).subscribe(res=> { if(res['dataStatus']==true) @@ -988,7 +1026,12 @@ compareSingleObjects(o1: any, o2: any) { rentalDetails.formid = this.FormId.form_id; rentalDetails.other_name_person_type ? this.rentalForms.addControl('other_name_person_type', new FormControl('', Validators.required)): this.rentalForms.removeControl('other_name_person_type'); rentalDetails.other_sighted_documents ? this.rentalForms.addControl('other_sighted_documents', new FormControl('', Validators.required)) : this.rentalForms.removeControl('other_sighted_documents'); - + // this.rentalForms.addControl('stateSearch', new FormControl('')); + // this.rentalForms.addControl('citySearch', new FormControl('')); + // this.rentalForms.addControl('pincodeSearch', new FormControl('')); + rentalDetails.stateSearch = ''; + rentalDetails.citySearch = ''; + rentalDetails.pincodeSearch = ''; //get Multistoried Building Details if(res['records'].multistoried_building_details){ let selectedMultistoriedBuilding = Object.keys(res['records'].multistoried_building_details).map(function (key) { @@ -1016,7 +1059,6 @@ compareSingleObjects(o1: any, o2: any) { } else if(floorElement.unit_rent_difference_options=="0"){ if(unitElement.rent_per_unit!=''){ - this.inWords(unitElement.rent_per_unit,unitIndex,3) //floor_rent_amount_val+=unitElement.rent_per_unit } this.inWords(floorElement.floor_rent_amount,floorIndex,4) @@ -1194,7 +1236,7 @@ compareSingleObjects(o1: any, o2: any) { this.amount_Inwords[i] = this.constprovider.convertNumberToWords(e); break; case 3 : - this.rent_per_unit_2_Inwords[i] = this.constprovider.convertNumberToWords(e); + // this.rent_per_unit_2_Inwords[i] = this.constprovider.convertNumberToWords(e); break; case 4 : this.floor_rent_amount_Inwords[i] = this.constprovider.convertNumberToWords(e); @@ -1229,6 +1271,10 @@ compareSingleObjects(o1: any, o2: any) { } } + inWordsmultiple(e,i,j,flag){ + // console.log(e,i,j,flag); + return this.constprovider.convertNumberToWords(e); + } validateAllFormFields(formGroup: any) { Object.keys(formGroup.controls).forEach(field => { const control = formGroup.get(field); @@ -1242,6 +1288,8 @@ compareSingleObjects(o1: any, o2: any) { } }); } + + // generate payment dynamic fields ValidatedRentAmount(value:any,index:number,type: number){ @@ -1312,4 +1360,32 @@ ValidatedRentAmount(value:any,index:number,type: number){ } } + +// forSearchableDropdown(val:any,Flag:any){ +// // val=val.controls['relationSearch'].value +// console.log("val",val,'Flag',Flag); +// switch(Flag){ +// case 'state' : +// console.log("val",val.controls['state'].value,'Flag',Flag,'1'); +// val.controls['stateSearch'].valueChanges +// .pipe(takeUntil(this._onDestroy)) +// .subscribe(()=>{ +// }); break; +// case 'city' : +// console.log("val",val.controls['city'].value,'Flag',Flag,'2'); +// val.controls['citySearch'].valueChanges +// .pipe(takeUntil(this._onDestroy)) +// .subscribe(()=>{ +// this.cityList =this.constprovider.searchData(this.cityData,val.controls['city'].value,Flag) +// }); break; +// case 'pin' : +// console.log("val",val.controls['pincode'].value,'Flag',Flag,'3'); +// val.controls['pincodeSearch'].valueChanges +// .pipe(takeUntil(this._onDestroy)) +// .subscribe(()=>{ +// this.pincodeList =this.constprovider.searchData(this.pincodeData,val.controls['pincode'].value,Flag) +// }); break; +// } +// } + }