“mitao”
2026-03-27 f15cd7be6470a4f5de2a6a5618aa62053b696b64
DriverYKDTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/OrderController.java
@@ -8,14 +8,17 @@
import com.stylefeng.guns.modular.crossCity.warpper.OrderWarpper;
import com.stylefeng.guns.modular.smallLogistics.model.OrderLogistics;
import com.stylefeng.guns.modular.smallLogistics.server.IOrderLogisticsService;
import com.stylefeng.guns.modular.specialTrain.server.IOrderPrivateCarService;
import com.stylefeng.guns.modular.system.dao.DriverWorkMapper;
import com.stylefeng.guns.modular.system.model.*;
import com.stylefeng.guns.modular.system.service.*;
import com.stylefeng.guns.modular.system.util.ChinaMobileUtil;
import com.stylefeng.guns.modular.system.util.PayMoneyUtil;
import com.stylefeng.guns.modular.system.util.PushUtil;
import com.stylefeng.guns.modular.system.util.ResultUtil;
import com.stylefeng.guns.modular.system.util.SystemException;
import com.stylefeng.guns.modular.system.warpper.*;
import com.stylefeng.guns.modular.taxi.service.IOrderTaxiService;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
@@ -27,6 +30,8 @@
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.PrintWriter;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
@@ -66,6 +71,15 @@
    @Autowired
    private ICarService carService;
    @Autowired
    private IOrderTaxiService orderTaxiService;
    @Autowired
    private IOrderPrivateCarService orderPrivateCarService;
    @Autowired
    private PayMoneyUtil payMoneyUtil;
@@ -1043,4 +1057,44 @@
            return ResultUtil.success();
        }
    }
    /**
     * 预支付微信退款成功回调
     * @param request
     * @param response
     */
    @ResponseBody
    @PostMapping("/base/prepayRefundWXPay")
    public void prepayRefundWXPay(HttpServletRequest request, HttpServletResponse response) {
        try {
            Map<String, String> map = payMoneyUtil.wxRefundCallback(request);
            if (map == null) {
                return;
            }
            String refundId = map.get("refund_id");
            String outRefundNo = map.get("out_refund_no");
            String result = map.get("result");
            if (ToolUtil.isEmpty(outRefundNo)) {
                return;
            }
            PrintWriter out = response.getWriter();
            out.write(result);
            out.flush();
            out.close();
            String[] split = outRefundNo.split("_");
            if (split.length < 4) {
                return;
            }
            Integer orderType = Integer.valueOf(split[1]);
            Integer orderId = Integer.valueOf(split[2]);
            if (orderType == 1) {
                orderPrivateCarService.payPrepaidRefundCallback(orderId, outRefundNo, refundId);
            } else if (orderType == 2) {
                orderTaxiService.payPrepaidRefundCallback(orderId, outRefundNo, refundId);
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}