diff --git a/src/app/admin/clients/[id]/page.tsx b/src/app/admin/clients/[id]/page.tsx index 13718a8..95badfa 100644 --- a/src/app/admin/clients/[id]/page.tsx +++ b/src/app/admin/clients/[id]/page.tsx @@ -1,12 +1,5 @@ import { notFound } from "next/navigation"; -import { getClientFullDetail } from "@/lib/admin-queries"; -import { Tabs, TabsContent, TabsList, TabsTrigger } from "@/components/ui/tabs"; -import { PhasesTab } from "@/components/admin/tabs/PhasesTab"; -import { PaymentsTab } from "@/components/admin/tabs/PaymentsTab"; -import { DocumentsTab } from "@/components/admin/tabs/DocumentsTab"; -import { CommentsTab } from "@/components/admin/tabs/CommentsTab"; -import { QuoteTab } from "@/components/admin/tabs/QuoteTab"; -import { PhasesViewToggle } from "@/components/admin/kanban/PhasesViewToggle"; +import { getClientWithProjects } from "@/lib/admin-queries"; import { ClientActions } from "@/components/admin/ClientActions"; import Link from "next/link"; @@ -18,10 +11,12 @@ export default async function ClientDetailPage({ params: Promise<{ id: string }>; }) { const { id } = await params; - const detail = await getClientFullDetail(id); - if (!detail) notFound(); + const data = await getClientWithProjects(id); + if (!data) notFound(); - const { client, phases, payments, documents, comments, quoteItems, activeServices } = detail; + const { projects, ...client } = data; + const activeProjects = projects.filter((p) => !p.archived); + const archivedProjects = projects.filter((p) => p.archived); return (
Nessun progetto ancora per questo cliente.
+ + + Crea il primo progetto + ++ {project.accepted_total && parseFloat(project.accepted_total) > 0 + ? `€${parseFloat(project.accepted_total).toLocaleString("it-IT", { minimumFractionDigits: 2 })}` + : "Preventivo non impostato"} +
+ + ))} ++ Archiviati ({archivedProjects.length}) +
+Archiviato
+ + ))} +Crea un nuovo progetto per un cliente esistente.
+Nessun progetto ancora. Creane uno dal dettaglio di un cliente.
+| Progetto | +Valore | +Acconto | +Saldo | +Timer | +€/h | +
|---|
{client.brand_name}
+ {client.projectBrands && client.projectBrands.length > 0 ? ( +{client.projectBrands.join(" | ")}
+ ) : ( +{client.brand_name}
+ )} {client.archived && ( Archiviato @@ -30,7 +34,7 @@ export function ClientRow({ client }: { client: ClientWithPayments }) { )}