This commit is contained in:
saravanakumarkandasami 2019-03-28 09:52:19 +05:30
commit db8a8fa758
11 changed files with 2313 additions and 745 deletions

View File

@ -20,7 +20,14 @@
</mat-card-header>
<div fxLayout="column" fxLayoutAlign="start stretch">
<mat-form-field style="width: 100%">
<textarea matInput style="text-transform: uppercase" placeholder="Address" type="text" name="address" formControlName="address"></textarea>
<textarea matInput style="text-transform: uppercase;" placeholder="Address" type="text" name="address" formControlName="address" rows = "{{countRowsForTextarea(item.get('address').value)}}"></textarea>
<!-- <textarea matInput style="text-transform: uppercase" placeholder="Address" name="address" formControlName="address"
cdkTextareaAutosize
#autosize="cdkTextareaAutosize"
cdkAutosizeMinRows="2"
cdkAutosizeMaxRows="5"></textarea> -->
<!-- <mat-error *ngIf="pdforms.controls['lenAppID'].hasError('required')">Applicant ID Required</mat-error> -->
</mat-form-field>
</div>
@ -101,18 +108,15 @@
</mat-form-field>
</div>
<mat-form-field style="width: 100%" *ngIf="item.get('locality').value == 1">
<input matInput placeholder="Specify Locality" name="locality_others"
formControlName="locality_others" autocomplete="off">
</mat-form-field>
<mat-form-field *ngIf="item.get('locality').value == 5" style="width: 100%">
<!-- <mat-form-field *ngIf="item.get('locality').value == 5" style="width: 100%">
<input matInput placeholder="Specify the MixUse *" formControlName="locality_mixuse"
autocomplete="off">
</mat-form-field>
</mat-form-field> -->
<div fxLayout="column" fxLayoutAlign="start stretch">
<mat-form-field style="width: 100%;">
<mat-select placeholder="Approach to PD Location" name="pd_location" formControlName="pd_location">

View File

@ -11,4 +11,7 @@ page-pd-question-address {
.mat-card-content{
margin-bottom: 0px !important;
}
textarea {
resize: none;
}
}

View File

