feat(work): 新增接口调用许可订单管理相关接口

This commit is contained in:
Fu Diwei
2022-10-31 13:38:06 +08:00
parent 0521c968d8
commit c3d5118974
27 changed files with 822 additions and 12 deletions

View File

@@ -0,0 +1,29 @@
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
{
/// <summary>
/// <para>表示 [POST] /cgi-bin/license/cancel_order 接口的请求。</para>
/// </summary>
public class CgibinLicenseCancelOrderRequest : WechatWorkRequest
{
/// <summary>
/// 获取或设置服务商 AccessToken。
/// </summary>
[Newtonsoft.Json.JsonIgnore]
[System.Text.Json.Serialization.JsonIgnore]
public string ProviderAccessToken { get; set; } = string.Empty;
/// <summary>
/// 获取或设置企业 CorpId。
/// </summary>
[Newtonsoft.Json.JsonProperty("corpid")]
[System.Text.Json.Serialization.JsonPropertyName("corpid")]
public string CorpId { get; set; } = string.Empty;
/// <summary>
/// 获取或设置订单号。
/// </summary>
[Newtonsoft.Json.JsonProperty("order_id")]
[System.Text.Json.Serialization.JsonPropertyName("order_id")]
public string OrderId { get; set; } = string.Empty;
}
}

View File

@@ -0,0 +1,9 @@
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
{
/// <summary>
/// <para>表示 [POST] /cgi-bin/license/cancel_order 接口的响应。</para>
/// </summary>
public class CgibinLicenseCancelOrderResponse : WechatWorkResponse
{
}
}

View File

@@ -0,0 +1,80 @@
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
{
/// <summary>
/// <para>表示 [POST] /cgi-bin/license/create_new_order 接口的请求。</para>
/// </summary>
public class CgibinLicenseCreateNewOrderRequest : WechatWorkRequest
{
public static class Types
{
public class AccountCount
{
/// <summary>
/// 获取或设置基础帐号个数。
/// </summary>
[Newtonsoft.Json.JsonProperty("base_count")]
[System.Text.Json.Serialization.JsonPropertyName("base_count")]
public int? BaseCount { get; set; }
/// <summary>
/// 获取或设置互通帐号个数。
/// </summary>
[Newtonsoft.Json.JsonProperty("external_contact_count")]
[System.Text.Json.Serialization.JsonPropertyName("external_contact_count")]
public int? ExternalContactCount { get; set; }
}
public class AccountDuration
{
/// <summary>
/// 获取或设置购买的月数。
/// </summary>
[Newtonsoft.Json.JsonProperty("months")]
[System.Text.Json.Serialization.JsonPropertyName("months")]
public int? Months { get; set; }
/// <summary>
/// 获取或设置购买的天数。
/// </summary>
[Newtonsoft.Json.JsonProperty("days")]
[System.Text.Json.Serialization.JsonPropertyName("days")]
public int? Days { get; set; }
}
}
/// <summary>
/// 获取或设置服务商 AccessToken。
/// </summary>
[Newtonsoft.Json.JsonIgnore]
[System.Text.Json.Serialization.JsonIgnore]
public string ProviderAccessToken { get; set; } = string.Empty;
/// <summary>
/// 获取或设置企业 CorpId。
/// </summary>
[Newtonsoft.Json.JsonProperty("corpid")]
[System.Text.Json.Serialization.JsonPropertyName("corpid")]
public string CorpId { get; set; } = string.Empty;
/// <summary>
/// 获取或设置下单人成员 UserId。
/// </summary>
[Newtonsoft.Json.JsonProperty("buyer_userid")]
[System.Text.Json.Serialization.JsonPropertyName("buyer_userid")]
public string BuyerUserId { get; set; } = string.Empty;
/// <summary>
/// 获取或设置账号个数信息。
/// </summary>
[Newtonsoft.Json.JsonProperty("account_count")]
[System.Text.Json.Serialization.JsonPropertyName("account_count")]
public Types.AccountCount AccountCount { get; set; } = new Types.AccountCount();
/// <summary>
/// 获取或设置账号时长信息。
/// </summary>
[Newtonsoft.Json.JsonProperty("account_duration")]
[System.Text.Json.Serialization.JsonPropertyName("account_duration")]
public Types.AccountDuration AccountDuration { get; set; } = new Types.AccountDuration();
}
}

View File

@@ -0,0 +1,15 @@
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
{
/// <summary>
/// <para>表示 [POST] /cgi-bin/license/create_new_order 接口的响应。</para>
/// </summary>
public class CgibinLicenseCreateNewOrderResponse : WechatWorkResponse
{
/// <summary>
/// 获取或设置订单号。
/// </summary>
[Newtonsoft.Json.JsonProperty("order_id")]
[System.Text.Json.Serialization.JsonPropertyName("order_id")]
public string OrderId { get; set; } = default!;
}
}

