import { Injectable } from '@angular/core';
import { HttpClient } from '@angular/common/http';
import { Aeropuerto } from '../interfaces/aeropuertos.interfaces';
import { Observable } from 'rxjs';

@Injectable({
  providedIn: 'root'
})
export class AeropuertosService {

  private baseUrl: string = "http://localhost:8080/aeropuertos";

  constructor(private httpClient: HttpClient) { }
  
  getAeropuertos(): Observable<Aeropuerto[]>{
    return this.httpClient.get<Aeropuerto[]>(`${ this.baseUrl }/listar`);
  }

  getAeropuerto(id: number): Observable<Aeropuerto>{
    return this.httpClient.get<Aeropuerto>(`${ this.baseUrl }/byId/${ id }`);
  }

  addAeropuerto(aeropuerto: Aeropuerto): Observable<Object>{
    return this.httpClient.post(this.baseUrl+"/agregar",aeropuerto);
  }

  updateAeropuerto(id: number,aeropuerto:Aeropuerto):Observable<Object>{
    return this.httpClient.put(`${this.baseUrl+ "/actualizar"}/${id}`,aeropuerto);
  }

  deleteAeropuerto(id: number):Observable<Object>{
    return this.httpClient.delete(`${this.baseUrl+ "/eliminar"}/${id}`);
  }

}
