image component : ps

This commit is contained in:
venbatechnologies@gmail.com 2019-06-18 20:56:50 +05:30
parent b690f05847
commit 513b12797c
34 changed files with 518 additions and 131 deletions

View File

@ -45,6 +45,8 @@ import { TokenInterceptor } from './_guard/token.interceptor';
import { NewPasswordDialog, ForgotPass } from './session/login/login.component';
import { AuthGuard } from './_guard/auth.guard';
import { RoleMenuItemsPipe } from './layouts/role-menu-items.pipe';
import { ResizableModule } from 'angular-resizable-element';
export function HttpLoaderFactory(http: HttpClient) {
return new TranslateHttpLoader(http);
}
@ -86,6 +88,7 @@ const DEFAULT_PERFECT_SCROLLBAR_CONFIG: PerfectScrollbarConfigInterface = {
DemoMaterialModule,
MatFormFieldModule,
HttpClientModule,
ResizableModule,
TranslateModule.forRoot({
loader: {
provide: TranslateLoader,

View File

@ -203,11 +203,12 @@ export class AddPdComponent implements OnInit, OnDestroy {
//get sub product list based on prokduct id
getSubproductList(productID: string) {
let productabbr : any;
console.log('productID',productID);
if(productID !== undefined && productID !== null && productID !== '') {
this.subProductList = this.productList.filter(item => item.product_id == productID);
this.subProductList = this.subProductList[0].subproducts;
this.subProductList = this.subProductList.filter(item => item.is_others == 0);
productabbr = this.productAllList.filter(item => item.product_id == productID)[0].abbr;
productabbr = this.productAllList.filter(item => item.product_id == productID)[0].product_abbr;
}
else{
@ -218,7 +219,7 @@ export class AddPdComponent implements OnInit, OnDestroy {
this._PDtriggerForm.controls['fk_customer_segment'].setValue('');
this._PDtriggerForm.controls['loan_amount'].setValue('');
}
console.log('productID',productID,productabbr);
/**customer segment */
switch(productabbr){
case 'BL' :

View File

@ -2,8 +2,11 @@
<mat-expansion-panel [(expanded)]="xpandStatus">
<mat-expansion-panel-header>
<mat-panel-title class="text-xs-left">
<h6 class="mt-0">
<mat-icon>filter_list</mat-icon> Filter</h6>
<mat-toolbar-row>
<mat-icon>filter_list</mat-icon>
<span class="toolbar-space"></span>
<span>Advance Filter</span>
</mat-toolbar-row>
</mat-panel-title>
</mat-expansion-panel-header>
@ -20,12 +23,12 @@
</mat-select>
</mat-form-field>
<mat-form-field style="width:20%">
<input matInput [matDatepicker]="picker" (blur)="checkDate($event)" formControlName="pd_from_date" placeholder="Choose a From date">
<input matInput [matDatepicker]="picker" (blur)="checkDate($event)" [max]="todaydate" formControlName="pd_from_date" placeholder="Choose a From date">
<mat-datepicker-toggle matSuffix [for]="picker"></mat-datepicker-toggle>
<mat-datepicker #picker></mat-datepicker>
</mat-form-field> &nbsp; &nbsp;
<mat-form-field style="width:20%">
<input matInput [matDatepicker]="picker1" [min]="searchForm.get('pd_from_date').value" formControlName="pd_to_date" placeholder="Choose a todate">
<input matInput [matDatepicker]="picker1" [min]="searchForm.get('pd_from_date').value" [max]="todaydate" formControlName="pd_to_date" placeholder="Choose a todate">
<mat-datepicker-toggle matSuffix [for]="picker1"></mat-datepicker-toggle>
<mat-datepicker #picker1></mat-datepicker>
</mat-form-field>
@ -68,7 +71,7 @@
</mat-expansion-panel>
<br/>
<mat-table [dataSource]="dataSourceTab1" matSort *ngIf="PdListData.length > 0">
<mat-table [dataSource]="dataSourceTab1" matSort *ngIf="PdListData.length > 0 else noRecord">
<ng-container matColumnDef="PDType">
@ -138,6 +141,10 @@
</mat-row>
</mat-table>
<!-- <ng-template #noRecord>
<div> No Record found </div>
</ng-template> -->
</mat-card-content>
<mat-paginator *ngIf="!recordStatus" #paginator class="mat-elevation-z1" [length]="PdListData.length" [pageIndex]="pageIndex"

View File

@ -13,4 +13,9 @@
}
.fontsize{
font-size:14px;
}
}
.toolbar-space {
flex: 0.01 0 auto;
}

View File

@ -18,12 +18,11 @@ export class AllPdComponent implements OnInit, OnChanges {
PRODUCTS:any[]=[];
ENTITY: any[]=[]
CITY: any[]=[]
tempStore = new MatTableDataSource();
PDType: any[]=[]
pdStatus: any[]=[]
searchForm:FormGroup;
pipe = new DatePipe('en-US');
public notifier : NotifierService;
private notifier: NotifierService;
recordStatus: boolean;
errorMessage:any[]=[];
tabStatus:string="ALL";
@ -46,9 +45,9 @@ export class AllPdComponent implements OnInit, OnChanges {
pageIndex = 0;
pageSize = 10;
pageEvent: PageEvent;
constructor(private _pd: PdTrigerService,private _fb:FormBuilder) {
todaydate:Date = new Date();
constructor(private _pd: PdTrigerService,private _fb:FormBuilder,notifier: NotifierService,) {
this.notifier = notifier;
this.searchForm = this._fb.group(
{
pd_type:[null],
@ -89,7 +88,6 @@ export class AllPdComponent implements OnInit, OnChanges {
this.PdListData = data.records;
this.dataLengthTab1 = data.records.length;
this.dataSourceTab1.data = this.PdListData;
this.tempStore.data = this.PdListData;
}
else{
this.PdListData=[];
@ -191,32 +189,33 @@ export class AllPdComponent implements OnInit, OnChanges {
this.searchForm.value.pd_to_date = this.pipe.transform(this.searchForm.value.pd_to_date,'yyyy-MM-dd');
console.log(JSON.stringify(this.searchForm.value));
this._pd.overAllSearchFormDetails(this.searchForm.value).subscribe(res=>
{
{
this.xpandStatus = false;
if(res['dataStatus']==true)
{
this.dataSourceTab1.data = res['records'];
console.log('res[records]',res['records']);
// console.log('res[records]',res['records']);
this.dataSourceTab1.paginator = this.paginator;
}else{
// this.notifier.notify('warning', 'No Records Found');
this.dataSourceTab1 = this.tempStore;
console.log('this.tempStore',this.tempStore);
this.dataSourceTab1.paginator = this.paginator;
this.notifier.notify('warning', 'No Records Found !');
this.dataSourceTab1.data = [];
this.dataSourceTab1.paginator = null;
}
})
},error => {
this.errorMessage.push(error);
this.notifier.notify('warning', 'Something Went Wrong Try Again.!' + '-' + error.error_text + ' occur');
alert(error.html_format);
});
}
onReset(){
this.searchForm.reset();
this.dataSourceTab1 = this.tempStore;
this.dataSourceTab1.paginator = this.paginator;
this.loadPDDetails();
this.xpandStatus = false;
}
ngAfterViewInit() {
this.dataSourceTab1.paginator = this.paginator;
this.dataSourceTab1.sort = this.sort;
this.dataSourceTab1.paginator = this.paginator;
this.dataSourceTab1.sort = this.sort;
}
}

View File

@ -3,7 +3,12 @@
<mat-expansion-panel>
<mat-expansion-panel-header>
<mat-panel-title class="text-xs-left">
<h6 class="mt-0"><mat-icon>filter_list</mat-icon> Filter</h6>
<!-- <h6 class="mt-0"><mat-icon>filter_list</mat-icon> Filter</h6> -->
<mat-toolbar-row>
<mat-icon>filter_list</mat-icon>
<span class="toolbar-space"></span>
<span>Advance Filter</span>
</mat-toolbar-row>
</mat-panel-title>
</mat-expansion-panel-header>
@ -20,12 +25,12 @@
</mat-select>
</mat-form-field> -->
<mat-form-field style="width:30%">
<input matInput [matDatepicker]="picker" (blur)="checkDate($event)" formControlName="pd_from_date" placeholder="Choose a From date">
<input matInput [max]="todaydate" [matDatepicker]="picker" (blur)="checkDate($event)" formControlName="pd_from_date" placeholder="Choose a From date">
<mat-datepicker-toggle matSuffix [for]="picker"></mat-datepicker-toggle>
<mat-datepicker #picker></mat-datepicker>
</mat-form-field> &nbsp; &nbsp;
<mat-form-field style="width:30%">
<input matInput [matDatepicker]="picker1" [min]="searchForm.get('pd_from_date').value" formControlName="pd_to_date" placeholder="Choose a todate">
<input matInput [max]="todaydate" [matDatepicker]="picker1" [min]="searchForm.get('pd_from_date').value" formControlName="pd_to_date" placeholder="Choose a todate">
<mat-datepicker-toggle matSuffix [for]="picker1"></mat-datepicker-toggle>
<mat-datepicker #picker1></mat-datepicker>
</mat-form-field>

View File

@ -14,3 +14,6 @@
.fontsize{
font-size:14px;
}
.toolbar-space {
flex: 0.01 0 auto;
}

View File

@ -3,6 +3,7 @@ import { PdTrigerService } from './../../../pd-service/pd-triger.service';
import { MatPaginator, MatSort, MatTableDataSource, PageEvent } from '@angular/material';
import { FormGroup, FormBuilder } from '@angular/forms';
import { DatePipe } from '@angular/common';
import { NotifierService } from 'angular-notifier';
@Component({
selector: 'app-completed-pd',
@ -23,7 +24,7 @@ export class CompletedPdComponent implements OnInit, OnChanges {
errorMessage:any[]=[];
tabStatus:string="COMPLETED";
pipe = new DatePipe('en-US');
private notifier: NotifierService;
public dataLengthTab4: number;
public dataSourceTab4 = new MatTableDataSource();
tempStore = new MatTableDataSource();
@ -47,7 +48,8 @@ export class CompletedPdComponent implements OnInit, OnChanges {
pageSize = 10;
pageEvent: PageEvent;
constructor(private _pd: PdTrigerService,public _fb:FormBuilder) {
constructor(private _pd: PdTrigerService,public _fb:FormBuilder,notifier: NotifierService,) {
this.notifier = notifier;
this.searchForm = this._fb.group(
{
@ -205,15 +207,19 @@ export class CompletedPdComponent implements OnInit, OnChanges {
{
this.dataSourceTab4 = res['records'];
}else{
// this.notifier.notify('warning', 'No Records Found');
this.dataSourceTab4 = this.tempStore;
}
})
this.notifier.notify('warning', 'No Records Found !');
this.dataSourceTab4.data = [];
this.dataSourceTab4.paginator = null;
}
},error => {
this.errorMessage.push(error);
this.notifier.notify('warning', 'Something Went Wrong Try Again.!' + '-' + error.error_text + ' occur');
alert(error.html_format);
});
}
onReset(){
this.searchForm.reset();
this.dataSourceTab4 = this.tempStore;
this.dataSourceTab4.paginator = this.paginator;
this.loadPDDetails();
this.xpandStatus = false;
}

View File

@ -528,7 +528,7 @@ export class EditPdMasterComponent implements OnInit {
}
}
}
return;
let my_array = this._EditPDtriggerForm.value;
let concat_landline
if(my_array.lender_stdcode != null && my_array.lender_landline != null){
@ -572,23 +572,23 @@ export class EditPdMasterComponent implements OnInit {
"remarks": my_array.remarks,
}
this._pd.updatePDAddress(my_array.addresses).subscribe(result => {
if (result.status == 200) {
this.notifier.notify('success', 'Address Updated.');
}
else {
this.notifier.notify('warning', 'Something Wents Wrong in Address Try Again.!');
}//else
}, error => {
// this.notifier.notify('warning', 'Something Wents Wrong in Address Try Again.!');
this.notifier.notify('warning', 'Something Wents Wrong in Address Section Try Again.!' + '-' + error.error_text + ' occur');
});
this.disableAfterSubmit = true;
this._pd.editPdMasterDetails(lenderMasterArray, updateStatus).subscribe(result => {
if (result.status == 200) {
this.disableAfterSubmit = false;
this.notifier.notify('success', 'PD Details Updated.');
this.dialogRef.close();
this._pd.updatePDAddress(my_array.addresses).subscribe(result => {
if (result.status == 200) {
this.notifier.notify('success', 'PD Details Updated.');
this.dialogRef.close();
}
else {
this.notifier.notify('success', 'PD Details Updated.');
this.notifier.notify('warning', 'Something Wents Wrong in Address Try Again.!');
}//else
}, error => {
// this.notifier.notify('warning', 'Something Wents Wrong in Address Try Again.!');
this.notifier.notify('warning', 'Something Wents Wrong in Address Section Try Again.!' + '-' + error.error_text + ' occur');
});
}
else {
this.disableAfterSubmit = false;

View File

@ -2,7 +2,12 @@
<mat-expansion-panel [(expanded)]="xpandStatus">
<mat-expansion-panel-header >
<mat-panel-title class="text-xs-left">
<h6 class="mt-0"><mat-icon>filter_list</mat-icon> Filter</h6>
<!-- <h6 class="mt-0"><mat-icon>filter_list</mat-icon> Filter</h6> -->
<mat-toolbar-row>
<mat-icon>filter_list</mat-icon>
<span class="toolbar-space"></span>
<span>Advance Filter</span>
</mat-toolbar-row>
</mat-panel-title>
</mat-expansion-panel-header>
@ -19,12 +24,12 @@
</mat-select>
</mat-form-field> -->
<mat-form-field style="width:30%">
<input matInput [matDatepicker]="picker" (blur)="checkDate($event)" formControlName="pd_from_date" placeholder="Choose a From date">
<input matInput [matDatepicker]="picker" [max]="todaydate" (blur)="checkDate($event)" formControlName="pd_from_date" placeholder="Choose a From date">
<mat-datepicker-toggle matSuffix [for]="picker"></mat-datepicker-toggle>
<mat-datepicker #picker></mat-datepicker>
</mat-form-field> &nbsp; &nbsp;
<mat-form-field style="width:30%">
<input matInput [matDatepicker]="picker1" [min]="searchForm.get('pd_from_date').value" formControlName="pd_to_date" placeholder="Choose a todate">
<input matInput [matDatepicker]="picker1" [max]="todaydate" [min]="searchForm.get('pd_from_date').value" formControlName="pd_to_date" placeholder="Choose a todate">
<mat-datepicker-toggle matSuffix [for]="picker1"></mat-datepicker-toggle>
<mat-datepicker #picker1></mat-datepicker>
</mat-form-field>

View File

@ -13,4 +13,7 @@
}
.fontsize{
font-size:14px;
}
.toolbar-space {
flex: 0.01 0 auto;
}

View File

@ -3,6 +3,7 @@ import { PdTrigerService } from './../../../pd-service/pd-triger.service';
import { MatPaginator, MatSort, MatTableDataSource, PageEvent } from '@angular/material';
import { FormBuilder, FormGroup } from '@angular/forms';
import { DatePipe } from '@angular/common';
import { NotifierService } from 'angular-notifier';
@Component({
selector: 'app-inprogress-pd',
@ -21,6 +22,7 @@ export class InprogressPdComponent implements OnInit, OnChanges {
errorMessage:any[]=[];
tabStatus:string="INPROGRESS";
pipe = new DatePipe('en-US');
private notifier: NotifierService;
public dataLengthTab2: number;
public dataSourceTab2 = new MatTableDataSource();
tempStore = new MatTableDataSource();
@ -41,7 +43,8 @@ export class InprogressPdComponent implements OnInit, OnChanges {
pageSize = 10;
pageEvent: PageEvent;
searchForm:FormGroup;
constructor(private _pd: PdTrigerService,public _fb:FormBuilder) {
constructor(private _pd: PdTrigerService,public _fb:FormBuilder,notifier: NotifierService) {
this.notifier = notifier;
this.searchForm = this._fb.group(
{
@ -83,18 +86,17 @@ export class InprogressPdComponent implements OnInit, OnChanges {
this.dataLengthTab2 = data.records.length;
this.dataSourceTab2.data = this.progressPdListData;
this.tempStore.data = this.progressPdListData;
}
else{
this.progressPdListData=[];
this.dataLengthTab2 = null;
this.recordStatus=true;
}
}
// , error => this.errorMessage = <any> error);
,error => {
this.errorMessage.push(error);
alert(error.html_format);
});
}else{
this.notifier.notify('warning', 'No Records Found !');
this.dataSourceTab2.data = [];
this.dataSourceTab2.paginator = null;
}
},error => {
this.errorMessage.push(error);
this.notifier.notify('warning', 'Something Went Wrong Try Again.!' + '-' + error.error_text + ' occur');
alert(error.html_format);
});
}
pageChange(e) {
console.log(e);
@ -196,17 +198,20 @@ export class InprogressPdComponent implements OnInit, OnChanges {
this.dataSourceTab2 = res['records'];
this.dataSourceTab2.paginator = this.paginator;
}else{
// this.notifier.notify('warning', 'No Records Found');
this.dataSourceTab2 = this.tempStore;
this.dataSourceTab2.paginator = this.paginator;
}
})
this.notifier.notify('warning', 'No Records Found !');
this.dataSourceTab2.data = [];
this.dataSourceTab2.paginator = null;
}
},error => {
this.errorMessage.push(error);
this.notifier.notify('warning', 'Something Went Wrong Try Again.!' + '-' + error.error_text + ' occur');
alert(error.html_format);
});
}
onReset(){
this.searchForm.reset();
this.dataSourceTab2 = this.tempStore;
this.dataSourceTab2.paginator = this.paginator;
this.loadPDDetails();
this.xpandStatus = false;
}

View File

@ -2,7 +2,12 @@
<mat-expansion-panel [(expanded)]="xpandStatus">
<mat-expansion-panel-header>
<mat-panel-title class="text-xs-left">
<h6 class="mt-0"><mat-icon>filter_list</mat-icon> Filter</h6>
<!-- <h6 class="mt-0"><mat-icon>filter_list</mat-icon> Filter</h6> -->
<mat-toolbar-row>
<mat-icon>filter_list</mat-icon>
<span class="toolbar-space"></span>
<span>Advance Filter</span>
</mat-toolbar-row>
</mat-panel-title>
</mat-expansion-panel-header>
@ -19,12 +24,12 @@
</mat-select>
</mat-form-field> -->
<mat-form-field style="width:30%">
<input matInput [matDatepicker]="picker" (blur)="checkDate($event)" formControlName="pd_from_date" placeholder="Choose a From date">
<input matInput [matDatepicker]="picker" [max]="todaydate" (blur)="checkDate($event)" formControlName="pd_from_date" placeholder="Choose a From date">
<mat-datepicker-toggle matSuffix [for]="picker"></mat-datepicker-toggle>
<mat-datepicker #picker></mat-datepicker>
</mat-form-field>&nbsp; &nbsp;
<mat-form-field style="width:30%">
<input matInput [matDatepicker]="picker1" [min]="searchForm.get('pd_from_date').value"formControlName="pd_to_date" placeholder="Choose a todate">
<input matInput [matDatepicker]="picker1" [max]="todaydate" [min]="searchForm.get('pd_from_date').value"formControlName="pd_to_date" placeholder="Choose a todate">
<mat-datepicker-toggle matSuffix [for]="picker1"></mat-datepicker-toggle>
<mat-datepicker #picker1></mat-datepicker>
</mat-form-field>

View File

@ -13,4 +13,7 @@
}
.fontsize{
font-size:14px;
}
.toolbar-space {
flex: 0.01 0 auto;
}

View File

@ -3,6 +3,7 @@ import { PdTrigerService } from './../../../pd-service/pd-triger.service';
import { MatPaginator, MatSort, MatTableDataSource, PageEvent } from '@angular/material';
import { FormBuilder, FormGroup } from '@angular/forms';
import { DatePipe } from '@angular/common';
import { NotifierService } from 'angular-notifier';
@Component({
selector: 'app-qc-completed-pd',
@ -29,6 +30,7 @@ export class QcCompletedPdComponent implements OnInit, OnChanges {
tempStore = new MatTableDataSource();
searchForm: FormGroup;
displayedColumns = ['PDType', 'Name', 'Lenderid', 'Address', 'Status', 'Action'];
private notifier: NotifierService;
@ViewChild(MatPaginator) paginator: MatPaginator;
@ViewChild(MatSort) sort: MatSort;
@ -45,7 +47,8 @@ export class QcCompletedPdComponent implements OnInit, OnChanges {
pageSize = 10;
pageEvent: PageEvent;
constructor(private _pd: PdTrigerService, public _fb: FormBuilder) {
constructor(private _pd: PdTrigerService, public _fb: FormBuilder,notifier: NotifierService,) {
this.notifier = notifier;
this.searchForm = this._fb.group(
{
@ -81,12 +84,6 @@ export class QcCompletedPdComponent implements OnInit, OnChanges {
this.dataSourceTab5.filter = filteredText;
}
onReset(){
this.searchForm.reset();
this.dataSourceTab5 = this.tempStore;
this.dataSourceTab5.paginator = this.paginator;
this.xpandStatus = false;
}
// load inprogress pd list
loadPDDetails() {
@ -190,13 +187,22 @@ export class QcCompletedPdComponent implements OnInit, OnChanges {
if (res['dataStatus'] == true) {
this.dataSourceTab5 = res['records'];
this.dataSourceTab5.paginator = this.paginator;
} else {
console.log('else');
// this.notifier.notify('warning', 'No Records Found');
this.dataSourceTab5 = this.tempStore;
this.dataSourceTab5.paginator = this.paginator;
}
})
}else{
this.notifier.notify('warning', 'No Records Found !');
this.dataSourceTab5.data = [];
this.dataSourceTab5.paginator = null;
}
},error => {
this.errorMessage.push(error);
this.notifier.notify('warning', 'Something Went Wrong Try Again.!' + '-' + error.error_text + ' occur');
alert(error.html_format);
});
}
onReset(){
this.searchForm.reset();
this.loadPDDetails();
this.xpandStatus = false;
}
}

View File

@ -2,7 +2,12 @@
<mat-expansion-panel [(expanded)]="xpandStatus">
<mat-expansion-panel-header>
<mat-panel-title class="text-xs-left">
<h6 class="mt-0"><mat-icon>filter_list</mat-icon> Filter</h6>
<!-- <h6 class="mt-0"><mat-icon>filter_list</mat-icon> Filter</h6> -->
<mat-toolbar-row>
<mat-icon>filter_list</mat-icon>
<span class="toolbar-space"></span>
<span>Advance Filter</span>
</mat-toolbar-row>
</mat-panel-title>
</mat-expansion-panel-header>
@ -19,12 +24,12 @@
</mat-select>
</mat-form-field> -->
<mat-form-field style="width:30%">
<input matInput [matDatepicker]="picker" (blur)="checkDate($event)" formControlName="pd_from_date" placeholder="Choose a From date">
<input matInput [matDatepicker]="picker" [max]="todaydate" (blur)="checkDate($event)" formControlName="pd_from_date" placeholder="Choose a From date">
<mat-datepicker-toggle matSuffix [for]="picker"></mat-datepicker-toggle>
<mat-datepicker #picker></mat-datepicker>
</mat-form-field> &nbsp; &nbsp;
<mat-form-field style="width:30%">
<input matInput [matDatepicker]="picker1" [min]="searchForm.get('pd_from_date').value"formControlName="pd_to_date" placeholder="Choose a todate">
<input matInput [matDatepicker]="picker1" [max]="todaydate" [min]="searchForm.get('pd_from_date').value"formControlName="pd_to_date" placeholder="Choose a todate">
<mat-datepicker-toggle matSuffix [for]="picker1"></mat-datepicker-toggle>
<mat-datepicker #picker1></mat-datepicker>
</mat-form-field>

View File

@ -13,4 +13,7 @@
}
.fontsize{
font-size:14px;
}
.toolbar-space {
flex: 0.01 0 auto;
}

View File

@ -3,6 +3,7 @@ import { PdTrigerService } from './../../../pd-service/pd-triger.service';
import { MatPaginator, MatSort, MatTableDataSource, PageEvent } from '@angular/material';
import { FormBuilder, FormGroup } from '@angular/forms';
import { DatePipe } from '@angular/common';
import { NotifierService } from 'angular-notifier';
@Component({
selector: 'app-scheduled-pd',
@ -24,6 +25,8 @@ export class ScheduledPdComponent implements OnInit, OnChanges {
searchForm:FormGroup;
public dataLengthTab3: number;
public dataSourceTab3 = new MatTableDataSource();
private notifier: NotifierService;
tempStore = new MatTableDataSource();
displayedColumns = ['PDType','Name','Lenderid','Address','Status','Action'];
@ -42,7 +45,8 @@ export class ScheduledPdComponent implements OnInit, OnChanges {
pageSize = 10;
pageEvent: PageEvent;
constructor(private _pd: PdTrigerService,public _fb:FormBuilder) {
constructor(private _pd: PdTrigerService,public _fb:FormBuilder,notifier: NotifierService,) {
this.notifier = notifier;
this.searchForm = this._fb.group(
{
@ -200,17 +204,20 @@ export class ScheduledPdComponent implements OnInit, OnChanges {
this.dataSourceTab3 = res['records'];
this.dataSourceTab3.paginator = this.paginator;
}else{
// this.notifier.notify('warning', 'No Records Found');
this.dataSourceTab3 = this.tempStore;
this.dataSourceTab3.paginator = this.paginator;
}
})
this.notifier.notify('warning', 'No Records Found !');
this.dataSourceTab3.data = [];
this.dataSourceTab3.paginator = null;
}
},error => {
this.errorMessage.push(error);
this.notifier.notify('warning', 'Something Went Wrong Try Again.!' + '-' + error.error_text + ' occur');
alert(error.html_format);
});
}
onReset(){
this.searchForm.reset();
this.dataSourceTab3 = this.tempStore;
this.dataSourceTab3.paginator = this.paginator;
this.loadPDDetails();
this.xpandStatus = false;
}

View File

@ -190,15 +190,16 @@
</mat-tab>
<mat-tab label="Docs">
<ng-template matTabContent>
<ng-template matTabContent>
<div ngxViewer *ngIf="documentsAndFilesList.length>0; else noFiles">
<div fxLayout="row wrap" style="padding:20px;">
<div fxFlex="100">
<div fxFlex="20" class="m-gap p-gap" *ngFor="let doc of documentsAndFilesList">
<div class="p-list-main mb-2" style="width: 60%;height: auto;" *ngIf="doc.document_type != 'pdf'">
<div class="p-list-main mb-2" *ngIf="doc.document_type != 'pdf'">
<div class="p-list">
<div class="top"> <img src="{{doc.document}}" alt="{{doc.document_name}}" style="width: 100%;height: 100%;">
<label *ngIf="doc.document_title != ''" style="font-size: 0.85rem">{{doc.document_title}}</label></div>
<button mat-button color="accent" (click)="imageCrop(doc)" class="mr-1 mb-1 hover-icon" matTooltip="Edit" matTooltipPosition="above" style=" text-align: center;"><mat-icon>edit</mat-icon></button>
</div>
</div>
</div>

View File

@ -13,6 +13,8 @@ import { PdTrigerService } from '../../../../../pd-service/pd-triger.service';
import { TitleCasePipe } from '@angular/common';
import { ImageCropComponent } from '../dialogue/image-crop/image-crop.component';
@Component({
selector: 'app-address',
templateUrl: './address.component.html',
@ -83,6 +85,8 @@ export class AddressComponent implements OnInit {
private _pd: PdTrigerService,
private dialogRef: MatDialogRef<AddressComponent>,
private titlecasePipe:TitleCasePipe,
private dialog: MatDialog,
private imageRef: MatDialogRef<ImageCropComponent>,
@Inject(MAT_DIALOG_DATA) public pd_all_details: any) {
// console.log('pd_all_details',pd_all_details);
this.parent_pdid = this.pd_all_details.pdmaster_details.parent_pd_id;
@ -566,4 +570,44 @@ export class AddressComponent implements OnInit {
}
};
imageCrop(pic){
// let arr = { 'pic_name':pic_name,'pic':pic,'from_id':this.form_id}
const imageRef = this.dialog.open(ImageCropComponent, {
data: pic,
});
imageRef.afterClosed()
.subscribe(dataresult => {
console.log(dataresult);
});
}
// addMoreIndividuals() {
// const imageRef = this.dialog.open(OtherApplicantDetailsComponent, {
// data: '',
// width: '40%',
// disableClose: true
// });
// imageRef.afterClosed()
// .subscribe(dataresult => {
// if (dataresult.data.length > 0) {
// dataresult.data.forEach((element, index) => {
// let individualsControl = <FormArray>this._generalForm.controls['individuals'];
// element.pd_co_applicant_id = this.count;
// this.count = this.count + 1;
// element.individuals_order_id = individualsControl.controls.length + 1;
// element.is_new = true;
// element.is_active = true;
// element.is_main_applicant = false;
// individualsControl.push(this.createIndividulas(element));
// let relationControl = <FormArray>this._generalForm.controls['persons_with_relationships'];
// let applicant_details: any = { 'pd_co_applicant_id': element.pd_co_applicant_id, 'applicant_name': this.titleCase.transform(element.applicant_name), 'relationship': '', 'relation_to': '', 'individuals_order_id': element.individuals_order_id, 'is_active': element.is_active };
// relationControl.push(this.createPersonsWithRelationships(applicant_details,individualsControl.controls.length-1));
// });
// }
// });
// }
}

View File

@ -171,11 +171,13 @@
<br>
<div fxLayout="row" fxLayoutGap="2px" fxLayoutAlign="start none">
<mat-form-field>
<input matInput autocomplete="off" placeholder="No of Years"
<mat-label>Year</mat-label>
<input matInput placeholder="No of years (Eg. 10)" autocomplete="off"
formControlName="vintage_year" OnlyNumber type="text">
</mat-form-field>
<mat-form-field>
<input matInput autocomplete="off" placeholder="No of Months"
<mat-label>Month</mat-label>
<input matInput placeholder="No of months (Eg. 6)" autocomplete="off"
formControlName="vintage_month" OnlyNumber type="text" (change)="ConvertMonthintoYear(itemrow,$event.target.value)">
</mat-form-field>
</div>

View File

@ -45,7 +45,8 @@
<div style="width:95%">
<label style="padding-left:2%">How long has business been operated from this premise?</label>
<mat-form-field>
<input matInput autocomplete="off" placeholder="Year(s)" formControlName="business_years"
<mat-label>Year</mat-label>
<input matInput placeholder="No of years (Eg. 10)" autocomplete="off" formControlName="business_years"
(change)="checkWithExistBusinessYear($event.target.value,i)" OnlyNumber type="text">
<mat-hint style="color: red;">{{yearErrorMessage[i]}}</mat-hint>
<mat-error *ngIf="itemrow.controls['business_years'].hasError('required')">Year Required</mat-error>
@ -53,7 +54,8 @@
Required</mat-error> -->
</mat-form-field>
<mat-form-field>
<input matInput autocomplete="off" placeholder="Month(s)" formControlName="business_month"
<mat-label>Month</mat-label>
<input matInput placeholder="No of months (Eg. 6)" autocomplete="off" formControlName="business_month"
OnlyNumber type="text" (change)="ConvertMonthintoYear($event.target.value,i)">
<mat-hint style="color: red;">{{monthErrorMessage[i]}}</mat-hint>
<!-- <mat-error *ngIf="!_businessAssetsQuesFrom.controls['business_month'].value.valid">Month's

View File

@ -81,7 +81,8 @@
<div fxLayout="row nowrap" class="state-margin">
<mat-form-field style="width: 20%;">
<input matInput placeholder="Year" formControlName="current_business_experiance_year"
<mat-label>Year</mat-label>
<input matInput placeholder="No of years (Eg. 10)" formControlName="current_business_experiance_year"
(keyup)="getWorkExperience(members.value,i)" required autocomplete="off"
OnlyNumber type="text" (change)="checkWithExistBusinessYear($event.target.value,i,members)"
[readonly]="isreadonlyyear[i]">
@ -89,7 +90,8 @@
<mat-error *ngIf="members.controls['current_business_experiance_year'].hasError('required')">Year Required</mat-error>
</mat-form-field>
<mat-form-field style="width: 21%;">
<input matInput placeholder="Month" formControlName="current_business_experiance_month"
<mat-label>Month</mat-label>
<input matInput placeholder="No of months (Eg. 6)" formControlName="current_business_experiance_month"
OnlyNumber type="text" (change)="ConvertMonthintoYear(members,$event.target.value,i)"
autocomplete="off" [readonly]="isreadonlymonth[i]">
<mat-hint style="color: red;">{{monthErrorMessage[i]}}</mat-hint>
@ -1508,7 +1510,7 @@
<mat-error *ngIf="businessForm.controls['seasonality'].hasError('required')">Is The Business Seasonal Required</mat-error>
</mat-form-field>
<mat-form-field style="width: 60%" *ngIf="businessForm.controls['seasonality'].value == 'yes'">
<mat-select multiple placeholder="In Which Period Is Maximum Sale / Service Done "
<mat-select multiple placeholder="Months in which sales/service is low?"
formControlName="peak_period_of_business" required>
<mat-option value="1">January</mat-option>
<mat-option value="2">February</mat-option>

View File

@ -0,0 +1,48 @@
<mat-toolbar class="toolbar">
<mat-toolbar-row>
<mat-icon>crop_original</mat-icon>
<span class="empty-little-spacer"></span>
<h2 mat-dialog-title >{{this.data.document_title}}</h2>
<span class="empty-spacer"></span>
<!-- Buttons -->
<!-- <button mat-button color="accent"><mat-icon>zoom_in</mat-icon></button>-->
<!-- <button mat-button color="accent"><mat-icon>zoom_out</mat-icon></button> -->
<button mat-button class="toolbar-icon" (click)="rotate(1)" class="hover-icon" matTooltip="rotate right" matTooltipPosition="above"><mat-icon>rotate_left</mat-icon></button>
<button mat-button class="toolbar-icon" (click)="rotate(2)" class="hover-icon" matTooltip="rotate left" matTooltipPosition="above"><mat-icon>rotate_right</mat-icon></button>
<button mat-button class="toolbar-icon" (click)="clickToCrop()" class="hover-icon" matTooltip="Click the Image to Crop" matTooltipPosition="above"><mat-icon>crop</mat-icon></button>
<!-- <button mat-button color="accent" class="hover-icon" matTooltip="Click for Image focus " matTooltipPosition="above"><mat-icon>filter_center_focus</mat-icon></button> -->
<!-- <button mat-button color="accent" class="hover-icon" matTooltip="Click for Image fit" matTooltipPosition="above">Fit to screen</button>-->
<!-- <button mat-button color="accent" class="hover-icon" matTooltip="Click for Image ratio" matTooltipPosition="above">1:1</button> -->
<button mat-button class="toolbar-icon" (click)="closeDialogue()" class="hover-icon" matTooltip="Close" matTooltipPosition="right"><mat-icon>close</mat-icon></button>
</mat-toolbar-row>
</mat-toolbar>
<mat-dialog-content>
<div class="card-container">
<div class="container">
<img [src]="baseImage">
</div>
</div>
<div style="text-align:center" *ngIf="cropflag">
<button mat-button color="accent" (click)="crop()">Save</button>
<button mat-button color="accent" (click)="closeDialogue()">Cancel</button>
</div>
<br/>
<div style="text-align:center" *ngIf="cropflag">
<span>Preview - Cropped Image </span>
<br/>
<img [src]="cropImage">
</div>
</mat-dialog-content>
<!-- <mat-card>
<div fxFlex="50" class="pb-0 text-sm-right">
<span><button mat-fab class="mr-1 mb-1 hover-icon" matTooltip="crop" matTooltipPosition="above"><mat-icon>add</mat-icon></button></span>
<span><button mat-fab class="mr-1 mb-1 hover-icon" matTooltip="Edit" matTooltipPosition="above"><mat-icon>add</mat-icon></button></span>
</div>
</mat-card>-->

View File

@ -0,0 +1,25 @@
// flex {
// flex: 1;
// }
.toolbar {
color: #fff !important;
background-color: #e00201 !important;
}
.toolbar-icon {
padding: 0 14px;
color: #fff !important;
}
.empty-spacer {
flex: 1 1 auto;
}
.empty-little-spacer {
flex: 0.01 0 auto;
}
.card-container {
text-align: center;
}

View File

@ -40,13 +40,15 @@
<br>
<div fxLayout="row" fxLayoutGap="2px" fxLayoutAlign="start none">
<mat-form-field>
<input matInput OnlyNumber type="number" autocomplete="off" placeholder="Year"
<mat-label>Year</mat-label>
<input matInput placeholder="No of years (Eg. 10)" OnlyNumber type="number" autocomplete="off"
formControlName="how_long_year" required min='0'>
<mat-error *ngIf="employmentForm.controls.how_long_year.hasError('max')">Higer than business vintage</mat-error>
<mat-error *ngIf="employmentForm.controls['how_long_year'].hasError('required')">Year Required</mat-error>
</mat-form-field>
<mat-form-field>
<input matInput OnlyNumber type="number" autocomplete="off" placeholder="Month"
<mat-label>Month</mat-label>
<input matInput OnlyNumber type="number" autocomplete="off" placeholder="No of months (Eg. 6)"
formControlName="how_long_month" min='0' (change)="ConvertMonthintoYear($event.target.value)">
<mat-error *ngIf="employmentForm.controls.how_long_month.hasError('max')">Higer than business vintage</mat-error>
</mat-form-field>

View File

@ -426,8 +426,8 @@
<input matInput autocomplete="off" placeholder="Net Loss Amount From"
formControlName="estimate_net_loss_from" OnlyNumber type="text"
(change)="calculateLossAmount(i, details);">
<mat-hint align="start" style="font-size:90%" *ngIf="details.get('financial_annual_sale').value != ''">{{"&#8377;"}}
{{details.get('financial_annual_sale').value |
<mat-hint align="start" style="font-size:90%" *ngIf="details.get('estimate_net_loss_from').value != ''">{{"&#8377;"}}
{{details.get('estimate_net_loss_from').value |
numberToWords}} Only</mat-hint>
</mat-form-field>

View File

@ -119,13 +119,15 @@
<mat-card *ngIf="customer_segment_abbr == 'SE-RI'">
<mat-card-title>Number of Years for which rental income is being received</mat-card-title>
<mat-form-field style="width: 20%;">
<input matInput placeholder="Year" formControlName="rental_income_rcv_in_years" autocomplete="off"
<mat-label>Year</mat-label>
<input matInput placeholder="No of years (Eg. 10)" formControlName="rental_income_rcv_in_years" autocomplete="off"
OnlyNumber type="text" required>
<mat-error *ngIf="_generalForm.controls['rental_income_rcv_in_years'].invalid">Please Enter Correct Year</mat-error>
<!-- <mat-error>Please Enter Correct Year</mat-error> -->
</mat-form-field>
<mat-form-field style="width: 20%;">
<input matInput type="text" placeholder="Month" formControlName="rental_income_rcv_in_month"
<mat-label>Month</mat-label>
<input matInput type="text" placeholder="No of months (Eg. 6)" formControlName="rental_income_rcv_in_month"
autocomplete="off" OnlyNumber type="text" (change)="ConvertMonthintoYearforBusiness($event.target.value,'',2)">
</mat-form-field>
</mat-card>
@ -161,13 +163,14 @@
</mat-form-field>
<p>Number of Years For Which The Business Has Been Running</p>
<mat-form-field style="width: 20%;">
<input matInput placeholder="Year" formControlName="business_years" autocomplete="off"
<mat-form-field style="width: 20%;"><mat-label>Year</mat-label>
<input matInput placeholder="No of years (Eg. 10)" formControlName="business_years" autocomplete="off"
OnlyNumber type="text" required>
<mat-error *ngIf="com.controls['business_years'].invalid">Please Enter Correct Year</mat-error>
</mat-form-field>
<mat-form-field style="width: 20%;">
<input matInput type="text" placeholder="Month" formControlName="business_month"
<mat-label>Month</mat-label>
<input matInput type="text" placeholder="No of months (Eg. 6)" formControlName="business_month"
autocomplete="off" OnlyNumber type="text" (change)="ConvertMonthintoYearforBusiness($event.target.value,c,1)">
</mat-form-field>
<mat-form-field style="width: 40%;">

View File

@ -9,6 +9,7 @@ import { ELEMENT_PROBE_PROVIDERS } from '@angular/platform-browser/src/dom/debug
import { DatePipe,TitleCasePipe } from '@angular/common';
import { SearchRelationPipe } from './../../../../../pd-pipes/search-relation.pipe';
import { Options } from 'selenium-webdriver/edge';
import { ImageCropComponent } from '../dialogue/image-crop/image-crop.component';
// import { ImageCropperComponent } from '../dialogue/image-cropper/image-cropper.component';
@Component({
@ -64,7 +65,7 @@ export class GeneralInfoComponent implements OnInit {
/********************** Declaration Section Ends Here *****************/
/** Constructor Section */
constructor(notifier: NotifierService, private _fb: FormBuilder, private _pd: PdTrigerService, private dialog: MatDialog, @Inject(MAT_DIALOG_DATA) public pd_all_details: any, private dialogRef: MatDialogRef<GeneralInfoComponent>,private titleCase:TitleCasePipe) {
constructor(notifier: NotifierService, private _fb: FormBuilder, private _pd: PdTrigerService, private dialog: MatDialog, @Inject(MAT_DIALOG_DATA) public pd_all_details: any, private dialogRef: MatDialogRef<GeneralInfoComponent>,private titleCase:TitleCasePipe,private imageRef: MatDialogRef<ImageCropComponent>) {
this.pdid = this.pd_all_details.pdmaster_details.pd_id;
this.parent_pdid = this.pd_all_details.pdmaster_details.parent_pd_id;
this.notifier = notifier;
@ -366,6 +367,7 @@ export class GeneralInfoComponent implements OnInit {
}
createPersonsWithRelationships(elementValue: any,indexVal:number) {
console.log('elementValue.applicant_name',elementValue.applicant_name);
return this._fb.group({
pd_co_applicant_id: [elementValue.pd_co_applicant_id],
applicant_name: [this.titleCase.transform(elementValue.applicant_name)],
@ -522,6 +524,17 @@ export class GeneralInfoComponent implements OnInit {
}
// add more individuals details
imageCrop(pic,pic_name){
let arr = { 'pic_name':pic_name,'pic':pic,'from_id':this.form_id}
const imageRef = this.dialog.open(ImageCropComponent, {
data: arr,
});
imageRef.afterClosed()
.subscribe(dataresult => {
console.log(dataresult);
});
}
addMoreIndividuals() {
const dialogRef = this.dialog.open(OtherApplicantDetailsComponent, {
data: '',

View File

@ -33,7 +33,7 @@
</mat-form-field>
<mat-form-field style="width: 28%">
<mat-label>Loan Tenure applied for?</mat-label>
<input matInput placeholder="No of months" formControlName="loan_tenure"
<input matInput placeholder="No of months (Eg. 6)" formControlName="loan_tenure"
OnlyNumber type="text" autocomplete="off">
</mat-form-field>
<mat-form-field style="width:64%">

View File

@ -48,11 +48,13 @@
<div fxFlex="80">
<label>As per you how long has this business been in operation?</label>
<mat-form-field *ngIf="!this.isDisplay[n]">
<input matInput autocomplete="off" placeholder="Year(s)" formControlName="how_long_do_know_in_year"
<mat-label>Year</mat-label>
<input matInput placeholder="No of years (Eg. 10)" autocomplete="off" formControlName="how_long_do_know_in_year"
OnlyNumber type="text">
</mat-form-field>
<mat-form-field *ngIf="!this.isDisplay[n]">
<input matInput autocomplete="off" placeholder="Month(s)" formControlName="how_long_do_know_in_month"
<mat-label>Month</mat-label>
<input matInput placeholder="No of months (Eg. 6)" autocomplete="off" formControlName="how_long_do_know_in_month"
OnlyNumber type="text" (change)="ConvertMonthintoYear(neighbourhood,$event.target.value,1)">
</mat-form-field>
</div>
@ -161,11 +163,13 @@
</mat-form-field>
<p #period_paragraph>Period of Relationship</p>
<mat-form-field style="width: 12%">
<input matInput autocomplete="off" placeholder="Year(s)" formControlName="year_relation_applicant"
<mat-label>Year</mat-label>
<input matInput placeholder="No of years (Eg. 10)" autocomplete="off" formControlName="year_relation_applicant"
OnlyNumber type="text">
</mat-form-field>
<mat-form-field style="width: 12%">
<input matInput autocomplete="off" placeholder="Month(s)" formControlName="months_relation_applicant"
<mat-label>Month</mat-label>
<input matInput placeholder="No of months (Eg. 6)" autocomplete="off" formControlName="months_relation_applicant"
OnlyNumber type="text" (change)="ConvertMonthintoYear(reference,$event.target.value,2)">
</mat-form-field>
<mat-form-field style="width: 28%">

View File

@ -82,6 +82,8 @@ import { NeighbourHoodComponent } from './list-pd/start-pd/forms/neighbour-hood/
// import ngx-viewer module
import { NgxViewerModule } from 'ngx-viewer';
import { ResizableModule } from 'angular-resizable-element';
import { FinalRemarksComponent } from './list-pd/start-pd/forms/final-remarks/final-remarks.component';
import { BusinessOtherFamilyMemberComponent } from './list-pd/start-pd/forms/dialogue/business-other-family-member/business-other-family-member.component';
@ -119,6 +121,7 @@ import { ManageDailyPurchaseComponent } from './list-pd/start-pd/forms/assessed-
import { DailyPurchaseDetailsComponent } from './list-pd/start-pd/forms/assessed-income/daily-purchase-details/daily-purchase-details.component';
import { ManageRentalVerificationComponent } from './list-pd/start-pd/forms/rental-verification/manage-rental-verification/manage-rental-verification.component';
import { FuturePlansAndBusinessEnvironmentComponent } from './list-pd/start-pd/forms/future-plans-and-business-environment/future-plans-and-business-environment.component';
import { ImageCropComponent } from './list-pd/start-pd/forms/dialogue/image-crop/image-crop.component';
/**
* Custom angular notifier options
@ -165,7 +168,7 @@ const pdCustomNotifierOptions: NotifierOptions = {
};
@NgModule({
declarations: [TelePdAllocationComponent, FinancialInfoComponent, BusinessInfoComponent, EmploymentInfoComponent, StockComponent, BankingDetailsComponent, ListPdComponent, FamilyDetailsComponent, AddressComponent, ManagePdComponent, MapPdViewComponent, AddPdComponent, ViewPdComponent, PdAllocationComponent, SmartPdAllocationComponent, SchedulePdComponent, EditPdApplicantComponent, EditPdMasterComponent, StartPdComponent, InprogressPdComponent, AllPdComponent, ScheduledPdComponent, CompletedPdComponent, QcCompletedPdComponent, ClientInfoComponent, CurrentLoanComponent, AssetsInfoComponent, LoanDetailsComponent, OtherIncomeComponent, SupplierInfoComponent, PersonalInfoComponent, LenderRepresentativeComponent, PdReportComponent, AssessedIncomeComponent, AllocationViewMoreComponent, PdRequirementComponent, GeneralInfoComponent, ModelEditPdReportComponent, OtherApplicantDetailsComponent, NeighbourHoodComponent, DialogChangeCurrentVenrsion, FinalRemarksComponent, BusinessOtherFamilyMemberComponent, QcReviewComponent, BusinessInfoGroupComponent, SearchRelationPipe, RupeeCurrencyFormatPipe, NumberToWordsPipe, DeleteRecordsCountPipe, BusinessAssetsInfoComponent, BusinessBankingDetailsComponent, SalesDetailsComponent, DailySalesDetailsComponent, SalesCalculationComponent, ManageSalesComponent, PurchaseDetailsComponent, BusinessExpenseDetailsComponent, HouseHoldDetailsComponent, OtherBusinessIncomeDetailsComponent, ManagePurchaseComponent, ManageBusinesExpenseComponent, ManageHouseHoldComponent, ManageOtherBusinessIncomeComponent, GrossProfitCalculationComponent, ManageDailySalesComponent, PdStatusChangeDialogueComponent, PdLocatedMapViewDirective, ViewLocationComponent, GetAnswerableFormsPipe, ConfirmAiDetailsComponent, RentalVerificationComponent, InitiateAdditionalPdComponent ,ManageDailyPurchaseComponent, DailyPurchaseDetailsComponent, ManageRentalVerificationComponent, FuturePlansAndBusinessEnvironmentComponent],
declarations: [TelePdAllocationComponent, FinancialInfoComponent, BusinessInfoComponent, EmploymentInfoComponent, StockComponent, BankingDetailsComponent, ListPdComponent, FamilyDetailsComponent, AddressComponent, ManagePdComponent, MapPdViewComponent, AddPdComponent, ViewPdComponent, PdAllocationComponent, SmartPdAllocationComponent, SchedulePdComponent, EditPdApplicantComponent, EditPdMasterComponent, StartPdComponent, InprogressPdComponent, AllPdComponent, ScheduledPdComponent, CompletedPdComponent, QcCompletedPdComponent, ClientInfoComponent, CurrentLoanComponent, AssetsInfoComponent, LoanDetailsComponent, OtherIncomeComponent, SupplierInfoComponent, PersonalInfoComponent, LenderRepresentativeComponent, PdReportComponent, AssessedIncomeComponent, AllocationViewMoreComponent, PdRequirementComponent, GeneralInfoComponent, ModelEditPdReportComponent, OtherApplicantDetailsComponent, NeighbourHoodComponent, DialogChangeCurrentVenrsion, FinalRemarksComponent, BusinessOtherFamilyMemberComponent, QcReviewComponent, BusinessInfoGroupComponent, SearchRelationPipe, RupeeCurrencyFormatPipe, NumberToWordsPipe, DeleteRecordsCountPipe, BusinessAssetsInfoComponent, BusinessBankingDetailsComponent, SalesDetailsComponent, DailySalesDetailsComponent, SalesCalculationComponent, ManageSalesComponent, PurchaseDetailsComponent, BusinessExpenseDetailsComponent, HouseHoldDetailsComponent, OtherBusinessIncomeDetailsComponent, ManagePurchaseComponent, ManageBusinesExpenseComponent, ManageHouseHoldComponent, ManageOtherBusinessIncomeComponent, GrossProfitCalculationComponent, ManageDailySalesComponent, PdStatusChangeDialogueComponent, PdLocatedMapViewDirective, ViewLocationComponent, GetAnswerableFormsPipe, ConfirmAiDetailsComponent, RentalVerificationComponent, InitiateAdditionalPdComponent ,ManageDailyPurchaseComponent, DailyPurchaseDetailsComponent, ManageRentalVerificationComponent, FuturePlansAndBusinessEnvironmentComponent, ImageCropComponent],
imports: [
CommonModule,
ManagePdRoutingModule,
@ -194,17 +197,17 @@ const pdCustomNotifierOptions: NotifierOptions = {
TreeModule,
MatDatepickerModule,
MatDialogModule,MatSortModule,
NgxMatSelectSearchModule,MatTooltipModule, MatExpansionModule,
NgxMatSelectSearchModule,MatTooltipModule, MatExpansionModule,ResizableModule,
AgmCoreModule.forRoot({apiKey: 'AIzaSyCXsHTus6hyIB8jYvt9ZEIbZve-2vWeQRg'}),OwlDateTimeModule,
OwlNativeDateTimeModule,
],
exports: [PdLocatedMapViewDirective, PdAllocationComponent, SmartPdAllocationComponent, TelePdAllocationComponent, SchedulePdComponent, EditPdApplicantComponent, EditPdMasterComponent, StartPdComponent, CompletedPdComponent, QcCompletedPdComponent, ClientInfoComponent, SupplierInfoComponent, PersonalInfoComponent, CurrentLoanComponent, LoanDetailsComponent, OtherIncomeComponent, AssetsInfoComponent, AddressComponent, FamilyDetailsComponent, BankingDetailsComponent, StockComponent, EmploymentInfoComponent, BusinessInfoComponent, FinancialInfoComponent, LenderRepresentativeComponent, AssessedIncomeComponent, AllocationViewMoreComponent, GeneralInfoComponent, PdRequirementComponent, OtherApplicantDetailsComponent, NeighbourHoodComponent, BusinessOtherFamilyMemberComponent, BusinessInfoGroupComponent,DailySalesDetailsComponent, SalesCalculationComponent, PurchaseDetailsComponent, BusinessExpenseDetailsComponent, HouseHoldDetailsComponent, OtherBusinessIncomeDetailsComponent, ManageSalesComponent, ManagePurchaseComponent, ManageBusinesExpenseComponent, ManageHouseHoldComponent, ManageOtherBusinessIncomeComponent, GrossProfitCalculationComponent, ManageDailySalesComponent, PdStatusChangeDialogueComponent, ViewLocationComponent, ConfirmAiDetailsComponent, RentalVerificationComponent, InitiateAdditionalPdComponent, DailyPurchaseDetailsComponent, ManageDailyPurchaseComponent,ManageRentalVerificationComponent],
exports: [PdLocatedMapViewDirective, PdAllocationComponent, SmartPdAllocationComponent, TelePdAllocationComponent, SchedulePdComponent, EditPdApplicantComponent, EditPdMasterComponent, StartPdComponent, CompletedPdComponent, QcCompletedPdComponent, ClientInfoComponent, SupplierInfoComponent, PersonalInfoComponent, CurrentLoanComponent, LoanDetailsComponent, OtherIncomeComponent, AssetsInfoComponent, AddressComponent, FamilyDetailsComponent, BankingDetailsComponent, StockComponent, EmploymentInfoComponent, BusinessInfoComponent, FinancialInfoComponent, LenderRepresentativeComponent, AssessedIncomeComponent, AllocationViewMoreComponent, GeneralInfoComponent, PdRequirementComponent, OtherApplicantDetailsComponent, NeighbourHoodComponent, BusinessOtherFamilyMemberComponent, BusinessInfoGroupComponent,DailySalesDetailsComponent, SalesCalculationComponent, PurchaseDetailsComponent, BusinessExpenseDetailsComponent, HouseHoldDetailsComponent, OtherBusinessIncomeDetailsComponent, ManageSalesComponent, ManagePurchaseComponent, ManageBusinesExpenseComponent, ManageHouseHoldComponent, ManageOtherBusinessIncomeComponent, GrossProfitCalculationComponent, ManageDailySalesComponent, PdStatusChangeDialogueComponent, ViewLocationComponent, ConfirmAiDetailsComponent, RentalVerificationComponent, InitiateAdditionalPdComponent, DailyPurchaseDetailsComponent, ManageDailyPurchaseComponent,ManageRentalVerificationComponent,ImageCropComponent],
providers: [PdTrigerService, GetGeometricLocationService,{provide: MAT_DATE_LOCALE, useValue: 'en-GB'},
{provide: DateAdapter, useClass: MomentDateAdapter, deps: [MAT_DATE_LOCALE]},
{provide: MAT_DATE_FORMATS, useValue: MAT_MOMENT_DATE_FORMATS}, PdLocatedMapViewDirective],
entryComponents: [PdAllocationComponent, SmartPdAllocationComponent, SchedulePdComponent, EditPdApplicantComponent, EditPdMasterComponent, TelePdAllocationComponent, AllocationViewMoreComponent, PersonalInfoComponent,BusinessAssetsInfoComponent,
ClientInfoComponent, SupplierInfoComponent, CurrentLoanComponent, LoanDetailsComponent, OtherIncomeComponent, AssetsInfoComponent, AddressComponent, FamilyDetailsComponent, BankingDetailsComponent, StockComponent, EmploymentInfoComponent, BusinessInfoComponent, FinancialInfoComponent, LenderRepresentativeComponent, AssessedIncomeComponent, GeneralInfoComponent, PdRequirementComponent, ModelEditPdReportComponent, OtherApplicantDetailsComponent, NeighbourHoodComponent, DialogChangeCurrentVenrsion, FinalRemarksComponent, BusinessOtherFamilyMemberComponent, QcReviewComponent, BusinessInfoGroupComponent,BusinessBankingDetailsComponent, ManageSalesComponent, ManagePurchaseComponent, ManageBusinesExpenseComponent, ManageHouseHoldComponent, ManageOtherBusinessIncomeComponent, ManageDailySalesComponent,PdStatusChangeDialogueComponent, ViewLocationComponent, ConfirmAiDetailsComponent, RentalVerificationComponent, InitiateAdditionalPdComponent, ManageDailyPurchaseComponent,ManageRentalVerificationComponent,FuturePlansAndBusinessEnvironmentComponent],
ClientInfoComponent, SupplierInfoComponent, CurrentLoanComponent, LoanDetailsComponent, OtherIncomeComponent, AssetsInfoComponent, AddressComponent, FamilyDetailsComponent, BankingDetailsComponent, StockComponent, EmploymentInfoComponent, BusinessInfoComponent, FinancialInfoComponent, LenderRepresentativeComponent, AssessedIncomeComponent, GeneralInfoComponent, PdRequirementComponent, ModelEditPdReportComponent, OtherApplicantDetailsComponent, NeighbourHoodComponent, DialogChangeCurrentVenrsion, FinalRemarksComponent, BusinessOtherFamilyMemberComponent, QcReviewComponent, BusinessInfoGroupComponent,BusinessBankingDetailsComponent, ManageSalesComponent, ManagePurchaseComponent, ManageBusinesExpenseComponent, ManageHouseHoldComponent, ManageOtherBusinessIncomeComponent, ManageDailySalesComponent,PdStatusChangeDialogueComponent, ViewLocationComponent, ConfirmAiDetailsComponent, RentalVerificationComponent, InitiateAdditionalPdComponent, ManageDailyPurchaseComponent,ManageRentalVerificationComponent,FuturePlansAndBusinessEnvironmentComponent,ImageCropComponent],
})
export class ManagePdModule {
}
}

View File

@ -87,6 +87,10 @@ export class PdTrigerService {
});
}
getBlobImage(imageUrl: string): Observable<Blob> {
return this._http.get(imageUrl, { responseType: 'blob' });
}
/* To get addresses From T_PD_ADDRESS table.,
* Used In 1) edit pd trigger component
* 2) Address Form