mirror of
https://gitee.com/fudiwei/DotNetCore.SKIT.FlurlHttpClient.Wechat.git
synced 2025-07-15 23:13:32 +08:00
feat(work): 新增会议报名相关接口
This commit is contained in:
parent
23e7b62fa6
commit
8eafc34ab9
@ -353,5 +353,147 @@ namespace SKIT.FlurlHttpClient.Wechat.Work
|
||||
|
||||
return await client.SendRequestWithJsonAsync<Models.CgibinMeetingGetQualityResponse>(flurlReq, data: request, cancellationToken: cancellationToken);
|
||||
}
|
||||
|
||||
#region Enroll
|
||||
/// <summary>
|
||||
/// <para>异步调用 [POST] /cgi-bin/meeting/enroll/set_config 接口。</para>
|
||||
/// <para>REF: https://developer.work.weixin.qq.com/document/path/98821 </para>
|
||||
/// </summary>
|
||||
/// <param name="client"></param>
|
||||
/// <param name="request"></param>
|
||||
/// <param name="cancellationToken"></param>
|
||||
/// <returns></returns>
|
||||
public static async Task<Models.CgibinMeetingEnrollSetConfigResponse> ExecuteCgibinMeetingEnrollSetConfigAsync(this WechatWorkClient client, Models.CgibinMeetingEnrollSetConfigRequest request, CancellationToken cancellationToken = default)
|
||||
{
|
||||
if (client is null) throw new ArgumentNullException(nameof(client));
|
||||
if (request is null) throw new ArgumentNullException(nameof(request));
|
||||
|
||||
IFlurlRequest flurlReq = client
|
||||
.CreateRequest(request, HttpMethod.Post, "cgi-bin", "meeting", "enroll", "set_config")
|
||||
.SetQueryParam("access_token", request.AccessToken);
|
||||
|
||||
return await client.SendRequestWithJsonAsync<Models.CgibinMeetingEnrollSetConfigResponse>(flurlReq, data: request, cancellationToken: cancellationToken);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// <para>异步调用 [POST] /cgi-bin/meeting/enroll/get_config 接口。</para>
|
||||
/// <para>REF: https://developer.work.weixin.qq.com/document/path/98821 </para>
|
||||
/// </summary>
|
||||
/// <param name="client"></param>
|
||||
/// <param name="request"></param>
|
||||
/// <param name="cancellationToken"></param>
|
||||
/// <returns></returns>
|
||||
public static async Task<Models.CgibinMeetingEnrollGetConfigResponse> ExecuteCgibinMeetingEnrollGetConfigAsync(this WechatWorkClient client, Models.CgibinMeetingEnrollGetConfigRequest request, CancellationToken cancellationToken = default)
|
||||
{
|
||||
if (client is null) throw new ArgumentNullException(nameof(client));
|
||||
if (request is null) throw new ArgumentNullException(nameof(request));
|
||||
|
||||
IFlurlRequest flurlReq = client
|
||||
.CreateRequest(request, HttpMethod.Post, "cgi-bin", "meeting", "enroll", "get_config")
|
||||
.SetQueryParam("access_token", request.AccessToken);
|
||||
|
||||
return await client.SendRequestWithJsonAsync<Models.CgibinMeetingEnrollGetConfigResponse>(flurlReq, data: request, cancellationToken: cancellationToken);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// <para>异步调用 [POST] /cgi-bin/meeting/enroll/query_by_tmp_openid 接口。</para>
|
||||
/// <para>REF: https://developer.work.weixin.qq.com/document/path/98794 </para>
|
||||
/// </summary>
|
||||
/// <param name="client"></param>
|
||||
/// <param name="request"></param>
|
||||
/// <param name="cancellationToken"></param>
|
||||
/// <returns></returns>
|
||||
public static async Task<Models.CgibinMeetingEnrollQueryByTempOpenIdResponse> ExecuteCgibinMeetingEnrollQueryByTempOpenIdAsync(this WechatWorkClient client, Models.CgibinMeetingEnrollQueryByTempOpenIdRequest request, CancellationToken cancellationToken = default)
|
||||
{
|
||||
if (client is null) throw new ArgumentNullException(nameof(client));
|
||||
if (request is null) throw new ArgumentNullException(nameof(request));
|
||||
|
||||
IFlurlRequest flurlReq = client
|
||||
.CreateRequest(request, HttpMethod.Post, "cgi-bin", "meeting", "enroll", "query_by_tmp_openid")
|
||||
.SetQueryParam("access_token", request.AccessToken);
|
||||
|
||||
return await client.SendRequestWithJsonAsync<Models.CgibinMeetingEnrollQueryByTempOpenIdResponse>(flurlReq, data: request, cancellationToken: cancellationToken);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// <para>异步调用 [POST] /cgi-bin/meeting/enroll/list 接口。</para>
|
||||
/// <para>REF: https://developer.work.weixin.qq.com/document/path/98810 </para>
|
||||
/// </summary>
|
||||
/// <param name="client"></param>
|
||||
/// <param name="request"></param>
|
||||
/// <param name="cancellationToken"></param>
|
||||
/// <returns></returns>
|
||||
public static async Task<Models.CgibinMeetingEnrollListResponse> ExecuteCgibinMeetingEnrollListAsync(this WechatWorkClient client, Models.CgibinMeetingEnrollListRequest request, CancellationToken cancellationToken = default)
|
||||
{
|
||||
if (client is null) throw new ArgumentNullException(nameof(client));
|
||||
if (request is null) throw new ArgumentNullException(nameof(request));
|
||||
|
||||
IFlurlRequest flurlReq = client
|
||||
.CreateRequest(request, HttpMethod.Post, "cgi-bin", "meeting", "enroll", "list")
|
||||
.SetQueryParam("access_token", request.AccessToken);
|
||||
|
||||
return await client.SendRequestWithJsonAsync<Models.CgibinMeetingEnrollListResponse>(flurlReq, data: request, cancellationToken: cancellationToken);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// <para>异步调用 [POST] /cgi-bin/meeting/enroll/approve 接口。</para>
|
||||
/// <para>REF: https://developer.work.weixin.qq.com/document/path/98807 </para>
|
||||
/// </summary>
|
||||
/// <param name="client"></param>
|
||||
/// <param name="request"></param>
|
||||
/// <param name="cancellationToken"></param>
|
||||
/// <returns></returns>
|
||||
public static async Task<Models.CgibinMeetingEnrollApproveResponse> ExecuteCgibinMeetingEnrollApproveAsync(this WechatWorkClient client, Models.CgibinMeetingEnrollApproveRequest request, CancellationToken cancellationToken = default)
|
||||
{
|
||||
if (client is null) throw new ArgumentNullException(nameof(client));
|
||||
if (request is null) throw new ArgumentNullException(nameof(request));
|
||||
|
||||
IFlurlRequest flurlReq = client
|
||||
.CreateRequest(request, HttpMethod.Post, "cgi-bin", "meeting", "enroll", "approve")
|
||||
.SetQueryParam("access_token", request.AccessToken);
|
||||
|
||||
return await client.SendRequestWithJsonAsync<Models.CgibinMeetingEnrollApproveResponse>(flurlReq, data: request, cancellationToken: cancellationToken);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// <para>异步调用 [POST] /cgi-bin/meeting/enroll/import 接口。</para>
|
||||
/// <para>REF: https://developer.work.weixin.qq.com/document/path/98816 </para>
|
||||
/// </summary>
|
||||
/// <param name="client"></param>
|
||||
/// <param name="request"></param>
|
||||
/// <param name="cancellationToken"></param>
|
||||
/// <returns></returns>
|
||||
public static async Task<Models.CgibinMeetingEnrollImportResponse> ExecuteCgibinMeetingEnrollImportAsync(this WechatWorkClient client, Models.CgibinMeetingEnrollImportRequest request, CancellationToken cancellationToken = default)
|
||||
{
|
||||
if (client is null) throw new ArgumentNullException(nameof(client));
|
||||
if (request is null) throw new ArgumentNullException(nameof(request));
|
||||
|
||||
IFlurlRequest flurlReq = client
|
||||
.CreateRequest(request, HttpMethod.Post, "cgi-bin", "meeting", "enroll", "import")
|
||||
.SetQueryParam("access_token", request.AccessToken);
|
||||
|
||||
return await client.SendRequestWithJsonAsync<Models.CgibinMeetingEnrollImportResponse>(flurlReq, data: request, cancellationToken: cancellationToken);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// <para>异步调用 [POST] /cgi-bin/meeting/enroll/delete 接口。</para>
|
||||
/// <para>REF: https://developer.work.weixin.qq.com/document/path/98817 </para>
|
||||
/// </summary>
|
||||
/// <param name="client"></param>
|
||||
/// <param name="request"></param>
|
||||
/// <param name="cancellationToken"></param>
|
||||
/// <returns></returns>
|
||||
public static async Task<Models.CgibinMeetingEnrollDeleteResponse> ExecuteCgibinMeetingEnrollDeleteAsync(this WechatWorkClient client, Models.CgibinMeetingEnrollDeleteRequest request, CancellationToken cancellationToken = default)
|
||||
{
|
||||
if (client is null) throw new ArgumentNullException(nameof(client));
|
||||
if (request is null) throw new ArgumentNullException(nameof(request));
|
||||
|
||||
IFlurlRequest flurlReq = client
|
||||
.CreateRequest(request, HttpMethod.Post, "cgi-bin", "meeting", "enroll", "delete")
|
||||
.SetQueryParam("access_token", request.AccessToken);
|
||||
|
||||
return await client.SendRequestWithJsonAsync<Models.CgibinMeetingEnrollDeleteResponse>(flurlReq, data: request, cancellationToken: cancellationToken);
|
||||
}
|
||||
#endregion
|
||||
}
|
||||
}
|
||||
|
@ -0,0 +1,31 @@
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
|
||||
{
|
||||
/// <summary>
|
||||
/// <para>表示 [POST] /cgi-bin/meeting/enroll/approve 接口的请求。</para>
|
||||
/// </summary>
|
||||
public class CgibinMeetingEnrollApproveRequest : WechatWorkRequest
|
||||
{
|
||||
/// <summary>
|
||||
/// 获取或设置会议 ID。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("meetingid")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("meetingid")]
|
||||
public string MeetingId { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置审批动作。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("action")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("action")]
|
||||
public int ActionType { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置报名 ID 列表。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("enroll_id_list")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("enroll_id_list")]
|
||||
public IList<string> EnrollIdList { get; set; } = new List<string>();
|
||||
}
|
||||
}
|
@ -0,0 +1,15 @@
|
||||
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
|
||||
{
|
||||
/// <summary>
|
||||
/// <para>表示 [POST] /cgi-bin/meeting/enroll/approve 接口的响应。</para>
|
||||
/// </summary>
|
||||
public class CgibinMeetingEnrollApproveResponse : WechatWorkResponse
|
||||
{
|
||||
/// <summary>
|
||||
/// 获取或设置成功处理的数量。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("handled_count")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("handled_count")]
|
||||
public int HandledCount { get; set; }
|
||||
}
|
||||
}
|
@ -0,0 +1,37 @@
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
|
||||
{
|
||||
/// <summary>
|
||||
/// <para>表示 [POST] /cgi-bin/meeting/enroll/delete 接口的请求。</para>
|
||||
/// </summary>
|
||||
public class CgibinMeetingEnrollDeleteRequest : WechatWorkRequest
|
||||
{
|
||||
public static class Types
|
||||
{
|
||||
public class Enroll
|
||||
{
|
||||
/// <summary>
|
||||
/// 获取或设置报名 ID。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("enroll_id")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("enroll_id")]
|
||||
public string EnrollId { get; set; } = string.Empty;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置会议 ID。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("meetingid")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("meetingid")]
|
||||
public string MeetingId { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置报名列表。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("enroll_id_list")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("enroll_id_list")]
|
||||
public IList<Types.Enroll> EnrollList { get; set; } = new List<Types.Enroll>();
|
||||
}
|
||||
}
|
@ -0,0 +1,15 @@
|
||||
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
|
||||
{
|
||||
/// <summary>
|
||||
/// <para>表示 [POST] /cgi-bin/meeting/enroll/delete 接口的响应。</para>
|
||||
/// </summary>
|
||||
public class CgibinMeetingEnrollDeleteResponse : WechatWorkResponse
|
||||
{
|
||||
/// <summary>
|
||||
/// 获取或设置成功删除的报名信息条数。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("total_count")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("total_count")]
|
||||
public int TotalCount { get; set; }
|
||||
}
|
||||
}
|
@ -0,0 +1,15 @@
|
||||
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
|
||||
{
|
||||
/// <summary>
|
||||
/// <para>表示 [POST] /cgi-bin/meeting/enroll/get_config 接口的请求。</para>
|
||||
/// </summary>
|
||||
public class CgibinMeetingEnrollGetConfigRequest : WechatWorkRequest
|
||||
{
|
||||
/// <summary>
|
||||
/// 获取或设置会议 ID。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("meetingid")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("meetingid")]
|
||||
public string MeetingId { get; set; } = string.Empty;
|
||||
}
|
||||
}
|
@ -0,0 +1,90 @@
|
||||
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
|
||||
{
|
||||
/// <summary>
|
||||
/// <para>表示 [POST] /cgi-bin/meeting/enroll/get_config 接口的响应。</para>
|
||||
/// </summary>
|
||||
public class CgibinMeetingEnrollGetConfigResponse : WechatWorkResponse
|
||||
{
|
||||
public static class Types
|
||||
{
|
||||
public class Question
|
||||
{
|
||||
public static class Types
|
||||
{
|
||||
public class Option
|
||||
{
|
||||
/// <summary>
|
||||
/// 获取或设置选项内容。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("content")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("content")]
|
||||
public string? Content { get; set; }
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置必填类型。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("is_required")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("is_required")]
|
||||
public int RequiredType { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置问题类型。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("question_type")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("question_type")]
|
||||
public int QuestionType { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置特殊问题类型。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("special_type")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("special_type")]
|
||||
public int SpecialType { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置问题标题。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("question_title")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("question_title")]
|
||||
public string? QuestionTitle { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置选项列表。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("option_list")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("option_list")]
|
||||
public Types.Option[]? OptionList { get; set; } = default!;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置审批类型。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("approve_type")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("approve_type")]
|
||||
public int ApproveType { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置收集问题类型。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("is_collect_question")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("is_collect_question")]
|
||||
public int CollectQuestionType { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置问题列表。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("question_list")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("question_list")]
|
||||
public Types.Question[] QuestionList { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置是否本企业成员无需报名。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("no_registration_needed_for_staff")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("no_registration_needed_for_staff")]
|
||||
public bool IsNoRegistrationNeededForStaff { get; set; }
|
||||
}
|
||||
}
|
@ -0,0 +1,58 @@
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
|
||||
{
|
||||
/// <summary>
|
||||
/// <para>表示 [POST] /cgi-bin/meeting/enroll/import 接口的请求。</para>
|
||||
/// </summary>
|
||||
public class CgibinMeetingEnrollImportRequest : WechatWorkRequest
|
||||
{
|
||||
public static class Types
|
||||
{
|
||||
public class Enroll
|
||||
{
|
||||
/// <summary>
|
||||
/// 获取或设置成员账号。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("userid")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("userid")]
|
||||
public string? UserId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置国家地区代码。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("area")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("area")]
|
||||
public string? AreaCode { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置手机号码。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("phone_number")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("phone_number")]
|
||||
public string? PhoneNumber { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置昵称。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("nick_name")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("nick_name")]
|
||||
public string? Nickname { get; set; }
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置会议 ID。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("meetingid")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("meetingid")]
|
||||
public string MeetingId { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置报名列表。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("enroll_list")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("enroll_list")]
|
||||
public IList<Types.Enroll> EnrollList { get; set; } = new List<Types.Enroll>();
|
||||
}
|
||||
}
|
@ -0,0 +1,70 @@
|
||||
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
|
||||
{
|
||||
/// <summary>
|
||||
/// <para>表示 [POST] /cgi-bin/meeting/enroll/import 接口的响应。</para>
|
||||
/// </summary>
|
||||
public class CgibinMeetingEnrollImportResponse : WechatWorkResponse
|
||||
{
|
||||
public static class Types
|
||||
{
|
||||
public class Enroll
|
||||
{
|
||||
/// <summary>
|
||||
/// 获取或设置报名 ID。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("enroll_id")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("enroll_id")]
|
||||
public string EnrollId { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置成员账号。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("userid")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("userid")]
|
||||
public string? UserId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置国家地区代码。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("area")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("area")]
|
||||
public string? AreaCode { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置手机号码。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("phone_number")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("phone_number")]
|
||||
public string? PhoneNumber { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置昵称。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("nick_name")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("nick_name")]
|
||||
public string? Nickname { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置报名码。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("enroll_code")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("enroll_code")]
|
||||
public string? EnrollCode { get; set; }
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置成功导入的报名信息条数。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("total_count")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("total_count")]
|
||||
public int TotalCount { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置报名列表。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("enroll_list")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("enroll_list")]
|
||||
public Types.Enroll[] EnrollList { get; set; } = default!;
|
||||
}
|
||||
}
|
@ -0,0 +1,36 @@
|
||||
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
|
||||
{
|
||||
/// <summary>
|
||||
/// <para>表示 [POST] /cgi-bin/meeting/enroll/list 接口的请求。</para>
|
||||
/// </summary>
|
||||
public class CgibinMeetingEnrollListRequest : WechatWorkRequest
|
||||
{
|
||||
/// <summary>
|
||||
/// 获取或设置会议 ID。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("meetingid")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("meetingid")]
|
||||
public string MeetingId { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置审批状态。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("status")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("status")]
|
||||
public int? Status { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置翻页标记。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("cursor")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("cursor")]
|
||||
public string? Cursor { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置分页每页数量。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("limit")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("limit")]
|
||||
public int? Limit { get; set; }
|
||||
}
|
||||
}
|
@ -0,0 +1,146 @@
|
||||
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
|
||||
{
|
||||
/// <summary>
|
||||
/// <para>表示 [POST] /cgi-bin/meeting/enroll/list 接口的响应。</para>
|
||||
/// </summary>
|
||||
public class CgibinMeetingEnrollListResponse : WechatWorkResponse
|
||||
{
|
||||
public static class Types
|
||||
{
|
||||
public class Enroll
|
||||
{
|
||||
public static class Types
|
||||
{
|
||||
public class Answer
|
||||
{
|
||||
/// <summary>
|
||||
/// 获取或设置内容列表。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("answer_content")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("answer_content")]
|
||||
public string[] ContentList { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置必填类型。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("is_required")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("is_required")]
|
||||
public int RequiredType { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置问题类型。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("question_type")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("question_type")]
|
||||
public int QuestionType { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置特殊问题类型。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("special_type")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("special_type")]
|
||||
public int SpecialType { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置问题编号。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("question_num")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("question_num")]
|
||||
public int QuestionNumber { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置问题标题。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("question_title")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("question_title")]
|
||||
public string? QuestionTitle { get; set; }
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置报名 ID。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("enroll_id")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("enroll_id")]
|
||||
public string EnrollId { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置成员账号。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("userid")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("userid")]
|
||||
public string? UserId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置临时 OpenId。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("tmp_openid")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("tmp_openid")]
|
||||
public string? TempOpenId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置报名时间字符串(格式:yyyy/MM/dd HH:mm)。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("enroll_time")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("enroll_time")]
|
||||
public string EnrollTimeString { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置报名来源。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("enroll_source_type")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("enroll_source_type")]
|
||||
public int SourceType { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置昵称。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("nick_name")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("nick_name")]
|
||||
public string? Nickname { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置报名状态。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("status")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("status")]
|
||||
public int Status { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置报名码。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("enroll_code")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("enroll_code")]
|
||||
public string? EnrollCode { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置答题列表。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("answer_list")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("answer_list")]
|
||||
public Types.Answer[]? AnswerList { get; set; }
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置报名列表。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("enroll_list")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("enroll_list")]
|
||||
public Types.Enroll[] EnrollList { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置是否还有更多。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("has_more")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("has_more")]
|
||||
public bool HasMore { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置翻页标记。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("next_cursor")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("next_cursor")]
|
||||
public string? NextCursor { get; set; }
|
||||
}
|
||||
}
|
@ -0,0 +1,31 @@
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
|
||||
{
|
||||
/// <summary>
|
||||
/// <para>表示 [POST] /cgi-bin/meeting/enroll/query_by_tmp_openid 接口的请求。</para>
|
||||
/// </summary>
|
||||
public class CgibinMeetingEnrollQueryByTempOpenIdRequest : WechatWorkRequest
|
||||
{
|
||||
/// <summary>
|
||||
/// 获取或设置会议 ID。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("meetingid")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("meetingid")]
|
||||
public string MeetingId { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置排序规则。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("sorting_rules")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("sorting_rules")]
|
||||
public int? SortingRule { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置会议的成员临时 ID 列表。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("tmp_openid_list")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("tmp_openid_list")]
|
||||
public IList<string> TempOpenIdList { get; set; } = new List<string>();
|
||||
}
|
||||
}
|
@ -0,0 +1,35 @@
|
||||
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
|
||||
{
|
||||
/// <summary>
|
||||
/// <para>表示 [POST] /cgi-bin/meeting/enroll/query_by_tmp_openid 接口的响应。</para>
|
||||
/// </summary>
|
||||
public class CgibinMeetingEnrollQueryByTempOpenIdResponse : WechatWorkResponse
|
||||
{
|
||||
public static class Types
|
||||
{
|
||||
public class Result
|
||||
{
|
||||
/// <summary>
|
||||
/// 获取或设置会议的成员临时 ID。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("tmp_openid")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("tmp_openid")]
|
||||
public string TempOpenId { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置报名 ID。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("enroll_id")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("enroll_id")]
|
||||
public string EnrollId { get; set; } = default!;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置结果列表。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("enroll_id_list")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("enroll_id_list")]
|
||||
public Types.Result[] ResultList { get; set; } = default!;
|
||||
}
|
||||
}
|
@ -0,0 +1,99 @@
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
|
||||
{
|
||||
/// <summary>
|
||||
/// <para>表示 [POST] /cgi-bin/meeting/enroll/set_config 接口的请求。</para>
|
||||
/// </summary>
|
||||
public class CgibinMeetingEnrollSetConfigRequest : WechatWorkRequest
|
||||
{
|
||||
public static class Types
|
||||
{
|
||||
public class Question
|
||||
{
|
||||
public static class Types
|
||||
{
|
||||
public class Option
|
||||
{
|
||||
/// <summary>
|
||||
/// 获取或设置选项内容。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("content")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("content")]
|
||||
public string? Content { get; set; }
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置必填类型。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("is_required")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("is_required")]
|
||||
public int? RequiredType { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置问题类型。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("question_type")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("question_type")]
|
||||
public int? QuestionType { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置特殊问题类型。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("special_type")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("special_type")]
|
||||
public int? SpecialType { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置问题标题。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("question_title")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("question_title")]
|
||||
public string? QuestionTitle { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置选项列表。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("option_list")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("option_list")]
|
||||
public IList<Types.Option>? OptionList { get; set; }
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置会议 ID。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("meetingid")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("meetingid")]
|
||||
public string MeetingId { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置审批类型。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("approve_type")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("approve_type")]
|
||||
public int? ApproveType { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置收集问题类型。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("is_collect_question")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("is_collect_question")]
|
||||
public int? CollectQuestionType { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置问题列表。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("question_list")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("question_list")]
|
||||
public IList<Types.Question>? QuestionList { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置是否本企业成员无需报名。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("no_registration_needed_for_staff")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("no_registration_needed_for_staff")]
|
||||
public bool? IsNoRegistrationNeededForStaff { get; set; }
|
||||
}
|
||||
}
|
@ -0,0 +1,15 @@
|
||||
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
|
||||
{
|
||||
/// <summary>
|
||||
/// <para>表示 [POST] /cgi-bin/meeting/enroll/set_config 接口的响应。</para>
|
||||
/// </summary>
|
||||
public class CgibinMeetingEnrollSetConfigResponse : WechatWorkResponse
|
||||
{
|
||||
/// <summary>
|
||||
/// 获取或设置报名问题数量。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("question_count")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("question_count")]
|
||||
public int QuestionCount { get; set; }
|
||||
}
|
||||
}
|
@ -0,0 +1,7 @@
|
||||
{
|
||||
"meetingid": "meetingid11234",
|
||||
"action": 1,
|
||||
"enroll_id_list": [
|
||||
"mexxxxxxx"
|
||||
]
|
||||
}
|
@ -0,0 +1,5 @@
|
||||
{
|
||||
"errcode": 0,
|
||||
"errmsg": "ok",
|
||||
"handled_count": 10
|
||||
}
|
@ -0,0 +1,8 @@
|
||||
{
|
||||
"meetingid": "meetingid11234",
|
||||
"enroll_id_list": [
|
||||
{
|
||||
"enroll_id": "123456"
|
||||
}
|
||||
]
|
||||
}
|
@ -0,0 +1,5 @@
|
||||
{
|
||||
"errcode": 0,
|
||||
"errmsg": "ok",
|
||||
"total_count": 1
|
||||
}
|
@ -0,0 +1,3 @@
|
||||
{
|
||||
"meetingid": "meetingid11234"
|
||||
}
|
@ -0,0 +1,20 @@
|
||||
{
|
||||
"errcode": 0,
|
||||
"errmsg": "ok",
|
||||
"approve_type": 1,
|
||||
"is_collect_question": 1,
|
||||
"no_registration_needed_for_staff": true,
|
||||
"question_list": [
|
||||
{
|
||||
"is_required": 1,
|
||||
"question_type": 1,
|
||||
"question_title": "acd",
|
||||
"special_type": 1,
|
||||
"option_list": [
|
||||
{
|
||||
"content": "asr"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
@ -0,0 +1,11 @@
|
||||
{
|
||||
"meetingid": "meetingid11234",
|
||||
"enroll_list": [
|
||||
{
|
||||
"userid": "USERID",
|
||||
"area": "86",
|
||||
"phone_number": "13333333333",
|
||||
"nick_name": "NICKNAME"
|
||||
}
|
||||
]
|
||||
}
|
@ -0,0 +1,15 @@
|
||||
{
|
||||
"errcode": 0,
|
||||
"errmsg": "ok",
|
||||
"total_count": 1,
|
||||
"enroll_list": [
|
||||
{
|
||||
"enroll_id": "mexxxxx",
|
||||
"userid": "USERID",
|
||||
"area": "86",
|
||||
"phone_number": "13333333333",
|
||||
"nick_name": "NICKNAME",
|
||||
"enroll_code": "CODE"
|
||||
}
|
||||
]
|
||||
}
|
@ -0,0 +1,6 @@
|
||||
{
|
||||
"meetingid": "meetingid11234",
|
||||
"status": 0,
|
||||
"cursor": "CURSOR",
|
||||
"limit": 10
|
||||
}
|
@ -0,0 +1,31 @@
|
||||
{
|
||||
"errcode": 0,
|
||||
"errmsg": "ok",
|
||||
"has_more": false,
|
||||
"next_cursor": "CURSOR",
|
||||
"enroll_list": [
|
||||
{
|
||||
"enroll_id": "mexxxxxx",
|
||||
"enroll_time": "2023/03/23 14:00",
|
||||
"enroll_source_type": 1,
|
||||
"nick_name": "NICKNAME",
|
||||
"status": 1,
|
||||
"userid": "USERID",
|
||||
"tmp_openid": "TMP_OPENID",
|
||||
"enroll_code": "CODE",
|
||||
"answer_list": [
|
||||
{
|
||||
"answer_content": [
|
||||
"CONTENT1",
|
||||
"CONTENT2"
|
||||
],
|
||||
"is_required": 1,
|
||||
"question_num": 10,
|
||||
"question_title": "TITLE",
|
||||
"question_type": 1,
|
||||
"special_type": 1
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
@ -0,0 +1,8 @@
|
||||
{
|
||||
"meetingid": "meetingid11234",
|
||||
"sorting_rules": 1,
|
||||
"tmp_openid_list": [
|
||||
"msaaaaaaaa",
|
||||
"msbbbbbbbb"
|
||||
]
|
||||
}
|
@ -0,0 +1,14 @@
|
||||
{
|
||||
"errcode": 0,
|
||||
"errmsg": "ok",
|
||||
"enroll_id_list": [
|
||||
{
|
||||
"tmp_openid": "msaaaaaaaa",
|
||||
"enroll_id": "mexxxxxxx"
|
||||
},
|
||||
{
|
||||
"tmp_openid": "msbbbbbbbb",
|
||||
"enroll_id": "meyyyyyyy"
|
||||
}
|
||||
]
|
||||
}
|
@ -0,0 +1,19 @@
|
||||
{
|
||||
"meetingid": "MEETINGID1",
|
||||
"approve_type": 1,
|
||||
"is_collect_question": 1,
|
||||
"no_registration_needed_for_staff": true,
|
||||
"question_list": [
|
||||
{
|
||||
"is_required": 1,
|
||||
"question_type": 1,
|
||||
"question_title": "acd",
|
||||
"special_type": 1,
|
||||
"option_list": [
|
||||
{
|
||||
"content": "asr"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
@ -0,0 +1,5 @@
|
||||
{
|
||||
"errcode": 0,
|
||||
"errmsg": "ok",
|
||||
"question_count": 12
|
||||
}
|
Loading…
Reference in New Issue
Block a user