diff --git a/prisma/schema.prisma b/prisma/schema.prisma index f5229656..5aa6018e 100644 --- a/prisma/schema.prisma +++ b/prisma/schema.prisma @@ -173,15 +173,6 @@ model MasterBidangBisnis { Portofolio Portofolio[] } -model MasterStatus { - id String @id @default(cuid()) - name String - isActive Boolean @default(true) - createdAt DateTime @default(now()) - updatedAt DateTime @updatedAt - Job Job[] -} - // ------------------- MASTER -------------------------- // model MasterBank { @@ -195,6 +186,15 @@ model MasterBank { Investasi_Invoice Investasi_Invoice[] } +model MasterStatus { + id String @id @default(cuid()) + name String + isActive Boolean @default(true) + createdAt DateTime @default(now()) + updatedAt DateTime @updatedAt + Job Job[] +} + // -------------------- INVESTASI --------------------- // // Table investasi / saham model Investasi { @@ -623,6 +623,7 @@ model Voting { isActive Boolean @default(true) createdAt DateTime @default(now()) updatedAt DateTime @updatedAt + isArsip Boolean @default(false) title String deskripsi String diff --git a/public/map/pin/3d9d3ee4-4c58-4297-b73d-3f04d00a1279.png b/public/map/pin/3d9d3ee4-4c58-4297-b73d-3f04d00a1279.png new file mode 100644 index 00000000..eb94d9c2 Binary files /dev/null and b/public/map/pin/3d9d3ee4-4c58-4297-b73d-3f04d00a1279.png differ diff --git a/src/app/dev/admin/donasi/sub-menu/review/page.tsx b/src/app/dev/admin/donasi/sub-menu/review/page.tsx index 45e018cf..0031b08a 100644 --- a/src/app/dev/admin/donasi/sub-menu/review/page.tsx +++ b/src/app/dev/admin/donasi/sub-menu/review/page.tsx @@ -1,6 +1,6 @@ import { AdminDonasi_TableReview } from "@/app_modules/admin/donasi"; import adminDonasi_getListReview from "@/app_modules/admin/donasi/fun/get/get_list_review"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; export default async function Page() { const listReview = await adminDonasi_getListReview({page: 1}); diff --git a/src/app/dev/admin/layout.tsx b/src/app/dev/admin/layout.tsx index ed1372dc..3ee61021 100644 --- a/src/app/dev/admin/layout.tsx +++ b/src/app/dev/admin/layout.tsx @@ -1,7 +1,7 @@ import { AdminLayout } from "@/app_modules/admin/main_dashboard"; import adminNotifikasi_countNotifikasi from "@/app_modules/admin/notifikasi/fun/count/count_is_read"; import adminNotifikasi_getByUserId from "@/app_modules/admin/notifikasi/fun/get/get_notifikasi_by_user_id"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; import { user_getOneByUserId } from "@/app_modules/home/fun/get/get_one_user_by_id"; import React from "react"; @@ -10,7 +10,7 @@ export default async function Layout({ }: { children: React.ReactNode; }) { - const userId = await user_getOneUserId(); + const userId = await user_funGetOneUserId(); const dataUser = await user_getOneByUserId(userId); const listNotif = await adminNotifikasi_getByUserId(); const countNotifikasi = await adminNotifikasi_countNotifikasi(); diff --git a/src/app/dev/colab/detail/group/[id]/page.tsx b/src/app/dev/colab/detail/group/[id]/page.tsx index 420aa361..51c5968a 100644 --- a/src/app/dev/colab/detail/group/[id]/page.tsx +++ b/src/app/dev/colab/detail/group/[id]/page.tsx @@ -4,13 +4,13 @@ import { Colab_GroupChatView, } from "@/app_modules/colab"; import colab_getMessageByRoomId from "@/app_modules/colab/fun/get/room_chat/get_message_by_room_id"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; import { user_getOneByUserId } from "@/app_modules/home/fun/get/get_one_user_by_id"; import _ from "lodash"; export default async function Page({ params }: { params: { id: string } }) { const roomId = params.id; - const userLoginId = await user_getOneUserId(); + const userLoginId = await user_funGetOneUserId(); const getData = (await adminColab_getOneRoomChatById({ roomId: roomId })) .data; const dataRoom = _.omit(getData, [ diff --git a/src/app/dev/colab/detail/main_detail/[id]/layout.tsx b/src/app/dev/colab/detail/main_detail/[id]/layout.tsx index 9c36e1c7..fd2f6a6b 100644 --- a/src/app/dev/colab/detail/main_detail/[id]/layout.tsx +++ b/src/app/dev/colab/detail/main_detail/[id]/layout.tsx @@ -1,6 +1,6 @@ import { LayoutColab_MainDetail } from "@/app_modules/colab"; import colab_getOneCollaborationById from "@/app_modules/colab/fun/get/get_one_by_id"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; import React from "react"; export default async function Layout({ @@ -13,7 +13,7 @@ export default async function Layout({ const colabId = params.id; const dataColab = await colab_getOneCollaborationById(colabId); const authorId = dataColab?.Author?.id; - const userLoginId = await user_getOneUserId(); + const userLoginId = await user_funGetOneUserId(); return ( <> diff --git a/src/app/dev/colab/detail/main_detail/[id]/page.tsx b/src/app/dev/colab/detail/main_detail/[id]/page.tsx index 1c38b796..eb4eed2a 100644 --- a/src/app/dev/colab/detail/main_detail/[id]/page.tsx +++ b/src/app/dev/colab/detail/main_detail/[id]/page.tsx @@ -2,11 +2,11 @@ import { Colab_MainDetail } from "@/app_modules/colab"; import colab_funCekPartisipasiById from "@/app_modules/colab/fun/get/cek_partisipasi_by_user_id"; import colab_getListPartisipanByColabId from "@/app_modules/colab/fun/get/get_list_partisipan_by_id"; import colab_getOneCollaborationById from "@/app_modules/colab/fun/get/get_one_by_id"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; export default async function Page({ params }: { params: { id: string } }) { let colabId = params.id; - const userLoginId = await user_getOneUserId(); + const userLoginId = await user_funGetOneUserId(); const dataColab = await colab_getOneCollaborationById(colabId); const listPartisipan = await colab_getListPartisipanByColabId(colabId); const cekPartisipan = await colab_funCekPartisipasiById(colabId); diff --git a/src/app/dev/colab/main/beranda/page.tsx b/src/app/dev/colab/main/beranda/page.tsx index 29973ad3..a049bf12 100644 --- a/src/app/dev/colab/main/beranda/page.tsx +++ b/src/app/dev/colab/main/beranda/page.tsx @@ -1,10 +1,10 @@ import { Colab_Beranda } from "@/app_modules/colab"; import colab_getListAllProyek from "@/app_modules/colab/fun/get/get_list_all_proyek"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; export default async function Page() { const listData = await colab_getListAllProyek({page: 1}); - const userLoginId = await user_getOneUserId(); + const userLoginId = await user_funGetOneUserId(); return ( <> diff --git a/src/app/dev/donasi/create/cerita_penggalang/[id]/page.tsx b/src/app/dev/donasi/create/cerita_penggalang/[id]/page.tsx index 39d228ea..1f141e66 100644 --- a/src/app/dev/donasi/create/cerita_penggalang/[id]/page.tsx +++ b/src/app/dev/donasi/create/cerita_penggalang/[id]/page.tsx @@ -1,10 +1,10 @@ import { CreateCeritaPenggalangDonasi } from "@/app_modules/donasi"; import { Donasi_getTemporaryCreate } from "@/app_modules/donasi/fun/get/get_temporary_create"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; export default async function Page({ params }: { params: { id: string } }) { const getTemporaryCreate = await Donasi_getTemporaryCreate(params.id); - const userId = await user_getOneUserId(); + const userId = await user_funGetOneUserId(); return ( <> diff --git a/src/app/dev/donasi/create/create_donasi/page.tsx b/src/app/dev/donasi/create/create_donasi/page.tsx index d1589c57..d1d187a9 100644 --- a/src/app/dev/donasi/create/create_donasi/page.tsx +++ b/src/app/dev/donasi/create/create_donasi/page.tsx @@ -3,7 +3,7 @@ import { Donasi_getMasterDurasi, Donasi_getMasterKategori, } from "@/app_modules/donasi/fun"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; export default async function Page() { const masterKategori = await Donasi_getMasterKategori(); diff --git a/src/app/dev/donasi/detail/detail_main/[id]/page.tsx b/src/app/dev/donasi/detail/detail_main/[id]/page.tsx index 6c72ece2..804c103a 100644 --- a/src/app/dev/donasi/detail/detail_main/[id]/page.tsx +++ b/src/app/dev/donasi/detail/detail_main/[id]/page.tsx @@ -1,13 +1,13 @@ import { DetailMainDonasi } from "@/app_modules/donasi"; import { Donasi_getCountDonatur } from "@/app_modules/donasi/fun/count/get_count_donatur"; import { Donasi_getOneById } from "@/app_modules/donasi/fun/get/get_one_donasi_by_id"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; export default async function Page({ params }: { params: { id: string } }) { let donasiId = params.id; const dataDonasi = await Donasi_getOneById(donasiId); const countDonatur = await Donasi_getCountDonatur(donasiId) - const userLoginId = await user_getOneUserId(); + const userLoginId = await user_funGetOneUserId(); return ( <> diff --git a/src/app/dev/donasi/detail/detail_publish/[id]/page.tsx b/src/app/dev/donasi/detail/detail_publish/[id]/page.tsx index a283e6d2..b92e8928 100644 --- a/src/app/dev/donasi/detail/detail_publish/[id]/page.tsx +++ b/src/app/dev/donasi/detail/detail_publish/[id]/page.tsx @@ -1,12 +1,12 @@ import { DetailPublishDonasi } from "@/app_modules/donasi"; import { Donasi_getCountDonatur } from "@/app_modules/donasi/fun/count/get_count_donatur"; import { Donasi_getOneById } from "@/app_modules/donasi/fun/get/get_one_donasi_by_id"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; export default async function Page({ params }: { params: { id: string } }) { const dataPublish = await Donasi_getOneById(params.id); const countDonatur= await Donasi_getCountDonatur(params.id) - const userLoginId = await user_getOneUserId(); + const userLoginId = await user_funGetOneUserId(); // console.log(userLoginId) diff --git a/src/app/dev/donasi/main/galang_dana/page.tsx b/src/app/dev/donasi/main/galang_dana/page.tsx index 63d73bda..cda297bf 100644 --- a/src/app/dev/donasi/main/galang_dana/page.tsx +++ b/src/app/dev/donasi/main/galang_dana/page.tsx @@ -4,10 +4,10 @@ import { donasi_funGetAllStatusDraft } from "@/app_modules/donasi/fun/get/status import { donasi_funGetAllStatusPublish } from "@/app_modules/donasi/fun/get/status/get_all_status_publish"; import { donasi_funGetAllStatusReject } from "@/app_modules/donasi/fun/get/status/get_all_status_reject"; import { donasi_funGetAllStatusReview } from "@/app_modules/donasi/fun/get/status/get_all_status_review"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; export default async function Page() { - const authorId = await user_getOneUserId(); + const authorId = await user_funGetOneUserId(); const listPublish = await donasi_funGetAllStatusPublish({page: 1}); const listReview = await donasi_funGetAllStatusReview({page: 1}); const listDraft = await donasi_funGetAllStatusDraft({page: 1}); diff --git a/src/app/dev/donasi/main/layout.tsx b/src/app/dev/donasi/main/layout.tsx index d1aa3c54..a37c2dd6 100644 --- a/src/app/dev/donasi/main/layout.tsx +++ b/src/app/dev/donasi/main/layout.tsx @@ -1,6 +1,6 @@ import { LayoutDonasi } from "@/app_modules/donasi"; import { Donasi_getNotifByUserId } from "@/app_modules/donasi/fun/get/get_notif_by_user_id"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; import React from "react"; export default async function Layout({ @@ -8,7 +8,7 @@ export default async function Layout({ }: { children: React.ReactNode; }) { - const userId = await user_getOneUserId(); + const userId = await user_funGetOneUserId(); // console.log(userId) const isRead = await Donasi_getNotifByUserId(userId).then((res: any) => res.map((val: any) => val.isRead) diff --git a/src/app/dev/donasi/proses_donasi/metode_pembayaran/[id]/page.tsx b/src/app/dev/donasi/proses_donasi/metode_pembayaran/[id]/page.tsx index 2005b669..797d8742 100644 --- a/src/app/dev/donasi/proses_donasi/metode_pembayaran/[id]/page.tsx +++ b/src/app/dev/donasi/proses_donasi/metode_pembayaran/[id]/page.tsx @@ -1,11 +1,11 @@ import { Donasi_MetodePembayaran } from "@/app_modules/donasi"; import { Donasi_getMasterBank } from "@/app_modules/donasi/fun/master/get_bank"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; export default async function Page({params}: {params: {id: string}}) { let donasiId= params.id const listBank = await Donasi_getMasterBank() - const authorId = await user_getOneUserId() + const authorId = await user_funGetOneUserId() return<> diff --git a/src/app/dev/event/create/page.tsx b/src/app/dev/event/create/page.tsx index bb44e1ce..a1eb4bc1 100644 --- a/src/app/dev/event/create/page.tsx +++ b/src/app/dev/event/create/page.tsx @@ -1,10 +1,10 @@ import { Event_Create } from "@/app_modules/event"; import { Event_getMasterTipeAcara } from "@/app_modules/event/fun/master/get_tipe_acara"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; import _ from "lodash"; export default async function Page() { - const userId = await user_getOneUserId() + const userId = await user_funGetOneUserId() const listTipeAcara = await Event_getMasterTipeAcara(); return ; diff --git a/src/app/dev/event/detail/main/[id]/page.tsx b/src/app/dev/event/detail/main/[id]/page.tsx index 024ca9c2..9326b5ed 100644 --- a/src/app/dev/event/detail/main/[id]/page.tsx +++ b/src/app/dev/event/detail/main/[id]/page.tsx @@ -3,13 +3,13 @@ import { Event_countTotalPesertaById } from "@/app_modules/event/fun/count/count import { Event_CekUserJoinById } from "@/app_modules/event/fun/get/cek_user_join_by_id"; import { Event_getListPesertaById } from "@/app_modules/event/fun/get/get_list_peserta_by_id"; import { Event_getOneById } from "@/app_modules/event/fun/get/get_one_by_id"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; export default async function Page({ params }: { params: { id: string } }) { let eventId = params.id; const dataEvent = await Event_getOneById(eventId); const listPeserta = await Event_getListPesertaById(eventId); - const userLoginId = await user_getOneUserId(); + const userLoginId = await user_funGetOneUserId(); const isJoin = await Event_CekUserJoinById(eventId, userLoginId); const totalPeserta = await Event_countTotalPesertaById(eventId) diff --git a/src/app/dev/event/detail/riwayat/[id]/page.tsx b/src/app/dev/event/detail/riwayat/[id]/page.tsx index fddfa079..859ac000 100644 --- a/src/app/dev/event/detail/riwayat/[id]/page.tsx +++ b/src/app/dev/event/detail/riwayat/[id]/page.tsx @@ -4,7 +4,7 @@ import { Event_countTotalPesertaById } from "@/app_modules/event/fun/count/count import { Event_CekUserJoinById } from "@/app_modules/event/fun/get/cek_user_join_by_id"; import { Event_getListPesertaById } from "@/app_modules/event/fun/get/get_list_peserta_by_id"; import { Event_getOneById } from "@/app_modules/event/fun/get/get_one_by_id"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; export default async function Page({ params }: { params: { id: string } }) { let eventId = params.id; diff --git a/src/app/dev/event/main/kontribusi/page.tsx b/src/app/dev/event/main/kontribusi/page.tsx index 62955eb6..c62ad6cd 100644 --- a/src/app/dev/event/main/kontribusi/page.tsx +++ b/src/app/dev/event/main/kontribusi/page.tsx @@ -1,6 +1,6 @@ import { Event_Kontribusi } from "@/app_modules/event"; import { event_getListKontibusiByUserId } from "@/app_modules/event/fun/get/get_list_kontribusi_by_user_id"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; export default async function Page() { const listKontribusi = await event_getListKontibusiByUserId({page: 1}) diff --git a/src/app/dev/event/main/riwayat/page.tsx b/src/app/dev/event/main/riwayat/page.tsx index 3c20774d..0b44a8db 100644 --- a/src/app/dev/event/main/riwayat/page.tsx +++ b/src/app/dev/event/main/riwayat/page.tsx @@ -1,7 +1,7 @@ import { Event_Riwayat } from "@/app_modules/event"; import { event_getListRiwayatSaya } from "@/app_modules/event/fun/get/get_list_riwayat_saya"; import { event_getListSemuaRiwayat } from "@/app_modules/event/fun/get/riwayat/get_list_semua_riwayat"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; export default async function Page({ params }: { params: { id: string } }) { let eventId = params.id; diff --git a/src/app/dev/event/main/status_page/page.tsx b/src/app/dev/event/main/status_page/page.tsx index 28d7fd80..6bb4d32a 100644 --- a/src/app/dev/event/main/status_page/page.tsx +++ b/src/app/dev/event/main/status_page/page.tsx @@ -3,10 +3,10 @@ import { event_getAllDraft } from "@/app_modules/event/fun/get/status/get_all_dr import { event_getAllReject } from "@/app_modules/event/fun/get/status/get_all_reject"; import { event_getAllReview } from "@/app_modules/event/fun/get/status/get_all_review"; import { event_funGetAllStatusPublish } from "@/app_modules/event/fun/get/status/get_all_status_publish"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; export default async function Page() { - const authorId = await user_getOneUserId(); + const authorId = await user_funGetOneUserId(); const listPublish = await event_funGetAllStatusPublish({ page: 1 }); const listReview = await event_getAllReview({ page: 1 }); const listDraft = await event_getAllDraft({ page: 1 }); diff --git a/src/app/dev/forum/detail/main-detail/[id]/page.tsx b/src/app/dev/forum/detail/main-detail/[id]/page.tsx index 0c764797..53fdf30a 100644 --- a/src/app/dev/forum/detail/main-detail/[id]/page.tsx +++ b/src/app/dev/forum/detail/main-detail/[id]/page.tsx @@ -2,7 +2,7 @@ import Forum_MainDetail from "@/app_modules/forum/detail/main_detail"; import { forum_funGetAllKomentarById } from "@/app_modules/forum/fun/get/get_all_komentar_by_id"; import { forum_getOnePostingById } from "@/app_modules/forum/fun/get/get_one_posting_by_id"; import { forum_countOneTotalKomentarById } from "@/app_modules/forum/fun/count/count_one_total_komentar_by_id"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; import { RouterForum } from "@/app/lib/router_hipmi/router_forum"; import { redirect } from "next/navigation"; import { forum_countTotalKomenById } from "@/app_modules/forum/fun/count/count_total_komentar_by_id"; @@ -10,7 +10,7 @@ import { forum_countTotalKomenById } from "@/app_modules/forum/fun/count/count_t export default async function Page({ params }: { params: { id: string } }) { let postingId = params.id; - const userLoginId = await user_getOneUserId(); + const userLoginId = await user_funGetOneUserId(); const dataPosting = await forum_getOnePostingById(postingId); const listKomentar = await forum_funGetAllKomentarById({ postingId: postingId, diff --git a/src/app/dev/forum/forumku/[id]/layout.tsx b/src/app/dev/forum/forumku/[id]/layout.tsx index 9c27fcf3..6fcc7d0f 100644 --- a/src/app/dev/forum/forumku/[id]/layout.tsx +++ b/src/app/dev/forum/forumku/[id]/layout.tsx @@ -1,5 +1,5 @@ import { LayoutForum_Forumku } from "@/app_modules/forum"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; import { user_getOneByUserId } from "@/app_modules/home/fun/get/get_one_user_by_id"; import React from "react"; diff --git a/src/app/dev/forum/forumku/[id]/page.tsx b/src/app/dev/forum/forumku/[id]/page.tsx index 2432252d..40789dc1 100644 --- a/src/app/dev/forum/forumku/[id]/page.tsx +++ b/src/app/dev/forum/forumku/[id]/page.tsx @@ -1,14 +1,14 @@ import { Forum_Forumku } from "@/app_modules/forum"; import { forum_getAllPostingByAuhtorId } from "@/app_modules/forum/fun/get/get_list_posting_by_author_id"; import { forum_countOneTotalKomentarById } from "@/app_modules/forum/fun/count/count_one_total_komentar_by_id"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; import { user_getOneByUserId } from "@/app_modules/home/fun/get/get_one_user_by_id"; import _ from "lodash"; import { forum_countPostingByAuthorId } from "@/app_modules/forum/fun/count/count_posting_by_author_id"; export default async function Page({ params }: { params: { id: string } }) { const authorId = params.id; - const userLoginId = await user_getOneUserId(); + const userLoginId = await user_funGetOneUserId(); const dataAuthor = await user_getOneByUserId(authorId); const auhtorSelectedData = _.omit(dataAuthor, [ "Profile.email", diff --git a/src/app/dev/forum/komentar/[id]/page.tsx b/src/app/dev/forum/komentar/[id]/page.tsx index 0a9e3c1f..03f99668 100644 --- a/src/app/dev/forum/komentar/[id]/page.tsx +++ b/src/app/dev/forum/komentar/[id]/page.tsx @@ -1,11 +1,11 @@ import { Forum_Komentar } from "@/app_modules/forum"; import { forum_getOnePostingById } from "@/app_modules/forum/fun/get/get_one_posting_by_id"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; export default async function Page({ params }: { params: { id: string } }) { let postingId = params.id; const dataPosting = await forum_getOnePostingById(postingId); - const userLoginId = await user_getOneUserId() + const userLoginId = await user_funGetOneUserId() return ( <> diff --git a/src/app/dev/forum/main/layout.tsx b/src/app/dev/forum/main/layout.tsx index 2ec30e3d..f42ac00d 100644 --- a/src/app/dev/forum/main/layout.tsx +++ b/src/app/dev/forum/main/layout.tsx @@ -1,5 +1,5 @@ import { LayoutForum_Main } from "@/app_modules/forum"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; import { user_getOneByUserId } from "@/app_modules/home/fun/get/get_one_user_by_id"; import React from "react"; @@ -8,7 +8,7 @@ export default async function Layout({ }: { children: React.ReactNode; }) { - const authorId = await user_getOneUserId(); + const authorId = await user_funGetOneUserId(); const dataAuthor = await user_getOneByUserId(authorId); return ( diff --git a/src/app/dev/forum/main/page.tsx b/src/app/dev/forum/main/page.tsx index f1caab55..2b5bc1e8 100644 --- a/src/app/dev/forum/main/page.tsx +++ b/src/app/dev/forum/main/page.tsx @@ -1,10 +1,10 @@ import { Forum_Beranda } from "@/app_modules/forum"; import { forum_new_getAllPosting } from "@/app_modules/forum/fun/get/new_get_all_posting"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; export default async function Page() { const listForum = await forum_new_getAllPosting({ page: 1 }); - const userLoginId = await user_getOneUserId(); + const userLoginId = await user_funGetOneUserId(); // console.log(JSON.stringify(listForum, null, 2)); diff --git a/src/app/dev/forum/report/komentar-lainnya/[id]/page.tsx b/src/app/dev/forum/report/komentar-lainnya/[id]/page.tsx index 4c4b9439..8edbbf4f 100644 --- a/src/app/dev/forum/report/komentar-lainnya/[id]/page.tsx +++ b/src/app/dev/forum/report/komentar-lainnya/[id]/page.tsx @@ -1,9 +1,9 @@ import { Forum_ReportKomentarLainnya } from "@/app_modules/forum"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; export default async function Page({ params }: { params: { id: string } }) { let komentarId = params.id; - const userLoginId = await user_getOneUserId(); + const userLoginId = await user_funGetOneUserId(); return ( <> diff --git a/src/app/dev/forum/report/komentar/[id]/page.tsx b/src/app/dev/forum/report/komentar/[id]/page.tsx index 88717b66..11a226e5 100644 --- a/src/app/dev/forum/report/komentar/[id]/page.tsx +++ b/src/app/dev/forum/report/komentar/[id]/page.tsx @@ -1,11 +1,11 @@ import { Forum_ReportKomentar } from "@/app_modules/forum"; import { forum_getMasterKategoriReport } from "@/app_modules/forum/fun/master/get_master_kategori_report"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; export default async function Page({ params }: { params: { id: string } }) { let komentarId = params.id; const listReport = await forum_getMasterKategoriReport(); - const userLoginId = await user_getOneUserId(); + const userLoginId = await user_funGetOneUserId(); return ( diff --git a/src/app/dev/forum/report/posting-lainnya/[id]/page.tsx b/src/app/dev/forum/report/posting-lainnya/[id]/page.tsx index 3039aef6..84b1abda 100644 --- a/src/app/dev/forum/report/posting-lainnya/[id]/page.tsx +++ b/src/app/dev/forum/report/posting-lainnya/[id]/page.tsx @@ -1,9 +1,9 @@ import { Forum_ReportPostingLainnya } from "@/app_modules/forum"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; export default async function Page({ params }: { params: { id: string } }) { let postingId = params.id; - const userLoginId = await user_getOneUserId() + const userLoginId = await user_funGetOneUserId() return ( <> diff --git a/src/app/dev/forum/report/posting/[id]/page.tsx b/src/app/dev/forum/report/posting/[id]/page.tsx index d52c5827..17f48e47 100644 --- a/src/app/dev/forum/report/posting/[id]/page.tsx +++ b/src/app/dev/forum/report/posting/[id]/page.tsx @@ -1,11 +1,11 @@ import { Forum_ReportPosting } from "@/app_modules/forum"; import { forum_getMasterKategoriReport } from "@/app_modules/forum/fun/master/get_master_kategori_report"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; export default async function Page({ params }: { params: { id: string } }) { let postingId = params.id; const listReport = await forum_getMasterKategoriReport(); - const userLoginId = await user_getOneUserId(); + const userLoginId = await user_funGetOneUserId(); return ( <> diff --git a/src/app/dev/home/page.tsx b/src/app/dev/home/page.tsx index aa3e2356..f6878fd1 100644 --- a/src/app/dev/home/page.tsx +++ b/src/app/dev/home/page.tsx @@ -1,6 +1,6 @@ import { RouterAdminDashboard } from "@/app/lib/router_hipmi/router_admin"; import { RouterHome } from "@/app/lib/router_hipmi/router_home"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; import { HomeView } from "@/app_modules/home"; import { user_getOneByUserId } from "@/app_modules/home/fun/get/get_one_user_by_id"; import { job_getTwoForHomeView } from "@/app_modules/job/fun/get/get_two_for_home_view"; @@ -8,7 +8,7 @@ import notifikasi_countUserNotifikasi from "@/app_modules/notifikasi/fun/count/f import { redirect } from "next/navigation"; export default async function Page() { - const userId = await user_getOneUserId(); + const userId = await user_funGetOneUserId(); const dataUser = await user_getOneByUserId(userId); const dataJob = await job_getTwoForHomeView(); diff --git a/src/app/dev/investasi/detail/[id]/page.tsx b/src/app/dev/investasi/detail/[id]/page.tsx index 301067ae..2effc19f 100644 --- a/src/app/dev/investasi/detail/[id]/page.tsx +++ b/src/app/dev/investasi/detail/[id]/page.tsx @@ -1,14 +1,14 @@ import { funGetUserProfile } from "@/app_modules/fun_global/get_user_profile"; import { DetailInvestasi } from "@/app_modules/investasi"; import getOneInvestasiById from "@/app_modules/investasi/fun/get_one_investasi_by_id"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; import funProgressBar from "@/app_modules/investasi/fun/fun_progress_bar"; import funTotalInvestorByIdInvestasi from "@/app_modules/investasi/fun/fun_total_investor_by_id"; export default async function Page({ params }: { params: { id: string } }) { const investasiId = params.id const dataInvestasi = await getOneInvestasiById(investasiId); - const loginUserId = await user_getOneUserId(); + const loginUserId = await user_funGetOneUserId(); return ( <> diff --git a/src/app/dev/investasi/main/portofolio/page.tsx b/src/app/dev/investasi/main/portofolio/page.tsx index f784e487..681557a2 100644 --- a/src/app/dev/investasi/main/portofolio/page.tsx +++ b/src/app/dev/investasi/main/portofolio/page.tsx @@ -6,26 +6,52 @@ import { unsealData } from "iron-session"; import getInvestasiByStatusId from "@/app_modules/investasi/fun/get_investasi_by_id"; import getStatusInvestasi from "@/app_modules/investasi/fun/master/get_status_investasi"; import getPortoByStatusId from "@/app_modules/investasi/fun/get_porto_status_by_id"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; - -const config = yaml.parse(fs.readFileSync("config.yaml").toString()); +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { Investasi_UiPortofolio } from "@/app_modules/investasi/_ui"; +import { + investasi_funGetAllInvestasiNonPublishByUserId, + investasi_funGetAllPublishByUserId, +} from "@/app_modules/investasi/_fun"; export default async function Page() { - const userId = await user_getOneUserId(); - const listStatusInvestasi = await getStatusInvestasi(); + const userId = await user_funGetOneUserId(); + const listStatus = await getStatusInvestasi(); const dataDraft = await getPortoByStatusId(userId, 1); const dataReview = await getPortoByStatusId(userId, 2); const dataPublish = await getPortoByStatusId(userId, 3); const dataReject = await getPortoByStatusId(userId, 4); + const listDataPublish = await investasi_funGetAllPublishByUserId({ page: 1 }); + const listDataReview = await investasi_funGetAllInvestasiNonPublishByUserId({ + page: 1, + statusId: "2", + }); + const listDataDraft = await investasi_funGetAllInvestasiNonPublishByUserId({ + page: 1, + statusId: "3", + }); + const listDataReject = await investasi_funGetAllInvestasiNonPublishByUserId({ + page: 1, + statusId: "4", + }); + + + return ( <> - */} + ); diff --git a/src/app/dev/investasi/main/transaksi/page.tsx b/src/app/dev/investasi/main/transaksi/page.tsx index 55d61fef..f3ba90f3 100644 --- a/src/app/dev/investasi/main/transaksi/page.tsx +++ b/src/app/dev/investasi/main/transaksi/page.tsx @@ -8,13 +8,13 @@ import { unsealData } from "iron-session"; import { cookies } from "next/headers"; import funCountDown from "@/app_modules/investasi/fun/fun_countdown_investasi"; import funCekSisaWaktuTransaksiInvestasi from "@/app_modules/investasi/fun/fun_cek_sisa_waktu"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; import { investasi_funGetTransaksiByUserId } from "@/app_modules/investasi/_fun"; import { Investasi_UiDaftarTransaksi } from "@/app_modules/investasi/_ui"; const config = yaml.parse(fs.readFileSync("config.yaml").toString()); export default async function Page() { - const userId = await user_getOneUserId(); + const userId = await user_funGetOneUserId(); const statusTransaksi = await getMaster_StatusTransaksiInvestasi(); const listTransaksi = await getListAllTransaksiById_Investasi(userId); diff --git a/src/app/dev/katalog/[id]/layout.tsx b/src/app/dev/katalog/[id]/layout.tsx index 82012dc7..adc07fd4 100644 --- a/src/app/dev/katalog/[id]/layout.tsx +++ b/src/app/dev/katalog/[id]/layout.tsx @@ -1,4 +1,4 @@ -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; import { KatalogLayout } from "@/app_modules/katalog/main"; import { Profile_getOneProfileAndUserById } from "@/app_modules/katalog/profile/fun/get/get_one_user_profile"; @@ -12,7 +12,7 @@ export default async function Layout({ const profileId = params.id; const dataProfile = await Profile_getOneProfileAndUserById(profileId) const authorId = dataProfile?.userId; - const userLoginId = await user_getOneUserId(); + const userLoginId = await user_funGetOneUserId(); return ( diff --git a/src/app/dev/katalog/[id]/page.tsx b/src/app/dev/katalog/[id]/page.tsx index 9116b1e1..851209c8 100644 --- a/src/app/dev/katalog/[id]/page.tsx +++ b/src/app/dev/katalog/[id]/page.tsx @@ -1,4 +1,4 @@ -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; import { Katalog_MainView } from "@/app_modules/katalog"; import { funGetListPortofolio } from "@/app_modules/katalog/portofolio/fun/get/get_list_portofolio"; import { Profile_getOneProfileAndUserById } from "@/app_modules/katalog/profile/fun/get/get_one_user_profile"; @@ -6,7 +6,7 @@ import { Profile_getOneProfileAndUserById } from "@/app_modules/katalog/profile/ export default async function Page({ params }: { params: { id: string } }) { let profileId = params.id; - const userLoginId = await user_getOneUserId(); + const userLoginId = await user_funGetOneUserId(); const listPorto = await funGetListPortofolio(profileId); const dataProfile = await Profile_getOneProfileAndUserById(profileId); diff --git a/src/app/dev/portofolio/main/[id]/layout.tsx b/src/app/dev/portofolio/main/[id]/layout.tsx index 0fa87b85..30f2c15e 100644 --- a/src/app/dev/portofolio/main/[id]/layout.tsx +++ b/src/app/dev/portofolio/main/[id]/layout.tsx @@ -1,4 +1,4 @@ -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; import { PortofolioLayout } from "@/app_modules/katalog/portofolio"; import { portofolio_getOneById } from "@/app_modules/katalog/portofolio/fun/get/get_one_portofolio"; @@ -11,7 +11,7 @@ export default async function Layout({ }) { let portoId = params.id; const getPorto = await portofolio_getOneById(portoId); - const userLoginId = await user_getOneUserId(); + const userLoginId = await user_funGetOneUserId(); // console.log(userLoginId); // console.log(getPorto?.Profile?.User?.id); return ( diff --git a/src/app/dev/portofolio/main/[id]/page.tsx b/src/app/dev/portofolio/main/[id]/page.tsx index 6e863ebc..89a0bd87 100644 --- a/src/app/dev/portofolio/main/[id]/page.tsx +++ b/src/app/dev/portofolio/main/[id]/page.tsx @@ -1,12 +1,12 @@ import ComponentGlobal_IsEmptyData from "@/app_modules/_global/component/is_empty_data"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; import { ViewPortofolio } from "@/app_modules/katalog/portofolio"; import { portofolio_getOneById } from "@/app_modules/katalog/portofolio/fun/get/get_one_portofolio"; const mapboxToken = process.env.MAPBOX_TOKEN!; export default async function Page({ params }: { params: { id: string } }) { const getPorto = await portofolio_getOneById(params.id); - const userLoginId = await user_getOneUserId(); + const userLoginId = await user_funGetOneUserId(); return ( <> diff --git a/src/app/dev/profile/create/page.tsx b/src/app/dev/profile/create/page.tsx index 6f0b64c7..4c849b39 100644 --- a/src/app/dev/profile/create/page.tsx +++ b/src/app/dev/profile/create/page.tsx @@ -1,8 +1,8 @@ -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; import { CreateProfile } from "@/app_modules/katalog/profile"; export default async function Page() { - const userId = await user_getOneUserId(); + const userId = await user_funGetOneUserId(); return ( <> diff --git a/src/app/dev/user-not-active/page.tsx b/src/app/dev/user-not-active/page.tsx index 52f02abf..3437cade 100644 --- a/src/app/dev/user-not-active/page.tsx +++ b/src/app/dev/user-not-active/page.tsx @@ -1,12 +1,12 @@ import { RouterAdminDashboard } from "@/app/lib/router_hipmi/router_admin"; import { RouterHome } from "@/app/lib/router_hipmi/router_home"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; import { Home_UserNonActive } from "@/app_modules/home"; import { user_getOneByUserId } from "@/app_modules/home/fun/get/get_one_user_by_id"; import { redirect } from "next/navigation"; export default async function Page() { - const userId = await user_getOneUserId(); + const userId = await user_funGetOneUserId(); const dataUser = await user_getOneByUserId(userId); if (dataUser?.active === true) { diff --git a/src/app/dev/vote/detail/daftar-kontributor/[id]/page.tsx b/src/app/dev/vote/detail/daftar-kontributor/[id]/page.tsx new file mode 100644 index 00000000..451b4a9a --- /dev/null +++ b/src/app/dev/vote/detail/daftar-kontributor/[id]/page.tsx @@ -0,0 +1,13 @@ +import { Voting_UiDetailKontributorVoting } from "@/app_modules/vote/_ui"; +import { Vote_getListKontributorById } from "@/app_modules/vote/fun/get/get_list_kontributor_by_id"; + +export default async function Page({ params }: { params: { id: string } }) { + const votingId = params.id; + const listKontributor = await Vote_getListKontributorById(votingId); + + return ( + <> + + + ); +} diff --git a/src/app/dev/vote/detail/draft/[id]/page.tsx b/src/app/dev/vote/detail/draft/[id]/page.tsx index 850cb121..6403bd9f 100644 --- a/src/app/dev/vote/detail/draft/[id]/page.tsx +++ b/src/app/dev/vote/detail/draft/[id]/page.tsx @@ -1,9 +1,9 @@ import { Vote_DetailDraft } from "@/app_modules/vote"; -import { Vote_getOnebyId } from "@/app_modules/vote/fun/get/get_one_by_id"; +import { voting_funGetOneVotingbyId } from "@/app_modules/vote/fun/get/fun_get_one_by_id"; export default async function Page({ params }: { params: { id: string } }) { const voteId = params.id; - const dataVote = await Vote_getOnebyId(voteId); + const dataVote = await voting_funGetOneVotingbyId(voteId); return ( <> diff --git a/src/app/dev/vote/detail/kontribusi/[id]/layout.tsx b/src/app/dev/vote/detail/kontribusi/[id]/layout.tsx index ca76dac8..b580b73a 100644 --- a/src/app/dev/vote/detail/kontribusi/[id]/layout.tsx +++ b/src/app/dev/vote/detail/kontribusi/[id]/layout.tsx @@ -1,14 +1,25 @@ +import { user_funGetOneUserId } from "@/app_modules/fun_global"; import { LayoutVote_DetailKontribusi } from "@/app_modules/vote"; import React from "react"; export default async function Layout({ children, + params, }: { children: React.ReactNode; + params: { id: string }; }) { + const votingId = params.id; + const userLoginId = await user_funGetOneUserId(); + return ( <> - {children} + + {children} + ); } diff --git a/src/app/dev/vote/detail/kontribusi/[id]/page.tsx b/src/app/dev/vote/detail/kontribusi/[id]/page.tsx index 75dd7eb3..d42fc576 100644 --- a/src/app/dev/vote/detail/kontribusi/[id]/page.tsx +++ b/src/app/dev/vote/detail/kontribusi/[id]/page.tsx @@ -1,19 +1,13 @@ import { Vote_DetailKontribusi } from "@/app_modules/vote"; -import { Vote_getListKontributorById } from "@/app_modules/vote/fun/get/get_list_kontributor_by_id"; -import { Vote_getOnebyId } from "@/app_modules/vote/fun/get/get_one_by_id"; +import { voting_funGetOneVotingbyId } from "@/app_modules/vote/fun/get/fun_get_one_by_id"; export default async function Page({ params }: { params: { id: string } }) { let voteId = params.id; - const dataVote = await Vote_getOnebyId(voteId) - const listKontributor = await Vote_getListKontributorById(voteId) - + const dataVote = await voting_funGetOneVotingbyId(voteId); return ( <> - + ); } diff --git a/src/app/dev/vote/detail/main/[id]/layout.tsx b/src/app/dev/vote/detail/main/[id]/layout.tsx index 6e978bef..5514893f 100644 --- a/src/app/dev/vote/detail/main/[id]/layout.tsx +++ b/src/app/dev/vote/detail/main/[id]/layout.tsx @@ -1,14 +1,22 @@ +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; import { LayoutVote_MainDetail } from "@/app_modules/vote"; import React from "react"; export default async function Layout({ children, + params, }: { children: React.ReactNode; + params: { id: string }; }) { + const votingId = params.id; + const userLoginId = await user_funGetOneUserId(); + return ( <> - {children} + + {children} + ); } diff --git a/src/app/dev/vote/detail/main/[id]/page.tsx b/src/app/dev/vote/detail/main/[id]/page.tsx index c85e4ab3..f331be1f 100644 --- a/src/app/dev/vote/detail/main/[id]/page.tsx +++ b/src/app/dev/vote/detail/main/[id]/page.tsx @@ -1,19 +1,19 @@ -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; import { Vote_MainDetail } from "@/app_modules/vote"; import { Vote_cekKontributorById } from "@/app_modules/vote/fun/get/cek_kontributor_by_id"; import { Vote_getHasilVoteById } from "@/app_modules/vote/fun/get/get_list_hasil_by_id"; import { Vote_getListKontributorById } from "@/app_modules/vote/fun/get/get_list_kontributor_by_id"; -import { Vote_getOnebyId } from "@/app_modules/vote/fun/get/get_one_by_id"; +import { voting_funGetOneVotingbyId } from "@/app_modules/vote/fun/get/fun_get_one_by_id"; import { Vote_getOnePilihanVotingByUserId } from "@/app_modules/vote/fun/get/get_one_pilihan_voting_by_user_id"; export default async function Page({ params }: { params: { id: string } }) { const voteId = params.id; - const dataVote = await Vote_getOnebyId(voteId); + const dataVote = await voting_funGetOneVotingbyId(voteId); const hasilVoting = await Vote_getHasilVoteById(voteId as any); const isKontributor = await Vote_cekKontributorById(voteId); const pilihanKontributor = await Vote_getOnePilihanVotingByUserId(voteId); const listKontributor = await Vote_getListKontributorById(voteId); - const userLoginId = await user_getOneUserId(); + const userLoginId = await user_funGetOneUserId(); return ( <> diff --git a/src/app/dev/vote/detail/publish/[id]/layout.tsx b/src/app/dev/vote/detail/publish/[id]/layout.tsx index 6730430a..1865f488 100644 --- a/src/app/dev/vote/detail/publish/[id]/layout.tsx +++ b/src/app/dev/vote/detail/publish/[id]/layout.tsx @@ -1,10 +1,29 @@ +import { user_funGetOneUserId } from "@/app_modules/fun_global"; import { LayoutVote_DetailPublish } from "@/app_modules/vote"; +import { Voting_funGetOneVotingbyId } from "@/app_modules/vote/fun/get"; import React from "react"; -export default function Layout({ children }: { children: React.ReactNode }) { +export default async function Layout({ + children, + params, +}: { + children: React.ReactNode; + params: { id: string }; +}) { + const votingId = params.id; + const userLoginId = await user_funGetOneUserId(); + + const dataVoting = await Voting_funGetOneVotingbyId(votingId); + const authorId = dataVoting?.authorId; + return ( <> - {children} + + {children} + ); } diff --git a/src/app/dev/vote/detail/publish/[id]/page.tsx b/src/app/dev/vote/detail/publish/[id]/page.tsx index a0db9358..df0477dc 100644 --- a/src/app/dev/vote/detail/publish/[id]/page.tsx +++ b/src/app/dev/vote/detail/publish/[id]/page.tsx @@ -1,18 +1,14 @@ import { Vote_DetailPublish } from "@/app_modules/vote"; import { Vote_getListKontributorById } from "@/app_modules/vote/fun/get/get_list_kontributor_by_id"; -import { Vote_getOnebyId } from "@/app_modules/vote/fun/get/get_one_by_id"; +import { voting_funGetOneVotingbyId } from "@/app_modules/vote/fun/get/fun_get_one_by_id"; export default async function Page({ params }: { params: { id: string } }) { let voteId = params.id; - const dataVote = await Vote_getOnebyId(voteId); - const listKontributor = await Vote_getListKontributorById(voteId); + const dataVote = await voting_funGetOneVotingbyId(voteId); return ( <> - + ); } diff --git a/src/app/dev/vote/detail/reject/[id]/page.tsx b/src/app/dev/vote/detail/reject/[id]/page.tsx index 3f4c1b5f..e7b2ea93 100644 --- a/src/app/dev/vote/detail/reject/[id]/page.tsx +++ b/src/app/dev/vote/detail/reject/[id]/page.tsx @@ -1,9 +1,9 @@ import { Vote_DetailReject } from "@/app_modules/vote"; -import { Vote_getOnebyId } from "@/app_modules/vote/fun/get/get_one_by_id"; +import { voting_funGetOneVotingbyId } from "@/app_modules/vote/fun/get/fun_get_one_by_id"; export default async function Page({ params }: { params: { id: string } }) { let voteId = params.id; - const dataVote = await Vote_getOnebyId(voteId); + const dataVote = await voting_funGetOneVotingbyId(voteId); return ( <> diff --git a/src/app/dev/vote/detail/review/[id]/page.tsx b/src/app/dev/vote/detail/review/[id]/page.tsx index a9dbd486..f0febb86 100644 --- a/src/app/dev/vote/detail/review/[id]/page.tsx +++ b/src/app/dev/vote/detail/review/[id]/page.tsx @@ -1,9 +1,9 @@ import { Vote_DetailReview } from "@/app_modules/vote"; -import { Vote_getOnebyId } from "@/app_modules/vote/fun/get/get_one_by_id"; +import { voting_funGetOneVotingbyId } from "@/app_modules/vote/fun/get/fun_get_one_by_id"; export default async function Page({ params }: { params: { id: string } }) { let voteId = params.id; - const dataVote = await Vote_getOnebyId(voteId); + const dataVote = await voting_funGetOneVotingbyId(voteId); return ( <> diff --git a/src/app/dev/vote/detail/semua_riwayat/[id]/layout.tsx b/src/app/dev/vote/detail/semua_riwayat/[id]/layout.tsx index 4723aa9d..5906589f 100644 --- a/src/app/dev/vote/detail/semua_riwayat/[id]/layout.tsx +++ b/src/app/dev/vote/detail/semua_riwayat/[id]/layout.tsx @@ -1,14 +1,26 @@ +import { user_funGetOneUserId } from "@/app_modules/fun_global"; import { LayoutVote_DetailSemuaRiwayat } from "@/app_modules/vote"; import React from "react"; export default async function Layout({ children, + params, }: { children: React.ReactNode; + params: { id: string }; }) { + const votingId = params.id; + const userLoginId = await user_funGetOneUserId(); + + return ( <> - {children} + + {children} + ); } diff --git a/src/app/dev/vote/edit/[id]/page.tsx b/src/app/dev/vote/edit/[id]/page.tsx index d43d25e6..a5fb255e 100644 --- a/src/app/dev/vote/edit/[id]/page.tsx +++ b/src/app/dev/vote/edit/[id]/page.tsx @@ -1,11 +1,11 @@ import { Vote_Edit } from "@/app_modules/vote"; import { Vote_getListDaftarNamaById } from "@/app_modules/vote/fun/get/get_list_daftar_vote_by_id"; -import { Vote_getOnebyId } from "@/app_modules/vote/fun/get/get_one_by_id"; +import { voting_funGetOneVotingbyId } from "@/app_modules/vote/fun/get/fun_get_one_by_id"; import _ from "lodash"; export default async function Page({ params }: { params: { id: string } }) { let voteId = params.id; - const dataVote = await Vote_getOnebyId(voteId); + const dataVote = await voting_funGetOneVotingbyId(voteId); const data = _.omit(dataVote, ["Voting_DaftarNamaVote"]); const listDaftarVote = await Vote_getListDaftarNamaById(voteId); diff --git a/src/app/lib/router_hipmi/router_investasi.ts b/src/app/lib/router_hipmi/router_investasi.ts index 47ca54bb..92fe3d75 100644 --- a/src/app/lib/router_hipmi/router_investasi.ts +++ b/src/app/lib/router_hipmi/router_investasi.ts @@ -1,4 +1,7 @@ export const NEW_RouterInvestasi = { + // API + api_gambar: "/api/investasi/gambar/", + // Transaksi pembelian: "/dev/investasi/transaksi/pembelian/", metode_pembayaran: "/dev/investasi/transaksi/metode-pembayaran/", @@ -15,6 +18,10 @@ export const NEW_RouterInvestasi = { // detail detail_saham: "/dev/investasi/detail/saham/", + detail_publish: "/dev/investasi/detail_portofolio/publish/", + detail_review: "/dev/investasi/detail_portofolio/review/", + detail_draft: "/dev/investasi/detail_portofolio/draft/", + detail_reject: "/dev/investasi/detail_portofolio/reject/", }; export const RouterInvestasi_OLD = { diff --git a/src/app/lib/router_hipmi/router_vote.ts b/src/app/lib/router_hipmi/router_vote.ts index 9b1e1635..2bcf428e 100644 --- a/src/app/lib/router_hipmi/router_vote.ts +++ b/src/app/lib/router_hipmi/router_vote.ts @@ -21,4 +21,5 @@ export const RouterVote = { detail_kontribusi: "/dev/vote/detail/kontribusi/", detail_semua_riwayat: "/dev/vote/detail/semua_riwayat/", detail_riwayat_saya: "/dev/vote/detail/riwayat_saya/", + daftar_kontributor: "/dev/vote/detail/daftar-kontributor/", }; diff --git a/src/app_modules/_global/component/box_information.tsx b/src/app_modules/_global/component/box_information.tsx index f51fb951..ce66af3f 100644 --- a/src/app_modules/_global/component/box_information.tsx +++ b/src/app_modules/_global/component/box_information.tsx @@ -20,10 +20,10 @@ export default function ComponentGlobal_BoxInformation({ }} > - + * Report - + {informasi} @@ -38,7 +38,7 @@ export default function ComponentGlobal_BoxInformation({ }} > - + *{" "} {informasi} diff --git a/src/app_modules/_global/ui/index.ts b/src/app_modules/_global/ui/index.ts new file mode 100644 index 00000000..3f3bb8f8 --- /dev/null +++ b/src/app_modules/_global/ui/index.ts @@ -0,0 +1,11 @@ +import UIGlobal_Drawer from "./ui_drawer"; +import UIGlobal_LayoutHeaderTamplate from "./ui_header_tamplate"; +import UIGlobal_LayoutTamplate from "./ui_layout_tamplate"; +import UIGlobal_Modal from "./ui_modal"; +import UIGlobal_SplashScreen from "./ui_splash"; + +export { UIGlobal_LayoutTamplate }; +export { UIGlobal_LayoutHeaderTamplate }; +export { UIGlobal_Drawer }; +export { UIGlobal_Modal }; +export { UIGlobal_SplashScreen }; diff --git a/src/app_modules/admin/colab/fun/edit/fun_report_project_by_id.ts b/src/app_modules/admin/colab/fun/edit/fun_report_project_by_id.ts index 8a9f5b2f..9dba8149 100644 --- a/src/app_modules/admin/colab/fun/edit/fun_report_project_by_id.ts +++ b/src/app_modules/admin/colab/fun/edit/fun_report_project_by_id.ts @@ -2,7 +2,7 @@ import prisma from "@/app/lib/prisma"; import { RouterAdminColab } from "@/app/lib/router_admin/router_admin_colab"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; import { revalidatePath } from "next/cache"; export default async function adminColab_funReportProjectById({ @@ -12,7 +12,7 @@ export default async function adminColab_funReportProjectById({ colabId: string; report: string; }) { - const authorId = await user_getOneUserId(); + const authorId = await user_funGetOneUserId(); const projectUpdate = await prisma.projectCollaboration.update({ where: { diff --git a/src/app_modules/admin/notifikasi/fun/count/count_is_read.ts b/src/app_modules/admin/notifikasi/fun/count/count_is_read.ts index 8d1ca366..646069ea 100644 --- a/src/app_modules/admin/notifikasi/fun/count/count_is_read.ts +++ b/src/app_modules/admin/notifikasi/fun/count/count_is_read.ts @@ -1,10 +1,10 @@ "use server"; import prisma from "@/app/lib/prisma"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; export default async function adminNotifikasi_countNotifikasi() { - const adminId = await user_getOneUserId(); + const adminId = await user_funGetOneUserId(); const data = await prisma.notifikasi.findMany({ where: { diff --git a/src/app_modules/admin/notifikasi/fun/create/fun_create_notif_user.ts b/src/app_modules/admin/notifikasi/fun/create/fun_create_notif_user.ts index 9be8ca49..fd4dfcfb 100644 --- a/src/app_modules/admin/notifikasi/fun/create/fun_create_notif_user.ts +++ b/src/app_modules/admin/notifikasi/fun/create/fun_create_notif_user.ts @@ -1,7 +1,7 @@ "use server"; import prisma from "@/app/lib/prisma"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; import { MODEL_NOTIFIKASI } from "@/app_modules/notifikasi/model/interface"; export default async function adminNotifikasi_funCreateToUser({ @@ -9,7 +9,7 @@ export default async function adminNotifikasi_funCreateToUser({ }: { data: MODEL_NOTIFIKASI; }) { - const adminId = await user_getOneUserId(); + const adminId = await user_funGetOneUserId(); const create = await prisma.notifikasi.create({ data: { diff --git a/src/app_modules/admin/notifikasi/fun/get/get_notifikasi_by_user_id.ts b/src/app_modules/admin/notifikasi/fun/get/get_notifikasi_by_user_id.ts index d60b0047..5df0ec4b 100644 --- a/src/app_modules/admin/notifikasi/fun/get/get_notifikasi_by_user_id.ts +++ b/src/app_modules/admin/notifikasi/fun/get/get_notifikasi_by_user_id.ts @@ -1,11 +1,11 @@ "use server"; import prisma from "@/app/lib/prisma"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; import { NextRequest } from "next/server"; export default async function adminNotifikasi_getByUserId() { - const adminId = await user_getOneUserId(); + const adminId = await user_funGetOneUserId(); const data = await prisma.notifikasi.findMany({ orderBy: [ diff --git a/src/app_modules/admin/vote/child/table_review/index.tsx b/src/app_modules/admin/vote/child/table_review/index.tsx index c570352d..33e54f3f 100644 --- a/src/app_modules/admin/vote/child/table_review/index.tsx +++ b/src/app_modules/admin/vote/child/table_review/index.tsx @@ -20,22 +20,20 @@ import { Title, } from "@mantine/core"; import { useDisclosure } from "@mantine/hooks"; -import { IconBan, IconEyeShare, IconSearch } from "@tabler/icons-react"; -import _ from "lodash"; +import { IconBan, IconCircleCheck, IconSearch } from "@tabler/icons-react"; import { useRouter } from "next/navigation"; import { ComponentGlobal_NotifikasiBerhasil } from "@/app_modules/_global/notif_global/notifikasi_berhasil"; import { ComponentGlobal_NotifikasiGagal } from "@/app_modules/_global/notif_global/notifikasi_gagal"; import { ComponentGlobal_NotifikasiPeringatan } from "@/app_modules/_global/notif_global/notifikasi_peringatan"; +import adminNotifikasi_funCreateToUser from "@/app_modules/admin/notifikasi/fun/create/fun_create_notif_user"; +import mqtt_client from "@/util/mqtt_client"; import moment from "moment"; import { useState } from "react"; +import { adminVote_funGetListReview } from "../../fun"; import { AdminVote_funEditStatusPublishById } from "../../fun/edit/fun_edit_status_publish_by_id"; import { AdminEvent_funEditCatatanById } from "../../fun/edit/fun_edit_status_reject_by_id"; import { AdminVote_getListTableByStatusId } from "../../fun/get/get_list_table_by_status_id"; -import mqtt_client from "@/util/mqtt_client"; -import adminNotifikasi_funCreateToUser from "@/app_modules/admin/notifikasi/fun/create/fun_create_notif_user"; -import { adminVote_funGetListReview } from "../../fun"; -import { IconCircleCheckFilled } from "@tabler/icons-react"; export default function AdminVote_TableReview({ listVote, @@ -134,7 +132,7 @@ function TableStatus({ listData }: { listData: any }) { } w={120} color={"green"} - leftIcon={} + leftIcon={} radius={"xl"} onClick={() => onPublish( diff --git a/src/app_modules/colab/fun/create/fun_create_proyek.ts b/src/app_modules/colab/fun/create/fun_create_proyek.ts index 5a194ed2..77ad80a2 100644 --- a/src/app_modules/colab/fun/create/fun_create_proyek.ts +++ b/src/app_modules/colab/fun/create/fun_create_proyek.ts @@ -2,7 +2,7 @@ import prisma from "@/app/lib/prisma"; import { MODEL_COLLABORATION } from "../../model/interface"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; import { revalidatePath } from "next/cache"; import { RouterColab } from "@/app/lib/router_hipmi/router_colab"; import _ from "lodash"; @@ -10,7 +10,7 @@ import _ from "lodash"; export default async function colab_funCreateProyek( value: MODEL_COLLABORATION ) { - const AuthorId = await user_getOneUserId(); + const AuthorId = await user_funGetOneUserId(); const data = await prisma.projectCollaboration.create({ data: { diff --git a/src/app_modules/colab/fun/create/fun_create_room_chat.ts b/src/app_modules/colab/fun/create/fun_create_room_chat.ts index 0d6cb1d3..8111d59c 100644 --- a/src/app_modules/colab/fun/create/fun_create_room_chat.ts +++ b/src/app_modules/colab/fun/create/fun_create_room_chat.ts @@ -1,14 +1,14 @@ "use server"; import prisma from "@/app/lib/prisma"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; export default async function colab_funCreateRoomChat( nameRoom: string, value: any[], colabId: string ) { - const authorId = await user_getOneUserId(); + const authorId = await user_funGetOneUserId(); const createRoom = await prisma.projectCollaboration_RoomChat.create({ data: { diff --git a/src/app_modules/colab/fun/create/room/fun_create_message_by_user_id.ts b/src/app_modules/colab/fun/create/room/fun_create_message_by_user_id.ts index dfa6d8f8..491d858e 100644 --- a/src/app_modules/colab/fun/create/room/fun_create_message_by_user_id.ts +++ b/src/app_modules/colab/fun/create/room/fun_create_message_by_user_id.ts @@ -2,14 +2,14 @@ import prisma from "@/app/lib/prisma"; import { RouterColab } from "@/app/lib/router_hipmi/router_colab"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; import { revalidatePath } from "next/cache"; export default async function colab_funCreateMessageByUserId( message: string, roomId: string ) { - const userLoginId = await user_getOneUserId(); + const userLoginId = await user_funGetOneUserId(); const msg = await prisma.projectCollaboration_Message.create({ data: { userId: userLoginId, diff --git a/src/app_modules/colab/fun/get/cek_notifikasi.ts b/src/app_modules/colab/fun/get/cek_notifikasi.ts index 6ec38406..a22e80f6 100644 --- a/src/app_modules/colab/fun/get/cek_notifikasi.ts +++ b/src/app_modules/colab/fun/get/cek_notifikasi.ts @@ -1,10 +1,10 @@ "use server"; import prisma from "@/app/lib/prisma"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; export default async function colab_CekNotifikasi() { - const authorId = await user_getOneUserId(); + const authorId = await user_funGetOneUserId(); const cekNotif = await prisma.projectCollaboration_Notifikasi.findMany({ where: { diff --git a/src/app_modules/colab/fun/get/cek_partisipasi_by_user_id.ts b/src/app_modules/colab/fun/get/cek_partisipasi_by_user_id.ts index d88a0c23..cb8c3aa1 100644 --- a/src/app_modules/colab/fun/get/cek_partisipasi_by_user_id.ts +++ b/src/app_modules/colab/fun/get/cek_partisipasi_by_user_id.ts @@ -1,10 +1,10 @@ "use server"; import prisma from "@/app/lib/prisma"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; export default async function colab_funCekPartisipasiById(colabId: string) { - const UserLoginId = await user_getOneUserId(); + const UserLoginId = await user_funGetOneUserId(); const cek = await prisma.projectCollaboration_Partisipasi.findFirst({ where: { diff --git a/src/app_modules/colab/fun/get/get_list_by_status_id.ts b/src/app_modules/colab/fun/get/get_list_by_status_id.ts index 5ca29c22..926ae766 100644 --- a/src/app_modules/colab/fun/get/get_list_by_status_id.ts +++ b/src/app_modules/colab/fun/get/get_list_by_status_id.ts @@ -1,10 +1,10 @@ "use server"; import prisma from "@/app/lib/prisma"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; export default async function colab_getListByStatusId(statusId: number) { - const AuthorId = await user_getOneUserId(); + const AuthorId = await user_funGetOneUserId(); const data = await prisma.projectCollaboration.findMany({ where: { userId: AuthorId, diff --git a/src/app_modules/colab/fun/get/get_list_notifikasi_by_user_id.ts b/src/app_modules/colab/fun/get/get_list_notifikasi_by_user_id.ts index a775599c..523f5146 100644 --- a/src/app_modules/colab/fun/get/get_list_notifikasi_by_user_id.ts +++ b/src/app_modules/colab/fun/get/get_list_notifikasi_by_user_id.ts @@ -1,10 +1,10 @@ "use server"; import prisma from "@/app/lib/prisma"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; export default async function colab_getListNotifikasiByUserId() { - const authorId = await user_getOneUserId(); + const authorId = await user_funGetOneUserId(); const get = await prisma.projectCollaboration_Notifikasi.findMany({ orderBy: { diff --git a/src/app_modules/colab/fun/get/pasrtisipan/get_list_partisipasi_proyek_by_author_id.ts b/src/app_modules/colab/fun/get/pasrtisipan/get_list_partisipasi_proyek_by_author_id.ts index 087b914c..147fe2a7 100644 --- a/src/app_modules/colab/fun/get/pasrtisipan/get_list_partisipasi_proyek_by_author_id.ts +++ b/src/app_modules/colab/fun/get/pasrtisipan/get_list_partisipasi_proyek_by_author_id.ts @@ -1,14 +1,14 @@ "use server"; import prisma from "@/app/lib/prisma"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; export default async function colab_getListPartisipasiProyekByAuthorId({ page, }: { page: number; }) { - const authorId = await user_getOneUserId(); + const authorId = await user_funGetOneUserId(); const takeData = 5; const skipData = page * takeData - takeData; diff --git a/src/app_modules/colab/fun/get/pasrtisipan/get_list_proyek_saya_by_author_id.ts b/src/app_modules/colab/fun/get/pasrtisipan/get_list_proyek_saya_by_author_id.ts index f3f93d37..594d9398 100644 --- a/src/app_modules/colab/fun/get/pasrtisipan/get_list_proyek_saya_by_author_id.ts +++ b/src/app_modules/colab/fun/get/pasrtisipan/get_list_proyek_saya_by_author_id.ts @@ -1,14 +1,14 @@ "use server"; import prisma from "@/app/lib/prisma"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; export default async function colab_getListAllProyekSayaByAuthorId({ page, }: { page: number; }) { - const authorId = await user_getOneUserId(); + const authorId = await user_funGetOneUserId(); const takeData = 5; const skipData = page * takeData - takeData; diff --git a/src/app_modules/colab/fun/get/room_chat/get_list_room_by_author_id.ts b/src/app_modules/colab/fun/get/room_chat/get_list_room_by_author_id.ts index 68f19257..f0da803f 100644 --- a/src/app_modules/colab/fun/get/room_chat/get_list_room_by_author_id.ts +++ b/src/app_modules/colab/fun/get/room_chat/get_list_room_by_author_id.ts @@ -1,10 +1,10 @@ "use server"; import prisma from "@/app/lib/prisma"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; export default async function colab_getListRoomChatByAuthorId({page}: {page: number}) { - const userLoginId = await user_getOneUserId(); + const userLoginId = await user_funGetOneUserId(); const takeData = 10; const skipData = page * takeData - takeData; diff --git a/src/app_modules/donasi/fun/get/get_all_invoice_by_author_id.tsx b/src/app_modules/donasi/fun/get/get_all_invoice_by_author_id.tsx index 0c1c5c45..9daafdf1 100644 --- a/src/app_modules/donasi/fun/get/get_all_invoice_by_author_id.tsx +++ b/src/app_modules/donasi/fun/get/get_all_invoice_by_author_id.tsx @@ -1,14 +1,14 @@ "use server"; import prisma from "@/app/lib/prisma"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; export async function donasi_funGetAllInvoiceByAuthorId({ page, }: { page: number; }) { - const authorId = await user_getOneUserId(); + const authorId = await user_funGetOneUserId(); const takeData = 5; const skipData = page * takeData - takeData; diff --git a/src/app_modules/donasi/fun/get/status/get_all_status_draft.ts b/src/app_modules/donasi/fun/get/status/get_all_status_draft.ts index b0e17ab6..e0a9f38f 100644 --- a/src/app_modules/donasi/fun/get/status/get_all_status_draft.ts +++ b/src/app_modules/donasi/fun/get/status/get_all_status_draft.ts @@ -1,10 +1,10 @@ "use server"; import prisma from "@/app/lib/prisma"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; export async function donasi_funGetAllStatusDraft({ page }: { page: number }) { - const authorId = await user_getOneUserId(); + const authorId = await user_funGetOneUserId(); const takeData = 5; const skipData = page * takeData - takeData; diff --git a/src/app_modules/donasi/fun/get/status/get_all_status_publish.ts b/src/app_modules/donasi/fun/get/status/get_all_status_publish.ts index 106554b9..bd1b4b9b 100644 --- a/src/app_modules/donasi/fun/get/status/get_all_status_publish.ts +++ b/src/app_modules/donasi/fun/get/status/get_all_status_publish.ts @@ -1,10 +1,10 @@ "use server"; import prisma from "@/app/lib/prisma"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; export async function donasi_funGetAllStatusPublish({ page }: { page: number }) { - const authorId = await user_getOneUserId(); + const authorId = await user_funGetOneUserId(); const takeData = 5; const skipData = page * takeData - takeData; diff --git a/src/app_modules/donasi/fun/get/status/get_all_status_reject.ts b/src/app_modules/donasi/fun/get/status/get_all_status_reject.ts index 7ba4bb77..c528212d 100644 --- a/src/app_modules/donasi/fun/get/status/get_all_status_reject.ts +++ b/src/app_modules/donasi/fun/get/status/get_all_status_reject.ts @@ -1,10 +1,10 @@ "use server"; import prisma from "@/app/lib/prisma"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; export async function donasi_funGetAllStatusReject({ page }: { page: number }) { - const authorId = await user_getOneUserId(); + const authorId = await user_funGetOneUserId(); const takeData = 5; const skipData = page * takeData - takeData; diff --git a/src/app_modules/donasi/fun/get/status/get_all_status_review.ts b/src/app_modules/donasi/fun/get/status/get_all_status_review.ts index 89247a2a..81266566 100644 --- a/src/app_modules/donasi/fun/get/status/get_all_status_review.ts +++ b/src/app_modules/donasi/fun/get/status/get_all_status_review.ts @@ -1,10 +1,10 @@ "use server" import prisma from "@/app/lib/prisma"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; export async function donasi_funGetAllStatusReview({page}: {page: number}) { - const authorId = await user_getOneUserId(); + const authorId = await user_funGetOneUserId(); const takeData = 5; const skipData = page * takeData - takeData; diff --git a/src/app_modules/event/fun/get/get_list_kontribusi_by_user_id.ts b/src/app_modules/event/fun/get/get_list_kontribusi_by_user_id.ts index ad783347..daf92344 100644 --- a/src/app_modules/event/fun/get/get_list_kontribusi_by_user_id.ts +++ b/src/app_modules/event/fun/get/get_list_kontribusi_by_user_id.ts @@ -1,10 +1,10 @@ "use server"; import prisma from "@/app/lib/prisma"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; export async function event_getListKontibusiByUserId({page}: {page: number}) { - const userLoginId = await user_getOneUserId(); + const userLoginId = await user_funGetOneUserId(); const takeData = 10; const skipData = page * takeData - takeData; diff --git a/src/app_modules/event/fun/get/get_list_riwayat_saya.ts b/src/app_modules/event/fun/get/get_list_riwayat_saya.ts index a1b70879..dabb4675 100644 --- a/src/app_modules/event/fun/get/get_list_riwayat_saya.ts +++ b/src/app_modules/event/fun/get/get_list_riwayat_saya.ts @@ -1,11 +1,11 @@ "use server"; import prisma from "@/app/lib/prisma"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; import _ from "lodash"; export async function event_getListRiwayatSaya({page}: {page: number}) { - const authorId = await user_getOneUserId(); + const authorId = await user_funGetOneUserId(); const takeData = 10; const skipData = page * takeData - takeData; diff --git a/src/app_modules/event/fun/get/status/get_all_draft.ts b/src/app_modules/event/fun/get/status/get_all_draft.ts index 6a83f11a..4bcd2da8 100644 --- a/src/app_modules/event/fun/get/status/get_all_draft.ts +++ b/src/app_modules/event/fun/get/status/get_all_draft.ts @@ -1,10 +1,10 @@ "use server"; import prisma from "@/app/lib/prisma"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; export async function event_getAllDraft({ page }: { page: number }) { - const authorId = await user_getOneUserId(); + const authorId = await user_funGetOneUserId(); const takeData = 10; const skipData = page * takeData - takeData; diff --git a/src/app_modules/event/fun/get/status/get_all_reject.ts b/src/app_modules/event/fun/get/status/get_all_reject.ts index ad3b5752..d6622298 100644 --- a/src/app_modules/event/fun/get/status/get_all_reject.ts +++ b/src/app_modules/event/fun/get/status/get_all_reject.ts @@ -1,10 +1,10 @@ "use server"; import prisma from "@/app/lib/prisma"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; export async function event_getAllReject({ page }: { page: number }) { - const authorId = await user_getOneUserId(); + const authorId = await user_funGetOneUserId(); const takeData = 10; const skipData = page * takeData - takeData; diff --git a/src/app_modules/event/fun/get/status/get_all_review.ts b/src/app_modules/event/fun/get/status/get_all_review.ts index a2dab982..37d84f9a 100644 --- a/src/app_modules/event/fun/get/status/get_all_review.ts +++ b/src/app_modules/event/fun/get/status/get_all_review.ts @@ -1,10 +1,10 @@ "use server"; import prisma from "@/app/lib/prisma"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; export async function event_getAllReview({ page }: { page: number }) { - const authorId = await user_getOneUserId(); + const authorId = await user_funGetOneUserId(); const takeData = 10; const skipData = page * takeData - takeData; diff --git a/src/app_modules/event/fun/get/status/get_all_status_publish.ts b/src/app_modules/event/fun/get/status/get_all_status_publish.ts index 07cfa16a..73dd34af 100644 --- a/src/app_modules/event/fun/get/status/get_all_status_publish.ts +++ b/src/app_modules/event/fun/get/status/get_all_status_publish.ts @@ -1,10 +1,10 @@ "use server"; import prisma from "@/app/lib/prisma"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; export async function event_funGetAllStatusPublish({ page }: { page: number }) { - const authorId = await user_getOneUserId(); + const authorId = await user_funGetOneUserId(); const takeData = 10; const skipData = page * takeData - takeData; diff --git a/src/app_modules/forum/component/komentar_component/komentar_button_more.tsx b/src/app_modules/forum/component/komentar_component/komentar_button_more.tsx index 0b4ef171..a6b4b9be 100644 --- a/src/app_modules/forum/component/komentar_component/komentar_button_more.tsx +++ b/src/app_modules/forum/component/komentar_component/komentar_button_more.tsx @@ -26,7 +26,7 @@ import ComponentGlobal_V2_LoadingPage from "@/app_modules/_global/loading_page_v import { useAtom } from "jotai"; import { gs_forum_loading_edit_posting } from "../../global_state"; import ComponentForum_LoadingDrawer from "../loading_drawer"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; import { forum_funDeletePostingById } from "../../fun/delete/fun_delete_posting_by_id"; import { ComponentGlobal_NotifikasiGagal } from "@/app_modules/_global/notif_global/notifikasi_gagal"; import { forum_funDeleteKomentarById } from "../../fun/delete/fun_delete_komentar_by_id"; diff --git a/src/app_modules/forum/component/more_button/detail_more_button.tsx b/src/app_modules/forum/component/more_button/detail_more_button.tsx index 473067fa..17e43c40 100644 --- a/src/app_modules/forum/component/more_button/detail_more_button.tsx +++ b/src/app_modules/forum/component/more_button/detail_more_button.tsx @@ -32,7 +32,7 @@ import ComponentGlobal_V2_LoadingPage from "@/app_modules/_global/loading_page_v import { useAtom } from "jotai"; import { gs_forum_loading_edit_posting } from "../../global_state"; import ComponentForum_LoadingDrawer from "../loading_drawer"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; import { forum_funDeletePostingById } from "../../fun/delete/fun_delete_posting_by_id"; import { ComponentGlobal_NotifikasiGagal } from "@/app_modules/_global/notif_global/notifikasi_gagal"; import { IconSquareCheck } from "@tabler/icons-react"; diff --git a/src/app_modules/forum/component/more_button/posting_button_more.tsx b/src/app_modules/forum/component/more_button/posting_button_more.tsx index e9a13b00..ff9c634c 100644 --- a/src/app_modules/forum/component/more_button/posting_button_more.tsx +++ b/src/app_modules/forum/component/more_button/posting_button_more.tsx @@ -33,7 +33,7 @@ import ComponentGlobal_V2_LoadingPage from "@/app_modules/_global/loading_page_v import { useAtom } from "jotai"; import { gs_forum_loading_edit_posting } from "../../global_state"; import ComponentForum_LoadingDrawer from "../loading_drawer"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; import { forum_funDeletePostingById } from "../../fun/delete/fun_delete_posting_by_id"; import { ComponentGlobal_NotifikasiGagal } from "@/app_modules/_global/notif_global/notifikasi_gagal"; import { forum_funEditStatusPostingById } from "../../fun/edit/fun_edit_status_posting_by_id"; diff --git a/src/app_modules/forum/fun/count/count_posting_by_author_id.ts b/src/app_modules/forum/fun/count/count_posting_by_author_id.ts index fe50cf95..5996d77f 100644 --- a/src/app_modules/forum/fun/count/count_posting_by_author_id.ts +++ b/src/app_modules/forum/fun/count/count_posting_by_author_id.ts @@ -1,7 +1,7 @@ "use server"; import prisma from "@/app/lib/prisma"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; export async function forum_countPostingByAuthorId(authorId: string) { diff --git a/src/app_modules/forum/fun/create/fun_create.tsx b/src/app_modules/forum/fun/create/fun_create.tsx index 20cb6e85..f689d23a 100644 --- a/src/app_modules/forum/fun/create/fun_create.tsx +++ b/src/app_modules/forum/fun/create/fun_create.tsx @@ -1,11 +1,11 @@ "use server"; import prisma from "@/app/lib/prisma"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; import { revalidatePath } from "next/cache"; export async function forum_funCreate(value: string) { - const AuthorId = await user_getOneUserId(); + const AuthorId = await user_funGetOneUserId(); const create = await prisma.forum_Posting.create({ data: { diff --git a/src/app_modules/forum/fun/create/fun_create_komentar.tsx b/src/app_modules/forum/fun/create/fun_create_komentar.tsx index 3afa9897..41373377 100644 --- a/src/app_modules/forum/fun/create/fun_create_komentar.tsx +++ b/src/app_modules/forum/fun/create/fun_create_komentar.tsx @@ -1,14 +1,14 @@ "use server"; import prisma from "@/app/lib/prisma"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; import { revalidatePath } from "next/cache"; export async function forum_funCreateKomentar( postingId: string, komentar: string ) { - const authorId = await user_getOneUserId(); + const authorId = await user_funGetOneUserId(); const create = await prisma.forum_Komentar.create({ data: { diff --git a/src/app_modules/forum/fun/create/fun_create_report_komentar.ts b/src/app_modules/forum/fun/create/fun_create_report_komentar.ts index 932a921b..53958139 100644 --- a/src/app_modules/forum/fun/create/fun_create_report_komentar.ts +++ b/src/app_modules/forum/fun/create/fun_create_report_komentar.ts @@ -1,7 +1,7 @@ "use server"; import prisma from "@/app/lib/prisma"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; export async function forum_funCreateReportKomentar({ komentarId, @@ -10,7 +10,7 @@ export async function forum_funCreateReportKomentar({ komentarId: string; kategoriId: any; }) { - const authorId = await user_getOneUserId(); + const authorId = await user_funGetOneUserId(); // console.log(kategoriId); // const cekId = await prisma.forumMaster_KategoriReport.findFirst({ diff --git a/src/app_modules/forum/fun/create/fun_create_report_komentar_lainnya.ts b/src/app_modules/forum/fun/create/fun_create_report_komentar_lainnya.ts index e374dc97..b2f3655b 100644 --- a/src/app_modules/forum/fun/create/fun_create_report_komentar_lainnya.ts +++ b/src/app_modules/forum/fun/create/fun_create_report_komentar_lainnya.ts @@ -1,13 +1,13 @@ "use server"; import prisma from "@/app/lib/prisma"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; export async function forum_funCreateReportKomentarLainnya( komentarId: string, deskripsi: string ) { - const authorId = await user_getOneUserId(); + const authorId = await user_funGetOneUserId(); const create = await prisma.forum_ReportKomentar.create({ data: { forum_KomentarId: komentarId, diff --git a/src/app_modules/forum/fun/create/fun_create_report_posting.ts b/src/app_modules/forum/fun/create/fun_create_report_posting.ts index 7f93de05..8d544d8f 100644 --- a/src/app_modules/forum/fun/create/fun_create_report_posting.ts +++ b/src/app_modules/forum/fun/create/fun_create_report_posting.ts @@ -1,7 +1,7 @@ "use server"; import prisma from "@/app/lib/prisma"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; import { revalidatePath } from "next/cache"; export async function forum_funCreateReportPosting({ @@ -11,7 +11,7 @@ export async function forum_funCreateReportPosting({ postingId: string; kategoriId: number; }) { - const authorId = await user_getOneUserId(); + const authorId = await user_funGetOneUserId(); const createReport = await prisma.forum_ReportPosting.create({ data: { diff --git a/src/app_modules/forum/fun/create/fun_create_report_posting_lainnya.ts b/src/app_modules/forum/fun/create/fun_create_report_posting_lainnya.ts index 37ac602e..7cb807a3 100644 --- a/src/app_modules/forum/fun/create/fun_create_report_posting_lainnya.ts +++ b/src/app_modules/forum/fun/create/fun_create_report_posting_lainnya.ts @@ -1,13 +1,13 @@ "use server"; import prisma from "@/app/lib/prisma"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; export async function forum_funCreateReportPostingLainnya( postingId: string, deskripsi: string ) { - const authorId = await user_getOneUserId(); + const authorId = await user_funGetOneUserId(); const create = await prisma.forum_ReportPosting.create({ data: { forum_PostingId: postingId, diff --git a/src/app_modules/forum/fun/get/get_list_posting_by_author_id.ts b/src/app_modules/forum/fun/get/get_list_posting_by_author_id.ts index bfbbb073..14675d22 100644 --- a/src/app_modules/forum/fun/get/get_list_posting_by_author_id.ts +++ b/src/app_modules/forum/fun/get/get_list_posting_by_author_id.ts @@ -1,7 +1,7 @@ "use server"; import prisma from "@/app/lib/prisma"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; import _ from "lodash"; export async function forum_getAllPostingByAuhtorId({ diff --git a/src/app_modules/fun_global/get_user_token.ts b/src/app_modules/fun_global/get_user_token.ts index 50f0dcb9..2be2571e 100644 --- a/src/app_modules/fun_global/get_user_token.ts +++ b/src/app_modules/fun_global/get_user_token.ts @@ -8,7 +8,7 @@ import { redirect } from "next/navigation"; import { RouterAuth } from "@/app/lib/router_hipmi/router_auth"; const config = yaml.parse(fs.readFileSync("config.yaml").toString()); -export async function user_getOneUserId() { +export async function user_funGetOneUserId() { const c = cookies().get("ssn"); if (!c?.value || c.value === "") return redirect(RouterAuth.login); diff --git a/src/app_modules/fun_global/index.ts b/src/app_modules/fun_global/index.ts new file mode 100644 index 00000000..da747c6f --- /dev/null +++ b/src/app_modules/fun_global/index.ts @@ -0,0 +1,3 @@ +import { user_funGetOneUserId } from "./get_user_token"; + +export { user_funGetOneUserId }; diff --git a/src/app_modules/investasi/_component/comp_card_border_and_background.tsx b/src/app_modules/investasi/_component/comp_card_border_and_background.tsx index a860bc3d..7a12ebee 100644 --- a/src/app_modules/investasi/_component/comp_card_border_and_background.tsx +++ b/src/app_modules/investasi/_component/comp_card_border_and_background.tsx @@ -1,6 +1,7 @@ import { AccentColor } from "@/app_modules/_global/color"; +import { ComponentGlobal_CardLoadingOverlay } from "@/app_modules/_global/component"; import { Card } from "@mantine/core"; -import React from "react"; +import React, { useState } from "react"; export function Investasi_ComponentStylesCard({ children, @@ -13,9 +14,9 @@ export function Investasi_ComponentStylesCard({ backgroundColor?: string; border?: string; marginBottom?: string | number; - onClickHandler?: (val: any) => void; + onClickHandler?: React.MouseEventHandler; }) { - + return ( <> {data?.title} - {/* */} + {/* + /> */} diff --git a/src/app_modules/investasi/_component/main/comp_card_portofolio_not_publish.tsx b/src/app_modules/investasi/_component/main/comp_card_portofolio_not_publish.tsx new file mode 100644 index 00000000..5db92ecc --- /dev/null +++ b/src/app_modules/investasi/_component/main/comp_card_portofolio_not_publish.tsx @@ -0,0 +1,60 @@ +import { RouterInvestasi_OLD } from "@/app/lib/router_hipmi/router_investasi"; +import { Grid, Stack, AspectRatio, Paper, Text, Image } from "@mantine/core"; +import _ from "lodash"; +import { MODEL_INVESTASI } from "../../_lib/interface"; +import { Investasi_ComponentStylesCard } from "../comp_card_border_and_background"; +import { useRouter } from "next/navigation"; +import { useState } from "react"; +import { ComponentGlobal_CardLoadingOverlay } from "@/app_modules/_global/component"; + +export function Investasi_ComponentCardPortofolio_NotPublish({ + data, + path, +}: { + data: MODEL_INVESTASI; + path: string; +}) { + const router = useRouter(); + const [visible, setVisible] = useState(false); + + return ( + <> + { + router.push(path + data?.id); + setVisible(true); + }} + > + + + + {" "} + {_.startCase(data.title)} + + + Target Dana: + + Rp.{" "} + {new Intl.NumberFormat("id-ID", { + maximumSignificantDigits: 10, + }).format(+data.targetDana)} + + + + + + + + + + + + + {visible && } + + + ); +} diff --git a/src/app_modules/investasi/_component/main/comp_card_portofolio_publish.tsx b/src/app_modules/investasi/_component/main/comp_card_portofolio_publish.tsx new file mode 100644 index 00000000..2f3d20ee --- /dev/null +++ b/src/app_modules/investasi/_component/main/comp_card_portofolio_publish.tsx @@ -0,0 +1,107 @@ +import { + NEW_RouterInvestasi, + RouterInvestasi_OLD, +} from "@/app/lib/router_hipmi/router_investasi"; +import { + Grid, + Stack, + AspectRatio, + Paper, + Group, + Box, + Text, + Image, +} from "@mantine/core"; +import { IconCircleCheck, IconChecklist } from "@tabler/icons-react"; +import _ from "lodash"; +import moment from "moment"; +import { MODEL_INVESTASI } from "../../_lib/interface"; +import { Investasi_ComponentStylesCard } from "../comp_card_border_and_background"; +import { useRouter } from "next/navigation"; +import { useState } from "react"; +import { ComponentGlobal_CardLoadingOverlay } from "@/app_modules/_global/component"; + +export function Investasi_ComponentCardPortofolioPublish({ + data, +}: { + data: MODEL_INVESTASI; +}) { + const router = useRouter(); + const [visible, setVisible] = useState(false); + + return ( + <> + { + router.push(NEW_RouterInvestasi.detail_publish + data?.id); + setVisible(true); + }} + > + + + {_.capitalize(data?.title)} + + Target Dana: + + Rp.{" "} + {new Intl.NumberFormat("id-ID", { + maximumSignificantDigits: 10, + }).format(+data?.targetDana)} + + + + + + + + + + + + + + + {Number(data?.MasterPencarianInvestor.name) - + moment(new Date()).diff(new Date(data?.updatedAt), "days") <= + 0 ? ( + + + Selesai + + ) : ( + + + {Number(data?.MasterPencarianInvestor.name) - + moment(new Date()).diff(new Date(data?.countDown), "days") <= + 0 ? ( + + + Selesai + + ) : ( + + Sisa Waktu : {} + {Number(data?.MasterPencarianInvestor.name) - + moment(new Date()).diff( + new Date(data?.countDown), + "days" + )}{" "} + hari + + )} + + + )} + + {visible && } + + + ); +} diff --git a/src/app_modules/investasi/_fun/create/fun_create_invoice.ts b/src/app_modules/investasi/_fun/create/fun_create_invoice.ts index eb40c6b5..301998a1 100644 --- a/src/app_modules/investasi/_fun/create/fun_create_invoice.ts +++ b/src/app_modules/investasi/_fun/create/fun_create_invoice.ts @@ -1,7 +1,7 @@ "use server"; import prisma from "@/app/lib/prisma"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; interface Model_Invoice_Masuk { total: number; @@ -14,7 +14,7 @@ export async function investasi_funCreateInvoice({ }: { data: Model_Invoice_Masuk; }) { - const authorId = await user_getOneUserId(); + const authorId = await user_funGetOneUserId(); const create = await prisma.investasi_Invoice.create({ data: { diff --git a/src/app_modules/investasi/_fun/get/fun_get_all_investasi_by_user_id.ts b/src/app_modules/investasi/_fun/get/fun_get_all_investasi_by_user_id.ts new file mode 100644 index 00000000..a706ea01 --- /dev/null +++ b/src/app_modules/investasi/_fun/get/fun_get_all_investasi_by_user_id.ts @@ -0,0 +1,31 @@ +"use server"; + +import prisma from "@/app/lib/prisma"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; + +export async function investasi_funGetAllPublishByUserId({ + page, +}: { + page: number; +}) { + const authorId = await user_funGetOneUserId(); + const takeData = 10; + const skipData = page * takeData - takeData; + + const data = await prisma.investasi.findMany({ + take: takeData, + skip: skipData, + orderBy: { + countDown: "desc", + }, + where: { + authorId: authorId, + masterStatusInvestasiId: "1", + }, + include: { + MasterPencarianInvestor: true, + }, + }); + + return data; +} diff --git a/src/app_modules/investasi/_fun/get/fun_get_all_investasi_non_publish_by_user_id.tsx b/src/app_modules/investasi/_fun/get/fun_get_all_investasi_non_publish_by_user_id.tsx new file mode 100644 index 00000000..b183fce9 --- /dev/null +++ b/src/app_modules/investasi/_fun/get/fun_get_all_investasi_non_publish_by_user_id.tsx @@ -0,0 +1,30 @@ +"use server"; + +import prisma from "@/app/lib/prisma"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; + +export async function investasi_funGetAllInvestasiNonPublishByUserId({ + page, + statusId, +}: { + page: number; + statusId: string; +}) { + const authorId = await user_funGetOneUserId(); + const takeData = 10; + const skipData = page * takeData - takeData; + + const data = await prisma.investasi.findMany({ + take: takeData, + skip: skipData, + orderBy: { + updatedAt: "desc", + }, + where: { + authorId: authorId, + masterStatusInvestasiId: statusId, + }, + }); + + return data; +} diff --git a/src/app_modules/investasi/_fun/get/fun_get_all_transaksi_by_user_id.tsx b/src/app_modules/investasi/_fun/get/fun_get_all_transaksi_by_user_id.ts similarity index 80% rename from src/app_modules/investasi/_fun/get/fun_get_all_transaksi_by_user_id.tsx rename to src/app_modules/investasi/_fun/get/fun_get_all_transaksi_by_user_id.ts index 04d03ae8..66664708 100644 --- a/src/app_modules/investasi/_fun/get/fun_get_all_transaksi_by_user_id.tsx +++ b/src/app_modules/investasi/_fun/get/fun_get_all_transaksi_by_user_id.ts @@ -1,14 +1,14 @@ "use server"; import prisma from "@/app/lib/prisma"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; export async function investasi_funGetTransaksiByUserId({ page, }: { page: number; }) { - const authorId = await user_getOneUserId(); + const authorId = await user_funGetOneUserId(); const takeData = 10; const skipData = page * takeData - takeData; diff --git a/src/app_modules/investasi/_fun/get/fun_get_one_investasi_by_id.ts b/src/app_modules/investasi/_fun/get/fun_get_one_investasi_by_id.ts index beeacaca..2173a3db 100644 --- a/src/app_modules/investasi/_fun/get/fun_get_one_investasi_by_id.ts +++ b/src/app_modules/investasi/_fun/get/fun_get_one_investasi_by_id.ts @@ -1,7 +1,11 @@ "use server"; import prisma from "@/app/lib/prisma"; -export async function investasi_funGetOneInvestasiById({investasiId}: {investasiId: string}) { +export async function investasi_funGetOneInvestasiById({ + investasiId, +}: { + investasiId: string; +}) { const data = await prisma.investasi.findUnique({ where: { id: investasiId, diff --git a/src/app_modules/investasi/_fun/get/fun_get_success_transaction_by_id.ts b/src/app_modules/investasi/_fun/get/fun_get_success_transaction_by_id.ts index 9a537849..e3bbe0b8 100644 --- a/src/app_modules/investasi/_fun/get/fun_get_success_transaction_by_id.ts +++ b/src/app_modules/investasi/_fun/get/fun_get_success_transaction_by_id.ts @@ -1,14 +1,14 @@ "use server"; import prisma from "@/app/lib/prisma"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; export async function investasi_funGetSuccessTransactionById({ page, }: { page: number; }) { - const authorId = await user_getOneUserId(); + const authorId = await user_funGetOneUserId(); const takeData = 10; const skipData = page * takeData - takeData; diff --git a/src/app_modules/investasi/_fun/index.ts b/src/app_modules/investasi/_fun/index.ts index a559a94f..5739c000 100644 --- a/src/app_modules/investasi/_fun/index.ts +++ b/src/app_modules/investasi/_fun/index.ts @@ -3,9 +3,16 @@ import { investasi_funGetOneInvestasiById } from "./get/fun_get_one_investasi_by import { investasi_funGetTransaksiByUserId } from "./get/fun_get_all_transaksi_by_user_id"; import { investasi_funUploadBuktiTransferById } from "./upload/fun_upload_bukti_transfer"; import { investasi_funGetSuccessTransactionById } from "./get/fun_get_success_transaction_by_id"; +import { investasi_funGetAllPublishByUserId } from "./get/fun_get_all_investasi_by_user_id"; +import { investasi_funGetAllInvestasiNonPublishByUserId } from "./get/fun_get_all_investasi_non_publish_by_user_id"; +// Get export { investasi_funGetOneInvestasiById }; export { investasi_funGetProspekById }; -export { investasi_funUploadBuktiTransferById }; export { investasi_funGetTransaksiByUserId }; export { investasi_funGetSuccessTransactionById }; +export { investasi_funGetAllPublishByUserId }; +export { investasi_funGetAllInvestasiNonPublishByUserId }; + +// Upload +export { investasi_funUploadBuktiTransferById }; diff --git a/src/app_modules/investasi/_ui/index.ts b/src/app_modules/investasi/_ui/index.ts index a177a188..30dbe1a7 100644 --- a/src/app_modules/investasi/_ui/index.ts +++ b/src/app_modules/investasi/_ui/index.ts @@ -10,6 +10,7 @@ import { Investasi_UiTransaksiBerhasil } from "./status_transaksi/ui_transaksi_b import { Investasi_UiFileViewDokumen } from "./file_view/ui_file_view_dokumen"; import { Investasi_UiSahamSaya } from "./main/ui_saham_saya"; import { Investasi_UiDetailSahamSaya } from "./detail/ui_detail_saham_saya"; +import { Investasi_UiPortofolio } from "./main/ui_portofolio"; export { Investasi_UiProsesPembelian }; export { Investasi_UiMetodePembayaran }; @@ -23,3 +24,4 @@ export { Investasi_UiTransaksiBerhasil }; export { Investasi_UiFileViewDokumen }; export { Investasi_UiSahamSaya }; export { Investasi_UiDetailSahamSaya }; +export { Investasi_UiPortofolio }; diff --git a/src/app_modules/investasi/_ui/main/ui_portofolio.tsx b/src/app_modules/investasi/_ui/main/ui_portofolio.tsx index 9e33c010..2c60ed5c 100644 --- a/src/app_modules/investasi/_ui/main/ui_portofolio.tsx +++ b/src/app_modules/investasi/_ui/main/ui_portofolio.tsx @@ -1,8 +1,28 @@ -"use client" +"use client"; -export function Investasi_UiPortofolio() { - return <> - - - ; -} \ No newline at end of file +import { Investasi_ViewPortofolio } from "../../_view"; +export function Investasi_UiPortofolio({ + listStatus, + listDataPublish, + listDataReview, + listDataDraft, + listDataReject, +}: { + listStatus: any[]; + listDataPublish: any[]; + listDataReview: any[]; + listDataDraft: any[]; + listDataReject: any[]; +}) { + return ( + <> + + + ); +} diff --git a/src/app_modules/investasi/_view/index.ts b/src/app_modules/investasi/_view/index.ts index e45b343d..4d10a147 100644 --- a/src/app_modules/investasi/_view/index.ts +++ b/src/app_modules/investasi/_view/index.ts @@ -1,6 +1,8 @@ import { Investasi_ViewDetailSahamSaya } from "./detail/view_detail_saham_saya"; import PdfToImage from "./file_view/view_file_viewer"; import { Investasi_ViewBeranda } from "./main/view_beranda"; +import { Investasi_ViewPortofolio } from "./main/view_portofolio"; +import { Investasi_ViewPortofolioReview } from "./main/portofolio/view_portofolio_review"; import { Investasi_ViewSahamSaya } from "./main/view_saham_saya"; import { Investasi_ViewTransaksiBerhasil } from "./status_transaksi/view_invoice_berhasil"; import { Investasi_ViewTransaksiGagal } from "./status_transaksi/view_transaksi_gagal"; @@ -19,3 +21,5 @@ export { Investasi_ViewTransaksiBerhasil }; export { PdfToImage as Investasi_ViewFileViewer }; export { Investasi_ViewSahamSaya }; export { Investasi_ViewDetailSahamSaya }; +export { Investasi_ViewPortofolio }; + diff --git a/src/app_modules/investasi/_view/main/portofolio/view_portofolio_draft.tsx b/src/app_modules/investasi/_view/main/portofolio/view_portofolio_draft.tsx new file mode 100644 index 00000000..35f71833 --- /dev/null +++ b/src/app_modules/investasi/_view/main/portofolio/view_portofolio_draft.tsx @@ -0,0 +1,60 @@ +import ComponentGlobal_IsEmptyData from "@/app_modules/_global/component/is_empty_data"; +import ComponentGlobal_Loader from "@/app_modules/_global/component/loader"; +import { Box, Center } from "@mantine/core"; +import { data } from "autoprefixer"; +import _ from "lodash"; +import { ScrollOnly } from "next-scroll-loader"; +import { Investasi_ComponentCardPortofolio_NotPublish } from "../../../_component"; +import { + investasi_funGetAllInvestasiNonPublishByUserId, + investasi_funGetSuccessTransactionById, +} from "../../../_fun"; +import { useState } from "react"; +import { NEW_RouterInvestasi } from "@/app/lib/router_hipmi/router_investasi"; + +export function Investasi_ViewPortofolioDraft({ + listData, +}: { + listData: any[]; +}) { + const [data, setData] = useState(listData); + const [activePage, setActivePage] = useState(1); + + return ( + <> + + {_.isEmpty(data) ? ( + + ) : ( + ( +
+ +
+ )} + data={data} + setData={setData} + moreData={async () => { + const loadData = + await investasi_funGetAllInvestasiNonPublishByUserId({ + page: activePage + 1, + statusId: "3", + }); + setActivePage((val) => val + 1); + + return loadData; + }} + > + {(item) => ( + + )} +
+ )} +
+ + ); +} diff --git a/src/app_modules/investasi/_view/main/portofolio/view_portofolio_publish.tsx b/src/app_modules/investasi/_view/main/portofolio/view_portofolio_publish.tsx new file mode 100644 index 00000000..0eaff06c --- /dev/null +++ b/src/app_modules/investasi/_view/main/portofolio/view_portofolio_publish.tsx @@ -0,0 +1,50 @@ +import { useState } from "react"; +import { Investasi_ComponentCardPortofolioPublish } from "../../../_component"; +import ComponentGlobal_IsEmptyData from "@/app_modules/_global/component/is_empty_data"; +import ComponentGlobal_Loader from "@/app_modules/_global/component/loader"; +import { Box, Center } from "@mantine/core"; +import _ from "lodash"; +import { ScrollOnly } from "next-scroll-loader"; +import { investasi_funGetSuccessTransactionById } from "../../../_fun"; + +export function Investasi_ViewPortofolioPublish({ + listData, +}: { + listData: any[]; +}) { + const [data, setData] = useState(listData); + const [activePage, setActivePage] = useState(1); + + return ( + <> + + {_.isEmpty(data) ? ( + + ) : ( + ( +
+ +
+ )} + data={data} + setData={setData} + moreData={async () => { + const loadData = await investasi_funGetSuccessTransactionById({ + page: activePage + 1, + }); + setActivePage((val) => val + 1); + + return loadData; + }} + > + {(item) => ( + + )} +
+ )} +
+ + ); +} diff --git a/src/app_modules/investasi/_view/main/portofolio/view_portofolio_reject.tsx b/src/app_modules/investasi/_view/main/portofolio/view_portofolio_reject.tsx new file mode 100644 index 00000000..10300988 --- /dev/null +++ b/src/app_modules/investasi/_view/main/portofolio/view_portofolio_reject.tsx @@ -0,0 +1,60 @@ +import ComponentGlobal_IsEmptyData from "@/app_modules/_global/component/is_empty_data"; +import ComponentGlobal_Loader from "@/app_modules/_global/component/loader"; +import { Box, Center } from "@mantine/core"; +import { data } from "autoprefixer"; +import _ from "lodash"; +import { ScrollOnly } from "next-scroll-loader"; +import { Investasi_ComponentCardPortofolio_NotPublish } from "../../../_component"; +import { + investasi_funGetAllInvestasiNonPublishByUserId, + investasi_funGetSuccessTransactionById, +} from "../../../_fun"; +import { useState } from "react"; +import { NEW_RouterInvestasi } from "@/app/lib/router_hipmi/router_investasi"; + +export function Investasi_ViewPortofolioReject({ + listData, +}: { + listData: any[]; +}) { + const [data, setData] = useState(listData); + const [activePage, setActivePage] = useState(1); + + return ( + <> + + {_.isEmpty(data) ? ( + + ) : ( + ( +
+ +
+ )} + data={data} + setData={setData} + moreData={async () => { + const loadData = + await investasi_funGetAllInvestasiNonPublishByUserId({ + page: activePage + 1, + statusId: "4", + }); + setActivePage((val) => val + 1); + + return loadData; + }} + > + {(item) => ( + + )} +
+ )} +
+ + ); +} diff --git a/src/app_modules/investasi/_view/main/portofolio/view_portofolio_review.tsx b/src/app_modules/investasi/_view/main/portofolio/view_portofolio_review.tsx new file mode 100644 index 00000000..81cffa6c --- /dev/null +++ b/src/app_modules/investasi/_view/main/portofolio/view_portofolio_review.tsx @@ -0,0 +1,60 @@ +import ComponentGlobal_IsEmptyData from "@/app_modules/_global/component/is_empty_data"; +import ComponentGlobal_Loader from "@/app_modules/_global/component/loader"; +import { Box, Center } from "@mantine/core"; +import { data } from "autoprefixer"; +import _ from "lodash"; +import { ScrollOnly } from "next-scroll-loader"; +import { Investasi_ComponentCardPortofolio_NotPublish } from "../../../_component"; +import { + investasi_funGetAllInvestasiNonPublishByUserId, + investasi_funGetSuccessTransactionById, +} from "../../../_fun"; +import { useState } from "react"; +import { NEW_RouterInvestasi } from "@/app/lib/router_hipmi/router_investasi"; + +export function Investasi_ViewPortofolioReview({ + listData, +}: { + listData: any[]; +}) { + const [data, setData] = useState(listData); + const [activePage, setActivePage] = useState(1); + + return ( + <> + + {_.isEmpty(data) ? ( + + ) : ( + ( +
+ +
+ )} + data={data} + setData={setData} + moreData={async () => { + const loadData = + await investasi_funGetAllInvestasiNonPublishByUserId({ + page: activePage + 1, + statusId: "2", + }); + setActivePage((val) => val + 1); + + return loadData; + }} + > + {(item) => ( + + )} +
+ )} +
+ + ); +} diff --git a/src/app_modules/investasi/_view/main/view_portofolio.tsx b/src/app_modules/investasi/_view/main/view_portofolio.tsx new file mode 100644 index 00000000..c51f0866 --- /dev/null +++ b/src/app_modules/investasi/_view/main/view_portofolio.tsx @@ -0,0 +1,136 @@ +import { AccentColor, MainColor } from "@/app_modules/_global/color"; +import { MODEL_NEW_DEFAULT_MASTER } from "@/app_modules/model_global/interface"; +import { + Box, + Button, + Group, + SimpleGrid, + Space, + Stack, + Tabs, +} from "@mantine/core"; +import { useAtom } from "jotai"; +import { useState } from "react"; +import { gs_investasi_status } from "../../g_state"; +import { Investasi_ViewPortofolioPublish } from "./portofolio/view_portofolio_publish"; +import { Investasi_ViewPortofolioReview } from "./portofolio/view_portofolio_review"; +import { Investasi_ViewPortofolioDraft } from "./portofolio/view_portofolio_draft"; +import { Investasi_ViewPortofolioReject } from "./portofolio/view_portofolio_reject"; + +export function Investasi_ViewPortofolio({ + listStatus, + listDataPublish, + listDataReview, + listDataDraft, + listDataReject, +}: { + listStatus: any[]; + listDataPublish: any[]; + listDataReview: any[]; + listDataDraft: any[]; + listDataReject: any[]; +}) { + const [activeTab, setActiveTab] = useAtom(gs_investasi_status); + const [activeStatus, setActiveStatus] = + useState(listStatus); + + // return ( + // <> + // + // + // {activeStatus.map((e) => ( + // setActiveTab(e.name)} + // style={{ + // alignContent: "center", + // justifyContent: "center", + // transition: "0.5s", + // backgroundColor: + // activeTab === e.name ? MainColor.yellow : "gray", + // border: + // activeTab === e.name ? `1px solid ${AccentColor.yellow}` : "", + // color: activeTab === e.name ? "black" : "white", + // }} + // > + // {e.name} + // + // ))} + // + // + // + // {activeTab === "Publish" && ( + // + // )} + + // {activeTab === "Review" && } + // + // + // + // ); + + return ( + <> + + + + {activeStatus.map((e) => ( + + {e.name} + + ))} + + + + + + + + + + + + + + + + + + + + + ); +} diff --git a/src/app_modules/job/fun/create/fun_create.ts b/src/app_modules/job/fun/create/fun_create.ts index 491eabb8..7f0a8fd2 100644 --- a/src/app_modules/job/fun/create/fun_create.ts +++ b/src/app_modules/job/fun/create/fun_create.ts @@ -1,7 +1,7 @@ "use server"; import prisma from "@/app/lib/prisma"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; import _ from "lodash"; import { v4 } from "uuid"; import fs from "fs"; @@ -11,7 +11,7 @@ import path from "path"; const root = process.cwd(); export async function Job_funCreate(req: MODEL_JOB, file: FormData) { - const authorId = await user_getOneUserId(); + const authorId = await user_funGetOneUserId(); const dataImage: any = file.get("file"); if (dataImage !== "null") { diff --git a/src/app_modules/job/fun/get/get_all_arsip.ts b/src/app_modules/job/fun/get/get_all_arsip.ts index 0fd03d35..f6839769 100644 --- a/src/app_modules/job/fun/get/get_all_arsip.ts +++ b/src/app_modules/job/fun/get/get_all_arsip.ts @@ -1,11 +1,11 @@ "use server"; import prisma from "@/app/lib/prisma"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; export async function job_getAllArsipById({page}: {page: number}) { - const authorId = await user_getOneUserId(); + const authorId = await user_funGetOneUserId(); const takeData = 10; const skipData = page * takeData - takeData; diff --git a/src/app_modules/job/fun/get/get_all_publish.ts b/src/app_modules/job/fun/get/get_all_publish.ts index afffdbfa..d7d61fd3 100644 --- a/src/app_modules/job/fun/get/get_all_publish.ts +++ b/src/app_modules/job/fun/get/get_all_publish.ts @@ -1,7 +1,7 @@ "use server"; import prisma from "@/app/lib/prisma"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; export async function job_getAllListPublish({ page, diff --git a/src/app_modules/job/fun/get/status/get_list_draft.ts b/src/app_modules/job/fun/get/status/get_list_draft.ts index f325b692..13c85c7e 100644 --- a/src/app_modules/job/fun/get/status/get_list_draft.ts +++ b/src/app_modules/job/fun/get/status/get_list_draft.ts @@ -1,7 +1,7 @@ "use server"; import prisma from "@/app/lib/prisma"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; export default async function job_getAllStatusDraft({ page, @@ -11,7 +11,7 @@ export default async function job_getAllStatusDraft({ const takeData = 10; const skipData = page * takeData - takeData; - const authorId = await user_getOneUserId(); + const authorId = await user_funGetOneUserId(); const data = await prisma.job.findMany({ take: takeData, skip: skipData, diff --git a/src/app_modules/job/fun/get/status/get_list_publish.ts b/src/app_modules/job/fun/get/status/get_list_publish.ts index 2950de34..0739c856 100644 --- a/src/app_modules/job/fun/get/status/get_list_publish.ts +++ b/src/app_modules/job/fun/get/status/get_list_publish.ts @@ -1,7 +1,7 @@ "use server"; import prisma from "@/app/lib/prisma"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; export default async function job_getAllStatusPublish({ page, @@ -11,7 +11,7 @@ export default async function job_getAllStatusPublish({ const takeData = 10; const skipData = page * takeData - takeData; - const authorId = await user_getOneUserId(); + const authorId = await user_funGetOneUserId(); const data = await prisma.job.findMany({ take: takeData, skip: skipData, diff --git a/src/app_modules/job/fun/get/status/get_list_reject.ts b/src/app_modules/job/fun/get/status/get_list_reject.ts index 2a60674a..c1e31d39 100644 --- a/src/app_modules/job/fun/get/status/get_list_reject.ts +++ b/src/app_modules/job/fun/get/status/get_list_reject.ts @@ -1,7 +1,7 @@ "use server"; import prisma from "@/app/lib/prisma"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; export default async function job_getAllStatusReject({ page, @@ -11,7 +11,7 @@ export default async function job_getAllStatusReject({ const takeData = 10; const skipData = page * takeData - takeData; - const authorId = await user_getOneUserId(); + const authorId = await user_funGetOneUserId(); const data = await prisma.job.findMany({ take: takeData, skip: skipData, diff --git a/src/app_modules/job/fun/get/status/get_list_review.ts b/src/app_modules/job/fun/get/status/get_list_review.ts index 89fda9e9..70b71555 100644 --- a/src/app_modules/job/fun/get/status/get_list_review.ts +++ b/src/app_modules/job/fun/get/status/get_list_review.ts @@ -1,7 +1,7 @@ "use server"; import prisma from "@/app/lib/prisma"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; export default async function job_getAllStatusReview({ page, @@ -11,7 +11,7 @@ export default async function job_getAllStatusReview({ const takeData = 10; const skipData = page * takeData - takeData; - const authorId = await user_getOneUserId(); + const authorId = await user_funGetOneUserId(); const data = await prisma.job.findMany({ take: takeData, skip: skipData, diff --git a/src/app_modules/map/fun/create/fun_create_pin.ts b/src/app_modules/map/fun/create/fun_create_pin.ts index 0269aa52..a1993ed1 100644 --- a/src/app_modules/map/fun/create/fun_create_pin.ts +++ b/src/app_modules/map/fun/create/fun_create_pin.ts @@ -2,14 +2,14 @@ import prisma from "@/app/lib/prisma"; import { RouterMap } from "@/app/lib/router_hipmi/router_map"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; import _ from "lodash"; import { revalidatePath } from "next/cache"; import { v4 } from "uuid"; import fs from "fs"; export async function map_funCreatePin({ data }: { data: any }) { - const authorId = await user_getOneUserId(); + const authorId = await user_funGetOneUserId(); const gambar: any = data.gambar.get("file"); const fileName = gambar.name; diff --git a/src/app_modules/notifikasi/fun/count/fun_count_by_id.ts b/src/app_modules/notifikasi/fun/count/fun_count_by_id.ts index ef9daca2..401bf19f 100644 --- a/src/app_modules/notifikasi/fun/count/fun_count_by_id.ts +++ b/src/app_modules/notifikasi/fun/count/fun_count_by_id.ts @@ -1,10 +1,10 @@ "use server"; import prisma from "@/app/lib/prisma"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; export default async function notifikasi_countUserNotifikasi() { - const userId = await user_getOneUserId(); + const userId = await user_funGetOneUserId(); const count = await prisma.notifikasi.findMany({ where: { diff --git a/src/app_modules/notifikasi/fun/get/get_notifiaksi_by_id.ts b/src/app_modules/notifikasi/fun/get/get_notifiaksi_by_id.ts index cb78f23f..42011099 100644 --- a/src/app_modules/notifikasi/fun/get/get_notifiaksi_by_id.ts +++ b/src/app_modules/notifikasi/fun/get/get_notifiaksi_by_id.ts @@ -1,7 +1,7 @@ "use server"; import prisma from "@/app/lib/prisma"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; import _ from "lodash"; export default async function notifikasi_getByUserId({ @@ -11,7 +11,7 @@ export default async function notifikasi_getByUserId({ page: number; kategoriApp?: string; }) { - const userId = await user_getOneUserId(); + const userId = await user_funGetOneUserId(); const takeData = 10; const skipData = page * takeData - takeData; diff --git a/src/app_modules/user_search/fun/get/get_all_user.ts b/src/app_modules/user_search/fun/get/get_all_user.ts index 0eb2ac43..8741bbe6 100644 --- a/src/app_modules/user_search/fun/get/get_all_user.ts +++ b/src/app_modules/user_search/fun/get/get_all_user.ts @@ -1,7 +1,7 @@ "use server"; import prisma from "@/app/lib/prisma"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; export async function userSearch_getAllUser({ page, @@ -10,7 +10,7 @@ export async function userSearch_getAllUser({ page: number; search?: string; }) { - const userLoginId = await user_getOneUserId(); + const userLoginId = await user_funGetOneUserId(); const takeData = 20; const skipData = page * takeData - takeData; diff --git a/src/app_modules/vote/_ui/detail/ui_detail_kontributor_voting.tsx b/src/app_modules/vote/_ui/detail/ui_detail_kontributor_voting.tsx new file mode 100644 index 00000000..cce59a87 --- /dev/null +++ b/src/app_modules/vote/_ui/detail/ui_detail_kontributor_voting.tsx @@ -0,0 +1,23 @@ +"use client"; + +import { + UIGlobal_LayoutHeaderTamplate, + UIGlobal_LayoutTamplate, +} from "@/app_modules/_global/ui"; +import { Voting_ViewDetailKontributorVoting } from "../../_view"; + +export function Voting_UiDetailKontributorVoting({ + listKontributor, +}: { + listKontributor: any[]; +}) { + return ( + <> + } + > + + + + ); +} diff --git a/src/app_modules/vote/_ui/index.ts b/src/app_modules/vote/_ui/index.ts new file mode 100644 index 00000000..db5bc3d4 --- /dev/null +++ b/src/app_modules/vote/_ui/index.ts @@ -0,0 +1,3 @@ +import { Voting_UiDetailKontributorVoting } from "./detail/ui_detail_kontributor_voting"; + +export { Voting_UiDetailKontributorVoting }; diff --git a/src/app_modules/vote/_view/index.ts b/src/app_modules/vote/_view/index.ts new file mode 100644 index 00000000..e122c406 --- /dev/null +++ b/src/app_modules/vote/_view/index.ts @@ -0,0 +1,3 @@ +import { Voting_ViewDetailKontributorVoting } from "./view_detail_kontributor_voting"; + +export { Voting_ViewDetailKontributorVoting }; diff --git a/src/app_modules/vote/_view/view_detail_kontributor_voting.tsx b/src/app_modules/vote/_view/view_detail_kontributor_voting.tsx new file mode 100644 index 00000000..26aa8e10 --- /dev/null +++ b/src/app_modules/vote/_view/view_detail_kontributor_voting.tsx @@ -0,0 +1,63 @@ +import { RouterProfile } from "@/app/lib/router_hipmi/router_katalog"; +import { AccentColor } from "@/app_modules/_global/color"; +import { ComponentGlobal_AvatarAndAuthorName } from "@/app_modules/_global/component"; +import ComponentGlobal_IsEmptyData from "@/app_modules/_global/component/is_empty_data"; +import { + Card, + Stack, + Center, + Title, + Grid, + Avatar, + Badge, + Divider, + Text, +} from "@mantine/core"; +import _ from "lodash"; +import router from "next/router"; +import { MODEL_VOTE_KONTRIBUTOR } from "../model/interface"; + +export function Voting_ViewDetailKontributorVoting({ + listKontributor, +}: { + listKontributor: MODEL_VOTE_KONTRIBUTOR[]; +}) { + return ( + <> + + + {_.isEmpty(listKontributor) ? ( + + ) : ( + + {listKontributor?.map((e, i) => ( + + 10 ? 8 : 10} + > + {e.Voting_DaftarNamaVote.value} + + + } + /> + ))} + + )} + + + + ); +} diff --git a/src/app_modules/vote/component/card_view_publish.tsx b/src/app_modules/vote/component/card_view_publish.tsx index 91168d89..f2c2b949 100644 --- a/src/app_modules/vote/component/card_view_publish.tsx +++ b/src/app_modules/vote/component/card_view_publish.tsx @@ -22,6 +22,8 @@ import { MODEL_VOTING } from "../model/interface"; import { ComponentGlobal_NotifikasiPeringatan } from "@/app_modules/_global/notif_global/notifikasi_peringatan"; import { AccentColor } from "@/app_modules/_global/color/color_pallet"; import { toNumber } from "lodash"; +import { useState } from "react"; +import { ComponentGlobal_CardLoadingOverlay } from "@/app_modules/_global/component"; export default function ComponentVote_CardViewPublish({ data, @@ -29,14 +31,18 @@ export default function ComponentVote_CardViewPublish({ pilihanSaya, authorName, namaPilihan, + statusArsip, }: { data?: MODEL_VOTING; path: string; pilihanSaya?: boolean; authorName?: boolean; namaPilihan?: string; + statusArsip?: boolean; }) { const router = useRouter(); + const [visible, setVisible] = useState(false); + return ( <> { if (data?.id === undefined) { - ComponentGlobal_NotifikasiPeringatan("Path tidak ditemukan"); + ComponentGlobal_NotifikasiPeringatan("Halaman tidak ditemukan"); } else { + setVisible(true); router.push(path + data?.id); } }} @@ -112,21 +119,38 @@ export default function ComponentVote_CardViewPublish({ {data ? ( - {data?.Voting_DaftarNamaVote.map((v, i) => ( - - - {v.value} - {v.jumlah} - - - - - ))} +
+ Hasil Voting +
+ + + {data?.Voting_DaftarNamaVote.map((e) => ( + = 4 ? 6 : 4} + > + + + {e.jumlah} + + + {e.value} + + + + ))} +
) : ( "" )} + {pilihanSaya ? ( @@ -141,6 +165,18 @@ export default function ComponentVote_CardViewPublish({ ) : ( "" )} + + {statusArsip ? ( +
+ + {data?.isArsip ? "Arsip" : "Publish"} + +
+ ) : ( + "" + )} + + {visible && }
diff --git a/src/app_modules/vote/component/detail/comp_layout_header_detail_publish.tsx b/src/app_modules/vote/component/detail/comp_layout_header_detail_publish.tsx new file mode 100644 index 00000000..95de8240 --- /dev/null +++ b/src/app_modules/vote/component/detail/comp_layout_header_detail_publish.tsx @@ -0,0 +1,244 @@ +import { RouterVote } from "@/app/lib/router_hipmi/router_vote"; +import { AccentColor } from "@/app_modules/_global/color"; +import ComponentGlobal_Loader from "@/app_modules/_global/component/loader"; +import { UIGlobal_Modal } from "@/app_modules/_global/ui"; +import UIGlobal_Drawer from "@/app_modules/_global/ui/ui_drawer"; +import UIGlobal_LayoutHeaderTamplate from "@/app_modules/_global/ui/ui_header_tamplate"; +import { + ActionIcon, + Button, + Drawer, + Group, + SimpleGrid, + Stack, + Text, +} from "@mantine/core"; +import { IconArchive, IconUsersGroup, IconX } from "@tabler/icons-react"; +import { IconDots, IconDotsVertical } from "@tabler/icons-react"; +import { useRouter } from "next/navigation"; +import { useState } from "react"; +import { voting_funGetOneVotingbyId } from "../../fun/get/fun_get_one_by_id"; +import { useShallowEffect } from "@mantine/hooks"; +import { MODEL_VOTING } from "../../model/interface"; +import { voting_funUpdateIsArsipById } from "../../fun"; +import { ComponentGlobal_NotifikasiBerhasil } from "@/app_modules/_global/notif_global/notifikasi_berhasil"; +import { ComponentGlobal_NotifikasiGagal } from "@/app_modules/_global/notif_global/notifikasi_gagal"; + +export function Voting_ComponentLayoutHeaderDetailPublish({ + votingId, + title, + userLoginId, +}: { + votingId: string; + title: string; + userLoginId: string; +}) { + const [data, setData] = useState(); + const [openDrawer, setOpenDrawer] = useState(false); + const [openModal, setOpenModal] = useState(false); + + useShallowEffect(() => { + onLoadData({ onSetData: setData }); + }, [setData]); + + async function onLoadData({ onSetData }: { onSetData: any }) { + const dataVoting = await voting_funGetOneVotingbyId(votingId); + onSetData(dataVoting); + } + + async function onUpdateStatusArsip({ isArsip }: { isArsip: boolean }) { + const res = await voting_funUpdateIsArsipById({ + votingId, + isArsip: isArsip, + }); + if (res.status === 200) { + setOpenModal(false); + ComponentGlobal_NotifikasiBerhasil(res.message); + } else { + ComponentGlobal_NotifikasiGagal(res.message); + } + } + + return ( + <> + { + setOpenDrawer(true); + }} + > + + + } + /> + + {/* Drawer */} + setOpenDrawer(false)} + position={"bottom"} + size={"auto"} + withCloseButton={false} + styles={{ + content: { + padding: 0, + position: "absolute", + margin: "auto", + backgroundColor: "transparent", + left: 0, + right: 0, + width: 500, + }, + body: { + backgroundColor: AccentColor.darkblue, + borderTop: `2px solid ${AccentColor.blue}`, + borderRight: `1px solid ${AccentColor.blue}`, + borderLeft: `1px solid ${AccentColor.blue}`, + borderRadius: "20px 20px 0px 0px", + color: "white", + paddingBottom: "5%", + }, + }} + > + + + setOpenDrawer(false)} + variant="transparent" + > + + + + + {/* Check Author */} + {data?.authorId === userLoginId ? ( + { + setOpenDrawer(val.drawer); + setOpenModal(val.modal); + }} + /> + ) : ( + + )} + + + + {/* Modal */} + setOpenModal(false)} + title={`Anda yakin ingin ${data?.isArsip ? "mempublish" : "mengarsipkan"} voting?`} + buttonKanan={ + + } + buttonKiri={ + + } + /> + + ); +} + +function BoxIsAuthor({ + votingId, + onSetDrawer, +}: { + votingId: string; + onSetDrawer: (vaL: any) => void; +}) { + const router = useRouter(); + const [isLoading, setIsLoading] = useState(false); + + return ( + <> + + + {/* Daftar Kontributor */} + { + setIsLoading(true); + router.push(RouterVote.daftar_kontributor + votingId, { + scroll: false, + }); + }} + > + {isLoading ? : } + + + Daftar Kontributor + + + + {/* Arsip button */} + { + onSetDrawer({ + drawer: false, + modal: true, + }); + // setOpenModal(true); + }} + > + + + + Update Arsip + + + + + ); +} + +function BoxNotAuthor({ votingId }: { votingId: string }) { + const router = useRouter(); + const [isLoading, setIsLoading] = useState(false); + const [pageId, setPageId] = useState(""); + + return ( + <> + + + { + setIsLoading(true); + router.push(RouterVote.daftar_kontributor + votingId, { + scroll: false, + }); + }} + > + {isLoading ? : } + + + Daftar Kontributor + + + + + ); +} diff --git a/src/app_modules/vote/component/detail/detail_daftar_kontributor.tsx b/src/app_modules/vote/component/detail/detail_daftar_kontributor.tsx index 8cd44e18..9597286b 100644 --- a/src/app_modules/vote/component/detail/detail_daftar_kontributor.tsx +++ b/src/app_modules/vote/component/detail/detail_daftar_kontributor.tsx @@ -10,18 +10,19 @@ import { Grid, Stack, Text, - Title + Title, } from "@mantine/core"; import _ from "lodash"; import { useRouter } from "next/navigation"; import { MODEL_VOTE_KONTRIBUTOR } from "../../model/interface"; +import ComponentGlobal_IsEmptyData from "@/app_modules/_global/component/is_empty_data"; export default function ComponentVote_DaftarKontributorVoter({ listKontributor, }: { listKontributor?: MODEL_VOTE_KONTRIBUTOR[]; }) { - const router = useRouter() + const router = useRouter(); return ( <>
- Daftar Voting + Daftar Kontributor
{_.isEmpty(listKontributor) ? ( -
- - - Tidak ada voting - - -
+ ) : ( {listKontributor?.map((e, i) => ( diff --git a/src/app_modules/vote/component/index.tsx b/src/app_modules/vote/component/index.tsx new file mode 100644 index 00000000..6353e17d --- /dev/null +++ b/src/app_modules/vote/component/index.tsx @@ -0,0 +1,3 @@ +import { Voting_ComponentLayoutHeaderDetailPublish } from "./detail/comp_layout_header_detail_publish"; + +export { Voting_ComponentLayoutHeaderDetailPublish }; diff --git a/src/app_modules/vote/detail/kontribusi/index.tsx b/src/app_modules/vote/detail/kontribusi/index.tsx index 32dcbe75..829c32c5 100644 --- a/src/app_modules/vote/detail/kontribusi/index.tsx +++ b/src/app_modules/vote/detail/kontribusi/index.tsx @@ -19,10 +19,8 @@ import ComponentVote_DetailDataSetelahPublish from "../../component/detail/detai export default function Vote_DetailKontribusi({ dataVote, - listKontributor, }: { dataVote: MODEL_VOTING; - listKontributor: any }) { return ( <> @@ -32,12 +30,7 @@ export default function Vote_DetailKontribusi({ authorName={true} /> - ); } - - diff --git a/src/app_modules/vote/detail/kontribusi/layout.tsx b/src/app_modules/vote/detail/kontribusi/layout.tsx index 36609efc..dffb67c8 100644 --- a/src/app_modules/vote/detail/kontribusi/layout.tsx +++ b/src/app_modules/vote/detail/kontribusi/layout.tsx @@ -1,21 +1,28 @@ "use client"; -import { AppShell } from "@mantine/core"; -import React from "react"; -import ComponentVote_HeaderTamplate from "../../component/header_tamplate"; -import AppComponentGlobal_LayoutTamplate from "@/app_modules/_global/component_layout_tamplate"; import UIGlobal_LayoutTamplate from "@/app_modules/_global/ui/ui_layout_tamplate"; -import UIGlobal_LayoutHeaderTamplate from "@/app_modules/_global/ui/ui_header_tamplate"; +import React from "react"; +import { Voting_ComponentLayoutHeaderDetailPublish } from "../../component"; export default function LayoutVote_DetailKontribusi({ children, + votingId, + userLoginId, }: { children: React.ReactNode; + votingId: string; + userLoginId: string; }) { return ( <> } + header={ + + } > {children} diff --git a/src/app_modules/vote/detail/main/index.tsx b/src/app_modules/vote/detail/main/index.tsx index 6349bbc4..faeae78d 100644 --- a/src/app_modules/vote/detail/main/index.tsx +++ b/src/app_modules/vote/detail/main/index.tsx @@ -25,9 +25,11 @@ import { useState } from "react"; import ComponentVote_DaftarKontributorVoter from "../../component/detail/detail_daftar_kontributor"; import ComponentVote_HasilVoting from "../../component/detail/detail_hasil_voting"; import { Vote_funCreateHasil } from "../../fun/create/create_hasil"; -import { Vote_getOnebyId } from "../../fun/get/get_one_by_id"; +import { voting_funGetOneVotingbyId } from "../../fun/get/fun_get_one_by_id"; import { MODEL_VOTING } from "../../model/interface"; import mqtt_client from "@/util/mqtt_client"; +import moment from "moment"; +import ComponentGlobal_BoxInformation from "@/app_modules/_global/component/box_information"; export default function Vote_MainDetail({ dataVote, @@ -45,9 +47,16 @@ export default function Vote_MainDetail({ userLoginId: string; }) { const [data, setData] = useState(dataVote); + const today = new Date(); + return ( <> + {moment(dataVote?.awalVote).diff(today, "hours") < 0 ? ( + "" + ) : ( + + )} - ); @@ -78,6 +84,8 @@ function TampilanDataVoting({ userLoginId: string; }) { const [votingNameId, setVotingNameId] = useState(""); + const today = new Date(); + return ( <> ( { + await voting_funGetOneVotingbyId(voteId).then((val) => { setData(val); ComponentGlobal_NotifikasiBerhasil(res.message); }); - + if (userLoginId !== res?.data?.Voting?.authorId) { const dataNotif = { appId: res?.data?.Voting?.id, @@ -262,8 +275,6 @@ async function onVote( ); } } - - } else { ComponentGlobal_NotifikasiPeringatan(res.message); } diff --git a/src/app_modules/vote/detail/main/layout.tsx b/src/app_modules/vote/detail/main/layout.tsx index 73091b34..4133cd11 100644 --- a/src/app_modules/vote/detail/main/layout.tsx +++ b/src/app_modules/vote/detail/main/layout.tsx @@ -1,21 +1,28 @@ "use client"; -import { AppShell } from "@mantine/core"; -import React from "react"; -import ComponentVote_HeaderTamplate from "../../component/header_tamplate"; -import AppComponentGlobal_LayoutTamplate from "@/app_modules/_global/component_layout_tamplate"; import UIGlobal_LayoutTamplate from "@/app_modules/_global/ui/ui_layout_tamplate"; -import UIGlobal_LayoutHeaderTamplate from "@/app_modules/_global/ui/ui_header_tamplate"; +import React from "react"; +import { Voting_ComponentLayoutHeaderDetailPublish } from "../../component"; export default function LayoutVote_MainDetail({ children, + votingId, + userLoginId, }: { children: React.ReactNode; + votingId: string; + userLoginId: string; }) { return ( <> } + header={ + + } > {children} diff --git a/src/app_modules/vote/detail/publish/index.tsx b/src/app_modules/vote/detail/publish/index.tsx index 2e9571cb..28775024 100644 --- a/src/app_modules/vote/detail/publish/index.tsx +++ b/src/app_modules/vote/detail/publish/index.tsx @@ -1,81 +1,27 @@ "use client"; -import { - Badge, - Card, - Center, - Grid, - Group, - Radio, - Stack, - Text, - Title, -} from "@mantine/core"; -import ComponentVote_DetailDataSebelumPublish from "../../component/detail/detail_data_sebelum_publish"; +import { Badge, Center, Stack } from "@mantine/core"; import ComponentVote_DaftarKontributorVoter from "../../component/detail/detail_daftar_kontributor"; -import ComponentVote_HasilVoting from "../../component/detail/detail_hasil_voting"; -import moment from "moment"; -import { MODEL_VOTE_KONTRIBUTOR, MODEL_VOTING } from "../../model/interface"; import ComponentVote_DetailDataSetelahPublish from "../../component/detail/detail_data_setelah_publish"; +import ComponentVote_HasilVoting from "../../component/detail/detail_hasil_voting"; +import { MODEL_VOTE_KONTRIBUTOR, MODEL_VOTING } from "../../model/interface"; export default function Vote_DetailPublish({ dataVote, - listKontributor, }: { dataVote: MODEL_VOTING; - listKontributor: MODEL_VOTE_KONTRIBUTOR; }) { return ( <> - {/* */} +
+ + {dataVote?.isArsip ? "Arsip" : "Publish"} + +
-
); } - -function TampilanDataVoting({ data }: { data: MODEL_VOTING }) { - return ( - <> - - - -
- {data.title} -
- {data.deskripsi} -
-
- - -
- - Batas Voting - -
- - - - {data.awalVote.toLocaleDateString(["id-ID"], { - dateStyle: "long", - })} - - - - - {data.akhirVote.toLocaleDateString(["id-ID"], { - dateStyle: "long", - })} - - - -
-
-
- - ); -} diff --git a/src/app_modules/vote/detail/publish/layout.tsx b/src/app_modules/vote/detail/publish/layout.tsx index 8a1dfa82..467efe59 100644 --- a/src/app_modules/vote/detail/publish/layout.tsx +++ b/src/app_modules/vote/detail/publish/layout.tsx @@ -1,21 +1,29 @@ "use client"; -import { AppShell } from "@mantine/core"; -import React from "react"; -import ComponentVote_HeaderTamplate from "../../component/header_tamplate"; -import AppComponentGlobal_LayoutTamplate from "@/app_modules/_global/component_layout_tamplate"; -import UIGlobal_LayoutTamplate from "@/app_modules/_global/ui/ui_layout_tamplate"; import UIGlobal_LayoutHeaderTamplate from "@/app_modules/_global/ui/ui_header_tamplate"; +import UIGlobal_LayoutTamplate from "@/app_modules/_global/ui/ui_layout_tamplate"; +import React from "react"; +import { Voting_ComponentLayoutHeaderDetailPublish } from "../../component"; export default function LayoutVote_DetailPublish({ children, + votingId, + userLoginId, }: { children: React.ReactNode; + votingId: string; + userLoginId: string; }) { return ( <> } + header={ + + } > {children} diff --git a/src/app_modules/vote/detail/semua_riwayat/layout.tsx b/src/app_modules/vote/detail/semua_riwayat/layout.tsx index ae50be53..9780dc6d 100644 --- a/src/app_modules/vote/detail/semua_riwayat/layout.tsx +++ b/src/app_modules/vote/detail/semua_riwayat/layout.tsx @@ -6,8 +6,12 @@ import React from "react"; export default function LayoutVote_DetailSemuaRiwayat({ children, + votingId, + userLoginId, }: { children: React.ReactNode; + votingId: string; + userLoginId: string; }) { return ( <> diff --git a/src/app_modules/vote/fun/create/create_hasil.ts b/src/app_modules/vote/fun/create/create_hasil.ts index 1b1e3ab9..7e4bd5dd 100644 --- a/src/app_modules/vote/fun/create/create_hasil.ts +++ b/src/app_modules/vote/fun/create/create_hasil.ts @@ -1,14 +1,14 @@ "use server"; import prisma from "@/app/lib/prisma"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; import { revalidatePath } from "next/cache"; export async function Vote_funCreateHasil( pilihanVotingId: string, votingId: string ) { - const authorId = await user_getOneUserId(); + const authorId = await user_funGetOneUserId(); const get = await prisma.voting_DaftarNamaVote.findFirst({ where: { diff --git a/src/app_modules/vote/fun/create/create_pilihan_voting.ts b/src/app_modules/vote/fun/create/create_pilihan_voting.ts index 4888a8d0..b1f6301b 100644 --- a/src/app_modules/vote/fun/create/create_pilihan_voting.ts +++ b/src/app_modules/vote/fun/create/create_pilihan_voting.ts @@ -1,14 +1,14 @@ "use server"; import prisma from "@/app/lib/prisma"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; import { revalidatePath } from "next/cache"; export async function Vote_funCreatePilihanVotingById( namaVotingId: string, votingId: string ) { - const authorId = await user_getOneUserId(); + const authorId = await user_funGetOneUserId(); const create = await prisma.voting_Kontributor.create({ data: { diff --git a/src/app_modules/vote/fun/create/create_vote.ts b/src/app_modules/vote/fun/create/create_vote.ts index dda6597c..73aec734 100644 --- a/src/app_modules/vote/fun/create/create_vote.ts +++ b/src/app_modules/vote/fun/create/create_vote.ts @@ -1,16 +1,17 @@ "use server"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; import { MODEL_VOTING } from "../../model/interface"; import prisma from "@/app/lib/prisma"; import { revalidatePath } from "next/cache"; +import _ from "lodash"; export async function Vote_funCreate(req: MODEL_VOTING, listVote: any[]) { - const authorId = await user_getOneUserId(); + const authorId = await user_funGetOneUserId(); const create = await prisma.voting.create({ data: { - title: req.title, + title: _.startCase(req.title), deskripsi: req.deskripsi, awalVote: req.awalVote, akhirVote: req.akhirVote, diff --git a/src/app_modules/vote/fun/edit/fun_update_is_arsip_by_id.ts b/src/app_modules/vote/fun/edit/fun_update_is_arsip_by_id.ts new file mode 100644 index 00000000..e0e4c6ea --- /dev/null +++ b/src/app_modules/vote/fun/edit/fun_update_is_arsip_by_id.ts @@ -0,0 +1,28 @@ +"use server"; + +import prisma from "@/app/lib/prisma"; +import { RouterVote } from "@/app/lib/router_hipmi/router_vote"; +import { revalidatePath } from "next/cache"; + +export async function voting_funUpdateIsArsipById({ + votingId, + isArsip, +}: { + votingId: string; + isArsip: boolean; +}) { + const updt = await prisma.voting.update({ + where: { + id: votingId, + }, + data: { + isArsip: isArsip, + }, + }); + + if (!updt) return { status: 400, message: "Gagal Update" }; + revalidatePath(RouterVote.main_detail); + revalidatePath(RouterVote.detail_publish); + + return { status: 200, message: "Berhasil Update" }; +} diff --git a/src/app_modules/vote/fun/get/cek_kontributor_by_id.ts b/src/app_modules/vote/fun/get/cek_kontributor_by_id.ts index 5b16b63a..bae7680d 100644 --- a/src/app_modules/vote/fun/get/cek_kontributor_by_id.ts +++ b/src/app_modules/vote/fun/get/cek_kontributor_by_id.ts @@ -1,10 +1,10 @@ "use server"; import prisma from "@/app/lib/prisma"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; export async function Vote_cekKontributorById(votingId: string) { - const UserId = await user_getOneUserId() + const UserId = await user_funGetOneUserId() const cek = await prisma.voting_Kontributor.count({ where: { diff --git a/src/app_modules/vote/fun/get/get_one_by_id.ts b/src/app_modules/vote/fun/get/fun_get_one_by_id.ts similarity index 56% rename from src/app_modules/vote/fun/get/get_one_by_id.ts rename to src/app_modules/vote/fun/get/fun_get_one_by_id.ts index 9f1572c9..b5570b0e 100644 --- a/src/app_modules/vote/fun/get/get_one_by_id.ts +++ b/src/app_modules/vote/fun/get/fun_get_one_by_id.ts @@ -2,23 +2,12 @@ import prisma from "@/app/lib/prisma"; -export async function Vote_getOnebyId(voteId: string) { +export async function voting_funGetOneVotingbyId(voteId: string) { const data = await prisma.voting.findFirst({ where: { id: voteId, }, - select: { - id: true, - title: true, - isActive: true, - createdAt: true, - updatedAt: true, - deskripsi: true, - awalVote: true, - akhirVote: true, - catatan: true, - authorId: true, - voting_StatusId: true, + include: { Voting_DaftarNamaVote: { orderBy: { createdAt: "asc", diff --git a/src/app_modules/vote/fun/get/get_all_list_publish.ts b/src/app_modules/vote/fun/get/get_all_list_publish.ts index 2c49586c..8d4b5b10 100644 --- a/src/app_modules/vote/fun/get/get_all_list_publish.ts +++ b/src/app_modules/vote/fun/get/get_all_list_publish.ts @@ -1,9 +1,15 @@ "use server"; import prisma from "@/app/lib/prisma"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; -export async function vote_getAllListPublish({ page }: { page: number }) { +export async function vote_getAllListPublish({ + page, + search, +}: { + page: number; + search?: string; +}) { const takeData = 5; const skipData = page * takeData - takeData; @@ -15,10 +21,15 @@ export async function vote_getAllListPublish({ page }: { page: number }) { }, where: { voting_StatusId: "1", + isArsip: false, isActive: true, akhirVote: { gte: new Date(), }, + title: { + contains: search, + mode: "insensitive", + }, }, select: { id: true, @@ -36,6 +47,13 @@ export async function vote_getAllListPublish({ page }: { page: number }) { orderBy: { createdAt: "asc", }, + include: { + Voting_Kontributor: { + include: { + Author: true, + }, + }, + }, }, Author: { select: { diff --git a/src/app_modules/vote/fun/get/get_all_list_riwayat_saya.ts b/src/app_modules/vote/fun/get/get_all_list_riwayat_saya.ts index 7a06720c..dc46be67 100644 --- a/src/app_modules/vote/fun/get/get_all_list_riwayat_saya.ts +++ b/src/app_modules/vote/fun/get/get_all_list_riwayat_saya.ts @@ -1,10 +1,10 @@ "use server"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; import prisma from "@/app/lib/prisma"; export async function Vote_getAllListRiwayatSaya({ page }: { page: number }) { - const authorId = await user_getOneUserId(); + const authorId = await user_funGetOneUserId(); const takeData = 5; const skipData = page * takeData - takeData; diff --git a/src/app_modules/vote/fun/get/get_list_kontribusi_by_author_id.ts b/src/app_modules/vote/fun/get/get_list_kontribusi_by_author_id.ts index ce4dc19a..4372159f 100644 --- a/src/app_modules/vote/fun/get/get_list_kontribusi_by_author_id.ts +++ b/src/app_modules/vote/fun/get/get_list_kontribusi_by_author_id.ts @@ -1,7 +1,7 @@ "use server"; import prisma from "@/app/lib/prisma"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; export async function vote_getAllListKontribusiByAuthorId({ page, @@ -11,7 +11,7 @@ export async function vote_getAllListKontribusiByAuthorId({ const takeData = 5; const skipData = page * takeData - takeData; - const authorId = await user_getOneUserId(); + const authorId = await user_funGetOneUserId(); const data = await prisma.voting_Kontributor.findMany({ take: takeData, skip: skipData, diff --git a/src/app_modules/vote/fun/get/get_list_kontributor_by_id.ts b/src/app_modules/vote/fun/get/get_list_kontributor_by_id.ts index 7fcd1f3c..6cb403e8 100644 --- a/src/app_modules/vote/fun/get/get_list_kontributor_by_id.ts +++ b/src/app_modules/vote/fun/get/get_list_kontributor_by_id.ts @@ -7,10 +7,9 @@ export async function Vote_getListKontributorById(votingId: string) { where: { votingId: votingId, }, - select: { - id: true, + include: { Author: { - select: { + include: { Profile: true, }, }, diff --git a/src/app_modules/vote/fun/get/get_one_pilihan_voting_by_user_id.ts b/src/app_modules/vote/fun/get/get_one_pilihan_voting_by_user_id.ts index 21649728..a447cf52 100644 --- a/src/app_modules/vote/fun/get/get_one_pilihan_voting_by_user_id.ts +++ b/src/app_modules/vote/fun/get/get_one_pilihan_voting_by_user_id.ts @@ -1,10 +1,10 @@ "use server"; import prisma from "@/app/lib/prisma"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; export async function Vote_getOnePilihanVotingByUserId(votingId: string) { - const userId = await user_getOneUserId(); + const userId = await user_funGetOneUserId(); const get = await prisma.voting_Kontributor.findFirst({ where: { authorId: userId, diff --git a/src/app_modules/vote/fun/get/index.ts b/src/app_modules/vote/fun/get/index.ts new file mode 100644 index 00000000..a2745b04 --- /dev/null +++ b/src/app_modules/vote/fun/get/index.ts @@ -0,0 +1,3 @@ +import { voting_funGetOneVotingbyId } from "./fun_get_one_by_id"; + +export { voting_funGetOneVotingbyId as Voting_funGetOneVotingbyId }; diff --git a/src/app_modules/vote/fun/get/status/get_all_draft.tsx b/src/app_modules/vote/fun/get/status/get_all_draft.tsx index 0e27212a..0d170e4a 100644 --- a/src/app_modules/vote/fun/get/status/get_all_draft.tsx +++ b/src/app_modules/vote/fun/get/status/get_all_draft.tsx @@ -1,10 +1,10 @@ "use server"; import prisma from "@/app/lib/prisma"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; export async function vote_getAllDraft({ page }: { page: number }) { - const authorId = await user_getOneUserId(); + const authorId = await user_funGetOneUserId(); const takeData = 10; const skipData = page * takeData - takeData; diff --git a/src/app_modules/vote/fun/get/status/get_all_publish.tsx b/src/app_modules/vote/fun/get/status/get_all_publish.tsx index 11ebe7aa..a9e953ea 100644 --- a/src/app_modules/vote/fun/get/status/get_all_publish.tsx +++ b/src/app_modules/vote/fun/get/status/get_all_publish.tsx @@ -1,10 +1,10 @@ "use server"; import prisma from "@/app/lib/prisma"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; export async function vote_getAllPublish({ page }: { page: number }) { - const authorId = await user_getOneUserId(); + const authorId = await user_funGetOneUserId(); const takeData = 5; const skipData = page * takeData - takeData; @@ -23,18 +23,7 @@ export async function vote_getAllPublish({ page }: { page: number }) { gte: new Date(), }, }, - select: { - id: true, - title: true, - isActive: true, - createdAt: true, - updatedAt: true, - deskripsi: true, - awalVote: true, - akhirVote: true, - catatan: true, - authorId: true, - voting_StatusId: true, + include: { Voting_DaftarNamaVote: { orderBy: { createdAt: "asc", @@ -43,5 +32,6 @@ export async function vote_getAllPublish({ page }: { page: number }) { }, }); + return data; } diff --git a/src/app_modules/vote/fun/get/status/get_all_reject.tsx b/src/app_modules/vote/fun/get/status/get_all_reject.tsx index de94bc48..940b335c 100644 --- a/src/app_modules/vote/fun/get/status/get_all_reject.tsx +++ b/src/app_modules/vote/fun/get/status/get_all_reject.tsx @@ -1,10 +1,10 @@ "use server"; import prisma from "@/app/lib/prisma"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; export async function vote_getAllReject({ page }: { page: number }) { - const authorId = await user_getOneUserId(); + const authorId = await user_funGetOneUserId(); const takeData = 10; const skipData = page * takeData - takeData; diff --git a/src/app_modules/vote/fun/get/status/get_all_review.tsx b/src/app_modules/vote/fun/get/status/get_all_review.tsx index e34a9379..0a2b074e 100644 --- a/src/app_modules/vote/fun/get/status/get_all_review.tsx +++ b/src/app_modules/vote/fun/get/status/get_all_review.tsx @@ -1,10 +1,10 @@ "use server"; import prisma from "@/app/lib/prisma"; -import { user_getOneUserId } from "@/app_modules/fun_global/get_user_token"; +import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token"; export async function vote_getAllReview({ page }: { page: number }) { - const authorId = await user_getOneUserId(); + const authorId = await user_funGetOneUserId(); const takeData = 10; const skipData = page * takeData - takeData; diff --git a/src/app_modules/vote/fun/index.ts b/src/app_modules/vote/fun/index.ts new file mode 100644 index 00000000..ce414853 --- /dev/null +++ b/src/app_modules/vote/fun/index.ts @@ -0,0 +1,3 @@ +import { voting_funUpdateIsArsipById } from "./edit/fun_update_is_arsip_by_id"; + +export { voting_funUpdateIsArsipById }; diff --git a/src/app_modules/vote/main/beranda.tsx b/src/app_modules/vote/main/beranda.tsx index 152be657..829db054 100644 --- a/src/app_modules/vote/main/beranda.tsx +++ b/src/app_modules/vote/main/beranda.tsx @@ -3,7 +3,7 @@ import { RouterVote } from "@/app/lib/router_hipmi/router_vote"; import ComponentGlobal_CreateButton from "@/app_modules/_global/component/button_create"; import ComponentGlobal_IsEmptyData from "@/app_modules/_global/component/is_empty_data"; -import { Box, Center, Loader } from "@mantine/core"; +import { Box, Center, Loader, Stack, TextInput } from "@mantine/core"; import { useShallowEffect } from "@mantine/hooks"; import _ from "lodash"; import { ScrollOnly } from "next-scroll-loader"; @@ -22,19 +22,30 @@ export default function Vote_Beranda({ useShallowEffect(() => { onLoad({ - setData(val) { + newData(val) { setData(val); }, }); }, [setData]); - async function onLoad({ setData }: { setData: (val: any) => void }) { + async function onLoad({ newData }: { newData: (val: any) => void }) { const loadData = await vote_getAllListPublish({ page: 1 }); - setData(loadData); + newData(loadData); + } + + async function onSearch(s: string) { + const loadSearch = await vote_getAllListPublish({ page: 1, search: s }); + setData(loadSearch as any); } return ( - + + onSearch(val.target.value)} + /> + {_.isEmpty(data) ? ( @@ -42,7 +53,7 @@ export default function Vote_Beranda({ ) : ( (
@@ -69,8 +80,7 @@ export default function Vote_Beranda({ )} - // --- Main component --- // )} - + ); } diff --git a/src/app_modules/vote/main/status/index.tsx b/src/app_modules/vote/main/status/index.tsx index 7d948004..d05de29d 100644 --- a/src/app_modules/vote/main/status/index.tsx +++ b/src/app_modules/vote/main/status/index.tsx @@ -23,7 +23,6 @@ export default function Vote_Status({ listDraft: any[]; listReject: any[]; }) { - const [tabsStatus, setTabsStatus] = useAtom(gs_vote_status); const listTabs = [ { @@ -73,6 +72,7 @@ export default function Vote_Status({ {listTabs.map((e) => ( {e.value} diff --git a/src/app_modules/vote/main/status/publish.tsx b/src/app_modules/vote/main/status/publish.tsx index 9c82b6f3..f8855e69 100644 --- a/src/app_modules/vote/main/status/publish.tsx +++ b/src/app_modules/vote/main/status/publish.tsx @@ -47,6 +47,7 @@ export default function Vote_StatusPublish({ )} diff --git a/src/app_modules/vote/model/interface.ts b/src/app_modules/vote/model/interface.ts index 3de4348a..1dc4f554 100644 --- a/src/app_modules/vote/model/interface.ts +++ b/src/app_modules/vote/model/interface.ts @@ -13,6 +13,7 @@ export interface MODEL_VOTING { authorId: string; Author: MODEL_USER; Voting_DaftarNamaVote: MODEL_VOTING_DAFTAR_NAMA_VOTE[]; + isArsip: boolean; } export interface MODEL_VOTING_DAFTAR_NAMA_VOTE {