diff --git a/business/model/const.go b/business/model/const.go index 815a46e8f..37136f4b4 100644 --- a/business/model/const.go +++ b/business/model/const.go @@ -2,6 +2,7 @@ package model import ( "fmt" + "git.rosy.net.cn/baseapi/platformapi/ebaiapi" "git.rosy.net.cn/baseapi/platformapi/jdapi" "git.rosy.net.cn/baseapi/platformapi/mtwmapi" @@ -336,7 +337,9 @@ const ( WaybillStatusDelivering = 20 // 配送中 WaybillStatusDeliverFailed = 22 // 配送中失败 - + //uu跑腿专用 + WaybillStatusUuPickUp = 13 //骑手已取件 + WaybillStatusUuArrivedDestination = 26 //骑手到达收件人地址,暂未确定收货 //抖音配送专用 WaybillStatusRejected = 23 //收货人拒收 WaybillStatusReturning = 24 //返回中 @@ -350,11 +353,15 @@ const ( ) const ( - RiderGetOrder = "骑手 %s (%s) 已接单" - RiderToStore = "骑手 %s (%s) 已到店" - RiderGetOrderDelivering = "骑手 %s (%s) 配送中" - RiderGetOrderDelivered = "骑手 %s (%s) 已送达" - RiderGetOrderCanceled = "骑手 %s (%s) 已取消" + RiderGetOrder = "骑手 %s (%s) 已接单" + RiderToStore = "骑手 %s (%s) 已到店" + RiderGetOrderDelivering = "骑手 %s (%s) 配送中" + RiderGetOrderDelivered = "骑手 %s (%s) 已送达" + RiderGetOrderCanceled = "骑手 %s (%s) 已取消" + //uu专用 + RiderPickUp = "骑手 %s (%s) 已取件" + RiderArrivedDestination = "骑手 %s (%s) 已到达收件人地址处" + RiderGetOrderDeliverFailed = "骑手配送异常" RiderGetOrderDeliverOther = "其他待处理信息" RiderWaitRider = "待接单,正在分配骑手" diff --git a/business/partner/delivery/rider.go b/business/partner/delivery/rider.go index d81b83f92..c5f276195 100644 --- a/business/partner/delivery/rider.go +++ b/business/partner/delivery/rider.go @@ -3,6 +3,9 @@ package delivery import ( "crypto/rand" "fmt" + "math/big" + "time" + "git.rosy.net.cn/baseapi/platformapi/mtpsapi" "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/tiktok_api" "git.rosy.net.cn/baseapi/utils" @@ -10,8 +13,6 @@ import ( "git.rosy.net.cn/jx-callback/business/model/dao" "git.rosy.net.cn/jx-callback/business/partner" "git.rosy.net.cn/jx-callback/globals" - "math/big" - "time" ) // 订单骑手信息推送:将获取到的三方配送订单,且订单状态为配送中的订单,将配送人员的信息返回给订单方 @@ -34,7 +35,7 @@ func GetOrderRiderInfoToPlatform(orderId string, wayBillStatus int) { params["isIncludeFake"] = true params["mustInvoice"] = false params["adjustCount"] = 0 - params["waybillVendorIDs"] = `[101,102,103]` + params["waybillVendorIDs"] = `[101,102,103,105]` if orderId != "" { // 订单id会忽略其他参数 params["keyword"] = orderId } else { diff --git a/business/partner/delivery/uupt/waybill.go b/business/partner/delivery/uupt/waybill.go index cadac1a76..f2135ba27 100644 --- a/business/partner/delivery/uupt/waybill.go +++ b/business/partner/delivery/uupt/waybill.go @@ -317,6 +317,46 @@ func OnWaybillMsg(req *uuptapi.WaybillCallbackParam) (resp *uuptapi.CallbackResp if err := partner.CurOrderManager.OnWaybillStatusChanged(param); err != nil { return uuptapi.Err2CallbackResponse(err) } + //推送抖音 + if param.OrderVendorID == model.VendorIDDD { + result := &mtpsapi.RiderInfo{ + OrderId: param.VendorOrderID, + ThirdCarrierOrderId: param.VendorOrderID, + CourierName: param.CourierName, + CourierPhone: param.CourierMobile, + LogisticsProviderCode: "10002", + LogisticsStatus: param.Status, + OpCode: "", + } + switch req.State { + case uuptapi.StateConfirmSuccess: //下单成功 + result.LogisticsStatus = model.WaybillStatusNew + result.LogisticsContext = model.RiderWaitRider + case uuptapi.StateRMGrabsOrder: //骑手已接单 + result.LogisticsStatus = model.WaybillStatusCourierAssigned // 分配骑手 + result.LogisticsContext = model.RiderWaitGetGoods + case uuptapi.StateArrivedStore: //骑手到店 + result.LogisticsStatus = model.WaybillStatusCourierArrived + result.LogisticsContext = model.RiderToStore + case uuptapi.StatePickUp: //已取件 + result.LogisticsStatus = model.WaybillStatusUuPickUp + result.LogisticsContext = model.RiderPickUp + case uuptapi.StateArrivedDestination: //到达取件人地址处 + result.LogisticsStatus = model.WaybillStatusUuArrivedDestination + result.LogisticsContext = model.RiderArrivedDestination + case uuptapi.StateReceiverGetGoods: //取件人收货 + result.LogisticsStatus = model.WaybillStatusDelivered + result.LogisticsContext = model.RiderGetOrderDelivered + case uuptapi.StateOrderCancel: //运单取消 + result.LogisticsStatus = model.WaybillStatusCanceled + result.LogisticsContext = model.RiderGetOrderCanceled + default: + result.LogisticsStatus = 0 + result.LogisticsContext = model.RiderGetOrderDeliverOther + } + delivery.PullTiktokRiderInfo(result) + } + defer delivery.GetOrderRiderInfoToPlatform(param.VendorOrderID, param.Status) // 骑手位置更新 return uuptapi.Err2CallbackResponse(nil) }