@ -210,7 +210,18 @@ export class PdQuestionAddressPage {
)
}
countRowsForTextarea(text){
// console.log('text.length%100',text.length%190);
// console.log('text.length/100',text.length/100);
if(text.length%100 > 5)
return 5;
else if(text.length%100 <= 3)
return 3;
else return Math.floor(text.length%100);
}
ionViewWillLeave()
{
@ -431,7 +442,7 @@ export class PdQuestionAddressPage {
console.log("pin init", this.pincodeValue[0])
if(AddressDetails != null){
return this.fb.group({
address: [AddressDetails.address, Validators.compose([Validators.required])],
address: [AddressDetails.address + 'qqqqqqqqqqqqqqqqqqqqqqqqqqqq wwwwwwwwwwwwwwwwwwwe eeeeeeeeeeeeeeeeeeeeeeeeeeeee eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr rrrrrrrrrrrrr', Validators.compose([Validators.required])],
address_type: [AddressDetails.address_type, Validators.compose([Validators.required])],
address_type_others: [AddressDetails.address_type_others],
state: [AddressDetails.state],
@ -443,7 +454,7 @@ export class PdQuestionAddressPage {
pincode_others: [AddressDetails.pincode_others, Validators.compose([Validators.minLength(6), Validators.maxLength(6)])],
locality: [AddressDetails.locality, Validators.compose([Validators.required])],
locality_others: [AddressDetails.locality_others],
locality_mixuse: [AddressDetails.locality_mixuse],
// locality_mixuse: [AddressDetails.locality_mixuse],
pd_location: [AddressDetails.pd_location, Validators.compose([Validators.required])],
comment_locality: [AddressDetails.comment_locality, Validators.compose([Validators.required])],
estimated_area: [AddressDetails.estimated_area],
@ -465,7 +476,7 @@ export class PdQuestionAddressPage {
pincode_others: ['', Validators.compose([Validators.minLength(6), Validators.maxLength(6)])],
locality: ['', Validators.compose([Validators.required])],
locality_others: [''],
locality_mixuse: [''],
// locality_mixuse: [''],
pd_location: ['', Validators.compose([Validators.required])],
comment_locality: ['', Validators.compose([Validators.required])],
estimated_area: [''],
@ -619,7 +630,7 @@ export class PdQuestionAddressPage {
'pincode_others':datas.pincode_others,
'locality': datas.locality,
'locality_others': datas.locality_others,
'locality_mixuse': datas.locality_mixuse,
// 'locality_mixuse': datas.locality_mixuse,
'pd_location': datas.pd_location,
'comment_locality': datas.comment_locality,
'estimated_area': datas.estimated_area,
@ -763,7 +774,7 @@ export class PdQuestionAddressPage {
'pincode_others': datas.other_pincode,
'locality': '',
'locality_others': '',
'locality_mixuse':'',
// 'locality_mixuse':'',
'pd_location': '',
'comment_locality': '',
'estimated_area': '',

View File

@ -45,7 +45,7 @@
</mat-accordion>
<br/>
<div *ngIf="assessedProcess">
<ion-row >
<ion-row>
<ion-col col-6 text-center>
<mat-card (click)="getViewPage(1)" class="item-ribbon" style="height: 110px;">
<span *ngIf="salesData;else noSalesData"class="ribbon cruzeiro">
@ -74,8 +74,8 @@
<h1 class="htag">PURCHASE</h1>
</mat-card>
</ion-col>
</ion-row>
<ion-row>
<!-- </ion-row>
<ion-row> -->
<ion-col col-6 text-center>
<mat-card (click)="getViewPage(3)" class="item-ribbon" style="height: 110px;">
<span *ngIf="businessData;else nobusinessData"class="ribbon cruzeiro">
@ -104,8 +104,8 @@
<h1 class="htag">HOUSE HOLD</h1>
</mat-card>
</ion-col>
</ion-row>
<ion-row>
<!-- </ion-row>
<ion-row> -->
<!-- <ion-col col-6 text-center>
<mat-card (click)="getViewPage(5)" class="item-ribbon" style="height: 110px;">
<span *ngIf="businessIncome;else nobusinessIncome"class="ribbon cruzeiro">

View File

@ -366,7 +366,7 @@
</ion-col>
<ion-col col-2 offset-1 *ngIf="l" >
<!-- <button float-right ion-button clear (click)="addMoreManufacturing()" ><ion-icon style="font-size:24px" color="optblue" name="add-circle"></ion-icon></button><br/> -->
<button ion-button color="optblue" round (click)="addMoreManufacturing()">Add Material</button>
<button ion-button color="optblue" round (click)="addMoreManufacturing()">Add More Product</button>
</ion-col>
</ion-buttons>
@ -620,7 +620,7 @@
</ion-col>
<ion-col *ngIf="l" col-2 offset-1>
<!-- <button float-right ion-button clear (click)="addMoreRetail()" ><ion-icon style="font-size:24px" color="optblue" name="add-circle"></ion-icon></button><br/> -->
<button ion-button color="optblue" round (click)="addMoreRetail()">Add Product</button>
<button ion-button color="optblue" round (click)="addMoreRetail()">Add More Product</button>
</ion-col>
</ion-buttons>
@ -868,7 +868,7 @@
</ion-col>
<ion-col *ngIf="l" col-2 offset-1>
<!-- <button float-right ion-button clear (click)="addMoreWholesale()" ><ion-icon style="font-size:24px" color="optblue" name="add-circle"></ion-icon></button><br/> -->
<button ion-button color="optblue" round (click)="addMoreWholesale()">Add Product</button>
<button ion-button color="optblue" round (click)="addMoreWholesale()">Add More Product</button>
</ion-col>
</ion-buttons>
@ -1128,7 +1128,7 @@
</ion-col>
<ion-col *ngIf="l" col-2 offset-1>
<!-- <button float-right ion-button clear (click)="addMoreServiceprovider()" ><ion-icon style="font-size:24px" color="optblue" name="add-circle"></ion-icon></button><br/> -->
<button ion-button color="optblue" round (click)="addMoreServiceprovider()">Add Services</button>
<button ion-button color="optblue" round (click)="addMoreServiceprovider()">Add More Services</button>
</ion-col>
</ion-buttons>

View File

@ -6,370 +6,364 @@
</button>
<ion-title *ngIf="!viewchange">{{FormId.form_name}}</ion-title>
</ion-navbar>
</ion-header>
<ion-content padding>
<form [formGroup]="generalForm">
<mat-card style="padding: 0px 10px !important;">
<h6 padding>Name of Person(s) Met and Individual Loan Applicant(s)</h6>
<ion-list formArrayName="list_value">
<ion-item-sliding [formGroupName]="i" *ngFor="let item of generalForm.controls.list_value['controls']; let i=index">
<ion-item>
<ion-label>
<h2 style="font-size: 18px !important;">{{item.get('applicant_name').value | titlecase}}</h2>
<p>Age : {{item.get('age').value}}&nbsp;&nbsp;<ion-icon name="school">
</ion-icon> {{item.get('qualification_name').value}}</p>
<p *ngIf="item.get('course_name').value != ''"><ion-icon name="copy"></ion-icon>&nbsp; {{item.get('course_name').value | titlecase}}</p>
</ion-label>
<!--<p><ion-icon name="school"></ion-icon> {{item.get('qualification').value}}</p>-->
<button ion-button align="end" item-end small clear (click)="editIndividuals(i)"><ion-icon name="md-create"></ion-icon></button>
</ion-item>
<ion-item-options side="right">
<ion-list>
<ion-row >
<ion-col color="primary">
<p style="font-size: 11px !important;">Person</p>
<ion-checkbox color="dark" formControlName="is_person_met"></ion-checkbox>
</ion-col>
<ion-col color="primary">
<p style="font-size: 12px !important;">Applicant</p>
<ion-checkbox color="dark" formControlName="is_applicant"></ion-checkbox>
</ion-col>
</ion-row>
</ion-list>
<button ion-button color="danger" (click)="removeList(i,1)">
<ion-icon name="trash"></ion-icon>
</button>
</ion-item-options>
</ion-item-sliding>
</ion-list>
<hr>
<mat-card-content>
<ion-row>
<ion-col end>
<div class="btn">
<button *ngIf="!buttonClick" float-right ion-button large color="optblue" icon-left clear (click)="addRec(1)"> <ion-icon name="person-add"></ion-icon></button>
<button *ngIf="buttonClick" float-right ion-button large color="optblue" icon-left clear (click)="addRec(1)">Close &nbsp;&nbsp;<ion-icon name="md-close"></ion-icon></button>
</div>
</ion-col>
</ion-row>
<div *ngIf="buttonClick" >
<mat-card-header>
<mat-card-title *ngIf="addIndi">Add Name of Person(s) Met and Individual Loan Applicant(s)</mat-card-title>
<mat-card-title *ngIf="!addIndi">Update Name of Person(s) Met and Individual Loan Applicant(s)</mat-card-title>
</mat-card-header>
<!--Individual Value add Field-->
<div formArrayName="individuals">
<div [formGroupName]="i" *ngFor="let indi of generalForm.controls.individuals['controls']; let i=index">
<mat-form-field style="width:100%">
<mat-card style="padding: 0px 10px !important;">
<h6 padding>Name of Person(s) Met and Individual Loan Applicant(s)</h6>
<ion-list formArrayName="list_value">
<ion-item-sliding [formGroupName]="i" *ngFor="let item of generalForm.controls.list_value['controls']; let i=index">
<ion-item>
<ion-label>
<h2 style="font-size: 18px !important;">{{item.get('applicant_name').value | titlecase}}</h2>
<p>Age : {{item.get('age').value}}&nbsp;&nbsp;<ion-icon name="school">
</ion-icon> {{item.get('qualification_name').value}}</p>
<p *ngIf="item.get('course_name').value != ''">
<ion-icon name="copy"></ion-icon>&nbsp; {{item.get('course_name').value | titlecase}}
</p>
</ion-label>
<!--<p><ion-icon name="school"></ion-icon> {{item.get('qualification').value}}</p>-->
<button ion-button align="end" item-end small clear (click)="editIndividuals(i)">
<ion-icon name="md-create"></ion-icon>
</button>
</ion-item>
<ion-item-options side="right">
<ion-list>
<ion-row>
<ion-col color="primary">
<p style="font-size: 11px !important;">Person</p>
<ion-checkbox color="dark" formControlName="is_person_met"></ion-checkbox>
</ion-col>
<ion-col color="primary">
<p style="font-size: 12px !important;">Applicant</p>
<ion-checkbox color="dark" formControlName="is_applicant"></ion-checkbox>
</ion-col>
</ion-row>
</ion-list>
<button ion-button color="danger" (click)="removeList(i,1)">
<ion-icon name="trash"></ion-icon>
</button>
</ion-item-options>
</ion-item-sliding>
</ion-list>
<hr>
<mat-card-content>
<ion-row>
<ion-col end>
<div class="btn">
<button *ngIf="!buttonClick" float-right ion-button large color="optblue" icon-left clear (click)="addRec(1)">
<ion-icon name="person-add"></ion-icon>
</button>
<button *ngIf="buttonClick" float-right ion-button large color="optblue" icon-left clear (click)="addRec(1)">Close
&nbsp;&nbsp;<ion-icon name="md-close"></ion-icon></button>
</div>
</ion-col>
</ion-row>
<div *ngIf="buttonClick">
<mat-card-header>
<mat-card-title *ngIf="addIndi">Add Name of Person(s) Met and Individual Loan Applicant(s)</mat-card-title>
<mat-card-title *ngIf="!addIndi">Update Name of Person(s) Met and Individual Loan Applicant(s)</mat-card-title>
</mat-card-header>
<!--Individual Value add Field-->
<div formArrayName="individuals">
<div [formGroupName]="i" *ngFor="let indi of generalForm.controls.individuals['controls']; let i=index">
<mat-form-field style="width:100%">
<mat-select placeholder="Title" formControlName="applicant_title_name">
<mat-option>Select</mat-option>
<mat-option>Select</mat-option>
<mat-option *ngFor="let t1 of titleList" [value]="t1.title_id">{{t1.name}}</mat-option>
</mat-select>
</mat-form-field>
<mat-form-field style="width:100%">
<input matInput type="text" placeholder="Name of the Person" formControlName="applicant_name">
<mat-error style="color:red;font-size:12px;margin:0;padding:0;font-weight: normal;float:right" *ngIf="indi.controls['applicant_name'].errors?.required || indi.controls['applicant_name'].touched">Name is Required</mat-error>
</mat-form-field>
<mat-form-field style="width:100%">
<input matInput type="number" placeholder="Person Age" formControlName="age">
<mat-error style="color:red;font-size:12px;margin:0;padding:0;font-weight: normal;float:right" *ngIf="indi.controls['age'].errors?.required || indi.controls['age'].touched">Age is Required</mat-error>
</mat-form-field>
<mat-form-field style="width:100%">
<mat-select placeholder="Qualification" formControlName="qualification" >
<mat-option>Select</mat-option>
<mat-option [value]="qu.qualification_id" *ngFor="let qu of qualificationList">{{qu.qualification_name}}</mat-option>
</mat-select>
<mat-error style="color:red;font-size:12px;margin:0;padding:0;font-weight: normal;float:right" *ngIf="indi.controls['qualification'].errors?.required || indi.controls['qualification'].touched">Qualification is Required</mat-error>
</mat-form-field>
<!-- {{indi.get('qualification').value}} -->
<div *ngIf="indi.get('qualification').value !== ''">
<mat-form-field style="width:100%" *ngIf="indi.get('qualification').value != '4' && indi.get('qualification').value != '6'">
<input matInput placeholder="Qualification Details" formControlName="course_name">
</mat-form-field>
</div>
<mat-checkbox class="table-checkbox-com" color="primary" formControlName="is_person_met">Is Person Met</mat-checkbox><br/> <br/>
<mat-checkbox class="table-checkbox-com" color="primary" formControlName="is_applicant">Is Applicant</mat-checkbox>
<ion-row>
<ion-col end>
<button *ngIf="addIndi" float-right ion-button color="optblue" (click)="delete(1)">Add</button>
<button *ngIf="!addIndi" float-right ion-button color="optblue" (click)="update(1)">Update</button>
</ion-col>
</ion-row>
</div>
</div>
<!-- <span float-right ion-button large color="optblue" icon-left clear (click)="add()"><ion-icon name="md-add"></ion-icon></span>-->
</div>
</mat-card-content>
</mat-card>
<!-- <mat-card>
<mat-card-title>Name of Person Met</mat-card-title>
<div formArrayName="applicant_list">
<mat-list *ngFor="let applicant of generalForm.controls.applicant_list['controls']; let c = index;" [formGroupName]="c">
<mat-checkbox class="example-margin" color="primary" formControlName="exist_status" (change)="coapplicantChange($event, c, applicant.controls)">{{applicant.controls.applicant_name.value}}</mat-checkbox>
</mat-list>
</div>
</mat-card>-->
<!--<ion-list>
<ion-item>
<ion-grid item-content>
<h5>1</h5>
<ion-row>
<ion-col>
<h4 class="p_name"> Hai skdjfkjdsfkjdsf kjdsf</h4>
<h5 class="p_age">dsf</h5>
<h5 class="p_qual">dsf</h5>
</ion-col>
<ion-col text-right width-10>
<ion-row>
<ion-item>
<ion-label></ion-label>
<ion-toggle></ion-toggle>
</ion-item>
<ion-item>
<ion-label>Person Met</ion-label>
<ion-toggle></ion-toggle>
</ion-item>
</ion-row>
</ion-col>
</ion-row>
</ion-grid>
</ion-item>
</ion-list>
-->
</mat-form-field>
<!--Individual Value Display Field-->
<mat-card *ngIf="customer_segment_abbr == 'SE-RI'">
<mat-card-title><h6>Number of Years for which rental income is being received</h6></mat-card-title>
<mat-form-field style="width: 100%;">
<input matInput placeholder="Year" formControlName="rental_income_rcv_in_years"
autocomplete="off" OnlyNumber type="text" required>
<mat-error style="font-size: 12px">Please Enter Correct Year</mat-error>
</mat-form-field>
<mat-form-field style="width: 100%;">
<input matInput type="text" placeholder="Month" formControlName="rental_income_rcv_in_month"
autocomplete="off" OnlyNumber type="text" (change)="ConvertMonthintoYearforBusiness($event.target.value,'',2)">
</mat-form-field>
</mat-card>
<!--Company Value Display Field-->
<mat-card style="padding: 0px 10px !important;" *ngIf="customer_segment_abbr != 'SE-RI'">
<h6 padding> Company/Firm </h6>
<div formArrayName="company_value">
<ion-list>
<ion-item-sliding [formGroupName]="i" *ngFor="let item of generalForm.controls.company_value['controls']; let i=index">
<ion-item>
<!--<ion-label>{{i+1}}</ion-label>-->
<ion-label>
<h2 h2 style="font-size: 18px !important;">{{item.get('company_name').value | titlecase}}</h2>
<p style="font-size: 14px;"> <span *ngIf="item.get('business_entity_type').value != 1">{{item.get('business_entity_type_name').value}}</span><span *ngIf="item.get('business_entity_type').value == 1">{{item.get('business_entity_type_other').value+"-Others"}}</span></p>
<p style="font-size: 14px;"><ion-icon name="md-calendar"></ion-icon>&nbsp; <span *ngIf="item.get('business_years').value != '' && item.get('business_years').value != 0">{{item.get('business_years').value}} Years</span> <span *ngIf="item.get('business_month').value != ''&& item.get('business_month').value != 0">{{item.get('business_month').value}} Months</span></p>
</ion-label>
<!-- <ion-toggle item-end class="applicant_t" formControlName="is_company_applicant"></ion-toggle>
<button align="end" ion-button clear item-end small color="optblue" (click)="removeList(i,2)"><ion-icon name="close"></ion-icon></button> -->
<!-- <span float-right ion-button small color="optblue" clear (click)="removeList(i,2)"><ion-icon name="close"></ion-icon></span>-->
<button ion-button align="end" item-end small clear (click)="editCompanies(i)"><ion-icon name="md-create"></ion-icon></button>
</ion-item>
<ion-item-options slide="right">
<ion-list>
<ion-row >
<ion-col color="primary">
<p style="font-size: 11px !important;text-align: center">Company Applicant</p>
<ion-checkbox color="dark" formControlName="is_company_applicant"></ion-checkbox>
</ion-col>
</ion-row>
</ion-list>
<button ion-button color="danger" (click)="removeList(i,2)">
<ion-icon name="trash"></ion-icon>
</button>
</ion-item-options>
</ion-item-sliding>
</ion-list>
</div>
<mat-form-field style="width:100%">
<input matInput type="text" placeholder="Name of the Person" formControlName="applicant_name">
<mat-error style="color:red;font-size:12px;margin:0;padding:0;font-weight: normal;float:right" *ngIf="indi.controls['applicant_name'].errors?.required || indi.controls['applicant_name'].touched">Name
is Required</mat-error>
</mat-form-field>
<mat-form-field style="width:100%">
<input matInput type="number" placeholder="Person Age" formControlName="age">
<mat-error style="color:red;font-size:12px;margin:0;padding:0;font-weight: normal;float:right" *ngIf="indi.controls['age'].errors?.required || indi.controls['age'].touched">Age
is Required</mat-error>
</mat-form-field>
<!--Company Value add Field-->
<mat-card-content>
<ion-row>
<ion-col end>
<div class="btn1">
<button *ngIf="!h_companies" float-right ion-button large color="optblue" icon-left clear (click)="addRec(2)"><ion-icon name="add"></ion-icon></button>
<button *ngIf="h_companies" float-right ion-button large color="optblue" icon-left clear (click)="addRec(2)">Close &nbsp;&nbsp;<ion-icon name="md-close"></ion-icon></button>
</div>
</ion-col>
</ion-row>
<div *ngIf="h_companies">
<mat-card-header>
<mat-card-title> Add Company/Firm</mat-card-title>
</mat-card-header>
<div formArrayName="companies" #comp>
<div *ngFor="let cmp of generalForm.controls.companies['controls']; let i=index" [formGroupName]="i">
<mat-form-field style="width:100%">
<mat-label color="primary" stacked>Company / Firm</mat-label>
<input matInput type="text" formControlName="company_name" required>
<mat-error style="color:red;font-size:12px;margin:0;padding:0;font-weight: normal;float:right" *ngIf="cmp.controls['company_name'].errors?.required || cmp.controls['company_name'].touched">Company Name is Required</mat-error>
</mat-form-field>
<mat-checkbox class="table-checkbox-com" color="primary" formControlName="is_company_applicant">Is Applicant</mat-checkbox><br/>
<br/>
<mat-form-field style="width:100%">
<mat-select placeholder="Business Entity Type" formControlName="business_entity_type" required>
<mat-form-field style="width:100%">
<mat-select placeholder="Qualification" formControlName="qualification">
<mat-option>Select</mat-option>
<mat-option *ngFor="let business of businessEntityTypeList" [value]="business.business_entity_type_id">
{{business.business_entity_type_name}}
</mat-option>
</mat-select>
<mat-error style="color:red;font-size:12px;margin:0;padding:0;font-weight: normal;float:right" *ngIf="cmp.controls['business_entity_type'].errors?.required || cmp.controls['business_entity_type'].touched">Business Entity Required</mat-error>
</mat-form-field>
<mat-form-field style="width:100%" *ngIf="cmp.value.business_entity_type==1">
<input matInput type="text" placeholder="Please Specity Others" formControlName="business_entity_type_other">
</mat-form-field>
<p>Number of Years For Which The Business Has Been Running</p>
<mat-form-field style="width:100%">
<input matInput type="number" placeholder="Year" formControlName="business_years" autocomplete="off">
</mat-form-field>
<mat-form-field style="width:100%">
<input matInput type="number" placeholder="Month" formControlName="business_month" autocomplete="off" (change)="ConvertMonthintoYearforBusiness($event.target.value,i,1)" >
</mat-form-field>
<mat-form-field style="width:100%">
<input matInput [max]="maxDate" type="date" [matDatepicker]="picker" placeholder="Enter Date of Formation, If Available" placeholder="Enter Date of Formation, If Available" formControlName="business_date_object" (dateChange)="getDateObjects($event.target.value,i)">
</mat-form-field>
<ion-row>
<ion-col end>
<button *ngIf="addComp" ion-button float-right color="optblue" (click)="delete(2)">Add</button>
<button *ngIf="!addComp" float-right ion-button color="optblue" (click)="update(2)">Update</button>
</ion-col>
</ion-row>
<mat-option [value]="qu.qualification_id" *ngFor="let qu of qualificationList">{{qu.qualification_name}}</mat-option>
</mat-select>
<mat-error style="color:red;font-size:12px;margin:0;padding:0;font-weight: normal;float:right" *ngIf="indi.controls['qualification'].errors?.required || indi.controls['qualification'].touched">Qualification
is Required</mat-error>
</mat-form-field>
<div *ngIf="indi.get('qualification').value !== ''">
<mat-form-field style="width:100%" *ngIf="indi.get('qualification').value != '4' && indi.get('qualification').value != '6'">
<input matInput placeholder="Qualification Details" formControlName="course_name">
</mat-form-field>
</div>
<mat-checkbox class="table-checkbox-com" color="primary" formControlName="is_person_met">Is Person Met</mat-checkbox><br />
<br />
<mat-checkbox class="table-checkbox-com" color="primary" formControlName="is_applicant">Is Applicant</mat-checkbox>
<ion-row>
<ion-col end>
<button *ngIf="addIndi" float-right ion-button color="optblue" (click)="delete(1)">Add</button>
<button *ngIf="!addIndi" float-right ion-button color="optblue" (click)="update(1)">Update</button>
</ion-col>
</ion-row>
</div>
</div>
</div>
</div>
</mat-card-content>
</mat-card>
<!-- companies end -->
<!-- {{generalForm.controls.persons_with_relationships.length}} -->
<!-- Person Relationship Starts Here -->
<div *ngIf="generalForm.controls.persons_with_relationships.length > 1">
<mat-card formArrayName="persons_with_relationships" class="rbi">
<mat-card-header>
<mat-card-title style="font-size:16px;font-weight:bold"> Relationship Between Individuals</mat-card-title>
</mat-card-header>
<div *ngFor="let relation of generalForm.controls.persons_with_relationships['controls']; let i=index" [formGroupName]="i">
<!-- <span float-right ion-button large color="optblue" icon-left clear (click)="add()"><ion-icon name="md-add"></ion-icon></span>-->
</div>
</mat-card-content>
</mat-card>
<!--Individual Value Display Field-->
<mat-card *ngIf="customer_segment_abbr == 'SE-RI'">
<mat-card-title>
<h6>Number of Years for which rental income is being received</h6>
</mat-card-title>
<mat-form-field style="width: 100%;">
<input matInput placeholder="Year" formControlName="rental_income_rcv_in_years" autocomplete="off" OnlyNumber
type="text" required>
<mat-error style="font-size: 12px">Please Enter Correct Year</mat-error>
</mat-form-field>
<mat-form-field style="width: 100%;">
<input matInput type="text" placeholder="Month" formControlName="rental_income_rcv_in_month" autocomplete="off"
OnlyNumber type="text" (change)="ConvertMonthintoYearforBusiness($event.target.value,'',2)">
</mat-form-field>
</mat-card>
<!--Company Value Display Field-->
<mat-card style="padding: 0px 10px !important;" *ngIf="customer_segment_abbr != 'SE-RI'">
<h6 padding> Company/Firm </h6>
<div formArrayName="company_value">
<ion-list>
<ion-item-sliding [formGroupName]="i" *ngFor="let item of generalForm.controls.company_value['controls']; let i=index">
<ion-item>
<!--<ion-label>{{i+1}}</ion-label>-->
<ion-label>
<h2 h2 style="font-size: 18px !important;">{{item.get('company_name').value | titlecase}}</h2>
<p style="font-size: 14px;"> <span *ngIf="item.get('business_entity_type').value != 1">{{item.get('business_entity_type_name').value}}</span><span
*ngIf="item.get('business_entity_type').value == 1">{{item.get('business_entity_type_other').value+"-Others"}}</span></p>
<p style="font-size: 14px;">
<ion-icon name="md-calendar"></ion-icon>&nbsp; <span *ngIf="item.get('business_years').value != '' && item.get('business_years').value != 0">{{item.get('business_years').value}}
Years</span> <span *ngIf="item.get('business_month').value != ''&& item.get('business_month').value != 0">{{item.get('business_month').value}}
Months</span>
</p>
</ion-label>
<!-- <ion-toggle item-end class="applicant_t" formControlName="is_company_applicant"></ion-toggle>
<button align="end" ion-button clear item-end small color="optblue" (click)="removeList(i,2)"><ion-icon name="close"></ion-icon></button> -->
<!-- <span float-right ion-button small color="optblue" clear (click)="removeList(i,2)"><ion-icon name="close"></ion-icon></span>-->
<button ion-button align="end" item-end small clear (click)="editCompanies(i)">
<ion-icon name="md-create"></ion-icon>
</button>
</ion-item>
<ion-item-options slide="right">
<ion-list>
<ion-row>
<ion-col color="primary">
<p style="font-size: 11px !important;text-align: center">Company Applicant</p>
<ion-checkbox color="dark" formControlName="is_company_applicant"></ion-checkbox>
</ion-col>
</ion-row>
</ion-list>
<button ion-button color="danger" (click)="removeList(i,2)">
<ion-icon name="trash"></ion-icon>
</button>
</ion-item-options>
</ion-item-sliding>
</ion-list>
</div>
<!--Company Value add Field-->
<mat-card-content>
<ion-row>
<ion-col end>
<div class="btn1">
<button *ngIf="!h_companies" float-right ion-button large color="optblue" icon-left clear (click)="addRec(2)">
<ion-icon name="add"></ion-icon>
</button>
<button *ngIf="h_companies" float-right ion-button large color="optblue" icon-left clear (click)="addRec(2)">Close
&nbsp;&nbsp;<ion-icon name="md-close"></ion-icon></button>
</div>
</ion-col>
</ion-row>
<div *ngIf="h_companies">
<mat-card-header>
<mat-card-title> Add Company/Firm</mat-card-title>
</mat-card-header>
<div formArrayName="companies" #comp>
<div *ngFor="let cmp of generalForm.controls.companies['controls']; let i=index" [formGroupName]="i">
<mat-form-field style="width:100%">
<mat-label color="primary" stacked>Company / Firm</mat-label>
<input matInput type="text" formControlName="company_name" required>
<mat-error style="color:red;font-size:12px;margin:0;padding:0;font-weight: normal;float:right" *ngIf="cmp.controls['company_name'].errors?.required || cmp.controls['company_name'].touched">Company
Name is Required</mat-error>
</mat-form-field>
<mat-checkbox class="table-checkbox-com" color="primary" formControlName="is_company_applicant">Is
Applicant</mat-checkbox><br />
<br />
<mat-form-field style="width:100%">
<mat-select placeholder="Business Entity Type" formControlName="business_entity_type" required>
<mat-option>Select</mat-option>
<mat-option *ngFor="let business of businessEntityTypeList" [value]="business.business_entity_type_id">
{{business.business_entity_type_name}}
</mat-option>
</mat-select>
<mat-error style="color:red;font-size:12px;margin:0;padding:0;font-weight: normal;float:right" *ngIf="cmp.controls['business_entity_type'].errors?.required || cmp.controls['business_entity_type'].touched">Business
Entity Required</mat-error>
</mat-form-field>
<mat-form-field style="width:100%" *ngIf="cmp.value.business_entity_type==1">
<input matInput type="text" placeholder="Please Specity Others" formControlName="business_entity_type_other">
</mat-form-field>
<p>Number of Years For Which The Business Has Been Running</p>
<mat-form-field style="width:100%">
<input matInput type="number" placeholder="Year" formControlName="business_years" autocomplete="off">
</mat-form-field>
<mat-form-field style="width:100%">
<input matInput type="number" placeholder="Month" formControlName="business_month" autocomplete="off"
(change)="ConvertMonthintoYearforBusiness($event.target.value,i,1)">
</mat-form-field>
<mat-form-field style="width:100%">
<input matInput [max]="maxDate" type="date" [matDatepicker]="picker" placeholder="Enter Date of Formation, If Available"
placeholder="Enter Date of Formation, If Available" formControlName="business_date_object"
(dateChange)="getDateObjects($event.target.value,i)">
</mat-form-field>
<ion-row>
<ion-col end>
<button *ngIf="addComp" ion-button float-right color="optblue" (click)="delete(2)">Add</button>
<button *ngIf="!addComp" float-right ion-button color="optblue" (click)="update(2)">Update</button>
</ion-col>
</ion-row>
</div>
</div>
</div>
</mat-card-content>
</mat-card>
<!-- companies end -->
<!-- {{generalForm.controls.persons_with_relationships.length}} -->
<!-- Person Relationship Starts Here -->
<div *ngIf="generalForm.controls.persons_with_relationships.length > 1">
<mat-card formArrayName="persons_with_relationships" class="rbi">
<mat-card-header>
<mat-card-title style="font-size:16px;font-weight:bold"> Relationship Between Individuals</mat-card-title>
</mat-card-header>
<div *ngFor="let relation of generalForm.controls.persons_with_relationships['controls']; let i=index"
[formGroupName]="i">
<mat-card-content>
<h6>Applicant {{i+1}}</h6>
<h6>Applicant {{i+1}}</h6>
<mat-form-field style="width:100%">
<mat-select formControlName="applicant_name" placeholder="Applicant">
<mat-option>Select</mat-option>
<mat-option *ngFor="let name of fulldata" [value]="name.applicant_name">{{name.applicant_name | titlecase}}</mat-option>
<mat-option>Select</mat-option>
<mat-option *ngFor="let name of fulldata" [value]="name.applicant_name">{{name.applicant_name |
titlecase}}</mat-option>
</mat-select>
</mat-form-field>
<mat-form-field style="width:100%">
<mat-select formControlName="relationship" placeholder="Relation">
<mat-option>Select</mat-option>
<mat-option [value]="member.relationship_id" *ngFor="let member of relationShipList">{{member.name + ' Of' | titlecase}}</mat-option>
</mat-select>
</mat-form-field>
<mat-form-field style="width:100%" >
<mat-select placeholder="RelationTo" formControlName="relation_to">
<mat-select formControlName="relationship" placeholder="Relation">
<mat-option>Select</mat-option>
<mat-option [value]="rel.pd_co_applicant_id" *ngFor="let rel of individualsList ">{{rel.applicant_name | titlecase}}</mat-option>
<mat-option value="0">Not Applicable</mat-option>
</mat-select>
</mat-form-field>
</mat-card-content>
</div>
</mat-card>
</div>
<mat-card *ngIf="customer_segment_abbr != 'SE-RI'">
<div formArrayName="company_with_relationships">
<mat-card-header>
<mat-card-title style="font-size:16px;font-weight:bold"> Relationship of Individuals to Company / Firm</mat-card-title>
</mat-card-header>
<div *ngFor="let cmprel of generalForm.controls.company_with_relationships['controls']; let i=index" [formGroupName]="i">
<h6>Applicant {{i+1}}</h6>
<mat-form-field style="width:100%">
<mat-select formControlName="applicant_name" placeholder="Applicant Name">
<mat-option>Select</mat-option>
<mat-option *ngFor="let name of individualsListBothCase" [value]="name.pd_co_applicant_id">{{name.applicant_name | titlecase}}</mat-option>
</mat-select>
</mat-form-field>
<mat-form-field style="width:100%">
<mat-select formControlName="company_relationship" placeholder="Company Relation">
<mat-option>Select</mat-option>
<mat-option *ngFor="let comrelShip of companyRelationShipList" [value]="comrelShip.company_relationship_id">
{{comrelShip.name | titlecase}}
</mat-option>
</mat-select>
</mat-form-field>
<mat-form-field style="width:100%">
<mat-select formControlName="relation_to_company" placeholder="Relation to">
<mat-option>Select</mat-option>
<mat-option *ngFor="let comp of companyList" [value]="comp.company_order_id">{{comp.company_name | titlecase}}</mat-option>
<mat-option [value]="member.relationship_id" *ngFor="let member of relationShipList">{{member.name + '
Of' | titlecase}}</mat-option>
<mat-option value="0"> Not Applicable </mat-option>
</mat-select>
</mat-form-field>
<span float-right ion-button small color="optblue" clear (click)="removeList(i,'companyrel')"><ion-icon style="font-size: 24px" name="md-trash"></ion-icon></span>
</div>
<br/><br/>
<ion-row>
<ion-col end>
<button mat-raised-button style="background-color:#e00201 !important;color:white" (click)="initCompanyRelationShip('')">Add More Company Relation</button>
</ion-col>
</ion-row>
<mat-form-field style="width:100%">
<mat-select placeholder="RelationTo" formControlName="relation_to">
<mat-option>Select</mat-option>
<mat-option [value]="rel.pd_co_applicant_id" *ngFor="let rel of individualsList ">{{rel.applicant_name
| titlecase}}</mat-option>
<mat-option value="0"> Not Applicable </mat-option>
</mat-select>
</mat-form-field>
</mat-card-content>
</div>
</mat-card>
</div>
<mat-card *ngIf="customer_segment_abbr != 'SE-RI'">
<div formArrayName="company_with_relationships">
<mat-card-header>
<mat-card-title style="font-size:16px;font-weight:bold"> Relationship of Individuals to Company / Firm</mat-card-title>
</mat-card-header>
<div *ngFor="let cmprel of generalForm.controls.company_with_relationships['controls']; let i=index"
[formGroupName]="i">
<h6>Applicant {{i+1}}</h6>
<mat-form-field style="width:100%">
<mat-select formControlName="applicant_name" placeholder="Applicant Name">
<mat-option>Select</mat-option>
<mat-option *ngFor="let name of individualsListBothCase" [value]="name.pd_co_applicant_id">{{name.applicant_name
| titlecase}}</mat-option>
</mat-select>
</mat-form-field>
<mat-form-field style="width:100%">
<mat-select formControlName="company_relationship" placeholder="Company Relation">
<mat-option>Select</mat-option>
<mat-option *ngFor="let comrelShip of companyRelationShipList" [value]="comrelShip.company_relationship_id">
{{comrelShip.name | titlecase}}
</mat-option>
<mat-option value="0"> Not Applicable </mat-option>
</mat-select>
</mat-form-field>
<mat-form-field style="width:100%">
<mat-select formControlName="relation_to_company" placeholder="Relation to">
<mat-option>Select</mat-option>
<mat-option *ngFor="let comp of companyList" [value]="comp.company_order_id">{{comp.company_name |
titlecase}}</mat-option>
<mat-option value="0"> Not Applicable </mat-option>
</mat-select>
</mat-form-field>
<span float-right ion-button small color="optblue" clear (click)="removeList(i,'companyrel')">
<ion-icon style="font-size: 24px" name="md-trash"></ion-icon>
</span>
</div>
<br /><br />
<ion-row>
<ion-col style="text-align: center;">
<button mat-raised-button style="background-color:#e00201 !important;color:white" (click)="initCompanyRelationShip('')">Add
More Company Relation</button>
</ion-col>
</ion-row>
</div>
</mat-card>
<mat-card>
<mat-form-field style="width:100%">
<textarea #remark focus="true" matInput placeholder="Remarks" formControlName="general_remark" name="general_remark"></textarea>
</mat-form-field>
</mat-card>
<ion-row>
</mat-form-field>
</mat-card>
<ion-row>
<!-- <ion-buttons >
<ion-button color="optblue" full[disabled]="!pdforms.valid" mat-raised-button style="width:100%" (click)="savepdDetails(pdforms.value)">Save <ion-icon name="md-disc"></ion-icon></ion-button> -->
<!-- </ion-buttons> -->
</ion-row>
</form>
<!-- </ion-buttons> -->
<!--Old Data
</ion-row>
</form>
<!--Old Data
<mat-card>
<div formArrayName="applicant_relation">
<div *ngFor="let relation of generalForm.controls.applicant_relation['controls']; let r = index;" [formGroupName]="r">
@ -420,7 +414,8 @@
</div>
</div>
</mat-card>-->
</ion-content>
<ion-footer>
<button ion-button full color="optblue" (click)="submitData(generalForm.value)"> Save</button>
</ion-footer>
</ion-content>
<ion-footer>
<button ion-button full color="optblue" (click)="submitData(generalForm.value)"> Save</button>
</ion-footer>

View File

@ -76,6 +76,7 @@ export class PdQuestionLoansPage {
this.FormId = this.navParams.get('FormId');
this.pdDetails = this.navParams.get('pdDetails');
this.applicants = this.pdDetails.applicat_details
this.applicants = this.applicants.filter(appt => appt.applicant_type != 2);
this.productAbbr = this.pdDetails.product_abbr;
this.users = this.aws.getlocale();
this.pdid=this.pdDetails.pd_id;

View File

@ -1,182 +1,735 @@
<ion-header>
<ion-navbar color="optblue">
<button ion-button menuToggle>
<ion-icon name="menu"></ion-icon>
</button>
<ion-title *ngIf="!viewchange">{{FormId.form_name}}</ion-title>
</ion-navbar>
</ion-header>
<ion-content padding>
<form [formGroup]="rentalForms">
<mat-card>
<mat-form-field style="width: 100%;">
<input matInput type="text" placeholder="Person Met" formControlName="person_met" name="complete_add">
</mat-form-field>
<mat-form-field style="width: 100%;">
<mat-select placeholder="Property Owner" formControlName="property_own">
<mat-option value="applicant">Applicant</mat-option>
<mat-option value="co-applicant">Co-Applicant</mat-option>
<mat-option value="parental">Parental</mat-option>
<mat-card-header>
<mat-card-title>Property Details</mat-card-title>
</mat-card-header>
</mat-select>
</mat-form-field>
<mat-form-field style="width: 100%;">
<mat-select placeholder="Nature of the let out property" formControlName="nature_property">
<mat-option value="residential/commercial">Residential/commercial</mat-option>
<mat-option value="others">Others</mat-option>
</mat-select>
</mat-form-field>
<mat-form-field style="width: 100%;" *ngIf="rentalForms.get('nature_property').value=='others'">
<input matInput placeholder="Nature property other" formControlName="nature_others">
</mat-form-field>
<mat-card-content>
<div fxLayout="row wrap">
<!-- start address -->
<mat-form-field style="width:100%">
<textarea matInput rows="4" placeholder="Address of the Property" formControlName="address_property"
required></textarea>
</mat-form-field>
<!--start name of the who showing property to officer -->
<mat-form-field style="width:31%">
<mat-select placeholder="State" formControlName="state" required>
<mat-option *ngFor="let stVal of stateList" [value]="stVal.state_id">
{{stVal.name}}
</mat-option>
</mat-select>
</mat-form-field>
&nbsp;&nbsp;
<mat-form-field style="width:31%">
<mat-label>City</mat-label>
<mat-select placeholder="City" formControlName="city" required>
<mat-option *ngFor="let ctVal of cityList" [value]="ctVal.city_id">
{{ctVal.city_name}}
</mat-option>
</mat-select>
</mat-form-field>
&nbsp;&nbsp;
<mat-form-field style="width:31%">
<mat-label>Pincode</mat-label>
<mat-select placeholder="" formControlName="pincode" required>
<mat-option *ngFor="let pinVal of pincodeList" [value]="pinVal.pincode_id">
{{pinVal.pincode}}
</mat-option>
</mat-select>
</mat-form-field>
<div align="left" style="margin-left: 0%;">
<mat-checkbox color="primary" formControlName="validate_visited_address">Is This the Address Visited ?
<strong>( {{rentalForms.value.validate_visited_address===true ? 'Yes' : 'No'}} )</strong></mat-checkbox>
</div>
<mat-form-field style="width:90%;margin-top: 2%;" *ngIf="rentalForms.controls['other_visited_address']">
<mat-label>Actual Address Visited</mat-label>
<textarea matInput rows="2" placeholder="" formControlName="other_visited_address" required></textarea>
</mat-form-field>
<!-- end -->
</div>
<div fxLayout="row wrap">
<!--start name of the who showing property to officer -->
<mat-form-field style="width:100%">
<mat-label>Name of the Person Who is Showing the Property to Sineedge Officer</mat-label>
<mat-select placeholder="Name" formControlName="person_met" [compareWith]="compareObjects" multiple
required>
<mat-optgroup *ngFor="let group of mergeCompanyApplicant" [label]="group.groupName">
<mat-option *ngFor="let val of group.groupValues" [value]="val">
{{val.name}}
</mat-option>
</mat-optgroup>
</mat-select>
</mat-form-field>
<mat-form-field style="width:100%" *ngIf="rentalForms.controls['other_person_met']">
<mat-label>Specify Other Person</mat-label>
<input matInput autocomplete="off" placeholder="" formControlName="other_person_met" required>
</mat-form-field>
<mat-form-field style="width:100%" *ngIf="rentalForms.controls['other_name_person_showing_property'] && rentalForms.value.other_person_met!=''">
<mat-label>Who is {{rentalForms.controls['other_person_met'].value}} ?</mat-label>
<mat-select placeholder="" formControlName="other_name_person_showing_property" [compareWith]="compareSingleObjects"
(selectionChange)="personShowingChanges(rentalForms.controls['other_name_person_showing_property'].value)"
multiple required>
<mat-option *ngFor="let pType of personType" [value]="pType">
{{pType.name}}
</mat-option>
</mat-select>
</mat-form-field>
<mat-form-field style="width:100%" *ngIf="rentalForms.controls['other_name_person_type'] && rentalForms.value.other_person_met!=''">
<mat-label>Who is {{rentalForms.controls['other_person_met'].value}} ?</mat-label>
<input matInput autocomplete="off" placeholder="" formControlName="other_name_person_type" required>
</mat-form-field>
<!-- end -->
<!-- start owner of the property -->
<mat-form-field style="width:100%">
<mat-label>Name of the Owner/Owners of the Let out Property as per Loan Applicants</mat-label>
<mat-select placeholder="Name" formControlName="property_owner" [compareWith]="compareObjects" multiple
required>
<mat-optgroup *ngFor="let group of mergeCompanyApplicant" [label]="group.groupName">
<mat-option *ngFor="let val of group.groupValues" [value]="val">
{{val.name}}
</mat-option>
</mat-optgroup>
</mat-select>
</mat-form-field>
<mat-form-field style="width:100%" *ngIf="rentalForms.controls['property_owner_other']">
<mat-label>Specify Other Owner/Owners</mat-label>
<input matInput autocomplete="off" placeholder="" formControlName="property_owner_other" required>
</mat-form-field>
<mat-form-field style="width:100%" *ngIf="rentalForms.controls['property_owner_other_relationship']">
<mat-label>Relation of Owner to Loan Applicant</mat-label>
<mat-select placeholder="" formControlName="property_owner_other_relationship" [compareWith]="compareObjects"
required>
<mat-optgroup *ngFor="let rGroup of relationShipList" [label]="rGroup.groupName">
<!-- <mat-option>Select</mat-option> -->
<mat-option [value]="relation" *ngFor="let relation of rGroup.groupValues">{{relation.name |
titlecase}}</mat-option>
</mat-optgroup>
</mat-select>
</mat-form-field>
<mat-form-field style="width:100%" *ngIf="rentalForms.controls['property_owner_other_relation_to']">
<mat-label>Relation To</mat-label>
<mat-select placeholder="" formControlName="property_owner_other_relation_to" [compareWith]="compareObjects"
required>
<mat-optgroup *ngFor="let rtGroup of mergeCompanyApplicant" [label]="rtGroup.groupName">
<mat-option [value]="relationto" *ngFor="let relationto of rtGroup.groupValues">{{relationto.id=="0" ?
'Not Applicable' : relationto.name | titlecase}}</mat-option>
</mat-optgroup>
</mat-select>
</mat-form-field>
<!-- end -->
<!-- start proof documents -->
<mat-form-field style="width:100%">
<mat-label>Ownership Proof Documents Sighted</mat-label>
<mat-select placeholder="" formControlName="property_ownership_proof_documents" required>
<mat-option value="1">Yes</mat-option>
<mat-option value="0">No</mat-option>
</mat-select>
</mat-form-field>
<mat-form-field style="width:100%" *ngIf="rentalForms.controls['sighted_documents']">
<mat-label>Type of Document Sighted</mat-label>
<mat-select placeholder="" formControlName="sighted_documents" [compareWith]="compareSingleObjects"
(selectionChange)="getSightedDocs(rentalForms.controls['sighted_documents'].value)" required>
<mat-option [value]="prDocs" *ngFor="let prDocs of documentList">{{prDocs.name | titlecase}}</mat-option>
</mat-select>
</mat-form-field>
<mat-form-field style="width:100%" *ngIf="rentalForms.controls['other_sighted_documents']">
<mat-label>Other Type of Document</mat-label>
<input matInput placeholder="" formControlName="other_sighted_documents" required>
</mat-form-field>
<!-- end -->
<!-- start nature of ther property -->
<mat-form-field style="width:100%">
<mat-label>Nature of Let Out Property as per Loan Applicant</mat-label>
<mat-select placeholder="" formControlName="nature_property" [compareWith]="compareSingleObjects" required>
<mat-option *ngFor="let property of propertyNature" [value]="property">
{{property.name}}
</mat-option>
</mat-select>
</mat-form-field>
<mat-form-field style="width:100%" *ngIf="rentalForms.controls['other_nature_property']">
<mat-label>Other Property</mat-label>
<input matInput autocomplete="off" placeholder="" formControlName="other_nature_property" required>
</mat-form-field>
<!-- end -->
<!-- start type of units -->
<mat-form-field style="width:100%">
<mat-label>Type of Units as per Loan Applicants</mat-label>
<mat-select placeholder="" formControlName="unit_type" [compareWith]="compareObjects" required>
<mat-optgroup *ngFor="let ugroup of unitTypeList" [label]="ugroup.groupName" [disabled]="rentalForms.value.nature_property.id>1 && rentalForms.value.nature_property.id!=ugroup.groupID">
<mat-option *ngFor="let unit of ugroup.groupValues" [value]="unit">
{{unit.name}}
</mat-option>
</mat-optgroup>
</mat-select>
</mat-form-field>
<mat-form-field style="width:100%" *ngIf="rentalForms.controls['other_unit_type']">
<mat-label>Specify Other Unit Type</mat-label>
<input matInput autocomplete="off" placeholder="" formControlName="other_unit_type" required>
</mat-form-field>
<mat-form-field style="width:100%;" *ngIf="rentalForms.controls['no_units']">
<mat-label>Tot No of Units</mat-label>
<input OnlyNumber matInput autocomplete="off" placeholder="" formControlName="no_units" maxlength="3">
</mat-form-field>
<mat-form-field style="width:100%" *ngIf="rentalForms.controls['no_floor']">
<mat-label>No of Floors</mat-label>
<input matInput OnlyNumber autocomplete="off" placeholder="" formControlName="no_floor" maxlength="2">
</mat-form-field>
<mat-form-field style="width:100%;" *ngIf="rentalForms.controls['multistoried_total_area']">
<mat-label>Total Area Given on Rent</mat-label>
<input matInput OnlyNumber autocomplete="off" placeholder="" formControlName="multistoried_total_area" required><!--maxlength="3"-->
</mat-form-field>
<!-- end -->
<!-- start unit of measurement -->
<mat-form-field style="width:100%;" *ngIf="rentalForms.controls['multistoried_uom']">
<mat-label>Unit of Measurement</mat-label>
<mat-select placeholder=""
formControlName="multistoried_uom" [compareWith]="compareSingleObjects" (selectionChange)="generateMultistoriedOtherUOM(rentalForms.value)" required>
<mat-option *ngFor="let unitM of unitMeasurementList" [value]="unitM">
{{unitM.name}}
</mat-option>
</mat-select>
</mat-form-field>
<mat-form-field style="width:100%;" *ngIf="rentalForms.controls['multistoried_other_uom']">
<mat-label>Other Unit of Measurement</mat-label>
<input matInput autocomplete="off" placeholder="" formControlName="multistoried_other_uom" required>
</mat-form-field>
<!-- end Uom -->
</div>
</mat-card-content>
</mat-card>
<div formArrayName="rental_home">
<div *ngFor="let item of rentalForms.get('rental_home').controls; let rent_i = index;let last = last" [formGroupName]="rent_i">
<mat-card>
<mat-card-header>Rentel Home Details {{rent_i+1}}</mat-card-header>
<mat-form-field style="width: 100%;">
<textarea matInput type="text" placeholder="Complete address of the property" formControlName="complete_add" name="complete_add"></textarea>
</mat-form-field>
<mat-form-field style="width: 100%;">
<input matInput type="text" placeholder="Area of the Property
(in sq yd or Sq ft)" formControlName="area_of_property" name="area_of_property">
</mat-form-field>
<!-- this is for multistoried floor details -->
<ng-container formArrayName="multistoried_building_details" *ngIf="rentalForms.value.multistoried_building_details.length>0">
<mat-card *ngFor="let floor of rentalForms.controls.multistoried_building_details['controls']; let f=index;let flast = last" [formGroupName]="f">
<mat-card-header>
<mat-form-field style="width:100%; margin-top: 2%;">
<mat-label>Floor Level Name</mat-label>
<input matInput autocomplete="off" placeholder="" formControlName="floor_level" required>
</mat-form-field>
</mat-card-header>
<mat-card-content>
<mat-form-field style="width:100%;">
<mat-label>No of Units</mat-label>
<input OnlyNumber matInput autocomplete="off" placeholder="" formControlName="no_units_in_floor" (keyup)="generateFloorUnit(floor.value,f)" required>
</mat-form-field>
<mat-form-field style="width:100%;">
<mat-label>Is Rent Same for All Units</mat-label>
<mat-select placeholder="" formControlName="unit_rent_difference_options" (selectionChange)="generateFloorUnit(floor.value,f)" required>
<mat-option value="1">Yes</mat-option>
<mat-option value="0">No</mat-option>
</mat-select>
</mat-form-field>
<!-- start floor unit array details -->
<!-- -->
<div [ngSwitch]="floor.value.unit_rent_difference_options">
<!-- this is for same rent for all unit -->
<ng-container *ngSwitchCase="1">
<div formArrayName="floor_unit_details" *ngIf="floor.value.floor_unit_details.length>0">
<div fxLayout="row wrap" class="align-margin" *ngFor="let fUnits of floor.controls.floor_unit_details['controls']; let fu=index;" [formGroupName]="fu">
<mat-form-field style="width:100%;">
<mat-label>Rent per Unit</mat-label>
<input OnlyNumber matInput autocomplete="off" placeholder="" formControlName="rent_per_unit" (keyup)="calculateFloorRentAmt(floor.value,f)" required (keyup)="inWords($event.target.value,fu,1)">
<mat-hint align="end" style="font-size:12px" *ngIf="fUnits.value.rent_per_unit != ''">{{"&#8377;"}} {{rent_per_unit_Inwords[f]}} Only</mat-hint>
</mat-form-field>
<mat-form-field style="width:100%;">
<mat-label>Amount</mat-label>
<input OnlyNumber matInput autocomplete="off" placeholder="" formControlName="amount" readonly (keyup)="inWords($event.target.value,fu,2)">
<mat-hint align="end" style="font-size:12px" *ngIf="fUnits.value.amount != ''">{{"&#8377;"}} {{amount_Inwords[f] }} Only</mat-hint>
</mat-form-field>
</div>
</div>
</ng-container>
<!-- this is for different rent for all unit -->
<ng-container *ngSwitchCase="0">
<div fxLayout="row wrap" class="align-margin" formArrayName="floor_unit_details" *ngIf="floor.value.floor_unit_details.length>0">
<div class="rent-unit" fxFlex.xs="100" fxFlex.sm="45" fxFlex.md="45" fxFlex.lg="45" fxFlex.xl="45" *ngFor="let fUnits of floor.controls.floor_unit_details['controls']; let fu=index;" [formGroupName]="fu">
<mat-form-field style="width:100%" appearance="outline">
<mat-label>Rent Unit {{fu1}} </mat-label>
<input OnlyNumber matInput autocomplete="off" placeholder="" formControlName="rent_per_unit" (keyup)="calculateFloorRentAmt(floor.value,f)" required (keyup)="inWords($event.target.value,fu,3)">
<!-- <mat-hint align="end" style="font-size:12px" *ngIf="fUnits.value.rent_per_unit != ''">{{"&#8377;"}} {{rent_per_unit_2_Inwords[f]}} Only</mat-hint> -->
</mat-form-field>
</div>
</div>
</ng-container>
</div>
<!-- end floor unit array details-->
</mat-card-content>
<mat-card-actions *ngIf="floor.value.unit_rent_difference_options==0">
<div fxFlex="100" class="total-rent-amt">
<mat-form-field style="width:96%" appearance="outline">
<mat-label>Total Rent Amount</mat-label>
<input OnlyNumber matInput autocomplete="off" placeholder="" formControlName="floor_rent_amount" readonly>
<!-- <mat-hint align="end" style="font-size:12px" *ngIf="floor.value.floor_rent_amount != ''">{{"&#8377;"}} {{floor_rent_amount_Inwords[f]}} Only</mat-hint> -->
</mat-form-field>
</div>
</mat-card-actions>
</mat-card>
</ng-container>
<!-- end floor details -->
<!-- this is for property unit details-->
<mat-form-field style="width: 100%;">
<input matInput type="text" placeholder="Structure of the let out property" formControlName="structure_property" name="structure_property">
</mat-form-field>
<ng-container formArrayName="property_unit_details" *ngIf="rentalForms.value.property_unit_details.length>0">
<mat-card *ngFor="let units of rentalForms.controls.property_unit_details['controls']; let u=index;let ulast = last"
[formGroupName]="u">
<mat-card-header>
<mat-card-title>
Unit {{u1}}
</mat-card-title>
</mat-card-header>
<mat-card-content>
<div fxLayout="row wrap">
<!-- start tenant/lessees -->
<mat-form-field style="width:100%">
<mat-label>Name of the Tenant(s)/Lessees(s) of the Let out Property</mat-label>
<mat-select placeholder="" formControlName="tenant_lessees_options" (selectionChange)="generateTenantOptions(units.value,u)"
required>
<mat-option value="1">Yes</mat-option>
<mat-option value="0">Name(s) not provided</mat-option>
</mat-select>
</mat-form-field>
<mat-form-field style="width:100%" *ngIf="units.controls['name_tenant_lessees']">
<mat-label>Name of Tenant(s)/Lessees(s)</mat-label>
<input matInput autocomplete="off" placeholder="" formControlName="name_tenant_lessees" required>
</mat-form-field>
<mat-form-field style="width:100%" *ngIf="units.controls['name_tenant_lessees_reason']">
<mat-label>Why Tenant(s)/Lessees(s) Name not Provided</mat-label>
<input matInput autocomplete="off" placeholder="" formControlName="name_tenant_lessees_reason" required>
</mat-form-field>
<!-- end tenant/lessees-->
<!--start payment -->
<mat-form-field style="width:100%">
<mat-label>Monthly Rent Amount as per Loan Applicant</mat-label>
<input matInput OnlyNumber autocomplete="off" placeholder="" formControlName="monthly_rent_amount"
required (keyup)="inWords($event.target.value,u,5)">
<!-- (keyup)="inWords($event,1)" -->
<!-- <mat-hint align="end" style="font-size:12px" *ngIf="units.value.monthly_rent_amount != ''">{{"&#8377;"}} {{monthly_rent_amount_Inwords[u]}} Only</mat-hint> -->
</mat-form-field>
<mat-form-field style="width:100%">
<mat-label>Mode of Payment of Rent as per Loan Applicant</mat-label>
<mat-select placeholder="" formControlName="payment_mode" [compareWith]="compareSingleObjects"
(selectionChange)="generatePaymentOptions(units.value,u,1)" required>
<mat-option *ngFor="let payment of paymentOptions" [value]="payment">
{{payment.name}}
</mat-option>
</mat-select>
</mat-form-field>
<mat-form-field style="width:100%;" *ngIf="units.controls['amount_received_cash']">
<mat-label>Amount Received in Cash</mat-label>
<input matInput OnlyNumber autocomplete="off" placeholder="" formControlName="amount_received_cash"
required (keyup)="inWords($event.target.value,u,6)">
<mat-form-field style="width: 100%;">
<input matInput type="text" placeholder="Total rooms let out" formControlName="total_room" name="total_room">
</mat-form-field>
<mat-hint align="end" style="font-size:12px" *ngIf="units.value.amount_received_cash != ''">{{"&#8377;"}} {{amount_received_cash_Inwords[u]}} Only</mat-hint>
</mat-form-field>
<mat-form-field style="width:100%;" *ngIf="units.controls['amount_received_bank']" (keyup)="inWords($event.target.value,u,7)">
<mat-label>Amount Received in Bank</mat-label>
<input matInput OnlyNumber autocomplete="off" placeholder="" formControlName="amount_received_bank"
required>
<mat-hint align="end" style="font-size:12px" *ngIf="units.value.amount_received_bank != ''">{{"&#8377;"}} {{amount_received_bank_Inwords[u]}} Only</mat-hint>
</mat-form-field>
<mat-form-field style="width:100%;" *ngIf="units.controls['payment_received_reason']">
<mat-label>Reason for Receiving Multiple Payment Mode</mat-label>
<textarea matInput placeholder="" formControlName="payment_received_reason" required></textarea>
</mat-form-field>
<mat-form-field style="width:100%">
<mat-label>Securtity Deposit amount as per Loan Applicant</mat-label>
<input matInput OnlyNumber autocomplete="off" placeholder="" formControlName="securtity_deposit_amount"
required (keyup)="inWords($event.target.value,u,8)">
<mat-hint align="end" style="font-size:12px" *ngIf="units.value.securtity_deposit_amount != ''">{{"&#8377;"}} {{securtity_deposit_amount_Inwords[u]}} Only</mat-hint>
</mat-form-field>
<!-- end -->
<!-- start area covered by the property -->
<mat-form-field style="width:100%;">
<mat-label>Area Covered by the Unit</mat-label>
<input matInput OnlyNumber autocomplete="off" placeholder="" formControlName="property_cover_area"
required>
<!--maxlength="3"-->
</mat-form-field>
<!-- end area covered -->
<mat-list>
<p>Is Rent agreement available</p>
<mat-radio-group formControlName="is_rent" name="is_rent">
<mat-radio-button value="yes">Yes</mat-radio-button>
<mat-radio-button value="no">No</mat-radio-button>
</mat-radio-group>
</mat-list>
<div *ngIf="item.get('is_rent').value=='yes'">
<mat-form-field style="width: 100%;">
<input matInput type="date" placeholder="Date of Agreement" formControlName="date_agreement" name="date_agreement">
</mat-form-field>
<!-- start unit of measurement -->
<mat-form-field style="width:100%">
<mat-label>Unit of Measurement</mat-label>
<mat-select placeholder="" formControlName="unit_measurement" [compareWith]="compareSingleObjects"
(selectionChange)="generateOtherunitMeasurement(units.value,u)" required>
<mat-option *ngFor="let unitM of unitMeasurementList" [value]="unitM">
{{unitM.name}}
</mat-option>
</mat-select>
</mat-form-field>
<mat-form-field style="width: 100%;">
<input matInput type="text" placeholder="Validity" formControlName="date_validity" name="date_validity">
</mat-form-field>
<mat-form-field style="width: 100%;">
<input matInput type="number" placeholder="Rent as per Agreement" formControlName="rent_agreement" name="rent_agreement">
</mat-form-field>
<mat-form-field style="width: 100%;">
<input matInput type="number" placeholder="Actual Rent" formControlName="actual_rent" name="actual_rent">
</mat-form-field>
<mat-list>
<p>Photo of agreement taken ?</p>
<mat-radio-group formControlName="photo_areegment" name="photo_areegment">
<mat-radio-button value="yes">Yes</mat-radio-button>
<mat-radio-button value="no">No</mat-radio-button>
</mat-radio-group>
</mat-list>
<mat-form-field style="width:100%" *ngIf="units.controls['other_unit_measurement']">
<mat-label>Other Unit of Measurement</mat-label>
<input matInput autocomplete="off" placeholder="" formControlName="other_unit_measurement" required>
</mat-form-field>
<!-- end -->
<!-- start Rent Agreement executed -->
<mat-form-field style="width:100%">
<mat-label>Is Rent Agreement executed for the Property let out</mat-label>
<mat-select placeholder="" formControlName="is_rent_agreement_executed" (selectionChange)="generateRentAgreementSeen(units.value,u)"
required>
<mat-option value="1">Yes</mat-option>
<mat-option value="0">No</mat-option>
</mat-select>
</mat-form-field>
<!-- end -->
<!-- start rent agreement -->
<mat-form-field style="width:100%" *ngIf="units.controls['rent_agreement_seen']">
<mat-label>Rent Agreement Seen</mat-label>
<mat-select placeholder="" formControlName="rent_agreement_seen" (selectionChange)="generateRegisterOptions(units.value,u)"
required>
<mat-option value="1">Yes</mat-option>
<mat-option value="0">No</mat-option>
</mat-select>
</mat-form-field>
<!-- end -->
<!-- start Rent Agreement Registered -->
<mat-form-field style="width:100%" *ngIf="units.controls['rent_agreement_registered']">
<mat-label>Is the Rent Agreement Registered at Sub-Registrar Office</mat-label>
<mat-select placeholder="" formControlName="rent_agreement_registered" (selectionChange)="generateRegisterDetails(units.value,u)"
required>
<mat-option value="1">Yes</mat-option>
<mat-option value="0">No</mat-option>
</mat-select>
</mat-form-field>
<!-- end -->
<!-- start rent agreement date details -->
<mat-form-field style="width:100%" *ngIf="units.controls['agreement_date']">
<mat-label>Date of Agreement</mat-label>
<!-- <input matInput [max]="maxDate" [matDatepicker]="agreementpicker" formControlName="agreement_date"
placeholder="" (dateChange)="calculateExpiryDate($event,u)" readonly>
<mat-datepicker-toggle matSuffix [for]="agreementpicker" disabled="false"></mat-datepicker-toggle>
<mat-datepicker #agreementpicker></mat-datepicker> -->
<input matInput type="date" [max]="maxDate" formControlName="agreement_date" name="agreement_date" placeholder="" (dateChange)="calculateExpiryDate($event,u)">
</mat-form-field>
<mat-form-field style="width:100%" *ngIf="units.controls['agreement_no_months']">
<mat-label>No of Months for Which Property has been let out as per Agreement</mat-label>
<input matInput OnlyNumber autocomplete="off" placeholder="" maxlength="4" formControlName="agreement_no_months"
(keyup)="calculateExpiryDate($event,u)" required>
</mat-form-field>
<mat-form-field style="width:100%" *ngIf="units.controls['agreement_expiring_date']">
<mat-label>Date on which Agreement is Expiring</mat-label>
<input matInput autocomplete="off" placeholder="" formControlName="agreement_expiring_date" readonly>
</mat-form-field>
<mat-form-field style="width:100%" *ngIf="units.controls['rental_remaining_months']">
<mat-label>No of Rental Months Remaining as per Agreement</mat-label>
<input matInput OnlyNumber autocomplete="off" placeholder="" formControlName="rental_remaining_months"
readonly>
</mat-form-field>
<!-- end -->
<!-- start agreement rent amount -->
<mat-form-field style="width:100%" *ngIf="units.controls['agreement_monthly_rent_amount']">
<mat-label>Monthly Rent Amount as per Agreement</mat-label>
<input matInput OnlyNumber autocomplete="off" placeholder="" formControlName="agreement_monthly_rent_amount"
required (keyup)="inWords($event.target.value,u,9)">
<mat-hint align="end" style="font-size:12px" *ngIf="units.value.agreement_monthly_rent_amount != ''">{{"&#8377;"}} {{agreement_monthly_rent_amount_Inwords[u]}} Only</mat-hint>
</mat-form-field>
<!-- end -->
<!-- start Security Deposit amount as per agreement -->
<mat-form-field style="width:100%" *ngIf="units.controls['agreement_security_deposit_amount']">
<mat-label>Security Deposit Amount as per Agreement</mat-label>
<input matInput OnlyNumber autocomplete="off" placeholder="" formControlName="agreement_security_deposit_amount"
required (keyup)="inWords($event.target.value,u,10)">
<mat-hint align="end" style="font-size:12px" *ngIf="units.value.agreement_security_deposit_amount != ''">{{"&#8377;"}} {{agreement_security_deposit_amount_Inwords[u]}} Only</mat-hint>
</mat-form-field>
<!-- end -->
<!-- start validate agreement amount -->
<mat-form-field style="width:100%" *ngIf="units.controls['monthly_rent_amount'] && units.controls['agreement_monthly_rent_amount'] && validateAgreementAmt(units.controls['monthly_rent_amount'] ? units.value.monthly_rent_amount :'',units.controls['agreement_monthly_rent_amount'] ? units.value.agreement_monthly_rent_amount:'') !=0">
<mat-label>There is a Difference of
Rs.{{validateAgreementAmt(units.value.monthly_rent_amount,units.value.agreement_monthly_rent_amount)}}
in the rent amount as per agreement and actual rent received. Why?</mat-label>
<input matInput autocomplete="off" placeholder="" formControlName="differences_loanapplicant_rentagreement">
</mat-form-field>
<!-- end -->
<!-- start name of owners as per agreement -->
<mat-form-field style="width:100%" *ngIf="units.controls['agreement_property_owners_name']">
<mat-label>Name of Owner / Owners of Rented Property as per Rent Agreement</mat-label>
<mat-select placeholder="Name" formControlName="agreement_property_owners_name" [compareWith]="compareObjects"
multiple (selectionChange)="generateAgreementOtherOwners(units.value.agreement_property_owners_name,u)"
required>
<mat-optgroup *ngFor="let group of mergeCompanyApplicant" [label]="group.groupName">
<mat-option *ngFor="let val of group.groupValues" [value]="val">
{{val.name}}
</mat-option>
</mat-optgroup>
</mat-select>
</mat-form-field>
<mat-form-field style="width:100%" *ngIf="units.controls['agreement_property_owner_other']">
<mat-label>Specify Other Owner/Owners</mat-label>
<input matInput autocomplete="off" placeholder="" formControlName="agreement_property_owner_other"
required>
</mat-form-field>
<mat-form-field style="width:100%" *ngIf="units.controls['agreement_property_owner_other_relationship']">
<mat-label>Relation of Owner to Loan Applicant</mat-label>
<mat-select placeholder="" formControlName="agreement_property_owner_other_relationship" [compareWith]="compareObjects"
required>
<mat-optgroup *ngFor="let rGroup of relationShipList" [label]="rGroup.groupName">
<!-- <mat-option>Select</mat-option> -->
<mat-option [value]="relation" *ngFor="let relation of rGroup.groupValues">{{relation.name |
titlecase}}</mat-option>
</mat-optgroup>
</mat-select>
</mat-form-field>
<mat-form-field style="width:100%" *ngIf="units.controls['agreement_property_owner_other_relation_to']">
<mat-label>Relation To</mat-label>
<mat-select placeholder="" formControlName="agreement_property_owner_other_relation_to" [compareWith]="compareObjects"
required>
<mat-optgroup *ngFor="let rtGroup of mergeCompanyApplicant" [label]="rtGroup.groupName">
<mat-option [value]="relationto" *ngFor="let relationto of rtGroup.groupValues">{{relationto.id=="0"
? 'Not Applicable' : relationto.name | titlecase}}</mat-option>
</mat-optgroup>
</mat-select>
</mat-form-field>
<!-- end -->
<!-- start tenant agreeent name -->
<mat-form-field style="width:100%" *ngIf="units.controls['agreement_tenant_lessees_name']">
<mat-label>Name of Tenants / Lessees as per Rent Agreement</mat-label>
<textarea matInput rows="4" placeholder="" formControlName="agreement_tenant_lessees_name" required></textarea>
</mat-form-field>
<!-- end -->
<!-- end -->
<!-- start met tenant/lessees-->
<mat-form-field style="width:100%" *ngIf="units.controls['met_tenant_lessees_options']">
<mat-label>Tenant(s) / Lessee(s) Met During Visit of the Rented Property</mat-label>
<mat-select placeholder="" formControlName="met_tenant_lessees_options" (selectionChange)="generateTenantMetDetails(units.value,u)"
required>
<mat-option value="1">Yes</mat-option>
<mat-option value="0">No</mat-option>
</mat-select>
</mat-form-field>
<mat-form-field style="width:100%" *ngIf="units.controls['name_tenant_lessees_per_met']">
<mat-label>Name of the Tenant / Lessee Met</mat-label>
<!-- <mat-select placeholder="" formControlName="name_tenant_lessees_per_met" required>
<mat-option [value]="metTenant" *ngFor="let metTenant of units.value.name_tenant_lessees">{{metTenant.name}}</mat-option>
</mat-select> -->
<input matInput autocomplete="off" placeholder="" formControlName="name_tenant_lessees_per_met" required>
</mat-form-field>
<mat-form-field style="width:100%" *ngIf="units.controls['name_tenant_lessees_reason_per_met']">
<mat-label>Why Tenant / Lessee not Met ?</mat-label>
<input matInput autocomplete="off" placeholder="" formControlName="name_tenant_lessees_reason_per_met"
required>
</mat-form-field>
<!-- end -->
<!--start tenant met owners-->
<mat-form-field style="width:100%" *ngIf="units.controls['property_owner_per_met']">
<mat-label>Name of Owner as per Tenant / Lessee Met</mat-label>
<mat-select placeholder="Name" formControlName="property_owner_per_met" [compareWith]="compareObjects"
multiple (selectionChange)="generateMetOtherOwners(units.value,u)" required>
<mat-optgroup *ngFor="let group of mergeCompanyApplicant" [label]="group.groupName">
<mat-option *ngFor="let val of group.groupValues" [value]="val">
{{val.name}}
</mat-option>
</mat-optgroup>
</mat-select>
</mat-form-field>
<mat-form-field style="width:100%" *ngIf="units.controls['property_owner_other_per_met']">
<mat-label>Specify Other Owner/Owners</mat-label>
<input matInput autocomplete="off" placeholder="" formControlName="property_owner_other_per_met" required>
</mat-form-field>
<mat-form-field style="width:100%" *ngIf="units.controls['property_owner_other_relationship_per_met']">
<mat-label>Relation of Owner to Loan Applicant</mat-label>
<mat-select placeholder="" formControlName="property_owner_other_relationship_per_met" [compareWith]="compareObjects"
required>
<mat-optgroup *ngFor="let rGroup of relationShipList" [label]="rGroup.groupName">
<!-- <mat-option>Select</mat-option> -->
<mat-option [value]="relation" *ngFor="let relation of rGroup.groupValues">{{relation.name |
titlecase}}</mat-option>
</mat-optgroup>
</mat-select>
</mat-form-field>
<mat-form-field style="width:100%" *ngIf="units.controls['property_owner_other_relation_to_per_met']">
<mat-label>Relation To</mat-label>
<mat-select placeholder="" formControlName="property_owner_other_relation_to_per_met" [compareWith]="compareObjects"
required>
<mat-optgroup *ngFor="let rtGroup of mergeCompanyApplicant" [label]="rtGroup.groupName">
<mat-option [value]="relationto" *ngFor="let relationto of rtGroup.groupValues">{{relationto.id=="0"
? 'Not Applicable' : relationto.name | titlecase}}</mat-option>
</mat-optgroup>
</mat-select>
</mat-form-field>
<!-- end -->
<!-- start met payment -->
<mat-form-field style="width:100%" *ngIf="units.controls['paid_monthly_rent_per_met']">
<mat-label>Monthly Rent Amount Paid as per Tenant / Lessee Met</mat-label>
<input matInput OnlyNumber autocomplete="off" placeholder="" formControlName="paid_monthly_rent_per_met"
required (keyup)="inWords($event.target.value,u,11)">
<mat-hint align="end" style="font-size:12px" *ngIf="units.value.paid_monthly_rent_per_met != ''">{{"&#8377;"}} {{paid_monthly_rent_per_met_Inwords[u]}} Only</mat-hint>
</mat-form-field>
<mat-form-field style="width:100%" *ngIf="units.controls['period_of_stay_per_met']">
<mat-label>Period (Months) of Stay as per Tenant / Lessee Met</mat-label>
<input matInput OnlyNumber autocomplete="off" placeholder="" formControlName="period_of_stay_per_met"
maxlength="5" required>
</mat-form-field>
<mat-form-field style="width:100%" *ngIf="units.controls['payment_mode_per_met']">
<mat-label>Mode of Payment of Rent as Validated by PD Officer with Tenant / Lessee During Visit</mat-label>
<mat-select placeholder="" formControlName="payment_mode_per_met" [compareWith]="compareSingleObjects"
(selectionChange)="generatePaymentOptions(units.value,u,2)" required>
<mat-option *ngFor="let payment of paymentPaidOptions" [value]="payment">
{{payment.name}}
</mat-option>
</mat-select>
</mat-form-field>
<mat-form-field style="width:100%;" *ngIf="units.controls['amount_received_cash_per_met']">
<mat-label>Amount Paid in Cash</mat-label>
<input matInput OnlyNumber autocomplete="off" placeholder="" formControlName="amount_received_cash_per_met"
required (keyup)="inWords($event.target.value,u,12)">
<mat-hint align="end" style="font-size:12px" *ngIf="units.value.amount_received_cash_per_met != ''">{{"&#8377;"}} {{amount_received_cash_per_met_Inwords[u]}} Only</mat-hint>
</mat-form-field>
<mat-form-field style="width:100%;" *ngIf="units.controls['amount_received_bank_per_met']">
<mat-label>Amount Paid in Bank</mat-label>
<input matInput OnlyNumber autocomplete="off" placeholder="" formControlName="amount_received_bank_per_met"
required (keyup)="inWords($event.target.value,u,13)">
<mat-hint align="end" style="font-size:12px" *ngIf="units.value.amount_received_bank_per_met != ''">{{"&#8377;"}} {{amount_received_bank_per_met_Inwords[u]}} Only</mat-hint>
</mat-form-field>
<mat-form-field style="width:100%;" *ngIf="units.controls['payment_received_reason_per_met']">
<mat-label>Reason for Paid Multiple Payment Mode</mat-label>
<textarea matInput placeholder="" formControlName="payment_received_reason_per_met" required></textarea>
</mat-form-field>
<!-- start validate appplicant/agreement payment options -->
<mat-form-field style="width:100%" *ngIf="(units.value.monthly_rent_amount>0 && units.value.paid_monthly_rent_per_met>0 && units.value.payment_mode!='' && units.value.payment_mode_per_met!='') && (units.value.monthly_rent_amount!=units.value.paid_monthly_rent_per_met || units.value.payment_mode.id!=units.value.payment_mode_per_met.id)">
<mat-label>What is the Reason for Difference in Rent Amount or Mode of Payment</mat-label>
<input matInput autocomplete="off" placeholder="" formControlName="payment_difference_per_met">
</mat-form-field>
<!-- end -->
<!-- end met payment -->
</div>
<mat-form-field style="width: 100%;">
<input matInput type="number" placeholder="Bank" formControlName="bank" name="bank">
</mat-form-field>
<mat-form-field style="width: 100%;">
<input matInput type="number" placeholder="Cash" formControlName="cash" name="cash">
</mat-form-field>
<mat-form-field style="width: 100%;">
<input matInput type="text" placeholder="Rent received from each floor and or Rooms" formControlName="rent_each_floor" name="rent_each_floor">
</mat-form-field>
<mat-form-field style="width: 100%;">
<input matInput type="text" placeholder="Total rent received" formControlName="total_rent" name="total_rent">
</mat-form-field>
<mat-form-field style="width: 100%;">
<input matInput type="text" placeholder="Property Paper or other related document to prove ownership" formControlName="related_doc_owner" name="related_doc_owner">
</mat-form-field>
<mat-form-field style="width: 100%;">
<input matInput type="text" placeholder="Third party check of prevailing rent in the neighbour hood" formControlName="third_party_check" name="third_party_check">
</mat-form-field>
</mat-card>
<div formArrayName="details_tenants">
</mat-card-content>
<mat-card-actions align="end">
<ion-col col-6 offset-3>
<button ion-button clear (click)="removeUnit(u)">
<ion-icon style="font-size:22px" color="optblue" name="md-trash" *ngIf="rentalForms.value.property_unit_details.length>1"
matTooltip="Remove Unit" matTooltipPosition="above"></ion-icon>
</button>
</ion-col>
</mat-card-actions>
</mat-card>
</ng-container>
<!--<button type="button" mat-flat-button (click)="addMoreUnitDetails()" matTooltip="Add More Unit" matTooltipPosition="above" color="primary"><strong>Add More Unit</strong></button>-->
<button ion-button round block style="font-size: 13px;" color="optblue" (click)="addMoreUnitDetails()">Add More
Unit</button>
<br>
<mat-card>
<div *ngFor="let tenants of item['controls'].details_tenants['controls']; let i =index;let last = last" [formGroupName]="i">
<h3>Details of the tenants {{i+1}}</h3>
<mat-form-field style="width: 100%;">
<input matInput type="text" placeholder="Name" formControlName="name" name="name">
</mat-form-field>
<mat-form-field style="width: 100%;">
<input matInput type="tel" placeholder="Mobile No" formControlName="mobile_no" maxlength="10" name="mobile_no">
</mat-form-field>
<mat-form-field style="width: 100%;">
<input matInput type="text" placeholder="Tenant Seen" formControlName="tenants_seen" name="tenants_seen">
</mat-form-field>
<mat-form-field style="width: 100%;">
<input matInput type="text" placeholder="Tenant confirmed owner" formControlName="tenants_con_owner" name="tenants_con_owner">
</mat-form-field>
<mat-form-field style="width: 100%;">
<input matInput type="text" placeholder="Rent Paid" formControlName="rent_paid" name="rent_paid">
</mat-form-field>
<mat-form-field style="width: 100%;">
<input matInput type="text" placeholder="Staying since" formControlName="staying_since" name="staying_since">
</mat-form-field>
<mat-card>
<mat-card-header>
<mat-card-title>
Third Party Check
</mat-card-title>
</mat-card-header>
<mat-card-content>
<div fxLayout="row wrap">
<!-- start third party check -->
<mat-form-field style="width:100%">
<mat-label>Third party check done on prevailing rent in the area</mat-label>
<mat-select placeholder="" formControlName="done_third_party_check" required>
<mat-option value="1">Yes</mat-option>
<mat-option value="0">No</mat-option>
</mat-select>
</mat-form-field>
<ion-col text-right>
<a (click)="deleteTenantsDetails(rent_i,i)">
<ion-icon name="md-close" color="optblue" style="font-size: 22px;"></ion-icon>
</a>
</ion-col>
</div>
<ion-buttons end>
<ion-col col-3>
<a (click)="addTenantsDetails(rent_i)" *ngIf="last">
<ion-icon name="md-add" color="optblue" style="font-size: 22px;"></ion-icon>
</a>
</ion-col>
<mat-form-field style="width:100%;" *ngIf="rentalForms.controls['whom_third_party_check_done']">
<mat-label>Name of person with whom Third Party Check on going rentals in the area done</mat-label>
<input matInput placeholder="" formControlName="whom_third_party_check_done" required>
</mat-form-field>
<mat-form-field style="width:100%;" *ngIf="rentalForms.controls['description_third_party_check_done']">
<mat-label>Description of the person with whom the Third Party Check is done</mat-label>
<textarea matInput placeholder="" formControlName="description_third_party_check_done" required></textarea>
</mat-form-field>
<mat-form-field style="width:100%;" *ngIf="rentalForms.controls['rental_rates_third_party_check_done']">
<mat-label>Rental rates in the area as per the person with whom Third Party Check is done</mat-label>
<textarea matInput placeholder="" formControlName="rental_rates_third_party_check_done" required></textarea>
</mat-form-field>
<mat-form-field style="width:100%;" *ngIf="rentalForms.controls['why_third_party_check_not_done']">
<mat-label>Why Third party check not done</mat-label>
<textarea matInput placeholder="" formControlName="why_third_party_check_not_done" required></textarea>
</mat-form-field>
<!-- end -->
</div>
</mat-card-content>
</mat-card>
</ion-buttons>
</mat-card>
</div>
<ion-row>
<mat-card>
<mat-form-field style="width: 100%">
<textarea matInput placeholder="Remarks" formControlName="rental_remark"></textarea>
</mat-form-field>
</mat-card>
<!-- <ion-row>
<ion-col col-6>
<!-- <a (click)="addrentalHome()" *ngIf="last">
!-- <a (click)="addrentalHome()" *ngIf="last">
<ion-icon name="md-add" color="optblue" style="font-size: 22px;"></ion-icon>
</a> -->
</a> --
<button ion-button (click)="addrentalHome()" *ngIf="last" color="primary">Add More</button>
</ion-col>
<ion-col col-6>
<!-- <a (click)="deleterentalHome(rent_i)">
!-- <a (click)="deleterentalHome(rent_i)">
<ion-icon name="md-close" color="optblue" style="font-size: 22px;"></ion-icon>
</a> -->
</a> --
<button ion-button (click)="deleterentalHome(rent_i)" color="primary">Remove</button>
</ion-col>
</ion-row>
</div>
<br/>
</div>
</ion-row> -->
<ion-row>
<!-- <ion-buttons >
<!-- <ion-buttons >
<ion-button color="optblue" full[disabled]="!pdforms.valid" mat-raised-button style="width:100%" (click)="savepdDetails(pdforms.value)">Save <ion-icon name="md-disc"></ion-icon></ion-button> -->
<button ion-button full color="optblue" (click)="saveRentalDetails(rentalForms.value)"> Save</button>
<!-- </ion-buttons> -->
<button ion-button full color="optblue" (click)="saveRentalDetails(rentalForms.value)"> Save</button>
<!-- </ion-buttons> -->
</ion-row>
</form>

View File

@ -1,8 +1,21 @@
page-pd-question-rental-info {
.button-md{
padding: 0 2.9em !important;
mat-hint{
font-size:11px;
}
mat-card{
margin-bottom: 15px;
border-radius: 10px !important;
box-shadow: 0 16px 38px -12px rgba(0, 0, 0, 0.56), 0 4px 25px 0 rgba(0, 0, 0, 0.12), 0 8px 10px -5px rgba(0, 0, 0, 0.2) !important;
}
.mat-card-content{
margin-bottom: 0px !important;
}
.scroll-content{
background-color: #eee;
}
// .button-md{
// padding: 0 2.9em !important;
// }
}

View File

@ -32,86 +32,150 @@ public commonimage = "http://ssa.sineedge.com/sparqapi/logo/avatar.jpg";
return CurrentDate.toString();
}
convertNumberToWords(amount) {
var words = new Array();
words[0] = '';
words[1] = 'One';
words[2] = 'Two';
words[3] = 'Three';
words[4] = 'Four';
words[5] = 'Five';
words[6] = 'Six';
words[7] = 'Seven';
words[8] = 'Eight';
words[9] = 'Nine';
words[10] = 'Ten';
words[11] = 'Eleven';
words[12] = 'Twelve';
words[13] = 'Thirteen';
words[14] = 'Fourteen';
words[15] = 'Fifteen';
words[16] = 'Sixteen';
words[17] = 'Seventeen';
words[18] = 'Eighteen';
words[19] = 'Nineteen';
words[20] = 'Twenty';
words[30] = 'Thirty';
words[40] = 'Forty';
words[50] = 'Fifty';
words[60] = 'Sixty';
words[70] = 'Seventy';
words[80] = 'Eighty';
words[90] = 'Ninety';
amount = amount.toString();
var atemp = amount.split(".");
var number = atemp[0].split(",").join("");
var n_length = number.length;
let value:any = "";
var words_string = "";
if (n_length <= 9) {
var n_array:any = new Array(0, 0, 0, 0, 0, 0, 0, 0, 0);
var received_n_array = new Array();
for (var i = 0; i < n_length; i++) {
received_n_array[i] = number.substr(i, 1);
}
for (var i = 9 - n_length, j = 0; i < 9; i++, j++) {
n_array[i] = received_n_array[j];
}
for (var i = 0, j = 1; i < 9; i++, j++) {
if (i == 0 || i == 2 || i == 4 || i == 7) {
if (n_array[i] == 1) {
n_array[j] = 10 + parseInt(n_array[j]);
n_array[i] = 0;
}
convertNumberToWords(price) {
price = price.toString();
let atemp = price.split(".");
let amount = atemp[0];
var sglDigit = ["Zero", "One", "Two", "Three", "Four", "Five", "Six", "Seven", "Eight", "Nine"],
dblDigit = ["Ten", "Eleven", "Twelve", "Thirteen", "Fourteen", "Fifteen", "Sixteen", "Seventeen", "Eighteen", "Nineteen"],
tensPlace = ["", "Ten", "Twenty", "Thirty", "Forty", "Fifty", "Sixty", "Seventy", "Eighty", "Ninety"],
handle_tens = function(dgt, prevDgt) {
return 0 == dgt ? "" : " " + (1 == dgt ? dblDigit[prevDgt] : tensPlace[dgt])
},
handle_utlc = function(dgt, nxtDgt, denom) {
return (0 != dgt && 1 != nxtDgt ? " " + sglDigit[dgt] : "") + (0 != nxtDgt || dgt > 0 ? " " + denom : "")
};
var str = "",
digitIdx = 0,
digit = 0,
nxtDigit = 0,
words = [];
if (amount += "", isNaN(parseInt(amount))) str = "";
else if (parseInt(amount) > 0 && amount.length <= 10) {
for (digitIdx = amount.length - 1; digitIdx >= 0; digitIdx--)
switch (digit = amount[digitIdx] - 0, nxtDigit = digitIdx > 0 ? amount[digitIdx - 1] - 0 : 0, amount.length - digitIdx - 1) {
case 0:
words.push(handle_utlc(digit, nxtDigit, ""));
break;
case 1:
words.push(handle_tens(digit, amount[digitIdx + 1]));
break;
case 2:
words.push(0 != digit ? " " + sglDigit[digit] + " Hundred" + (0 != amount[digitIdx + 1] && 0 != amount[digitIdx + 2] ? " and" : "") : "");
break;
case 3:
words.push(handle_utlc(digit, nxtDigit, "Thousand"));
break;
case 4:
words.push(handle_tens(digit, amount[digitIdx + 1]));
break;
case 5:
words.push(handle_utlc(digit, nxtDigit, "Lakh"));
break;
case 6:
words.push(handle_tens(digit, amount[digitIdx + 1]));
break;
case 7:
words.push(handle_utlc(digit, nxtDigit, "Crore"));
break;
case 8:
words.push(handle_tens(digit, amount[digitIdx + 1]));
break;
case 9:
words.push(0 != digit ? " " + sglDigit[digit] + " Hundred" + (0 != amount[digitIdx + 1] || 0 != amount[digitIdx + 2] ? " and" : " Crore") : "")
// break;
// case 10:
// words.push(0 != digit ? " " + sglDigit[digit] + " Lakh" + (0 != price[digitIdx + 1] || 0 != price[digitIdx + 2] ? " and" : " Hundred" + (0 != price[digitIdx + 1] || 0 != price[digitIdx + 2] || 0 != price[digitIdx + 3] ? " and" : " Crore"))
// : "")
// break;
}
}
value = "";
for (var i = 0; i < 9; i++) {
if (i == 0 || i == 2 || i == 4 || i == 7) {
value = n_array[i] * 10;
} else {
value = n_array[i];
}
if (value != 0) {
words_string += words[value] + " ";
}
if ((i == 1 && value != 0) || (i == 0 && value != 0 && n_array[i + 1] == 0)) {
words_string += "Crores ";
}
if ((i == 3 && value != 0) || (i == 2 && value != 0 && n_array[i + 1] == 0)) {
words_string += "Lakhs ";
}
if ((i == 5 && value != 0) || (i == 4 && value != 0 && n_array[i + 1] == 0)) {
words_string += "Thousand ";
}
if (i == 6 && value != 0 && (n_array[i + 1] != 0 && n_array[i + 2] != 0)) {
words_string += "Hundred and ";
} else if (i == 6 && value != 0) {
words_string += "Hundred ";
}
}
words_string = words_string.split(" ").join(" ");
}
return words_string;
str = words.reverse().join("")
// str =(str.length > 2 && str.charAt(str.length-2)==',') ? str.slice(0, -2) : str;
} else str = "";
return str
// var words = new Array();
// words[0] = '';
// words[1] = 'One';
// words[2] = 'Two';
// words[3] = 'Three';
// words[4] = 'Four';
// words[5] = 'Five';
// words[6] = 'Six';
// words[7] = 'Seven';
// words[8] = 'Eight';
// words[9] = 'Nine';
// words[10] = 'Ten';
// words[11] = 'Eleven';
// words[12] = 'Twelve';
// words[13] = 'Thirteen';
// words[14] = 'Fourteen';
// words[15] = 'Fifteen';
// words[16] = 'Sixteen';
// words[17] = 'Seventeen';
// words[18] = 'Eighteen';
// words[19] = 'Nineteen';
// words[20] = 'Twenty';
// words[30] = 'Thirty';
// words[40] = 'Forty';
// words[50] = 'Fifty';
// words[60] = 'Sixty';
// words[70] = 'Seventy';
// words[80] = 'Eighty';
// words[90] = 'Ninety';
// amount = amount.toString();
// var atemp = amount.split(".");
// var number = atemp[0].split(",").join("");
// var n_length = number.length;
// let value:any = "";
// var words_string = "";
// if (n_length <= 9) {
// var n_array:any = new Array(0, 0, 0, 0, 0, 0, 0, 0, 0);
// var received_n_array = new Array();
// for (var i = 0; i < n_length; i++) {
// received_n_array[i] = number.substr(i, 1);
// }
// for (var i = 9 - n_length, j = 0; i < 9; i++, j++) {
// n_array[i] = received_n_array[j];
// }
// for (var i = 0, j = 1; i < 9; i++, j++) {
// if (i == 0 || i == 2 || i == 4 || i == 7) {
// if (n_array[i] == 1) {
// n_array[j] = 10 + parseInt(n_array[j]);
// n_array[i] = 0;
// }
// }
// }
// value = "";
// for (var i = 0; i < 9; i++) {
// if (i == 0 || i == 2 || i == 4 || i == 7) {
// value = n_array[i] * 10;
// } else {
// value = n_array[i];
// }
// if (value != 0) {
// words_string += words[value] + " ";
// }
// if ((i == 1 && value != 0) || (i == 0 && value != 0 && n_array[i + 1] == 0)) {
// words_string += "Crores ";
// }
// if ((i == 3 && value != 0) || (i == 2 && value != 0 && n_array[i + 1] == 0)) {
// words_string += "Lakhs ";
// }
// if ((i == 5 && value != 0) || (i == 4 && value != 0 && n_array[i + 1] == 0)) {
// words_string += "Thousand ";
// }
// if (i == 6 && value != 0 && (n_array[i + 1] != 0 && n_array[i + 2] != 0)) {
// words_string += "Hundred and ";
// } else if (i == 6 && value != 0) {
// words_string += "Hundred ";
// }
// }
// words_string = words_string.split(" ").join(" ");
// }
// return words_string;
}
}