upd: dashboard admin

Deskripsi:
- list user
- tambah usr
- delete user

- beserta api

NO Issues
This commit is contained in:
2025-11-13 17:43:19 +08:00
parent cc293d3bad
commit 039524d092
3 changed files with 456 additions and 0 deletions

View File

@@ -101,5 +101,86 @@ const UserRoute = new Elysia({
description: "update user",
}
})
.post("/create", async ({ body }) => {
const { name, phone, roleId, email, password } = body
const create = await prisma.user.create({
data: {
name,
phone,
roleId,
email,
password
}
})
return {
success: true,
message: "User created successfully",
}
}, {
body: t.Object({
name: t.String({ minLength: 1, error: "name is required" }),
phone: t.String({ minLength: 1, error: "phone is required" }),
roleId: t.String({ minLength: 1, error: "roleId is required" }),
email: t.String({ minLength: 1, error: "email is required" }),
password: t.String({ minLength: 1, error: "password is required" })
}),
detail: {
summary: "create",
description: "create user",
}
})
.get("/list", async (ctx) => {
const { user } = ctx as any
const data = await prisma.user.findMany({
where: {
isActive: true,
NOT: {
id: user.id
}
}
})
return data
}, {
detail: {
summary: "list",
description: "list user",
}
})
.get("/role", async () => {
const data = await prisma.role.findMany()
return data
}, {
detail: {
summary: "role",
description: "role user",
}
})
.post("/delete", async ({ body }) => {
const { id } = body
const deleteData = await prisma.user.update({
where: {
id
},
data: {
isActive: false
}
})
return {
success: true,
message: "User deleted successfully",
}
}, {
body: t.Object({
id: t.String({ minLength: 1, error: "id is required" })
}),
detail: {
summary: "delete",
description: "delete user",
}
})
export default UserRoute