upd: diskusi divisi

Deskripsi:
- realtime arsip dan mengaktifkan diskusi divisi

No Issues
This commit is contained in:
amel
2025-01-15 12:08:28 +08:00
parent 13c05548ff
commit afca934d4c
3 changed files with 39 additions and 27 deletions

View File

@@ -63,10 +63,14 @@ export default function DetailDiscussion({ id, idDivision }: { id: string, idDiv
}
if (dataRealTime && dataRealTime.some((i: any) => i.category == 'discussion-delete' && i.id == id && i.user != isUser)) {
toast.error("Data telah diarsipkan, anda akan beralih ke halaman list diskusi")
setTimeout(() => {
router.push(`/division/${param.id}/discussion`)
}, 1000)
if ((roleLogin.get() == "user" || roleLogin.get() == "coadmin") && !adminLogin.get()) {
toast.error("Data telah diarsipkan, anda akan beralih ke halaman list diskusi")
setTimeout(() => {
router.push(`/division/${param.id}/discussion`)
}, 1000)
} else {
getData(true)
}
}
}, [dataRealTime])
@@ -107,7 +111,6 @@ export default function DetailDiscussion({ id, idDivision }: { id: string, idDiv
return (
<Box>
{/* <NavbarDetailDiscussion id={id} status={Number(isData?.status)} idDivision={idDivision} /> */}
<LayoutNavbarNew back={`/division/${param.id}/discussion/`} title="Diskusi"
menu={
((roleLogin.get() != 'user' && roleLogin.get() != 'coadmin') || adminLogin.get() || isCreator) ?
@@ -159,7 +162,11 @@ export default function DetailDiscussion({ id, idDivision }: { id: string, idDiv
<Grid.Col span={8}>
<Box pl={isMobile2 ? 40 : 30}>
<Text lineClamp={1} fz={isMobile ? 15 : 16}>{isData?.username}</Text>
<Badge color={isData?.status === 1 ? "green" : "red"} size="sm">{isData?.status === 1 ? "BUKA" : "TUTUP"}</Badge>
{!isData?.isActive ?
<Badge color="gray" size="sm">ARSIP</Badge>
:
<Badge color={isData?.status === 1 ? "green" : "red"} size="sm">{isData?.status === 1 ? "BUKA" : "TUTUP"}</Badge>
}
</Box>
</Grid.Col>
<Grid.Col span={3}>
@@ -196,7 +203,11 @@ export default function DetailDiscussion({ id, idDivision }: { id: string, idDiv
<Grid.Col span={8}>
<Box pl={isMobile2 ? 40 : 30}>
<Text lineClamp={1} fz={isMobile ? 15 : 16}>{isData?.username}</Text>
<Badge color={isData?.status === 1 ? "green" : "red"} size="sm">{isData?.status === 1 ? "BUKA" : "TUTUP"}</Badge>
{!isData?.isActive ?
<Badge color="gray" size="sm">ARSIP</Badge>
:
<Badge color={isData?.status === 1 ? "green" : "red"} size="sm">{isData?.status === 1 ? "BUKA" : "TUTUP"}</Badge>
}
</Box>
</Grid.Col>
<Grid.Col span={3}>

View File

@@ -59,26 +59,31 @@ export default function DrawerDetailDiscussion({ onSuccess, id, status, idDivisi
setLoadingDelete(true)
const response = await funDeleteDiscussion(id, { active: !active })
if (response.success) {
setDataRealtime([
{
category: "discussion-delete",
id: id,
user: response.user
},
{
category: "division/" + param.id + "/discussion",
}
])
toast.success(response.message)
onSuccess(false)
if (active) {
setDataRealtime([
{
category: "discussion-delete",
id: id,
user: response.user
},
{
category: "division/" + param.id + "/discussion",
}
])
router.push(`/division/${param.id}/discussion`)
} else {
refresh.set(!refresh.get())
setDataRealtime([{
category: "discussion-detail",
id: id,
}])
setDataRealtime([
{
category: "discussion-detail",
id: id,
},
{
category: "division/" + param.id + "/discussion",
}
])
}
} else {
toast.error(response.message)
@@ -86,11 +91,7 @@ export default function DrawerDetailDiscussion({ onSuccess, id, status, idDivisi
}
} catch (error) {
console.error(error);
if (!active) {
toast.error("Gagal mengarsipkan diskusi, coba lagi nanti");
} else {
toast.error("Gagal mengaktifkan diskusi, coba lagi nanti");
}
toast.error("Gagal mengupdate diskusi, coba lagi nanti");
} finally {
setLoadingDelete(false)
setValModal(false)

View File

@@ -93,7 +93,7 @@ export default function DrawerDetailDiscussionGeneral({ onSuccess, id, status, a
}
} catch (error) {
console.error(error);
toast.error("Gagal mengarsipkan diskusi umum, coba lagi nanti");
toast.error("Gagal mengupdate diskusi umum, coba lagi nanti");
} finally {
setLoadingDelete(false)
setValModal(false)