Broker System for Supercredit
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

48 lines
1.9KB

  1. import {Injectable} from '@angular/core';
  2. import {HttpClient, HttpParams} from '@angular/common/http';
  3. import {AuthService} from './auth.service';
  4. import {Observable} from 'rxjs';
  5. import {PeopleModel} from '../models/people.model';
  6. import {BrokerModel} from '../models/broker.model';
  7. import {LoanModel} from '../models/loan.model';
  8. import {ChangePassword} from '../models/change-password.model';
  9. @Injectable({providedIn: 'root'})
  10. export class PeopleService {
  11. constructor(private http: HttpClient, private auth: AuthService ){ }
  12. public getPeopleById(id: string): Observable<PeopleModel> {
  13. return this.http.get<PeopleModel>(this.auth.getUrl('people/' + id));
  14. }
  15. public getPeopleList(filter: string): Observable<{Count: number, List: PeopleModel[]}> {
  16. const params = new HttpParams().set('filter', filter);
  17. return this.http.get<{Count: number, List: PeopleModel[]}>(this.auth.getUrl( 'people-list/'), { params});
  18. }
  19. public getBrokerList(filter: string): Observable<{Count: number, List: BrokerModel[]}> {
  20. const params = new HttpParams().set('filter', filter);
  21. return this.http.get<{Count: number, List: BrokerModel[]}>(this.auth.getUrl( 'broker-list/'), { params});
  22. }
  23. public syncPeople(loan: LoanModel): Observable<boolean> {
  24. return this.http.post<boolean>(this.auth.getUrl('sync-people/'), loan);
  25. }
  26. public updateAvatar(avatar: string, id: string ): Observable<boolean> {
  27. return this.http.post<boolean>(this.auth.getUrl('avatar/' + id), avatar);
  28. }
  29. public savePassword(id: string, change: ChangePassword): Observable<boolean>{
  30. return this.http.post<boolean>(this.auth.getUrl('change-pass/' + id), change);
  31. }
  32. public saveBroker(broker: BrokerModel): Observable<BrokerModel>{
  33. return this.http.post<BrokerModel>(this.auth.getUrl('broker/' + broker.Id), broker);
  34. }
  35. public saveUser(people: PeopleModel): Observable<BrokerModel>{
  36. return this.http.post<BrokerModel>(this.auth.getUrl('people/' + people.Id), people);
  37. }
  38. }