71 lines
2.3 KiB
TypeScript
71 lines
2.3 KiB
TypeScript
import { RouterEvent } from "@/app/lib/router_hipmi/router_event";
|
|
import { AppRouterInstance } from "next/dist/shared/lib/app-router-context.shared-runtime";
|
|
import { MODEL_NOTIFIKASI } from "../../model/interface";
|
|
import { RouterDonasi } from "@/app/lib/router_hipmi/router_donasi";
|
|
import { notifikasi_funDonasiCheckStatus } from "../../fun/check/fun_check_donasi_status";
|
|
import notifikasi_getByUserId from "../../fun/get/get_notifiaksi_by_id";
|
|
import notifikasi_countUserNotifikasi from "../../fun/count/fun_count_by_id";
|
|
import notifikasi_funUpdateIsReadById from "../../fun/update/fun_update_is_read_by_user_id";
|
|
import { ComponentGlobal_NotifikasiPeringatan } from "@/app_modules/_global/notif_global";
|
|
import { notifikasi_checkAuthorDonasiById } from "../../fun/check/fun_check_author_donasi_by_id";
|
|
|
|
export async function redirectDonasiPage({
|
|
appId,
|
|
dataId,
|
|
categoryPage,
|
|
userId,
|
|
userLoginId,
|
|
router,
|
|
onLoadDataEvent,
|
|
onSetMenuId,
|
|
onSetVisible,
|
|
onLoadCountNtf,
|
|
}: {
|
|
appId: string;
|
|
dataId: string;
|
|
categoryPage: string;
|
|
userId: string;
|
|
userLoginId: string;
|
|
router: AppRouterInstance;
|
|
onLoadDataEvent: (val: any) => void;
|
|
onSetMenuId(val: number): void;
|
|
onSetVisible(val: boolean): void;
|
|
onLoadCountNtf(val: number): void;
|
|
}) {
|
|
const check = await notifikasi_funDonasiCheckStatus({ id: appId });
|
|
const checkAuthor = await notifikasi_checkAuthorDonasiById({
|
|
donasiId: appId,
|
|
userId: userId,
|
|
});
|
|
|
|
if (check.status == 200) {
|
|
// const loadListNotifikasi = await notifikasi_getByUserId({
|
|
// page: 1,
|
|
// kategoriApp: categoryPage as any,
|
|
// });
|
|
// onLoadDataEvent(loadListNotifikasi);
|
|
|
|
// const loadCountNotifikasi = await notifikasi_countUserNotifikasi();
|
|
// onLoadCountNtf(loadCountNotifikasi);
|
|
|
|
const updateReadNotifikasi = await notifikasi_funUpdateIsReadById({
|
|
notifId: dataId,
|
|
});
|
|
|
|
if (updateReadNotifikasi.status == 200) {
|
|
const pathToCreator = `/dev/donasi/detail/${check.statusName}/${appId}`;
|
|
const pathToAllUser = `/dev/donasi/detail/main/${appId}`;
|
|
|
|
if (checkAuthor) {
|
|
router.push(pathToCreator, { scroll: false });
|
|
} else {
|
|
router.push(pathToAllUser, { scroll: false });
|
|
onSetMenuId(1);
|
|
}
|
|
}
|
|
} else {
|
|
onSetVisible(false);
|
|
ComponentGlobal_NotifikasiPeringatan("Status tidak ditemukan");
|
|
}
|
|
}
|