Broker System for Supercredit
Nevar pievienot vairāk kā 25 tēmas Tēmai ir jāsākas ar burtu vai ciparu, tā var saturēt domu zīmes ('-') un var būt līdz 35 simboliem gara.

54 rindas
2.2KB

  1. import { Component, OnInit } from '@angular/core';
  2. import {LoanSummaryService} from '../service/loan_summary.service';
  3. import {SessionService} from '../service/session.service';
  4. import {AppConfig} from '../app.config';
  5. import {CompositeFilterDescriptor, SortDescriptor} from '@progress/kendo-data-query';
  6. import {PageChangeEvent} from '@progress/kendo-angular-listview';
  7. @Component({
  8. selector: 'app-loan-row-list',
  9. templateUrl: './loan-row-list.component.html',
  10. styleUrls: ['./loan-row-list.component.scss']
  11. })
  12. export class LoanRowListComponent implements OnInit {
  13. public allLoans: LoanSummaryService;
  14. public skip: number = 0
  15. public take: number = 5;
  16. constructor(private lss: LoanSummaryService, private ss: SessionService, private config: AppConfig) { }
  17. ngOnInit(): void {
  18. this.allLoans = this.lss;
  19. this.LoadLoansForCurrentUser()
  20. }
  21. public LoadLoansForCurrentUser() {
  22. let people = this.ss.loggedIn.User;
  23. const sort: Array <SortDescriptor> = [{dir: 'desc', field: 'Settlement'}];
  24. if ( this.ss.loggedIn.role.toLowerCase() == 'admin' || this.ss.loggedIn.role.toLowerCase() == 'manager' ){
  25. const filter: CompositeFilterDescriptor = {logic: 'and', filters: [] };
  26. this.lss.query({ skip: this.skip, take: this.take, sort, filter});
  27. }else{ // load broker's loans
  28. const filter: CompositeFilterDescriptor = {logic: 'or', filters: [] };
  29. filter.filters.push({field:'client_ids', operator: 'contains', value: people.Id, ignoreCase: true})
  30. filter.filters.push({field:'broker_ids', operator: 'contains', value: people.Id, ignoreCase: true})
  31. filter.filters.push({field:'other_rewarder_ids', operator: 'contains', value: people.Id, ignoreCase: true})
  32. this.lss.query({ skip: this.skip, take: this.take, sort, filter});
  33. }
  34. }
  35. public handleFilterChange(query: string): void {
  36. const normalizedQuery = query.toLowerCase();
  37. const filterExpession = (item) =>
  38. item.productName.toLowerCase().indexOf(normalizedQuery) !== -1 ||
  39. item.categoryName.toLowerCase().indexOf(normalizedQuery) !== -1;
  40. console.log(normalizedQuery, filterExpession);
  41. }
  42. public handlePageChange( event: PageChangeEvent) {
  43. this.skip = event.skip;
  44. this.take = event.take;
  45. this.LoadLoansForCurrentUser();
  46. }
  47. }