| 1234567891011121314151617181920212223242526272829303132333435363738394041424344 |
- import { Injectable } from '@angular/core';
- import { HttpClient } from '@angular/common/http';
- import { environment } from '@environments/environment';
- import { User } from '@app/models';
- import { Observable } from 'rxjs/internal/Observable';
- import { throwError } from 'rxjs/internal/observable/throwError';
- import { map, catchError } from 'rxjs/operators';
- @Injectable({ providedIn: 'root' })
- export class UserService {
- constructor(private http: HttpClient) { }
- getAllUsers() {
- return this.http.get<User[]>(`${environment.productionApiUrl}/users`);
- }
- getById(id: number) {
- return this.http.get<User>(`${environment.apiUrl}/users/${id}`);
- }
- createUser(user: { first_name :string, last_name :string,
- email :string, role :string }): Observable<boolean> {
- return this.http.post<any>(`${environment.productionApiUrl}/organizations`, user)
- .pipe(
- map(response => {
- return response;
- }),
- catchError(this.errorHandl)
- )
- }
- errorHandl(error) {
- let errorMessage = '';
- if(error.error instanceof ErrorEvent) {
- // Get client-side error
- errorMessage = error.error.message;
- } else {
- // Get server-side error
- errorMessage = `Error Code: ${error.status}\nMessage: ${error.message}`;
- }
- return throwError(errorMessage);
- }
- }
|