View File

@@ -0,0 +1,58 @@
using System.Collections.Generic;
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
{
/// <summary>
/// <para>表示 [POST] /cgi-bin/license/create_renew_order_job 接口的请求。</para>
/// </summary>
public class CgibinLicenseCreateRenewOrderJobRequest : WechatWorkRequest
{
public static class Types
{
public class Account
{
/// <summary>
/// 获取或设置续期企业的成员 UserId。
/// </summary>
[Newtonsoft.Json.JsonProperty("userid")]
[System.Text.Json.Serialization.JsonPropertyName("userid")]
public string UserId { get; set; } = string.Empty;
/// <summary>
/// 获取或设置续期帐号类型。
/// </summary>
[Newtonsoft.Json.JsonProperty("type")]
[System.Text.Json.Serialization.JsonPropertyName("type")]
public int Type { get; set; }
}
}
/// <summary>
/// 获取或设置服务商 AccessToken。
/// </summary>
[Newtonsoft.Json.JsonIgnore]
[System.Text.Json.Serialization.JsonIgnore]
public string ProviderAccessToken { get; set; } = string.Empty;
/// <summary>
/// 获取或设置企业 CorpId。
/// </summary>
[Newtonsoft.Json.JsonProperty("corpid")]
[System.Text.Json.Serialization.JsonPropertyName("corpid")]
public string CorpId { get; set; } = string.Empty;
/// <summary>
/// 获取或设置任务 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("jobid")]
[System.Text.Json.Serialization.JsonPropertyName("jobid")]
public string? JobId { get; set; }
/// <summary>
/// 获取或设置续期的帐号列表。
/// </summary>
[Newtonsoft.Json.JsonProperty("account_list")]
[System.Text.Json.Serialization.JsonPropertyName("account_list")]
public IList<Types.Account> AccountList { get; set; } = new List<Types.Account>();
}
}

View File

@@ -0,0 +1,56 @@
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
{
/// <summary>
/// <para>表示 [POST] /cgi-bin/license/create_renew_order_job 接口的响应。</para>
/// </summary>
public class CgibinLicenseCreateRenewOrderJobResponse : WechatWorkResponse
{
public static class Types
{
public class Account
{
/// <summary>
/// 获取或设置错误码。
/// </summary>
[Newtonsoft.Json.JsonProperty("errcode")]
[System.Text.Json.Serialization.JsonPropertyName("errcode")]
public int ErrorCode { get; set; }
/// <summary>
/// 获取或设置错误描述。
/// </summary>
[Newtonsoft.Json.JsonProperty("errmsg")]
[System.Text.Json.Serialization.JsonPropertyName("errmsg")]
public string? ErrorMessage { get; set; }
/// <summary>
/// 获取或设置续期企业的成员 UserId。
/// </summary>
[Newtonsoft.Json.JsonProperty("userid")]
[System.Text.Json.Serialization.JsonPropertyName("userid")]
public string UserId { get; set; } = default!;
/// <summary>
/// 获取或设置续期帐号类型。
/// </summary>
[Newtonsoft.Json.JsonProperty("type")]
[System.Text.Json.Serialization.JsonPropertyName("type")]
public int Type { get; set; }
}
}
/// <summary>
/// 获取或设置任务 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("jobid")]
[System.Text.Json.Serialization.JsonPropertyName("jobid")]
public string JobId { get; set; } = default!;
/// <summary>
/// 获取或设置无效的帐号列表。
/// </summary>
[Newtonsoft.Json.JsonProperty("invalid_account_list")]
[System.Text.Json.Serialization.JsonPropertyName("invalid_account_list")]
public Types.Account[] InvalidAccountList { get; set; } = default!;
}
}

View File

@@ -0,0 +1,22 @@
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
{
/// <summary>
/// <para>表示 [POST] /cgi-bin/license/get_order 接口的请求。</para>
/// </summary>
public class CgibinLicenseGetOrderRequest : WechatWorkRequest
{
/// <summary>
/// 获取或设置服务商 AccessToken。
/// </summary>
[Newtonsoft.Json.JsonIgnore]
[System.Text.Json.Serialization.JsonIgnore]
public string ProviderAccessToken { get; set; } = string.Empty;
/// <summary>
/// 获取或设置订单号。
/// </summary>
[Newtonsoft.Json.JsonProperty("order_id")]
[System.Text.Json.Serialization.JsonPropertyName("order_id")]
public string OrderId { get; set; } = string.Empty;
}
}

View File

