feat(work): 新增文档智能表格相关接口

This commit is contained in:
Fu Diwei
2024-06-01 20:29:15 +08:00
parent 4809c8fe31
commit 6564940a96
56 changed files with 3555 additions and 0 deletions

View File

@@ -358,6 +358,376 @@ namespace SKIT.FlurlHttpClient.Wechat.Work
}
#endregion
#region SmartSheet
/// <summary>
/// <para>异步调用 [POST] /cgi-bin/wedoc/smartsheet/get_sheet 接口。</para>
/// <para>
/// REF: <br/>
/// <![CDATA[ https://developer.work.weixin.qq.com/document/path/99911 ]]>
/// </para>
/// </summary>
/// <param name="client"></param>
/// <param name="request"></param>
/// <param name="cancellationToken"></param>
/// <returns></returns>
public static async Task<Models.CgibinWedocSmartSheetGetSheetResponse> ExecuteCgibinWedocSmartSheetGetSheetAsync(this WechatWorkClient client, Models.CgibinWedocSmartSheetGetSheetRequest 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
.CreateFlurlRequest(request, HttpMethod.Post, "cgi-bin", "wedoc", "smartsheet", "get_sheet")
.SetQueryParam("access_token", request.AccessToken);
return await client.SendFlurlRequestAsJsonAsync<Models.CgibinWedocSmartSheetGetSheetResponse>(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
}
/// <summary>
/// <para>异步调用 [POST] /cgi-bin/wedoc/smartsheet/add_sheet 接口。</para>
/// <para>
/// REF: <br/>
/// <![CDATA[ https://developer.work.weixin.qq.com/document/path/99896 ]]>
/// </para>
/// </summary>
/// <param name="client"></param>
/// <param name="request"></param>
/// <param name="cancellationToken"></param>
/// <returns></returns>
public static async Task<Models.CgibinWedocSmartSheetAddSheetResponse> ExecuteCgibinWedocSmartSheetAddSheetAsync(this WechatWorkClient client, Models.CgibinWedocSmartSheetAddSheetRequest 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
.CreateFlurlRequest(request, HttpMethod.Post, "cgi-bin", "wedoc", "smartsheet", "add_sheet")
.SetQueryParam("access_token", request.AccessToken);
return await client.SendFlurlRequestAsJsonAsync<Models.CgibinWedocSmartSheetAddSheetResponse>(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
}
/// <summary>
/// <para>异步调用 [POST] /cgi-bin/wedoc/smartsheet/update_sheet 接口。</para>
/// <para>
/// REF: <br/>
/// <![CDATA[ https://developer.work.weixin.qq.com/document/path/99898 ]]>
/// </para>
/// </summary>
/// <param name="client"></param>
/// <param name="request"></param>
/// <param name="cancellationToken"></param>
/// <returns></returns>
public static async Task<Models.CgibinWedocSmartSheetUpdateSheetResponse> ExecuteCgibinWedocSmartSheetUpdateSheetAsync(this WechatWorkClient client, Models.CgibinWedocSmartSheetUpdateSheetRequest 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
.CreateFlurlRequest(request, HttpMethod.Post, "cgi-bin", "wedoc", "smartsheet", "update_sheet")
.SetQueryParam("access_token", request.AccessToken);
return await client.SendFlurlRequestAsJsonAsync<Models.CgibinWedocSmartSheetUpdateSheetResponse>(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
}
/// <summary>
/// <para>异步调用 [POST] /cgi-bin/wedoc/smartsheet/delete_sheet 接口。</para>
/// <para>
/// REF: <br/>
/// <![CDATA[ https://developer.work.weixin.qq.com/document/path/99898 ]]>
/// </para>
/// </summary>
/// <param name="client"></param>
/// <param name="request"></param>
/// <param name="cancellationToken"></param>
/// <returns></returns>
public static async Task<Models.CgibinWedocSmartSheetDeleteSheetResponse> ExecuteCgibinWedocSmartSheetDeleteSheetAsync(this WechatWorkClient client, Models.CgibinWedocSmartSheetDeleteSheetRequest 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
.CreateFlurlRequest(request, HttpMethod.Post, "cgi-bin", "wedoc", "smartsheet", "delete_sheet")
.SetQueryParam("access_token", request.AccessToken);
return await client.SendFlurlRequestAsJsonAsync<Models.CgibinWedocSmartSheetDeleteSheetResponse>(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
}
/// <summary>
/// <para>异步调用 [POST] /cgi-bin/wedoc/smartsheet/get_views 接口。</para>
/// <para>
/// REF: <br/>
/// <![CDATA[ https://developer.work.weixin.qq.com/document/path/99913 ]]>
/// </para>
/// </summary>
/// <param name="client"></param>
/// <param name="request"></param>
/// <param name="cancellationToken"></param>
/// <returns></returns>
public static async Task<Models.CgibinWedocSmartSheetGetViewsResponse> ExecuteCgibinWedocSmartSheetGetViewsAsync(this WechatWorkClient client, Models.CgibinWedocSmartSheetGetViewsRequest 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
.CreateFlurlRequest(request, HttpMethod.Post, "cgi-bin", "wedoc", "smartsheet", "get_views")
.SetQueryParam("access_token", request.AccessToken);
return await client.SendFlurlRequestAsJsonAsync<Models.CgibinWedocSmartSheetGetViewsResponse>(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
}
/// <summary>
/// <para>异步调用 [POST] /cgi-bin/wedoc/smartsheet/add_view 接口。</para>
/// <para>
/// REF: <br/>
/// <![CDATA[ https://developer.work.weixin.qq.com/document/path/99896 ]]>
/// </para>
/// </summary>
/// <param name="client"></param>
/// <param name="request"></param>
/// <param name="cancellationToken"></param>
/// <returns></returns>
public static async Task<Models.CgibinWedocSmartSheetAddViewResponse> ExecuteCgibinWedocSmartSheetAddViewAsync(this WechatWorkClient client, Models.CgibinWedocSmartSheetAddViewRequest 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
.CreateFlurlRequest(request, HttpMethod.Post, "cgi-bin", "wedoc", "smartsheet", "add_view")
.SetQueryParam("access_token", request.AccessToken);
return await client.SendFlurlRequestAsJsonAsync<Models.CgibinWedocSmartSheetAddViewResponse>(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
}
/// <summary>
/// <para>异步调用 [POST] /cgi-bin/wedoc/smartsheet/update_view 接口。</para>
/// <para>
/// REF: <br/>
/// <![CDATA[ https://developer.work.weixin.qq.com/document/path/99902 ]]>
/// </para>
/// </summary>
/// <param name="client"></param>
/// <param name="request"></param>
/// <param name="cancellationToken"></param>
/// <returns></returns>
public static async Task<Models.CgibinWedocSmartSheetUpdateViewResponse> ExecuteCgibinWedocSmartSheetUpdateViewAsync(this WechatWorkClient client, Models.CgibinWedocSmartSheetUpdateViewRequest 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
.CreateFlurlRequest(request, HttpMethod.Post, "cgi-bin", "wedoc", "smartsheet", "update_view")
.SetQueryParam("access_token", request.AccessToken);
return await client.SendFlurlRequestAsJsonAsync<Models.CgibinWedocSmartSheetUpdateViewResponse>(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
}
/// <summary>
/// <para>异步调用 [POST] /cgi-bin/wedoc/smartsheet/delete_views 接口。</para>
/// <para>
/// REF: <br/>
/// <![CDATA[ https://developer.work.weixin.qq.com/document/path/99901 ]]>
/// </para>
/// </summary>
/// <param name="client"></param>
/// <param name="request"></param>
/// <param name="cancellationToken"></param>
/// <returns></returns>
public static async Task<Models.CgibinWedocSmartSheetDeleteViewsResponse> ExecuteCgibinWedocSmartSheetDeleteViewsAsync(this WechatWorkClient client, Models.CgibinWedocSmartSheetDeleteViewsRequest 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
.CreateFlurlRequest(request, HttpMethod.Post, "cgi-bin", "wedoc", "smartsheet", "delete_views")
.SetQueryParam("access_token", request.AccessToken);
return await client.SendFlurlRequestAsJsonAsync<Models.CgibinWedocSmartSheetDeleteViewsResponse>(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
}
/// <summary>
/// <para>异步调用 [POST] /cgi-bin/wedoc/smartsheet/get_fields 接口。</para>
/// <para>
/// REF: <br/>
/// <![CDATA[ https://developer.work.weixin.qq.com/document/path/99914 ]]>
/// </para>
/// </summary>
/// <param name="client"></param>
/// <param name="request"></param>
/// <param name="cancellationToken"></param>
/// <returns></returns>
public static async Task<Models.CgibinWedocSmartSheetGetFieldsResponse> ExecuteCgibinWedocSmartSheetGetFieldsAsync(this WechatWorkClient client, Models.CgibinWedocSmartSheetGetFieldsRequest 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
.CreateFlurlRequest(request, HttpMethod.Post, "cgi-bin", "wedoc", "smartsheet", "get_fields")
.SetQueryParam("access_token", request.AccessToken);
return await client.SendFlurlRequestAsJsonAsync<Models.CgibinWedocSmartSheetGetFieldsResponse>(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
}
/// <summary>
/// <para>异步调用 [POST] /cgi-bin/wedoc/smartsheet/add_fields 接口。</para>
/// <para>
/// REF: <br/>
/// <![CDATA[ https://developer.work.weixin.qq.com/document/path/99904 ]]>
/// </para>
/// </summary>
/// <param name="client"></param>
/// <param name="request"></param>
/// <param name="cancellationToken"></param>
/// <returns></returns>
public static async Task<Models.CgibinWedocSmartSheetAddFieldsResponse> ExecuteCgibinWedocSmartSheetAddFieldsAsync(this WechatWorkClient client, Models.CgibinWedocSmartSheetAddFieldsRequest 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
.CreateFlurlRequest(request, HttpMethod.Post, "cgi-bin", "wedoc", "smartsheet", "add_fields")
.SetQueryParam("access_token", request.AccessToken);
return await client.SendFlurlRequestAsJsonAsync<Models.CgibinWedocSmartSheetAddFieldsResponse>(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
}
/// <summary>
/// <para>异步调用 [POST] /cgi-bin/wedoc/smartsheet/update_fields 接口。</para>
/// <para>
/// REF: <br/>
/// <![CDATA[ https://developer.work.weixin.qq.com/document/path/99906 ]]>
/// </para>
/// </summary>
/// <param name="client"></param>
/// <param name="request"></param>
/// <param name="cancellationToken"></param>
/// <returns></returns>
public static async Task<Models.CgibinWedocSmartSheetUpdateFieldsResponse> ExecuteCgibinWedocSmartSheetUpdateFieldsAsync(this WechatWorkClient client, Models.CgibinWedocSmartSheetUpdateFieldsRequest 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
.CreateFlurlRequest(request, HttpMethod.Post, "cgi-bin", "wedoc", "smartsheet", "update_fields")
.SetQueryParam("access_token", request.AccessToken);
return await client.SendFlurlRequestAsJsonAsync<Models.CgibinWedocSmartSheetUpdateFieldsResponse>(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
}
/// <summary>
/// <para>异步调用 [POST] /cgi-bin/wedoc/smartsheet/delete_fields 接口。</para>
/// <para>
/// REF: <br/>
/// <![CDATA[ https://developer.work.weixin.qq.com/document/path/99906 ]]>
/// </para>
/// </summary>
/// <param name="client"></param>
/// <param name="request"></param>
/// <param name="cancellationToken"></param>
/// <returns></returns>
public static async Task<Models.CgibinWedocSmartSheetDeleteFieldsResponse> ExecuteCgibinWedocSmartSheetDeleteFieldsAsync(this WechatWorkClient client, Models.CgibinWedocSmartSheetDeleteFieldsRequest 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
.CreateFlurlRequest(request, HttpMethod.Post, "cgi-bin", "wedoc", "smartsheet", "delete_fields")
.SetQueryParam("access_token", request.AccessToken);
return await client.SendFlurlRequestAsJsonAsync<Models.CgibinWedocSmartSheetDeleteFieldsResponse>(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
}
/// <summary>
/// <para>异步调用 [POST] /cgi-bin/wedoc/smartsheet/get_records 接口。</para>
/// <para>
/// REF: <br/>
/// <![CDATA[ https://developer.work.weixin.qq.com/document/path/99915 ]]>
/// </para>
/// </summary>
/// <param name="client"></param>
/// <param name="request"></param>
/// <param name="cancellationToken"></param>
/// <returns></returns>
public static async Task<Models.CgibinWedocSmartSheetGetRecordsResponse> ExecuteCgibinWedocSmartSheetGetRecordsAsync(this WechatWorkClient client, Models.CgibinWedocSmartSheetGetRecordsRequest 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
.CreateFlurlRequest(request, HttpMethod.Post, "cgi-bin", "wedoc", "smartsheet", "get_records")
.SetQueryParam("access_token", request.AccessToken);
return await client.SendFlurlRequestAsJsonAsync<Models.CgibinWedocSmartSheetGetRecordsResponse>(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
}
/// <summary>
/// <para>异步调用 [POST] /cgi-bin/wedoc/smartsheet/add_records 接口。</para>
/// <para>
/// REF: <br/>
/// <![CDATA[ https://developer.work.weixin.qq.com/document/path/99907 ]]>
/// </para>
/// </summary>
/// <param name="client"></param>
/// <param name="request"></param>
/// <param name="cancellationToken"></param>
/// <returns></returns>
public static async Task<Models.CgibinWedocSmartSheetAddRecordsResponse> ExecuteCgibinWedocSmartSheetAddRecordsAsync(this WechatWorkClient client, Models.CgibinWedocSmartSheetAddRecordsRequest 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
.CreateFlurlRequest(request, HttpMethod.Post, "cgi-bin", "wedoc", "smartsheet", "add_records")
.SetQueryParam("access_token", request.AccessToken);
return await client.SendFlurlRequestAsJsonAsync<Models.CgibinWedocSmartSheetAddRecordsResponse>(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
}
/// <summary>
/// <para>异步调用 [POST] /cgi-bin/wedoc/smartsheet/update_records 接口。</para>
/// <para>
/// REF: <br/>
/// <![CDATA[ https://developer.work.weixin.qq.com/document/path/99909 ]]>
/// </para>
/// </summary>
/// <param name="client"></param>
/// <param name="request"></param>
/// <param name="cancellationToken"></param>
/// <returns></returns>
public static async Task<Models.CgibinWedocSmartSheetUpdateRecordsResponse> ExecuteCgibinWedocSmartSheetUpdateRecordsAsync(this WechatWorkClient client, Models.CgibinWedocSmartSheetUpdateRecordsRequest 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
.CreateFlurlRequest(request, HttpMethod.Post, "cgi-bin", "wedoc", "smartsheet", "update_records")
.SetQueryParam("access_token", request.AccessToken);
return await client.SendFlurlRequestAsJsonAsync<Models.CgibinWedocSmartSheetUpdateRecordsResponse>(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
}
/// <summary>
/// <para>异步调用 [POST] /cgi-bin/wedoc/smartsheet/delete_records 接口。</para>
/// <para>
/// REF: <br/>
/// <![CDATA[ https://developer.work.weixin.qq.com/document/path/99908 ]]>
/// </para>
/// </summary>
/// <param name="client"></param>
/// <param name="request"></param>
/// <param name="cancellationToken"></param>
/// <returns></returns>
public static async Task<Models.CgibinWedocSmartSheetDeleteRecordsResponse> ExecuteCgibinWedocSmartSheetDeleteRecordsAsync(this WechatWorkClient client, Models.CgibinWedocSmartSheetDeleteRecordsRequest 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
.CreateFlurlRequest(request, HttpMethod.Post, "cgi-bin", "wedoc", "smartsheet", "delete_records")
.SetQueryParam("access_token", request.AccessToken);
return await client.SendFlurlRequestAsJsonAsync<Models.CgibinWedocSmartSheetDeleteRecordsResponse>(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
}
#endregion
#region SpreadSheet
/// <summary>
/// <para>异步调用 [POST] /cgi-bin/wedoc/spreadsheet/batch_update 接口。</para>

View File

@@ -0,0 +1,475 @@
using System.Collections.Generic;
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
{
/// <summary>
/// <para>表示 [POST] /cgi-bin/wedoc/smartsheet/add_fields 接口的请求。</para>
/// </summary>
public class CgibinWedocSmartSheetAddFieldsRequest : WechatWorkRequest
{
public static class Types
{
public class Field
{
public static class Types
{
public class TextFieldProperty
{
}
public class NumberFieldProperty
{
/// <summary>
/// 获取或设置小数点的位数。
/// </summary>
[Newtonsoft.Json.JsonProperty("decimal_places")]
[System.Text.Json.Serialization.JsonPropertyName("decimal_places")]
public int DecimalPlaces { get; set; }
/// <summary>
/// 获取或设置是否使用千位符。
/// </summary>
[Newtonsoft.Json.JsonProperty("use_separate")]
[System.Text.Json.Serialization.JsonPropertyName("use_separate")]
public bool IsUseSeparate { get; set; }
}
public class CheckboxFieldProperty
{
/// <summary>
/// 获取或设置是否默认勾选。
/// </summary>
[Newtonsoft.Json.JsonProperty("checked")]
[System.Text.Json.Serialization.JsonPropertyName("checked")]
public bool IsChecked { get; set; }
}
public class DateTimeFieldProperty
{
/// <summary>
/// 获取或设置日期格式字符串。
/// </summary>
[Newtonsoft.Json.JsonProperty("format")]
[System.Text.Json.Serialization.JsonPropertyName("format")]
public string FormatString { get; set; } = string.Empty;
/// <summary>
/// 获取或设置是否自动填充。
/// </summary>
[Newtonsoft.Json.JsonProperty("auto_fill")]
[System.Text.Json.Serialization.JsonPropertyName("auto_fill")]
public bool IsAutoFill { get; set; }
}
public class AttachmentFieldProperty
{
/// <summary>
/// 获取或设置显示模式。
/// </summary>
[Newtonsoft.Json.JsonProperty("display_mode")]
[System.Text.Json.Serialization.JsonPropertyName("display_mode")]
public string DisplayMode { get; set; } = string.Empty;
}
public class UserFieldProperty
{
/// <summary>
/// 获取或设置是否允许添加多个。
/// </summary>
[Newtonsoft.Json.JsonProperty("is_multiple")]
[System.Text.Json.Serialization.JsonPropertyName("is_multiple")]
public bool IsMultiple { get; set; }
/// <summary>
/// 获取或设置是否通知用户。
/// </summary>
[Newtonsoft.Json.JsonProperty("is_notified")]
[System.Text.Json.Serialization.JsonPropertyName("is_notified")]
public bool IsNotified { get; set; }
}
public class UrlFieldProperty
{
/// <summary>
/// 获取或设置超链接展示样式。
/// </summary>
[Newtonsoft.Json.JsonProperty("type")]
[System.Text.Json.Serialization.JsonPropertyName("type")]
public string Type { get; set; } = string.Empty;
}
public class SelectFieldProperty
{
public static class Types
{
public class Option
{
/// <summary>
/// 获取或设置选项 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("id")]
[System.Text.Json.Serialization.JsonPropertyName("id")]
public string Id { get; set; } = string.Empty;
/// <summary>
/// 获取或设置选项内容。
/// </summary>
[Newtonsoft.Json.JsonProperty("text")]
[System.Text.Json.Serialization.JsonPropertyName("text")]
public string Text { get; set; } = string.Empty;
/// <summary>
/// 获取或设置选项颜色。
/// </summary>
[Newtonsoft.Json.JsonProperty("style")]
[System.Text.Json.Serialization.JsonPropertyName("style")]
public int Style { get; set; }
}
}
/// <summary>
/// 获取或设置是否允许填写时新增选项。
/// </summary>
[Newtonsoft.Json.JsonProperty("is_quick_add")]
[System.Text.Json.Serialization.JsonPropertyName("is_quick_add")]
public bool IsQuickAdd { get; set; }
/// <summary>
/// 获取或设置选项列表。
/// </summary>
[Newtonsoft.Json.JsonProperty("options")]
[System.Text.Json.Serialization.JsonPropertyName("options")]
public IList<Types.Option> OptionList { get; set; } = new List<Types.Option>();
}
public class CreatedTimeFieldProperty
{
/// <summary>
/// 获取或设置日期格式字符串。
/// </summary>
[Newtonsoft.Json.JsonProperty("format")]
[System.Text.Json.Serialization.JsonPropertyName("format")]
public string FormatString { get; set; } = string.Empty;
}
public class ModifiedTimeFieldProperty
{
/// <summary>
/// 获取或设置日期格式字符串。
/// </summary>
[Newtonsoft.Json.JsonProperty("format")]
[System.Text.Json.Serialization.JsonPropertyName("format")]
public string FormatString { get; set; } = string.Empty;
}
public class ProgressFieldProperty
{
/// <summary>
/// 获取或设置小数点的位数。
/// </summary>
[Newtonsoft.Json.JsonProperty("decimal_places")]
[System.Text.Json.Serialization.JsonPropertyName("decimal_places")]
public int DecimalPlaces { get; set; }
}
public class SingleSelectFieldProperty
{
public static class Types
{
public class Option : SelectFieldProperty.Types.Option
{
}
}
/// <summary>
/// 获取或设置是否允许填写时新增选项。
/// </summary>
[Newtonsoft.Json.JsonProperty("is_quick_add")]
[System.Text.Json.Serialization.JsonPropertyName("is_quick_add")]
public bool IsQuickAdd { get; set; }
/// <summary>
/// 获取或设置选项列表。
/// </summary>
[Newtonsoft.Json.JsonProperty("options")]
[System.Text.Json.Serialization.JsonPropertyName("options")]
public IList<Types.Option> OptionList { get; set; } = new List<Types.Option>();
}
public class ReferenceFieldProperty
{
/// <summary>
/// 获取或设置视图 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("view_id")]
[System.Text.Json.Serialization.JsonPropertyName("view_id")]
public string Viewid { get; set; } = string.Empty;
/// <summary>
/// 获取或设置关联的子表 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("sub_id")]
[System.Text.Json.Serialization.JsonPropertyName("sub_id")]
public string? SheetId { get; set; }
/// <summary>
/// 获取或设置关联的字段 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("field_id")]
[System.Text.Json.Serialization.JsonPropertyName("field_id")]
public string? FieldId { get; set; }
/// <summary>
/// 获取或设置是否允许多选。
/// </summary>
[Newtonsoft.Json.JsonProperty("is_multiple")]
[System.Text.Json.Serialization.JsonPropertyName("is_multiple")]
public bool IsMultiple { get; set; }
}
public class LocationFieldProperty
{
/// <summary>
/// 获取或设置输入类型。
/// </summary>
[Newtonsoft.Json.JsonProperty("input_type")]
[System.Text.Json.Serialization.JsonPropertyName("input_type")]
public string InputType { get; set; } = string.Empty;
}
public class AutoNumberFieldProperty
{
public static class Types
{
public class Rule
{
/// <summary>
/// 获取或设置规则类型。
/// </summary>
[Newtonsoft.Json.JsonProperty("type")]
[System.Text.Json.Serialization.JsonPropertyName("type")]
public string Type { get; set; } = string.Empty;
/// <summary>
/// 获取或设置值。
/// </summary>
[Newtonsoft.Json.JsonProperty("value")]
[System.Text.Json.Serialization.JsonPropertyName("value")]
public string Value { get; set; } = string.Empty;
}
}
/// <summary>
/// 获取或设置输入类型。
/// </summary>
[Newtonsoft.Json.JsonProperty("input_type")]
[System.Text.Json.Serialization.JsonPropertyName("input_type")]
public string InputType { get; set; } = string.Empty;
/// <summary>
/// 获取或设置自定义规则列表。
/// </summary>
[Newtonsoft.Json.JsonProperty("rules")]
[System.Text.Json.Serialization.JsonPropertyName("rules")]
public IList<Types.Rule>? RuleList { get; set; }
/// <summary>
/// 获取或设置是否应用于已有编号。
/// </summary>
[Newtonsoft.Json.JsonProperty("reformat_existing_record")]
[System.Text.Json.Serialization.JsonPropertyName("reformat_existing_record")]
public bool IsReformatExistingRecord { get; set; }
}
public class CurrencyFieldProperty
{
/// <summary>
/// 获取或设置货币类型。
/// </summary>
[Newtonsoft.Json.JsonProperty("currency_type")]
[System.Text.Json.Serialization.JsonPropertyName("currency_type")]
public string CurrencyType { get; set; } = string.Empty;
/// <summary>
/// 获取或设置小数点的位数。
/// </summary>
[Newtonsoft.Json.JsonProperty("decimal_places")]
[System.Text.Json.Serialization.JsonPropertyName("decimal_places")]
public int DecimalPlaces { get; set; }
/// <summary>
/// 获取或设置是否使用千位符。
/// </summary>
[Newtonsoft.Json.JsonProperty("use_separate")]
[System.Text.Json.Serialization.JsonPropertyName("use_separate")]
public bool IsUseSeparate { get; set; }
}
public class GroupChatFieldProperty
{
/// <summary>
/// 获取或设置是否允许多个群聊。
/// </summary>
[Newtonsoft.Json.JsonProperty("allow_multiple")]
[System.Text.Json.Serialization.JsonPropertyName("allow_multiple")]
public bool IsAllowMultiple { get; set; }
}
}
/// <summary>
/// 获取或设置字段名称。
/// </summary>
[Newtonsoft.Json.JsonProperty("field_title")]
[System.Text.Json.Serialization.JsonPropertyName("field_title")]
public string Title { get; set; } = string.Empty;
/// <summary>
/// 获取或设置字段类型。
/// </summary>
[Newtonsoft.Json.JsonProperty("field_type")]
[System.Text.Json.Serialization.JsonPropertyName("field_type")]
public string Type { get; set; } = string.Empty;
/// <summary>
/// 获取或设置文本类型的字段属性。
/// </summary>
[Newtonsoft.Json.JsonProperty("property_text")]
[System.Text.Json.Serialization.JsonPropertyName("property_text")]
public Types.TextFieldProperty? PropertyAsText { get; set; }
/// <summary>
/// 获取或设置数字类型的字段属性。
/// </summary>
[Newtonsoft.Json.JsonProperty("property_number")]
[System.Text.Json.Serialization.JsonPropertyName("property_number")]
public Types.NumberFieldProperty? PropertyAsNumber { get; set; }
/// <summary>
/// 获取或设置复选框类型的字段属性。
/// </summary>
[Newtonsoft.Json.JsonProperty("property_checkbox")]
[System.Text.Json.Serialization.JsonPropertyName("property_checkbox")]
public Types.CheckboxFieldProperty? PropertyAsCheckbox { get; set; }
/// <summary>
/// 获取或设置日期类型的字段属性。
/// </summary>
[Newtonsoft.Json.JsonProperty("property_date_time")]
[System.Text.Json.Serialization.JsonPropertyName("property_date_time")]
public Types.DateTimeFieldProperty? PropertyAsDateTime { get; set; }
/// <summary>
/// 获取或设置文件类型的字段属性。
/// </summary>
[Newtonsoft.Json.JsonProperty("property_attachment")]
[System.Text.Json.Serialization.JsonPropertyName("property_attachment")]
public Types.AttachmentFieldProperty? PropertyAsAttachment { get; set; }
/// <summary>
/// 获取或设置人员类型的字段属性。
/// </summary>
[Newtonsoft.Json.JsonProperty("property_user")]
[System.Text.Json.Serialization.JsonPropertyName("property_user")]
public Types.UserFieldProperty? PropertyAsUser { get; set; }
/// <summary>
/// 获取或设置超链接类型的字段属性。
/// </summary>
[Newtonsoft.Json.JsonProperty("property_url")]
[System.Text.Json.Serialization.JsonPropertyName("property_url")]
public Types.UrlFieldProperty? PropertyAsUrl { get; set; }
/// <summary>
/// 获取或设置多选类型的字段属性。
/// </summary>
[Newtonsoft.Json.JsonProperty("property_select")]
[System.Text.Json.Serialization.JsonPropertyName("property_select")]
public Types.SelectFieldProperty? PropertyAsSelect { get; set; }
/// <summary>
/// 获取或设置创建时间类型的字段属性。
/// </summary>
[Newtonsoft.Json.JsonProperty("property_created_time")]
[System.Text.Json.Serialization.JsonPropertyName("property_created_time")]
public Types.CreatedTimeFieldProperty? PropertyAsCreatedTime { get; set; }
/// <summary>
/// 获取或设置最后编辑时间类型的字段属性。
/// </summary>
[Newtonsoft.Json.JsonProperty("property_modified_time")]
[System.Text.Json.Serialization.JsonPropertyName("property_modified_time")]
public Types.ModifiedTimeFieldProperty? PropertyAsModifiedTime { get; set; }
/// <summary>
/// 获取或设置进度类型的字段属性。
/// </summary>
[Newtonsoft.Json.JsonProperty("property_progress")]
[System.Text.Json.Serialization.JsonPropertyName("property_progress")]
public Types.ProgressFieldProperty? PropertyAsProgress { get; set; }
/// <summary>
/// 获取或设置单选类型的字段属性。
/// </summary>
[Newtonsoft.Json.JsonProperty("property_single_select")]
[System.Text.Json.Serialization.JsonPropertyName("property_single_select")]
public Types.SingleSelectFieldProperty? PropertyAsSingleSelect { get; set; }
/// <summary>
/// 获取或设置引用类型的字段属性。
/// </summary>
[Newtonsoft.Json.JsonProperty("property_reference")]
[System.Text.Json.Serialization.JsonPropertyName("property_reference")]
public Types.ReferenceFieldProperty? PropertyAsReference { get; set; }
/// <summary>
/// 获取或设置地理位置类型的字段属性。
/// </summary>
[Newtonsoft.Json.JsonProperty("property_location")]
[System.Text.Json.Serialization.JsonPropertyName("property_location")]
public Types.LocationFieldProperty? PropertyAsLocation { get; set; }
/// <summary>
/// 获取或设置自动编号类型的字段属性。
/// </summary>
[Newtonsoft.Json.JsonProperty("property_auto_number")]
[System.Text.Json.Serialization.JsonPropertyName("property_auto_number")]
public Types.AutoNumberFieldProperty? PropertyAsAutoNumber { get; set; }
/// <summary>
/// 获取或设置货币类型的字段属性。
/// </summary>
[Newtonsoft.Json.JsonProperty("property_currency")]
[System.Text.Json.Serialization.JsonPropertyName("property_currency")]
public Types.CurrencyFieldProperty? PropertyAsCurrency { get; set; }
/// <summary>
/// 获取或设置群类型的字段属性。
/// </summary>
[Newtonsoft.Json.JsonProperty("property_ww_group")]
[System.Text.Json.Serialization.JsonPropertyName("property_ww_group")]
public Types.GroupChatFieldProperty? PropertyAsGroupChat { get; set; }
}
}
/// <summary>
/// 获取或设置文档 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("docid")]
[System.Text.Json.Serialization.JsonPropertyName("docid")]
public string DocumentId { get; set; } = string.Empty;
/// <summary>
/// 获取或设置子表 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("sheet_id")]
[System.Text.Json.Serialization.JsonPropertyName("sheet_id")]
public string SheetId { get; set; } = string.Empty;
/// <summary>
/// 获取或设置字段列表。
/// </summary>
[Newtonsoft.Json.JsonProperty("fields")]
[System.Text.Json.Serialization.JsonPropertyName("fields")]
public IList<Types.Field> FieldList { get; set; } = new List<Types.Field>();
}
}

View File

@@ -0,0 +1,42 @@
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
{
/// <summary>
/// <para>表示 [POST] /cgi-bin/wedoc/smartsheet/add_fields 接口的响应。</para>
/// </summary>
public class CgibinWedocSmartSheetAddFieldsResponse : WechatWorkResponse
{
public static class Types
{
public class Field
{
/// <summary>
/// 获取或设置字段 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("field_id")]
[System.Text.Json.Serialization.JsonPropertyName("field_id")]
public string FieldId { get; set; } = default!;
/// <summary>
/// 获取或设置字段名称。
/// </summary>
[Newtonsoft.Json.JsonProperty("field_title")]
[System.Text.Json.Serialization.JsonPropertyName("field_title")]
public string Title { get; set; } = default!;
/// <summary>
/// 获取或设置字段类型。
/// </summary>
[Newtonsoft.Json.JsonProperty("field_type")]
[System.Text.Json.Serialization.JsonPropertyName("field_type")]
public string Type { get; set; } = default!;
}
}
/// <summary>
/// 获取或设置字段列表。
/// </summary>
[Newtonsoft.Json.JsonProperty("fields")]
[System.Text.Json.Serialization.JsonPropertyName("fields")]
public Types.Field[] FieldList { get; set; } = default!;
}
}

View File

@@ -0,0 +1,51 @@
using System.Collections.Generic;
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
{
/// <summary>
/// <para>表示 [POST] /cgi-bin/wedoc/smartsheet/add_records 接口的请求。</para>
/// </summary>
public class CgibinWedocSmartSheetAddRecordsRequest : WechatWorkRequest
{
public static class Types
{
public class Record
{
/// <summary>
/// 获取或设置单元格值。
/// </summary>
[Newtonsoft.Json.JsonProperty("values")]
[System.Text.Json.Serialization.JsonPropertyName("values")]
public IDictionary<string, object> Values { get; set; } = new Dictionary<string, object>();
}
}
/// <summary>
/// 获取或设置文档 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("docid")]
[System.Text.Json.Serialization.JsonPropertyName("docid")]
public string DocumentId { get; set; } = string.Empty;
/// <summary>
/// 获取或设置子表 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("sheet_id")]
[System.Text.Json.Serialization.JsonPropertyName("sheet_id")]
public string SheetId { get; set; } = string.Empty;
/// <summary>
/// 获取或设置单元格键类型。
/// </summary>
[Newtonsoft.Json.JsonProperty("key_type")]
[System.Text.Json.Serialization.JsonPropertyName("key_type")]
public string? KeyType { get; set; }
/// <summary>
/// 获取或设置记录列表。
/// </summary>
[Newtonsoft.Json.JsonProperty("records")]
[System.Text.Json.Serialization.JsonPropertyName("records")]
public IList<Types.Record> RecordList { get; set; } = new List<Types.Record>();
}
}

View File

@@ -0,0 +1,28 @@
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
{
/// <summary>
/// <para>表示 [POST] /cgi-bin/wedoc/smartsheet/add_records 接口的响应。</para>
/// </summary>
public class CgibinWedocSmartSheetAddRecordsResponse : WechatWorkResponse
{
public static class Types
{
public class Record
{
/// <summary>
/// 获取或设置记录 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("record_id")]
[System.Text.Json.Serialization.JsonPropertyName("record_id")]
public string RecordId { get; set; } = default!;
}
}
/// <summary>
/// 获取或设置记录列表。
/// </summary>
[Newtonsoft.Json.JsonProperty("records")]
[System.Text.Json.Serialization.JsonPropertyName("records")]
public Types.Record[] RecordList { get; set; } = default!;
}
}

View File

@@ -0,0 +1,42 @@
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
{
/// <summary>
/// <para>表示 [POST] /cgi-bin/wedoc/smartsheet/add_sheet 接口的请求。</para>
/// </summary>
public class CgibinWedocSmartSheetAddSheetRequest : WechatWorkRequest
{
public static class Types
{
public class Sheet
{
/// <summary>
/// 获取或设置子表名称。
/// </summary>
[Newtonsoft.Json.JsonProperty("title")]
[System.Text.Json.Serialization.JsonPropertyName("title")]
public string? Title { get; set; }
/// <summary>
/// 获取或设置子表下标。
/// </summary>
[Newtonsoft.Json.JsonProperty("index")]
[System.Text.Json.Serialization.JsonPropertyName("index")]
public int Index { get; set; }
}
}
/// <summary>
/// 获取或设置文档 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("docid")]
[System.Text.Json.Serialization.JsonPropertyName("docid")]
public string DocumentId { get; set; } = string.Empty;
/// <summary>
/// 获取或设置子表信息。
/// </summary>
[Newtonsoft.Json.JsonProperty("properties")]
[System.Text.Json.Serialization.JsonPropertyName("properties")]
public Types.Sheet Sheet { get; set; } = new Types.Sheet();
}
}

View File

@@ -0,0 +1,42 @@
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
{
/// <summary>
/// <para>表示 [POST] /cgi-bin/wedoc/smartsheet/add_sheet 接口的响应。</para>
/// </summary>
public class CgibinWedocSmartSheetAddSheetResponse : WechatWorkResponse
{
public static class Types
{
public class Sheet
{
/// <summary>
/// 获取或设置子表 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("sheet_id")]
[System.Text.Json.Serialization.JsonPropertyName("sheet_id")]
public string SheetId { get; set; } = default!;
/// <summary>
/// 获取或设置子表名称。
/// </summary>
[Newtonsoft.Json.JsonProperty("title")]
[System.Text.Json.Serialization.JsonPropertyName("title")]
public string Title { get; set; } = default!;
/// <summary>
/// 获取或设置子表下标。
/// </summary>
[Newtonsoft.Json.JsonProperty("index")]
[System.Text.Json.Serialization.JsonPropertyName("index")]
public int Index { get; set; }
}
}
/// <summary>
/// 获取或设置子表信息。
/// </summary>
[Newtonsoft.Json.JsonProperty("properties")]
[System.Text.Json.Serialization.JsonPropertyName("properties")]
public Types.Sheet Sheet { get; set; } = default!;
}
}

View File

@@ -0,0 +1,87 @@
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
{
/// <summary>
/// <para>表示 [POST] /cgi-bin/wedoc/smartsheet/add_view 接口的请求。</para>
/// </summary>
public class CgibinWedocSmartSheetAddViewRequest : WechatWorkRequest
{
public static class Types
{
public class GanttViewProperty
{
/// <summary>
/// 获取或设置时间条起点字段 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("start_date_field_id")]
[System.Text.Json.Serialization.JsonPropertyName("start_date_field_id")]
public string StartDateFieldId { get; set; } = string.Empty;
/// <summary>
/// 获取或设置时间条终点字段 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("end_date_field_id")]
[System.Text.Json.Serialization.JsonPropertyName("end_date_field_id")]
public string EndDateFieldId { get; set; } = string.Empty;
}
public class CalendarViewProperty
{
/// <summary>
/// 获取或设置时间条起点字段 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("start_date_field_id")]
[System.Text.Json.Serialization.JsonPropertyName("start_date_field_id")]
public string StartDateFieldId { get; set; } = string.Empty;
/// <summary>
/// 获取或设置时间条终点字段 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("end_date_field_id")]
[System.Text.Json.Serialization.JsonPropertyName("end_date_field_id")]
public string EndDateFieldId { get; set; } = string.Empty;
}
}
/// <summary>
/// 获取或设置文档 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("docid")]
[System.Text.Json.Serialization.JsonPropertyName("docid")]
public string DocumentId { get; set; } = string.Empty;
/// <summary>
/// 获取或设置子表 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("sheet_id")]
[System.Text.Json.Serialization.JsonPropertyName("sheet_id")]
public string SheetId { get; set; } = string.Empty;
/// <summary>
/// 获取或设置视图名称。
/// </summary>
[Newtonsoft.Json.JsonProperty("view_title")]
[System.Text.Json.Serialization.JsonPropertyName("view_title")]
public string ViewTitle { get; set; } = string.Empty;
/// <summary>
/// 获取或设置视图类型。
/// </summary>
[Newtonsoft.Json.JsonProperty("view_type")]
[System.Text.Json.Serialization.JsonPropertyName("view_type")]
public string ViewType { get; set; } = string.Empty;
/// <summary>
/// 获取或设置甘特视图属性信息。
/// </summary>
[Newtonsoft.Json.JsonProperty("property_gantt")]
[System.Text.Json.Serialization.JsonPropertyName("property_gantt")]
public Types.GanttViewProperty? ViewPropertyAsGantt { get; set; }
/// <summary>
/// 获取或设置日历视图属性信息。
/// </summary>
[Newtonsoft.Json.JsonProperty("property_calendar")]
[System.Text.Json.Serialization.JsonPropertyName("property_calendar")]
public Types.CalendarViewProperty? ViewPropertyAsCalendar { get; set; }
}
}

View File

@@ -0,0 +1,42 @@
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
{
/// <summary>
/// <para>表示 [POST] /cgi-bin/wedoc/smartsheet/add_view 接口的响应。</para>
/// </summary>
public class CgibinWedocSmartSheetAddViewResponse : WechatWorkResponse
{
public static class Types
{
public class View
{
/// <summary>
/// 获取或设置视图 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("view_id")]
[System.Text.Json.Serialization.JsonPropertyName("view_id")]
public string ViewId { get; set; } = default!;
/// <summary>
/// 获取或设置视图名称。
/// </summary>
[Newtonsoft.Json.JsonProperty("view_title")]
[System.Text.Json.Serialization.JsonPropertyName("view_title")]
public string Title { get; set; } = default!;
/// <summary>
/// 获取或设置视图类型。
/// </summary>
[Newtonsoft.Json.JsonProperty("view_type")]
[System.Text.Json.Serialization.JsonPropertyName("view_type")]
public string Type { get; set; } = default!;
}
}
/// <summary>
/// 获取或设置视图信息。
/// </summary>
[Newtonsoft.Json.JsonProperty("view")]
[System.Text.Json.Serialization.JsonPropertyName("view")]
public Types.View View { get; set; } = default!;
}
}

View File

@@ -0,0 +1,31 @@
using System.Collections.Generic;
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
{
/// <summary>
/// <para>表示 [POST] /cgi-bin/wedoc/smartsheet/delete_fields 接口的请求。</para>
/// </summary>
public class CgibinWedocSmartSheetDeleteFieldsRequest : WechatWorkRequest
{
/// <summary>
/// 获取或设置文档 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("docid")]
[System.Text.Json.Serialization.JsonPropertyName("docid")]
public string DocumentId { get; set; } = string.Empty;
/// <summary>
/// 获取或设置子表 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("sheet_id")]
[System.Text.Json.Serialization.JsonPropertyName("sheet_id")]
public string SheetId { get; set; } = string.Empty;
/// <summary>
/// 获取或设置字段 ID 列表。
/// </summary>
[Newtonsoft.Json.JsonProperty("field_ids")]
[System.Text.Json.Serialization.JsonPropertyName("field_ids")]
public IList<string> FieldIdList { get; set; } = new List<string>();
}
}

View File

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

View File

@@ -0,0 +1,31 @@
using System.Collections.Generic;
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
{
/// <summary>
/// <para>表示 [POST] /cgi-bin/wedoc/smartsheet/delete_records 接口的请求。</para>
/// </summary>
public class CgibinWedocSmartSheetDeleteRecordsRequest : WechatWorkRequest
{
/// <summary>
/// 获取或设置文档 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("docid")]
[System.Text.Json.Serialization.JsonPropertyName("docid")]
public string DocumentId { get; set; } = string.Empty;
/// <summary>
/// 获取或设置子表 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("sheet_id")]
[System.Text.Json.Serialization.JsonPropertyName("sheet_id")]
public string SheetId { get; set; } = string.Empty;
/// <summary>
/// 获取或设置记录 ID 列表。
/// </summary>
[Newtonsoft.Json.JsonProperty("record_ids")]
[System.Text.Json.Serialization.JsonPropertyName("record_ids")]
public IList<string> RecordIdList { get; set; } = new List<string>();
}
}

View File

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

View File

@@ -0,0 +1,22 @@
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
{
/// <summary>
/// <para>表示 [POST] /cgi-bin/wedoc/smartsheet/delete_sheet 接口的请求。</para>
/// </summary>
public class CgibinWedocSmartSheetDeleteSheetRequest : WechatWorkRequest
{
/// <summary>
/// 获取或设置文档 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("docid")]
[System.Text.Json.Serialization.JsonPropertyName("docid")]
public string DocumentId { get; set; } = string.Empty;
/// <summary>
/// 获取或设置子表 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("sheet_id")]
[System.Text.Json.Serialization.JsonPropertyName("sheet_id")]
public string SheetId { get; set; } = string.Empty;
}
}

View File

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

View File

@@ -0,0 +1,31 @@
using System.Collections.Generic;
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
{
/// <summary>
/// <para>表示 [POST] /cgi-bin/wedoc/smartsheet/delete_views 接口的请求。</para>
/// </summary>
public class CgibinWedocSmartSheetDeleteViewsRequest : WechatWorkRequest
{
/// <summary>
/// 获取或设置文档 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("docid")]
[System.Text.Json.Serialization.JsonPropertyName("docid")]
public string DocumentId { get; set; } = string.Empty;
/// <summary>
/// 获取或设置子表 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("sheet_id")]
[System.Text.Json.Serialization.JsonPropertyName("sheet_id")]
public string SheetId { get; set; } = string.Empty;
/// <summary>
/// 获取或设置视图 ID 列表。
/// </summary>
[Newtonsoft.Json.JsonProperty("view_ids")]
[System.Text.Json.Serialization.JsonPropertyName("view_ids")]
public IList<string> ViewIdList { get; set; } = new List<string>();
}
}

View File

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

View File

@@ -0,0 +1,59 @@
using System.Collections.Generic;
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
{
/// <summary>
/// <para>表示 [POST] /cgi-bin/wedoc/smartsheet/get_fields 接口的请求。</para>
/// </summary>
public class CgibinWedocSmartSheetGetFieldsRequest : WechatWorkRequest
{
/// <summary>
/// 获取或设置文档 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("docid")]
[System.Text.Json.Serialization.JsonPropertyName("docid")]
public string DocumentId { get; set; } = string.Empty;
/// <summary>
/// 获取或设置子表 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("sheet_id")]
[System.Text.Json.Serialization.JsonPropertyName("sheet_id")]
public string SheetId { get; set; } = string.Empty;
/// <summary>
/// 获取或设置视图 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("view_id")]
[System.Text.Json.Serialization.JsonPropertyName("view_id")]
public string? ViewId { get; set; }
/// <summary>
/// 获取或设置字段 ID 列表。
/// </summary>
[Newtonsoft.Json.JsonProperty("field_ids")]
[System.Text.Json.Serialization.JsonPropertyName("field_ids")]
public IList<string>? FieldIdList { get; set; }
/// <summary>
/// 获取或设置字段标题列表。
/// </summary>
[Newtonsoft.Json.JsonProperty("field_titles")]
[System.Text.Json.Serialization.JsonPropertyName("field_titles")]
public IList<string>? FieldTitleList { get; set; }
/// <summary>
/// 获取或设置分页起始位置。
/// </summary>
[Newtonsoft.Json.JsonProperty("offset")]
[System.Text.Json.Serialization.JsonPropertyName("offset")]
public int? Offset { get; set; }
/// <summary>
/// 获取或设置分页每页数量。
/// </summary>
[Newtonsoft.Json.JsonProperty("limit")]
[System.Text.Json.Serialization.JsonPropertyName("limit")]
public int? Limit { get; set; }
}
}

View File

@@ -0,0 +1,480 @@
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
{
/// <summary>
/// <para>表示 [POST] /cgi-bin/wedoc/smartsheet/get_fields 接口的响应。</para>
/// </summary>
public class CgibinWedocSmartSheetGetFieldsResponse : WechatWorkResponse
{
public static class Types
{
public class Field
{
public static class Types
{
public class TextFieldProperty
{
}
public class NumberFieldProperty
{
/// <summary>
/// 获取或设置小数点的位数。
/// </summary>
[Newtonsoft.Json.JsonProperty("decimal_places")]
[System.Text.Json.Serialization.JsonPropertyName("decimal_places")]
public int DecimalPlaces { get; set; }
/// <summary>
/// 获取或设置是否使用千位符。
/// </summary>
[Newtonsoft.Json.JsonProperty("use_separate")]
[System.Text.Json.Serialization.JsonPropertyName("use_separate")]
public bool IsUseSeparate { get; set; }
}
public class CheckboxFieldProperty
{
/// <summary>
/// 获取或设置是否默认勾选。
/// </summary>
[Newtonsoft.Json.JsonProperty("checked")]
[System.Text.Json.Serialization.JsonPropertyName("checked")]
public bool IsChecked { get; set; }
}
public class DateTimeFieldProperty
{
/// <summary>
/// 获取或设置日期格式字符串。
/// </summary>
[Newtonsoft.Json.JsonProperty("format")]
[System.Text.Json.Serialization.JsonPropertyName("format")]
public string FormatString { get; set; } = default!;
/// <summary>
/// 获取或设置是否自动填充。
/// </summary>
[Newtonsoft.Json.JsonProperty("auto_fill")]
[System.Text.Json.Serialization.JsonPropertyName("auto_fill")]
public bool IsAutoFill { get; set; }
}
public class AttachmentFieldProperty
{
/// <summary>
/// 获取或设置显示模式。
/// </summary>
[Newtonsoft.Json.JsonProperty("display_mode")]
[System.Text.Json.Serialization.JsonPropertyName("display_mode")]
public string DisplayMode { get; set; } = default!;
}
public class UserFieldProperty
{
/// <summary>
/// 获取或设置是否允许添加多个。
/// </summary>
[Newtonsoft.Json.JsonProperty("is_multiple")]
[System.Text.Json.Serialization.JsonPropertyName("is_multiple")]
public bool IsMultiple { get; set; }
/// <summary>
/// 获取或设置是否通知用户。
/// </summary>
[Newtonsoft.Json.JsonProperty("is_notified")]
[System.Text.Json.Serialization.JsonPropertyName("is_notified")]
public bool IsNotified { get; set; }
}
public class UrlFieldProperty
{
/// <summary>
/// 获取或设置超链接展示样式。
/// </summary>
[Newtonsoft.Json.JsonProperty("type")]
[System.Text.Json.Serialization.JsonPropertyName("type")]
public string Type { get; set; } = default!;
}
public class SelectFieldProperty
{
public static class Types
{
public class Option
{
/// <summary>
/// 获取或设置选项 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("id")]
[System.Text.Json.Serialization.JsonPropertyName("id")]
public string Id { get; set; } = default!;
/// <summary>
/// 获取或设置选项内容。
/// </summary>
[Newtonsoft.Json.JsonProperty("text")]
[System.Text.Json.Serialization.JsonPropertyName("text")]
public string Text { get; set; } = default!;
/// <summary>
/// 获取或设置选项颜色。
/// </summary>
[Newtonsoft.Json.JsonProperty("style")]
[System.Text.Json.Serialization.JsonPropertyName("style")]
public int Style { get; set; }
}
}
/// <summary>
/// 获取或设置是否允许填写时新增选项。
/// </summary>
[Newtonsoft.Json.JsonProperty("is_quick_add")]
[System.Text.Json.Serialization.JsonPropertyName("is_quick_add")]
public bool IsQuickAdd { get; set; }
/// <summary>
/// 获取或设置选项列表。
/// </summary>
[Newtonsoft.Json.JsonProperty("options")]
[System.Text.Json.Serialization.JsonPropertyName("options")]
public Types.Option[] OptionList { get; set; } = default!;
}
public class CreatedTimeFieldProperty
{
/// <summary>
/// 获取或设置日期格式字符串。
/// </summary>
[Newtonsoft.Json.JsonProperty("format")]
[System.Text.Json.Serialization.JsonPropertyName("format")]
public string FormatString { get; set; } = default!;
}
public class ModifiedTimeFieldProperty
{
/// <summary>
/// 获取或设置日期格式字符串。
/// </summary>
[Newtonsoft.Json.JsonProperty("format")]
[System.Text.Json.Serialization.JsonPropertyName("format")]
public string FormatString { get; set; } = default!;
}
public class ProgressFieldProperty
{
/// <summary>
/// 获取或设置小数点的位数。
/// </summary>
[Newtonsoft.Json.JsonProperty("decimal_places")]
[System.Text.Json.Serialization.JsonPropertyName("decimal_places")]
public int DecimalPlaces { get; set; }
}
public class SingleSelectFieldProperty
{
public static class Types
{
public class Option : SelectFieldProperty.Types.Option
{
}
}
/// <summary>
/// 获取或设置是否允许填写时新增选项。
/// </summary>
[Newtonsoft.Json.JsonProperty("is_quick_add")]
[System.Text.Json.Serialization.JsonPropertyName("is_quick_add")]
public bool IsQuickAdd { get; set; }
/// <summary>
/// 获取或设置选项列表。
/// </summary>
[Newtonsoft.Json.JsonProperty("options")]
[System.Text.Json.Serialization.JsonPropertyName("options")]
public Types.Option[] OptionList { get; set; } = default!;
}
public class ReferenceFieldProperty
{
/// <summary>
/// 获取或设置视图 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("view_id")]
[System.Text.Json.Serialization.JsonPropertyName("view_id")]
public string Viewid { get; set; } = default!;
/// <summary>
/// 获取或设置关联的子表 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("sub_id")]
[System.Text.Json.Serialization.JsonPropertyName("sub_id")]
public string? SheetId { get; set; }
/// <summary>
/// 获取或设置关联的字段 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("field_id")]
[System.Text.Json.Serialization.JsonPropertyName("field_id")]
public string? FieldId { get; set; }
/// <summary>
/// 获取或设置是否允许多选。
/// </summary>
[Newtonsoft.Json.JsonProperty("is_multiple")]
[System.Text.Json.Serialization.JsonPropertyName("is_multiple")]
public bool IsMultiple { get; set; }
}
public class LocationFieldProperty
{
/// <summary>
/// 获取或设置输入类型。
/// </summary>
[Newtonsoft.Json.JsonProperty("input_type")]
[System.Text.Json.Serialization.JsonPropertyName("input_type")]
public string InputType { get; set; } = default!;
}
public class AutoNumberFieldProperty
{
public static class Types
{
public class Rule
{
/// <summary>
/// 获取或设置规则类型。
/// </summary>
[Newtonsoft.Json.JsonProperty("type")]
[System.Text.Json.Serialization.JsonPropertyName("type")]
public string Type { get; set; } = default!;
/// <summary>
/// 获取或设置值。
/// </summary>
[Newtonsoft.Json.JsonProperty("value")]
[System.Text.Json.Serialization.JsonPropertyName("value")]
public string Value { get; set; } = default!;
}
}
/// <summary>
/// 获取或设置输入类型。
/// </summary>
[Newtonsoft.Json.JsonProperty("input_type")]
[System.Text.Json.Serialization.JsonPropertyName("input_type")]
public string InputType { get; set; } = default!;
/// <summary>
/// 获取或设置自定义规则列表。
/// </summary>
[Newtonsoft.Json.JsonProperty("rules")]
[System.Text.Json.Serialization.JsonPropertyName("rules")]
public Types.Rule[]? RuleList { get; set; }
/// <summary>
/// 获取或设置是否应用于已有编号。
/// </summary>
[Newtonsoft.Json.JsonProperty("reformat_existing_record")]
[System.Text.Json.Serialization.JsonPropertyName("reformat_existing_record")]
public bool IsReformatExistingRecord { get; set; }
}
public class CurrencyFieldProperty
{
/// <summary>
/// 获取或设置货币类型。
/// </summary>
[Newtonsoft.Json.JsonProperty("currency_type")]
[System.Text.Json.Serialization.JsonPropertyName("currency_type")]
public string CurrencyType { get; set; } = default!;
/// <summary>
/// 获取或设置小数点的位数。
/// </summary>
[Newtonsoft.Json.JsonProperty("decimal_places")]
[System.Text.Json.Serialization.JsonPropertyName("decimal_places")]
public int DecimalPlaces { get; set; }
/// <summary>
/// 获取或设置是否使用千位符。
/// </summary>
[Newtonsoft.Json.JsonProperty("use_separate")]
[System.Text.Json.Serialization.JsonPropertyName("use_separate")]
public bool IsUseSeparate { get; set; }
}
public class GroupChatFieldProperty
{
/// <summary>
/// 获取或设置是否允许多个群聊。
/// </summary>
[Newtonsoft.Json.JsonProperty("allow_multiple")]
[System.Text.Json.Serialization.JsonPropertyName("allow_multiple")]
public bool IsAllowMultiple { get; set; }
}
}
/// <summary>
/// 获取或设置字段 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("field_id")]
[System.Text.Json.Serialization.JsonPropertyName("field_id")]
public string FieldId { get; set; } = default!;
/// <summary>
/// 获取或设置字段名称。
/// </summary>
[Newtonsoft.Json.JsonProperty("field_title")]
[System.Text.Json.Serialization.JsonPropertyName("field_title")]
public string Title { get; set; } = default!;
/// <summary>
/// 获取或设置字段类型。
/// </summary>
[Newtonsoft.Json.JsonProperty("field_type")]
[System.Text.Json.Serialization.JsonPropertyName("field_type")]
public string Type { get; set; } = default!;
/// <summary>
/// 获取或设置文本类型的字段属性。
/// </summary>
[Newtonsoft.Json.JsonProperty("property_text")]
[System.Text.Json.Serialization.JsonPropertyName("property_text")]
public Types.TextFieldProperty? PropertyAsText { get; set; }
/// <summary>
/// 获取或设置数字类型的字段属性。
/// </summary>
[Newtonsoft.Json.JsonProperty("property_number")]
[System.Text.Json.Serialization.JsonPropertyName("property_number")]
public Types.NumberFieldProperty? PropertyAsNumber { get; set; }
/// <summary>
/// 获取或设置复选框类型的字段属性。
/// </summary>
[Newtonsoft.Json.JsonProperty("property_checkbox")]
[System.Text.Json.Serialization.JsonPropertyName("property_checkbox")]
public Types.CheckboxFieldProperty? PropertyAsCheckbox { get; set; }
/// <summary>
/// 获取或设置日期类型的字段属性。
/// </summary>
[Newtonsoft.Json.JsonProperty("property_date_time")]
[System.Text.Json.Serialization.JsonPropertyName("property_date_time")]
public Types.DateTimeFieldProperty? PropertyAsDateTime { get; set; }
/// <summary>
/// 获取或设置文件类型的字段属性。
/// </summary>
[Newtonsoft.Json.JsonProperty("property_attachment")]
[System.Text.Json.Serialization.JsonPropertyName("property_attachment")]
public Types.AttachmentFieldProperty? PropertyAsAttachment { get; set; }
/// <summary>
/// 获取或设置人员类型的字段属性。
/// </summary>
[Newtonsoft.Json.JsonProperty("property_user")]
[System.Text.Json.Serialization.JsonPropertyName("property_user")]
public Types.UserFieldProperty? PropertyAsUser { get; set; }
/// <summary>
/// 获取或设置超链接类型的字段属性。
/// </summary>
[Newtonsoft.Json.JsonProperty("property_url")]
[System.Text.Json.Serialization.JsonPropertyName("property_url")]
public Types.UrlFieldProperty? PropertyAsUrl { get; set; }
/// <summary>
/// 获取或设置多选类型的字段属性。
/// </summary>
[Newtonsoft.Json.JsonProperty("property_select")]
[System.Text.Json.Serialization.JsonPropertyName("property_select")]
public Types.SelectFieldProperty? PropertyAsSelect { get; set; }
/// <summary>
/// 获取或设置创建时间类型的字段属性。
/// </summary>
[Newtonsoft.Json.JsonProperty("property_created_time")]
[System.Text.Json.Serialization.JsonPropertyName("property_created_time")]
public Types.CreatedTimeFieldProperty? PropertyAsCreatedTime { get; set; }
/// <summary>
/// 获取或设置最后编辑时间类型的字段属性。
/// </summary>
[Newtonsoft.Json.JsonProperty("property_modified_time")]
[System.Text.Json.Serialization.JsonPropertyName("property_modified_time")]
public Types.ModifiedTimeFieldProperty? PropertyAsModifiedTime { get; set; }
/// <summary>
/// 获取或设置进度类型的字段属性。
/// </summary>
[Newtonsoft.Json.JsonProperty("property_progress")]
[System.Text.Json.Serialization.JsonPropertyName("property_progress")]
public Types.ProgressFieldProperty? PropertyAsProgress { get; set; }
/// <summary>
/// 获取或设置单选类型的字段属性。
/// </summary>
[Newtonsoft.Json.JsonProperty("property_single_select")]
[System.Text.Json.Serialization.JsonPropertyName("property_single_select")]
public Types.SingleSelectFieldProperty? PropertyAsSingleSelect { get; set; }
/// <summary>
/// 获取或设置引用类型的字段属性。
/// </summary>
[Newtonsoft.Json.JsonProperty("property_reference")]
[System.Text.Json.Serialization.JsonPropertyName("property_reference")]
public Types.ReferenceFieldProperty? PropertyAsReference { get; set; }
/// <summary>
/// 获取或设置地理位置类型的字段属性。
/// </summary>
[Newtonsoft.Json.JsonProperty("property_location")]
[System.Text.Json.Serialization.JsonPropertyName("property_location")]
public Types.LocationFieldProperty? PropertyAsLocation { get; set; }
/// <summary>
/// 获取或设置自动编号类型的字段属性。
/// </summary>
[Newtonsoft.Json.JsonProperty("property_auto_number")]
[System.Text.Json.Serialization.JsonPropertyName("property_auto_number")]
public Types.AutoNumberFieldProperty? PropertyAsAutoNumber { get; set; }
/// <summary>
/// 获取或设置货币类型的字段属性。
/// </summary>
[Newtonsoft.Json.JsonProperty("property_currency")]
[System.Text.Json.Serialization.JsonPropertyName("property_currency")]
public Types.CurrencyFieldProperty? PropertyAsCurrency { get; set; }
/// <summary>
/// 获取或设置群类型的字段属性。
/// </summary>
[Newtonsoft.Json.JsonProperty("property_ww_group")]
[System.Text.Json.Serialization.JsonPropertyName("property_ww_group")]
public Types.GroupChatFieldProperty? PropertyAsGroupChat { get; set; }
}
}
/// <summary>
/// 获取或设置字段列表。
/// </summary>
[Newtonsoft.Json.JsonProperty("fields")]
[System.Text.Json.Serialization.JsonPropertyName("fields")]
public Types.Field[] FieldList { get; set; } = default!;
/// <summary>
/// 获取或设置总数量。
/// </summary>
[Newtonsoft.Json.JsonProperty("total")]
[System.Text.Json.Serialization.JsonPropertyName("total")]
public int TotalCount { get; set; }
/// <summary>
/// 获取或设置下一页起始位置。
/// </summary>
[Newtonsoft.Json.JsonProperty("next")]
[System.Text.Json.Serialization.JsonPropertyName("next")]
public int? NextOffset { get; set; }
}
}

View File

@@ -0,0 +1,100 @@
using System.Collections.Generic;
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
{
/// <summary>
/// <para>表示 [POST] /cgi-bin/wedoc/smartsheet/get_records 接口的请求。</para>
/// </summary>
public class CgibinWedocSmartSheetGetRecordsRequest : WechatWorkRequest
{
public static class Types
{
public class SortField
{
/// <summary>
/// 获取或设置字段标题。
/// </summary>
[Newtonsoft.Json.JsonProperty("field_title")]
[System.Text.Json.Serialization.JsonPropertyName("field_title")]
public string FieldTitle { get; set; } = string.Empty;
/// <summary>
/// 获取或设置是否降序。
/// </summary>
[Newtonsoft.Json.JsonProperty("desc")]
[System.Text.Json.Serialization.JsonPropertyName("desc")]
public bool IsDescend { get; set; }
}
}
/// <summary>
/// 获取或设置文档 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("docid")]
[System.Text.Json.Serialization.JsonPropertyName("docid")]
public string DocumentId { get; set; } = string.Empty;
/// <summary>
/// 获取或设置子表 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("sheet_id")]
[System.Text.Json.Serialization.JsonPropertyName("sheet_id")]
public string SheetId { get; set; } = string.Empty;
/// <summary>
/// 获取或设置视图 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("view_id")]
[System.Text.Json.Serialization.JsonPropertyName("view_id")]
public string? ViewId { get; set; }
/// <summary>
/// 获取或设置记录 ID 列表。
/// </summary>
[Newtonsoft.Json.JsonProperty("record_ids")]
[System.Text.Json.Serialization.JsonPropertyName("record_ids")]
public IList<string>? RecordIdList { get; set; }
/// <summary>
/// 获取或设置字段 ID 列表。
/// </summary>
[Newtonsoft.Json.JsonProperty("field_ids")]
[System.Text.Json.Serialization.JsonPropertyName("field_ids")]
public IList<string>? FieldIdList { get; set; }
/// <summary>
/// 获取或设置字段标题列表。
/// </summary>
[Newtonsoft.Json.JsonProperty("field_titles")]
[System.Text.Json.Serialization.JsonPropertyName("field_titles")]
public IList<string>? FieldTitleList { get; set; }
/// <summary>
/// 获取或设置单元格键类型。
/// </summary>
[Newtonsoft.Json.JsonProperty("key_type")]
[System.Text.Json.Serialization.JsonPropertyName("key_type")]
public string? KeyType { get; set; }
/// <summary>
/// 获取或设置排序字段列表。
/// </summary>
[Newtonsoft.Json.JsonProperty("sort")]
[System.Text.Json.Serialization.JsonPropertyName("sort")]
public IList<Types.SortField>? SortFieldList { get; set; }
/// <summary>
/// 获取或设置分页起始位置。
/// </summary>
[Newtonsoft.Json.JsonProperty("offset")]
[System.Text.Json.Serialization.JsonPropertyName("offset")]
public int? Offset { get; set; }
/// <summary>
/// 获取或设置分页每页数量。
/// </summary>
[Newtonsoft.Json.JsonProperty("limit")]
[System.Text.Json.Serialization.JsonPropertyName("limit")]
public int? Limit { get; set; }
}
}

View File

@@ -0,0 +1,88 @@
using System.Collections.Generic;
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
{
/// <summary>
/// <para>表示 [POST] /cgi-bin/wedoc/smartsheet/get_records 接口的响应。</para>
/// </summary>
public class CgibinWedocSmartSheetGetRecordsResponse : WechatWorkResponse
{
public static class Types
{
public class Record
{
/// <summary>
/// 获取或设置记录 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("record_id")]
[System.Text.Json.Serialization.JsonPropertyName("record_id")]
public string RecordId { get; set; } = default!;
/// <summary>
/// 获取或设置创建者名字。
/// </summary>
[Newtonsoft.Json.JsonProperty("creator_name")]
[System.Text.Json.Serialization.JsonPropertyName("creator_name")]
public string CreatorName { get; set; } = default!;
/// <summary>
/// 获取或设置最后编辑者名字。
/// </summary>
[Newtonsoft.Json.JsonProperty("updater_name")]
[System.Text.Json.Serialization.JsonPropertyName("updater_name")]
public string UpdaterName { get; set; } = default!;
/// <summary>
/// 获取或设置单元格值。
/// </summary>
[Newtonsoft.Json.JsonProperty("values")]
[System.Text.Json.Serialization.JsonPropertyName("values")]
public IDictionary<string, object> Values { get; set; } = default!;
/// <summary>
/// 获取或设置创建时间毫秒级戳。
/// </summary>
[Newtonsoft.Json.JsonProperty("create_time")]
[System.Text.Json.Serialization.JsonPropertyName("create_time")]
[System.Text.Json.Serialization.JsonNumberHandling(System.Text.Json.Serialization.JsonNumberHandling.AllowReadingFromString)]
public long CreateTimeMilliseconds { get; set; }
/// <summary>
/// 获取或设置更新时间毫秒级戳。
/// </summary>
[Newtonsoft.Json.JsonProperty("update_time")]
[System.Text.Json.Serialization.JsonPropertyName("update_time")]
[System.Text.Json.Serialization.JsonNumberHandling(System.Text.Json.Serialization.JsonNumberHandling.AllowReadingFromString)]
public long UpdateTimeMilliseconds { get; set; }
}
}
/// <summary>
/// 获取或设置记录列表。
/// </summary>
[Newtonsoft.Json.JsonProperty("records")]
[System.Text.Json.Serialization.JsonPropertyName("records")]
public Types.Record[] RecordList { get; set; } = default!;
/// <summary>
/// 获取或设置总数量。
/// </summary>
[Newtonsoft.Json.JsonProperty("total")]
[System.Text.Json.Serialization.JsonPropertyName("total")]
public int TotalCount { get; set; }
/// <summary>
/// 获取或设置下一页起始位置。
/// </summary>
[Newtonsoft.Json.JsonProperty("next")]
[System.Text.Json.Serialization.JsonPropertyName("next")]
public int? NextOffset { get; set; }
/// <summary>
/// 获取或设置是否还有更多数据。
/// </summary>
[Newtonsoft.Json.JsonProperty("has_more")]
[System.Text.Json.Serialization.JsonPropertyName("has_more")]
public bool HasMore { get; set; }
}
}

View File

@@ -0,0 +1,22 @@
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
{
/// <summary>
/// <para>表示 [POST] /cgi-bin/wedoc/smartsheet/get_sheet 接口的请求。</para>
/// </summary>
public class CgibinWedocSmartSheetGetSheetRequest : WechatWorkRequest
{
/// <summary>
/// 获取或设置文档 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("docid")]
[System.Text.Json.Serialization.JsonPropertyName("docid")]
public string DocumentId { get; set; } = string.Empty;
/// <summary>
/// 获取或设置子表 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("sheet_id")]
[System.Text.Json.Serialization.JsonPropertyName("sheet_id")]
public string? SheetId { get; set; }
}
}

View File

@@ -0,0 +1,42 @@
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
{
/// <summary>
/// <para>表示 [POST] /cgi-bin/wedoc/smartsheet/get_sheet 接口的响应。</para>
/// </summary>
public class CgibinWedocSmartSheetGetSheetResponse : WechatWorkResponse
{
public static class Types
{
public class Sheet
{
/// <summary>
/// 获取或设置子表 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("sheet_id")]
[System.Text.Json.Serialization.JsonPropertyName("sheet_id")]
public string SheetId { get; set; } = default!;
/// <summary>
/// 获取或设置子表名称。
/// </summary>
[Newtonsoft.Json.JsonProperty("title")]
[System.Text.Json.Serialization.JsonPropertyName("title")]
public string Title { get; set; } = default!;
/// <summary>
/// 获取或设置是否可见。
/// </summary>
[Newtonsoft.Json.JsonProperty("is_visible")]
[System.Text.Json.Serialization.JsonPropertyName("is_visible")]
public bool IsVisible { get; set; }
}
}
/// <summary>
/// 获取或设置子表列表。
/// </summary>
[Newtonsoft.Json.JsonProperty("sheet_list")]
[System.Text.Json.Serialization.JsonPropertyName("sheet_list")]
public Types.Sheet[] SheetList { get; set; } = default!;
}
}

View File

@@ -0,0 +1,45 @@
using System.Collections.Generic;
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
{
/// <summary>
/// <para>表示 [POST] /cgi-bin/wedoc/smartsheet/get_views 接口的请求。</para>
/// </summary>
public class CgibinWedocSmartSheetGetViewsRequest : WechatWorkRequest
{
/// <summary>
/// 获取或设置文档 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("docid")]
[System.Text.Json.Serialization.JsonPropertyName("docid")]
public string DocumentId { get; set; } = string.Empty;
/// <summary>
/// 获取或设置子表 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("sheet_id")]
[System.Text.Json.Serialization.JsonPropertyName("sheet_id")]
public string SheetId { get; set; } = string.Empty;
/// <summary>
/// 获取或设置视图 ID 列表。
/// </summary>
[Newtonsoft.Json.JsonProperty("view_ids")]
[System.Text.Json.Serialization.JsonPropertyName("view_ids")]
public IList<string>? ViewIdList { get; set; }
/// <summary>
/// 获取或设置分页起始位置。
/// </summary>
[Newtonsoft.Json.JsonProperty("offset")]
[System.Text.Json.Serialization.JsonPropertyName("offset")]
public int? Offset { get; set; }
/// <summary>
/// 获取或设置分页每页数量。
/// </summary>
[Newtonsoft.Json.JsonProperty("limit")]
[System.Text.Json.Serialization.JsonPropertyName("limit")]
public int? Limit { get; set; }
}
}

View File

@@ -0,0 +1,342 @@
using System.Collections.Generic;
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
{
/// <summary>
/// <para>表示 [POST] /cgi-bin/wedoc/smartsheet/get_views 接口的响应。</para>
/// </summary>
public class CgibinWedocSmartSheetGetViewsResponse : WechatWorkResponse
{
public static class Types
{
public class View
{
public static class Types
{
public class ViewProperty
{
public static class Types
{
public class SortSpec
{
public static class Types
{
public class SortField
{
/// <summary>
/// 获取或设置字段 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("field_id")]
[System.Text.Json.Serialization.JsonPropertyName("field_id")]
public string FieldId { get; set; } = default!;
/// <summary>
/// 获取或设置是否降序。
/// </summary>
[Newtonsoft.Json.JsonProperty("desc")]
[System.Text.Json.Serialization.JsonPropertyName("desc")]
public bool IsDescend { get; set; }
}
}
/// <summary>
/// 获取或设置排序字段列表。
/// </summary>
[Newtonsoft.Json.JsonProperty("sort_infos")]
[System.Text.Json.Serialization.JsonPropertyName("sort_infos")]
public Types.SortField[] SortFieldList { get; set; } = default!;
}
public class GroupSpec
{
public static class Types
{
public class GroupField
{
/// <summary>
/// 获取或设置字段 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("field_id")]
[System.Text.Json.Serialization.JsonPropertyName("field_id")]
public string FieldId { get; set; } = default!;
/// <summary>
/// 获取或设置是否降序。
/// </summary>
[Newtonsoft.Json.JsonProperty("desc")]
[System.Text.Json.Serialization.JsonPropertyName("desc")]
public bool IsDescend { get; set; }
}
}
/// <summary>
/// 获取或设置分组字段列表。
/// </summary>
[Newtonsoft.Json.JsonProperty("groups")]
[System.Text.Json.Serialization.JsonPropertyName("groups")]
public Types.GroupField[] GroupFieldList { get; set; } = default!;
}
public class FilterSpec
{
public static class Types
{
public class Condition
{
public static class Types
{
public class StringValue
{
/// <summary>
/// 获取或设置值。
/// </summary>
[Newtonsoft.Json.JsonProperty("value")]
[System.Text.Json.Serialization.JsonPropertyName("value")]
public string[] Value { get; set; } = default!;
}
public class NumberValue
{
/// <summary>
/// 获取或设置值。
/// </summary>
[Newtonsoft.Json.JsonProperty("value")]
[System.Text.Json.Serialization.JsonPropertyName("value")]
public decimal Value { get; set; }
}
public class BoolValue
{
/// <summary>
/// 获取或设置值。
/// </summary>
[Newtonsoft.Json.JsonProperty("value")]
[System.Text.Json.Serialization.JsonPropertyName("value")]
public bool Value { get; set; }
}
public class UserValue
{
/// <summary>
/// 获取或设置值。
/// </summary>
[Newtonsoft.Json.JsonProperty("value")]
[System.Text.Json.Serialization.JsonPropertyName("value")]
public string[] Value { get; set; } = default!;
}
public class DateTimeValue
{
public static class Types
{
public class Value
{
/// <summary>
/// 获取或设置日期类型。
/// </summary>
[Newtonsoft.Json.JsonProperty("type")]
[System.Text.Json.Serialization.JsonPropertyName("type")]
public string Type { get; set; } = default!;
/// <summary>
/// 获取或设置日期时间值。
/// </summary>
[Newtonsoft.Json.JsonProperty("value")]
[System.Text.Json.Serialization.JsonPropertyName("value")]
public string[]? DateTimes { get; set; }
}
}
/// <summary>
/// 获取或设置值。
/// </summary>
[Newtonsoft.Json.JsonProperty("value")]
[System.Text.Json.Serialization.JsonPropertyName("value")]
public Types.Value Value { get; set; } = default!;
}
}
/// <summary>
/// 获取或设置字段 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("field_id")]
[System.Text.Json.Serialization.JsonPropertyName("field_id")]
public string FieldId { get; set; } = default!;
/// <summary>
/// 获取或设置字段类型。
/// </summary>
[Newtonsoft.Json.JsonProperty("field_type")]
[System.Text.Json.Serialization.JsonPropertyName("field_type")]
public string FieldType { get; set; } = default!;
/// <summary>
/// 获取或设置判断类型。
/// </summary>
[Newtonsoft.Json.JsonProperty("operator")]
[System.Text.Json.Serialization.JsonPropertyName("operator")]
public string Operator { get; set; } = default!;
/// <summary>
/// 获取或设置文本值。
/// </summary>
[Newtonsoft.Json.JsonProperty("string_value")]
[System.Text.Json.Serialization.JsonPropertyName("string_value")]
public Types.StringValue? StringValue { get; set; }
/// <summary>
/// 获取或设置数字值。
/// </summary>
[Newtonsoft.Json.JsonProperty("number_value")]
[System.Text.Json.Serialization.JsonPropertyName("number_value")]
public Types.NumberValue? NumberValue { get; set; }
/// <summary>
/// 获取或设置布尔值。
/// </summary>
[Newtonsoft.Json.JsonProperty("bool_value")]
[System.Text.Json.Serialization.JsonPropertyName("bool_value")]
public Types.BoolValue? BoolValue { get; set; }
/// <summary>
/// 获取或设置人员值。
/// </summary>
[Newtonsoft.Json.JsonProperty("user_value")]
[System.Text.Json.Serialization.JsonPropertyName("user_value")]
public Types.UserValue? UserValue { get; set; }
/// <summary>
/// 获取或设置日期时间值。
/// </summary>
[Newtonsoft.Json.JsonProperty("date_time_value")]
[System.Text.Json.Serialization.JsonPropertyName("date_time_value")]
public Types.DateTimeValue? DateTimeValue { get; set; }
}
}
/// <summary>
/// 获取或设置条件连词。
/// </summary>
[Newtonsoft.Json.JsonProperty("conjunction")]
[System.Text.Json.Serialization.JsonPropertyName("conjunction")]
public string Conjunction { get; set; } = default!;
/// <summary>
/// 获取或设置条件列表。
/// </summary>
[Newtonsoft.Json.JsonProperty("conditions")]
[System.Text.Json.Serialization.JsonPropertyName("conditions")]
public Types.Condition[] ConditionList { get; set; } = default!;
}
}
/// <summary>
/// 获取或设置是否自动重新排序。
/// </summary>
[Newtonsoft.Json.JsonProperty("auto_sort")]
[System.Text.Json.Serialization.JsonPropertyName("auto_sort")]
public bool IsAutoSort { get; set; }
/// <summary>
/// 获取或设置是否使用数据统计。
/// </summary>
[Newtonsoft.Json.JsonProperty("is_field_stat_enabled")]
[System.Text.Json.Serialization.JsonPropertyName("is_field_stat_enabled")]
public bool IsFieldStatEnabled { get; set; }
/// <summary>
/// 获取或设置排序设置。
/// </summary>
[Newtonsoft.Json.JsonProperty("sort_spec")]
[System.Text.Json.Serialization.JsonPropertyName("sort_spec")]
public Types.SortSpec SortSpec { get; set; } = default!;
/// <summary>
/// 获取或设置分组设置。
/// </summary>
[Newtonsoft.Json.JsonProperty("group_spec")]
[System.Text.Json.Serialization.JsonPropertyName("group_spec")]
public Types.GroupSpec GroupSpec { get; set; } = default!;
/// <summary>
/// 获取或设置过滤设置。
/// </summary>
[Newtonsoft.Json.JsonProperty("filter_spec")]
[System.Text.Json.Serialization.JsonPropertyName("filter_spec")]
public Types.FilterSpec FilterSpec { get; set; } = default!;
/// <summary>
/// 获取或设置字段可见性字典。
/// </summary>
[Newtonsoft.Json.JsonProperty("field_visibility")]
[System.Text.Json.Serialization.JsonPropertyName("field_visibility")]
public IDictionary<string, bool> FieldVisibilityMap { get; set; } = default!;
/// <summary>
/// 获取或设置冻结列数量。
/// </summary>
[Newtonsoft.Json.JsonProperty("frozen_field_count")]
[System.Text.Json.Serialization.JsonPropertyName("frozen_field_count")]
public int FrozenFieldCount { get; set; }
}
}
/// <summary>
/// 获取或设置视图 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("view_id")]
[System.Text.Json.Serialization.JsonPropertyName("view_id")]
public string ViewId { get; set; } = default!;
/// <summary>
/// 获取或设置视图名称。
/// </summary>
[Newtonsoft.Json.JsonProperty("view_title")]
[System.Text.Json.Serialization.JsonPropertyName("view_title")]
public string Title { get; set; } = default!;
/// <summary>
/// 获取或设置视图类型。
/// </summary>
[Newtonsoft.Json.JsonProperty("view_type")]
[System.Text.Json.Serialization.JsonPropertyName("view_type")]
public string Type { get; set; } = default!;
/// <summary>
/// 获取或设置视图属性信息。
/// </summary>
[Newtonsoft.Json.JsonProperty("property")]
[System.Text.Json.Serialization.JsonPropertyName("property")]
public Types.ViewProperty Property { get; set; } = default!;
}
}
/// <summary>
/// 获取或设置视图列表。
/// </summary>
[Newtonsoft.Json.JsonProperty("views")]
[System.Text.Json.Serialization.JsonPropertyName("views")]
public Types.View[] ViewList { get; set; } = default!;
/// <summary>
/// 获取或设置总数量。
/// </summary>
[Newtonsoft.Json.JsonProperty("total")]
[System.Text.Json.Serialization.JsonPropertyName("total")]
public int TotalCount { get; set; }
/// <summary>
/// 获取或设置下一页起始位置。
/// </summary>
[Newtonsoft.Json.JsonProperty("next")]
[System.Text.Json.Serialization.JsonPropertyName("next")]
public int? NextOffset { get; set; }
/// <summary>
/// 获取或设置是否还有更多数据。
/// </summary>
[Newtonsoft.Json.JsonProperty("has_more")]
[System.Text.Json.Serialization.JsonPropertyName("has_more")]
public bool HasMore { get; set; }
}
}

View File

@@ -0,0 +1,266 @@
using System.Collections.Generic;
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
{
/// <summary>
/// <para>表示 [POST] /cgi-bin/wedoc/smartsheet/update_fields 接口的请求。</para>
/// </summary>
public class CgibinWedocSmartSheetUpdateFieldsRequest : WechatWorkRequest
{
public static class Types
{
public class Field
{
public static class Types
{
public class TextFieldProperty : CgibinWedocSmartSheetAddFieldsRequest.Types.Field.Types.TextFieldProperty
{
}
public class NumberFieldProperty : CgibinWedocSmartSheetAddFieldsRequest.Types.Field.Types.NumberFieldProperty
{
}
public class CheckboxFieldProperty : CgibinWedocSmartSheetAddFieldsRequest.Types.Field.Types.CheckboxFieldProperty
{
}
public class DateTimeFieldProperty : CgibinWedocSmartSheetAddFieldsRequest.Types.Field.Types.DateTimeFieldProperty
{
}
public class AttachmentFieldProperty : CgibinWedocSmartSheetAddFieldsRequest.Types.Field.Types.AttachmentFieldProperty
{
}
public class UserFieldProperty : CgibinWedocSmartSheetAddFieldsRequest.Types.Field.Types.UserFieldProperty
{
}
public class UrlFieldProperty : CgibinWedocSmartSheetAddFieldsRequest.Types.Field.Types.UrlFieldProperty
{
}
public class SelectFieldProperty : CgibinWedocSmartSheetAddFieldsRequest.Types.Field.Types.SelectFieldProperty
{
public static new class Types
{
public class Option : CgibinWedocSmartSheetAddFieldsRequest.Types.Field.Types.SelectFieldProperty.Types.Option
{
}
}
}
public class CreatedTimeFieldProperty : CgibinWedocSmartSheetAddFieldsRequest.Types.Field.Types.CreatedTimeFieldProperty
{
}
public class ModifiedTimeFieldProperty : CgibinWedocSmartSheetAddFieldsRequest.Types.Field.Types.ModifiedTimeFieldProperty
{
}
public class ProgressFieldProperty : CgibinWedocSmartSheetAddFieldsRequest.Types.Field.Types.ProgressFieldProperty
{
}
public class SingleSelectFieldProperty : CgibinWedocSmartSheetAddFieldsRequest.Types.Field.Types.SingleSelectFieldProperty
{
public static new class Types
{
public class Option : CgibinWedocSmartSheetAddFieldsRequest.Types.Field.Types.SingleSelectFieldProperty.Types.Option
{
}
}
}
public class ReferenceFieldProperty : CgibinWedocSmartSheetAddFieldsRequest.Types.Field.Types.ReferenceFieldProperty
{
}
public class LocationFieldProperty : CgibinWedocSmartSheetAddFieldsRequest.Types.Field.Types.LocationFieldProperty
{
}
public class AutoNumberFieldProperty : CgibinWedocSmartSheetAddFieldsRequest.Types.Field.Types.AutoNumberFieldProperty
{
public static new class Types
{
public class Rule : CgibinWedocSmartSheetAddFieldsRequest.Types.Field.Types.AutoNumberFieldProperty.Types.Rule
{
}
}
}
public class CurrencyFieldProperty : CgibinWedocSmartSheetAddFieldsRequest.Types.Field.Types.CurrencyFieldProperty
{
}
public class GroupChatFieldProperty : CgibinWedocSmartSheetAddFieldsRequest.Types.Field.Types.GroupChatFieldProperty
{
}
}
/// <summary>
/// 获取或设置字段 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("field_id")]
[System.Text.Json.Serialization.JsonPropertyName("field_id")]
public string FieldId { get; set; } = string.Empty;
/// <summary>
/// 获取或设置字段名称。
/// </summary>
[Newtonsoft.Json.JsonProperty("field_title")]
[System.Text.Json.Serialization.JsonPropertyName("field_title")]
public string? Title { get; set; }
/// <summary>
/// 获取或设置字段类型。
/// </summary>
[Newtonsoft.Json.JsonProperty("field_type")]
[System.Text.Json.Serialization.JsonPropertyName("field_type")]
public string Type { get; set; } = string.Empty;
/// <summary>
/// 获取或设置文本类型的字段属性。
/// </summary>
[Newtonsoft.Json.JsonProperty("property_text")]
[System.Text.Json.Serialization.JsonPropertyName("property_text")]
public Types.TextFieldProperty? PropertyAsText { get; set; }
/// <summary>
/// 获取或设置数字类型的字段属性。
/// </summary>
[Newtonsoft.Json.JsonProperty("property_number")]
[System.Text.Json.Serialization.JsonPropertyName("property_number")]
public Types.NumberFieldProperty? PropertyAsNumber { get; set; }
/// <summary>
/// 获取或设置复选框类型的字段属性。
/// </summary>
[Newtonsoft.Json.JsonProperty("property_checkbox")]
[System.Text.Json.Serialization.JsonPropertyName("property_checkbox")]
public Types.CheckboxFieldProperty? PropertyAsCheckbox { get; set; }
/// <summary>
/// 获取或设置日期类型的字段属性。
/// </summary>
[Newtonsoft.Json.JsonProperty("property_date_time")]
[System.Text.Json.Serialization.JsonPropertyName("property_date_time")]
public Types.DateTimeFieldProperty? PropertyAsDateTime { get; set; }
/// <summary>
/// 获取或设置文件类型的字段属性。
/// </summary>
[Newtonsoft.Json.JsonProperty("property_attachment")]
[System.Text.Json.Serialization.JsonPropertyName("property_attachment")]
public Types.AttachmentFieldProperty? PropertyAsAttachment { get; set; }
/// <summary>
/// 获取或设置人员类型的字段属性。
/// </summary>
[Newtonsoft.Json.JsonProperty("property_user")]
[System.Text.Json.Serialization.JsonPropertyName("property_user")]
public Types.UserFieldProperty? PropertyAsUser { get; set; }
/// <summary>
/// 获取或设置超链接类型的字段属性。
/// </summary>
[Newtonsoft.Json.JsonProperty("property_url")]
[System.Text.Json.Serialization.JsonPropertyName("property_url")]
public Types.UrlFieldProperty? PropertyAsUrl { get; set; }
/// <summary>
/// 获取或设置多选类型的字段属性。
/// </summary>
[Newtonsoft.Json.JsonProperty("property_select")]
[System.Text.Json.Serialization.JsonPropertyName("property_select")]
public Types.SelectFieldProperty? PropertyAsSelect { get; set; }
/// <summary>
/// 获取或设置创建时间类型的字段属性。
/// </summary>
[Newtonsoft.Json.JsonProperty("property_created_time")]
[System.Text.Json.Serialization.JsonPropertyName("property_created_time")]
public Types.CreatedTimeFieldProperty? PropertyAsCreatedTime { get; set; }
/// <summary>
/// 获取或设置最后编辑时间类型的字段属性。
/// </summary>
[Newtonsoft.Json.JsonProperty("property_modified_time")]
[System.Text.Json.Serialization.JsonPropertyName("property_modified_time")]
public Types.ModifiedTimeFieldProperty? PropertyAsModifiedTime { get; set; }
/// <summary>
/// 获取或设置进度类型的字段属性。
/// </summary>
[Newtonsoft.Json.JsonProperty("property_progress")]
[System.Text.Json.Serialization.JsonPropertyName("property_progress")]
public Types.ProgressFieldProperty? PropertyAsProgress { get; set; }
/// <summary>
/// 获取或设置单选类型的字段属性。
/// </summary>
[Newtonsoft.Json.JsonProperty("property_single_select")]
[System.Text.Json.Serialization.JsonPropertyName("property_single_select")]
public Types.SingleSelectFieldProperty? PropertyAsSingleSelect { get; set; }
/// <summary>
/// 获取或设置引用类型的字段属性。
/// </summary>
[Newtonsoft.Json.JsonProperty("property_reference")]
[System.Text.Json.Serialization.JsonPropertyName("property_reference")]
public Types.ReferenceFieldProperty? PropertyAsReference { get; set; }
/// <summary>
/// 获取或设置地理位置类型的字段属性。
/// </summary>
[Newtonsoft.Json.JsonProperty("property_location")]
[System.Text.Json.Serialization.JsonPropertyName("property_location")]
public Types.LocationFieldProperty? PropertyAsLocation { get; set; }
/// <summary>
/// 获取或设置自动编号类型的字段属性。
/// </summary>
[Newtonsoft.Json.JsonProperty("property_auto_number")]
[System.Text.Json.Serialization.JsonPropertyName("property_auto_number")]
public Types.AutoNumberFieldProperty? PropertyAsAutoNumber { get; set; }
/// <summary>
/// 获取或设置货币类型的字段属性。
/// </summary>
[Newtonsoft.Json.JsonProperty("property_currency")]
[System.Text.Json.Serialization.JsonPropertyName("property_currency")]
public Types.CurrencyFieldProperty? PropertyAsCurrency { get; set; }
/// <summary>
/// 获取或设置群类型的字段属性。
/// </summary>
[Newtonsoft.Json.JsonProperty("property_ww_group")]
[System.Text.Json.Serialization.JsonPropertyName("property_ww_group")]
public Types.GroupChatFieldProperty? PropertyAsGroupChat { get; set; }
}
}
/// <summary>
/// 获取或设置文档 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("docid")]
[System.Text.Json.Serialization.JsonPropertyName("docid")]
public string DocumentId { get; set; } = string.Empty;
/// <summary>
/// 获取或设置子表 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("sheet_id")]
[System.Text.Json.Serialization.JsonPropertyName("sheet_id")]
public string SheetId { get; set; } = string.Empty;
/// <summary>
/// 获取或设置字段列表。
/// </summary>
[Newtonsoft.Json.JsonProperty("fields")]
[System.Text.Json.Serialization.JsonPropertyName("fields")]
public IList<Types.Field> FieldList { get; set; } = new List<Types.Field>();
}
}

View File

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

View File

@@ -0,0 +1,58 @@
using System.Collections.Generic;
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
{
/// <summary>
/// <para>表示 [POST] /cgi-bin/wedoc/smartsheet/update_records 接口的请求。</para>
/// </summary>
public class CgibinWedocSmartSheetUpdateRecordsRequest : WechatWorkRequest
{
public static class Types
{
public class Record
{
/// <summary>
/// 获取或设置记录 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("record_id")]
[System.Text.Json.Serialization.JsonPropertyName("record_id")]
public string RecordId { get; set; } = string.Empty;
/// <summary>
/// 获取或设置单元格值。
/// </summary>
[Newtonsoft.Json.JsonProperty("values")]
[System.Text.Json.Serialization.JsonPropertyName("values")]
public IDictionary<string, object> Values { get; set; } = new Dictionary<string, object>();
}
}
/// <summary>
/// 获取或设置文档 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("docid")]
[System.Text.Json.Serialization.JsonPropertyName("docid")]
public string DocumentId { get; set; } = string.Empty;
/// <summary>
/// 获取或设置子表 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("sheet_id")]
[System.Text.Json.Serialization.JsonPropertyName("sheet_id")]
public string SheetId { get; set; } = string.Empty;
/// <summary>
/// 获取或设置单元格键类型。
/// </summary>
[Newtonsoft.Json.JsonProperty("key_type")]
[System.Text.Json.Serialization.JsonPropertyName("key_type")]
public string? KeyType { get; set; }
/// <summary>
/// 获取或设置记录列表。
/// </summary>
[Newtonsoft.Json.JsonProperty("records")]
[System.Text.Json.Serialization.JsonPropertyName("records")]
public IList<Types.Record> RecordList { get; set; } = new List<Types.Record>();
}
}

View File

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

View File

@@ -0,0 +1,42 @@
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
{
/// <summary>
/// <para>表示 [POST] /cgi-bin/wedoc/smartsheet/update_sheet 接口的请求。</para>
/// </summary>
public class CgibinWedocSmartSheetUpdateSheetRequest : WechatWorkRequest
{
public static class Types
{
public class Sheet
{
/// <summary>
/// 获取或设置子表 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("sheet_id")]
[System.Text.Json.Serialization.JsonPropertyName("sheet_id")]
public string SheetId { get; set; } = string.Empty;
/// <summary>
/// 获取或设置子表名称。
/// </summary>
[Newtonsoft.Json.JsonProperty("title")]
[System.Text.Json.Serialization.JsonPropertyName("title")]
public string? Title { get; set; }
}
}
/// <summary>
/// 获取或设置文档 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("docid")]
[System.Text.Json.Serialization.JsonPropertyName("docid")]
public string DocumentId { get; set; } = string.Empty;
/// <summary>
/// 获取或设置子表信息。
/// </summary>
[Newtonsoft.Json.JsonProperty("properties")]
[System.Text.Json.Serialization.JsonPropertyName("properties")]
public Types.Sheet Sheet { get; set; } = new Types.Sheet();
}
}

View File

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

View File

@@ -0,0 +1,308 @@
using System.Collections.Generic;
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
{
/// <summary>
/// <para>表示 [POST] /cgi-bin/wedoc/smartsheet/update_view 接口的请求。</para>
/// </summary>
public class CgibinWedocSmartSheetUpdateViewRequest : WechatWorkRequest
{
public static class Types
{
public class ViewProperty
{
public static class Types
{
public class SortSpec
{
public static class Types
{
public class SortField
{
/// <summary>
/// 获取或设置字段 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("field_id")]
[System.Text.Json.Serialization.JsonPropertyName("field_id")]
public string FieldId { get; set; } = string.Empty;
/// <summary>
/// 获取或设置是否降序。
/// </summary>
[Newtonsoft.Json.JsonProperty("desc")]
[System.Text.Json.Serialization.JsonPropertyName("desc")]
public bool? IsDescend { get; set; }
}
}
/// <summary>
/// 获取或设置排序字段列表。
/// </summary>
[Newtonsoft.Json.JsonProperty("sort_infos")]
[System.Text.Json.Serialization.JsonPropertyName("sort_infos")]
public IList<Types.SortField> SortFieldList { get; set; } = new List<Types.SortField>();
}
public class GroupSpec
{
public static class Types
{
public class GroupField
{
/// <summary>
/// 获取或设置字段 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("field_id")]
[System.Text.Json.Serialization.JsonPropertyName("field_id")]
public string FieldId { get; set; } = string.Empty;
/// <summary>
/// 获取或设置是否降序。
/// </summary>
[Newtonsoft.Json.JsonProperty("desc")]
[System.Text.Json.Serialization.JsonPropertyName("desc")]
public bool? IsDescend { get; set; }
}
}
/// <summary>
/// 获取或设置分组字段列表。
/// </summary>
[Newtonsoft.Json.JsonProperty("groups")]
[System.Text.Json.Serialization.JsonPropertyName("groups")]
public IList<Types.GroupField> GroupFieldList { get; set; } = new List<Types.GroupField>();
}
public class FilterSpec
{
public static class Types
{
public class Condition
{
public static class Types
{
public class StringValue
{
/// <summary>
/// 获取或设置值。
/// </summary>
[Newtonsoft.Json.JsonProperty("value")]
[System.Text.Json.Serialization.JsonPropertyName("value")]
public IList<string> Value { get; set; } = new List<string>();
}
public class NumberValue
{
/// <summary>
/// 获取或设置值。
/// </summary>
[Newtonsoft.Json.JsonProperty("value")]
[System.Text.Json.Serialization.JsonPropertyName("value")]
public decimal Value { get; set; }
}
public class BoolValue
{
/// <summary>
/// 获取或设置值。
/// </summary>
[Newtonsoft.Json.JsonProperty("value")]
[System.Text.Json.Serialization.JsonPropertyName("value")]
public bool Value { get; set; }
}
public class UserValue
{
/// <summary>
/// 获取或设置值。
/// </summary>
[Newtonsoft.Json.JsonProperty("value")]
[System.Text.Json.Serialization.JsonPropertyName("value")]
public IList<string> Value { get; set; } = new List<string>();
}
public class DateTimeValue
{
public static class Types
{
public class Value
{
/// <summary>
/// 获取或设置日期类型。
/// </summary>
[Newtonsoft.Json.JsonProperty("type")]
[System.Text.Json.Serialization.JsonPropertyName("type")]
public string Type { get; set; } = string.Empty;
/// <summary>
/// 获取或设置日期时间值。
/// </summary>
[Newtonsoft.Json.JsonProperty("value")]
[System.Text.Json.Serialization.JsonPropertyName("value")]
public IList<string>? DateTimes { get; set; }
}
}
/// <summary>
/// 获取或设置值。
/// </summary>
[Newtonsoft.Json.JsonProperty("value")]
[System.Text.Json.Serialization.JsonPropertyName("value")]
public Types.Value Value { get; set; } = new Types.Value();
}
}
/// <summary>
/// 获取或设置字段 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("field_id")]
[System.Text.Json.Serialization.JsonPropertyName("field_id")]
public string FieldId { get; set; } = string.Empty;
/// <summary>
/// 获取或设置判断类型。
/// </summary>
[Newtonsoft.Json.JsonProperty("operator")]
[System.Text.Json.Serialization.JsonPropertyName("operator")]
public string Operator { get; set; } = string.Empty;
/// <summary>
/// 获取或设置文本值。
/// </summary>
[Newtonsoft.Json.JsonProperty("string_value")]
[System.Text.Json.Serialization.JsonPropertyName("string_value")]
public Types.StringValue? StringValue { get; set; }
/// <summary>
/// 获取或设置数字值。
/// </summary>
[Newtonsoft.Json.JsonProperty("number_value")]
[System.Text.Json.Serialization.JsonPropertyName("number_value")]
public Types.NumberValue? NumberValue { get; set; }
/// <summary>
/// 获取或设置布尔值。
/// </summary>
[Newtonsoft.Json.JsonProperty("bool_value")]
[System.Text.Json.Serialization.JsonPropertyName("bool_value")]
public Types.BoolValue? BoolValue { get; set; }
/// <summary>
/// 获取或设置人员值。
/// </summary>
[Newtonsoft.Json.JsonProperty("user_value")]
[System.Text.Json.Serialization.JsonPropertyName("user_value")]
public Types.UserValue? UserValue { get; set; }
/// <summary>
/// 获取或设置日期时间值。
/// </summary>
[Newtonsoft.Json.JsonProperty("date_time_value")]
[System.Text.Json.Serialization.JsonPropertyName("date_time_value")]
public Types.DateTimeValue? DateTimeValue { get; set; }
}
}
/// <summary>
/// 获取或设置条件连词。
/// </summary>
[Newtonsoft.Json.JsonProperty("conjunction")]
[System.Text.Json.Serialization.JsonPropertyName("conjunction")]
public string Conjunction { get; set; } = string.Empty;
/// <summary>
/// 获取或设置条件列表。
/// </summary>
[Newtonsoft.Json.JsonProperty("conditions")]
[System.Text.Json.Serialization.JsonPropertyName("conditions")]
public IList<Types.Condition> ConditionList { get; set; } = new List<Types.Condition>();
}
}
/// <summary>
/// 获取或设置是否自动重新排序。
/// </summary>
[Newtonsoft.Json.JsonProperty("auto_sort")]
[System.Text.Json.Serialization.JsonPropertyName("auto_sort")]
public bool? IsAutoSort { get; set; }
/// <summary>
/// 获取或设置是否使用数据统计。
/// </summary>
[Newtonsoft.Json.JsonProperty("is_field_stat_enabled")]
[System.Text.Json.Serialization.JsonPropertyName("is_field_stat_enabled")]
public bool? IsFieldStatEnabled { get; set; }
/// <summary>
/// 获取或设置排序设置。
/// </summary>
[Newtonsoft.Json.JsonProperty("sort_spec")]
[System.Text.Json.Serialization.JsonPropertyName("sort_spec")]
public Types.SortSpec? SortSpec { get; set; }
/// <summary>
/// 获取或设置分组设置。
/// </summary>
[Newtonsoft.Json.JsonProperty("group_spec")]
[System.Text.Json.Serialization.JsonPropertyName("group_spec")]
public Types.GroupSpec? GroupSpec { get; set; }
/// <summary>
/// 获取或设置过滤设置。
/// </summary>
[Newtonsoft.Json.JsonProperty("filter_spec")]
[System.Text.Json.Serialization.JsonPropertyName("filter_spec")]
public Types.FilterSpec? FilterSpec { get; set; }
/// <summary>
/// 获取或设置字段可见性字典。
/// </summary>
[Newtonsoft.Json.JsonProperty("field_visibility")]
[System.Text.Json.Serialization.JsonPropertyName("field_visibility")]
public IDictionary<string, bool>? FieldVisibilityMap { get; set; } = default!;
/// <summary>
/// 获取或设置冻结列数量。
/// </summary>
[Newtonsoft.Json.JsonProperty("frozen_field_count")]
[System.Text.Json.Serialization.JsonPropertyName("frozen_field_count")]
public int? FrozenFieldCount { get; set; }
}
}
/// <summary>
/// 获取或设置文档 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("docid")]
[System.Text.Json.Serialization.JsonPropertyName("docid")]
public string DocumentId { get; set; } = string.Empty;
/// <summary>
/// 获取或设置子表 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("sheet_id")]
[System.Text.Json.Serialization.JsonPropertyName("sheet_id")]
public string SheetId { get; set; } = string.Empty;
/// <summary>
/// 获取或设置视图 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("view_id")]
[System.Text.Json.Serialization.JsonPropertyName("view_id")]
public string ViewId { get; set; } = string.Empty;
/// <summary>
/// 获取或设置视图名称。
/// </summary>
[Newtonsoft.Json.JsonProperty("view_title")]
[System.Text.Json.Serialization.JsonPropertyName("view_title")]
public string? ViewTitle { get; set; }
/// <summary>
/// 获取或设置视图属性信息。
/// </summary>
[Newtonsoft.Json.JsonProperty("property")]
[System.Text.Json.Serialization.JsonPropertyName("property")]
public Types.ViewProperty? ViewProperty { get; set; }
}
}

View File

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

View File

@@ -0,0 +1,10 @@
{
"docid": "DOCID",
"sheet_id": "SHEETID",
"fields": [
{
"field_title": "TITLE",
"field_type": "FIELD_TYPE_TEXT"
}
]
}

View File

@@ -0,0 +1,11 @@
{
"errcode": 0,
"errmsg": "ok",
"fields": [
{
"field_id": "FIELDID",
"field_title": "TITLE",
"field_type": "FIELD_TYPE_TEXT"
}
]
}

View File

@@ -0,0 +1,17 @@
{
"docid": "DOCID",
"sheet_id": "123Abc",
"key_type": "CELL_VALUE_KEY_TYPE_FIELD_TITLE",
"records": [
{
"values": {
"FILED_TITLE": [
{
"type": "text",
"text": "文本内容"
}
]
}
}
]
}

View File

@@ -0,0 +1,6 @@
{
"errcode": 0,
"errmsg": "ok",
"records": [
]
}

View File

@@ -0,0 +1,7 @@
{
"docid": "DOCID",
"properties": {
"title": "智能表",
"index": 3
}
}

View File

@@ -0,0 +1,9 @@
{
"errcode": 0,
"errmsg": "ok",
"properties": {
"title": "智能表",
"index": 3,
"sheet_id": "123abc"
}
}

View File

@@ -0,0 +1,6 @@
{
"docid": "DOCID",
"sheet_id": "123Abc",
"view_title": "XXX",
"view_type": "VIEW_TYPE_GRID"
}

View File

@@ -0,0 +1,9 @@
{
"errcode": 0,
"errmsg": "ok",
"view": {
"view_id": "vFYZUS",
"view_title": "XXX",
"view_type": "VIEW_TYPE_GRID"
}
}

View File

@@ -0,0 +1,7 @@
{
"docid": "DOCID",
"sheet_id": "SHEETID",
"field_ids": [
"FIELDID"
]
}

View File

@@ -0,0 +1,8 @@
{
"docid": "DOCID",
"sheet_id": "123Abc",
"record_ids": [
"re9IqD",
"rpS0P9"
]
}

View File

@@ -0,0 +1,4 @@
{
"docid": "DOCID",
"sheet_id": "123Abc"
}

View File

@@ -0,0 +1,8 @@
{
"docid": "DOCID",
"sheet_id": "123Abc",
"view_ids": [
"VIEWID1",
"VIEWID2"
]
}

View File

@@ -0,0 +1,6 @@
{
"docid": "DOCID",
"sheet_id": "SHEETID",
"offset": 0,
"limit": 10
}

View File

@@ -0,0 +1,12 @@
{
"errcode": 0,
"errmsg": "ok",
"total": 1,
"fields": [
{
"field_id": "ID1",
"field_title": "TITLE1",
"field_type": "FIELD_TYPE_TEXT"
}
]
}

View File

@@ -0,0 +1,21 @@
{
"docid": "DOCID",
"sheet_id": "123Abc",
"view_id": "vCRl8n",
"record_ids": [],
"key_type": "CELL_VALUE_KEY_TYPE_FIELD_TITLE",
"field_titles": [],
"field_ids": [],
"sort": [
{
"field_title": "文本列",
"desc": true
},
{
"field_title": "数字列",
"desc": false
}
],
"offset": 0,
"limit": 100
}

View File

@@ -0,0 +1,25 @@
{
"errcode": 0,
"errmsg": "ok",
"total": 0,
"has_more": true,
"next": 0,
"records": [
{
"record_id": "r5ud8u",
"create_time": "1715846245084",
"update_time": "1715846248810",
"values": {
"文本字段1-标题": [
{
"type": "text",
"text": "XXXX"
}
],
"数字字段1-标题": 123
},
"creator_name": "NAME",
"updater_name": "NAME"
}
]
}

View File

@@ -0,0 +1,11 @@
{
"errcode": 0,
"errmsg": "ok",
"sheet_list": [
{
"sheet_id": "123Abc",
"title": "XXXX",
"is_visible": true
}
]
}

View File

@@ -0,0 +1,10 @@
{
"docid": "DOCID",
"sheet_id": "ezPcdA",
"view_ids": [
"vPpw9C",
"vfM2tt"
],
"offset": 0,
"limit": 1
}

View File

@@ -0,0 +1,70 @@
{
"errcode": 0,
"errmsg": "ok",
"total": 2,
"has_more": true,
"next": 1,
"views": [
{
"view_id": "vabcde",
"view_title": "默认视图",
"view_type": "VIEW_TYPE_GRID",
"property": {
"auto_sort": false,
"sort_spec": {
"sort_infos": [
{
"field_id": "FIELDID1",
"desc": false
},
{
"field_id": "FIELDID2",
"desc": true
}
]
},
"filter_spec": {
"conjunction": "CONJUNCTION_AND",
"conditions": [
{
"field_id": "FIELDID1",
"field_type": "FIELD_TYPE_TEXT",
"operator": "OPERATOR_CONTAINS",
"string_value": {
"value": [
"hello world"
]
}
},
{
"field_id": "FIELDID2",
"field_type": "FIELD_TYPE_USER",
"operator": "OPERATOR_IS",
"user_value": {
"value": [ "USERID1" ]
}
}
]
},
"group_spec": {
"groups": [
{
"field_id": "FIELDID1",
"desc": false
},
{
"field_id": "FIELDID2",
"desc": true
}
]
},
"is_field_stat_enabled": false,
"field_visibility": {
"f1gHSR": false,
"fabcde": false
},
"frozen_field_count": 0
}
}
]
}

View File

@@ -0,0 +1,11 @@
{
"docid": "DOCID",
"sheet_id": "SHEETID",
"fields": [
{
"field_id": "FIELD_ID",
"field_title": "TITLE",
"field_type": "FIELD_TYPE_TEXT"
}
]
}

View File

@@ -0,0 +1,7 @@
{
"docid": "DOCID",
"properties": {
"sheet_id": "123abc",
"title": "XXXX"
}
}

View File

@@ -0,0 +1,58 @@
{
"docid": "DOCID",
"sheet_id": "123Abc",
"view_id": "VIEWID",
"view_title": "XXX",
"property": {
"auto_sort": false,
"sort_spec": {
"sort_infos": [
{
"field_id": "FIELDID1",
"desc": false
},
{
"field_id": "FIELDID2",
"desc": true
}
]
},
"filter_spec": {
"conjunction": "CONJUNCTION_AND",
"conditions": [
{
"field_id": "FIELDID1",
"operator": "OPERATOR_CONTAINS",
"string_value": {
"value": [ "hello world" ]
}
},
{
"field_id": "FIELDID2",
"operator": "OPERATOR_IS",
"user_value": {
"value": [ "USERID1" ]
}
}
]
},
"group_spec": {
"groups": [
{
"field_id": "FIELDID1",
"desc": false
},
{
"field_id": "FIELDID2",
"desc": true
}
]
},
"is_field_stat_enabled": false,
"field_visibility": {
"f1gHSR": false,
"fabcde": false
},
"frozen_field_count": 0
}
}