/** 调用翼支付接口进行支付 */ public String bestPay(int taskId, int supportMoney) throws Exception { // 保存用户提交的订单 TaskSupport support = new TaskSupport(); support.setUserId(userRepository.findOne(Context.getCurrentUserId())); support.setTaskId(taskRepository.findOne(taskId)); support.setSupportMoney(new BigDecimal(supportMoney)); support.setCreatedTime(new Timestamp(System.currentTimeMillis())); taskSupportRepository.save(support); // 保存orders Orders order = new Orders(); order.setOrderseq(BestPayUtils.doORDERSEQ()); order.setOrderreqtranseq(BestPayUtils.doORDERREQTRANSEQ()); order.setStatus(0); order.setTaskSupportId(support.getId()); order.setCreatedTime(new Timestamp(System.currentTimeMillis())); ordersRepository.save(order); List<NameValuePair> parameters = new ArrayList<NameValuePair>(); parameters.add(new BasicNameValuePair("MERCHANTID", BestPayConfig.MERCHANTID)); parameters.add(new BasicNameValuePair("SUBMERCHANTID", BestPayConfig.SUBMERCHANTID)); parameters.add(new BasicNameValuePair("ORDERSEQ", order.getOrderseq())); parameters.add(new BasicNameValuePair("ORDERREQTRANSEQ", order.getOrderreqtranseq())); parameters.add( new BasicNameValuePair("ORDERDATE", BestPayUtils.doORDERDATE(order.getCreatedTime()))); parameters.add( new BasicNameValuePair("ORDERAMOUNT", new DecimalFormat("0.00").format(supportMoney) + "")); parameters.add( new BasicNameValuePair( "PRODUCTAMOUNT", new DecimalFormat("0.00").format(supportMoney) + "")); parameters.add(new BasicNameValuePair("ATTACHAMOUNT", BestPayConfig.ATTACHAMOUNT)); parameters.add(new BasicNameValuePair("CURTYPE", BestPayConfig.CURTYPE)); parameters.add(new BasicNameValuePair("ENCODETYPE", BestPayConfig.ENCODETYPE)); parameters.add(new BasicNameValuePair("MERCHANTURL", BestPayConfig.MERCHANTURL)); parameters.add(new BasicNameValuePair("BACKMERCHANTURL", BestPayConfig.BACKMERCHANTURL)); parameters.add(new BasicNameValuePair("ATTACH", BestPayConfig.ATTACH)); parameters.add(new BasicNameValuePair("BUSICODE", BestPayConfig.BUSICODE)); parameters.add(new BasicNameValuePair("PRODUCTID", BestPayConfig.PRODUCTID)); parameters.add(new BasicNameValuePair("TMNUM", BestPayConfig.TMNUM)); parameters.add(new BasicNameValuePair("CUSTOMERID", BestPayConfig.CUSTOMERID)); parameters.add(new BasicNameValuePair("PRODUCTDESC", BestPayConfig.PRODUCTDESC)); parameters.add(new BasicNameValuePair("DIVDETAILS", BestPayConfig.DIVDETAILS)); parameters.add( new BasicNameValuePair( "MAC", CryptTool.md5Digest( "MERCHANTID=" + BestPayConfig.MERCHANTID + "&ORDERSEQ=" + order.getOrderseq() + "&ORDERDATE=" + BestPayUtils.doORDERDATE(order.getCreatedTime()) + "&ORDERAMOUNT=" + new DecimalFormat("0.00").format(supportMoney) + "&KEY=" + BestPayConfig.KEY))); HttpResult result = HttpConnectionManager.doPost("https://wappaywg.bestpay.com.cn/payWap.do", parameters); return result.getMessage(); }