admin
2019-11-07 235a867e15a86c3666c3e57727a7d6bb828e08de
微信支付查询是否成功修改,商城订单查询修改
2个文件已修改
45 ■■■■ 已修改文件
fanli/src/main/java/com/yeshi/fanli/controller/client/v1/BanLiShopController.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
utils/src/main/java/org/yeshi/utils/wx/WXPayUtil.java 43 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/controller/client/v1/BanLiShopController.java
@@ -115,6 +115,7 @@
                            try {
                                banLiShopOrderPayService.payOrderByMoney(latestOrder.getId(),
                                        latestOrder.getMoneyPayment());
                                orderList = banLiShopOrderService.listByUid(uid, page, Constant.PAGE_SIZE);
                            } catch (BanLiShopOrderException e) {
                                e.printStackTrace();
                            }
@@ -124,7 +125,6 @@
                    }
                }
            }
        }
        List<BanLiShopOrderVO> voList = new ArrayList<>();
utils/src/main/java/org/yeshi/utils/wx/WXPayUtil.java
@@ -6,6 +6,7 @@
import java.util.HashMap;
import java.util.Map;
import org.dom4j.DocumentException;
import org.yeshi.utils.HttpUtil;
import org.yeshi.utils.StringUtil;
import org.yeshi.utils.entity.wx.RedPackParams;
@@ -202,7 +203,7 @@
        String result = HttpUtil.post("https://api.mch.weixin.qq.com/pay/unifiedorder", entity);
        try {
            System.out.println("统一下单结果:" + new String( result.getBytes("GBK"),"UTF-8"));
            System.out.println("统一下单结果:" + new String(result.getBytes("GBK"), "UTF-8"));
        } catch (UnsupportedEncodingException e) {
            e.printStackTrace();
        }
@@ -266,8 +267,27 @@
        map.put("out_trade_no", orderNo);
        map.put("sign", WXUtil.getSignMD5(map, app.getMchKey()));
        String result = HttpUtil.post("https://api.mch.weixin.qq.com/pay/orderquery", WXUtil.loadWXMessage(map));
        System.out.println("订单查询结果:" + result);
        Map<String, String> resultMap = WXUtil.parseXML(result);
        try {
            try {
                result = new String(result.getBytes("GBK"), "UTF-8");
            } catch (UnsupportedEncodingException e1) {
                e1.printStackTrace();
            }
            System.out.println("订单查询结果:" + new String(result.getBytes("GBK"), "UTF-8"));
        } catch (UnsupportedEncodingException e) {
            e.printStackTrace();
        }
        Map<String, String> resultMap = null;
        try {
            resultMap = WXUtil.parseXML(result);
        } catch (Exception e) {
            try {
                result = new String(result.getBytes("GBK"), "UTF-8");
            } catch (UnsupportedEncodingException e1) {
                e1.printStackTrace();
            }
            resultMap = WXUtil.parseXML(result);
        }
        if ("SUCCESS".equalsIgnoreCase(resultMap.get("return_code"))
                && "SUCCESS".equalsIgnoreCase(resultMap.get("result_code"))) {
            if ("SUCCESS".equalsIgnoreCase(resultMap.get("trade_state")))// 支付成功
@@ -281,12 +301,13 @@
    /**
     * 
     * @param refundOrderNo -退款单号
     * @param refundOrderNo
     *            -退款单号
     * @param app
     * @return
     * @throws WXOrderException
     */
    public static boolean isRefundSuccess(String refundOrderNo, WXAPPInfo app)  throws WXOrderException {
    public static boolean isRefundSuccess(String refundOrderNo, WXAPPInfo app) throws WXOrderException {
        Map<String, String> map = new HashMap<String, String>();
        map.put("appid", app.getAppId());
        map.put("mch_id", app.getMchId());
@@ -295,7 +316,17 @@
        map.put("sign", WXUtil.getSignMD5(map, app.getMchKey()));
        String result = HttpUtil.post("https://api.mch.weixin.qq.com/pay/refundquery", WXUtil.loadWXMessage(map));
        System.out.println("订单查询结果:" + result);
        Map<String, String> resultMap = WXUtil.parseXML(result);
        Map<String, String> resultMap = null;
        try {
            resultMap = WXUtil.parseXML(result);
        } catch (Exception e) {
            try {
                result = new String(result.getBytes("GBK"), "UTF-8");
            } catch (UnsupportedEncodingException e1) {
                e1.printStackTrace();
            }
            resultMap = WXUtil.parseXML(result);
        }
        if ("SUCCESS".equalsIgnoreCase(resultMap.get("return_code"))
                && "SUCCESS".equalsIgnoreCase(resultMap.get("result_code"))) {
            if ("SUCCESS".equalsIgnoreCase(resultMap.get("refund_status_0")))// 退款成功