From ca8f3639d665a7da0c7282aec2a88586122ae82f Mon Sep 17 00:00:00 2001 From: Fu Diwei Date: Sun, 6 Jun 2021 01:18:55 +0800 Subject: [PATCH] =?UTF-8?q?feat(work):=20=E5=B0=81=E8=A3=85=E9=83=A8?= =?UTF-8?q?=E5=88=86=E4=BC=81=E4=B8=9A=E5=BE=AE=E4=BF=A1=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...tExecuteCgibinExternalContactExtensions.cs | 10 +- ...WorkClientExecuteCgibinReportExtensions.cs | 463 ++++++++++++++++++ ...WorkClientExecuteCgibinSchoolExtensions.cs | 4 +- ...ctGroupChatStatisticsGroupByDayRequest.cs} | 4 +- ...tGroupChatStatisticsGroupByDayResponse.cs} | 6 +- ...ernalContactGroupChatStatisticsRequest.cs} | 2 +- ...rnalContactGroupChatStatisticsResponse.cs} | 6 +- .../Grid/CgibinReportGridAddRequest.cs | 39 ++ .../Grid/CgibinReportGridAddResponse.cs | 25 + .../Grid/CgibinReportGridDeleteRequest.cs | 18 + .../Grid/CgibinReportGridDeleteResponse.cs | 12 + .../CgibinReportGridGetUserGridInfoRequest.cs | 18 + ...CgibinReportGridGetUserGridInfoResponse.cs | 45 ++ .../Grid/CgibinReportGridListRequest.cs | 18 + .../Grid/CgibinReportGridListResponse.cs | 59 +++ .../Grid/CgibinReportGridUpdateRequest.cs | 18 + .../Grid/CgibinReportGridUpdateResponse.cs | 18 + .../CgibinReportGridAddCategoryRequest.cs | 32 ++ .../CgibinReportGridAddCategoryResponse.cs | 18 + .../CgibinReportGridDeleteCategoryRequest.cs | 18 + .../CgibinReportGridDeleteCategoryResponse.cs | 12 + .../CgibinReportGridListCategoryRequest.cs | 12 + .../CgibinReportGridListCategoryResponse.cs | 52 ++ .../CgibinReportGridUpdateCategoryRequest.cs | 18 + .../CgibinReportGridUpdateCategoryResponse.cs | 12 + ...inReportPatrolCategoryStatisticsRequest.cs | 18 + ...nReportPatrolCategoryStatisticsResponse.cs | 66 +++ .../CgibinReportPatrolGetCorpStatusRequest.cs | 18 + ...CgibinReportPatrolGetCorpStatusResponse.cs | 53 ++ .../CgibinReportPatrolGetGridInfoRequest.cs | 12 + .../CgibinReportPatrolGetGridInfoResponse.cs | 45 ++ .../CgibinReportPatrolGetOrderInfoRequest.cs | 18 + .../CgibinReportPatrolGetOrderInfoResponse.cs | 25 + .../CgibinReportPatrolGetOrderListRequest.cs | 39 ++ .../CgibinReportPatrolGetOrderListResponse.cs | 201 ++++++++ .../CgibinReportPatrolGetUserStatusRequest.cs | 18 + ...CgibinReportPatrolGetUserStatusResponse.cs | 32 ++ ...ReportResidentCategoryStatisticsRequest.cs | 12 + ...eportResidentCategoryStatisticsResponse.cs | 25 + ...gibinReportResidentGetCorpStatusRequest.cs | 12 + ...ibinReportResidentGetCorpStatusResponse.cs | 60 +++ .../CgibinReportResidentGetGridInfoRequest.cs | 12 + ...CgibinReportResidentGetGridInfoResponse.cs | 25 + ...CgibinReportResidentGetOrderInfoRequest.cs | 12 + ...gibinReportResidentGetOrderInfoResponse.cs | 25 + ...CgibinReportResidentGetOrderListRequest.cs | 12 + ...gibinReportResidentGetOrderListResponse.cs | 52 ++ ...gibinReportResidentGetUserStatusRequest.cs | 12 + ...ibinReportResidentGetUserStatusResponse.cs | 39 ++ .../CgibinSchoolDepartmentListRequest.cs | 4 +- 50 files changed, 1768 insertions(+), 18 deletions(-) create mode 100644 src/SKIT.FlurlHttpClient.Wechat.Work/Extensions/WechatWorkClientExecuteCgibinReportExtensions.cs rename src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinExternalContact/GroupChat/{Statistic/CgibinExternalContactGroupChatStatisticGroupByDayRequest.cs => Statistics/CgibinExternalContactGroupChatStatisticsGroupByDayRequest.cs} (90%) rename src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinExternalContact/GroupChat/{Statistic/CgibinExternalContactGroupChatStatisticGroupByDayResponse.cs => Statistics/CgibinExternalContactGroupChatStatisticsGroupByDayResponse.cs} (81%) rename src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinExternalContact/GroupChat/{Statistic/CgibinExternalContactGroupChatStatisticRequest.cs => Statistics/CgibinExternalContactGroupChatStatisticsRequest.cs} (97%) rename src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinExternalContact/GroupChat/{Statistic/CgibinExternalContactGroupChatStatisticResponse.cs => Statistics/CgibinExternalContactGroupChatStatisticsResponse.cs} (95%) create mode 100644 src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Grid/CgibinReportGridAddRequest.cs create mode 100644 src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Grid/CgibinReportGridAddResponse.cs create mode 100644 src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Grid/CgibinReportGridDeleteRequest.cs create mode 100644 src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Grid/CgibinReportGridDeleteResponse.cs create mode 100644 src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Grid/CgibinReportGridGetUserGridInfoRequest.cs create mode 100644 src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Grid/CgibinReportGridGetUserGridInfoResponse.cs create mode 100644 src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Grid/CgibinReportGridListRequest.cs create mode 100644 src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Grid/CgibinReportGridListResponse.cs create mode 100644 src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Grid/CgibinReportGridUpdateRequest.cs create mode 100644 src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Grid/CgibinReportGridUpdateResponse.cs create mode 100644 src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/GridCategory/CgibinReportGridAddCategoryRequest.cs create mode 100644 src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/GridCategory/CgibinReportGridAddCategoryResponse.cs create mode 100644 src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/GridCategory/CgibinReportGridDeleteCategoryRequest.cs create mode 100644 src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/GridCategory/CgibinReportGridDeleteCategoryResponse.cs create mode 100644 src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/GridCategory/CgibinReportGridListCategoryRequest.cs create mode 100644 src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/GridCategory/CgibinReportGridListCategoryResponse.cs create mode 100644 src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/GridCategory/CgibinReportGridUpdateCategoryRequest.cs create mode 100644 src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/GridCategory/CgibinReportGridUpdateCategoryResponse.cs create mode 100644 src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Patrol/CgibinReportPatrolCategoryStatisticsRequest.cs create mode 100644 src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Patrol/CgibinReportPatrolCategoryStatisticsResponse.cs create mode 100644 src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Patrol/CgibinReportPatrolGetCorpStatusRequest.cs create mode 100644 src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Patrol/CgibinReportPatrolGetCorpStatusResponse.cs create mode 100644 src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Patrol/CgibinReportPatrolGetGridInfoRequest.cs create mode 100644 src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Patrol/CgibinReportPatrolGetGridInfoResponse.cs create mode 100644 src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Patrol/CgibinReportPatrolGetOrderInfoRequest.cs create mode 100644 src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Patrol/CgibinReportPatrolGetOrderInfoResponse.cs create mode 100644 src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Patrol/CgibinReportPatrolGetOrderListRequest.cs create mode 100644 src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Patrol/CgibinReportPatrolGetOrderListResponse.cs create mode 100644 src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Patrol/CgibinReportPatrolGetUserStatusRequest.cs create mode 100644 src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Patrol/CgibinReportPatrolGetUserStatusResponse.cs create mode 100644 src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Resident/CgibinReportResidentCategoryStatisticsRequest.cs create mode 100644 src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Resident/CgibinReportResidentCategoryStatisticsResponse.cs create mode 100644 src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Resident/CgibinReportResidentGetCorpStatusRequest.cs create mode 100644 src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Resident/CgibinReportResidentGetCorpStatusResponse.cs create mode 100644 src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Resident/CgibinReportResidentGetGridInfoRequest.cs create mode 100644 src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Resident/CgibinReportResidentGetGridInfoResponse.cs create mode 100644 src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Resident/CgibinReportResidentGetOrderInfoRequest.cs create mode 100644 src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Resident/CgibinReportResidentGetOrderInfoResponse.cs create mode 100644 src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Resident/CgibinReportResidentGetOrderListRequest.cs create mode 100644 src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Resident/CgibinReportResidentGetOrderListResponse.cs create mode 100644 src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Resident/CgibinReportResidentGetUserStatusRequest.cs create mode 100644 src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Resident/CgibinReportResidentGetUserStatusResponse.cs diff --git a/src/SKIT.FlurlHttpClient.Wechat.Work/Extensions/WechatWorkClientExecuteCgibinExternalContactExtensions.cs b/src/SKIT.FlurlHttpClient.Wechat.Work/Extensions/WechatWorkClientExecuteCgibinExternalContactExtensions.cs index f33ae622..ade084b6 100644 --- a/src/SKIT.FlurlHttpClient.Wechat.Work/Extensions/WechatWorkClientExecuteCgibinExternalContactExtensions.cs +++ b/src/SKIT.FlurlHttpClient.Wechat.Work/Extensions/WechatWorkClientExecuteCgibinExternalContactExtensions.cs @@ -617,7 +617,7 @@ namespace SKIT.FlurlHttpClient.Wechat.Work return await client.SendRequestWithJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken); } - #region GroupChatStatistic + #region GroupChatStatistics /// /// 异步调用 [POST] /cgi-bin/externalcontact/groupchat/statistic 接口。 /// REF: https://open.work.weixin.qq.com/api/doc/90000/90135/92133 @@ -627,7 +627,7 @@ namespace SKIT.FlurlHttpClient.Wechat.Work /// /// /// - public static async Task ExecuteCgibinExternalContactGroupChatStatisticAsync(this WechatWorkClient client, Models.CgibinExternalContactGroupChatStatisticRequest request, CancellationToken cancellationToken = default) + public static async Task ExecuteCgibinExternalContactGroupChatStatisticsAsync(this WechatWorkClient client, Models.CgibinExternalContactGroupChatStatisticsRequest request, CancellationToken cancellationToken = default) { if (client is null) throw new ArgumentNullException(nameof(client)); if (request is null) throw new ArgumentNullException(nameof(request)); @@ -637,7 +637,7 @@ namespace SKIT.FlurlHttpClient.Wechat.Work .SetOptions(request) .SetQueryParam("access_token", request.AccessToken); - return await client.SendRequestWithJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken); + return await client.SendRequestWithJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken); } /// @@ -649,7 +649,7 @@ namespace SKIT.FlurlHttpClient.Wechat.Work /// /// /// - public static async Task ExecuteCgibinExternalContactGroupChatStatisticGroupByDayAsync(this WechatWorkClient client, Models.CgibinExternalContactGroupChatStatisticGroupByDayRequest request, CancellationToken cancellationToken = default) + public static async Task ExecuteCgibinExternalContactGroupChatStatisticsGroupByDayAsync(this WechatWorkClient client, Models.CgibinExternalContactGroupChatStatisticsGroupByDayRequest request, CancellationToken cancellationToken = default) { if (client is null) throw new ArgumentNullException(nameof(client)); if (request is null) throw new ArgumentNullException(nameof(request)); @@ -659,7 +659,7 @@ namespace SKIT.FlurlHttpClient.Wechat.Work .SetOptions(request) .SetQueryParam("access_token", request.AccessToken); - return await client.SendRequestWithJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken); + return await client.SendRequestWithJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken); } #endregion #endregion diff --git a/src/SKIT.FlurlHttpClient.Wechat.Work/Extensions/WechatWorkClientExecuteCgibinReportExtensions.cs b/src/SKIT.FlurlHttpClient.Wechat.Work/Extensions/WechatWorkClientExecuteCgibinReportExtensions.cs new file mode 100644 index 00000000..5a7337f7 --- /dev/null +++ b/src/SKIT.FlurlHttpClient.Wechat.Work/Extensions/WechatWorkClientExecuteCgibinReportExtensions.cs @@ -0,0 +1,463 @@ +using System; +using System.Collections.Generic; +using System.Net.Http; +using System.Text; +using System.Threading; +using System.Threading.Tasks; +using Flurl; +using Flurl.Http; + +namespace SKIT.FlurlHttpClient.Wechat.Work +{ + public static class WechatWorkClientExecuteCgibinReportExtensions + { + #region Grid + /// + /// 异步调用 [POST] /cgi-bin/report/grid/add 接口。 + /// REF: https://open.work.weixin.qq.com/api/doc/90000/90135/94478 + /// + /// + /// + /// + /// + public static async Task ExecuteCgibinReportGridAddAsync(this WechatWorkClient client, Models.CgibinReportGridAddRequest request, CancellationToken cancellationToken = default) + { + if (client is null) throw new ArgumentNullException(nameof(client)); + if (request is null) throw new ArgumentNullException(nameof(request)); + + IFlurlRequest flurlReq = client + .CreateRequest(HttpMethod.Post, "cgi-bin", "report", "grid", "add") + .SetOptions(request) + .SetQueryParam("access_token", request.AccessToken); + + return await client.SendRequestWithJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken); + } + + /// + /// 异步调用 [POST] /cgi-bin/report/grid/update 接口。 + /// REF: https://open.work.weixin.qq.com/api/doc/90000/90135/94479 + /// + /// + /// + /// + /// + public static async Task ExecuteCgibinReportGridUpdateAsync(this WechatWorkClient client, Models.CgibinReportGridUpdateRequest request, CancellationToken cancellationToken = default) + { + if (client is null) throw new ArgumentNullException(nameof(client)); + if (request is null) throw new ArgumentNullException(nameof(request)); + + IFlurlRequest flurlReq = client + .CreateRequest(HttpMethod.Post, "cgi-bin", "report", "grid", "update") + .SetOptions(request) + .SetQueryParam("access_token", request.AccessToken); + + return await client.SendRequestWithJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken); + } + + /// + /// 异步调用 [POST] /cgi-bin/report/grid/delete 接口。 + /// REF: https://open.work.weixin.qq.com/api/doc/90000/90135/94480 + /// + /// + /// + /// + /// + public static async Task ExecuteCgibinReportGridDeleteAsync(this WechatWorkClient client, Models.CgibinReportGridDeleteRequest request, CancellationToken cancellationToken = default) + { + if (client is null) throw new ArgumentNullException(nameof(client)); + if (request is null) throw new ArgumentNullException(nameof(request)); + + IFlurlRequest flurlReq = client + .CreateRequest(HttpMethod.Post, "cgi-bin", "report", "grid", "delete") + .SetOptions(request) + .SetQueryParam("access_token", request.AccessToken); + + return await client.SendRequestWithJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken); + } + + /// + /// 异步调用 [POST] /cgi-bin/report/grid/list 接口。 + /// REF: https://open.work.weixin.qq.com/api/doc/90000/90135/94481 + /// + /// + /// + /// + /// + public static async Task ExecuteCgibinReportGridListAsync(this WechatWorkClient client, Models.CgibinReportGridListRequest request, CancellationToken cancellationToken = default) + { + if (client is null) throw new ArgumentNullException(nameof(client)); + if (request is null) throw new ArgumentNullException(nameof(request)); + + IFlurlRequest flurlReq = client + .CreateRequest(HttpMethod.Post, "cgi-bin", "report", "grid", "list") + .SetOptions(request) + .SetQueryParam("access_token", request.AccessToken); + + return await client.SendRequestWithJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken); + } + + /// + /// 异步调用 [POST] /cgi-bin/report/grid/get_user_grid_info 接口。 + /// REF: https://open.work.weixin.qq.com/api/doc/90000/90135/94482 + /// + /// + /// + /// + /// + public static async Task ExecuteCgibinReportGridGetUserGridInfoAsync(this WechatWorkClient client, Models.CgibinReportGridGetUserGridInfoRequest request, CancellationToken cancellationToken = default) + { + if (client is null) throw new ArgumentNullException(nameof(client)); + if (request is null) throw new ArgumentNullException(nameof(request)); + + IFlurlRequest flurlReq = client + .CreateRequest(HttpMethod.Post, "cgi-bin", "report", "grid", "get_user_grid_info") + .SetOptions(request) + .SetQueryParam("access_token", request.AccessToken); + + return await client.SendRequestWithJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken); + } + #endregion + + #region GridCategory + /// + /// 异步调用 [POST] /cgi-bin/report/grid/add_cata 接口。 + /// REF: https://open.work.weixin.qq.com/api/doc/90000/90135/94536 + /// + /// + /// + /// + /// + public static async Task ExecuteCgibinReportGridAddCategoryAsync(this WechatWorkClient client, Models.CgibinReportGridAddCategoryRequest request, CancellationToken cancellationToken = default) + { + if (client is null) throw new ArgumentNullException(nameof(client)); + if (request is null) throw new ArgumentNullException(nameof(request)); + + IFlurlRequest flurlReq = client + .CreateRequest(HttpMethod.Post, "cgi-bin", "report", "grid", "add_cata") + .SetOptions(request) + .SetQueryParam("access_token", request.AccessToken); + + return await client.SendRequestWithJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken); + } + + /// + /// 异步调用 [POST] /cgi-bin/report/grid/update_cata 接口。 + /// REF: https://open.work.weixin.qq.com/api/doc/90000/90135/94537 + /// + /// + /// + /// + /// + public static async Task ExecuteCgibinReportGridUpdateCategoryAsync(this WechatWorkClient client, Models.CgibinReportGridUpdateCategoryRequest request, CancellationToken cancellationToken = default) + { + if (client is null) throw new ArgumentNullException(nameof(client)); + if (request is null) throw new ArgumentNullException(nameof(request)); + + IFlurlRequest flurlReq = client + .CreateRequest(HttpMethod.Post, "cgi-bin", "report", "grid", "update_cata") + .SetOptions(request) + .SetQueryParam("access_token", request.AccessToken); + + return await client.SendRequestWithJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken); + } + + /// + /// 异步调用 [POST] /cgi-bin/report/grid/delete_cata 接口。 + /// REF: https://open.work.weixin.qq.com/api/doc/90000/90135/94538 + /// + /// + /// + /// + /// + public static async Task ExecuteCgibinReportGridDeleteCategoryAsync(this WechatWorkClient client, Models.CgibinReportGridDeleteCategoryRequest request, CancellationToken cancellationToken = default) + { + if (client is null) throw new ArgumentNullException(nameof(client)); + if (request is null) throw new ArgumentNullException(nameof(request)); + + IFlurlRequest flurlReq = client + .CreateRequest(HttpMethod.Post, "cgi-bin", "report", "grid", "delete_cata") + .SetOptions(request) + .SetQueryParam("access_token", request.AccessToken); + + return await client.SendRequestWithJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken); + } + + /// + /// 异步调用 [POST] /cgi-bin/report/grid/list_cata 接口。 + /// REF: https://open.work.weixin.qq.com/api/doc/90000/90135/94540 + /// + /// + /// + /// + /// + public static async Task ExecuteCgibinReportGridListCategoryAsync(this WechatWorkClient client, Models.CgibinReportGridListCategoryRequest request, CancellationToken cancellationToken = default) + { + if (client is null) throw new ArgumentNullException(nameof(client)); + if (request is null) throw new ArgumentNullException(nameof(request)); + + IFlurlRequest flurlReq = client + .CreateRequest(HttpMethod.Post, "cgi-bin", "report", "grid", "list_cata") + .SetOptions(request) + .SetQueryParam("access_token", request.AccessToken); + + return await client.SendRequestWithJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken); + } + #endregion + + #region Patrol + /// + /// 异步调用 [GET] /cgi-bin/report/patrol/get_grid_info 接口。 + /// REF: https://open.work.weixin.qq.com/api/doc/90000/90135/93531 + /// + /// + /// + /// + /// + public static async Task ExecuteCgibinReportPatrolGetGridInfoAsync(this WechatWorkClient client, Models.CgibinReportPatrolGetGridInfoRequest request, CancellationToken cancellationToken = default) + { + if (client is null) throw new ArgumentNullException(nameof(client)); + if (request is null) throw new ArgumentNullException(nameof(request)); + + IFlurlRequest flurlReq = client + .CreateRequest(HttpMethod.Get, "cgi-bin", "report", "patrol", "get_grid_info") + .SetOptions(request) + .SetQueryParam("access_token", request.AccessToken); + + return await client.SendRequestAsync(flurlReq, cancellationToken: cancellationToken); + } + + /// + /// 异步调用 [POST] /cgi-bin/report/patrol/get_corp_status 接口。 + /// REF: https://open.work.weixin.qq.com/api/doc/90000/90135/93532 + /// + /// + /// + /// + /// + public static async Task ExecuteCgibinReportPatrolGetCorpStatusAsync(this WechatWorkClient client, Models.CgibinReportPatrolGetCorpStatusRequest request, CancellationToken cancellationToken = default) + { + if (client is null) throw new ArgumentNullException(nameof(client)); + if (request is null) throw new ArgumentNullException(nameof(request)); + + IFlurlRequest flurlReq = client + .CreateRequest(HttpMethod.Post, "cgi-bin", "report", "patrol", "get_corp_status") + .SetOptions(request) + .SetQueryParam("access_token", request.AccessToken); + + return await client.SendRequestWithJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken); + } + + /// + /// 异步调用 [POST] /cgi-bin/report/patrol/get_user_status 接口。 + /// REF: https://open.work.weixin.qq.com/api/doc/90000/90135/93533 + /// + /// + /// + /// + /// + public static async Task ExecuteCgibinReportPatrolGetUserStatusAsync(this WechatWorkClient client, Models.CgibinReportPatrolGetUserStatusRequest request, CancellationToken cancellationToken = default) + { + if (client is null) throw new ArgumentNullException(nameof(client)); + if (request is null) throw new ArgumentNullException(nameof(request)); + + IFlurlRequest flurlReq = client + .CreateRequest(HttpMethod.Post, "cgi-bin", "report", "patrol", "get_user_status") + .SetOptions(request) + .SetQueryParam("access_token", request.AccessToken); + + return await client.SendRequestWithJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken); + } + + /// + /// 异步调用 [POST] /cgi-bin/report/patrol/category_statistic 接口。 + /// REF: https://open.work.weixin.qq.com/api/doc/90000/90135/93534 + /// + /// + /// + /// + /// + public static async Task ExecuteCgibinReportPatrolCategoryStatisticsAsync(this WechatWorkClient client, Models.CgibinReportPatrolCategoryStatisticsRequest request, CancellationToken cancellationToken = default) + { + if (client is null) throw new ArgumentNullException(nameof(client)); + if (request is null) throw new ArgumentNullException(nameof(request)); + + IFlurlRequest flurlReq = client + .CreateRequest(HttpMethod.Post, "cgi-bin", "report", "patrol", "category_statistic") + .SetOptions(request) + .SetQueryParam("access_token", request.AccessToken); + + return await client.SendRequestWithJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken); + } + + /// + /// 异步调用 [POST] /cgi-bin/report/patrol/get_order_list 接口。 + /// REF: https://open.work.weixin.qq.com/api/doc/90000/90135/93536 + /// + /// + /// + /// + /// + public static async Task ExecuteCgibinReportPatrolGetOrderListAsync(this WechatWorkClient client, Models.CgibinReportPatrolGetOrderListRequest request, CancellationToken cancellationToken = default) + { + if (client is null) throw new ArgumentNullException(nameof(client)); + if (request is null) throw new ArgumentNullException(nameof(request)); + + IFlurlRequest flurlReq = client + .CreateRequest(HttpMethod.Post, "cgi-bin", "report", "patrol", "get_order_list") + .SetOptions(request) + .SetQueryParam("access_token", request.AccessToken); + + return await client.SendRequestWithJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken); + } + + /// + /// 异步调用 [POST] /cgi-bin/report/patrol/get_order_info 接口。 + /// REF: https://open.work.weixin.qq.com/api/doc/90000/90135/93535 + /// + /// + /// + /// + /// + public static async Task ExecuteCgibinReportPatrolGetOrderInfoAsync(this WechatWorkClient client, Models.CgibinReportPatrolGetOrderInfoRequest request, CancellationToken cancellationToken = default) + { + if (client is null) throw new ArgumentNullException(nameof(client)); + if (request is null) throw new ArgumentNullException(nameof(request)); + + IFlurlRequest flurlReq = client + .CreateRequest(HttpMethod.Post, "cgi-bin", "report", "patrol", "get_order_info") + .SetOptions(request) + .SetQueryParam("access_token", request.AccessToken); + + return await client.SendRequestWithJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken); + } + #endregion + + #region Resident + /// + /// 异步调用 [GET] /cgi-bin/report/resident/get_grid_info 接口。 + /// REF: https://open.work.weixin.qq.com/api/doc/90000/90135/93514 + /// + /// + /// + /// + /// + public static async Task ExecuteCgibinReportResidentGetGridInfoAsync(this WechatWorkClient client, Models.CgibinReportResidentGetGridInfoRequest request, CancellationToken cancellationToken = default) + { + if (client is null) throw new ArgumentNullException(nameof(client)); + if (request is null) throw new ArgumentNullException(nameof(request)); + + IFlurlRequest flurlReq = client + .CreateRequest(HttpMethod.Get, "cgi-bin", "report", "resident", "get_grid_info") + .SetOptions(request) + .SetQueryParam("access_token", request.AccessToken); + + return await client.SendRequestAsync(flurlReq, cancellationToken: cancellationToken); + } + + /// + /// 异步调用 [POST] /cgi-bin/report/resident/get_corp_status 接口。 + /// REF: https://open.work.weixin.qq.com/api/doc/90000/90135/93515 + /// + /// + /// + /// + /// + public static async Task ExecuteCgibinReportResidentGetCorpStatusAsync(this WechatWorkClient client, Models.CgibinReportResidentGetCorpStatusRequest request, CancellationToken cancellationToken = default) + { + if (client is null) throw new ArgumentNullException(nameof(client)); + if (request is null) throw new ArgumentNullException(nameof(request)); + + IFlurlRequest flurlReq = client + .CreateRequest(HttpMethod.Post, "cgi-bin", "report", "resident", "get_corp_status") + .SetOptions(request) + .SetQueryParam("access_token", request.AccessToken); + + return await client.SendRequestWithJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken); + } + + /// + /// 异步调用 [POST] /cgi-bin/report/resident/get_user_status 接口。 + /// REF: https://open.work.weixin.qq.com/api/doc/90000/90135/93516 + /// + /// + /// + /// + /// + public static async Task ExecuteCgibinReportResidentGetUserStatusAsync(this WechatWorkClient client, Models.CgibinReportResidentGetUserStatusRequest request, CancellationToken cancellationToken = default) + { + if (client is null) throw new ArgumentNullException(nameof(client)); + if (request is null) throw new ArgumentNullException(nameof(request)); + + IFlurlRequest flurlReq = client + .CreateRequest(HttpMethod.Post, "cgi-bin", "report", "resident", "get_user_status") + .SetOptions(request) + .SetQueryParam("access_token", request.AccessToken); + + return await client.SendRequestWithJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken); + } + + /// + /// 异步调用 [POST] /cgi-bin/report/resident/category_statistic 接口。 + /// REF: https://open.work.weixin.qq.com/api/doc/90000/90135/93517 + /// + /// + /// + /// + /// + public static async Task ExecuteCgibinReportResidentCategoryStatisticsAsync(this WechatWorkClient client, Models.CgibinReportResidentCategoryStatisticsRequest request, CancellationToken cancellationToken = default) + { + if (client is null) throw new ArgumentNullException(nameof(client)); + if (request is null) throw new ArgumentNullException(nameof(request)); + + IFlurlRequest flurlReq = client + .CreateRequest(HttpMethod.Post, "cgi-bin", "report", "resident", "category_statistic") + .SetOptions(request) + .SetQueryParam("access_token", request.AccessToken); + + return await client.SendRequestWithJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken); + } + + /// + /// 异步调用 [POST] /cgi-bin/report/resident/get_order_list 接口。 + /// REF: https://open.work.weixin.qq.com/api/doc/90000/90135/93518 + /// + /// + /// + /// + /// + public static async Task ExecuteCgibinReportResidentGetOrderListAsync(this WechatWorkClient client, Models.CgibinReportResidentGetOrderListRequest request, CancellationToken cancellationToken = default) + { + if (client is null) throw new ArgumentNullException(nameof(client)); + if (request is null) throw new ArgumentNullException(nameof(request)); + + IFlurlRequest flurlReq = client + .CreateRequest(HttpMethod.Post, "cgi-bin", "report", "resident", "get_order_list") + .SetOptions(request) + .SetQueryParam("access_token", request.AccessToken); + + return await client.SendRequestWithJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken); + } + + /// + /// 异步调用 [POST] /cgi-bin/report/resident/get_order_info 接口。 + /// REF: https://open.work.weixin.qq.com/api/doc/90000/90135/93519 + /// + /// + /// + /// + /// + public static async Task ExecuteCgibinReportResidentGetOrderInfoAsync(this WechatWorkClient client, Models.CgibinReportResidentGetOrderInfoRequest request, CancellationToken cancellationToken = default) + { + if (client is null) throw new ArgumentNullException(nameof(client)); + if (request is null) throw new ArgumentNullException(nameof(request)); + + IFlurlRequest flurlReq = client + .CreateRequest(HttpMethod.Post, "cgi-bin", "report", "resident", "get_order_info") + .SetOptions(request) + .SetQueryParam("access_token", request.AccessToken); + + return await client.SendRequestWithJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken); + } + #endregion + } +} diff --git a/src/SKIT.FlurlHttpClient.Wechat.Work/Extensions/WechatWorkClientExecuteCgibinSchoolExtensions.cs b/src/SKIT.FlurlHttpClient.Wechat.Work/Extensions/WechatWorkClientExecuteCgibinSchoolExtensions.cs index 9223cbf3..54d8456e 100644 --- a/src/SKIT.FlurlHttpClient.Wechat.Work/Extensions/WechatWorkClientExecuteCgibinSchoolExtensions.cs +++ b/src/SKIT.FlurlHttpClient.Wechat.Work/Extensions/WechatWorkClientExecuteCgibinSchoolExtensions.cs @@ -593,8 +593,8 @@ namespace SKIT.FlurlHttpClient.Wechat.Work .SetOptions(request) .SetQueryParam("access_token", request.AccessToken); - if (request.DepartmentId.HasValue) - flurlReq.SetQueryParam("id", request.DepartmentId); + if (request.ParentDepartmentId.HasValue) + flurlReq.SetQueryParam("id", request.ParentDepartmentId); return await client.SendRequestAsync(flurlReq, cancellationToken: cancellationToken); } diff --git a/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinExternalContact/GroupChat/Statistic/CgibinExternalContactGroupChatStatisticGroupByDayRequest.cs b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinExternalContact/GroupChat/Statistics/CgibinExternalContactGroupChatStatisticsGroupByDayRequest.cs similarity index 90% rename from src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinExternalContact/GroupChat/Statistic/CgibinExternalContactGroupChatStatisticGroupByDayRequest.cs rename to src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinExternalContact/GroupChat/Statistics/CgibinExternalContactGroupChatStatisticsGroupByDayRequest.cs index b5419016..62c8fbc5 100644 --- a/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinExternalContact/GroupChat/Statistic/CgibinExternalContactGroupChatStatisticGroupByDayRequest.cs +++ b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinExternalContact/GroupChat/Statistics/CgibinExternalContactGroupChatStatisticsGroupByDayRequest.cs @@ -6,11 +6,11 @@ namespace SKIT.FlurlHttpClient.Wechat.Work.Models /// /// 表示 [POST] /cgi-bin/externalcontact/groupchat/statistic_group_by_day 接口的请求。 /// - public class CgibinExternalContactGroupChatStatisticGroupByDayRequest : WechatWorkRequest + public class CgibinExternalContactGroupChatStatisticsGroupByDayRequest : WechatWorkRequest { public static class Types { - public class OwnerFilter : CgibinExternalContactGroupChatStatisticRequest.Types.OwnerFilter + public class OwnerFilter : CgibinExternalContactGroupChatStatisticsRequest.Types.OwnerFilter { } } diff --git a/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinExternalContact/GroupChat/Statistic/CgibinExternalContactGroupChatStatisticGroupByDayResponse.cs b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinExternalContact/GroupChat/Statistics/CgibinExternalContactGroupChatStatisticsGroupByDayResponse.cs similarity index 81% rename from src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinExternalContact/GroupChat/Statistic/CgibinExternalContactGroupChatStatisticGroupByDayResponse.cs rename to src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinExternalContact/GroupChat/Statistics/CgibinExternalContactGroupChatStatisticsGroupByDayResponse.cs index 8d02684b..ac1d0b9b 100644 --- a/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinExternalContact/GroupChat/Statistic/CgibinExternalContactGroupChatStatisticGroupByDayResponse.cs +++ b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinExternalContact/GroupChat/Statistics/CgibinExternalContactGroupChatStatisticsGroupByDayResponse.cs @@ -6,7 +6,7 @@ namespace SKIT.FlurlHttpClient.Wechat.Work.Models /// /// 表示 [POST] /cgi-bin/externalcontact/groupchat/statistic_group_by_day 接口的响应。 /// - public class CgibinExternalContactGroupChatStatisticGroupByDayResponse : WechatWorkResponse + public class CgibinExternalContactGroupChatStatisticsGroupByDayResponse : WechatWorkResponse { public static class Types { @@ -14,7 +14,7 @@ namespace SKIT.FlurlHttpClient.Wechat.Work.Models { public static class Types { - public class Statistic : CgibinExternalContactGroupChatStatisticResponse.Types.Data.Types.Statistic + public class Statistics : CgibinExternalContactGroupChatStatisticsResponse.Types.Data.Types.Statistics { } } @@ -31,7 +31,7 @@ namespace SKIT.FlurlHttpClient.Wechat.Work.Models /// [Newtonsoft.Json.JsonProperty("data")] [System.Text.Json.Serialization.JsonPropertyName("data")] - public Types.Statistic Statistic { get; set; } = default!; + public Types.Statistics Statistics { get; set; } = default!; } } diff --git a/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinExternalContact/GroupChat/Statistic/CgibinExternalContactGroupChatStatisticRequest.cs b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinExternalContact/GroupChat/Statistics/CgibinExternalContactGroupChatStatisticsRequest.cs similarity index 97% rename from src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinExternalContact/GroupChat/Statistic/CgibinExternalContactGroupChatStatisticRequest.cs rename to src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinExternalContact/GroupChat/Statistics/CgibinExternalContactGroupChatStatisticsRequest.cs index 4f58b80e..b40a91bc 100644 --- a/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinExternalContact/GroupChat/Statistic/CgibinExternalContactGroupChatStatisticRequest.cs +++ b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinExternalContact/GroupChat/Statistics/CgibinExternalContactGroupChatStatisticsRequest.cs @@ -6,7 +6,7 @@ namespace SKIT.FlurlHttpClient.Wechat.Work.Models /// /// 表示 [POST] /cgi-bin/externalcontact/groupchat/statistic 接口的请求。 /// - public class CgibinExternalContactGroupChatStatisticRequest : WechatWorkRequest + public class CgibinExternalContactGroupChatStatisticsRequest : WechatWorkRequest { public static class Types { diff --git a/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinExternalContact/GroupChat/Statistic/CgibinExternalContactGroupChatStatisticResponse.cs b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinExternalContact/GroupChat/Statistics/CgibinExternalContactGroupChatStatisticsResponse.cs similarity index 95% rename from src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinExternalContact/GroupChat/Statistic/CgibinExternalContactGroupChatStatisticResponse.cs rename to src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinExternalContact/GroupChat/Statistics/CgibinExternalContactGroupChatStatisticsResponse.cs index 6509e653..9a10c9de 100644 --- a/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinExternalContact/GroupChat/Statistic/CgibinExternalContactGroupChatStatisticResponse.cs +++ b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinExternalContact/GroupChat/Statistics/CgibinExternalContactGroupChatStatisticsResponse.cs @@ -6,7 +6,7 @@ namespace SKIT.FlurlHttpClient.Wechat.Work.Models /// /// 表示 [POST] /cgi-bin/externalcontact/groupchat/statistic 接口的响应。 /// - public class CgibinExternalContactGroupChatStatisticResponse : WechatWorkResponse + public class CgibinExternalContactGroupChatStatisticsResponse : WechatWorkResponse { public static class Types { @@ -14,7 +14,7 @@ namespace SKIT.FlurlHttpClient.Wechat.Work.Models { public static class Types { - public class Statistic + public class Statistics { /// /// 获取或设置新增客户群数量。 @@ -79,7 +79,7 @@ namespace SKIT.FlurlHttpClient.Wechat.Work.Models /// [Newtonsoft.Json.JsonProperty("data")] [System.Text.Json.Serialization.JsonPropertyName("data")] - public Types.Statistic Statistic { get; set; } = default!; + public Types.Statistics Statistics { get; set; } = default!; } } diff --git a/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Grid/CgibinReportGridAddRequest.cs b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Grid/CgibinReportGridAddRequest.cs new file mode 100644 index 00000000..005e55f7 --- /dev/null +++ b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Grid/CgibinReportGridAddRequest.cs @@ -0,0 +1,39 @@ +using System; +using System.Collections.Generic; + +namespace SKIT.FlurlHttpClient.Wechat.Work.Models +{ + /// + /// 表示 [POST] /cgi-bin/report/grid/add 接口的请求。 + /// + public class CgibinReportGridAddRequest : WechatWorkRequest + { + /// + /// 获取或设置网格名称。 + /// + [Newtonsoft.Json.JsonProperty("grid_name")] + [System.Text.Json.Serialization.JsonPropertyName("grid_name")] + public string Name { get; set; } = string.Empty; + + /// + /// 获取或设置上级网格 ID。 + /// + [Newtonsoft.Json.JsonProperty("grid_parent_id")] + [System.Text.Json.Serialization.JsonPropertyName("grid_parent_id")] + public string? ParentGridId { get; set; } + + /// + /// 获取或设置管理员 UserId 列表。 + /// + [Newtonsoft.Json.JsonProperty("grid_admin")] + [System.Text.Json.Serialization.JsonPropertyName("grid_admin")] + public IList AdministratorUserIdList { get; set; } = new List(); + + /// + /// 获取或设置网格成员 UserId 列表。 + /// + [Newtonsoft.Json.JsonProperty("grid_member")] + [System.Text.Json.Serialization.JsonPropertyName("grid_member")] + public IList? MemberUserIdList { get; set; } + } +} diff --git a/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Grid/CgibinReportGridAddResponse.cs b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Grid/CgibinReportGridAddResponse.cs new file mode 100644 index 00000000..88496345 --- /dev/null +++ b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Grid/CgibinReportGridAddResponse.cs @@ -0,0 +1,25 @@ +using System; +using System.Collections.Generic; + +namespace SKIT.FlurlHttpClient.Wechat.Work.Models +{ + /// + /// 表示 [POST] /cgi-bin/report/grid/add 接口的响应。 + /// + public class CgibinReportGridAddResponse : WechatWorkResponse + { + /// + /// 获取或设置网格 ID。 + /// + [Newtonsoft.Json.JsonProperty("grid_id")] + [System.Text.Json.Serialization.JsonPropertyName("grid_id")] + public string GridId { get; set; } = default!; + + /// + /// 获取或设置无效的 UserId 列表。 + /// + [Newtonsoft.Json.JsonProperty("invalid_userids")] + [System.Text.Json.Serialization.JsonPropertyName("invalid_userids")] + public string[]? InvalidUserIdList { get; set; } + } +} diff --git a/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Grid/CgibinReportGridDeleteRequest.cs b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Grid/CgibinReportGridDeleteRequest.cs new file mode 100644 index 00000000..712ba9c1 --- /dev/null +++ b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Grid/CgibinReportGridDeleteRequest.cs @@ -0,0 +1,18 @@ +using System; +using System.Collections.Generic; + +namespace SKIT.FlurlHttpClient.Wechat.Work.Models +{ + /// + /// 表示 [POST] /cgi-bin/report/grid/delete 接口的请求。 + /// + public class CgibinReportGridDeleteRequest : WechatWorkRequest + { + /// + /// 获取或设置网格 ID。 + /// + [Newtonsoft.Json.JsonProperty("grid_id")] + [System.Text.Json.Serialization.JsonPropertyName("grid_id")] + public string GridId { get; set; } = string.Empty; + } +} diff --git a/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Grid/CgibinReportGridDeleteResponse.cs b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Grid/CgibinReportGridDeleteResponse.cs new file mode 100644 index 00000000..a74813eb --- /dev/null +++ b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Grid/CgibinReportGridDeleteResponse.cs @@ -0,0 +1,12 @@ +using System; +using System.Collections.Generic; + +namespace SKIT.FlurlHttpClient.Wechat.Work.Models +{ + /// + /// 表示 [POST] /cgi-bin/report/grid/delete 接口的响应。 + /// + public class CgibinReportGridDeleteResponse : WechatWorkResponse + { + } +} diff --git a/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Grid/CgibinReportGridGetUserGridInfoRequest.cs b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Grid/CgibinReportGridGetUserGridInfoRequest.cs new file mode 100644 index 00000000..1be36cdf --- /dev/null +++ b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Grid/CgibinReportGridGetUserGridInfoRequest.cs @@ -0,0 +1,18 @@ +using System; +using System.Collections.Generic; + +namespace SKIT.FlurlHttpClient.Wechat.Work.Models +{ + /// + /// 表示 [POST] /cgi-bin/report/grid/get_user_grid_info 接口的请求。 + /// + public class CgibinReportGridGetUserGridInfoRequest : WechatWorkRequest + { + /// + /// 获取或设置指定用户 UserId。 + /// + [Newtonsoft.Json.JsonProperty("userid")] + [System.Text.Json.Serialization.JsonPropertyName("userid")] + public string UserId { get; set; } = string.Empty; + } +} diff --git a/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Grid/CgibinReportGridGetUserGridInfoResponse.cs b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Grid/CgibinReportGridGetUserGridInfoResponse.cs new file mode 100644 index 00000000..34528358 --- /dev/null +++ b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Grid/CgibinReportGridGetUserGridInfoResponse.cs @@ -0,0 +1,45 @@ +using System; +using System.Collections.Generic; + +namespace SKIT.FlurlHttpClient.Wechat.Work.Models +{ + /// + /// 表示 [POST] /cgi-bin/report/grid/get_user_grid_info 接口的响应。 + /// + public class CgibinReportGridGetUserGridInfoResponse : WechatWorkResponse + { + public static class Types + { + public class Grid + { + /// + /// 获取或设置网格 ID。 + /// + [Newtonsoft.Json.JsonProperty("grid_id")] + [System.Text.Json.Serialization.JsonPropertyName("grid_id")] + public string GridId { get; set; } = default!; + + /// + /// 获取或设置网格名称。 + /// + [Newtonsoft.Json.JsonProperty("grid_name")] + [System.Text.Json.Serialization.JsonPropertyName("grid_name")] + public string Name { get; set; } = default!; + } + } + + /// + /// 获取或设置管理的网格列表。 + /// + [Newtonsoft.Json.JsonProperty("manage_grids")] + [System.Text.Json.Serialization.JsonPropertyName("manage_grids")] + public Types.Grid[] ManagedGridList { get; set; } = default!; + + /// + /// 获取或设置加入的网格列表。 + /// + [Newtonsoft.Json.JsonProperty("joined_grids")] + [System.Text.Json.Serialization.JsonPropertyName("joined_grids")] + public Types.Grid[] JoinedGridList { get; set; } = default!; + } +} diff --git a/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Grid/CgibinReportGridListRequest.cs b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Grid/CgibinReportGridListRequest.cs new file mode 100644 index 00000000..b6051597 --- /dev/null +++ b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Grid/CgibinReportGridListRequest.cs @@ -0,0 +1,18 @@ +using System; +using System.Collections.Generic; + +namespace SKIT.FlurlHttpClient.Wechat.Work.Models +{ + /// + /// 表示 [POST] /cgi-bin/report/grid/list 接口的请求。 + /// + public class CgibinReportGridListRequest : WechatWorkRequest + { + /// + /// 获取或设置指定上级网格 ID。 + /// + [Newtonsoft.Json.JsonProperty("grid_id")] + [System.Text.Json.Serialization.JsonPropertyName("grid_id")] + public string? ParentGridId { get; set; } + } +} diff --git a/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Grid/CgibinReportGridListResponse.cs b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Grid/CgibinReportGridListResponse.cs new file mode 100644 index 00000000..3351d0b2 --- /dev/null +++ b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Grid/CgibinReportGridListResponse.cs @@ -0,0 +1,59 @@ +using System; +using System.Collections.Generic; + +namespace SKIT.FlurlHttpClient.Wechat.Work.Models +{ + /// + /// 表示 [POST] /cgi-bin/report/grid/list 接口的响应。 + /// + public class CgibinReportGridListResponse : WechatWorkResponse + { + public static class Types + { + public class Grid + { + /// + /// 获取或设置网格 ID。 + /// + [Newtonsoft.Json.JsonProperty("grid_id")] + [System.Text.Json.Serialization.JsonPropertyName("grid_id")] + public string GridId { get; set; } = default!; + + /// + /// 获取或设置网格名称。 + /// + [Newtonsoft.Json.JsonProperty("grid_name")] + [System.Text.Json.Serialization.JsonPropertyName("grid_name")] + public string Name { get; set; } = default!; + + /// + /// 获取或设置上级网格 ID。 + /// + [Newtonsoft.Json.JsonProperty("grid_parent_id")] + [System.Text.Json.Serialization.JsonPropertyName("grid_parent_id")] + public string? ParentGridId { get; set; } + + /// + /// 获取或设置管理员 UserId 列表。 + /// + [Newtonsoft.Json.JsonProperty("grid_admin")] + [System.Text.Json.Serialization.JsonPropertyName("grid_admin")] + public string[] AdministratorUserIdList { get; set; } = default!; + + /// + /// 获取或设置网格成员 UserId 列表。 + /// + [Newtonsoft.Json.JsonProperty("grid_member")] + [System.Text.Json.Serialization.JsonPropertyName("grid_member")] + public string[] MemberUserIdList { get; set; } = default!; + } + } + + /// + /// 获取或设置网格列表。 + /// + [Newtonsoft.Json.JsonProperty("grid_list")] + [System.Text.Json.Serialization.JsonPropertyName("grid_list")] + public Types.Grid[] GridList { get; set; } = default!; + } +} diff --git a/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Grid/CgibinReportGridUpdateRequest.cs b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Grid/CgibinReportGridUpdateRequest.cs new file mode 100644 index 00000000..8a6b633d --- /dev/null +++ b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Grid/CgibinReportGridUpdateRequest.cs @@ -0,0 +1,18 @@ +using System; +using System.Collections.Generic; + +namespace SKIT.FlurlHttpClient.Wechat.Work.Models +{ + /// + /// 表示 [POST] /cgi-bin/report/grid/update 接口的请求。 + /// + public class CgibinReportGridUpdateRequest : CgibinReportGridAddRequest + { + /// + /// 获取或设置网格 ID。 + /// + [Newtonsoft.Json.JsonProperty("grid_id")] + [System.Text.Json.Serialization.JsonPropertyName("grid_id")] + public string GridId { get; set; } = string.Empty; + } +} diff --git a/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Grid/CgibinReportGridUpdateResponse.cs b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Grid/CgibinReportGridUpdateResponse.cs new file mode 100644 index 00000000..17b3ba9b --- /dev/null +++ b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Grid/CgibinReportGridUpdateResponse.cs @@ -0,0 +1,18 @@ +using System; +using System.Collections.Generic; + +namespace SKIT.FlurlHttpClient.Wechat.Work.Models +{ + /// + /// 表示 [POST] /cgi-bin/report/grid/update 接口的响应。 + /// + public class CgibinReportGridUpdateResponse : WechatWorkResponse + { + /// + /// 获取或设置无效的 UserId 列表。 + /// + [Newtonsoft.Json.JsonProperty("invalid_userids")] + [System.Text.Json.Serialization.JsonPropertyName("invalid_userids")] + public string[]? InvalidUserIdList { get; set; } + } +} diff --git a/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/GridCategory/CgibinReportGridAddCategoryRequest.cs b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/GridCategory/CgibinReportGridAddCategoryRequest.cs new file mode 100644 index 00000000..9f354c7e --- /dev/null +++ b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/GridCategory/CgibinReportGridAddCategoryRequest.cs @@ -0,0 +1,32 @@ +using System; +using System.Collections.Generic; + +namespace SKIT.FlurlHttpClient.Wechat.Work.Models +{ + /// + /// 表示 [POST] /cgi-bin/report/grid/add_cata 接口的请求。 + /// + public class CgibinReportGridAddCategoryRequest : WechatWorkRequest + { + /// + /// 获取或设置分类名称。 + /// + [Newtonsoft.Json.JsonProperty("category_name")] + [System.Text.Json.Serialization.JsonPropertyName("category_name")] + public string Name { get; set; } = string.Empty; + + /// + /// 获取或设置分类层级。 + /// + [Newtonsoft.Json.JsonProperty("level")] + [System.Text.Json.Serialization.JsonPropertyName("level")] + public int Level { get; set; } + + /// + /// 获取或设置上级分类 ID。 + /// + [Newtonsoft.Json.JsonProperty("parent_category_id")] + [System.Text.Json.Serialization.JsonPropertyName("parent_category_id")] + public string? ParentCategoryId { get; set; } + } +} diff --git a/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/GridCategory/CgibinReportGridAddCategoryResponse.cs b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/GridCategory/CgibinReportGridAddCategoryResponse.cs new file mode 100644 index 00000000..5e593e29 --- /dev/null +++ b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/GridCategory/CgibinReportGridAddCategoryResponse.cs @@ -0,0 +1,18 @@ +using System; +using System.Collections.Generic; + +namespace SKIT.FlurlHttpClient.Wechat.Work.Models +{ + /// + /// 表示 [POST] /cgi-bin/report/grid/add_cata 接口的响应。 + /// + public class CgibinReportGridAddCategoryResponse : WechatWorkResponse + { + /// + /// 获取或设置分类 ID。 + /// + [Newtonsoft.Json.JsonProperty("category_id")] + [System.Text.Json.Serialization.JsonPropertyName("category_id")] + public string CategoryId { get; set; } = default!; + } +} diff --git a/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/GridCategory/CgibinReportGridDeleteCategoryRequest.cs b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/GridCategory/CgibinReportGridDeleteCategoryRequest.cs new file mode 100644 index 00000000..20950a5d --- /dev/null +++ b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/GridCategory/CgibinReportGridDeleteCategoryRequest.cs @@ -0,0 +1,18 @@ +using System; +using System.Collections.Generic; + +namespace SKIT.FlurlHttpClient.Wechat.Work.Models +{ + /// + /// 表示 [POST] /cgi-bin/report/grid/delete_cata 接口的请求。 + /// + public class CgibinReportGridDeleteCategoryRequest : WechatWorkRequest + { + /// + /// 获取或设置分类 ID。 + /// + [Newtonsoft.Json.JsonProperty("category_id")] + [System.Text.Json.Serialization.JsonPropertyName("category_id")] + public string CategoryId { get; set; } = string.Empty; + } +} diff --git a/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/GridCategory/CgibinReportGridDeleteCategoryResponse.cs b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/GridCategory/CgibinReportGridDeleteCategoryResponse.cs new file mode 100644 index 00000000..23504e70 --- /dev/null +++ b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/GridCategory/CgibinReportGridDeleteCategoryResponse.cs @@ -0,0 +1,12 @@ +using System; +using System.Collections.Generic; + +namespace SKIT.FlurlHttpClient.Wechat.Work.Models +{ + /// + /// 表示 [POST] /cgi-bin/report/grid/delete_cata 接口的响应。 + /// + public class CgibinReportGridDeleteCategoryResponse : WechatWorkResponse + { + } +} diff --git a/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/GridCategory/CgibinReportGridListCategoryRequest.cs b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/GridCategory/CgibinReportGridListCategoryRequest.cs new file mode 100644 index 00000000..26a673b2 --- /dev/null +++ b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/GridCategory/CgibinReportGridListCategoryRequest.cs @@ -0,0 +1,12 @@ +using System; +using System.Collections.Generic; + +namespace SKIT.FlurlHttpClient.Wechat.Work.Models +{ + /// + /// 表示 [POST] /cgi-bin/report/grid/list_cata 接口的请求。 + /// + public class CgibinReportGridListCategoryRequest : WechatWorkRequest + { + } +} diff --git a/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/GridCategory/CgibinReportGridListCategoryResponse.cs b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/GridCategory/CgibinReportGridListCategoryResponse.cs new file mode 100644 index 00000000..d7c9025d --- /dev/null +++ b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/GridCategory/CgibinReportGridListCategoryResponse.cs @@ -0,0 +1,52 @@ +using System; +using System.Collections.Generic; + +namespace SKIT.FlurlHttpClient.Wechat.Work.Models +{ + /// + /// 表示 [POST] /cgi-bin/report/grid/list_cata 接口的响应。 + /// + public class CgibinReportGridListCategoryResponse : WechatWorkResponse + { + public static class Types + { + public class Category + { + /// + /// 获取或设置分类 ID。 + /// + [Newtonsoft.Json.JsonProperty("cata_id")] + [System.Text.Json.Serialization.JsonPropertyName("cata_id")] + public string CategoryId { get; set; } = default!; + + /// + /// 获取或设置分类名称。 + /// + [Newtonsoft.Json.JsonProperty("cata_name")] + [System.Text.Json.Serialization.JsonPropertyName("cata_name")] + public string Name { get; set; } = default!; + + /// + /// 获取或设置分类层级。 + /// + [Newtonsoft.Json.JsonProperty("level")] + [System.Text.Json.Serialization.JsonPropertyName("level")] + public int Level { get; set; } + + /// + /// 获取或设置上级分类 ID。 + /// + [Newtonsoft.Json.JsonProperty("parent_cata_id")] + [System.Text.Json.Serialization.JsonPropertyName("parent_cata_id")] + public string? ParentCategoryId { get; set; } + } + } + + /// + /// 获取或设置分类列表。 + /// + [Newtonsoft.Json.JsonProperty("cata_list")] + [System.Text.Json.Serialization.JsonPropertyName("cata_list")] + public Types.Category[] CategoryList { get; set; } = default!; + } +} diff --git a/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/GridCategory/CgibinReportGridUpdateCategoryRequest.cs b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/GridCategory/CgibinReportGridUpdateCategoryRequest.cs new file mode 100644 index 00000000..ec1518d9 --- /dev/null +++ b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/GridCategory/CgibinReportGridUpdateCategoryRequest.cs @@ -0,0 +1,18 @@ +using System; +using System.Collections.Generic; + +namespace SKIT.FlurlHttpClient.Wechat.Work.Models +{ + /// + /// 表示 [POST] /cgi-bin/report/grid/update_cata 接口的请求。 + /// + public class CgibinReportGridUpdateCategoryRequest : CgibinReportGridAddCategoryRequest + { + /// + /// 获取或设置分类 ID。 + /// + [Newtonsoft.Json.JsonProperty("category_id")] + [System.Text.Json.Serialization.JsonPropertyName("category_id")] + public string CatrgoryId { get; set; } = string.Empty; + } +} diff --git a/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/GridCategory/CgibinReportGridUpdateCategoryResponse.cs b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/GridCategory/CgibinReportGridUpdateCategoryResponse.cs new file mode 100644 index 00000000..96cfc672 --- /dev/null +++ b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/GridCategory/CgibinReportGridUpdateCategoryResponse.cs @@ -0,0 +1,12 @@ +using System; +using System.Collections.Generic; + +namespace SKIT.FlurlHttpClient.Wechat.Work.Models +{ + /// + /// 表示 [POST] /cgi-bin/report/grid/update_cata 接口的响应。 + /// + public class CgibinReportGridUpdateCategoryResponse : WechatWorkResponse + { + } +} diff --git a/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Patrol/CgibinReportPatrolCategoryStatisticsRequest.cs b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Patrol/CgibinReportPatrolCategoryStatisticsRequest.cs new file mode 100644 index 00000000..835723d9 --- /dev/null +++ b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Patrol/CgibinReportPatrolCategoryStatisticsRequest.cs @@ -0,0 +1,18 @@ +using System; +using System.Collections.Generic; + +namespace SKIT.FlurlHttpClient.Wechat.Work.Models +{ + /// + /// 表示 [POST] /cgi-bin/report/patrol/category_statistic 接口的请求。 + /// + public class CgibinReportPatrolCategoryStatisticsRequest : WechatWorkRequest + { + /// + /// 获取或设置分类 ID。 + /// + [Newtonsoft.Json.JsonProperty("category_id")] + [System.Text.Json.Serialization.JsonPropertyName("category_id")] + public string CategoryId { get; set; } = string.Empty; + } +} diff --git a/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Patrol/CgibinReportPatrolCategoryStatisticsResponse.cs b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Patrol/CgibinReportPatrolCategoryStatisticsResponse.cs new file mode 100644 index 00000000..18f589e8 --- /dev/null +++ b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Patrol/CgibinReportPatrolCategoryStatisticsResponse.cs @@ -0,0 +1,66 @@ +using System; +using System.Collections.Generic; + +namespace SKIT.FlurlHttpClient.Wechat.Work.Models +{ + /// + /// 表示 [POST] /cgi-bin/report/patrol/category_statistic 接口的响应。 + /// + public class CgibinReportPatrolCategoryStatisticsResponse : WechatWorkResponse + { + public static class Types + { + public class Data + { + /// + /// 获取或设置分类 ID。 + /// + [Newtonsoft.Json.JsonProperty("category_id")] + [System.Text.Json.Serialization.JsonPropertyName("category_id")] + public string CategoryId { get; set; } = default!; + + /// + /// 获取或设置分类名称。 + /// + [Newtonsoft.Json.JsonProperty("category_name")] + [System.Text.Json.Serialization.JsonPropertyName("category_name")] + public string CategoryName { get; set; } = default!; + + /// + /// 获取或设置分类层级。 + /// + [Newtonsoft.Json.JsonProperty("category_level")] + [System.Text.Json.Serialization.JsonPropertyName("category_level")] + public int CategoryLevel { get; set; } + + /// + /// 获取或设置分类类型。 + /// + [Newtonsoft.Json.JsonProperty("category_type")] + [System.Text.Json.Serialization.JsonPropertyName("category_type")] + public int CategoryType { get; set; } + + /// + /// 获取或设置累计上报数量。 + /// + [Newtonsoft.Json.JsonProperty("total_case")] + [System.Text.Json.Serialization.JsonPropertyName("total_case")] + public int TotalAddedCount { get; set; } + + /// + /// 获取或设置累计办结数量。 + /// + [Newtonsoft.Json.JsonProperty("total_solved")] + [System.Text.Json.Serialization.JsonPropertyName("total_solved")] + public int TotalSolvedCount { get; set; } + } + } + + /// + /// 获取或设置数据列表。 + /// + [Newtonsoft.Json.JsonProperty("dashboard_list")] + [System.Text.Json.Serialization.JsonPropertyName("dashboard_list")] + public Types.Data[] DataList { get; set; } = default!; + } +} diff --git a/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Patrol/CgibinReportPatrolGetCorpStatusRequest.cs b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Patrol/CgibinReportPatrolGetCorpStatusRequest.cs new file mode 100644 index 00000000..58ddf5aa --- /dev/null +++ b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Patrol/CgibinReportPatrolGetCorpStatusRequest.cs @@ -0,0 +1,18 @@ +using System; +using System.Collections.Generic; + +namespace SKIT.FlurlHttpClient.Wechat.Work.Models +{ + /// + /// 表示 [POST] /cgi-bin/report/patrol/get_corp_status 接口的请求。 + /// + public class CgibinReportPatrolGetCorpStatusRequest : WechatWorkRequest + { + /// + /// 获取或设置网格 ID。 + /// + [Newtonsoft.Json.JsonProperty("grid_id")] + [System.Text.Json.Serialization.JsonPropertyName("grid_id")] + public string GridId { get; set; } = string.Empty; + } +} diff --git a/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Patrol/CgibinReportPatrolGetCorpStatusResponse.cs b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Patrol/CgibinReportPatrolGetCorpStatusResponse.cs new file mode 100644 index 00000000..83a7f3c3 --- /dev/null +++ b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Patrol/CgibinReportPatrolGetCorpStatusResponse.cs @@ -0,0 +1,53 @@ +using System; +using System.Collections.Generic; + +namespace SKIT.FlurlHttpClient.Wechat.Work.Models +{ + /// + /// 表示 [POST] /cgi-bin/report/patrol/get_corp_status 接口的响应。 + /// + public class CgibinReportPatrolGetCorpStatusResponse : WechatWorkResponse + { + /// + /// 获取或设置待分配数量。 + /// + [Newtonsoft.Json.JsonProperty("to_be_assigned")] + [System.Text.Json.Serialization.JsonPropertyName("to_be_assigned")] + public int ToBeAssignedCount { get; set; } + + /// + /// 获取或设置办理中数量。 + /// + [Newtonsoft.Json.JsonProperty("processing")] + [System.Text.Json.Serialization.JsonPropertyName("processing")] + public int ProcessingCount { get; set; } + + /// + /// 获取或设置今日上报数量。 + /// + [Newtonsoft.Json.JsonProperty("added_today")] + [System.Text.Json.Serialization.JsonPropertyName("added_today")] + public int TodayAddedCount { get; set; } + + /// + /// 获取或设置今日办结数量。 + /// + [Newtonsoft.Json.JsonProperty("solved_today")] + [System.Text.Json.Serialization.JsonPropertyName("solved_today")] + public int TodaySolvedCount { get; set; } + + /// + /// 获取或设置累计上报数量。 + /// + [Newtonsoft.Json.JsonProperty("total_case")] + [System.Text.Json.Serialization.JsonPropertyName("total_case")] + public int TotalAddedCount { get; set; } + + /// + /// 获取或设置累计办结数量。 + /// + [Newtonsoft.Json.JsonProperty("total_solved")] + [System.Text.Json.Serialization.JsonPropertyName("total_solved")] + public int TotalSolvedCount { get; set; } + } +} diff --git a/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Patrol/CgibinReportPatrolGetGridInfoRequest.cs b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Patrol/CgibinReportPatrolGetGridInfoRequest.cs new file mode 100644 index 00000000..3885ecfa --- /dev/null +++ b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Patrol/CgibinReportPatrolGetGridInfoRequest.cs @@ -0,0 +1,12 @@ +using System; +using System.Collections.Generic; + +namespace SKIT.FlurlHttpClient.Wechat.Work.Models +{ + /// + /// 表示 [GET] /cgi-bin/report/patrol/get_grid_info 接口的请求。 + /// + public class CgibinReportPatrolGetGridInfoRequest : WechatWorkRequest + { + } +} diff --git a/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Patrol/CgibinReportPatrolGetGridInfoResponse.cs b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Patrol/CgibinReportPatrolGetGridInfoResponse.cs new file mode 100644 index 00000000..03aab319 --- /dev/null +++ b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Patrol/CgibinReportPatrolGetGridInfoResponse.cs @@ -0,0 +1,45 @@ +using System; +using System.Collections.Generic; + +namespace SKIT.FlurlHttpClient.Wechat.Work.Models +{ + /// + /// 表示 [GET] /cgi-bin/report/patrol/get_grid_info 接口的响应。 + /// + public class CgibinReportPatrolGetGridInfoResponse : WechatWorkResponse + { + public static class Types + { + public class Grid + { + /// + /// 获取或设置网格 ID。 + /// + [Newtonsoft.Json.JsonProperty("grid_id")] + [System.Text.Json.Serialization.JsonPropertyName("grid_id")] + public string GridId { get; set; } = default!; + + /// + /// 获取或设置网格名称。 + /// + [Newtonsoft.Json.JsonProperty("grid_name")] + [System.Text.Json.Serialization.JsonPropertyName("grid_name")] + public string Name { get; set; } = default!; + + /// + /// 获取或设置管理员 UserId 列表。 + /// + [Newtonsoft.Json.JsonProperty("grid_admin")] + [System.Text.Json.Serialization.JsonPropertyName("grid_admin")] + public string[] AdministratorUserIdList { get; set; } = default!; + } + } + + /// + /// 获取或设置网格列表。 + /// + [Newtonsoft.Json.JsonProperty("grid_list")] + [System.Text.Json.Serialization.JsonPropertyName("grid_list")] + public Types.Grid[] GridList { get; set; } = default!; + } +} diff --git a/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Patrol/CgibinReportPatrolGetOrderInfoRequest.cs b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Patrol/CgibinReportPatrolGetOrderInfoRequest.cs new file mode 100644 index 00000000..4f39c387 --- /dev/null +++ b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Patrol/CgibinReportPatrolGetOrderInfoRequest.cs @@ -0,0 +1,18 @@ +using System; +using System.Collections.Generic; + +namespace SKIT.FlurlHttpClient.Wechat.Work.Models +{ + /// + /// 表示 [POST] /cgi-bin/report/patrol/get_order_info 接口的请求。 + /// + public class CgibinReportPatrolGetOrderInfoRequest : WechatWorkRequest + { + /// + /// 获取或设置工单 ID。 + /// + [Newtonsoft.Json.JsonProperty("order_id")] + [System.Text.Json.Serialization.JsonPropertyName("order_id")] + public string WorkOrderId { get; set; } = string.Empty; + } +} diff --git a/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Patrol/CgibinReportPatrolGetOrderInfoResponse.cs b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Patrol/CgibinReportPatrolGetOrderInfoResponse.cs new file mode 100644 index 00000000..8a425c42 --- /dev/null +++ b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Patrol/CgibinReportPatrolGetOrderInfoResponse.cs @@ -0,0 +1,25 @@ +using System; +using System.Collections.Generic; + +namespace SKIT.FlurlHttpClient.Wechat.Work.Models +{ + /// + /// 表示 [POST] /cgi-bin/report/patrol/get_order_info 接口的响应。 + /// + public class CgibinReportPatrolGetOrderInfoResponse : WechatWorkResponse + { + public static class Types + { + public class WorkOrder : CgibinReportPatrolGetOrderListResponse.Types.WorkOrder + { + } + } + + /// + /// 获取或设置工单信息。 + /// + [Newtonsoft.Json.JsonProperty("order_info")] + [System.Text.Json.Serialization.JsonPropertyName("order_info")] + public Types.WorkOrder WorkOrder { get; set; } = default!; + } +} diff --git a/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Patrol/CgibinReportPatrolGetOrderListRequest.cs b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Patrol/CgibinReportPatrolGetOrderListRequest.cs new file mode 100644 index 00000000..b8ad197e --- /dev/null +++ b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Patrol/CgibinReportPatrolGetOrderListRequest.cs @@ -0,0 +1,39 @@ +using System; +using System.Collections.Generic; + +namespace SKIT.FlurlHttpClient.Wechat.Work.Models +{ + /// + /// 表示 [POST] /cgi-bin/report/patrol/get_order_list 接口的请求。 + /// + public class CgibinReportPatrolGetOrderListRequest : WechatWorkRequest + { + /// + /// 获取或设置指定时间后创建的时间戳。 + /// + [Newtonsoft.Json.JsonProperty("begin_create_time")] + [System.Text.Json.Serialization.JsonPropertyName("begin_create_time")] + public long? CreateBeginTimestamp { get; set; } + + /// + /// 获取或设置指定时间后修改的时间戳。 + /// + [Newtonsoft.Json.JsonProperty("begin_modify_time")] + [System.Text.Json.Serialization.JsonPropertyName("begin_modify_time")] + public long? ModifyBeginTimestamp { get; set; } + + /// + /// 获取或设置翻页标记。 + /// + [Newtonsoft.Json.JsonProperty("cursor")] + [System.Text.Json.Serialization.JsonPropertyName("cursor")] + public string? NextCursor { get; set; } + + /// + /// 获取或设置分页每页数量。 + /// + [Newtonsoft.Json.JsonProperty("limit")] + [System.Text.Json.Serialization.JsonPropertyName("limit")] + public int? Limit { get; set; } + } +} diff --git a/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Patrol/CgibinReportPatrolGetOrderListResponse.cs b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Patrol/CgibinReportPatrolGetOrderListResponse.cs new file mode 100644 index 00000000..622736a7 --- /dev/null +++ b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Patrol/CgibinReportPatrolGetOrderListResponse.cs @@ -0,0 +1,201 @@ +using System; +using System.Collections.Generic; + +namespace SKIT.FlurlHttpClient.Wechat.Work.Models +{ + /// + /// 表示 [POST] /cgi-bin/report/patrol/get_order_list 接口的响应。 + /// + public class CgibinReportPatrolGetOrderListResponse : WechatWorkResponse + { + public static class Types + { + public class WorkOrder + { + public static class Types + { + public class Location + { + /// + /// 获取或设置位置名称。 + /// + [Newtonsoft.Json.JsonProperty("name")] + [System.Text.Json.Serialization.JsonPropertyName("name")] + public string Name { get; set; } = default!; + + /// + /// 获取或设置详细地址。 + /// + [Newtonsoft.Json.JsonProperty("address")] + [System.Text.Json.Serialization.JsonPropertyName("address")] + public string Address { get; set; } = default!; + + /// + /// 获取或设置经度。 + /// + [Newtonsoft.Json.JsonProperty("longitude")] + [System.Text.Json.Serialization.JsonPropertyName("longitude")] + public double Longitude { get; set; } + + /// + /// 获取或设置纬度。 + /// + [Newtonsoft.Json.JsonProperty("latitude")] + [System.Text.Json.Serialization.JsonPropertyName("latitude")] + public double Latitude { get; set; } + } + + public class ProcessRecord + { + /// + /// 获取或设置流程类型。 + /// + [Newtonsoft.Json.JsonProperty("process_type")] + [System.Text.Json.Serialization.JsonPropertyName("process_type")] + public int Type { get; set; } + + /// + /// 获取或设置流程描述。 + /// + [Newtonsoft.Json.JsonProperty("process_desc")] + [System.Text.Json.Serialization.JsonPropertyName("process_desc")] + public string Description { get; set; } = default!; + + /// + /// 获取或设置流程状态。 + /// + [Newtonsoft.Json.JsonProperty("status")] + [System.Text.Json.Serialization.JsonPropertyName("status")] + public int Status { get; set; } + + /// + /// 获取或设置图片 URL 列表。 + /// + [Newtonsoft.Json.JsonProperty("image_urls")] + [System.Text.Json.Serialization.JsonPropertyName("image_urls")] + public string[]? ImageUrlList { get; set; } + + /// + /// 获取或设置视频 MediaId 列表。 + /// + [Newtonsoft.Json.JsonProperty("video_media_ids")] + [System.Text.Json.Serialization.JsonPropertyName("video_media_ids")] + public string[]? VideoMediaIdList { get; set; } + + /// + /// 获取或设置办结人用户 UserId。 + /// + [Newtonsoft.Json.JsonProperty("solve_userid")] + [System.Text.Json.Serialization.JsonPropertyName("solve_userid")] + public string? SolverUserId { get; set; } + + /// + /// 获取或设置办结时间戳。 + /// + [Newtonsoft.Json.JsonProperty("solved_time")] + [System.Text.Json.Serialization.JsonPropertyName("solved_time")] + public long? SolvedTimestamp { get; set; } + } + } + + /// + /// 获取或设置工单 ID。 + /// + [Newtonsoft.Json.JsonProperty("order_id")] + [System.Text.Json.Serialization.JsonPropertyName("order_id")] + public string WorkOrderId { get; set; } = default!; + + /// + /// 获取或设置事件描述。 + /// + [Newtonsoft.Json.JsonProperty("desc")] + [System.Text.Json.Serialization.JsonPropertyName("desc")] + public string Description { get; set; } = default!; + + /// + /// 获取或设置紧急类型。 + /// + [Newtonsoft.Json.JsonProperty("urge_type")] + [System.Text.Json.Serialization.JsonPropertyName("urge_type")] + public int UrgencyType { get; set; } + + /// + /// 获取或设置分类名称。 + /// + [Newtonsoft.Json.JsonProperty("case_name")] + [System.Text.Json.Serialization.JsonPropertyName("case_name")] + public string CategoryName { get; set; } = default!; + + /// + /// 获取或设置网格 ID。 + /// + [Newtonsoft.Json.JsonProperty("grid_id")] + [System.Text.Json.Serialization.JsonPropertyName("grid_id")] + public string GridId { get; set; } = default!; + + /// + /// 获取或设置网格名称。 + /// + [Newtonsoft.Json.JsonProperty("grid_name")] + [System.Text.Json.Serialization.JsonPropertyName("grid_name")] + public string GridName { get; set; } = default!; + + /// + /// 获取或设置创建时间戳。 + /// + [Newtonsoft.Json.JsonProperty("create_time")] + [System.Text.Json.Serialization.JsonPropertyName("create_time")] + public long CreateTimestamp { get; set; } + + /// + /// 获取或设置图片 URL 列表。 + /// + [Newtonsoft.Json.JsonProperty("image_urls")] + [System.Text.Json.Serialization.JsonPropertyName("image_urls")] + public string[]? ImageUrlList { get; set; } + + /// + /// 获取或设置视频 MediaId 列表。 + /// + [Newtonsoft.Json.JsonProperty("video_media_ids")] + [System.Text.Json.Serialization.JsonPropertyName("video_media_ids")] + public string[]? VideoMediaIdList { get; set; } + + /// + /// 获取或设置位置信息。 + /// + [Newtonsoft.Json.JsonProperty("location")] + [System.Text.Json.Serialization.JsonPropertyName("location")] + public Types.Location? Location { get; set; } + + /// + /// 获取或设置处理人用户 UserId 列表。 + /// + [Newtonsoft.Json.JsonProperty("processor_userids")] + [System.Text.Json.Serialization.JsonPropertyName("processor_userids")] + public string[]? ProcessorUserIdList { get; set; } + + /// + /// 获取或设置处理记录列表。 + /// + [Newtonsoft.Json.JsonProperty("process_list")] + [System.Text.Json.Serialization.JsonPropertyName("process_list")] + public Types.ProcessRecord[] ProcessRecordList { get; set; } = default!; + } + } + + /// + /// 获取或设置工单列表。 + /// + [Newtonsoft.Json.JsonProperty("order_list")] + [System.Text.Json.Serialization.JsonPropertyName("order_list")] + public Types.WorkOrder[] WorkOrderList { get; set; } = default!; + + /// + /// 获取或设置翻页标记。 + /// + [Newtonsoft.Json.JsonProperty("next_cursor")] + [System.Text.Json.Serialization.JsonPropertyName("next_cursor")] + public string? NextCursor { get; set; } + } +} diff --git a/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Patrol/CgibinReportPatrolGetUserStatusRequest.cs b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Patrol/CgibinReportPatrolGetUserStatusRequest.cs new file mode 100644 index 00000000..4415cd29 --- /dev/null +++ b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Patrol/CgibinReportPatrolGetUserStatusRequest.cs @@ -0,0 +1,18 @@ +using System; +using System.Collections.Generic; + +namespace SKIT.FlurlHttpClient.Wechat.Work.Models +{ + /// + /// 表示 [POST] /cgi-bin/report/patrol/get_user_status 接口的请求。 + /// + public class CgibinReportPatrolGetUserStatusRequest : WechatWorkRequest + { + /// + /// 获取或设置用户 UserId。 + /// + [Newtonsoft.Json.JsonProperty("userid")] + [System.Text.Json.Serialization.JsonPropertyName("userid")] + public string UserId { get; set; } = string.Empty; + } +} diff --git a/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Patrol/CgibinReportPatrolGetUserStatusResponse.cs b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Patrol/CgibinReportPatrolGetUserStatusResponse.cs new file mode 100644 index 00000000..0eb543be --- /dev/null +++ b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Patrol/CgibinReportPatrolGetUserStatusResponse.cs @@ -0,0 +1,32 @@ +using System; +using System.Collections.Generic; + +namespace SKIT.FlurlHttpClient.Wechat.Work.Models +{ + /// + /// 表示 [POST] /cgi-bin/report/patrol/get_user_status 接口的响应。 + /// + public class CgibinReportPatrolGetUserStatusResponse : WechatWorkResponse + { + /// + /// 获取或设置办理中数量。 + /// + [Newtonsoft.Json.JsonProperty("processing")] + [System.Text.Json.Serialization.JsonPropertyName("processing")] + public int ProcessingCount { get; set; } + + /// + /// 获取或设置今日上报数量。 + /// + [Newtonsoft.Json.JsonProperty("added_today")] + [System.Text.Json.Serialization.JsonPropertyName("added_today")] + public int TodayAddedCount { get; set; } + + /// + /// 获取或设置今日办结数量。 + /// + [Newtonsoft.Json.JsonProperty("solved_today")] + [System.Text.Json.Serialization.JsonPropertyName("solved_today")] + public int TodaySolvedCount { get; set; } + } +} diff --git a/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Resident/CgibinReportResidentCategoryStatisticsRequest.cs b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Resident/CgibinReportResidentCategoryStatisticsRequest.cs new file mode 100644 index 00000000..386cdb8f --- /dev/null +++ b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Resident/CgibinReportResidentCategoryStatisticsRequest.cs @@ -0,0 +1,12 @@ +using System; +using System.Collections.Generic; + +namespace SKIT.FlurlHttpClient.Wechat.Work.Models +{ + /// + /// 表示 [POST] /cgi-bin/report/resident/category_statistic 接口的请求。 + /// + public class CgibinReportResidentCategoryStatisticsRequest : CgibinReportPatrolCategoryStatisticsRequest + { + } +} diff --git a/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Resident/CgibinReportResidentCategoryStatisticsResponse.cs b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Resident/CgibinReportResidentCategoryStatisticsResponse.cs new file mode 100644 index 00000000..80d4b088 --- /dev/null +++ b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Resident/CgibinReportResidentCategoryStatisticsResponse.cs @@ -0,0 +1,25 @@ +using System; +using System.Collections.Generic; + +namespace SKIT.FlurlHttpClient.Wechat.Work.Models +{ + /// + /// 表示 [POST] /cgi-bin/report/resident/category_statistic 接口的响应。 + /// + public class CgibinReportResidentCategoryStatisticsResponse : WechatWorkResponse + { + public static class Types + { + public class Data : CgibinReportPatrolCategoryStatisticsResponse.Types.Data + { + } + } + + /// + /// 获取或设置数据列表。 + /// + [Newtonsoft.Json.JsonProperty("dashboard_list")] + [System.Text.Json.Serialization.JsonPropertyName("dashboard_list")] + public Types.Data[] DataList { get; set; } = default!; + } +} diff --git a/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Resident/CgibinReportResidentGetCorpStatusRequest.cs b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Resident/CgibinReportResidentGetCorpStatusRequest.cs new file mode 100644 index 00000000..5e96e623 --- /dev/null +++ b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Resident/CgibinReportResidentGetCorpStatusRequest.cs @@ -0,0 +1,12 @@ +using System; +using System.Collections.Generic; + +namespace SKIT.FlurlHttpClient.Wechat.Work.Models +{ + /// + /// 表示 [POST] /cgi-bin/report/resident/get_corp_status 接口的请求。 + /// + public class CgibinReportResidentGetCorpStatusRequest : CgibinReportPatrolGetCorpStatusRequest + { + } +} diff --git a/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Resident/CgibinReportResidentGetCorpStatusResponse.cs b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Resident/CgibinReportResidentGetCorpStatusResponse.cs new file mode 100644 index 00000000..6c78a098 --- /dev/null +++ b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Resident/CgibinReportResidentGetCorpStatusResponse.cs @@ -0,0 +1,60 @@ +using System; +using System.Collections.Generic; + +namespace SKIT.FlurlHttpClient.Wechat.Work.Models +{ + /// + /// 表示 [POST] /cgi-bin/report/resident/get_corp_status 接口的响应。 + /// + public class CgibinReportResidentGetCorpStatusResponse : WechatWorkResponse + { + /// + /// 获取或设置待受理数量。 + /// + [Newtonsoft.Json.JsonProperty("pending")] + [System.Text.Json.Serialization.JsonPropertyName("pending")] + public int PendingCount { get; set; } + + /// + /// 获取或设置办理中数量。 + /// + [Newtonsoft.Json.JsonProperty("processing")] + [System.Text.Json.Serialization.JsonPropertyName("processing")] + public int ProcessingCount { get; set; } + + /// + /// 获取或设置今日上报数量。 + /// + [Newtonsoft.Json.JsonProperty("added_today")] + [System.Text.Json.Serialization.JsonPropertyName("added_today")] + public int TodayAddedCount { get; set; } + + /// + /// 获取或设置今日办结数量。 + /// + [Newtonsoft.Json.JsonProperty("solved_today")] + [System.Text.Json.Serialization.JsonPropertyName("solved_today")] + public int TodaySolvedCount { get; set; } + + /// + /// 获取或设置累计上报数量。 + /// + [Newtonsoft.Json.JsonProperty("total_case")] + [System.Text.Json.Serialization.JsonPropertyName("total_case")] + public int TotalAddedCount { get; set; } + + /// + /// 获取或设置累计受理数量。 + /// + [Newtonsoft.Json.JsonProperty("total_accepted")] + [System.Text.Json.Serialization.JsonPropertyName("total_accepted")] + public int TotalAcceptedCount { get; set; } + + /// + /// 获取或设置累计办结数量。 + /// + [Newtonsoft.Json.JsonProperty("total_solved")] + [System.Text.Json.Serialization.JsonPropertyName("total_solved")] + public int TotalSolvedCount { get; set; } + } +} diff --git a/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Resident/CgibinReportResidentGetGridInfoRequest.cs b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Resident/CgibinReportResidentGetGridInfoRequest.cs new file mode 100644 index 00000000..637af5f2 --- /dev/null +++ b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Resident/CgibinReportResidentGetGridInfoRequest.cs @@ -0,0 +1,12 @@ +using System; +using System.Collections.Generic; + +namespace SKIT.FlurlHttpClient.Wechat.Work.Models +{ + /// + /// 表示 [GET] /cgi-bin/report/resident/get_grid_info 接口的请求。 + /// + public class CgibinReportResidentGetGridInfoRequest : WechatWorkRequest + { + } +} diff --git a/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Resident/CgibinReportResidentGetGridInfoResponse.cs b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Resident/CgibinReportResidentGetGridInfoResponse.cs new file mode 100644 index 00000000..5a6bc7c9 --- /dev/null +++ b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Resident/CgibinReportResidentGetGridInfoResponse.cs @@ -0,0 +1,25 @@ +using System; +using System.Collections.Generic; + +namespace SKIT.FlurlHttpClient.Wechat.Work.Models +{ + /// + /// 表示 [GET] /cgi-bin/report/resident/get_grid_info 接口的响应。 + /// + public class CgibinReportResidentGetGridInfoResponse : WechatWorkResponse + { + public static class Types + { + public class Grid : CgibinReportPatrolGetGridInfoResponse.Types.Grid + { + } + } + + /// + /// 获取或设置网格列表。 + /// + [Newtonsoft.Json.JsonProperty("grid_list")] + [System.Text.Json.Serialization.JsonPropertyName("grid_list")] + public Types.Grid[] GridList { get; set; } = default!; + } +} diff --git a/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Resident/CgibinReportResidentGetOrderInfoRequest.cs b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Resident/CgibinReportResidentGetOrderInfoRequest.cs new file mode 100644 index 00000000..ab560001 --- /dev/null +++ b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Resident/CgibinReportResidentGetOrderInfoRequest.cs @@ -0,0 +1,12 @@ +using System; +using System.Collections.Generic; + +namespace SKIT.FlurlHttpClient.Wechat.Work.Models +{ + /// + /// 表示 [POST] /cgi-bin/report/resident/get_order_info 接口的请求。 + /// + public class CgibinReportResidentGetOrderInfoRequest : CgibinReportPatrolGetOrderInfoRequest + { + } +} diff --git a/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Resident/CgibinReportResidentGetOrderInfoResponse.cs b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Resident/CgibinReportResidentGetOrderInfoResponse.cs new file mode 100644 index 00000000..43340e6f --- /dev/null +++ b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Resident/CgibinReportResidentGetOrderInfoResponse.cs @@ -0,0 +1,25 @@ +using System; +using System.Collections.Generic; + +namespace SKIT.FlurlHttpClient.Wechat.Work.Models +{ + /// + /// 表示 [POST] /cgi-bin/report/resident/get_order_info 接口的响应。 + /// + public class CgibinReportResidentGetOrderInfoResponse : WechatWorkResponse + { + public static class Types + { + public class WorkOrder : CgibinReportResidentGetOrderListResponse.Types.WorkOrder + { + } + } + + /// + /// 获取或设置工单信息。 + /// + [Newtonsoft.Json.JsonProperty("order_info")] + [System.Text.Json.Serialization.JsonPropertyName("order_info")] + public Types.WorkOrder WorkOrder { get; set; } = default!; + } +} diff --git a/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Resident/CgibinReportResidentGetOrderListRequest.cs b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Resident/CgibinReportResidentGetOrderListRequest.cs new file mode 100644 index 00000000..5c4e7159 --- /dev/null +++ b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Resident/CgibinReportResidentGetOrderListRequest.cs @@ -0,0 +1,12 @@ +using System; +using System.Collections.Generic; + +namespace SKIT.FlurlHttpClient.Wechat.Work.Models +{ + /// + /// 表示 [POST] /cgi-bin/report/resident/get_order_list 接口的请求。 + /// + public class CgibinReportResidentGetOrderListRequest : CgibinReportPatrolGetOrderListRequest + { + } +} diff --git a/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Resident/CgibinReportResidentGetOrderListResponse.cs b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Resident/CgibinReportResidentGetOrderListResponse.cs new file mode 100644 index 00000000..56b182d7 --- /dev/null +++ b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Resident/CgibinReportResidentGetOrderListResponse.cs @@ -0,0 +1,52 @@ +using System; +using System.Collections.Generic; + +namespace SKIT.FlurlHttpClient.Wechat.Work.Models +{ + /// + /// 表示 [POST] /cgi-bin/report/resident/get_order_list 接口的响应。 + /// + public class CgibinReportResidentGetOrderListResponse : WechatWorkResponse + { + public static class Types + { + public class WorkOrder : CgibinReportPatrolGetOrderListResponse.Types.WorkOrder + { + /// + /// 获取或设置上报人名称。 + /// + [Newtonsoft.Json.JsonProperty("reporter_name")] + [System.Text.Json.Serialization.JsonPropertyName("reporter_name")] + public string ReporterName { get; set; } = default!; + + /// + /// 获取或设置上报人手机号码。 + /// + [Newtonsoft.Json.JsonProperty("reporter_mobile")] + [System.Text.Json.Serialization.JsonPropertyName("reporter_mobile")] + public string ReporterMobileNumber { get; set; } = default!; + + /// + /// 获取或设置上报人 UnionId。 + /// + [Newtonsoft.Json.JsonProperty("unionid")] + [System.Text.Json.Serialization.JsonPropertyName("unionid")] + public string? ReporterUnionId { get; set; } + } + } + + /// + /// 获取或设置工单列表。 + /// + [Newtonsoft.Json.JsonProperty("order_list")] + [System.Text.Json.Serialization.JsonPropertyName("order_list")] + public Types.WorkOrder[] WorkOrderList { get; set; } = default!; + + /// + /// 获取或设置翻页标记。 + /// + [Newtonsoft.Json.JsonProperty("next_cursor")] + [System.Text.Json.Serialization.JsonPropertyName("next_cursor")] + public string? NextCursor { get; set; } + } +} diff --git a/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Resident/CgibinReportResidentGetUserStatusRequest.cs b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Resident/CgibinReportResidentGetUserStatusRequest.cs new file mode 100644 index 00000000..db31e691 --- /dev/null +++ b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Resident/CgibinReportResidentGetUserStatusRequest.cs @@ -0,0 +1,12 @@ +using System; +using System.Collections.Generic; + +namespace SKIT.FlurlHttpClient.Wechat.Work.Models +{ + /// + /// 表示 [POST] /cgi-bin/report/resident/get_user_status 接口的请求。 + /// + public class CgibinReportResidentGetUserStatusRequest : CgibinReportPatrolGetUserStatusRequest + { + } +} diff --git a/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Resident/CgibinReportResidentGetUserStatusResponse.cs b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Resident/CgibinReportResidentGetUserStatusResponse.cs new file mode 100644 index 00000000..5b82bc7e --- /dev/null +++ b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinReport/Resident/CgibinReportResidentGetUserStatusResponse.cs @@ -0,0 +1,39 @@ +using System; +using System.Collections.Generic; + +namespace SKIT.FlurlHttpClient.Wechat.Work.Models +{ + /// + /// 表示 [POST] /cgi-bin/report/resident/get_user_status 接口的响应。 + /// + public class CgibinReportResidentGetUserStatusResponse : WechatWorkResponse + { + /// + /// 获取或设置待受理数量。 + /// + [Newtonsoft.Json.JsonProperty("pending")] + [System.Text.Json.Serialization.JsonPropertyName("pending")] + public int PendingCount { get; set; } + + /// + /// 获取或设置办理中数量。 + /// + [Newtonsoft.Json.JsonProperty("processing")] + [System.Text.Json.Serialization.JsonPropertyName("processing")] + public int ProcessingCount { get; set; } + + /// + /// 获取或设置今日上报数量。 + /// + [Newtonsoft.Json.JsonProperty("added_today")] + [System.Text.Json.Serialization.JsonPropertyName("added_today")] + public int TodayAddedCount { get; set; } + + /// + /// 获取或设置今日办结数量。 + /// + [Newtonsoft.Json.JsonProperty("solved_today")] + [System.Text.Json.Serialization.JsonPropertyName("solved_today")] + public int TodaySolvedCount { get; set; } + } +} diff --git a/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinSchool/Department/CgibinSchoolDepartmentListRequest.cs b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinSchool/Department/CgibinSchoolDepartmentListRequest.cs index 8e7d87a9..e2d2340e 100644 --- a/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinSchool/Department/CgibinSchoolDepartmentListRequest.cs +++ b/src/SKIT.FlurlHttpClient.Wechat.Work/Models/CgibinSchool/Department/CgibinSchoolDepartmentListRequest.cs @@ -9,10 +9,10 @@ namespace SKIT.FlurlHttpClient.Wechat.Work.Models public class CgibinSchoolDepartmentListRequest : WechatWorkRequest { /// - /// 获取或设置指定部门 ID。 + /// 获取或设置指定上级部门 ID。 /// [Newtonsoft.Json.JsonIgnore] [System.Text.Json.Serialization.JsonIgnore] - public int? DepartmentId { get; set; } + public int? ParentDepartmentId { get; set; } } }