Files
HoruxDespachosNuevo/apps/web/lib/hooks/use-tareas-mis.ts
Horux Dev bba000d308 feat: pagina /tareas + quitar completar obligaciones fiscales
- Nueva pagina /tareas para ver y marcar tareas operativas
- Endpoint GET /tareas/mis-tareas con periodo actual
- Quitado boton de marcar completada de obligaciones fiscales en /pendientes
2026-05-23 23:41:28 +00:00

38 lines
1.1 KiB
TypeScript

import { useQuery, useMutation, useQueryClient } from '@tanstack/react-query';
import { getMisTareas } from '../api/tareas-mis';
import { apiClient } from '../api/client';
export function useMisTareas() {
return useQuery({
queryKey: ['tareas-mis-tareas'],
queryFn: getMisTareas,
});
}
export function useCompletarTareaPeriodo() {
const qc = useQueryClient();
return useMutation({
mutationFn: (periodoId: string) =>
apiClient.post(`/tareas/periodo/${periodoId}/completar`).then(r => r.data),
onSuccess: () => {
qc.invalidateQueries({ queryKey: ['tareas-mis-tareas'] });
qc.invalidateQueries({ queryKey: ['tareas'] });
},
onError: (err: any) => {
alert(err.response?.data?.message || 'No se pudo marcar como completada');
},
});
}
export function useDescompletarTareaPeriodo() {
const qc = useQueryClient();
return useMutation({
mutationFn: (periodoId: string) =>
apiClient.delete(`/tareas/periodo/${periodoId}/completar`).then(r => r.data),
onSuccess: () => {
qc.invalidateQueries({ queryKey: ['tareas-mis-tareas'] });
qc.invalidateQueries({ queryKey: ['tareas'] });
},
});
}