diff --git a/src/app_modules/admin/_admin_global/_component/comp_admin_modal_publish.tsx b/src/app_modules/admin/_admin_global/_component/comp_admin_modal_publish.tsx new file mode 100644 index 00000000..1c3a05a4 --- /dev/null +++ b/src/app_modules/admin/_admin_global/_component/comp_admin_modal_publish.tsx @@ -0,0 +1,34 @@ +import { Group, Modal, Stack } from '@mantine/core'; +import React from 'react'; + +function Admin_ComponentModalPublish({ onClose, opened, title, buttonKiri, buttonKanan, }: { + onClose: () => void; + opened: any; + title: string; + buttonKiri: React.ReactNode; + buttonKanan: React.ReactNode; +}) { + return ( + <> + + + + {buttonKiri} + {buttonKanan} + + + + + ); +} + +export default Admin_ComponentModalPublish; diff --git a/src/app_modules/admin/event/_component/detail_data_sponsor.tsx b/src/app_modules/admin/event/_component/detail_data_sponsor.tsx index dffecc57..691011b0 100644 --- a/src/app_modules/admin/event/_component/detail_data_sponsor.tsx +++ b/src/app_modules/admin/event/_component/detail_data_sponsor.tsx @@ -1,6 +1,6 @@ import { RouterAdminEvent } from '@/app/lib/router_admin/router_admin_event'; import { Button, Center, Pagination, Paper, ScrollArea, Stack, Table, Title } from '@mantine/core'; -import { IconImageInPicture } from '@tabler/icons-react'; +import { IconDeviceDesktop, IconDownload, IconImageInPicture } from '@tabler/icons-react'; import { useRouter } from 'next/navigation'; import React from 'react'; @@ -24,7 +24,7 @@ function AdminEvent_DetailDataSponsor() {
- +
@@ -41,7 +41,7 @@ function AdminEvent_DetailDataSponsor() {
- +
diff --git a/src/app_modules/admin/event/_view/view_table_review.tsx b/src/app_modules/admin/event/_view/view_table_review.tsx index 4b64fb13..2db0cb74 100644 --- a/src/app_modules/admin/event/_view/view_table_review.tsx +++ b/src/app_modules/admin/event/_view/view_table_review.tsx @@ -58,7 +58,7 @@ export default function AdminEvent_ComponentTableReview({ const [isActivePage, setActivePage] = useState(1); const [isSearch, setSearch] = useState(""); const [isLoading, setIsLoading] = useState(false); - + const [isModal, setModal] = useState(false); const [opened, { open, close }] = useDisclosure(false); const [catatan, setCatatan] = useState(""); const [eventId, setEventId] = useState(""); @@ -123,6 +123,7 @@ export default function AdminEvent_ComponentTableReview({ const res = await AdminEvent_funEditStatusPublishById(eventId, "1"); if (res.status === 200) { + setIsLoading(true) const dataNotifikasi: IRealtimeData = { appId: res.data?.id as any, status: res.data?.EventMaster_Status?.name as any, @@ -159,9 +160,12 @@ export default function AdminEvent_ComponentTableReview({ ComponentAdminGlobal_NotifikasiBerhasil("Berhasil update status"); } else { + setModal(false) + setIsLoading(false) ComponentAdminGlobal_NotifikasiGagal(res.message); } } else { + setModal(false) ComponentAdminGlobal_NotifikasiPeringatan( "Review di batalkan oleh user, reload halaman review !" ); @@ -448,6 +452,43 @@ export default function AdminEvent_ComponentTableReview({ + setModal(false)} + centered + withCloseButton={false} + size={"md"} + > + + + + + + + ); + function ModalPublish({ + eventId, + tanggal, + }: { + eventId: string; + tanggal: Date; + }) { + return ( + + + + ) + } } diff --git a/src/app_modules/admin/event/table_status/detail_sponsor.tsx b/src/app_modules/admin/event/table_status/detail_sponsor.tsx index 0034b600..b8a93cad 100644 --- a/src/app_modules/admin/event/table_status/detail_sponsor.tsx +++ b/src/app_modules/admin/event/table_status/detail_sponsor.tsx @@ -46,7 +46,7 @@ function AdminEvent_DetailSponsor() {
- +
diff --git a/src/app_modules/admin/event/table_status/table_publish.tsx b/src/app_modules/admin/event/table_status/table_publish.tsx index 7a80703f..f19eef87 100644 --- a/src/app_modules/admin/event/table_status/table_publish.tsx +++ b/src/app_modules/admin/event/table_status/table_publish.tsx @@ -17,7 +17,7 @@ import { TextInput, Title, } from "@mantine/core"; -import { IconCircleCheck, IconSearch } from "@tabler/icons-react"; +import { IconCircleCheck, IconDetails, IconEyeCheck, IconSearch } from "@tabler/icons-react"; import _ from "lodash"; import { useRouter } from "next/navigation"; import { useState } from "react"; @@ -25,6 +25,8 @@ import ComponentAdminGlobal_HeaderTamplate from "../../_admin_global/header_tamp import { adminEvent_funGetListPublish } from "../fun"; import QRCode from "react-qr-code"; import { useShallowEffect } from "@mantine/hooks"; +import { ComponentAdminGlobal_TitlePage } from "../../_admin_global/_component"; +import { MainColor } from "@/app_modules/_global/color"; export default function AdminEvent_TablePublish({ listPublish, @@ -202,6 +204,7 @@ function TableStatus({ listPublish }: { listPublish: any }) { e.id === eventId ? (loading === true ? true : false) : false } color={"green"} + leftIcon={} radius={"xl"} onClick={async () => { setEventId(e.id); @@ -219,7 +222,21 @@ function TableStatus({ listPublish }: { listPublish: any }) { return ( <> - } + radius={"xl"} + placeholder="Masukan judul" + onChange={(val) => { + onSearch(val.currentTarget.value); + }} + /> + } + /> + {/* - + */} diff --git a/src/app_modules/admin/event/table_status/table_reject.tsx b/src/app_modules/admin/event/table_status/table_reject.tsx index fd786fd1..84b4f01f 100644 --- a/src/app_modules/admin/event/table_status/table_reject.tsx +++ b/src/app_modules/admin/event/table_status/table_reject.tsx @@ -26,6 +26,8 @@ import { useState } from "react"; import ComponentAdminGlobal_HeaderTamplate from "../../_admin_global/header_tamplate"; import { adminEvent_funGetListReject } from "../fun"; import { AdminEvent_funEditCatatanById } from "../fun/edit/fun_edit_status_reject_by_id"; +import { ComponentAdminGlobal_TitlePage } from "../../_admin_global/_component"; +import { MainColor } from "@/app_modules/_global/color"; export default function AdminEvent_TableReject({ listReject, @@ -177,7 +179,21 @@ function TableStatus({ listReject }: { listReject: any }) { return ( <> - } + radius={"xl"} + placeholder="Masukan judul" + onChange={(val) => { + onSearch(val.currentTarget.value); + }} + /> + } + /> + {/* - + */} diff --git a/src/app_modules/admin/investasi/detail/detail_review.tsx b/src/app_modules/admin/investasi/detail/detail_review.tsx index 30d613f4..a3ee11ec 100644 --- a/src/app_modules/admin/investasi/detail/detail_review.tsx +++ b/src/app_modules/admin/investasi/detail/detail_review.tsx @@ -1,6 +1,7 @@ "use client"; import { IRealtimeData } from "@/app/lib/global_state"; +import { MainColor } from "@/app_modules/_global/color"; import { MODEL_INVESTASI } from "@/app_modules/investasi/_lib/interface"; import getOneInvestasiById from "@/app_modules/investasi/fun/get_one_investasi_by_id"; import { Button, Group, SimpleGrid, Stack } from "@mantine/core"; @@ -10,6 +11,7 @@ import { useRouter } from "next/navigation"; import { useState } from "react"; import { WibuRealtime } from "wibu-pkg"; import { Admin_ComponentModalReport } from "../../_admin_global/_component"; +import Admin_ComponentModalPublish from "../../_admin_global/_component/comp_admin_modal_publish"; import { ComponentAdminGlobal_NotifikasiBerhasil } from "../../_admin_global/admin_notifikasi/notifikasi_berhasil"; import { ComponentAdminGlobal_NotifikasiGagal } from "../../_admin_global/admin_notifikasi/notifikasi_gagal"; import { ComponentAdminGlobal_NotifikasiPeringatan } from "../../_admin_global/admin_notifikasi/notifikasi_peringatan"; @@ -30,7 +32,8 @@ export default function AdminInvestasi_DetailReview({ const router = useRouter(); const [data, setData] = useState(dataInvestasi); const [publish, setPublish] = useState(true); - const [openModal, setOpenModal] = useState(false); + const [openModalPublish, setOpenModalPublish] = useState(false); + const [openModalReject, setOpenModalReject] = useState(false); const [isLoadingPublish, setIsLoadingPublish] = useState(false); const [isLoadingReject, setIsLoadingReject] = useState(false); const [report, setReport] = useState(""); @@ -82,11 +85,11 @@ export default function AdminInvestasi_DetailReview({ ComponentAdminGlobal_NotifikasiBerhasil(res.message); router.back(); - setOpenModal(false); + setOpenModalReject(false); setIsLoadingReject(false); } else { ComponentAdminGlobal_NotifikasiGagal(res.message); - setOpenModal(false); + setOpenModalReject(false); } } @@ -97,6 +100,7 @@ export default function AdminInvestasi_DetailReview({ progesInvestasiId: "1", }); if (res.status === 200) { + setIsLoadingPublish(true); const dataNotifikasi: IRealtimeData = { appId: res.data?.id as string, userId: res.data?.authorId as any, @@ -127,11 +131,14 @@ export default function AdminInvestasi_DetailReview({ setData(loadData as any); ComponentAdminGlobal_NotifikasiBerhasil("Proyek Investasi Di Publish"); + setOpenModalPublish(false); + setIsLoadingPublish(false); router.back(); // router.push(RouterAdminInvestasi_OLD.table_status_review); } } else { ComponentAdminGlobal_NotifikasiGagal(res.message); + setOpenModalPublish(false); } } @@ -148,14 +155,14 @@ export default function AdminInvestasi_DetailReview({ loading={isLoadingPublish} radius={"xl"} color="green" - onClick={() => onPublish()} + onClick={() => setOpenModalPublish(true)} > Publish @@ -193,18 +200,19 @@ export default function AdminInvestasi_DetailReview({ setOpenModal(false)} + opened={openModalReject} + onClose={() => setOpenModalReject(false)} title="Alasan Penolakan" onHandlerChange={(val) => setReport(val.target.value)} buttonKiri={ - } buttonKanan={ } /> + setOpenModalPublish(false)} + title="Anda Yakin Ingin Mempublish Investasi Ini ?" + buttonKiri={ + + } + buttonKanan={ + + } + /> ); } diff --git a/src/app_modules/admin/investasi/main/table_publish.tsx b/src/app_modules/admin/investasi/main/table_publish.tsx index 38b5bd18..9af7f760 100644 --- a/src/app_modules/admin/investasi/main/table_publish.tsx +++ b/src/app_modules/admin/investasi/main/table_publish.tsx @@ -15,13 +15,15 @@ import { TextInput, Title, } from "@mantine/core"; -import { IconSearch } from "@tabler/icons-react"; +import { IconDetails, IconEye, IconEyeCheck, IconInfoCircle, IconSearch } from "@tabler/icons-react"; import _ from "lodash"; import { useRouter } from "next/navigation"; import { useState } from "react"; import ComponentAdminGlobal_HeaderTamplate from "../../_admin_global/header_tamplate"; import ComponentAdminGlobal_IsEmptyData from "../../_admin_global/is_empty_data"; import { adminInvestasi_funGetAllPublish } from "../fun/get/get_all_publish"; +import { ComponentAdminGlobal_TitlePage } from "../../_admin_global/_component"; +import { MainColor } from "@/app_modules/_global/color"; export default function Admin_TablePublishInvestasi({ dataInvestsi, @@ -111,6 +113,7 @@ function TableView({ listData }: { listData: any }) { bg={"green"} color="green" radius={"xl"} + leftIcon={} onClick={() => { setIdData(e.id); setLoading(true); @@ -127,7 +130,21 @@ function TableView({ listData }: { listData: any }) { return ( <> - } + radius={"xl"} + placeholder="Cari nama proyek" + onChange={(val) => { + onSearch(val.currentTarget.value); + }} + /> + } + /> + {/* - + */} {_.isEmpty(data) ? ( diff --git a/src/app_modules/admin/investasi/main/table_reject.tsx b/src/app_modules/admin/investasi/main/table_reject.tsx index 8f3647cb..6836e6a2 100644 --- a/src/app_modules/admin/investasi/main/table_reject.tsx +++ b/src/app_modules/admin/investasi/main/table_reject.tsx @@ -19,7 +19,7 @@ import { TextInput, Title, } from "@mantine/core"; -import { IconChevronLeft, IconEdit, IconSearch } from "@tabler/icons-react"; +import { IconChevronLeft, IconDetails, IconEdit, IconEyeCheck, IconSearch } from "@tabler/icons-react"; import _ from "lodash"; import { useRouter } from "next/navigation"; import { useState } from "react"; @@ -28,6 +28,8 @@ import ComponentAdminGlobal_IsEmptyData from "../../_admin_global/is_empty_data" import { adminInvestasi_funGetAllReview } from "../fun/get/get_all_review"; import { adminInvestasi_funGetAllReject } from "../fun/get/get_all_reject"; import { RouterAdminInvestasi } from "@/app/lib/router_admin/router_admin_investasi"; +import { ComponentAdminGlobal_TitlePage } from "../../_admin_global/_component"; +import { MainColor } from "@/app_modules/_global/color"; export default function Admin_TableRejectInvestasi({ dataInvestsi, @@ -169,7 +171,8 @@ function TableView({ listData }: { listData: any }) {