|
|
|
@@ -55,58 +55,64 @@ public class WxPayController extends BaseController { |
|
|
|
@ResponseBody |
|
|
|
public String _payNotify(HttpServletRequest request) throws IOException, JDOMException { |
|
|
|
logger.info("[" +getIpAddr() + "]微信支付回调"); |
|
|
|
InputStream inStream = request.getInputStream(); |
|
|
|
ByteArrayOutputStream outSteam = new ByteArrayOutputStream(); |
|
|
|
byte[] buffer = new byte[1024]; |
|
|
|
int len = 0; |
|
|
|
while ((len = inStream.read(buffer)) != -1) { |
|
|
|
outSteam.write(buffer, 0, len); |
|
|
|
} |
|
|
|
String resultxml = new String(outSteam.toByteArray(), Charset.forName("UTF-8")); |
|
|
|
logger.info(resultxml); |
|
|
|
|
|
|
|
outSteam.close(); |
|
|
|
inStream.close(); |
|
|
|
|
|
|
|
Map<String, String> paramMap = null; |
|
|
|
|
|
|
|
try { |
|
|
|
paramMap = WxPayment.xmlToMap(resultxml); |
|
|
|
logger.info("微信支付回调, notify, param: " + paramMap.toString() ); |
|
|
|
String response = wxPayOrderService.notify(paramMap, EnumPayWay.PAY_WAY_WEAPP); |
|
|
|
logger.info("微信支付回调, notify success, req : " + resultxml); |
|
|
|
return response; |
|
|
|
} catch (BizMessageException e) { |
|
|
|
if (paramMap == null) { |
|
|
|
logger.error("微信支付回调, order create error, e: " + e.getMessage()); |
|
|
|
} else { |
|
|
|
logger.error("微信支付回调, order create error, req: " + resultxml + ", e: " + e.getMessage()); |
|
|
|
} |
|
|
|
SortedMap resultMap = new TreeMap<>(); |
|
|
|
resultMap.put("return_code", "FAIL"); |
|
|
|
resultMap.put("return_msg", e.getMessage()); |
|
|
|
return XmlUtil.getRequestXml(resultMap); |
|
|
|
} catch (MallinkException e) { |
|
|
|
if (paramMap == null) { |
|
|
|
logger.error("微信支付回调, order create error, e: " + e.getMessage()); |
|
|
|
} else { |
|
|
|
logger.error("微信支付回调, order create error, req: " + resultxml + ", e: " + e.getMessage()); |
|
|
|
} |
|
|
|
SortedMap resultMap = new TreeMap<>(); |
|
|
|
resultMap.put("return_code", "FAIL"); |
|
|
|
resultMap.put("return_msg", e.getMessage()); |
|
|
|
return XmlUtil.getRequestXml(resultMap); |
|
|
|
} catch (Exception e) { |
|
|
|
if (paramMap == null) { |
|
|
|
logger.error("微信支付回调, order create error, e: " + e.getMessage()); |
|
|
|
} else { |
|
|
|
logger.error("微信支付回调, order create error, req: " + resultxml + ", e: " + e.getMessage()); |
|
|
|
} |
|
|
|
SortedMap resultMap = new TreeMap(); |
|
|
|
resultMap.put("return_code", "FAIL"); |
|
|
|
resultMap.put("return_msg", e.getMessage()); |
|
|
|
return XmlUtil.getRequestXml(resultMap); |
|
|
|
} |
|
|
|
SortedMap resultMap = new TreeMap(); |
|
|
|
resultMap.put("return_code", "SUCCESS"); |
|
|
|
resultMap.put("return_msg", "OK"); |
|
|
|
return XmlUtil.getRequestXml(resultMap); |
|
|
|
|
|
|
|
|
|
|
|
// InputStream inStream = request.getInputStream(); |
|
|
|
// ByteArrayOutputStream outSteam = new ByteArrayOutputStream(); |
|
|
|
// byte[] buffer = new byte[1024]; |
|
|
|
// int len = 0; |
|
|
|
// while ((len = inStream.read(buffer)) != -1) { |
|
|
|
// outSteam.write(buffer, 0, len); |
|
|
|
// } |
|
|
|
// String resultxml = new String(outSteam.toByteArray(), Charset.forName("UTF-8")); |
|
|
|
// logger.info(resultxml); |
|
|
|
// |
|
|
|
// outSteam.close(); |
|
|
|
// inStream.close(); |
|
|
|
// |
|
|
|
// Map<String, String> paramMap = null; |
|
|
|
// |
|
|
|
// try { |
|
|
|
// paramMap = WxPayment.xmlToMap(resultxml); |
|
|
|
// logger.info("微信支付回调, notify, param: " + paramMap.toString() ); |
|
|
|
// String response = wxPayOrderService.notify(paramMap, EnumPayWay.PAY_WAY_WEAPP); |
|
|
|
// logger.info("微信支付回调, notify success, req : " + resultxml); |
|
|
|
// return response; |
|
|
|
// } catch (BizMessageException e) { |
|
|
|
// if (paramMap == null) { |
|
|
|
// logger.error("微信支付回调, order create error, e: " + e.getMessage()); |
|
|
|
// } else { |
|
|
|
// logger.error("微信支付回调, order create error, req: " + resultxml + ", e: " + e.getMessage()); |
|
|
|
// } |
|
|
|
// SortedMap resultMap = new TreeMap<>(); |
|
|
|
// resultMap.put("return_code", "FAIL"); |
|
|
|
// resultMap.put("return_msg", e.getMessage()); |
|
|
|
// return XmlUtil.getRequestXml(resultMap); |
|
|
|
// } catch (MallinkException e) { |
|
|
|
// if (paramMap == null) { |
|
|
|
// logger.error("微信支付回调, order create error, e: " + e.getMessage()); |
|
|
|
// } else { |
|
|
|
// logger.error("微信支付回调, order create error, req: " + resultxml + ", e: " + e.getMessage()); |
|
|
|
// } |
|
|
|
// SortedMap resultMap = new TreeMap<>(); |
|
|
|
// resultMap.put("return_code", "FAIL"); |
|
|
|
// resultMap.put("return_msg", e.getMessage()); |
|
|
|
// return XmlUtil.getRequestXml(resultMap); |
|
|
|
// } catch (Exception e) { |
|
|
|
// if (paramMap == null) { |
|
|
|
// logger.error("微信支付回调, order create error, e: " + e.getMessage()); |
|
|
|
// } else { |
|
|
|
// logger.error("微信支付回调, order create error, req: " + resultxml + ", e: " + e.getMessage()); |
|
|
|
// } |
|
|
|
// SortedMap resultMap = new TreeMap(); |
|
|
|
// resultMap.put("return_code", "FAIL"); |
|
|
|
// resultMap.put("return_msg", e.getMessage()); |
|
|
|
// return XmlUtil.getRequestXml(resultMap); |
|
|
|
// } |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|