作者:子华2502924833 | 来源:互联网 | 2023-08-31 20:49
一、用户标签管理1.1、创建标签Services文件夹下新建User文件夹和用户服务类Dto文件夹下新建TagInput.cspublicclassTagInput{
一、用户标签管理
1.1、创建标签
Services文件夹下新建User文件夹和用户服务类
Dto文件夹下新建TagInput.cs
public class TagInput
{
///
/// 标签名称
///
public string Name { get; set; }
}
新建添加标签接口
///
/// 创建标签
///
///
[HttpPost("/user/tag/add")]
public async Task CreateTag(TagInput input)
{
return await UserTagApi.CreateAsync(AppId, input.Name);
}
测试一下,成功显示
1.2、获取公众号已创建的标签
新建接口
///
/// 获取公众号已创建的标签
///
///
///
[HttpGet("/user/tag/list")]
public async Task GetTags(TagInput input)
{
return await UserTagApi.GetAsync(AppId);
}
测试接口
1.3、编辑标签
TagInput.cs新增UpdateTagInput类
public class UpdateTagInput: TagInput
{
public int Id { get; set; }
}
新建接口
///
/// 编辑标签
///
///
///
[HttpPost("/user/tag/update")]
public async Task UpdateTag(UpdateTagInput input)
{
return await UserTagApi.UpdateAsync(AppId, input.Id, input.Name);
}
测试一下
再查看接口
1.4、删除标签
新建接口
///
/// 删除标签
///
///
///
[HttpPost("/user/tag/delete")]
public async Task DeleteTag(UpdateTagInput input)
{
return await UserTagApi.DeleteAsync(AppId, input.Id);
}
测试一下
再获取一下列表,成功删除
1.5、获取标签下粉丝列表
新建接口
///
/// 获取标签下粉丝列表
///
///
///
[HttpGet("/user/tag/user")]
public async Task GetTagUser(UpdateTagInput input)
{
return await UserTagApi.GetAsync(AppId, input.Id);
}
测试一下,因为还没打标签所以是空的
二、用户管理
2.1、批量为用户打标签
TagInput.cs新建UserTagInput.cs
public class UserTagInput : UpdateTagInput
{
public List Users { get; set; } = new List();
}
新建接口
///
/// 批量为用户打标签
///
///
///
[HttpPost("/user/tag/batch")]
public async Task BatchTag(UserTagInput input)
{
return await UserTagApi.BatchTaggingAsync(AppId, input.Id, input.Users);
}
测试接口
再看一下获取标签下用户接口
2.2、批量为用户取消标签
新建接口
///
/// 批量为用户取消标签
///
///
///
[HttpPost("/user/tag/unbatch")]
public async Task BatchUnTag(UserTagInput input)
{
return await UserTagApi.BatchUntaggingAsync(AppId, input.Id, input.Users);
}
测试接口
再获取一下
2.3、获取用户身上的标签列表
新建接口
///
/// 获取用户身上的标签列表
///
///
///
[HttpGet("/user/tag/batchlist/{openid}")]
public async Task UserTagList(string openid)
{
return await UserTagApi.UserTagListAsync(AppId, openid);
}
测试一下
2.4、设置用户备注名
Dto文件夹新建UserInput.cs
namespace WeiXinApi.Application.Services
{
public class UserInput
{
///
/// 微信号
///
public string OpenId { get; set; }
///
/// 备注
///
public string Remark { get; set; }
}
}
新建接口
///
/// 设置用户备注名
///
///
///
[HttpPost("/user/updateremark")]
public async Task UpdateRemark(UserInput input)
{
return await UserApi.UpdateRemarkAsync(AppId, input.OpenId, input.Remark);
}
测试接口
2.5、获取用户基本信息
新建接口
///
/// 获取用户基本信息
///
///
///
[HttpGet("/user/info/{openid}")]
public async Task UserInfo(string openid)
{
return await UserApi.InfoAsync(AppId, openid);
}
测试一下,可以看到备注是我们之前设置的
2.6、获取用户列表
UserInput.cs下新建UserListInput.cs
public class UserListInput
{
///
/// 第一个拉取的OPENID,不填默认从头开始拉取
///
public string NextOpenId { get; set; }
}
新建接口
///
/// 获取用户列表
///
///
///
[HttpGet("/user/list")]
public async Task UserList([FromQuery] UserListInput input)
{
return await UserApi.GetAsync(AppId, input.NextOpenId);
}
测试一下
三、黑名单管理
3.1、拉黑用户
///
/// 批量拉黑用户
///
///
///
[HttpPost("/user/batchblacklist")]
public async Task Batchblacklist(BlackInput input)
{
return await UserApi.BatchBlackListAsync(AppId, input.OpenidList);
}
测试接口
3.2、黑名单列表
BlackInput新增字段
///
/// 当 begin_openid 为空时,默认从开头拉取。
///
public string BeginOpenid { get; set; }
新增接口
///
/// 获取黑名单列表
///
///
///
[HttpGet("/user/blacklist")]
public async Task GetBlackList([FromQuery] BlackInput input)
{
return await UserApi.GetBlackListAsync(AppId, input.BeginOpenid);
}
测试一下
3.3、取消拉黑用户
新建接口
///
/// 批量取消拉黑用户
///
///
///
[HttpPost("/user/batchunblackList")]
public async Task BatchUnBlackList(BlackInput input)
{
return await UserApi.BatchUnBlackListAsync(AppId, input.OpenidList);
}
测试一下
再获取黑名单看下
四、本章Gitee链接地址
https://gitee.com/huguodong520/weixinapi/tree/%E7%94%A8%E6%88%B7%E7%AE%A1%E7%90%86/