first commit

This commit is contained in:
rodrigo committed 2025-04-10 23:07:21 -03:00
commit c9fb67e751
423 files changed
+53287

No files matched your search

+80
View File
@@ -0,0 +1,80 @@
import { useQuery, useMutation, useQueryClient } from 'react-query';
import api from '../services/api';
import { Processo } from '../types/entities';
export const useProcessos = () => {
const queryClient = useQueryClient();
const { data: processos = [], isLoading } = useQuery<Processo[]>(
'processos',
async () => {
const response = await api.get('/processos');
return response.data;
}
);
const getProcesso = async (id: string) => {
const response = await api.get(`/processos/${id}`);
return response.data;
};
// Corrigido para usar createProcesso como mutação
const createProcesso = useMutation(
async (data: Partial<Processo>) => {
const response = await api.post('/processos', data);
return response.data;
},
{
onSuccess: () => {
queryClient.invalidateQueries('processos');
}
}
);
// Corrigido para usar updateProcesso como mutação
const updateProcesso = useMutation(
async ({ id, data }: { id: string; data: Partial<Processo> }) => {
const response = await api.put(`/processos/${id}`, data);
return response.data;
},
{
onSuccess: () => {
queryClient.invalidateQueries('processos');
}
}
);
// Corrigido para usar deleteProcesso como mutação
const deleteProcesso = useMutation(
async (id: string) => {
await api.delete(`/processos/${id}`);
},
{
onSuccess: () => {
queryClient.invalidateQueries('processos');
}
}
);
const updateResultado = useMutation(
async ({ id, resultado }: { id: string; resultado: string }) => {
const response = await api.patch(`/processos/${id}/resultado`, { resultado });
return response.data;
},
{
onSuccess: () => {
queryClient.invalidateQueries('processos');
}
}
);
return {
processos,
isLoading,
getProcesso,
createProcesso,
updateProcesso,
deleteProcesso, // Retornando a mutação
updateResultado
};
};