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>('/user', { params }) } export const getSysUserRoles = (id: number) => { return http.get(`/user/${id}/roles`) } export const getSysUserInfo = () => { return http.get('/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 }) }