181 lines
3.3 KiB
TypeScript
181 lines
3.3 KiB
TypeScript
import { DeptVO } from './../dept/types';
|
|
import { RoleVO } from '@/api/system/role/types';
|
|
import request from '@/utils/request';
|
|
import { AxiosPromise } from 'axios';
|
|
import { UserForm, UserQuery, UserVO, UserInfoVO } from './types';
|
|
import { parseStrEmpty } from '@/utils/ruoyi';
|
|
|
|
/**
|
|
* 查询用户列表
|
|
* @param query
|
|
*/
|
|
export function listUser(query: UserQuery): AxiosPromise<UserVO[]> {
|
|
return request({
|
|
url: '/system/user/list',
|
|
method: 'get',
|
|
params: query
|
|
});
|
|
}
|
|
|
|
/**
|
|
* 获取用户详情
|
|
* @param userId
|
|
*/
|
|
export function getUser(userId?: string | number): AxiosPromise<UserInfoVO> {
|
|
return request({
|
|
url: '/system/user/' + parseStrEmpty(userId),
|
|
method: 'get'
|
|
});
|
|
}
|
|
|
|
/**
|
|
* 新增用户
|
|
*/
|
|
export function addUser(data: UserForm) {
|
|
return request({
|
|
url: '/system/user',
|
|
method: 'post',
|
|
data: data
|
|
});
|
|
}
|
|
|
|
/**
|
|
* 修改用户
|
|
*/
|
|
export function updateUser(data: UserForm) {
|
|
return request({
|
|
url: '/system/user',
|
|
method: 'put',
|
|
data: data
|
|
});
|
|
}
|
|
|
|
/**
|
|
* 删除用户
|
|
* @param userId 用户ID
|
|
*/
|
|
export function delUser(userId: Array<string | number> | string | number) {
|
|
return request({
|
|
url: '/system/user/' + userId,
|
|
method: 'delete'
|
|
});
|
|
}
|
|
|
|
/**
|
|
* 用户密码重置
|
|
* @param userId 用户ID
|
|
* @param password 密码
|
|
*/
|
|
export function resetUserPwd(userId: string | number, password: string) {
|
|
const data = {
|
|
userId,
|
|
password
|
|
};
|
|
return request({
|
|
url: '/system/user/resetPwd',
|
|
method: 'put',
|
|
data: data
|
|
});
|
|
}
|
|
|
|
/**
|
|
* 用户状态修改
|
|
* @param userId 用户ID
|
|
* @param status 用户状态
|
|
*/
|
|
export function changeUserStatus(userId: number | string, status: string) {
|
|
const data = {
|
|
userId,
|
|
status
|
|
};
|
|
return request({
|
|
url: '/system/user/changeStatus',
|
|
method: 'put',
|
|
data: data
|
|
});
|
|
}
|
|
|
|
/**
|
|
* 查询用户个人信息
|
|
*/
|
|
export function getUserProfile(): AxiosPromise<UserInfoVO> {
|
|
return request({
|
|
url: '/system/user/profile',
|
|
method: 'get'
|
|
});
|
|
}
|
|
|
|
/**
|
|
* 修改用户个人信息
|
|
* @param data 用户信息
|
|
*/
|
|
export function updateUserProfile(data: UserForm) {
|
|
return request({
|
|
url: '/system/user/profile',
|
|
method: 'put',
|
|
data: data
|
|
});
|
|
}
|
|
|
|
/**
|
|
* 用户密码重置
|
|
* @param oldPassword 旧密码
|
|
* @param newPassword 新密码
|
|
*/
|
|
export function updateUserPwd(oldPassword: string, newPassword: string) {
|
|
const data = {
|
|
oldPassword,
|
|
newPassword
|
|
};
|
|
return request({
|
|
url: '/system/user/profile/updatePwd',
|
|
method: 'put',
|
|
params: data
|
|
});
|
|
}
|
|
|
|
/**
|
|
* 用户头像上传
|
|
* @param data 头像文件
|
|
*/
|
|
export function uploadAvatar(data: FormData) {
|
|
return request({
|
|
url: '/system/user/profile/avatar',
|
|
method: 'post',
|
|
data: data
|
|
});
|
|
}
|
|
|
|
/**
|
|
* 查询授权角色
|
|
* @param userId 用户ID
|
|
*/
|
|
export function getAuthRole(userId: string | number): AxiosPromise<{ user: UserVO; roles: RoleVO[] }> {
|
|
return request({
|
|
url: '/system/user/authRole/' + userId,
|
|
method: 'get'
|
|
});
|
|
}
|
|
|
|
/**
|
|
* 保存授权角色
|
|
* @param data 用户ID
|
|
*/
|
|
export function updateAuthRole(data: { userId: string; roleIds: string }) {
|
|
return request({
|
|
url: '/system/user/authRole',
|
|
method: 'put',
|
|
params: data
|
|
});
|
|
}
|
|
|
|
/**
|
|
* 查询部门下拉树结构
|
|
*/
|
|
export function deptTreeSelect(): AxiosPromise<DeptVO[]> {
|
|
return request({
|
|
url: '/system/user/deptTree',
|
|
method: 'get'
|
|
});
|
|
}
|