From e0ddbbc50dc18fa0694bb5ca33878753bdf8e2e4 Mon Sep 17 00:00:00 2001 From: Naytitorn Chaovirachot Date: Fri, 1 Nov 2024 01:36:32 +0700 Subject: [PATCH 1/5] connect some detail number component to database --- src/app/(investment)/deals/[id]/page.tsx | 33 +++++++++++------ src/app/api/dealApi.ts | 30 ++++++++++------ src/app/dashboard/hook.ts | 10 ++++-- src/app/project/apply/page.tsx | 2 +- src/lib/data/projectQuery.ts | 45 +++++++++++++----------- 5 files changed, 75 insertions(+), 45 deletions(-) diff --git a/src/app/(investment)/deals/[id]/page.tsx b/src/app/(investment)/deals/[id]/page.tsx index 6f1181a..8eac7cb 100644 --- a/src/app/(investment)/deals/[id]/page.tsx +++ b/src/app/(investment)/deals/[id]/page.tsx @@ -13,12 +13,28 @@ import { createSupabaseClient } from "@/lib/supabase/serverComponentClient"; import FollowShareButtons from "./followShareButton"; import { getProjectData } from "@/lib/data/projectQuery"; +import { getDealList } from "@/app/api/dealApi"; export default async function ProjectDealPage({ params }: { params: { id: number } }) { const supabase = createSupabaseClient(); const { data: projectData, error: projectDataError } = await getProjectData(supabase, params.id); + if (!projectData) { + return
No data available
; + } + + if (projectDataError) { + return
Error
; + } + + // console.log(projectData); + + const projectBusinessOwnerId = projectData.business.user_id; + // console.log(projectBusinessOwnerId); + const dealData = await getDealList(projectBusinessOwnerId); + // console.log(dealData); + const carouselData = [ { src: "/boiler1.jpg", alt: "Boiler 1" }, { src: "/boiler1.jpg", alt: "Boiler 1" }, @@ -27,10 +43,6 @@ export default async function ProjectDealPage({ params }: { params: { id: number { src: "/boiler1.jpg", alt: "Boiler 1" }, ]; - if (projectDataError) { - return
Error
; - } - return (
@@ -82,8 +94,9 @@ export default async function ProjectDealPage({ params }: { params: { id: number
+ {/* #TODO use sum() instead of storing total in database */}

${projectData?.total_investment}

-

5% raised of \$5M max goal

+

5% raised of $5M max goal

-

{projectData?.total_investment}

+

{dealData ? dealData.length: 0}

-

Investors

+

Investors

1 hours

-

Left to invest

+

Left to invest