diff --git a/frontend/src/pages/Dashboard.tsx b/frontend/src/pages/Dashboard.tsx index 67aae3a..eb1b8fa 100644 --- a/frontend/src/pages/Dashboard.tsx +++ b/frontend/src/pages/Dashboard.tsx @@ -16,34 +16,48 @@ import { useState } from "react" import { Eye, ArrowUpDown } from "lucide-react" import { Button } from "@/components/ui/button" -type Product = { - title: string - width?: number - height?: number - year?: string - dateAcquisition: string - artist: { - firstName?: string - lastName: string - } - imageName?: string - client?: { - url: string - } -} +export default function Purchases() { + const { data: purchases = [], isLoading: purchasesLoading } = useQuery({ + queryKey: ['purchases'], + queryFn: () => purchaseService.getAll() + }) -type PurchaseProduct = { - product: Product -} + const { data: clients = [], isLoading: clientsLoading } = useQuery({ + queryKey: ['clients'], + queryFn: clientService.getAll + }) -interface Purchase { - products: PurchaseProduct[] - customer: { - id: number - contactFirstName: string - contactLastName: string - } - amountTotal: number + const [selectedClient, setSelectedClient] = useState('all') + + const filteredPurchases = selectedClient === 'all' + ? purchases + : purchases.filter((p: Purchase) => p.customer.name === selectedClient) + + if (purchasesLoading || clientsLoading) return
Chargement...
+ + return ( +
+
+ +
+ +
+ ) } const columns: ColumnDef[] = [ @@ -131,48 +145,4 @@ const columns: ColumnDef[] = [ } ] -export default function Purchases() { - const { data: purchases = [], isLoading: purchasesLoading } = useQuery({ - queryKey: ['purchases'], - queryFn: purchaseService.getAll - }) - - const { data: clients = [], isLoading: clientsLoading } = useQuery({ - queryKey: ['clients'], - queryFn: clientService.getAll - }) - - const [selectedClient, setSelectedClient] = useState('all') - - const filteredPurchases = selectedClient === 'all' - ? purchases - : purchases.filter(p => p.customer.id === parseInt(selectedClient)) - - if (purchasesLoading || clientsLoading) return
Chargement...
- - return ( -
-
- -
- -
- ) -} - diff --git a/frontend/src/services/purchase.service.ts b/frontend/src/services/purchase.service.ts index fdeef87..299ac23 100644 --- a/frontend/src/services/purchase.service.ts +++ b/frontend/src/services/purchase.service.ts @@ -14,12 +14,21 @@ export type Purchase = { product: { code: string title: string + width: number + height: number + year: string + dateAcquisition: string + imageName: string + client: { + url: string + } artist: { firstName: string lastName: string } } acquisitionPrice: number + dateAcquisition: string }> } diff --git a/frontend/tsconfig.app.tsbuildinfo b/frontend/tsconfig.app.tsbuildinfo new file mode 100644 index 0000000..a2a9d51 --- /dev/null +++ b/frontend/tsconfig.app.tsbuildinfo @@ -0,0 +1 @@ +{"root":["./src/app.tsx","./src/main.tsx","./src/vite-env.d.ts","./src/components/header.tsx","./src/components/table.tsx","./src/components/theme-provider.tsx","./src/components/ui/button.tsx","./src/components/ui/card.tsx","./src/components/ui/dropdown-menu.tsx","./src/components/ui/input.tsx","./src/components/ui/label.tsx","./src/components/ui/select.tsx","./src/components/ui/table.tsx","./src/lib/utils.ts","./src/pages/dashboard.tsx","./src/pages/login.tsx","./src/services/auth.service.ts","./src/services/client.service.ts","./src/services/purchase.service.ts"],"version":"5.6.3"} \ No newline at end of file