From a0183fb16e63b51449072b6160b8e4fce16cf9a6 Mon Sep 17 00:00:00 2001 From: 彭雪彬 <1724387007@qq.com> Date: Wed, 16 Jul 2025 11:53:27 +0800 Subject: [PATCH] 骑手同步数接口修改 --- oying-system/src/main/java/com/oying/modules/rider/service/impl/RiderOrderRecordServiceImpl.java | 28 ++++++++++++++++++++++++---- 1 files changed, 24 insertions(+), 4 deletions(-) diff --git a/oying-system/src/main/java/com/oying/modules/rider/service/impl/RiderOrderRecordServiceImpl.java b/oying-system/src/main/java/com/oying/modules/rider/service/impl/RiderOrderRecordServiceImpl.java index 993f8eb..9dddb3c 100644 --- a/oying-system/src/main/java/com/oying/modules/rider/service/impl/RiderOrderRecordServiceImpl.java +++ b/oying-system/src/main/java/com/oying/modules/rider/service/impl/RiderOrderRecordServiceImpl.java @@ -145,9 +145,17 @@ } // 查询当前订单 检查订单是否已经被其他骑手抢到或取消 直接返回 OrderResponse orderResponse = orderService.getByOrderNum(orderNum); + if (orderResponse == null || orderResponse.getOrder() == null) { + return R.fail(400, "订单信息不存在,请稍后重试"); + } + int orderStatus = orderResponse.getOrder().getOrderStatus(); // 2商家已接单 4商家已备货 这两个状态可以接单 - if (null == orderResponse || (orderResponse.getOrder().getOrderStatus() != 2 && orderResponse.getOrder().getOrderStatus() != 4)) { - return R.fail(400, "订单已经被其他骑手接单或顾客取消,请稍后重试"); + if (orderStatus != 2 && orderStatus != 4) { + return R.fail(400, "订单状态异常,不允许接单"); + } + // 商家备货状态 查看是否存在骑手信息 + if (orderStatus == 4 && orderResponse.getOrder().getRiderId() == null) { + return R.fail(400, "该订单已备货,但未分配骑手,请联系商家确认"); } // 订单没有被接单或取消的情况下,进行接单操作 // 1.新增骑手接单记录 @@ -181,7 +189,13 @@ riderOrderRecord.setMerchantId(orderResponse.getOrder().getStoreId()); riderOrderRecord.setMerchantName(orderResponse.getOrder().getStoreName()); riderOrderRecord.setMerchantAddress(orderResponse.getOrder().getStoreAddress()); - riderOrderRecord.setReceiverAddress(orderResponse.getAddress().getDetail()); + // 收货地址 拼接地址 + String receiverAddress = orderResponse.getAddress().getCity() + + orderResponse.getAddress().getDistrict() + + orderResponse.getAddress().getStreet() + + orderResponse.getAddress().getShortAddress() + + orderResponse.getAddress().getDetail(); + riderOrderRecord.setReceiverAddress(receiverAddress); // 当前为接单 设置为待取货状态 0-已接单 1-已到店 2-配送中 3-已完成 4-商家取消 5-骑手取消 6-客户取消 7-系统取消 riderOrderRecord.setOrderStatus(Constants.ORDER_STATUS_OK); riderOrderRecord.setAcceptTime(new Timestamp(System.currentTimeMillis())); @@ -272,7 +286,13 @@ riderIncomeDetail.setDeliveryTime(new Timestamp(System.currentTimeMillis())); riderIncomeDetail.setOrderStatus(Constants.ORDER_STATUS_FINISH); riderIncomeDetail.setStartAddress(orderResponse.getOrder().getStoreAddress()); - riderIncomeDetail.setEndAddress(orderResponse.getAddress().getDetail()); + // 收货地址 拼接地址 + String receiverAddress = orderResponse.getAddress().getCity() + + orderResponse.getAddress().getDistrict() + + orderResponse.getAddress().getStreet() + + orderResponse.getAddress().getShortAddress() + + orderResponse.getAddress().getDetail(); + riderIncomeDetail.setEndAddress(receiverAddress); riderIncomeDetailService.save(riderIncomeDetail); return R.success(orderResponse); } -- Gitblit v1.9.3