import { http } from "@/utils/http"; /** * 企业微信用户信息 */ export interface QyUserDTO { /** 用户ID(导出列:用户ID) */ id?: number; /** 全局唯一ID(导出列:全局唯一ID) */ openUserid?: string; /** 企业用户ID(导出列:企业用户ID) */ userid?: string; /** 用户姓名(导出列:用户姓名) */ name?: string; /** 手机号码(导出列:手机号码) */ mobile?: string; /** 所属部门(导出列:所属部门) */ department?: string; /** 部门排序(导出列:部门排序) */ userOrder?: string; /** 职务信息(导出列:职务信息) */ position?: string; /** 性别(1男 2女,导出列:性别) */ gender?: string; /** 邮箱(导出列:邮箱) */ email?: string; /** 企业邮箱(导出列:企业邮箱) */ bizMail?: string; /** 部门负责人(导出列:部门负责人) */ isLeaderInDept?: string; /** 直属上级(导出列:直属上级) */ directLeader?: string; /** 头像地址(导出列:头像地址) */ avatar?: string; /** 座机号码(导出列:座机号码) */ telephone?: string; /** 别名(导出列:别名) */ alias?: string; /** 激活状态(导出列:激活状态) */ status?: string; /** 个人二维码(导出列:个人二维码) */ qrCode?: string; /** 操作人(导出列:操作人) */ operator?: string; /** 有效状态(导出列:有效状态) */ enableStatus?: string; /** 创建时间(导出列:创建时间) */ createTimeStr?: string; /** 企业ID(导出列:企业ID) */ corpid?: string; /** 应用ID(导出列:应用ID) */ appid?: string; } export interface QyUserQuery extends BasePageQuery { /** 姓名(导出列:姓名) */ name?: string; /** 手机号(导出列:联系方式) */ mobile?: string; corpid?: string; mainDepartment?: number; } export interface AddQyUserCommand { name: string; mobile: string; department: string; corpid: string; } export interface UpdateQyUserCommand extends AddQyUserCommand { id: number; } /** * 获取企业微信用户列表 * @param params 查询参数 * @returns 分页用户列表 */ export const getQyUserListApi = (params: QyUserQuery) => { return http.request>>("get", "/qywx/users", { params: { ...params, mainDepartment: params.mainDepartment?.toString() } }); }; export const addQyUserApi = (data: AddQyUserCommand) => { return http.request>("post", "/qywx/users", { data }); }; export const updateQyUserApi = (id: number, data: UpdateQyUserCommand) => { return http.request>("put", `/qywx/users/${id}`, { data }); }; export const deleteQyUserApi = (ids: number[]) => { return http.request>("delete", `/qywx/users/${ids.join(',')}`); }; /** * 同步企业微信用户数据 * @param params 同步参数 * @param params.corpid 企业ID * @param params.code 授权code */ export const syncQyUserApi = (params: { corpid: string; code: string }) => { return http.request>("post", "/qywx/users/sync", { params }); }; export const exportQyUserExcelApi = (params: QyUserQuery, fileName: string) => { return http.download("/qywx/users/excel", fileName, { params }); };