{
- await notifikasi_funUpdateIsReadById({
- notifId: data?.id,
- });
+ if (data?.kategoriApp === "JOB") {
+ const checkStatus = await notifikasi_jobCheckStatus({
+ appId: data.appId,
+ dataId: data.id,
+ });
- // if (updateIsRead.status === 200) {
- // const loadData = await notifikasi_getByUserId({
- // page: activePage + 1,
+ if (checkStatus?.success) {
+ const loadListNotifikasi = await notifikasi_getByUserId({
+ page: 1,
+ kategoriApp: activeKategori,
+ });
+
+ onLoadData(loadListNotifikasi);
+
+ const path = RouterJob.status({
+ id: checkStatus.statusId as string,
+ });
+
+ setJobMenuId(2);
+ router.push(path);
+ setVisible(true);
+ }
+ }
+
+ // data?.kategoriApp === "FORUM" &&
+ // redirectDetailForumPage({
+ // data: data,
+ // router: router,
// });
- // onLoadData(loadData);
- // }
- data?.kategoriApp === "JOB" &&
- redirectJobPage({
- data: data,
- router: router,
- onSetPage(val) {
- onSetMenu(val);
- },
- });
+ // data?.kategoriApp === "VOTING" &&
+ // redirectVotingPage({
+ // data: data,
+ // router: router,
+ // onSetPage(val) {
+ // // onSetMenu(val);
+ // },
+ // });
- data?.kategoriApp === "FORUM" &&
- redirectDetailForumPage({
- data: data,
- router: router,
- });
+ // data?.kategoriApp === "EVENT" &&
+ // redirectEventPage({
+ // data: data,
+ // router: router,
+ // onSetPage(val) {
+ // // onSetMenu(val);
+ // },
+ // });
- data?.kategoriApp === "VOTING" &&
- redirectVotingPage({
- data: data,
- router: router,
- onSetPage(val) {
- onSetMenu(val);
- },
- });
+ // data?.kategoriApp === "COLLABORATION" &&
+ // redirectDetailCollaborationPage({
+ // data: data,
+ // router: router,
+ // });
- data?.kategoriApp === "EVENT" &&
- redirectEventPage({
- data: data,
- router: router,
- onSetPage(val) {
- onSetMenu(val);
- },
- });
+ // data.kategoriApp === "DONASI" &&
+ // redirectDonasiPage({
+ // data: data,
+ // router: router,
+ // onSetPage(val) {
+ // // onSetMenu(val);
+ // },
+ // });
- data?.kategoriApp === "COLLABORATION" &&
- redirectDetailCollaborationPage({
- data: data,
- router: router,
- });
-
- data.kategoriApp === "DONASI" &&
- redirectDonasiPage({
- data: data,
- router: router,
- onSetPage(val) {
- onSetMenu(val);
- },
- });
-
- data.kategoriApp === "INVESTASI" &&
- redirectInvestasiPage({
- data: data,
- router: router,
- onSetPage(val) {
- onSetMenu(val);
- },
- });
+ // data.kategoriApp === "INVESTASI" &&
+ // redirectInvestasiPage({
+ // data: data,
+ // router: router,
+ // onSetPage(val) {
+ // // onSetMenu(val);
+ // },
+ // });
}}
>
{/* {JSON.stringify(e, null, 2)} */}
@@ -181,6 +195,7 @@ export function ComponentNotifiaksi_CardView({
)}
+ {visible && }
>
diff --git a/src/app_modules/notifikasi/component/path/job.ts b/src/app_modules/notifikasi/component/path/job.ts
index dcf4beef..df201050 100644
--- a/src/app_modules/notifikasi/component/path/job.ts
+++ b/src/app_modules/notifikasi/component/path/job.ts
@@ -1,31 +1,36 @@
-import { RouterJob } from "@/app/lib/router_hipmi/router_job";
-import { AppRouterInstance } from "next/dist/shared/lib/app-router-context.shared-runtime";
-import { MODEL_NOTIFIKASI } from "../../model/interface";
+import { ComponentGlobal_NotifikasiPeringatan } from "@/app_modules/_global/notif_global";
+import { notifikasi_funJobCheckStatus } from "../../fun/check/fun_check_job_status";
+import notifikasi_funUpdateIsReadById from "../../fun/update/fun_update_is_read_by_user_id";
-export function redirectJobPage({
- data,
- router,
- onSetPage,
+export async function notifikasi_jobCheckStatus({
+ appId,
+ dataId,
}: {
- data: MODEL_NOTIFIKASI;
- router: AppRouterInstance;
- onSetPage: (val: any) => void;
+ appId: string;
+ dataId: string;
}) {
- const path = RouterJob.status({id: "1"});
+ const check = await notifikasi_funJobCheckStatus({
+ id: appId,
+ });
- if (data.status === "Publish") {
- onSetPage({
- menuId: 2,
- status: data.status,
+ console.log(check);
+
+ if (check) {
+ const updateReadNotifikasi = await notifikasi_funUpdateIsReadById({
+ notifId: dataId,
});
- }
- if (data.status === "Reject") {
- onSetPage({
- menuId: 2,
- status: data.status,
- });
+ if (updateReadNotifikasi.status == 200) {
+ return {
+ success: true,
+ statusId: check.statusId,
+ };
+ } else {
+ return {
+ success: false,
+ };
+ }
+ } else {
+ ComponentGlobal_NotifikasiPeringatan("Status tidak ditemukan");
}
-
- router.push(path, {scroll: false});
}
diff --git a/src/app_modules/notifikasi/fun/check/fun_check_job_status.ts b/src/app_modules/notifikasi/fun/check/fun_check_job_status.ts
new file mode 100644
index 00000000..d6b9eaa9
--- /dev/null
+++ b/src/app_modules/notifikasi/fun/check/fun_check_job_status.ts
@@ -0,0 +1,25 @@
+"use server";
+
+"use server";
+
+import { prisma } from "@/app/lib";
+
+export async function notifikasi_funJobCheckStatus({ id }: { id: string }) {
+ const data = await prisma.job.findUnique({
+ where: {
+ id: id,
+ },
+ select: {
+ masterStatusId: true
+ },
+ });
+
+ if (!data)
+ return { status: 400, message: "Job tidak ditemukan", statusId: "" };
+ return {
+ status: 200,
+ message: "Berhasil di cek",
+ statusId: data.masterStatusId,
+ };
+
+}
diff --git a/src/app_modules/notifikasi/fun/create/create_notif_to_admin.ts b/src/app_modules/notifikasi/fun/create/create_notif_to_admin.ts
index 08ee88ab..c7bda3e1 100644
--- a/src/app_modules/notifikasi/fun/create/create_notif_to_admin.ts
+++ b/src/app_modules/notifikasi/fun/create/create_notif_to_admin.ts
@@ -8,12 +8,11 @@ export default async function notifikasiToAdmin_funCreate({
}: {
data: MODEL_NOTIFIKASI;
}) {
+
const getAdmin = await prisma.user.findMany({
where: {
active: true,
- NOT: {
- masterUserRoleId: "1",
- },
+ masterUserRoleId: "2",
},
});
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 c6dc2569..a7584036 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
@@ -15,7 +15,7 @@ export default async function notifikasi_getByUserId({
const takeData = 10;
const skipData = page * takeData - takeData;
- if (kategoriApp === "Semua") {
+ if (kategoriApp === "Semua" ) {
const data = await prisma.notifikasi.findMany({
take: takeData,
skip: skipData,
diff --git a/src/app_modules/notifikasi/ui/ui_notifiaksi.tsx b/src/app_modules/notifikasi/ui/ui_notifiaksi.tsx
index 8a6c84ba..c2fa6a7e 100644
--- a/src/app_modules/notifikasi/ui/ui_notifiaksi.tsx
+++ b/src/app_modules/notifikasi/ui/ui_notifiaksi.tsx
@@ -15,7 +15,7 @@ import {
gs_investas_menu,
gs_investasi_status,
} from "@/app_modules/investasi/g_state";
-import { gs_job_hot_menu, gs_job_status } from "@/app_modules/job/global_state";
+import { gs_job_hot_menu } from "@/app_modules/job/global_state";
import {
gs_vote_hotMenu,
gs_vote_status,
@@ -46,8 +46,6 @@ export function Notifikasi_UiView({
);
// Kategori App
- const [jobMenuId, setJobMenuId] = useAtom(gs_job_hot_menu);
- const [jobStatus, setJobStatus] = useAtom(gs_job_status);
const [voteMenu, setVoteMenu] = useAtom(gs_vote_hotMenu);
const [voteStatus, setVoteStatus] = useAtom(gs_vote_status);
const [eventMenu, setEventMenu] = useAtom(gs_event_hotMenu);
@@ -133,32 +131,34 @@ export function Notifikasi_UiView({
data={item}
onLoadData={setData}
activePage={activePage}
- onSetMenu={(val) => {
- if (item?.kategoriApp === "JOB") {
- setJobMenuId(val.menuId);
- setJobStatus(val.status);
- }
+ activeKategori={activeKategori}
+ // onSetMenu={(val) => {
+ // if (item?.kategoriApp === "JOB") {
- if (item?.kategoriApp === "VOTING") {
- setVoteMenu(val.menuId);
- setVoteStatus(val.status);
- }
+ // setJobMenuId(val.menuId);
+ // // setJobStatus(val.status);
+ // }
- if (item?.kategoriApp === "EVENT") {
- setEventMenu(val.menuId);
- setEventStatus(val.status);
- }
+ // // if (item?.kategoriApp === "VOTING") {
+ // // setVoteMenu(val.menuId);
+ // // setVoteStatus(val.status);
+ // // }
- if (item?.kategoriApp === "DONASI") {
- setDonasiMenu(val.menuId);
- setDonasiStatus(val.status);
- }
+ // // if (item?.kategoriApp === "EVENT") {
+ // // setEventMenu(val.menuId);
+ // // setEventStatus(val.status);
+ // // }
- if (item?.kategoriApp === "INVESTASI") {
- setInvestasiMenu(val.menuId);
- setInvestasiStatus(val.status);
- }
- }}
+ // // if (item?.kategoriApp === "DONASI") {
+ // // setDonasiMenu(val.menuId);
+ // // setDonasiStatus(val.status);
+ // // }
+
+ // // if (item?.kategoriApp === "INVESTASI") {
+ // // setInvestasiMenu(val.menuId);
+ // // setInvestasiStatus(val.status);
+ // // }
+ // }}
/>
)}
diff --git a/src/app_modules/zCoba/coba_realtime.tsx b/src/app_modules/zCoba/coba_realtime.tsx
index 30376aa6..45ea55ba 100644
--- a/src/app_modules/zCoba/coba_realtime.tsx
+++ b/src/app_modules/zCoba/coba_realtime.tsx
@@ -1,38 +1,40 @@
"use client";
-
-import { useWibuRealtime, WibuRealtime } from "wibu";
+import { WibuRealtime } from "wibu-pkg";
import { v4 } from "uuid";
import { Stack, Title, Button } from "@mantine/core";
import { useShallowEffect } from "@mantine/hooks";
import Countdown from "react-countdown";
+import { useHookstate } from "@hookstate/core";
+
+const WIBU_REALTIME_TOKEN: any = process.env.NEXT_PUBLIC_WIBU_REALTIME_TOKEN;
export function CobaRealtime({ userLoginId }: { userLoginId: string }) {
- const WIBU_REALTIME_TOKEN: any = process.env.NEXT_PUBLIC_WIBU_REALTIME_TOKEN;
// const [dataRealTime, setDataRealTime] = useWibuRealtime({
// WIBU_REALTIME_TOKEN: WIBU_REALTIME_TOKEN,
// project: "hipmi",
// });
+
useShallowEffect(() => {
- // WibuRealtime.init({
- // WIBU_REALTIME_TOKEN: WIBU_REALTIME_TOKEN,
- // project: "hipmi",
- // onData(data) {
- // console.log(data);
- // },
- // });
- // return () => {
- // WibuRealtime.cleanup();
- // };
+ WibuRealtime.init({
+ onData: (data) => {
+
+ console.log(data)
+ },
+ project: "hipmi",
+ WIBU_REALTIME_TOKEN: WIBU_REALTIME_TOKEN,
+ });
}, []);
return (
<>