import request from './request' export interface StaffVO { sId: string sStaffName: string } export interface PermissionGroupVO { sId: string sGroupCode: string sGroupName: string sCategory: string | null } export interface UserCreateReq { userCode: string username: string userType: '普通用户' | '超级管理员' language: '中文' | '英文' | '繁体' canEditDoc?: boolean employeeId?: string | null permGroupIds?: string[] } export interface UserCreateResp { userId: string userCode: string username: string } export function getStaffs(): Promise { return request.get('/usr/users/staffs') } export function getPermissionGroups(): Promise { return request.get('/usr/users/permission-groups') } export function createUser(req: UserCreateReq): Promise { return request.post('/usr/users', req) } export interface UserListQueryReq { queryField?: string matchType?: string queryValue?: string page?: number pageSize?: number } export interface UserListItemVO { sId: string sUsername: string sUserCode: string sUserType: string sLanguage: string bIsDisabled: number tLastLoginDate: string | null sCreatorUsername: string | null tCreateDate: string sStaffName: string | null sDepartment: string | null } export interface PageVO { total: number page: number pageSize: number list: T[] } export function getUserList(params?: UserListQueryReq): Promise> { return request.get('/usr/users', { params }) } export interface UserUpdateReq { userType: string language: string canEditDoc: boolean isDisabled: boolean employeeId: string | null permGroupIds: string[] } export interface UserUpdateResp { userId: string username: string updatedAt: string } export function updateUser(userId: string, req: UserUpdateReq): Promise { return request.put(`/usr/users/${userId}`, req) }