Optimize search for loan and client

This commit is contained in:
Peter Bagrij
2023-12-07 10:16:08 +01:00
committed by Arnold Gálovics
parent 3a53236516
commit 363806286a
6 changed files with 53 additions and 12 deletions
@@ -169,7 +169,7 @@ export class LoanApprovalComponent {
} }
loanResource() { loanResource() {
this.tasksService.getAllLoans().subscribe((response: any) => { this.tasksService.getAllLoansToBeApproved().subscribe((response: any) => {
this.loans = response.pageItems; this.loans = response.pageItems;
this.loans = this.loans.filter((account: any) => { this.loans = this.loans.filter((account: any) => {
return (account.status.waitingForDisbursal === true); return (account.status.waitingForDisbursal === true);
@@ -122,7 +122,7 @@ export class LoanDisbursalComponent {
} }
loanResource() { loanResource() {
this.tasksService.getAllLoans().subscribe((response: any) => { this.tasksService.getAllLoansToBeDisbursed().subscribe((response: any) => {
this.loans = response.pageItems; this.loans = response.pageItems;
this.loans = this.loans.filter((account: any) => { this.loans = this.loans.filter((account: any) => {
return (account.status.waitingForDisbursal === true); return (account.status.waitingForDisbursal === true);
@@ -12,7 +12,7 @@ import { TasksService } from '../tasks.service';
* Loans data resolver. * Loans data resolver.
*/ */
@Injectable() @Injectable()
export class GetLoans implements Resolve<Object> { export class GetLoansToBeApproved implements Resolve<Object> {
/** /**
* @param {TasksService} tasksService Tasks service. * @param {TasksService} tasksService Tasks service.
@@ -24,7 +24,7 @@ export class GetLoans implements Resolve<Object> {
* @returns {Observable<any>} * @returns {Observable<any>}
*/ */
resolve(): Observable<any> { resolve(): Observable<any> {
return this.tasksService.getAllLoans(); return this.tasksService.getAllLoansToBeApproved();
} }
} }
@@ -0,0 +1,30 @@
/** Angular Imports */
import { Injectable } from '@angular/core';
import { Resolve } from '@angular/router';
/** rxjs Imports */
import { Observable } from 'rxjs';
/** Custom Services */
import { TasksService } from '../tasks.service';
/**
* Loans data resolver.
*/
@Injectable()
export class GetLoansToBeDisbursed implements Resolve<Object> {
/**
* @param {TasksService} tasksService Tasks service.
*/
constructor(private tasksService: TasksService) { }
/**
* Returns all the loans data.
* @returns {Observable<any>}
*/
resolve(): Observable<any> {
return this.tasksService.getAllLoansToBeDisbursed();
}
}
+6 -4
View File
@@ -18,7 +18,8 @@ import { ViewCheckerInboxComponent } from './view-checker-inbox/view-checker-inb
import { GetMakerCheckers } from './common-resolvers/getmakercheckers.resolver'; import { GetMakerCheckers } from './common-resolvers/getmakercheckers.resolver';
import { GetGroupedClientsData } from './common-resolvers/getGroupedClientsData.resolver'; import { GetGroupedClientsData } from './common-resolvers/getGroupedClientsData.resolver';
import { GetOffices } from './common-resolvers/getOffices.resolver'; import { GetOffices } from './common-resolvers/getOffices.resolver';
import { GetLoans } from './common-resolvers/getLoans.resolver'; import { GetLoansToBeApproved } from './common-resolvers/getLoansToBeApproved.resolver';
import { GetLoansToBeDisbursed } from './common-resolvers/getLoansToBeDisbursed.resolver';
import { GetRescheduleLoans } from './common-resolvers/getRescheduleLoans.resolver'; import { GetRescheduleLoans } from './common-resolvers/getRescheduleLoans.resolver';
import { MakerCheckerTemplate } from './common-resolvers/makerCheckerTemplate.resolver'; import { MakerCheckerTemplate } from './common-resolvers/makerCheckerTemplate.resolver';
import { GetCheckerInboxDetailResolver } from './common-resolvers/getCheckerInboxDetail.resolver'; import { GetCheckerInboxDetailResolver } from './common-resolvers/getCheckerInboxDetail.resolver';
@@ -54,7 +55,7 @@ const routes: Routes = [
data: { title: 'Laon Approval' }, data: { title: 'Laon Approval' },
resolve: { resolve: {
officesData: GetOffices, officesData: GetOffices,
loansData: GetLoans loansData: GetLoansToBeApproved
}, },
}, },
{ {
@@ -62,7 +63,7 @@ const routes: Routes = [
component: LoanDisbursalComponent, component: LoanDisbursalComponent,
data: { title: 'Loan Disbursal' }, data: { title: 'Loan Disbursal' },
resolve: { resolve: {
loansData: GetLoans loansData: GetLoansToBeDisbursed
} }
}, },
{ {
@@ -98,7 +99,8 @@ const routes: Routes = [
GetMakerCheckers, GetMakerCheckers,
GetGroupedClientsData, GetGroupedClientsData,
GetOffices, GetOffices,
GetLoans, GetLoansToBeApproved,
GetLoansToBeDisbursed,
GetRescheduleLoans, GetRescheduleLoans,
MakerCheckerTemplate, MakerCheckerTemplate,
GetCheckerInboxDetailResolver GetCheckerInboxDetailResolver
+13 -4
View File
@@ -48,7 +48,7 @@ export class TasksService {
*/ */
getGroupedClientsData(): Observable<any> { getGroupedClientsData(): Observable<any> {
const httpParams = new HttpParams().set('limit', '1000') const httpParams = new HttpParams().set('limit', '1000')
.set('sqlSearch', 'c.status_enum=100'); .set('status', 'PENDING');
return this.http.get('/clients', { params: httpParams}); return this.http.get('/clients', { params: httpParams});
} }
@@ -60,11 +60,20 @@ export class TasksService {
} }
/** /**
* Get all Loans Data * Get all loans to be approved
*/ */
getAllLoans(): Observable<any> { getAllLoansToBeApproved(): Observable<any> {
const httpParams = new HttpParams().set('limit', '1000') const httpParams = new HttpParams().set('limit', '1000')
.set('sqlSearch', 'l.loan_status_id in (100,200)'); .set('status', '100');
return this.http.get('/loans', { params: httpParams });
}
/**
* Get all loans to be created
*/
getAllLoansToBeDisbursed(): Observable<any> {
const httpParams = new HttpParams().set('limit', '1000')
.set('status', '200');
return this.http.get('/loans', { params: httpParams }); return this.http.get('/loans', { params: httpParams });
} }