upd: division
Deskripsi: - pembatasan role - project dipakein filter No ISsues
This commit is contained in:
@@ -15,6 +15,7 @@ export async function GET(request: Request) {
|
||||
|
||||
let grup
|
||||
const villaId = user.idVillage
|
||||
const roleUser = user.idUserRole
|
||||
const { searchParams } = new URL(request.url);
|
||||
const idGroup = searchParams.get("group");
|
||||
const name = searchParams.get('search');
|
||||
@@ -25,16 +26,37 @@ export async function GET(request: Request) {
|
||||
grup = idGroup
|
||||
}
|
||||
|
||||
const data = await prisma.division.findMany({
|
||||
where: {
|
||||
|
||||
let kondisi: any = {
|
||||
isActive: true,
|
||||
idVillage: String(villaId),
|
||||
idGroup: grup,
|
||||
name: {
|
||||
contains: (name == undefined || name == "null") ? "" : name,
|
||||
mode: "insensitive"
|
||||
}
|
||||
}
|
||||
|
||||
if (roleUser != "supadmin" && roleUser != "cosupadmin" && roleUser != "admin") {
|
||||
kondisi = {
|
||||
isActive: true,
|
||||
idVillage: String(villaId),
|
||||
idGroup: grup,
|
||||
name: {
|
||||
contains: (name == undefined || name == "null") ? "" : name,
|
||||
mode: "insensitive"
|
||||
},
|
||||
DivisionMember: {
|
||||
some: {
|
||||
isActive: true,
|
||||
idUser: String(user.id)
|
||||
}
|
||||
}
|
||||
},
|
||||
}
|
||||
}
|
||||
|
||||
const data = await prisma.division.findMany({
|
||||
where: kondisi,
|
||||
select: {
|
||||
id: true,
|
||||
name: true,
|
||||
@@ -56,7 +78,18 @@ export async function GET(request: Request) {
|
||||
}))
|
||||
|
||||
|
||||
return NextResponse.json({ success: true, message: "Berhasil mendapatkan divisi", data: allData, }, { status: 200 });
|
||||
const filter = await prisma.group.findUnique({
|
||||
where: {
|
||||
id: grup
|
||||
},
|
||||
select: {
|
||||
id: true,
|
||||
name: true
|
||||
}
|
||||
})
|
||||
|
||||
|
||||
return NextResponse.json({ success: true, message: "Berhasil mendapatkan divisi", data: allData, filter }, { status: 200 });
|
||||
|
||||
} catch (error) {
|
||||
console.error(error);
|
||||
@@ -93,7 +126,7 @@ export async function POST(request: Request) {
|
||||
|
||||
|
||||
const dataMember = sent.member.map((v: any) => ({
|
||||
..._.omit(v, ["idUser","name"]),
|
||||
..._.omit(v, ["idUser", "name"]),
|
||||
idUser: v.idUser,
|
||||
idDivision: data.id,
|
||||
isAdmin: sent.admin.some((i: any) => i == v.idUser)
|
||||
|
||||
Reference in New Issue
Block a user