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