import request from './request' import type { ApiResponse } from '@/types/api' export function listSysUsers(page = 1, size = 20, keyword?: string, enabled?: boolean): Promise { let path = `/sys-user/list?page=${page}&size=${size}` if (keyword) path += `&keyword=${encodeURIComponent(keyword)}` if (enabled !== undefined && enabled !== null) path += `&enabled=${enabled}` return request.get(path).then(r => r.data) } export function getSysUserDetail(id: string): Promise { return request.get(`/sys-user/${id}`).then(r => r.data) } export function createSysUser(data: any): Promise { return request.post('/sys-user', data).then(r => r.data) } export function updateSysUser(id: string, data: any): Promise { return request.put(`/sys-user/${id}`, data).then(r => r.data) } export function toggleSysUser(id: string, enabled: boolean): Promise { return request.put(`/sys-user/${id}/toggle?enabled=${enabled}`).then(r => r.data) } export function assignSysUserRoles(id: string, roleIds: string[]): Promise { return request.put(`/sys-user/${id}/roles`, { roleIds }).then(r => r.data) } export function changeSysUserPassword(id: string, newPassword: string): Promise { return request.put(`/sys-user/${id}/password`, { newPassword }).then(r => r.data) } export function getAllSysRoles(): Promise { return request.get('/sys-user/roles').then(r => r.data) } export function listSysRoles(): Promise { return request.get('/sys-role/list').then(r => r.data) } export function createSysRole(data: any): Promise { return request.post('/sys-role', data).then(r => r.data) } export function updateSysRole(id: string, data: any): Promise { return request.put(`/sys-role/${id}`, data).then(r => r.data) }