"use client"; import { RouterInvestasi } from "@/app/lib/router_hipmi/router_investasi"; import { Warna } from "@/app/lib/warna"; import { ActionIcon, AspectRatio, Avatar, Box, Button, Center, Flex, Grid, Group, Image, Paper, Progress, Slider, Stack, Text, Title, } from "@mantine/core"; import { IconBookDownload, IconCircleCheck, IconFileDescription, IconSpeakerphone, IconXboxX, } from "@tabler/icons-react"; import { useRouter } from "next/navigation"; import { useState } from "react"; import { MODEL_Investasi } from "../model/model_investasi"; import moment from "moment"; import { MODEL_PROFILE_OLD } from "@/app_modules/home/model/user_profile"; import { RouterProfile } from "@/app/lib/router_hipmi/router_katalog"; import { gs_TransferValue } from "../g_state"; import { useAtom } from "jotai"; import _ from "lodash"; import ComponentGlobal_AuthorNameOnHeader from "@/app_modules/_global/author_name_on_header"; export default function DetailInvestasi({ dataInvestasi, dataUser, loginUserId, progress, totalInvestor, }: { dataInvestasi: MODEL_Investasi; dataUser: MODEL_PROFILE_OLD; loginUserId: string; progress: number; totalInvestor: number; }) { const router = useRouter(); const [investasi, setInvestasi] = useState(dataInvestasi); const [user, setUser] = useState(dataUser); const [transaksiValue, setTransaksiValue] = useAtom(gs_TransferValue); const [boxId, setBoxId] = useState(0); const [isLoadingBox, setLoadingBox] = useState(false); const listBox = [ { id: 1, name: "Prospektus", icon: , route: RouterInvestasi.detail_prospektus, }, { id: 2, name: "Dokumen", icon: , route: RouterInvestasi.detail_dokumen, }, { id: 3, name: "Berita", icon: , route: RouterInvestasi.berita, }, ]; async function onSubmit() { router.push(RouterInvestasi.proses_transaksi + `${investasi.id}`); setTransaksiValue({ ...transaksiValue, lembarTerbeli: "", namaBank: "", nomorRekening: "", totalTransfer: "", }); } return ( <> {/* Foto username dan sisa waktu */} {/* {JSON.stringify(dataUser, null, 2)} */} {investasi.MasterProgresInvestasi.id === "1" ? ( Sisa waktu:{" "} {Number(investasi.MasterPencarianInvestor.name) - moment(new Date()).diff( new Date(investasi.countDown), "days" )}{" "} Hari ) : ( {investasi.MasterProgresInvestasi.id === "2" ? ( Selesai ) : ( Waktu Habis )} )} {/* Title dan Progress */} {investasi.title} {/* Rincian Data */} Dana Dibutuhkan Rp.{" "} {new Intl.NumberFormat("id-ID", { maximumSignificantDigits: 10, }).format(+investasi.targetDana)} Harga Per Lembar Rp.{" "} {new Intl.NumberFormat("id-ID", { maximumSignificantDigits: 10, }).format(+investasi.hargaLembar)} Jadwal Pembagian {investasi.MasterPembagianDeviden.name} bulan Pembagian Deviden {investasi.MasterPeriodeDeviden.name} Investor {new Intl.NumberFormat("id-ID", { maximumSignificantDigits: 10, }).format(totalInvestor)} ROI {investasi.roi}% Total Lembar {new Intl.NumberFormat("id-ID", { maximumSignificantDigits: 10, }).format(+investasi.totalLembar)}{" "} lembar Sisa Lembar {new Intl.NumberFormat("id-ID", { maximumSignificantDigits: 10, }).format(+investasi.sisaLembar)}{" "} lembar {/* List Box */} {listBox.map((e, i) => ( { setBoxId(e?.id); setLoadingBox(true); router.push(e.route + `${investasi.id}`); }} > {e.name} {e.icon} ))} {investasi.sisaLembar === "0" || Number(investasi.MasterPencarianInvestor.name) - moment(new Date()).diff(new Date(investasi.countDown), "days") <= 0 ? ( Investasi Telah Ditutup ) : ( {loginUserId === investasi.authorId ? ( Investasi Ini Milik Anda ) : ( { onSubmit(); }} > Beli Saham )} )} > ); }
{JSON.stringify(dataUser, null, 2)}