feat: 添加用户管理

This commit is contained in:
2025-02-11 22:33:38 +08:00
parent 04e6c52ec3
commit 1d0ef39d86
16 changed files with 1872 additions and 32 deletions

View File

@@ -1,9 +1,11 @@
import { http } from "@/utils/http";
import type {
DepartmentInfo,
DepartmentRoleInfo,
PermissionInfo,
RoleInfo,
RolePermissionInfo
RolePermissionInfo,
UserInfo
} from "types/system";
import { filterEmptyObject } from "./utils";
@@ -314,3 +316,184 @@ export const postAddRoleAPI = (data: AddRoleParams) => {
export const deleteRoleAPI = (id: string) => {
return http.request<null>("post", `/api/role/delete/${id}`);
};
// --------------------------用户相关--------------------------------------
/**添加用户参数 */
type AddUserParams = {
/**用户账号 */
username: string;
/**用户密码 */
password: string;
/**用户性别 */
gender: number;
/**用户头像 */
avatar: string;
/**用户邮箱 */
email: string;
/**用户姓名 */
nickname: string;
/**用户手机号 */
phone: string;
/**用户状态 */
status: number;
/**用户部门 */
department_id: string;
};
/**
* 添加用户
* @param data
* @returns
*/
export const postAddUserAPI = (data: AddUserParams) => {
return http.request<null>("post", `/api/user/add`, {
data
});
};
/**获取用户列表参数 */
type GetUserListParams = {
/**当前页 */
page: number;
/**每页数量 */
pageSize: number;
/**部门ID */
department_id?: string;
/**用户账号 */
username?: string;
/**用户姓名 */
nickname?: string;
/**用户ID */
id?: string;
/**用户状态 */
status?: string;
/**用户手机号 */
phone?: string;
/**用户邮箱 */
email?: string;
/**用户性别 */
gender?: number | string;
};
/**获取用户列表 */
export const getUserListAPI = (params: GetUserListParams) => {
return http.request<QueryListResult<UserInfo>>("get", `/api/user/list`, {
params: filterEmptyObject(params)
});
};
/**更新用户参数 */
type UpdateUserParams = {
/**用户账号 */
username: string;
/**用户性别 */
gender: number;
/**用户头像 */
avatar: string;
/**用户邮箱 */
email: string;
/**用户姓名 */
nickname: string;
/**用户手机号 */
phone: string;
/**用户状态 */
status: number;
/**用户部门 */
department_id: string;
};
/**
* 更新用户信息
* @param id 角色ID
* @param data 更新角色参数
* @returns
*/
export const putUpdateUserAPI = (id: string, data: UpdateUserParams) => {
return http.request<null>("put", `/api/user/update/${id}`, {
data
});
};
/**
* 删除用户
* @param id 用户ID
* @returns
*/
export const deleteUserAPI = (id: string) => {
return http.request<null>("post", `/api/user/delete/${id}`);
};
/**
* 批量删除用户
* @param data 用户ID列表
* @returns
*/
export const deleteUserListAPI = (data: { userIds: string[] }) => {
return http.request<null>("post", `/api/user/deleteUserList`, { data });
};
/**
* 更新用户密码
* @param id 用户ID
* @param data 用户新密码
* @returns
*/
export const putUpdateUserPasswordAPI = (
id: string,
data: { password: string }
) => {
return http.request<null>("post", `/api/user/updateUserPassword/${id}`, {
headers: {
"content-type": "application/x-www-form-urlencoded"
},
data
});
};
/**
* 获取用户角色列表
* @param id 用户ID
* @returns
*/
export const getUserRolesAPI = (id: string) => {
return http.request<QueryListResult<DepartmentRoleInfo>>(
"get",
`/api/user/roleList/${id}`
);
};
type UpdateUserRoleParams = {
/**用户ID */
user_id: string;
/**角色ID */
role_ids: string[];
};
/**
* 更新用户角色信息
* @param id 用户ID
* @param data 用户角色列表
* @returns
*/
export const putUpdateUserRolesAPI = (data: UpdateUserRoleParams) => {
return http.request<null>("post", `/api/user/updateRole`, {
data
});
};
/**
* 获取用户权限列表
* @param id 用户ID
* @returns
*/
export const getUserPermissionsAPI = (id: string) => {
return http.request<string[]>("get", `/api/user/permissionList/${id}`);
};
/**用户获取部门角色列表 */
export const getUserGetDepartmentRolesAPI = (id: string) => {
return http.request<QueryListResult<DepartmentRoleInfo>>(
"get",
`/api/department/roleList/${id}`
);
};