forked from kidgrow-microservices-platform

zhaoxiaohao
2020-09-25 232a4ce4dd137e5830ea3a0908f9e6039477d218
修改bug
1 files modified
23 ■■■■■ changed files
kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/impl/WxServiceImpl.java 23 ●●●●● patch | view | raw | blame | history
kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/impl/WxServiceImpl.java
@@ -35,7 +35,7 @@
        jsonObject.put("body",saasClientPay.getChildName());//商品描述
        jsonObject.put("out_trade_no", saasClientPay.getOutTradeNo());//商户订单号
        jsonObject.put("total_fee",saasClientPay.getPayPrice().toString());//标价金额  单位为分
        jsonObject.put("spbill_create_ip","192.168.2.240");//终端IP
        jsonObject.put("spbill_create_ip",getIpAddress(request));//终端IP
        jsonObject.put("notify_url",weiXinOfficPayProperties.getPayNotifyUrl());//通知地址
        jsonObject.put("trade_type","NATIVE");//交易类型
        MyConfig wxPayConfig= new MyConfig(weiXinOfficPayProperties);
@@ -50,10 +50,29 @@
        String s = QRCodeUtil.creatRrCode(resultStr, 200, 200, 0).replaceAll("\n","").replaceAll("\r","");
        String prepay_id = result.get("prepay_id");
        Map<String,String> map = new HashMap<>();
        map.put("code_url",resultStr);
        map.put("code_url",s);
        map.put("prepay_id",prepay_id);
        return map;
    }
    public static String getIpAddress(HttpServletRequest request) {
        String ip = request.getHeader("x-forwarded-for");
        if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
            ip = request.getHeader("Proxy-Client-IP");
        }
        if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
            ip = request.getHeader("WL-Proxy-Client-IP");
        }
        if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
            ip = request.getHeader("HTTP_CLIENT_IP");
        }
        if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
            ip = request.getHeader("HTTP_X_FORWARDED_FOR");
        }
        if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
            ip = request.getRemoteAddr();
        }
        return ip;
    }
    @Override
    public String callback(Map<String, String> requestMap) throws Exception {