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] =?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; + }