diff --git a/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/start-pd/forms/personal-info/personal-info.component.html b/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/start-pd/forms/personal-info/personal-info.component.html index 163347dd9..4975b3966 100644 --- a/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/start-pd/forms/personal-info/personal-info.component.html +++ b/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/start-pd/forms/personal-info/personal-info.component.html @@ -1,4 +1,4 @@ -
+ @@ -15,10 +15,13 @@ + + Enter Valid Age. + @@ -68,6 +71,8 @@ + Enter Valid Age. + @@ -117,7 +122,7 @@
Remarks - +
@@ -126,7 +131,7 @@
- +
diff --git a/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/start-pd/forms/personal-info/personal-info.component.ts b/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/start-pd/forms/personal-info/personal-info.component.ts index 7f83ff4c8..08bb05415 100644 --- a/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/start-pd/forms/personal-info/personal-info.component.ts +++ b/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/start-pd/forms/personal-info/personal-info.component.ts @@ -38,7 +38,6 @@ export class PersonalInfoComponent implements OnInit { } ngOnInit() { - this.loadPDDetails(this.pdid,this.form_id); this.getRelationMaster(); this.mainApplicantDetails = this.pd_all_details.pdapplicants_detials.filter(item => item.applicant_type == 1); @@ -74,7 +73,7 @@ loadFormWithIDData(data) { let mainApplicantGroup = new FormArray(main_result.map((item,key) => new FormGroup({ name_ans:new FormControl(item.name_ans, Validators.required), - age_ans:new FormControl(item.age_ans, Validators.required), + age_ans:new FormControl(item.age_ans, Validators.compose([Validators.required,Validators.minLength(1),Validators.maxLength(3),Validators.required,Validators.pattern('^[0-9]*$')])), entity_ans:new FormControl(item.entity_ans, Validators.required), qualification_ans:new FormControl(item.qualification_ans, Validators.required), earning_ans:new FormControl(item.earning_ans, Validators.required), @@ -88,7 +87,7 @@ loadFormWithIDData(data) { coApplicantGroup = new FormArray(co_result.map((item,key) => new FormGroup({ name_ans:new FormControl(item.name_ans, Validators.required), - age_ans:new FormControl(item.age_ans, Validators.required), + age_ans:new FormControl(item.age_ans, Validators.compose([Validators.required,Validators.minLength(1),Validators.maxLength(3),Validators.required,Validators.pattern('^[0-9]*$')])), entity_ans:new FormControl(item.entity_ans, Validators.required), qualification_ans:new FormControl(item.qualification_ans, Validators.required), earning_ans:new FormControl(item.earning_ans, Validators.required), @@ -103,10 +102,10 @@ loadFormWithIDData(data) { name_id:new FormControl(0), age_ques:new FormControl(this.coApplicantQuestions[1]), age_id:new FormControl(1), - age_ans:new FormControl(null, Validators.required), + age_ans:new FormControl(null, Validators.compose([Validators.required,Validators.minLength(1),Validators.maxLength(3),Validators.required,Validators.pattern('^[0-9]*$')])), entity_ques: new FormControl(this.coApplicantQuestions[2]), entity_id: new FormControl(2), - entity_ans:new FormControl(this.pd_all_details.pdmaster_details.customer_segment_abbr==='SP' ? 'Individual' : this.pd_all_details.pdmaster_details.customer_segment_abbr==='SNP' ? 'Individual' : '', Validators.required), + entity_ans:new FormControl(this.pd_all_details.pdmaster_details.customer_segment_abbr.substring(0,3).toUpperCase()==='SAL' ? 'Individual' : '', Validators.required), qualification_ques: new FormControl(this.coApplicantQuestions[3]), qualification_id: new FormControl(3), qualification_ans:new FormControl(null, Validators.required), @@ -142,10 +141,10 @@ loadFormWithIDData(data) { name_id:new FormControl(0), age_ques:new FormControl(this.mainApplicantQuestions[1]), age_id:new FormControl(1), - age_ans:new FormControl(null, Validators.required), + age_ans:new FormControl(null, Validators.compose([Validators.required,Validators.minLength(1),Validators.maxLength(3),Validators.required,Validators.pattern('^[0-9]*$')])), entity_ques: new FormControl(this.mainApplicantQuestions[2]), entity_id: new FormControl(2), - entity_ans:new FormControl(this.pd_all_details.pdmaster_details.customer_segment_abbr==='SP' ? 'Individual' : this.pd_all_details.pdmaster_details.customer_segment_abbr==='SNP' ? 'Individual' : '', Validators.required), + entity_ans:new FormControl(this.pd_all_details.pdmaster_details.customer_segment_abbr.substring(0,3).toUpperCase()==='SAL' ? 'Individual' : '', Validators.required), qualification_ques: new FormControl(this.mainApplicantQuestions[3]), qualification_id: new FormControl(3), qualification_ans:new FormControl(null, Validators.required), @@ -161,10 +160,10 @@ loadFormWithIDData(data) { name_id:new FormControl(0), age_ques:new FormControl(this.coApplicantQuestions[1]), age_id:new FormControl(1), - age_ans:new FormControl(null, Validators.required), + age_ans:new FormControl(null, Validators.compose([Validators.required,Validators.minLength(1),Validators.maxLength(3),Validators.required,Validators.pattern('^[0-9]*$')])), entity_ques: new FormControl(this.coApplicantQuestions[2]), entity_id: new FormControl(2), - entity_ans:new FormControl(this.pd_all_details.pdmaster_details.customer_segment_abbr==='SP' ? 'Individual' : this.pd_all_details.pdmaster_details.customer_segment_abbr==='SNP' ? 'Individual' : '', Validators.required), + entity_ans:new FormControl(this.pd_all_details.pdmaster_details.customer_segment_abbr.substring(0,3).toUpperCase()==='SAL' ? 'Individual' : '', Validators.required), qualification_ques: new FormControl(this.coApplicantQuestions[3]), qualification_id: new FormControl(3), qualification_ans:new FormControl(null, Validators.required), @@ -208,7 +207,14 @@ this.loadDataStatus = true; // submit forms details submitPersonalForm(formData:any) { - if(this._personalForm.valid){ + if (this._personalForm.invalid) { + this.validateAllFormFields(this._personalForm); + + // this.notifier.notify('warning', 'All Fields Are Required.!'); + + return; + } + else{ let main_applicantDetails:any=[]; let co_applicantDetails:any=[]; @@ -257,5 +263,20 @@ submitPersonalForm(formData:any) { } } +// validate all form group and form array fields +validateAllFormFields(formGroup: any) { + Object.keys(formGroup.controls).forEach(field => { + const control = formGroup.get(field); + + if (control instanceof FormControl) { + control.markAsTouched({ onlySelf: true }); + } else if (control instanceof FormGroup) { + this.validateAllFormFields(control); + } else if (control instanceof FormArray) { + this.validateAllFormFields(control); + } + }); +} + }