@@ -0,0 +1,113 @@
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
{
/// <summary>
/// <para>表示 [POST] /cgi-bin/license/get_order 接口的响应。</para>
/// </summary>
public class CgibinLicenseGetOrderResponse : WechatWorkResponse
{
public static class Types
{
public class Order : CgibinLicenseListOrderResponse.Types.Order
{
public static class Types
{
public class AccountCount
{
/// <summary>
/// 获取或设置基础帐号个数。
/// </summary>
[Newtonsoft.Json.JsonProperty("base_count")]
[System.Text.Json.Serialization.JsonPropertyName("base_count")]
public int BaseCount { get; set; }
/// <summary>
/// 获取或设置互通帐号个数。
/// </summary>
[Newtonsoft.Json.JsonProperty("external_contact_count")]
[System.Text.Json.Serialization.JsonPropertyName("external_contact_count")]
public int ExternalContactCount { get; set; }
}
public class AccountDuration
{
/// <summary>
/// 获取或设置购买的月数。
/// </summary>
[Newtonsoft.Json.JsonProperty("months")]
[System.Text.Json.Serialization.JsonPropertyName("months")]
public int? Months { get; set; }
/// <summary>
/// 获取或设置购买的天数。
/// </summary>
[Newtonsoft.Json.JsonProperty("days")]
[System.Text.Json.Serialization.JsonPropertyName("days")]
public int? Days { get; set; }
/// <summary>
/// 获取或设置新过期时间戳。
/// </summary>
[Newtonsoft.Json.JsonProperty("new_expire_time")]
[System.Text.Json.Serialization.JsonPropertyName("new_expire_time")]
public long? NewExpireTimestamp { get; set; }
}
}
/// <summary>
/// 获取或设置订单状态。
/// </summary>
[Newtonsoft.Json.JsonProperty("order_status")]
[System.Text.Json.Serialization.JsonPropertyName("order_status")]
public int OrderStatus { get; set; }
/// <summary>
/// 获取或设置客户企业 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("corpid")]
[System.Text.Json.Serialization.JsonPropertyName("corpid")]
public string CorpId { get; set; } = default!;
/// <summary>
/// 获取或设置订单金额(单位:分)。
/// </summary>
[Newtonsoft.Json.JsonProperty("price")]
[System.Text.Json.Serialization.JsonPropertyName("price")]
public int Price { get; set; }
/// <summary>
/// 获取或设置账号个数信息。
/// </summary>
[Newtonsoft.Json.JsonProperty("account_count")]
[System.Text.Json.Serialization.JsonPropertyName("account_count")]
public Types.AccountCount AccountCount { get; set; } = default!;
/// <summary>
/// 获取或设置账号时长信息。
/// </summary>
[Newtonsoft.Json.JsonProperty("account_duration")]
[System.Text.Json.Serialization.JsonPropertyName("account_duration")]
public Types.AccountDuration AccountDuration { get; set; } = default!;
/// <summary>
/// 获取或设置创建时间戳。
/// </summary>
[Newtonsoft.Json.JsonProperty("create_time")]
[System.Text.Json.Serialization.JsonPropertyName("create_time")]
public long CreateTimestamp { get; set; }
/// <summary>
/// 获取或设置支付时间戳。
/// </summary>
[Newtonsoft.Json.JsonProperty("pay_time")]
[System.Text.Json.Serialization.JsonPropertyName("pay_time")]
public long? PayTimestamp { get; set; }
}
}
/// <summary>
/// 获取或设置订单信息。
/// </summary>
[Newtonsoft.Json.JsonProperty("order")]
[System.Text.Json.Serialization.JsonPropertyName("order")]
public Types.Order Order { get; set; } = default!;
}
}

View File

@@ -0,0 +1,36 @@
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
{
/// <summary>
/// <para>表示 [POST] /cgi-bin/license/list_order_account 接口的请求。</para>
/// </summary>
public class CgibinLicenseListOrderAccountRequest : WechatWorkRequest
{
/// <summary>
/// 获取或设置服务商 AccessToken。
/// </summary>
[Newtonsoft.Json.JsonIgnore]
[System.Text.Json.Serialization.JsonIgnore]
public string ProviderAccessToken { get; set; } = string.Empty;
/// <summary>
/// 获取或设置订单号。
/// </summary>
[Newtonsoft.Json.JsonProperty("order_id")]
[System.Text.Json.Serialization.JsonPropertyName("order_id")]
public string OrderId { get; set; } = string.Empty;
/// <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; }
}
}

View File

