From 8728b62a47cb5a0aeb515c82c2518bf5d454091b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=A0=E9=9B=AA?= <1044122544@qq.com> Date: Thu, 19 Jun 2025 10:51:23 +0800 Subject: [PATCH 1/5] =?UTF-8?q?=E5=BE=AE=E4=BF=A1=E5=88=B7=E8=84=B8=20?= =?UTF-8?q?=E9=87=91=E9=A2=9D=E5=8D=95=E4=BD=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/dpkj/modules/scanface/ali/vo/AliOrderVo.java | 2 +- .../modules/scanface/wx/controller/WxFacePayController.java | 6 ++++++ .../scanface/wx/service/impl/CallWxpayFaceServiceImpl.java | 1 - .../java/com/dpkj/modules/scanface/wx/vo/WxFaceOrderVo.java | 4 +++- 4 files changed, 10 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/dpkj/modules/scanface/ali/vo/AliOrderVo.java b/src/main/java/com/dpkj/modules/scanface/ali/vo/AliOrderVo.java index 7eeb922..8bc91c2 100644 --- a/src/main/java/com/dpkj/modules/scanface/ali/vo/AliOrderVo.java +++ b/src/main/java/com/dpkj/modules/scanface/ali/vo/AliOrderVo.java @@ -37,7 +37,7 @@ public class AliOrderVo implements Serializable { private String outTradeNo; /** - * 用户支付金额 + * 用户支付金额 单位元 */ //@ApiModelProperty(value = "用户支付金额") private String totalAmount; diff --git a/src/main/java/com/dpkj/modules/scanface/wx/controller/WxFacePayController.java b/src/main/java/com/dpkj/modules/scanface/wx/controller/WxFacePayController.java index 4226bc1..16c9e8d 100644 --- a/src/main/java/com/dpkj/modules/scanface/wx/controller/WxFacePayController.java +++ b/src/main/java/com/dpkj/modules/scanface/wx/controller/WxFacePayController.java @@ -34,6 +34,7 @@ import org.springframework.web.bind.annotation.RestController; import javax.annotation.Resource; import java.io.UnsupportedEncodingException; +import java.math.BigDecimal; import java.util.HashMap; import java.util.Map; import java.util.concurrent.Callable; @@ -184,6 +185,11 @@ public class WxFacePayController { public WxFacePayAuthinfoResp getWxpayfaceCode(@RequestBody WxFaceOrderVo wxFaceOrderVo, WxFacePayAuthinfoResp wxFacePayResp0) throws Exception { //4、进行人脸识别getWxpayfaceCode(获取支付凭证) String outTradeNo = getOutTradeNo();//获取流水号 + + //元转分 + int money = BigDecimal.valueOf(Integer.valueOf(wxFaceOrderVo.getTotalAmount())).multiply(new BigDecimal(100)).intValue(); + wxFaceOrderVo.setTotalAmount(String.valueOf(money)); + // 构建请求参数的JSON字符串 WxFacePayReq wxFacePayReq = new WxFacePayReq("getWxpayfaceCode", "1", System.currentTimeMillis() / 1000); wxFacePayReq.setAuthinfo(wxFacePayResp0.getAuthinfo()) diff --git a/src/main/java/com/dpkj/modules/scanface/wx/service/impl/CallWxpayFaceServiceImpl.java b/src/main/java/com/dpkj/modules/scanface/wx/service/impl/CallWxpayFaceServiceImpl.java index d5ce7d9..614a488 100644 --- a/src/main/java/com/dpkj/modules/scanface/wx/service/impl/CallWxpayFaceServiceImpl.java +++ b/src/main/java/com/dpkj/modules/scanface/wx/service/impl/CallWxpayFaceServiceImpl.java @@ -56,7 +56,6 @@ public class CallWxpayFaceServiceImpl implements CallWxpayFaceService { // 调用本地方法 WxpayFaceSDKDll.Dll dll = WxpayFaceSDKDll.instance(); int result = dll.wxpayCallFaceService(reqPointer.getString(0), reqSize, pRespBuf, respSize); - //使用C:\Windows\System32目录下 int result = WxpayFaceSDK.INSTANCE.wxpayCallFaceService(reqPointer.getString(0), reqSize, pRespBuf, respSize); if (result == 0) { Pointer pointer = new Pointer(pRespBuf[0]); diff --git a/src/main/java/com/dpkj/modules/scanface/wx/vo/WxFaceOrderVo.java b/src/main/java/com/dpkj/modules/scanface/wx/vo/WxFaceOrderVo.java index 204e17b..e5aef2b 100644 --- a/src/main/java/com/dpkj/modules/scanface/wx/vo/WxFaceOrderVo.java +++ b/src/main/java/com/dpkj/modules/scanface/wx/vo/WxFaceOrderVo.java @@ -36,8 +36,10 @@ public class WxFaceOrderVo { private String outTradeNo; /** - * 用户支付金额 分 + * 用户支付金额 单位元 + * 调用微信时需要转为分 */ private String totalAmount; + } From 9c990e8103f5b2ed34ae94fd2a49b8db3230498e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=A0=E9=9B=AA?= <1044122544@qq.com> Date: Thu, 19 Jun 2025 10:52:48 +0800 Subject: [PATCH 2/5] =?UTF-8?q?=E5=BE=AE=E4=BF=A1=E5=88=B7=E8=84=B8=20?= =?UTF-8?q?=E9=87=91=E9=A2=9D=E5=8D=95=E4=BD=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../scanface/wx/controller/WxFacePayController.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/dpkj/modules/scanface/wx/controller/WxFacePayController.java b/src/main/java/com/dpkj/modules/scanface/wx/controller/WxFacePayController.java index 16c9e8d..89665a5 100644 --- a/src/main/java/com/dpkj/modules/scanface/wx/controller/WxFacePayController.java +++ b/src/main/java/com/dpkj/modules/scanface/wx/controller/WxFacePayController.java @@ -80,6 +80,10 @@ public class WxFacePayController { public Result doFacePay(@RequestBody WxFaceOrderVo wxFaceOrderVo) throws Exception { Result result = new Result<>(); try { + //元转分 + int money = BigDecimal.valueOf(Integer.valueOf(wxFaceOrderVo.getTotalAmount())).multiply(new BigDecimal(100)).intValue(); + wxFaceOrderVo.setTotalAmount(String.valueOf(money)); + //1 初始化 this.initWxpayface(); @@ -186,10 +190,6 @@ public class WxFacePayController { //4、进行人脸识别getWxpayfaceCode(获取支付凭证) String outTradeNo = getOutTradeNo();//获取流水号 - //元转分 - int money = BigDecimal.valueOf(Integer.valueOf(wxFaceOrderVo.getTotalAmount())).multiply(new BigDecimal(100)).intValue(); - wxFaceOrderVo.setTotalAmount(String.valueOf(money)); - // 构建请求参数的JSON字符串 WxFacePayReq wxFacePayReq = new WxFacePayReq("getWxpayfaceCode", "1", System.currentTimeMillis() / 1000); wxFacePayReq.setAuthinfo(wxFacePayResp0.getAuthinfo()) From 20ac1e4bb302a3b23641590f347d0435d0274155 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=A0=E9=9B=AA?= <1044122544@qq.com> Date: Thu, 19 Jun 2025 11:22:54 +0800 Subject: [PATCH 3/5] =?UTF-8?q?=E5=BE=AE=E4=BF=A1=E5=88=B7=E8=84=B8=20?= =?UTF-8?q?=E9=87=91=E9=A2=9D=E5=8D=95=E4=BD=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../scanface/wx/controller/WxFacePayController.java | 7 ++++--- src/main/resources/application.yml | 2 +- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/dpkj/modules/scanface/wx/controller/WxFacePayController.java b/src/main/java/com/dpkj/modules/scanface/wx/controller/WxFacePayController.java index 89665a5..861bd85 100644 --- a/src/main/java/com/dpkj/modules/scanface/wx/controller/WxFacePayController.java +++ b/src/main/java/com/dpkj/modules/scanface/wx/controller/WxFacePayController.java @@ -81,7 +81,7 @@ public class WxFacePayController { Result result = new Result<>(); try { //元转分 - int money = BigDecimal.valueOf(Integer.valueOf(wxFaceOrderVo.getTotalAmount())).multiply(new BigDecimal(100)).intValue(); + int money = new BigDecimal(wxFaceOrderVo.getTotalAmount()).multiply(new BigDecimal(100)).intValue(); wxFaceOrderVo.setTotalAmount(String.valueOf(money)); //1 初始化 @@ -100,7 +100,8 @@ public class WxFacePayController { WxPayMicropayResult micropayResult = new WxPayMicropayResult(); if (StringUtil.isNotBlank(authinfoResp.getFace_code())) { //5、调用后台人脸支付API发起支付 - wxFaceOrderVo.setOutTradeNo(getOutTradeNo()); + System.out.println("---------调用后台人脸支付API发起支付"); + /*wxFaceOrderVo.setOutTradeNo(getOutTradeNo()); micropayResult = this.toCreateWxOrder(authinfoResp, wxFaceOrderVo, wxFacePayResp0); //6、向后端查询订单状态 WxPayOrderQueryResult queryResult = queryOrderByNo(micropayResult); @@ -122,7 +123,7 @@ public class WxFacePayController { reverseRequest.setOutTradeNo(micropayResult.getOutTradeNo()); WxPayOrderReverseResult reverseResult = this.toReverseOrder(reverseRequest); result = Result.error("微信刷脸失败后已经撤销订单!"); - } + }*/ } else { result = Result.error("获取人脸识别支付凭证为空值"); } diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml index 670ddab..9f61f35 100644 --- a/src/main/resources/application.yml +++ b/src/main/resources/application.yml @@ -2,4 +2,4 @@ spring: application: name: yinyitong-zhongyuyuan-dll-stand profiles: - active: '@profile.name@' + active: pro #'@profile.name@' From 40f6728ceaedbf394669ef3fa5de23f7caf634aa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=A0=E9=9B=AA?= <1044122544@qq.com> Date: Thu, 19 Jun 2025 11:23:46 +0800 Subject: [PATCH 4/5] =?UTF-8?q?=E9=85=8D=E7=BD=AE=E6=96=87=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/resources/application.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml index 9f61f35..670ddab 100644 --- a/src/main/resources/application.yml +++ b/src/main/resources/application.yml @@ -2,4 +2,4 @@ spring: application: name: yinyitong-zhongyuyuan-dll-stand profiles: - active: pro #'@profile.name@' + active: '@profile.name@' From 4fc1335cc81bb9784e3ef72d1bb93ee80bd29c58 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=A0=E9=9B=AA?= <1044122544@qq.com> Date: Thu, 19 Jun 2025 11:25:10 +0800 Subject: [PATCH 5/5] =?UTF-8?q?=E5=BE=AE=E4=BF=A1=E5=88=B7=E8=84=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../modules/scanface/wx/controller/WxFacePayController.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/dpkj/modules/scanface/wx/controller/WxFacePayController.java b/src/main/java/com/dpkj/modules/scanface/wx/controller/WxFacePayController.java index 861bd85..6b75535 100644 --- a/src/main/java/com/dpkj/modules/scanface/wx/controller/WxFacePayController.java +++ b/src/main/java/com/dpkj/modules/scanface/wx/controller/WxFacePayController.java @@ -101,7 +101,7 @@ public class WxFacePayController { if (StringUtil.isNotBlank(authinfoResp.getFace_code())) { //5、调用后台人脸支付API发起支付 System.out.println("---------调用后台人脸支付API发起支付"); - /*wxFaceOrderVo.setOutTradeNo(getOutTradeNo()); + wxFaceOrderVo.setOutTradeNo(getOutTradeNo()); micropayResult = this.toCreateWxOrder(authinfoResp, wxFaceOrderVo, wxFacePayResp0); //6、向后端查询订单状态 WxPayOrderQueryResult queryResult = queryOrderByNo(micropayResult); @@ -123,7 +123,7 @@ public class WxFacePayController { reverseRequest.setOutTradeNo(micropayResult.getOutTradeNo()); WxPayOrderReverseResult reverseResult = this.toReverseOrder(reverseRequest); result = Result.error("微信刷脸失败后已经撤销订单!"); - }*/ + } } else { result = Result.error("获取人脸识别支付凭证为空值"); }