42 lines
1.1 KiB
TypeScript
42 lines
1.1 KiB
TypeScript
import { http } from '@/lib'
|
|
import type {
|
|
SearchSysUserParams,
|
|
SysRole,
|
|
SysUser,
|
|
SysUserFormOutput,
|
|
SysUserInfo,
|
|
} from '@/schemas'
|
|
import { type PageParams } from '@/schemas'
|
|
|
|
export const getSysUsers = (params: PageParams & SearchSysUserParams) => {
|
|
return http.get<SysUser[], ApiPageResponse<SysUser>>('/user', { params })
|
|
}
|
|
|
|
export const getSysUserRoles = (id: number) => {
|
|
return http.get<SysRole[]>(`/user/${id}/roles`)
|
|
}
|
|
|
|
export const getSysUserInfo = () => {
|
|
return http.get<SysUserInfo>('/user/info')
|
|
}
|
|
|
|
export const updateSysUser = (id: number, data: SysUserFormOutput) => {
|
|
return http.patch('/user/' + id, data)
|
|
}
|
|
|
|
export const createSysUser = (data: SysUserFormOutput) => {
|
|
return http.post('/user', data)
|
|
}
|
|
|
|
export const deleteSysUser = (id: number) => {
|
|
return http.delete(`/user/${id}`)
|
|
}
|
|
|
|
export const assignSysUserRoles = (id: number, role_ids: number[]) => {
|
|
return http.put(`user/${id}/roles`, { role_ids })
|
|
}
|
|
|
|
export const changeSysUserPassword = (id: number, password: string) => {
|
|
return http.patch(`/user/${id}/password`, { password })
|
|
}
|