From 5dc860e407e1470418b6c9c831698e48e2294344 Mon Sep 17 00:00:00 2001 From: guili <1539720748@qq.com> Date: Thu, 20 Jun 2024 13:39:59 +0800 Subject: [PATCH 1/3] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E5=B0=8F=E7=A8=8B?= =?UTF-8?q?=E5=BA=8F=E5=8F=91=E8=B4=A7=E4=BF=A1=E6=81=AF=E7=AE=A1=E7=90=86?= =?UTF-8?q?=E6=9C=8D=E5=8A=A1-=E6=9F=A5=E8=AF=A2=E5=B0=8F=E7=A8=8B?= =?UTF-8?q?=E5=BA=8F=E6=98=AF=E5=90=A6=E5=B7=B2=E5=AE=8C=E6=88=90=E4=BA=A4?= =?UTF-8?q?=E6=98=93=E7=BB=93=E7=AE=97=E7=AE=A1=E7=90=86=E7=A1=AE=E8=AE=A4?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../AdvancedAPIs/Sec/Order.cs | 42 +++++++++++++++++++ ...nagementConfirmationCompletedJsonResult.cs | 20 +++++++++ 2 files changed, 62 insertions(+) create mode 100644 src/Senparc.Weixin.WxOpen/src/Senparc.Weixin.WxOpen/Senparc.Weixin.WxOpen/AdvancedAPIs/Sec/SecJson/JsonResult/IsTradeManagementConfirmationCompletedJsonResult.cs diff --git a/src/Senparc.Weixin.WxOpen/src/Senparc.Weixin.WxOpen/Senparc.Weixin.WxOpen/AdvancedAPIs/Sec/Order.cs b/src/Senparc.Weixin.WxOpen/src/Senparc.Weixin.WxOpen/Senparc.Weixin.WxOpen/AdvancedAPIs/Sec/Order.cs index 1f06c18253..60585c3f14 100644 --- a/src/Senparc.Weixin.WxOpen/src/Senparc.Weixin.WxOpen/Senparc.Weixin.WxOpen/AdvancedAPIs/Sec/Order.cs +++ b/src/Senparc.Weixin.WxOpen/src/Senparc.Weixin.WxOpen/Senparc.Weixin.WxOpen/AdvancedAPIs/Sec/Order.cs @@ -205,6 +205,27 @@ public static IsTradeManagedJsonResult IsTradeManaged(string accessTokenOrAppId, }, accessTokenOrAppId); } + + /// + /// 查询小程序是否已完成交易结算管理确认 + /// + /// + /// + /// + /// + public static IsTradeManagementConfirmationCompletedJsonResult IsTradeManagementConfirmationCompleted(string accessTokenOrAppId, string appid, int timeOut = Config.TIME_OUT) + { + return WxOpenApiHandlerWapper.TryCommonApi(accessToken => + { + string urlFormat = Config.ApiMpHost + "/wxa/sec/order/is_trade_management_confirmation_completed?access_token={0}"; + var postBody = new + { + appid + }; + return CommonJsonSend.Send(accessToken, urlFormat, postBody, timeOut: timeOut); + + }, accessTokenOrAppId); + } #endregion #region 异步方法 @@ -359,6 +380,27 @@ public static async Task IsTradeManagedAsync(string ac }, accessTokenOrAppId).ConfigureAwait(false); } + + /// + /// 【异步方法】查询小程序是否已完成交易结算管理确认 + /// + /// + /// + /// + /// + public static async Task IsTradeManagementConfirmationCompletedAsync(string accessTokenOrAppId, string appid, int timeOut = Config.TIME_OUT) + { + return await WxOpenApiHandlerWapper.TryCommonApiAsync(async accessToken => + { + string urlFormat = Config.ApiMpHost + "/wxa/sec/order/is_trade_management_confirmation_completed?access_token={0}"; + var postBody = new + { + appid + }; + return await CommonJsonSend.SendAsync(accessToken, urlFormat, postBody, timeOut: timeOut); + + }, accessTokenOrAppId).ConfigureAwait(false); + } #endregion } } diff --git a/src/Senparc.Weixin.WxOpen/src/Senparc.Weixin.WxOpen/Senparc.Weixin.WxOpen/AdvancedAPIs/Sec/SecJson/JsonResult/IsTradeManagementConfirmationCompletedJsonResult.cs b/src/Senparc.Weixin.WxOpen/src/Senparc.Weixin.WxOpen/Senparc.Weixin.WxOpen/AdvancedAPIs/Sec/SecJson/JsonResult/IsTradeManagementConfirmationCompletedJsonResult.cs new file mode 100644 index 0000000000..0c447f14fc --- /dev/null +++ b/src/Senparc.Weixin.WxOpen/src/Senparc.Weixin.WxOpen/Senparc.Weixin.WxOpen/AdvancedAPIs/Sec/SecJson/JsonResult/IsTradeManagementConfirmationCompletedJsonResult.cs @@ -0,0 +1,20 @@ +using Senparc.Weixin.Entities; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace Senparc.Weixin.WxOpen.AdvancedAPIs.Sec +{ + /// + /// 查询小程序是否已完成交易结算管理确认 + /// + public class IsTradeManagementConfirmationCompletedJsonResult : WxJsonResult + { + /// + /// 是否已完成交易结算管理确认 + /// + public bool completed { get; set; } + } +} From 5d95378d600f2344788ce1f86a98a7131402cae4 Mon Sep 17 00:00:00 2001 From: guili <1539720748@qq.com> Date: Thu, 20 Jun 2024 13:49:08 +0800 Subject: [PATCH 2/3] =?UTF-8?q?=E5=BE=AE=E4=BF=A1=E6=94=AF=E4=BB=98-?= =?UTF-8?q?=E5=8F=91=E8=B5=B7=E5=95=86=E5=AE=B6=E8=BD=AC=E8=B4=A6=E5=85=A5?= =?UTF-8?q?=E5=8F=82=E6=B7=BB=E5=8A=A0=E8=BD=AC=E8=B4=A6=E5=9C=BA=E6=99=AF?= =?UTF-8?q?ID=E3=80=81=E9=80=9A=E7=9F=A5=E5=9C=B0=E5=9D=80=EF=BC=9B?= =?UTF-8?q?=E8=BF=94=E5=9B=9E=E7=BB=93=E6=9E=9C=E6=B7=BB=E5=8A=A0=E6=89=B9?= =?UTF-8?q?=E6=AC=A1=E7=8A=B6=E6=80=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Entities/RequestData/BatchesRequestData.cs | 10 ++++++++++ .../Transfer/Entities/ReturnJson/BatchesReturnJson.cs | 8 ++++++++ 2 files changed, 18 insertions(+) diff --git a/src/Senparc.Weixin.TenPay/Senparc.Weixin.TenPayV3/Apis/Transfer/Entities/RequestData/BatchesRequestData.cs b/src/Senparc.Weixin.TenPay/Senparc.Weixin.TenPayV3/Apis/Transfer/Entities/RequestData/BatchesRequestData.cs index 4512031c68..9ad4f5a3a2 100644 --- a/src/Senparc.Weixin.TenPay/Senparc.Weixin.TenPayV3/Apis/Transfer/Entities/RequestData/BatchesRequestData.cs +++ b/src/Senparc.Weixin.TenPay/Senparc.Weixin.TenPayV3/Apis/Transfer/Entities/RequestData/BatchesRequestData.cs @@ -75,6 +75,16 @@ public class BatchesRequestData /// 发起批量转账的明细列表,最多三千笔 /// public Transfer_Detail_List[] transfer_detail_list { get; set; } + /// + /// 转账场景ID + /// 该批次转账使用的转账场景,如不填写则使用商家的默认场景,如无默认场景可为空,可前往“商家转账到零钱-前往功能”中申请。示例值:1001-现金营销 + /// + public string transfer_scene_id { get; set; } + /// + /// 通知地址 + /// 异步接收微信支付结果通知的回调地址,通知url必须为公网可访问的url,必须为https,不能携带参数 + /// + public string notify_url { get; set; } } public class Transfer_Detail_List diff --git a/src/Senparc.Weixin.TenPay/Senparc.Weixin.TenPayV3/Apis/Transfer/Entities/ReturnJson/BatchesReturnJson.cs b/src/Senparc.Weixin.TenPay/Senparc.Weixin.TenPayV3/Apis/Transfer/Entities/ReturnJson/BatchesReturnJson.cs index 0468b4f45a..fadaac8b70 100644 --- a/src/Senparc.Weixin.TenPay/Senparc.Weixin.TenPayV3/Apis/Transfer/Entities/ReturnJson/BatchesReturnJson.cs +++ b/src/Senparc.Weixin.TenPay/Senparc.Weixin.TenPayV3/Apis/Transfer/Entities/ReturnJson/BatchesReturnJson.cs @@ -57,6 +57,14 @@ public class BatchesReturnJson : ReturnJsonBase /// 示例值:2015-05-20T13:29:35.120+08:00 /// public DateTime create_time { get; set; } + /// + /// 批次状态 + /// ACCEPTED:已受理。批次已受理成功,若发起批量转账的30分钟后,转账批次单仍处于该状态,可能原因是商户账户余额不足等。商户可查询账户资金流水,若该笔转账批次单的扣款已经发生,则表示批次已经进入转账中,请再次查单确认 + /// PROCESSING:转账中。已开始处理批次内的转账明细单 + /// FINISHED:已完成。批次内的所有转账明细单都已处理完成 + /// CLOSED:已关闭。可查询具体的批次关闭原因确认 + /// + public string batch_status { get; set; } } } From 87db6cfe344ffef5ba2123b87771ce891c76da8d Mon Sep 17 00:00:00 2001 From: JeffreySu Date: Sun, 23 Jun 2024 00:38:19 +0800 Subject: [PATCH 3/3] =?UTF-8?q?WxOpen=20v3.19.0=20=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E5=B0=8F=E7=A8=8B=E5=BA=8F=E5=8F=91=E8=B4=A7=E4=BF=A1=E6=81=AF?= =?UTF-8?q?=E7=AE=A1=E7=90=86=E6=9C=8D=E5=8A=A1-=E6=9F=A5=E8=AF=A2?= =?UTF-8?q?=E5=B0=8F=E7=A8=8B=E5=BA=8F=E6=98=AF=E5=90=A6=E5=B7=B2=E5=AE=8C?= =?UTF-8?q?=E6=88=90=E4=BA=A4=E6=98=93=E7=BB=93=E7=AE=97=E7=AE=A1=E7=90=86?= =?UTF-8?q?=E7=A1=AE=E8=AE=A4=E6=8E=A5=E5=8F=A3=20/=20PR=20#3030=20TenPayV?= =?UTF-8?q?3=20v1.4.0=20=E6=B7=BB=E5=8A=A0=EF=BC=9A=E5=BE=AE=E4=BF=A1?= =?UTF-8?q?=E6=94=AF=E4=BB=98-=E5=8F=91=E8=B5=B7=E5=95=86=E5=AE=B6?= =?UTF-8?q?=E8=BD=AC=E8=B4=A6=E5=85=A5=E5=8F=82=E6=B7=BB=E5=8A=A0=E8=BD=AC?= =?UTF-8?q?=E8=B4=A6=E5=9C=BA=E6=99=AFID=E3=80=81=E9=80=9A=E7=9F=A5?= =?UTF-8?q?=E5=9C=B0=E5=9D=80=EF=BC=9B=E8=BF=94=E5=9B=9E=E7=BB=93=E6=9E=9C?= =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E6=89=B9=E6=AC=A1=E7=8A=B6=E6=80=81=20/=20PR?= =?UTF-8?q?=20#3030=20=E6=84=9F=E8=B0=A2=20@Guili95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../RequestData/BatchesRequestData.cs | 3 ++ .../Entities/ReturnJson/BatchesReturnJson.cs | 3 ++ .../Senparc.Weixin.TenPayV3.net8.csproj | 5 ++- .../AdvancedAPIs/Sec/Order.cs | 3 ++ ...nagementConfirmationCompletedJsonResult.cs | 37 ++++++++++++++++--- .../Senparc.Weixin.WxOpen.net8.csproj | 5 ++- 6 files changed, 46 insertions(+), 10 deletions(-) diff --git a/src/Senparc.Weixin.TenPay/Senparc.Weixin.TenPayV3/Apis/Transfer/Entities/RequestData/BatchesRequestData.cs b/src/Senparc.Weixin.TenPay/Senparc.Weixin.TenPayV3/Apis/Transfer/Entities/RequestData/BatchesRequestData.cs index 9ad4f5a3a2..b47c0883ab 100644 --- a/src/Senparc.Weixin.TenPay/Senparc.Weixin.TenPayV3/Apis/Transfer/Entities/RequestData/BatchesRequestData.cs +++ b/src/Senparc.Weixin.TenPay/Senparc.Weixin.TenPayV3/Apis/Transfer/Entities/RequestData/BatchesRequestData.cs @@ -27,6 +27,9 @@ and limitations under the License. 创建标识:Senparc - 20220629 + 修改标识:Guili95 - 20240623 + 修改描述:v1.4.0 添加:微信支付-发起商家转账入参添加转账场景ID、通知地址;返回结果添加批次状态 + ----------------------------------------------------------------*/ using System; diff --git a/src/Senparc.Weixin.TenPay/Senparc.Weixin.TenPayV3/Apis/Transfer/Entities/ReturnJson/BatchesReturnJson.cs b/src/Senparc.Weixin.TenPay/Senparc.Weixin.TenPayV3/Apis/Transfer/Entities/ReturnJson/BatchesReturnJson.cs index fadaac8b70..d582b9b8be 100644 --- a/src/Senparc.Weixin.TenPay/Senparc.Weixin.TenPayV3/Apis/Transfer/Entities/ReturnJson/BatchesReturnJson.cs +++ b/src/Senparc.Weixin.TenPay/Senparc.Weixin.TenPayV3/Apis/Transfer/Entities/ReturnJson/BatchesReturnJson.cs @@ -27,6 +27,9 @@ and limitations under the License. 创建标识:Senparc - 20220629 + 修改标识:Guili95 - 20240623 + 修改描述:v1.4.0 添加:微信支付-发起商家转账入参添加转账场景ID、通知地址;返回结果添加批次状态 + ----------------------------------------------------------------*/ using Senparc.Weixin.TenPayV3.Apis.Entities; diff --git a/src/Senparc.Weixin.TenPay/Senparc.Weixin.TenPayV3/Senparc.Weixin.TenPayV3.net8.csproj b/src/Senparc.Weixin.TenPay/Senparc.Weixin.TenPayV3/Senparc.Weixin.TenPayV3.net8.csproj index 02b658f4d2..6d83aed35d 100644 --- a/src/Senparc.Weixin.TenPay/Senparc.Weixin.TenPayV3/Senparc.Weixin.TenPayV3.net8.csproj +++ b/src/Senparc.Weixin.TenPay/Senparc.Weixin.TenPayV3/Senparc.Weixin.TenPayV3.net8.csproj @@ -1,7 +1,7 @@ netstandard2.1 - 1.3.2 + 1.4.0 Senparc.Weixin.TenPayV3 Senparc.Weixin.TenPayV3 10.0 @@ -54,7 +54,8 @@ 3、TenPayV3分账 字段内部加密 PR#2909 v1.1.0 TenPaySignHelper.GetJsApiUiPackage() 方法添加 senparcWeixinSettingForTenpayV3 参数 v1.2.1.1 解决微信支付分、完成订单参数可为空的问题 Issue #2989 - + v1.4.0 添加:微信支付-发起商家转账入参添加转账场景ID、通知地址;返回结果添加批次状态 / PR #3030 + https://github.com/JeffreySu/WeiXinMPSDK diff --git a/src/Senparc.Weixin.WxOpen/src/Senparc.Weixin.WxOpen/Senparc.Weixin.WxOpen/AdvancedAPIs/Sec/Order.cs b/src/Senparc.Weixin.WxOpen/src/Senparc.Weixin.WxOpen/Senparc.Weixin.WxOpen/AdvancedAPIs/Sec/Order.cs index 60585c3f14..af8e62f113 100644 --- a/src/Senparc.Weixin.WxOpen/src/Senparc.Weixin.WxOpen/Senparc.Weixin.WxOpen/AdvancedAPIs/Sec/Order.cs +++ b/src/Senparc.Weixin.WxOpen/src/Senparc.Weixin.WxOpen/Senparc.Weixin.WxOpen/AdvancedAPIs/Sec/Order.cs @@ -29,6 +29,9 @@ and limitations under the License. 修改标识:Senparc - 20230905 修改描述:v4.15.0 完善“第三方服务商小程序备案”接口 + 修改标识:Guili95 - 20240623 + 修改描述:v3.19.0 添加小程序发货信息管理服务-查询小程序是否已完成交易结算管理确认接口 + ----------------------------------------------------------------*/ diff --git a/src/Senparc.Weixin.WxOpen/src/Senparc.Weixin.WxOpen/Senparc.Weixin.WxOpen/AdvancedAPIs/Sec/SecJson/JsonResult/IsTradeManagementConfirmationCompletedJsonResult.cs b/src/Senparc.Weixin.WxOpen/src/Senparc.Weixin.WxOpen/Senparc.Weixin.WxOpen/AdvancedAPIs/Sec/SecJson/JsonResult/IsTradeManagementConfirmationCompletedJsonResult.cs index 0c447f14fc..fa0d91ec46 100644 --- a/src/Senparc.Weixin.WxOpen/src/Senparc.Weixin.WxOpen/Senparc.Weixin.WxOpen/AdvancedAPIs/Sec/SecJson/JsonResult/IsTradeManagementConfirmationCompletedJsonResult.cs +++ b/src/Senparc.Weixin.WxOpen/src/Senparc.Weixin.WxOpen/Senparc.Weixin.WxOpen/AdvancedAPIs/Sec/SecJson/JsonResult/IsTradeManagementConfirmationCompletedJsonResult.cs @@ -1,9 +1,34 @@ -using Senparc.Weixin.Entities; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; +#region Apache License Version 2.0 +/*---------------------------------------------------------------- + +Copyright 2024 Jeffrey Su & Suzhou Senparc Network Technology Co.,Ltd. + +Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file +except in compliance with the License. You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software distributed under the +License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, +either express or implied. See the License for the specific language governing permissions +and limitations under the License. + +Detail: https://github.com/JeffreySu/WeiXinMPSDK/blob/master/license.md + +----------------------------------------------------------------*/ +#endregion Apache License Version 2.0 + +/*---------------------------------------------------------------- + Copyright (C) 2024 Senparc + + 文件名:IsTradeManagementConfirmationCompletedJsonResult.cs + 文件功能描述:查询小程序是否已完成交易结算管理确认 接口返回参数 + + 创建标识:Guili95 - 20240623 + +----------------------------------------------------------------*/ + +using Senparc.Weixin.Entities; namespace Senparc.Weixin.WxOpen.AdvancedAPIs.Sec { diff --git a/src/Senparc.Weixin.WxOpen/src/Senparc.Weixin.WxOpen/Senparc.Weixin.WxOpen/Senparc.Weixin.WxOpen.net8.csproj b/src/Senparc.Weixin.WxOpen/src/Senparc.Weixin.WxOpen/Senparc.Weixin.WxOpen/Senparc.Weixin.WxOpen.net8.csproj index b86b73e224..58917bf11b 100644 --- a/src/Senparc.Weixin.WxOpen/src/Senparc.Weixin.WxOpen/Senparc.Weixin.WxOpen/Senparc.Weixin.WxOpen.net8.csproj +++ b/src/Senparc.Weixin.WxOpen/src/Senparc.Weixin.WxOpen/Senparc.Weixin.WxOpen/Senparc.Weixin.WxOpen.net8.csproj @@ -1,7 +1,7 @@ net462;netstandard2.0;netstandard2.1 - 3.18.2 + 3.19.0 9.0 Senparc.Weixin.WxOpen Senparc.Weixin.WxOpen @@ -180,7 +180,8 @@ v3.17.3 添加小程序分类审核异步通知事件 / PR #2969 v3.17.5 新增小程序认证年审事件接口 / PR #2979 v3.17.6 虚拟支付增加了接口从1.0.7~1.0.10,同步完善 / PR #2987 - + v3.19.0 添加小程序发货信息管理服务-查询小程序是否已完成交易结算管理确认接口 / PR #3030 + https://github.com/JeffreySu/WeiXinMPSDK