@@ -0,0 +1,58 @@
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
{
/// <summary>
/// <para>表示 [POST] /cgi-bin/license/list_order_account 接口的响应。</para>
/// </summary>
public class CgibinLicenseListOrderAccountResponse : WechatWorkResponse
{
public static class Types
{
public class Account
{
/// <summary>
/// 获取或设置帐号激活码。
/// </summary>
[Newtonsoft.Json.JsonProperty("active_code")]
[System.Text.Json.Serialization.JsonPropertyName("active_code")]
public string ActiveCode { get; set; } = default!;
/// <summary>
/// 获取或设置成员的 UserId。
/// </summary>
[Newtonsoft.Json.JsonProperty("userid")]
[System.Text.Json.Serialization.JsonPropertyName("userid")]
public string? UserId { get; set; }
/// <summary>
/// 获取或设置帐号类型。
/// </summary>
[Newtonsoft.Json.JsonProperty("type")]
[System.Text.Json.Serialization.JsonPropertyName("type")]
public int Type { get; set; }
}
}
/// <summary>
/// 获取或设置账号列表。
/// </summary>
[Newtonsoft.Json.JsonProperty("account_list")]
[System.Text.Json.Serialization.JsonPropertyName("account_list")]
public Types.Account[] AccountList { get; set; } = default!;
/// <summary>
/// 获取或设置是否还有更多数据。
/// </summary>
[Newtonsoft.Json.JsonProperty("has_more")]
[Newtonsoft.Json.JsonConverter(typeof(Newtonsoft.Json.Converters.NumericalBooleanConverter))]
[System.Text.Json.Serialization.JsonPropertyName("has_more")]
[System.Text.Json.Serialization.JsonConverter(typeof(System.Text.Json.Converters.NumericalBooleanConverter))]
public bool HasMore { get; set; }
/// <summary>
/// 获取或设置分页游标。
/// </summary>
[Newtonsoft.Json.JsonProperty("next_cursor")]
[System.Text.Json.Serialization.JsonPropertyName("next_cursor")]
public string? NextCursor { get; set; }
}
}

View File

@@ -0,0 +1,50 @@
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
{
/// <summary>
/// <para>表示 [POST] /cgi-bin/license/list_order 接口的请求。</para>
/// </summary>
public class CgibinLicenseListOrderRequest : WechatWorkRequest
{
/// <summary>
/// 获取或设置服务商 AccessToken。
/// </summary>
[Newtonsoft.Json.JsonIgnore]
[System.Text.Json.Serialization.JsonIgnore]
public string ProviderAccessToken { get; set; } = string.Empty;
/// <summary>
/// 获取或设置企业 CorpId。
/// </summary>
[Newtonsoft.Json.JsonProperty("corpid")]
[System.Text.Json.Serialization.JsonPropertyName("corpid")]
public string CorpId { get; set; } = string.Empty;
/// <summary>
/// 获取或设置开始时间戳。
/// </summary>
[Newtonsoft.Json.JsonProperty("start_time")]
[System.Text.Json.Serialization.JsonPropertyName("start_time")]
public long? StartTimestamp { get; set; }
/// <summary>
/// 获取或设置结束时间戳。
/// </summary>
[Newtonsoft.Json.JsonProperty("end_time")]
[System.Text.Json.Serialization.JsonPropertyName("end_time")]
public long? EndTimestamp { 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; }
}
}

View File

@@ -0,0 +1,51 @@
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
{
/// <summary>
/// <para>表示 [POST] /cgi-bin/license/list_order 接口的响应。</para>
/// </summary>
public class CgibinLicenseListOrderResponse : WechatWorkResponse
{
public static class Types
{
public class Order
{
/// <summary>
/// 获取或设置订单号。
/// </summary>
[Newtonsoft.Json.JsonProperty("order_id")]
[System.Text.Json.Serialization.JsonPropertyName("order_id")]
public string OrderId { get; set; } = default!;
/// <summary>
/// 获取或设置订单类型。
/// </summary>
[Newtonsoft.Json.JsonProperty("order_type")]
[System.Text.Json.Serialization.JsonPropertyName("order_type")]
public int OrderType { get; set; }
}
}
/// <summary>
/// 获取或设置订单列表。
/// </summary>
[Newtonsoft.Json.JsonProperty("order_list")]
[System.Text.Json.Serialization.JsonPropertyName("order_list")]
public Types.Order[] OrderList { get; set; } = default!;
/// <summary>
/// 获取或设置是否还有更多数据。
/// </summary>
[Newtonsoft.Json.JsonProperty("has_more")]
[Newtonsoft.Json.JsonConverter(typeof(Newtonsoft.Json.Converters.NumericalBooleanConverter))]
[System.Text.Json.Serialization.JsonPropertyName("has_more")]
[System.Text.Json.Serialization.JsonConverter(typeof(System.Text.Json.Converters.NumericalBooleanConverter))]
public bool HasMore { get; set; }
/// <summary>
/// 获取或设置分页游标。
/// </summary>
[Newtonsoft.Json.JsonProperty("next_cursor")]
[System.Text.Json.Serialization.JsonPropertyName("next_cursor")]
public string? NextCursor { get; set; }
}
}