|
33 | 33 | import javax.servlet.http.HttpServletRequest; |
34 | 34 | import javax.servlet.http.HttpServletResponse; |
35 | 35 | import java.math.BigDecimal; |
| 36 | +import java.nio.charset.StandardCharsets; |
36 | 37 | import java.nio.file.Files; |
37 | 38 | import java.nio.file.Path; |
38 | 39 | import java.util.Calendar; |
@@ -976,4 +977,44 @@ public void testCreatePartnerOrderV3() throws WxPayException { |
976 | 977 | WxPayUnifiedOrderV3Result.JsapiResult result = payService.createPartnerOrderV3(TradeTypeEnum.JSAPI, request); |
977 | 978 | System.out.println(result); |
978 | 979 | } |
| 980 | + |
| 981 | + @Test |
| 982 | + public void test_certSerialNoExtractedFromPrivateCertContentOrPrivateCertString() throws Exception { |
| 983 | + WxPayConfig wxPayConfig = new WxPayConfig(); |
| 984 | + //服务商的参数 |
| 985 | + wxPayConfig.setMchId("xxx"); |
| 986 | + wxPayConfig.setAppId("xxx"); |
| 987 | + wxPayConfig.setApiV3Key("xxx"); |
| 988 | + wxPayConfig.setPrivateKeyContent("xxx".getBytes(StandardCharsets.UTF_8)); |
| 989 | + wxPayConfig.setPrivateCertContent("xxx".getBytes(StandardCharsets.UTF_8) |
| 990 | + ); |
| 991 | + wxPayConfig.setPublicKeyId("xxx"); |
| 992 | + wxPayConfig.setPublicKeyContent("xxx".getBytes(StandardCharsets.UTF_8)); |
| 993 | + //创建支付服务 |
| 994 | + WxPayService wxPayService = new WxPayServiceImpl(); |
| 995 | + wxPayService.setConfig(wxPayConfig); |
| 996 | + |
| 997 | + String outTradeNo = RandomUtils.getRandomStr(); |
| 998 | + String notifyUrl = "https://api.qq.com/"; |
| 999 | + System.out.println("outTradeNo = " + outTradeNo); |
| 1000 | + WxPayUnifiedOrderV3Request request = new WxPayUnifiedOrderV3Request(); |
| 1001 | + request.setOutTradeNo(outTradeNo); |
| 1002 | + request.setNotifyUrl(notifyUrl); |
| 1003 | + request.setDescription("test"); |
| 1004 | + |
| 1005 | + WxPayUnifiedOrderV3Request.Payer payer = new WxPayUnifiedOrderV3Request.Payer(); |
| 1006 | + payer.setOpenid("xxx"); |
| 1007 | + request.setPayer(payer); |
| 1008 | + |
| 1009 | + //构建金额信息 |
| 1010 | + WxPayUnifiedOrderV3Request.Amount amount = new WxPayUnifiedOrderV3Request.Amount(); |
| 1011 | + //设置币种信息 |
| 1012 | + amount.setCurrency(WxPayConstants.CurrencyType.CNY); |
| 1013 | + //设置金额 |
| 1014 | + amount.setTotal(BaseWxPayRequest.yuan2Fen(BigDecimal.ONE)); |
| 1015 | + request.setAmount(amount); |
| 1016 | + |
| 1017 | + wxPayService.createOrderV3(TradeTypeEnum.JSAPI, request); |
| 1018 | + } |
| 1019 | + |
979 | 1020 | } |
0 commit comments