实现权限管理页面与功能
This commit is contained in:
37
src/actions/admin.ts
Normal file
37
src/actions/admin.ts
Normal file
@@ -0,0 +1,37 @@
|
||||
"use server"
|
||||
|
||||
import type { PageRecord } from "@/lib/api"
|
||||
import type { Admin } from "@/models/admin"
|
||||
import { callByUser } from "./base"
|
||||
|
||||
export async function getPageAdmin(params: { page: number; size: number }) {
|
||||
return callByUser<PageRecord<Admin>>("/api/admin/admin/page", params)
|
||||
}
|
||||
|
||||
export async function createAdmin(data: {
|
||||
username: string
|
||||
password: string
|
||||
name?: string
|
||||
phone?: string
|
||||
email?: string
|
||||
status?: number
|
||||
roles?: number[]
|
||||
}) {
|
||||
return callByUser<Admin>("/api/admin/admin/create", data)
|
||||
}
|
||||
|
||||
export async function updateAdmin(data: {
|
||||
id: number
|
||||
password?: string
|
||||
name?: string
|
||||
phone?: string
|
||||
email?: string
|
||||
status?: number
|
||||
roles?: number[]
|
||||
}) {
|
||||
return callByUser<Admin>("/api/admin/admin/update", data)
|
||||
}
|
||||
|
||||
export async function deleteAdmin(id: number) {
|
||||
return callByUser<Admin>("/api/admin/admin/remove", { id })
|
||||
}
|
||||
19
src/actions/permission.ts
Normal file
19
src/actions/permission.ts
Normal file
@@ -0,0 +1,19 @@
|
||||
"use server"
|
||||
|
||||
import type { PageRecord } from "@/lib/api"
|
||||
import type { Permission } from "@/models/permission"
|
||||
import { callByUser } from "./base"
|
||||
|
||||
export async function getPagePermission(params: {
|
||||
page: number
|
||||
size: number
|
||||
}) {
|
||||
return callByUser<PageRecord<Permission>>(
|
||||
"/api/admin/permission/page",
|
||||
params,
|
||||
)
|
||||
}
|
||||
|
||||
export async function getAllPermissions() {
|
||||
return callByUser<Permission[]>("/api/admin/permission/list", {})
|
||||
}
|
||||
38
src/actions/role.ts
Normal file
38
src/actions/role.ts
Normal file
@@ -0,0 +1,38 @@
|
||||
"use server"
|
||||
|
||||
import type { PageRecord } from "@/lib/api"
|
||||
import type { Role } from "@/models/role"
|
||||
import { callByUser } from "./base"
|
||||
|
||||
export async function getAllRoles() {
|
||||
return callByUser<Role[]>("/api/admin/admin-role/list", {})
|
||||
}
|
||||
|
||||
export async function getPageRole(params: { page: number; size: number }) {
|
||||
return callByUser<PageRecord<Role>>("/api/admin/admin-role/page", params)
|
||||
}
|
||||
|
||||
export async function createRole(data: {
|
||||
name: string
|
||||
description?: string
|
||||
active?: boolean
|
||||
sort?: number
|
||||
permissions?: number[]
|
||||
}) {
|
||||
return callByUser<Role>("/api/admin/admin-role/create", data)
|
||||
}
|
||||
|
||||
export async function updateRole(data: {
|
||||
id: number
|
||||
name?: string
|
||||
description?: string
|
||||
active?: boolean
|
||||
sort?: number
|
||||
permissions?: number[]
|
||||
}) {
|
||||
return callByUser<Role>("/api/admin/admin-role/update", data)
|
||||
}
|
||||
|
||||
export async function deleteRole(id: number) {
|
||||
return callByUser<Role>("/api/admin/admin-role/remove", { id })
|
||||
}
|
||||
Reference in New Issue
Block a user