import { request } from "./client"; export interface UserListVO { iIncrement: number; sUserName: string; staffName: string | null; sUserNo: string; department: string | null; sUserType: string; sLanguage: string; bDeleted: boolean; tLastLoginDate: string | null; sCreatedBy: string | null; tCreateDate: string; } export interface UserListPage { records: UserListVO[]; total: number; pageNum: number; pageSize: number; } export interface UserListParams { field?: string; match?: string; value?: string; pageNum?: number; pageSize?: number; } export interface UserDTO { sUserNo: string; sUserName: string; iStaffId?: number | null; sUserType: string; sLanguage: string; bCanModifyDocs?: boolean; } export function listUsers(params: UserListParams = {}): Promise { return request({ url: "/usr/users", method: "GET", params, }); } export function createUser(dto: UserDTO): Promise<{ iIncrement: number; sUserNo: string }> { return request({ url: "/usr/users", method: "POST", data: dto }); } export function updateUser(id: number, dto: UserDTO): Promise<{ iIncrement: number }> { return request({ url: `/usr/users/${id}`, method: "PUT", data: dto }); }