From 6cec25dc22d1b53092947fca9a34cbef4608beb0 Mon Sep 17 00:00:00 2001 From: ChenJiaHe <763432473@qq.com> Date: 星期一, 19 四月 2021 15:13:57 +0800 Subject: [PATCH] 新版企业付款接口 --- src/main/java/com/hx/corp/entity/CorpPayRequest.java | 6 +++--- src/main/java/com/hx/corp/entity/CorpPayResponse.java | 24 +++++++++++++++++++++++- src/main/java/com/hx/corp/util/WxCorpPayUtil.java | 16 +++++++++------- 3 files changed, 35 insertions(+), 11 deletions(-) diff --git a/src/main/java/com/hx/corp/entity/CorpPayRequest.java b/src/main/java/com/hx/corp/entity/CorpPayRequest.java index 88f9859..de57762 100644 --- a/src/main/java/com/hx/corp/entity/CorpPayRequest.java +++ b/src/main/java/com/hx/corp/entity/CorpPayRequest.java @@ -26,7 +26,7 @@ /*(O)鏀舵鐢ㄦ埛濮撳悕,濡傛灉check_name璁剧疆涓篎ORCE_CHECK锛屽垯蹇呭~鐢ㄦ埛鐪熷疄濮撳悕*/ private String re_user_name; /*(Y)閲戦*/ - private int amount; + private Integer amount; /*(Y)浼佷笟浠樻澶囨敞*/ private String desc; /*(N)Ip鍦板潃锛岃IP鍚屽湪鍟嗘埛骞冲彴璁剧疆鐨処P鐧藉悕鍗曚腑鐨処P娌℃湁鍏宠仈锛岃IP鍙紶鐢ㄦ埛绔垨鑰呮湇鍔$鐨処P*/ @@ -101,11 +101,11 @@ this.re_user_name = re_user_name; } - public int getAmount() { + public Integer getAmount() { return amount; } - public void setAmount(int amount) { + public void setAmount(Integer amount) { this.amount = amount; } diff --git a/src/main/java/com/hx/corp/entity/CorpPayResponse.java b/src/main/java/com/hx/corp/entity/CorpPayResponse.java index 723c3fc..59bd352 100644 --- a/src/main/java/com/hx/corp/entity/CorpPayResponse.java +++ b/src/main/java/com/hx/corp/entity/CorpPayResponse.java @@ -7,7 +7,11 @@ /*(Y)涓氬姟缁撴灉锛孲UCCESS/FAIL锛屾敞鎰忥細褰撶姸鎬佷负FAIL鏃讹紝瀛樺湪涓氬姟缁撴灉鏈槑纭殑鎯呭喌銆傚鏋滅姸鎬佷负FAIL锛岃鍔″繀鍏虫敞閿欒浠g爜锛坋rr_code瀛楁锛夛紝閫氳繃鏌ヨ鎺ュ彛纭姝ゆ浠樻鐨勭粨鏋�*/ private String result_code = "FAIL"; - /*锛圷锛夐敊璇唬鐮侊紝鎴愬姛锛歋UCCESS*/ + /*锛圷锛夎繑鍥炵姸鎬佺爜,SUCCESS/FAIL锛屾瀛楁鏄�氫俊鏍囪瘑锛岄潪浜ゆ槗鏍囪瘑锛屼氦鏄撴槸鍚︽垚鍔熼渶瑕佹煡鐪媟esult_code鏉ュ垽鏂�*/ + private String return_code; + /*(Y) 杩斿洖淇℃伅 */ + private String return_msg; + /*锛圷锛夐敊璇唬鐮�*/ private String err_code; /*(Y)閿欒浠g爜鎻忚堪*/ private String err_code_des; @@ -114,10 +118,28 @@ this.payment_time = payment_time; } + public String getReturn_code() { + return return_code; + } + + public void setReturn_code(String return_code) { + this.return_code = return_code; + } + + public String getReturn_msg() { + return return_msg; + } + + public void setReturn_msg(String return_msg) { + this.return_msg = return_msg; + } + @Override public String toString() { return "CorpPayResponse{" + "result_code='" + result_code + '\'' + + ", return_code='" + return_code + '\'' + + ", return_msg='" + return_msg + '\'' + ", err_code='" + err_code + '\'' + ", err_code_des='" + err_code_des + '\'' + ", mch_appid='" + mch_appid + '\'' + diff --git a/src/main/java/com/hx/corp/util/WxCorpPayUtil.java b/src/main/java/com/hx/corp/util/WxCorpPayUtil.java index 9f29441..89cfb1f 100644 --- a/src/main/java/com/hx/corp/util/WxCorpPayUtil.java +++ b/src/main/java/com/hx/corp/util/WxCorpPayUtil.java @@ -71,20 +71,22 @@ parameters.put("nonce_str", corpPayRequest.getNonce_str()); parameters.put("openid", corpPayRequest.getOpenid()); parameters.put("check_name", corpPayRequest.getCheck_name()); - parameters.put("amount", corpPayRequest.getAmount()); + parameters.put("amount", corpPayRequest.getAmount().toString()); parameters.put("spbill_create_ip", corpPayRequest.getSpbill_create_ip()); parameters.put("desc", corpPayRequest.getDesc()); - String sign = WXSignUtils.createSign("UTF-8", parameters, mchKey); - - parameters.put("sign", sign); + corpPayRequest.setSign(WXSignUtils.createSign("UTF-8", parameters, mchKey)); + parameters.put("sign", corpPayRequest.getSign()); String xmlInfo = HttpXmlUtils.transferXml(parameters); - try { CloseableHttpResponse response = HttpUtil.Post(CORP_PAY_URL, xmlInfo, true, certPath, corpPayRequest.getMchid()); String transfersXml = EntityUtils.toString(response.getEntity(), "utf-8"); - // System.out.println("娓犻亾绔紒涓氫粯娆撅細" + transfersXml); - Map<String, String> transferMap = HttpXmlUtils.parseRefundXml(transfersXml); + System.out.println("娓犻亾绔紒涓氫粯娆撅細" + transfersXml); + + //Map<String, String> transferMap = HttpXmlUtils.parseRefundXml(transfersXml); + + Map<String,Object> transferMap = XMLUtil.doXMLParse(transfersXml); + // 灏� Map 杞崲涓� 瀹炰綋绫� corpPayResponse = JSON.parseObject(JSON.toJSONString(transferMap),CorpPayResponse.class); } catch (Exception e) { -- Gitblit v1.8.0