xuhy
2025-08-05 74aaaab01e109d3f408cf586ea2c4661872190f1
UserZYTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/OrderController.java
@@ -1262,7 +1262,7 @@
    @PostMapping("/base/wxPayOrderTaxi")
    public void wxPayOrderTaxi(HttpServletRequest request, HttpServletResponse response){
        try {
            Map<String, String> map = payMoneyUtil.weixinpayCallback(request);//icbcPayUtil.payCallback(request);
            Map<String, String> map = payMoneyUtil.weixinpayCallback(request);
            if(null != map){
                String out_trade_no = map.get("out_trade_no");
                String order_id = map.get("transaction_id");
@@ -1401,4 +1401,52 @@
            e.printStackTrace();
        }
    }
    /**
     * 专车微信退款成功回调
     * @param request
     * @param response
     */
    @ResponseBody
    @PostMapping("/base/transferWXNotify")
    public void transferWXNotify(HttpServletRequest request, HttpServletResponse response){
        try {
            Map<String, String> map = payMoneyUtil.wxRefundCallback(request);
            if(null != map){
                String order_id = map.get("refund_id");
                String out_refund_no = map.get("out_refund_no");
                String refund_fee = map.get("refund_fee");
                String result = map.get("result");
                if(ToolUtil.isNotEmpty(out_refund_no) && ToolUtil.isNotEmpty(order_id)){
                    PrintWriter out = response.getWriter();
                    out.write(result);
                    out.flush();
                    out.close();
                    String[] split = out_refund_no.split(",");
                    try{
                        Integer.valueOf(split[0]);
                    }catch (Exception e){
                        split = split[0].split("_");
                    }
                    Integer id = Integer.valueOf(split[0]);
                    Integer type = Integer.valueOf(split[1]);
                    switch (type){
                        case 1:
                            OrderPrivateCar orderPrivateCar = orderPrivateCarService.selectById(id);
                            if(orderPrivateCar.getState() == 10 || orderPrivateCar.getState() == 12){
                                //添加交易明细
                                transactionDetailsService.saveData(orderPrivateCar.getUserId(), "专车取消退款", Double.valueOf(refund_fee), 2, 1, 1, 1, id);
                            }else {
                                transactionDetailsService.saveData(orderPrivateCar.getUserId(), "专车差价退款", Double.valueOf(refund_fee), 2, 1, 1, 1, id);
                            }
                            break;
                    }
                }
            }
        }catch (Exception e){
            e.printStackTrace();
        }
    }
}