微信支付分(二)--查詢支付分訂單


1、介紹

代碼地址: https://github.com/xm646236438/wechat_pay_score/tree/master
SpringBoot
具體的代碼以及邏輯可以看 微信支付分(一)–創建支付分訂單 以及 GitHub
上一篇博客: 微信支付分(一)–創建支付分訂單

2、代碼

public CommonResult query(String orderNo) {
        // 參數的順序要注意, 不然會報錯
        Map<String, Object> map = new HashMap<>();
        map.put("url", createOrderUrl);
        map.put("service_id", serviceId);
        map.put("out_order_no", orderNo);
        map.put("appid", appId);
        String urlJoint = HttpUrlUtil.urlJoint(map);

        JSONObject jsonObject;
        try {
            log.info("請求參數:    " + urlJoint);
            String data = HttpRequest.get(urlJoint)
                    .header(Header.CONTENT_TYPE, "application/json")
                    .header(Header.ACCEPT, "application/json")
                    .header("Authorization", "WECHATPAY2-SHA256-RSA2048" + " "
                            + PayScore.getToken("GET", urlJoint, "", mchId, serialNo, "pem/apiclient_key.pem"))
                    .body("")
                    .execute().body();
            jsonObject = JSONObject.parseObject(data);
            System.out.println("返回參數:    " + jsonObject);
        } catch (Exception e) {
            throw new SpringExceptionResolver("500", "網絡超時!");
        }
        switch (jsonObject.getString("state")) {
            case "CREATED":
                return CommonResult.fail(500, "訂單未進行");
            case "DOING":
            case "DONE":
                return CommonResult.success("SUCCESS", jsonObject);
            case "REVOKED":
                return CommonResult.fail(500, "訂單已取消");
            case "EXPIRED":
                return CommonResult.fail(500, "訂單已失效");
            default:
                return CommonResult.fail(500, "網絡異常");
        }
    }

在這裏插入圖片描述

3、注意點

1、請求時, 參數的順序很重要, 官方示列

URL: “https://api.mch.weixin.qq.com/v3/payscore/serviceorder?service_id=500001
             &out_order_no=8416518464133&appid=wxd678efh567hg6787” 

或 

URL: “https://api.mch.weixin.qq.com/v3/payscore/serviceorder?service_id=500001
             &query_id=brnbonve1465wq3q2&appid=wxd678efh567hg6787” ;
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章