WxMenuServiceImpl.java 3.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495
  1. package com.happy.service.impl;
  2. import com.alibaba.fastjson.JSON;
  3. import com.happy.Until.HttpUtils;
  4. import com.happy.common.http.HttpsClient;
  5. import com.happy.common.wx.WxConfig;
  6. import com.happy.common.wx.WxConstants;
  7. import com.happy.common.wx.WxUtil;
  8. import com.happy.service.WxMenuService;
  9. import org.springframework.stereotype.Service;
  10. import java.text.SimpleDateFormat;
  11. import java.util.Date;
  12. import java.util.HashMap;
  13. import java.util.Map;
  14. /**
  15. * 微信菜单实现类类
  16. * @author lujunjie
  17. * @date 2018/02/16
  18. */
  19. @Service("wxMenuService")
  20. public class WxMenuServiceImpl implements WxMenuService {
  21. @Override
  22. public String wxUrl(String outTradeNo,
  23. String signType, String collect_code, String time) throws Exception {
  24. HashMap<String, String> data = new HashMap<String, String>();
  25. data.put("apicode", WxConfig.apicode);
  26. data.put("apikey", WxConfig.apikey);
  27. // 时间戳
  28. data.put("timestamp", time);
  29. // 订单号
  30. data.put("order_no",outTradeNo);
  31. // 收集码
  32. data.put("collect_code", collect_code);
  33. // 签名
  34. data.put("sign", WxUtil.getSignature(data, WxConfig.apikey, signType));
  35. return WxUtil.getSignature(data, WxConfig.apikey, signType);
  36. }
  37. @Override
  38. public String wxUrl2(String outTradeNo,
  39. String signType, String collect_code, String time) throws Exception {
  40. HashMap<String, String> data = new HashMap<String, String>();
  41. data.put("apicode", WxConfig.apicode);
  42. data.put("apikey", WxConfig.apikey);
  43. // 时间戳
  44. data.put("timestamp", time);
  45. // 订单号
  46. data.put("order_no",outTradeNo);
  47. // 收集码
  48. data.put("collect_code", collect_code);
  49. // 签名
  50. data.put("sign", WxUtil.getSignature(data, WxConfig.apikey, signType));
  51. String requestXML = WxUtil.mapToXml(data);
  52. System.out.println(requestXML);
  53. String reponseString = HttpsClient.httpsRequestReturnString(WxConstants.PAY_UNIFIEDORDER, HttpsClient.METHOD_POST, requestXML);
  54. System.out.println("aa: "+reponseString);
  55. return reponseString;
  56. }
  57. @Override
  58. public String test(String card_number) throws Exception {
  59. HashMap<String, String> data = new HashMap<String, String>();
  60. data.put("card_number", "123456");
  61. String reponseString = HttpsClient.get(WxConstants.Test);
  62. return reponseString;
  63. }
  64. @Override
  65. public String test2(String collect_code) throws Exception {
  66. SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");// 设置日期格式
  67. String time = df.format(new Date());
  68. String dang = WxUtil.mchOrderNo();
  69. String sign = wxUrl(dang, WxConstants.SING_MD5, collect_code, time);
  70. HashMap<String, String> data = new HashMap<String, String>();
  71. data.put("apicode", WxConfig.apicode);
  72. data.put("collect_code", collect_code);
  73. data.put("order_no", dang);
  74. data.put("amount", "10");
  75. data.put("timestamp", time);
  76. data.put("sign", sign);
  77. String reponseString = HttpUtils.post(WxConstants.PAY_UNIFIEDORDER, data);
  78. return reponseString;
  79. }
  80. @Override
  81. public String test3(String pa) throws Exception {
  82. pa = "8888&card_number=123456";
  83. String reponseString = HttpsClient.sendPost2(WxConstants.PAY_UNIFIEDORDER, pa);
  84. return reponseString;
  85. }
  86. }