diff --git a/attached_assets/image_1752086995593.png b/attached_assets/image_1752086995593.png new file mode 100644 index 0000000..f3a06dc Binary files /dev/null and b/attached_assets/image_1752086995593.png differ diff --git a/client/src/components/NewSaleForm.tsx b/client/src/components/NewSaleForm.tsx index 4c61248..0b81921 100644 --- a/client/src/components/NewSaleForm.tsx +++ b/client/src/components/NewSaleForm.tsx @@ -57,11 +57,13 @@ export default function NewSaleForm() { const availableCategories = typeArticle ? ARTICLE_CATEGORY_MAPPING[typeArticle as keyof typeof ARTICLE_CATEGORY_MAPPING] || [] : []; const createSaleMutation = useMutation({ - mutationFn: (saleData: any) => - apiRequest('/api/sales', { + mutationFn: async (saleData: any) => { + const response = await apiRequest('/api/sales', { method: 'POST', body: JSON.stringify(saleData), - }), + }); + return response.json(); + }, onSuccess: () => { queryClient.invalidateQueries({ queryKey: ['/api/sales'] }); toast({ diff --git a/client/src/components/SalesHistory.tsx b/client/src/components/SalesHistory.tsx index a341d55..edbf60d 100644 --- a/client/src/components/SalesHistory.tsx +++ b/client/src/components/SalesHistory.tsx @@ -22,17 +22,20 @@ export default function SalesHistory({ canDelete = false }: SalesHistoryProps) { const [endDate, setEndDate] = useState(''); // Query for sales - const { data: sales = [], isLoading } = useQuery({ + const { data: salesData, isLoading } = useQuery({ queryKey: ['/api/sales', startDate, endDate], - queryFn: () => { + queryFn: async () => { const params = new URLSearchParams(); if (startDate) params.append('startDate', startDate); if (endDate) params.append('endDate', endDate); const queryString = params.toString(); - return apiRequest(`/api/sales${queryString ? `?${queryString}` : ''}`); + const response = await apiRequest(`/api/sales${queryString ? `?${queryString}` : ''}`); + return response.json(); }, }); + const sales = Array.isArray(salesData) ? salesData : []; + // Delete mutation const deleteSaleMutation = useMutation({ mutationFn: (saleId: number) =>