Fase 2: Creación del frontend con React, Vite y MUI. Implementada tabla de titulares con funcionalidad de arrastrar y soltar.
This commit is contained in:
33
frontend/src/services/apiService.ts
Normal file
33
frontend/src/services/apiService.ts
Normal file
@@ -0,0 +1,33 @@
|
||||
// frontend/src/services/apiService.ts
|
||||
|
||||
import axios from 'axios';
|
||||
import type { Titular } from '../types';
|
||||
|
||||
// La URL base de nuestra API. Ajusta el puerto si es diferente.
|
||||
const API_URL = 'https://localhost:5174/api';
|
||||
|
||||
const apiClient = axios.create({
|
||||
baseURL: API_URL,
|
||||
headers: {
|
||||
'Content-Type': 'application/json',
|
||||
},
|
||||
});
|
||||
|
||||
export const obtenerTitulares = async (): Promise<Titular[]> => {
|
||||
const response = await apiClient.get('/titulares');
|
||||
return response.data;
|
||||
};
|
||||
|
||||
export const eliminarTitular = async (id: number): Promise<void> => {
|
||||
await apiClient.delete(`/titulares/${id}`);
|
||||
};
|
||||
|
||||
// DTO para el reordenamiento
|
||||
interface ReordenarPayload {
|
||||
id: number;
|
||||
nuevoOrden: number;
|
||||
}
|
||||
|
||||
export const actualizarOrdenTitulares = async (payload: ReordenarPayload[]): Promise<void> => {
|
||||
await apiClient.put('/titulares/reordenar', payload);
|
||||
};
|
||||
Reference in New Issue
Block a user