From da0cd6c132e30ebb4d10ac14c7d01b937df0df3c Mon Sep 17 00:00:00 2001 From: "venbatechnologies@gmail.com" Date: Mon, 14 Oct 2019 12:00:06 +0530 Subject: [PATCH] Fairoj : Issue Fixes and new requirements are implemented --- ng6-seed/package-lock.json | 33 ++++++++++++- ng6-seed/package.json | 2 + ng6-seed/src/app/AwsService/aws.service.ts | 6 +-- .../list-pd/add-pd/add-pd.component.html | 4 +- .../list-pd/add-pd/add-pd.component.ts | 15 ++++++ .../edit-pd-applicant.component.html | 4 +- .../edit-pd-master.component.html | 2 +- .../edit-pd-master.component.ts | 16 +++++++ .../pd-requirement.component.html | 2 +- .../pd-requirement.component.ts | 8 ++-- .../manage-sales/manage-sales.component.ts | 43 ++++++++++++++++- .../assets-info/assets-info.component.html | 8 ++++ .../assets-info/assets-info.component.ts | 34 +++++++++++++- .../business-assets-info.component.html | 15 ++++++ .../business-assets-info.component.ts | 46 +++++++++++++++++++ .../business-info.component.html | 3 +- .../business-info/business-info.component.ts | 16 ++++++- .../current-loan/current-loan.component.html | 4 +- .../current-loan/current-loan.component.ts | 4 +- .../general-info/general-info.component.ts | 2 +- .../loan-details/loan-details.component.ts | 19 +++++++- .../queries-docs/queries-docs.component.html | 4 +- .../queries-docs/queries-docs.component.scss | 29 ++++++++++++ .../pd-service/pd-triger.service.ts | 4 ++ .../qc-pd-report/qc-pd-report.component.html | 6 +-- .../qc-pd-report/qc-pd-report.component.ts | 9 ++-- .../qc-review/qc-review.component.ts | 2 +- .../app/reports/pd-mis/pd-mis.component.html | 25 ++++++++-- .../app/reports/pd-mis/pd-mis.component.ts | 23 +++++++++- ng6-seed/src/app/reports/reports.module.ts | 2 + ...ialog-add-edit-billing-info.component.html | 6 ++- .../entity-edit-billing-info.component.ts | 4 +- .../users/register/register.component.html | 12 ++--- .../users/register/register.component.ts | 29 ++++++++++-- .../template-forms.component.html | 2 +- 35 files changed, 389 insertions(+), 54 deletions(-) diff --git a/ng6-seed/package-lock.json b/ng6-seed/package-lock.json index 86d3254db..220b39412 100755 --- a/ng6-seed/package-lock.json +++ b/ng6-seed/package-lock.json @@ -1502,6 +1502,11 @@ "positioning": "^1.3.1" } }, + "angular-csv-ext": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/angular-csv-ext/-/angular-csv-ext-1.0.1.tgz", + "integrity": "sha512-+pB+m5OrI6aRqlRv/Dl+3+z0uxhHfDL9W0uNlhDWKe829itgndhVHcKFhJyeFVhQKIEIBBLzR/sr4+eEns6q3w==" + }, "angular-draggable-droppable": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/angular-draggable-droppable/-/angular-draggable-droppable-2.0.0.tgz", @@ -2506,6 +2511,23 @@ "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=" }, + "cdk-table-exporter": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/cdk-table-exporter/-/cdk-table-exporter-1.2.1.tgz", + "integrity": "sha512-9nGu711YnsBdRb5C45yIMCWXxc/zdJZzq3siwQCWb1zD+cwNNm3+MY1UksL90bhFRkVNXUTumezu1O8AZ9NfbA==", + "requires": { + "file-saver": "^2.0.2", + "tslib": "^1.9.0", + "xlsx": "^0.14.1" + }, + "dependencies": { + "file-saver": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/file-saver/-/file-saver-2.0.2.tgz", + "integrity": "sha512-Wz3c3XQ5xroCxd1G8b7yL0Ehkf0TC9oYC6buPFkNnU9EnaPlifeAFCyCh+iewXTyFRcg0a6j3J7FmJsIhlhBdw==" + } + } + }, "cfb": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/cfb/-/cfb-1.1.0.tgz", @@ -7818,6 +7840,15 @@ "object-visit": "^1.0.0" } }, + "mat-table-exporter": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/mat-table-exporter/-/mat-table-exporter-1.2.1.tgz", + "integrity": "sha512-ldYRm8eIgZKrBEa+/Q1ZifjOKgp3tRt2+b/33podcocH2cMWSu3J6B7VuCnQ38xRReOZcc1kCWgwJhATMTZq9g==", + "requires": { + "cdk-table-exporter": "^1.2.1", + "tslib": "^1.9.0" + } + }, "math-random": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/math-random/-/math-random-1.0.1.tgz", @@ -8406,7 +8437,7 @@ }, "supports-color": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "resolved": "http://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=" } } diff --git a/ng6-seed/package.json b/ng6-seed/package.json index 04a15b60f..1a27f0f6c 100755 --- a/ng6-seed/package.json +++ b/ng6-seed/package.json @@ -36,6 +36,7 @@ "@types/file-saver": "^2.0.0", "amazon-cognito-identity-js": "^2.0.27", "angular-calendar": "0.23.3", + "angular-csv-ext": "^1.0.1", "angular-notifier": "^4.1.1", "angular-sortablejs": "^2.0.6", "angular-split": "^3.0.2", @@ -52,6 +53,7 @@ "jquery": "^3.4.1", "karma-jasmine": "^1.1.1", "leaflet": "^1.0.2", + "mat-table-exporter": "^1.2.1", "moment": "^2.15.0", "ng-pick-datetime": "^6.0.16", "ng2-charts": "1.6.0", diff --git a/ng6-seed/src/app/AwsService/aws.service.ts b/ng6-seed/src/app/AwsService/aws.service.ts index 3854ac88b..8c78d9f37 100755 --- a/ng6-seed/src/app/AwsService/aws.service.ts +++ b/ng6-seed/src/app/AwsService/aws.service.ts @@ -574,7 +574,7 @@ export class AwsService { }, { Name: "custom:role_id" /* required */, - Value: userData.user_role + Value: changeusers.role.role_id },{ Name:"email_verified", Value:"true" @@ -600,7 +600,7 @@ export class AwsService { Value: "+91" + changeusers.phone },{ Name: "custom:role_id" /* required */, - Value: userData.user_role + Value: changeusers.role.role_id },{ Name:"email_verified", Value:"true" @@ -627,7 +627,7 @@ export class AwsService { Value: "+91" + changeusers.phone },{ Name: "custom:role_id" /* required */, - Value: userData.user_role + Value: changeusers.role.role_id },{ Name:"email_verified", Value:"true" diff --git a/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/add-pd/add-pd.component.html b/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/add-pd/add-pd.component.html index 4707f77c2..af1a7371b 100755 --- a/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/add-pd/add-pd.component.html +++ b/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/add-pd/add-pd.component.html @@ -35,7 +35,7 @@ - + @@ -266,7 +266,7 @@ - + diff --git a/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/edit-pd-master/edit-pd-master.component.ts b/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/edit-pd-master/edit-pd-master.component.ts index 31c8ac2b4..6f6851050 100755 --- a/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/edit-pd-master/edit-pd-master.component.ts +++ b/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/edit-pd-master/edit-pd-master.component.ts @@ -6,6 +6,7 @@ import { NotifierService } from 'angular-notifier'; import { PdTrigerService } from '../../../pd-service/pd-triger.service'; import { TitleCasePipe } from '@angular/common'; import { getRandomString } from 'selenium-webdriver/safari'; +import Swal from 'sweetalert2' @Component({ selector: 'app-edit-pd-master', @@ -819,4 +820,19 @@ checkLender(value){ return this.lenderList.filter(val=>val.entity_id == value).map(mapping=>mapping.short_name)[0] } } +checkExistPd(value){ + // console.log(value); + let param={lender_applicant_id:value} + this._pd.checkExistPDDetails(param).subscribe(result=>{ + if(result['dataStatus']){ + if(result['records'].length > 0){ + Swal({ + title:"Warning!", + type:'warning', + text:"The Entered Loan Application Id ("+value+") is already exists on the Case No. "+result['records'][0].pd_sno}) + // this._EditPDtriggerForm.controls['lender_applicant_id'].setValue(''); + } + } + }) +} } diff --git a/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/pd-requirement/pd-requirement.component.html b/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/pd-requirement/pd-requirement.component.html index bfd4f0c99..a17966509 100755 --- a/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/pd-requirement/pd-requirement.component.html +++ b/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/pd-requirement/pd-requirement.component.html @@ -18,7 +18,7 @@ - + diff --git a/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/pd-requirement/pd-requirement.component.ts b/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/pd-requirement/pd-requirement.component.ts index 68bb4f0f5..a41dec04c 100755 --- a/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/pd-requirement/pd-requirement.component.ts +++ b/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/pd-requirement/pd-requirement.component.ts @@ -66,10 +66,10 @@ export class PdRequirementComponent implements OnInit { } } - // removeRequirements(index: number) { - // const requirement_control = this._EditPDRequirementForm.controls['additional_requirements']; - // requirement_control.removeAt(index); - // } + removeRequirements(index: number) { + const requirement_control = this._EditPDRequirementForm.controls['addtional_requirements']; + requirement_control.removeAt(index); + } updateAdditionalRequirement(formValue: any) { if(this._EditPDRequirementForm.invalid) { diff --git a/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/start-pd/forms/assessed-income/AI-diologue/manage-sales/manage-sales.component.ts b/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/start-pd/forms/assessed-income/AI-diologue/manage-sales/manage-sales.component.ts index 491491ae6..ba896cc03 100644 --- a/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/start-pd/forms/assessed-income/AI-diologue/manage-sales/manage-sales.component.ts +++ b/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/start-pd/forms/assessed-income/AI-diologue/manage-sales/manage-sales.component.ts @@ -99,9 +99,42 @@ export class ManageSalesComponent implements OnInit { } if(this.data.editData.sales_type =="3"){ + let control: any = this.salesItemForm.controls['salesCalItemwise']; + control.controls[0].controls['fk_frequency_id'].setValue(""); + control.controls[0].controls['fk_frequency_id'].clearValidators(); + control.controls[0].controls['fk_frequency_id'].updateValueAndValidity(); + + control.controls[0].controls['rate_per_unit'].setValue("") + control.controls[0].controls['rate_per_unit'].clearValidators(); + control.controls[0].controls['rate_per_unit'].updateValueAndValidity(); + + control.controls[0].controls['sales_qty'].setValue(""); + control.controls[0].controls['sales_qty'].clearValidators(); + control.controls[0].controls['sales_qty'].updateValueAndValidity(); + + control.controls[0].controls['fk_uom_id'].setValue(""); + control.controls[0].controls['fk_uom_id'].clearValidators(); + control.controls[0].controls['fk_uom_id'].updateValueAndValidity(); + + // control.controls[0]['controls'].margin_per.setValue(''); + control.controls[0]['controls'].margin_per_uom.setValue('') + if(this.data.margin_calculation_status === true){ + control.controls[0]['controls'].margin_per.setValidators(Validators.compose([Validators.required])) + control.controls[0]['controls'].margin_per_uom.clearValidators(); + control.controls[0]['controls'].margin_per_uom.updateValueAndValidity(); + } + else{ + control.controls[0]['controls'].margin_per.clearValidators(); + control.controls[0]['controls'].margin_per.updateValueAndValidity(); + control.controls[0]['controls'].margin_per_uom.clearValidators(); + control.controls[0]['controls'].margin_per_uom.updateValueAndValidity(); + } + + control.controls[0].controls['margin_per_uom'].setValue(""); + // console.log(this.data.editData) // console.log(this.salesItemForm.controls['salesCalItemwise']) - let control: any = this.salesItemForm.controls['salesCalItemwise']; + control.controls[0].addControl('child',this._fb.array([])) // console.log("control after",control); let innercontrol:any= control.controls[0].controls['child'] as FormArray @@ -359,6 +392,14 @@ submitDetails(records) { if (this.salesItemForm.invalid) { this.validateAllFormFields(this.salesItemForm); + // const invalid = []; + // const controls = this.salesItemForm.controls['salesCalItemwise']['controls'][0]; + // for (const name in controls) { + // if (controls[name].invalid) { + // invalid.push(name); + // } + // } + // console.log(invalid); this.notifier.notify('warning',"Please Check All Manatory Fields.."); return; } diff --git a/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/start-pd/forms/assets-info/assets-info.component.html b/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/start-pd/forms/assets-info/assets-info.component.html index 302a31129..74ea7bdb0 100755 --- a/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/start-pd/forms/assets-info/assets-info.component.html +++ b/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/start-pd/forms/assets-info/assets-info.component.html @@ -367,6 +367,14 @@ minlength="1" maxlength="2" OnlyNumber type="text" (keyup)="calculateVintagePurchase($event.target.value,i,3)"> + + + + Age of Asset in Months + + + diff --git a/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/start-pd/forms/assets-info/assets-info.component.ts b/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/start-pd/forms/assets-info/assets-info.component.ts index 95c7cad80..092541894 100755 --- a/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/start-pd/forms/assets-info/assets-info.component.ts +++ b/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/start-pd/forms/assets-info/assets-info.component.ts @@ -327,6 +327,7 @@ export class AssetsInfoComponent implements OnInit { other_owner: [''], // relation: [''], vintage_personal: [''], + asset_months:[''], purchase_year: ['', Validators.compose([Validators.pattern("[1-9]{1}[0-9]{3}")])], //purchase_month: [''], emi: [''], @@ -574,6 +575,7 @@ export class AssetsInfoComponent implements OnInit { other_owner: [data.other_owner || ''], //relation: [data.relation || ''], vintage_personal: [data.vintage_personal], + asset_months:[data.asset_months], purchase_year: [data.purchase_year, Validators.compose([Validators.pattern("[1-9]{1}[0-9]{3}")])], // purchase_month: [data.purchase_month], emi: [data.emi || 0], @@ -612,6 +614,7 @@ export class AssetsInfoComponent implements OnInit { other_owner: val.other_owner, // relation: val.relation, vintage_personal: val.vintage_personal, + asset_months:val.asset_months, purchase_year: val.purchase_year, // purchase_month: val.purchase_month, emi: val.emi, @@ -796,7 +799,35 @@ export class AssetsInfoComponent implements OnInit { // calculate vintage and purchase {} calculateVintagePurchase(value: any, controlKey: any, type: number) { if (type == 1) { } - else if (type == 2) { } + else if (type == 2) { + let control: any = this._assetsQuesFrom.controls['assets_details']; + let vintage_personal=control.controls[controlKey].controls['vintage_personal'].value + + // control.controls[controlKey].controls['asset_months'].setValue('') + control.controls[controlKey].controls['vintage_personal'].setValue('') + control.controls[controlKey].controls['purchase_year'].setValue(''); + + if(value >= 12){ + let years = Math.floor(value/12); + let months = value % 12; + console.log(years,months); + + vintage_personal=parseInt(vintage_personal)+ years + control.controls[controlKey].controls['asset_months'].setValue(months) + } + + control.controls[controlKey].controls['vintage_personal'].setValue(vintage_personal) + control.controls[controlKey].controls['purchase_year'].setValue(vintage_personal != '' ? parseInt(this.currentYear) - parseInt(vintage_personal) : ''); + + if(control.controls[controlKey].controls['asset_months'].value > 0 && (vintage_personal != '' || vintage_personal != 0)){ + // vintage_personal=parseInt(vintage_personal)-1 + control.controls[controlKey].controls['purchase_year'].setValue(control.controls[controlKey].controls['purchase_year'].value - 1); + + } + else if(control.controls[controlKey].controls['asset_months'].value > 0 && control.controls[controlKey].controls['asset_months'].value <12 && (vintage_personal == '' || vintage_personal == 0)){ + control.controls[controlKey].controls['purchase_year'].setValue(parseInt(this.currentYear)); + } + } else if (type == 3) { let control: any = this._assetsQuesFrom.controls['assets_details']; control.controls[controlKey].controls['purchase_year'].setValue(value != '' ? parseInt(this.currentYear) - parseInt(value) : ''); @@ -805,6 +836,7 @@ export class AssetsInfoComponent implements OnInit { let control: any = this._assetsQuesFrom.controls['assets_details']; value != '' && value <= this.currentYear ? control.controls[controlKey].controls['purchase_year'].setValue(value) : control.controls[controlKey].controls['purchase_year'].setValue(''); value != '' && value <= this.currentYear ? control.controls[controlKey].controls['vintage_personal'].setValue(parseInt(this.currentYear) - parseInt(value)) : control.controls[controlKey].controls['vintage_personal'].setValue('') + control.controls[controlKey].controls['asset_months'].setValue('') } } diff --git a/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/start-pd/forms/business-assets-info/business-assets-info.component.html b/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/start-pd/forms/business-assets-info/business-assets-info.component.html index 091338a17..a00900c8c 100755 --- a/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/start-pd/forms/business-assets-info/business-assets-info.component.html +++ b/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/start-pd/forms/business-assets-info/business-assets-info.component.html @@ -163,6 +163,14 @@ (keyup)="calculateVintagePurchase($event.target.value,i,3)"> + + + Age of Asset in Months + + + + Purchase Year @@ -416,6 +424,13 @@ + + Age of Asset in Months + + + + Purchase Year this._businessAssetsQuesFrom.controls['business_assets_details']; value != '' && value <= this.currentYear ? control.controls[controlKey].controls['business_purchase_year'].setValue(value) : control.controls[controlKey].controls['business_purchase_year'].setValue(''); value != '' && value <= this.currentYear ? control.controls[controlKey].controls['business_vintage'].setValue(parseInt(this.currentYear) - parseInt(value)) : control.controls[controlKey].controls['business_vintage'].setValue('') + control.controls[controlKey].controls['asset_months'].setValue('') } if (type == 3) { let control: any = this._businessAssetsQuesFrom.controls['business_assets_for_address']; @@ -873,6 +882,43 @@ export class BusinessAssetsInfoComponent implements OnInit { let control: any = this._businessAssetsQuesFrom.controls['business_assets_for_address']; value != '' && value <= this.currentYear ? control.controls[controlKey].controls['business_purchase_year'].setValue(value) : control.controls[controlKey].controls['business_purchase_year'].setValue(''); value != '' && value <= this.currentYear ? control.controls[controlKey].controls['business_vintage'].setValue(parseInt(this.currentYear) - parseInt(value)) : control.controls[controlKey].controls['business_vintage'].setValue('') + control.controls[controlKey].controls['asset_months'].setValue('') + } + else if(type == 5 || type == 6){ + let control: any + if(type == 5){ + control = this._businessAssetsQuesFrom.controls['business_assets_for_address']; + } + else if(type == 6){ + control = this._businessAssetsQuesFrom.controls['business_assets_details']; + } + + let vintage_personal=control.controls[controlKey].controls['business_vintage'].value + + // control.controls[controlKey].controls['asset_months'].setValue('') + control.controls[controlKey].controls['business_vintage'].setValue('') + control.controls[controlKey].controls['business_purchase_year'].setValue(''); + + if(value >= 12){ + let years = Math.floor(value/12); + let months = value % 12; + console.log(years,months); + + vintage_personal=parseInt(vintage_personal)+ years + control.controls[controlKey].controls['asset_months'].setValue(months) + } + + control.controls[controlKey].controls['business_vintage'].setValue(vintage_personal) + control.controls[controlKey].controls['business_purchase_year'].setValue(vintage_personal != '' ? parseInt(this.currentYear) - parseInt(vintage_personal) : ''); + + if(control.controls[controlKey].controls['asset_months'].value > 0 && (vintage_personal != '' || vintage_personal != 0)){ + // vintage_personal=parseInt(vintage_personal)-1 + control.controls[controlKey].controls['business_purchase_year'].setValue(control.controls[controlKey].controls['business_purchase_year'].value - 1); + + } + else if(control.controls[controlKey].controls['asset_months'].value > 0 && control.controls[controlKey].controls['asset_months'].value <12 && (vintage_personal == '' || vintage_personal == 0)){ + control.controls[controlKey].controls['business_purchase_year'].setValue(parseInt(this.currentYear)); + } } } diff --git a/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/start-pd/forms/business-info/business-info.component.html b/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/start-pd/forms/business-info/business-info.component.html index 8c66a6f8f..382d4c1c2 100755 --- a/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/start-pd/forms/business-info/business-info.component.html +++ b/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/start-pd/forms/business-info/business-info.component.html @@ -226,6 +226,7 @@ +
Type of Business Activity @@ -235,7 +236,7 @@ formControlName="type_of_business_activity" required> {{type.name}} --> -
+
diff --git a/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/start-pd/forms/business-info/business-info.component.ts b/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/start-pd/forms/business-info/business-info.component.ts index 5380386a9..4418ad9a3 100755 --- a/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/start-pd/forms/business-info/business-info.component.ts +++ b/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/start-pd/forms/business-info/business-info.component.ts @@ -2,7 +2,9 @@ import { Component, OnInit, Inject, - Input + Input, + ElementRef, + ViewChild } from '@angular/core'; import { @@ -93,6 +95,7 @@ export class BusinessInfoComponent implements OnInit { temp_noofposmachine: any; temp_additiondetailofposmachine: any = []; image_doc_params: { pdid: number; form_id: number; company_id: String; }; + @ViewChild('business_activity_type') business_activity_type_scroll : ElementRef constructor(notifier: NotifierService, private fb: FormBuilder, @@ -1251,7 +1254,7 @@ export class BusinessInfoComponent implements OnInit { // if(this.businessForm.controls.partners['controls'].length > 1) // {} - if (this.businessEntityTypeList.business_entity_type_name == 'OPC (One Person Company)' || this.businessEntityTypeList.business_entity_type_name == 'Sole proprietorship') { + if (this.businessEntityTypeList.business_entity_type_name == 'OPC (One Person Company)' || this.businessEntityTypeList.business_entity_type_name == 'Sole proprietorship' || this.customer_segment_abbr == 'SEP_INDV') { this.EntityTypeFlag = true; } // data.records.forEach(val => { @@ -1519,6 +1522,15 @@ export class BusinessInfoComponent implements OnInit { } // let design: any; let records = this.businessForm.value; + // console.log("cehc",type_of_activity_check) + let type_of_activity_check:any=records.select_business_activity_type.filter(val=>val.exist_status == true) + console.log("cehc",type_of_activity_check) + if(type_of_activity_check.length == 0){ + this.notifier.notify('warning',"Please Choose atleast one Business Activity") + // document.getElementById('business_activity_type').scrollIntoView() + this.business_activity_type_scroll.nativeElement.scrollIntoView({ behavior: "smooth", block: "start" }) + return; + } //to check the Appx. sale validation. diff --git a/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/start-pd/forms/current-loan/current-loan.component.html b/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/start-pd/forms/current-loan/current-loan.component.html index 25a41cf89..465fe5284 100755 --- a/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/start-pd/forms/current-loan/current-loan.component.html +++ b/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/start-pd/forms/current-loan/current-loan.component.html @@ -35,7 +35,7 @@ No - + Select @@ -43,7 +43,7 @@ No - +
diff --git a/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/start-pd/forms/current-loan/current-loan.component.ts b/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/start-pd/forms/current-loan/current-loan.component.ts index 705bab66e..2dad8f960 100755 --- a/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/start-pd/forms/current-loan/current-loan.component.ts +++ b/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/start-pd/forms/current-loan/current-loan.component.ts @@ -45,6 +45,7 @@ export class CurrentLoanComponent implements OnInit { mergeCompanyApplicant: any = []; isOtherLoanTakenBy:any = []; image_doc_params: { pdid: number; form_id: number; company_id: string; }; + product_abbr: any; constructor(notifier: NotifierService, private fb: FormBuilder, private route: ActivatedRoute, private router: Router, @@ -63,6 +64,7 @@ export class CurrentLoanComponent implements OnInit { this.subproduct_abbr = this.pd_all_details.pdmaster_details.subproduct_abbr; this.customer_segment_abbr = this.pd_all_details.pdmaster_details.customer_segment_abbr; this.image_doc_params={pdid:this.pdid,form_id:this.form_id,company_id:''} + this.product_abbr=this.pd_all_details.pdmaster_details.product_abbr } pdf(fileURL){ window.open(fileURL); @@ -428,7 +430,7 @@ export class CurrentLoanComponent implements OnInit { public initCurrentloanForm(): void { this.currentLoanForm = this.fb.group({ existing_loan: [''], - loan_info_available:[''], + loan_info_available:[this.product_abbr == 'BL' || this.product_abbr == 'LAEP' ? '' : 'Yes'], currentloan_remarks: [''], loan_details: this.fb.array([]), }); diff --git a/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/start-pd/forms/general-info/general-info.component.ts b/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/start-pd/forms/general-info/general-info.component.ts index 8a0a6017c..4e9aeb788 100755 --- a/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/start-pd/forms/general-info/general-info.component.ts +++ b/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/start-pd/forms/general-info/general-info.component.ts @@ -181,7 +181,7 @@ export class GeneralInfoComponent implements OnInit { this.qualificationList = data.records; } if (type == 4) { - this.businessEntityTypeList = data.records; + this.businessEntityTypeList = data.records.filter(val=>val.isactive != '0'); } } diff --git a/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/start-pd/forms/loan-details/loan-details.component.ts b/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/start-pd/forms/loan-details/loan-details.component.ts index 04f746001..3f7d5a178 100755 --- a/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/start-pd/forms/loan-details/loan-details.component.ts +++ b/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/start-pd/forms/loan-details/loan-details.component.ts @@ -821,11 +821,28 @@ export class LoanDetailsComponent implements OnInit { } } } + if(this.lenderShortName == 'CLIX'){ + this.loanDetailsForm.controls['own_contribution'].setValue(''); + this.loanDetailsForm.controls['own_contribution'].clearValidators(); + this.loanDetailsForm.controls['own_contribution'].updateValueAndValidity(); + this.loanDetailsForm.controls['source'].setValue(''); + this.loanDetailsForm.controls['source'].clearValidators(); + this.loanDetailsForm.controls['source'].updateValueAndValidity(); + console.log("con",this.isContribution); + } if (!this.loanDetailsForm.valid) { this.validateAllFormFields(this.loanDetailsForm); this.notifier.notify('warning', 'Please Fill All Mandatory Fields.!'); + const invalid = []; + const controls = this.loanDetailsForm.controls; + for (const name in controls) { + if (controls[name].invalid) { + invalid.push(name); + } + } + console.log(invalid); this.disableAfterSubmit = false; return; } @@ -858,7 +875,7 @@ export class LoanDetailsComponent implements OnInit { records.balance_transfer_amount = this.loanDetailsForm.controls['balance_transfer_amount'].value; } else if (this.loanDetailsForm.controls['is_transfer'].value == 'no') { - if (this.isContribution) { + if (this.isContribution || this.lenderShortName == 'CLIX') { records.own_contribution = ''; records.source_group = ''; records.other_source = ''; diff --git a/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/start-pd/forms/queries-docs/queries-docs.component.html b/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/start-pd/forms/queries-docs/queries-docs.component.html index 72f28f744..e03a6fc67 100644 --- a/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/start-pd/forms/queries-docs/queries-docs.component.html +++ b/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/start-pd/forms/queries-docs/queries-docs.component.html @@ -18,11 +18,11 @@
Credit Manager’s Specific Queries
- +
- +
diff --git a/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/start-pd/forms/queries-docs/queries-docs.component.scss b/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/start-pd/forms/queries-docs/queries-docs.component.scss index 431c61ee1..7ff2aed0b 100644 --- a/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/start-pd/forms/queries-docs/queries-docs.component.scss +++ b/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/start-pd/forms/queries-docs/queries-docs.component.scss @@ -1,4 +1,33 @@ .paragraph_change { color: #fff !important; background-color: #e00201 !important; + } + // mat-placeholder{ + // margin-top: 20px; + // word-wrap: break-word; + // } + // input{ + // height:50px; + // } + + ::-webkit-input-placeholder { /* Chrome/Opera/Safari */ + white-space:pre-line; + position:relative; + top:-7px; + + } + ::-moz-placeholder { /* Firefox 19+ */ + white-space:pre-line; + position:relative; + top:-7px; + } + :-ms-input-placeholder { /* IE 10+ */ + white-space:pre-line; + position:relative; + top:-7px; + } + :-moz-placeholder { /* Firefox 18- */ + white-space:pre-line; + position:relative; + top:-7px; } \ No newline at end of file diff --git a/ng6-seed/src/app/personal-discussion/pd-service/pd-triger.service.ts b/ng6-seed/src/app/personal-discussion/pd-service/pd-triger.service.ts index ad4bb7301..41773d313 100755 --- a/ng6-seed/src/app/personal-discussion/pd-service/pd-triger.service.ts +++ b/ng6-seed/src/app/personal-discussion/pd-service/pd-triger.service.ts @@ -771,5 +771,9 @@ export class PdTrigerService { datas.fk_createdby=this._aws.getlocale(); return this._http.post(this.apiUrl+'saveApplicantFromGeneralForm',datas) } + checkExistPDDetails(datas){ + return this._http.post(this.apiUrl+'checkExistPDDetails',{records:datas}) + .pipe(catchError(this.handleError("checkExistPDDetails",[]))) + } } diff --git a/ng6-seed/src/app/quality-check/qc-list/qc-pd-report/qc-pd-report.component.html b/ng6-seed/src/app/quality-check/qc-list/qc-pd-report/qc-pd-report.component.html index 6d068eae4..5cecc2bee 100644 --- a/ng6-seed/src/app/quality-check/qc-list/qc-pd-report/qc-pd-report.component.html +++ b/ng6-seed/src/app/quality-check/qc-list/qc-pd-report/qc-pd-report.component.html @@ -79,7 +79,7 @@ - + - +
diff --git a/ng6-seed/src/app/quality-check/qc-list/qc-pd-report/qc-pd-report.component.ts b/ng6-seed/src/app/quality-check/qc-list/qc-pd-report/qc-pd-report.component.ts index 3dee29773..57965effe 100644 --- a/ng6-seed/src/app/quality-check/qc-list/qc-pd-report/qc-pd-report.component.ts +++ b/ng6-seed/src/app/quality-check/qc-list/qc-pd-report/qc-pd-report.component.ts @@ -477,18 +477,19 @@ export class QcPdReportComponent implements OnInit { this.pdf_src='' this.pdf_viewer_split_size='70' this.html_viewer_split_size='30' - console.log("data datacontainer",this.dataContainer) + let modifiedHtml='' if(this.dataContainer != undefined){ - modifiedHtml =this.dataContainer.nativeElement.outerHTML; + modifiedHtml =this.dataContainer.nativeElement.innerHTML; + console.log("data datacontainer",this.dataContainer.nativeElement.innerHTML) } console.log(this.dataContainer); let encryptReportRandomString = atob(this.route.snapshot.params['string']); this.pdTrigerService.getPDReportPDFpreview(encryptReportRandomString,this.startPD,modifiedHtml).subscribe(response=>{ // if(response['dataStatus']){ - // 'https://cors-anywhere.herokuapp.com/' - this.pdf_src=response['link'] + this.pdf_src='https://cors-anywhere.herokuapp.com/'+response['link']; + // this.pdf_src=response['link'] // window.open(this.pdf_src); console.log("pdf source",this.pdf_src) //} diff --git a/ng6-seed/src/app/quality-check/qc-list/qc-pd-report/qc-review/qc-review.component.ts b/ng6-seed/src/app/quality-check/qc-list/qc-pd-report/qc-review/qc-review.component.ts index 2fdd4901d..702095ac7 100755 --- a/ng6-seed/src/app/quality-check/qc-list/qc-pd-report/qc-review/qc-review.component.ts +++ b/ng6-seed/src/app/quality-check/qc-list/qc-pd-report/qc-review/qc-review.component.ts @@ -130,7 +130,7 @@ export class QcReviewComponent implements OnInit { statusChangeClick(): void { let template = this.ngForm.value; - let savePDRemark_values={'pd_id':this.data.startId,'remark':template.change_status_remark} + let savePDRemark_values={'pd_id':this.data.startId,'remark':template.change_status_remark,is_revert_remark:'1'} this.serviceFromPD.savePDRemark(savePDRemark_values).subscribe(result=>{ let changeStatus_values={'pd_id':this.data.startId,random_string:this.data.random_string,parent_pd_id:this.data.startId,pd_status:template.pd_status} diff --git a/ng6-seed/src/app/reports/pd-mis/pd-mis.component.html b/ng6-seed/src/app/reports/pd-mis/pd-mis.component.html index 8f9cbc901..d0f577934 100644 --- a/ng6-seed/src/app/reports/pd-mis/pd-mis.component.html +++ b/ng6-seed/src/app/reports/pd-mis/pd-mis.component.html @@ -3,7 +3,8 @@
PD MIS Report - + +
@@ -237,7 +238,7 @@
- + @@ -360,6 +361,24 @@ + + + + + + + + + + @@ -531,7 +550,7 @@ -
Sr. No. Bounced + DD:MM:YYYY HH:MM + {{row.bounced | date: 'dd-MM-yyyy hh:mm a'}} + 00-00-0000 00:00 + Allocated to Bounced + HH:MM:SS + {{row.allocated_to_bounced }} + 00:00:00 + Accepted DD:MM:YYYY HH:MM
+
diff --git a/ng6-seed/src/app/reports/pd-mis/pd-mis.component.ts b/ng6-seed/src/app/reports/pd-mis/pd-mis.component.ts index 9c20976ad..eb280efe7 100644 --- a/ng6-seed/src/app/reports/pd-mis/pd-mis.component.ts +++ b/ng6-seed/src/app/reports/pd-mis/pd-mis.component.ts @@ -6,6 +6,7 @@ import { FormGroup, FormControl,FormBuilder } from '@angular/forms'; import * as XLSX from 'xlsx'; import { MatSort,MatPaginator, MatTableDataSource,PageEvent } from '@angular/material'; import { NotifierService } from 'angular-notifier'; +import { AngularCsv } from 'angular-csv-ext/dist/Angular-csv'; @Component({ selector: 'app-pd-mis', @@ -48,6 +49,8 @@ export class PdMisComponent implements OnInit { 'draft_to_trigger', 'allocated', 'triggered_to_allocated', + 'bounced', + 'allocated_to_bounced', 'accepted', 'allocated_to_accepted', 'confirmation_pd_date', @@ -79,6 +82,7 @@ export class PdMisComponent implements OnInit { constructor(private reportsService:ReportsService,private route:ActivatedRoute,private router:Router,private form_builder:FormBuilder,private notifier:NotifierService) { this.reportform = this.form_builder.group({ from_date:[null],to_date:[null],city:[null],branch:[null],applicant_id:[null],lender_short_name:[null] }); + } ngOnInit(){ @@ -118,6 +122,7 @@ export class PdMisComponent implements OnInit { @ViewChild(MatSort) sort: MatSort; // @ViewChild('TABLE') table: ElementRef; @ViewChild('TABLE',{ read: ElementRef }) table: ElementRef; + @ViewChild('exporter') exp exportAsExcel():void { @@ -128,7 +133,23 @@ export class PdMisComponent implements OnInit { /* save to file */ XLSX.writeFile(wb, 'Daily MIS Report.xlsx'); } - + exportAsCSV(){ + console.log(this.table.nativeElement.innerText,this.exp) + var options = { + fieldSeparator: ',', + quoteStrings: '"', + decimalseparator: '.', + showLabels: true, + showTitle: true, + title: 'Your title', + useBom: true, + noDownload: true, + headers: this.displayedColumns, + nullToEmptyString: true, + }; + // console.log(this.table.nativeElement) + new AngularCsv(this.dataSource.data,'sample') + } ngAfterViewInit() { this.dataSource.paginator = this.paginator; diff --git a/ng6-seed/src/app/reports/reports.module.ts b/ng6-seed/src/app/reports/reports.module.ts index 649893f44..dfc86e3c8 100644 --- a/ng6-seed/src/app/reports/reports.module.ts +++ b/ng6-seed/src/app/reports/reports.module.ts @@ -26,6 +26,7 @@ import { ReportsService } from '../reports/reports.service'; import { ReportsRoutingModule } from './reports-routing.module'; import { PdMisComponent } from './pd-mis/pd-mis.component'; import {NotifierModule,NotifierOptions} from 'angular-notifier' +import { MatTableExporterModule } from 'mat-table-exporter'; const pdCustomNotifierOptions: NotifierOptions = { @@ -93,6 +94,7 @@ const pdCustomNotifierOptions: NotifierOptions = { MatTooltipModule, MatListModule, MatDatepickerModule, + MatTableExporterModule ], exports: [MatExpansionModule], declarations: [PdMisComponent], diff --git a/ng6-seed/src/app/settings/entity/entity-edit/entity-edit-billing-info/dialog-add-edit-billing-info.component.html b/ng6-seed/src/app/settings/entity/entity-edit/entity-edit-billing-info/dialog-add-edit-billing-info.component.html index 76fc47b1d..d7bf9b717 100755 --- a/ng6-seed/src/app/settings/entity/entity-edit/entity-edit-billing-info/dialog-add-edit-billing-info.component.html +++ b/ng6-seed/src/app/settings/entity/entity-edit/entity-edit-billing-info/dialog-add-edit-billing-info.component.html @@ -78,13 +78,15 @@ You must Include Contact Person Email. +
+
- +
-
+
diff --git a/ng6-seed/src/app/settings/entity/entity-edit/entity-edit-billing-info/entity-edit-billing-info.component.ts b/ng6-seed/src/app/settings/entity/entity-edit/entity-edit-billing-info/entity-edit-billing-info.component.ts index 2fe71d68b..5b3ab8e15 100755 --- a/ng6-seed/src/app/settings/entity/entity-edit/entity-edit-billing-info/entity-edit-billing-info.component.ts +++ b/ng6-seed/src/app/settings/entity/entity-edit/entity-edit-billing-info/entity-edit-billing-info.component.ts @@ -149,7 +149,7 @@ export class DialogAddEditBillingInfo implements OnInit { loadContactsDetails(record: any) { if(record == null || record == undefined){ - this.addContacts(null); + // this.addContacts(null); } else { if(record.length > 0) { for (let val of record) { @@ -195,7 +195,7 @@ export class DialogAddEditBillingInfo implements OnInit { control.push(this.initContacts(conts)); } - removeContacts(i: number) { + deleteContacts(i: number) { const control = this._editEntityBillingInfoFrom.controls['contacts']; control.removeAt(i); } diff --git a/ng6-seed/src/app/settings/users/register/register.component.html b/ng6-seed/src/app/settings/users/register/register.component.html index 74149b532..2f0e99eb9 100755 --- a/ng6-seed/src/app/settings/users/register/register.component.html +++ b/ng6-seed/src/app/settings/users/register/register.component.html @@ -35,7 +35,7 @@ Not More Than 10 Characters. - + Last Name Required. @@ -97,7 +97,7 @@
- -- @@ -109,7 +109,7 @@ - + -- {{ent.full_name}} @@ -119,7 +119,7 @@ - + -- {{ent.full_name}} @@ -129,7 +129,7 @@ - + {{role.role_name}} @@ -140,7 +140,7 @@ User Role Required - + -- {{pd.team_name}} diff --git a/ng6-seed/src/app/settings/users/register/register.component.ts b/ng6-seed/src/app/settings/users/register/register.component.ts index cad7470f9..6514beae1 100755 --- a/ng6-seed/src/app/settings/users/register/register.component.ts +++ b/ng6-seed/src/app/settings/users/register/register.component.ts @@ -11,6 +11,7 @@ import { UserService } from '../../service/user.service'; import { ifStmt } from '@angular/compiler/src/output/output_ast'; /**sweet alert */ import Swal from 'sweetalert2'; +import { NotifierService } from 'angular-notifier'; const pdoff = "PD Officer"; const pdexu = "PD Executive"; @@ -58,9 +59,13 @@ export class RegisterComponent implements OnInit { profileaccess: boolean; entitiesDetails:any; entities:any; + notifier:NotifierService; constructor( private router: Router, public fb: FormBuilder, public AWS: AwsService, private cd: ChangeDetectorRef - ,private elementRef: ElementRef,public users:UserService) { } + ,private elementRef: ElementRef,public users:UserService,notifier:NotifierService) { + this.notifier=notifier + // console.log(this.notifier) + } ngOnInit() { if (this.users.localUserId != '' && this.users.localUserId != null && this.users.localUserId !== undefined) { @@ -73,18 +78,18 @@ export class RegisterComponent implements OnInit { this.regForm = this.fb.group({ userid: [null], firstName: [null, Validators.compose([Validators.required, Validators.minLength(2)])], - lastName: ['', Validators.compose([Validators.required])], + lastName: [''], phone: [null, Validators.compose([Validators.required, Validators.minLength(10), Validators.maxLength(12)])], email: [null, Validators.compose([Validators.required, CustomValidators.email])], role: [null, Validators.compose([Validators.required])], type: [null, Validators.compose([Validators.required])], state: [null, Validators.compose([Validators.required])], city: [null, Validators.compose([Validators.required])], - lenVenName: [null, Validators.compose([Validators.required])], + lenVenName: [null], userpic: [null], isactive: [true], - pdteam:[null,Validators.compose([Validators.required])], - pdtype:[null,Validators.compose([Validators.required])], + pdteam:[null], + pdtype:[null], }); @@ -172,6 +177,19 @@ export class RegisterComponent implements OnInit { register(userData) { + if(this.regForm.invalid){ + // this.notifier.notify('success','Please Fill all the Fields') + Swal('Please Fill all the Fields'); + const invalid = []; + const controls = this.regForm.controls; + for (const name in controls) { + if (controls[name].invalid) { + invalid.push(name); + } + } + console.log(invalid); + return; + } // console.log(userData); let data:any; @@ -189,6 +207,7 @@ export class RegisterComponent implements OnInit { } //console.log(this.usersData); this.loader = true; +console.log("cog",userData,this.usersData) if (this.usersData === undefined) { this.AWS.register(userData).subscribe(res => { if (res.User.UserStatus != '' && res.User.UserStatus !== undefined && res.User.UserStatus != null) { diff --git a/ng6-seed/src/app/template/templates/templates-list/edit/template-forms/template-forms.component.html b/ng6-seed/src/app/template/templates/templates-list/edit/template-forms/template-forms.component.html index 27d226917..aad445491 100755 --- a/ng6-seed/src/app/template/templates/templates-list/edit/template-forms/template-forms.component.html +++ b/ng6-seed/src/app/template/templates/templates-list/edit/template-forms/template-forms.component.html @@ -1,5 +1,5 @@ - + {{tta.pd_form_name}}