112 lines
3.3 KiB
TypeScript
112 lines
3.3 KiB
TypeScript
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<ResponseData<PageDTO<QyUserDTO>>>("get", "/qywx/users", {
|
||
params: { ...params, mainDepartment: params.mainDepartment?.toString() }
|
||
});
|
||
};
|
||
|
||
export const addQyUserApi = (data: AddQyUserCommand) => {
|
||
return http.request<ResponseData<void>>("post", "/qywx/users", { data });
|
||
};
|
||
|
||
export const updateQyUserApi = (id: number, data: UpdateQyUserCommand) => {
|
||
return http.request<ResponseData<void>>("put", `/qywx/users/${id}`, { data });
|
||
};
|
||
|
||
export const deleteQyUserApi = (ids: number[]) => {
|
||
return http.request<ResponseData<void>>("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<ResponseData<void>>("post", "/qywx/users/sync", {
|
||
params
|
||
});
|
||
};
|
||
|
||
export const exportQyUserExcelApi = (params: QyUserQuery, fileName: string) => {
|
||
return http.download("/qywx/users/excel", fileName, { params });
|
||
}; |