Fix: Voting
Deskripsi: - Fix notifikasi admin to user - Fix notifikasi user to admin ## No Issue
This commit is contained in:
@@ -1,6 +1,5 @@
|
||||
import { AdminEvent_TableReview } from "@/app_modules/admin/event";
|
||||
import { adminEvent_funGetListReview } from "@/app_modules/admin/event/fun";
|
||||
import { AdminEvent_getListTableByStatusId } from "@/app_modules/admin/event/fun/get/get_list_table_by_status_id";
|
||||
|
||||
export default async function Page() {
|
||||
const listReview = await adminEvent_funGetListReview({ page: 1 });
|
||||
|
||||
@@ -1,9 +1,16 @@
|
||||
import { atom } from "jotai";
|
||||
import { atomWithStorage } from "jotai/utils";
|
||||
|
||||
export type IRealtimeData = {
|
||||
status?: "Publish" | "Review" | "Draft" | "Reject" | "Peserta Event";
|
||||
|
||||
status?:
|
||||
| "Publish"
|
||||
| "Review"
|
||||
| "Draft"
|
||||
| "Reject"
|
||||
// EVNET
|
||||
| "Peserta Event"
|
||||
// VOTING
|
||||
| "Voting Masuk";
|
||||
|
||||
appId: string;
|
||||
userId: string;
|
||||
pesan: string;
|
||||
@@ -23,11 +30,14 @@ export const gs_admin_ntf = atom<number>(0);
|
||||
export const gs_user_ntf = atom<number>(0);
|
||||
export const gs_count_ntf = atom<number>(0);
|
||||
|
||||
|
||||
// job
|
||||
export const gs_adminJobTriggerReview = atom<boolean>(false);
|
||||
export const gs_adminJob_triggerReview = atom<boolean>(false);
|
||||
export const gs_jobTiggerBeranda = atom<boolean>(false);
|
||||
|
||||
// event
|
||||
export const gs_adminEventTriggerReview = atom<boolean>(false);
|
||||
export const gs_adminEvent_triggerReview = atom<boolean>(false);
|
||||
export const gs_eventTriggerBeranda = atom<boolean>(false);
|
||||
|
||||
// voting
|
||||
export const gs_adminVoting_triggerReview = atom<boolean>(false);
|
||||
export const gs_votingTiggerBeranda = atom<boolean>(false);
|
||||
|
||||
@@ -5,12 +5,14 @@ import { useAtom } from "jotai";
|
||||
import { WibuRealtime } from "wibu-pkg";
|
||||
import {
|
||||
gs_admin_ntf,
|
||||
gs_adminEventTriggerReview,
|
||||
gs_adminJobTriggerReview,
|
||||
gs_adminEvent_triggerReview,
|
||||
gs_adminJob_triggerReview,
|
||||
gs_adminVoting_triggerReview,
|
||||
gs_eventTriggerBeranda,
|
||||
gs_jobTiggerBeranda,
|
||||
gs_realtimeData,
|
||||
gs_user_ntf,
|
||||
gs_votingTiggerBeranda,
|
||||
IRealtimeData,
|
||||
} from "./global_state";
|
||||
|
||||
@@ -35,15 +37,23 @@ export default function RealtimeProvider({
|
||||
const [isTriggerJobBeranda, setIsTriggerJobBeranda] =
|
||||
useAtom(gs_jobTiggerBeranda);
|
||||
const [isAdminJob_TriggerReview, setIsAdminJob_TriggerReview] = useAtom(
|
||||
gs_adminJobTriggerReview
|
||||
gs_adminJob_triggerReview
|
||||
);
|
||||
|
||||
// EVENT
|
||||
const [isTriggerEventBeranda, setIsTriggerEventBeranca] = useAtom(
|
||||
const [isTriggerEventBeranda, setIsTriggerEventBeranda] = useAtom(
|
||||
gs_eventTriggerBeranda
|
||||
);
|
||||
const [isAdminEvent_TriggerReview, setIsAdminEvent_TriggerReview] = useAtom(
|
||||
gs_adminEventTriggerReview
|
||||
gs_adminEvent_triggerReview
|
||||
);
|
||||
|
||||
// VOTING
|
||||
const [isTriggerVotingBeranda, setIsTriggerVotingBeranda] = useAtom(
|
||||
gs_votingTiggerBeranda
|
||||
);
|
||||
const [isAdminVoting_TriggerReview, setIsAdminVoting_TriggerReview] = useAtom(
|
||||
gs_adminVoting_triggerReview
|
||||
);
|
||||
|
||||
useShallowEffect(() => {
|
||||
@@ -63,7 +73,7 @@ export default function RealtimeProvider({
|
||||
setDataRealtime(data.dataMessage as any);
|
||||
}
|
||||
|
||||
// JOB
|
||||
// ---------------------- JOB ------------------------- //
|
||||
if (
|
||||
data.type == "trigger" &&
|
||||
data.pushNotificationTo == "ADMIN" &&
|
||||
@@ -80,8 +90,9 @@ export default function RealtimeProvider({
|
||||
) {
|
||||
setIsTriggerJobBeranda(true);
|
||||
}
|
||||
// ---------------------- JOB ------------------------- //
|
||||
|
||||
// EVENT
|
||||
// ---------------------- EVENT ------------------------- //
|
||||
if (
|
||||
data.type == "trigger" &&
|
||||
data.pushNotificationTo == "ADMIN" &&
|
||||
@@ -96,7 +107,7 @@ export default function RealtimeProvider({
|
||||
data.dataMessage?.kategoriApp == "EVENT" &&
|
||||
data.dataMessage.status == "Publish"
|
||||
) {
|
||||
setIsTriggerEventBeranca(true);
|
||||
setIsTriggerEventBeranda(true);
|
||||
}
|
||||
|
||||
if (
|
||||
@@ -107,6 +118,35 @@ export default function RealtimeProvider({
|
||||
) {
|
||||
setNewUserNtf((e) => e + 1);
|
||||
}
|
||||
// ---------------------- EVENT ------------------------- //
|
||||
|
||||
// ---------------------- VOTING ------------------------- //
|
||||
if (
|
||||
data.type == "trigger" &&
|
||||
data.pushNotificationTo == "ADMIN" &&
|
||||
data.dataMessage?.kategoriApp == "VOTING"
|
||||
) {
|
||||
setIsAdminVoting_TriggerReview(true);
|
||||
}
|
||||
|
||||
if (
|
||||
data.type == "trigger" &&
|
||||
data.pushNotificationTo == "USER" &&
|
||||
data.dataMessage?.kategoriApp == "VOTING" &&
|
||||
data.dataMessage.status == "Publish"
|
||||
) {
|
||||
setIsTriggerVotingBeranda(true);
|
||||
}
|
||||
|
||||
if (
|
||||
data.type == "notification" &&
|
||||
data.pushNotificationTo == "USER" &&
|
||||
data.dataMessage?.status == "Voting Masuk" &&
|
||||
userLoginId !== data.dataMessage?.userId
|
||||
) {
|
||||
setNewUserNtf((e) => e + 1);
|
||||
}
|
||||
// ---------------------- VOTING ------------------------- //
|
||||
},
|
||||
|
||||
project: "hipmi",
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
import { funGetUserIdByToken } from "@/app_modules/_global/fun/get";
|
||||
import Coba_TestLoading from "@/app_modules/zCoba";
|
||||
import { CobaRealtime } from "@/app_modules/zCoba/coba_realtime";
|
||||
|
||||
export default async function Page() {
|
||||
@@ -10,8 +11,8 @@ export default async function Page() {
|
||||
|
||||
return (
|
||||
<>
|
||||
<CobaRealtime userLoginId={userLoginId} />
|
||||
{/* <Coba_TestLoading userLoginId={userLoginId} /> */}
|
||||
{/* <CobaRealtime userLoginId={userLoginId} /> */}
|
||||
<Coba_TestLoading userLoginId={userLoginId} />
|
||||
{/* <ComponentGlobal_UI_LayoutTamplate /> */}
|
||||
</>
|
||||
);
|
||||
|
||||
Reference in New Issue
Block a user