118 lines
1.8 KiB
Plaintext
118 lines
1.8 KiB
Plaintext
// 用户类型
|
|
export type User = {
|
|
id: string
|
|
username: string
|
|
email: string
|
|
avatar_url?: string
|
|
role: string
|
|
}
|
|
|
|
// 通知类型
|
|
export type Notification = {
|
|
id: string
|
|
user_id: string
|
|
title: string
|
|
content: string
|
|
status: string
|
|
created_at: string
|
|
}
|
|
|
|
// 修改密码表单类型
|
|
export type PasswordForm = {
|
|
oldPassword: string
|
|
newPassword: string
|
|
confirmPassword: string
|
|
}
|
|
|
|
// 用户详情页相关类型
|
|
export type UserDetail = {
|
|
id: string
|
|
name?: string
|
|
username: string
|
|
email?: string
|
|
phone?: string
|
|
is_active: boolean
|
|
created_at: string
|
|
last_login?: string
|
|
}
|
|
|
|
export type UserRole = {
|
|
id: string
|
|
user_id: string
|
|
role_id: string
|
|
role_name: string
|
|
level: number
|
|
scope_type?: string
|
|
scope_id?: string
|
|
scope_name?: string
|
|
}
|
|
|
|
export type EditForm = {
|
|
name?: string
|
|
email?: string
|
|
phone?: string
|
|
is_active: boolean
|
|
}
|
|
|
|
// 角色类型
|
|
export type Role = {
|
|
id: string
|
|
name: string
|
|
description?: string
|
|
level: number
|
|
is_system: boolean
|
|
created_at: string
|
|
}
|
|
|
|
// 角色表单类型
|
|
export type RoleForm = {
|
|
id?: string
|
|
name: string
|
|
description?: string
|
|
level: number
|
|
is_system?: boolean
|
|
scope_type?: string
|
|
scope_id?: string
|
|
role_id?: string
|
|
role_name?: string
|
|
}
|
|
|
|
export type RoleOption = {
|
|
id: string
|
|
name: string
|
|
level: number
|
|
requires_scope: boolean
|
|
}
|
|
|
|
export type RegionOption = {
|
|
id: string
|
|
name: string
|
|
}
|
|
|
|
export type SchoolOption = {
|
|
id: string
|
|
name: string
|
|
region_id: string
|
|
}
|
|
|
|
export type GradeOption = {
|
|
id: string
|
|
name: string
|
|
school_id: string
|
|
}
|
|
|
|
export type ClassOption = {
|
|
id: string
|
|
name: string
|
|
grade_id: string
|
|
}
|
|
|
|
export type Permission = {
|
|
id: string;
|
|
code: string;
|
|
name: string;
|
|
description?: string;
|
|
resource_type?: string;
|
|
action?: string;
|
|
is_system?: boolean;
|
|
} |