upd: diskusi

Deskripsi:
- pembatasan user role
- log user

No Issues
This commit is contained in:
amel
2024-09-10 11:27:47 +08:00
parent 88e75db420
commit daa5d87b02
4 changed files with 38 additions and 8 deletions

View File

@@ -1,8 +1,9 @@
import { prisma } from "@/module/_global";
import { funGetUserByCookies } from "@/module/auth";
import { createLogUser } from "@/module/user";
import { NextResponse } from "next/server";
// CREATE COMENT BY ID
// CREATE COMENT BY ID KOMENTAR
export async function POST(request: Request, context: { params: { id: string } }) {
try {
const user = await funGetUserByCookies()
@@ -34,9 +35,15 @@ export async function POST(request: Request, context: { params: { id: string } }
comment: comment,
idDisscussion: id,
createdBy: user.id
},
select: {
id: true
}
})
// create log user
const log = await createLogUser({ act: 'CREATE', desc: 'User menambah komentar pada diskusi', table: 'divisionDisscussionComment', data: data.id })
return NextResponse.json({ success: true, message: "Berhasil menambah komentar", data: data, }, { status: 200 });
} catch (error) {

View File

@@ -1,6 +1,6 @@
import { prisma } from "@/module/_global";
import { funGetUserByCookies } from "@/module/auth";
import { stat } from "fs";
import { createLogUser } from "@/module/user";
import _ from "lodash";
import moment from "moment";
import "moment/locale/id";
@@ -95,7 +95,7 @@ export async function GET(request: Request, context: { params: { id: string } })
}
// ONE OR CLOSE DISCUSSION
// OPEN OR CLOSE DISCUSSION
export async function DELETE(request: Request, context: { params: { id: string } }) {
try {
const user = await funGetUserByCookies()
@@ -131,6 +131,10 @@ export async function DELETE(request: Request, context: { params: { id: string }
status: newStatus
}
});
// create log user
const log = await createLogUser({ act: 'UPDATE', desc: 'User mengupdate status diskusi', table: 'divisionDisscussion', data: id })
return NextResponse.json({ success: true, message: "Berhasil mengedit diskusi" }, { status: 200 });
} catch (error) {
@@ -167,6 +171,9 @@ export async function PUT(request: Request, context: { params: { id: string } })
isActive: false
}
});
// create log user
const log = await createLogUser({ act: 'DELETE', desc: 'User menghapus data diskusi', table: 'divisionDisscussion', data: id })
return NextResponse.json({ success: true, message: "Berhasil menghapus diskusi" }, { status: 200 });
} catch (error) {
console.error(error);
@@ -203,6 +210,9 @@ export async function POST(request: Request, context: { params: { id: string } }
desc: desc
}
});
// create log user
const log = await createLogUser({ act: 'UPDATE', desc: 'User mengupdate data diskusi', table: 'divisionDisscussion', data: id })
return NextResponse.json({ success: true, message: "Berhasil mengedit diskusi" }, { status: 200 });
} catch (error) {

View File

@@ -4,6 +4,7 @@ import _ from "lodash";
import moment from "moment";
import { NextResponse } from "next/server";
import "moment/locale/id";
import { createLogUser } from "@/module/user";
// GET ALL DISCUSSION DIVISION ACTIVE = TRUE
@@ -116,8 +117,14 @@ export async function POST(request: Request) {
desc,
createdBy: user.id
},
select: {
id: true
}
});
// create log user
const log = await createLogUser({ act: 'CREATE', desc: 'User membuat data diskusi', table: 'divisionDisscussion', data: data.id })
return NextResponse.json({ success: true, message: "Berhasil menambahkan diskusi", data, }, { status: 200 });
} catch (error) {
console.error(error);

View File

@@ -52,19 +52,25 @@ export default function DetailDiscussion({ id, idDivision }: { id: string, idDiv
getData()
}, [refresh.get()])
async function reloadData() {
try {
const response = await funGetDiscussionById(id)
setData(response.data)
} catch (error) {
console.error(error)
}
}
const sendComent = async () => {
try {
if (isComent.trim() == "") {
return toast.error("Masukkan Komentar Anda")
}
const response = await funCreateComent(id, {
comment: isComent,
idDiscussion: param.detail
})
const response = await funCreateComent(id, { comment: isComent, idDiscussion: param.detail })
if (response.success) {
setIsComent("")
getData()
reloadData()
} else {
toast.error(response.message)
}