// Admin.NET 项目的版权、商标、专利和其他相关权利均受相应法律法规的保护。使用本项目应遵守相关法律法规和许可证的要求。
//
// 本项目主要遵循 MIT 许可证和 Apache 许可证(版本 2.0)进行分发和使用。许可证位于源代码树根目录中的 LICENSE-MIT 和 LICENSE-APACHE 文件。
//
// 不得利用本项目从事危害国家安全、扰乱社会秩序、侵犯他人合法权益等法律法规禁止的活动!任何基于本项目二次开发而产生的一切法律纠纷和责任,我们不承担任何责任!
namespace Admin.NET.Plugin.WorkWeixin;
///
/// 企业微信成员服务 🧩
///
public class WorkWxUserService(WorkWxBaseService baseService) : ITransient
{
///
/// 创建成员
///
///
///
public async Task Create(CreateUserWorkWxInput input)
{
return await baseService.SendAsync(input);
}
///
/// 读取成员
///
/// 成员UserID。对应管理端的账号,企业内必须唯一。不区分大小写,长度为1~64个字节
///
public async Task Get(string userId)
{
return await baseService.SendAsync(new() { UserId = userId });
}
///
/// 修改成员
///
///
///
public async Task Update(UpdateUserWorkWxInput input)
{
return await baseService.SendAsync(input);
}
///
/// 删除成员
///
/// 成员UserID。对应管理端的账号
///
public async Task Delete(string userId)
{
return await baseService.SendAsync(new() { UserId = userId });
}
///
/// 批量删除成员
///
///
///
public async Task DeleteUser(BatchDeleteUserWorkWxInput input)
{
return await baseService.SendAsync(input);
}
///
/// 获取部门成员
///
///
///
public async Task SimpleListDept(DeptUserSimpleListWorkWxInput input)
{
return await baseService.SendAsync(input);
}
///
/// 获取部门成员详情
///
///
///
public async Task DeptUserDetail(DeptUserDetailListWorkWxInput input)
{
return await baseService.SendAsync(input);
}
///
/// userid转openid
///
///
///
public async Task UserIdToOpenId(ConvToOpenIdWorkWxInput input)
{
return await baseService.SendAsync(input);
}
///
/// openid转userid
///
///
///
public async Task OpenIdToUserId(ConvToUserIdWorkWxInput input)
{
return await baseService.SendAsync(input);
}
///
/// 登录二次验证
///
/// 成员UserID。对应管理端的账号
///
public async Task AuthSucc(string userId)
{
return await baseService.SendAsync(new() { UserId = userId });
}
///
/// 邀请成员
///
///
///
public async Task InviteUser(InviteUserWorkWxInput input)
{
return await baseService.SendAsync(input);
}
///
/// 获取加入企业二维码
///
/// qrcode尺寸类型,1: 171 x 171; 2: 399 x 399; 3: 741 x 741; 4: 2052 x 2052
///
public async Task GetJoinQrcode(int? sizeType)
{
return await baseService.SendAsync(new() { SizeType = sizeType });
}
///
/// 通过手机号获取成员ID
///
/// 用户在企业微信通讯录中的手机号码。长度为5~32个字节
///
public async Task GetUserIdByMobile(string mobile)
{
return await baseService.SendAsync(new() { Mobile = mobile });
}
///
/// 通过邮箱获取成员ID
///
/// 邮箱
/// 邮箱类型:1-企业邮箱(默认);2-个人邮箱
///
public async Task GetUserIdByEmail(string email, int? emailType = 1)
{
return await baseService.SendAsync(new() { Email = email, EmailType = emailType });
}
///
/// 获取成员ID列表
///
/// 用于分页查询的游标,字符串类型,由上一次调用返回,首次调用不填
/// 分页,预期请求的数据量,取值范围 1 ~ 10000
///
public async Task GetUserIdList(string cursor = null, int? limit = 20)
{
return await baseService.SendAsync(new() { Cursor = cursor, Limit = limit });
}
}