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:
2025-10-28 11:45:51 -03:00
parent 2c44081e5d
commit 8e783b73d5
18 changed files with 4899 additions and 3 deletions

View 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);
};