Merge branch 'jdshop' of https://e.coding.net/rosydev/jx-callback into jdshop

This commit is contained in:
richboo111
2022-12-22 14:16:46 +08:00
26 changed files with 553 additions and 401 deletions

View File

@@ -85,12 +85,6 @@ func (c *DeliveryHandler) OnWaybillExcept(msg *mtpsapi.CallbackOrderExceptionMsg
func (c *DeliveryHandler) onWaybillMsg(msg *mtpsapi.CallbackOrderMsg) (retVal *mtpsapi.CallbackResponse) {
order := c.callbackMsg2Waybill(msg)
if msg.Status == mtpsapi.OrderStatusPickedUp {
order.Status = model.WaybillStatusCourierArrived
mtpsapi.Err2CallbackResponse(partner.CurOrderManager.OnWaybillStatusChanged(order), order.VendorStatus)
defer delivery.GetOrderRiderInfoToPlatform(order.VendorOrderID, order.Status) // 骑手位置更新
msg.Status = mtpsapi.OrderStatusPickedUp
}
switch msg.Status {
case mtpsapi.OrderStatusWaitingForSchedule:
data, err := api.MtpsAPI.QueryOrderStatus(msg.DeliveryID, msg.MtPeisongID)
@@ -123,6 +117,13 @@ func (c *DeliveryHandler) onWaybillMsg(msg *mtpsapi.CallbackOrderMsg) (retVal *m
c.pushToGy(msg)
return mtpsapi.SuccessResponse
}
//if msg.Status == mtpsapi.OrderStatusPickedUp {
// order.Status = model.WaybillStatusCourierArrived
// mtpsapi.Err2CallbackResponse(partner.CurOrderManager.OnWaybillStatusChanged(order), order.VendorStatus)
// delivery.GetOrderRiderInfoToPlatform(order.VendorOrderID, order.Status) // 骑手位置更新
// msg.Status = mtpsapi.OrderStatusPickedUp
//}
// 加入调度器
err := mtpsapi.Err2CallbackResponse(partner.CurOrderManager.OnWaybillStatusChanged(order), order.VendorStatus)
defer delivery.GetOrderRiderInfoToPlatform(order.VendorOrderID, order.Status) // 骑手位置更新
@@ -163,7 +164,6 @@ func pushMTPSToTiktok(msgStatus int, order *model.Waybill) {
result.LogisticsStatus = 0
result.LogisticsContext = model.RiderGetOrderDeliverOther
}
globals.SugarLogger.Debugf("===========================mtps:%s", utils.Format4Output(result, false))
delivery.PullTiktokRiderInfo(result)
if result.LogisticsStatus == model.WaybillStatusCourierArrived {
result.LogisticsStatus = model.WaybillStatusDelivering
@@ -232,8 +232,11 @@ func (c *DeliveryHandler) callbackMsg2Waybill(msg *mtpsapi.CallbackOrderMsg) (re
var good *model.GoodsOrder
sql := `SELECT * FROM goods_order WHERE vendor_order_id = ? ORDER BY order_created_at DESC LIMIT 1 OFFSET 0`
sqlParams := []interface{}{msg.OrderID}
dao.GetRow(dao.GetDB(), &good, sql, sqlParams)
retVal.OrderVendorID = good.VendorID
if err := dao.GetRow(dao.GetDB(), &good, sql, sqlParams); err != nil || good == nil || good.VendorOrderID == "" {
retVal.OrderVendorID = 0
} else {
retVal.OrderVendorID = good.VendorID
}
return retVal
}

View File

@@ -59,7 +59,7 @@ func GetOrderRiderInfoToPlatform(orderId string, wayBillStatus int) {
if orderId == "" { // 订单id为空是,是定时轮询操作,不做此状态
waybillList, _ := dao.GetWaybills(dao.GetDB(), v.VendorOrderID)
if len(waybillList) > 0 && waybillList[0].Status > model.WaybillStatusEndBegin {
globals.SugarLogger.Debug("订单物流状态结束,不在推送订单状态:orderID[%s],wayBillId[%s]", v.VendorOrderID, waybillList[0].VendorWaybillID)
globals.SugarLogger.Debugf("订单物流状态结束,不在推送订单状态:orderID[%s],wayBillId[%s]", v.VendorOrderID, waybillList[0].VendorWaybillID)
continue
}
}
@@ -151,7 +151,6 @@ func GetOrderRiderInfoToPlatform(orderId string, wayBillStatus int) {
}
func PullTiktokRiderInfo(riderInfo *mtpsapi.RiderInfo) {
globals.SugarLogger.Debugf("==================riderInfo:%s", utils.Format4Output(riderInfo, false))
switch riderInfo.LogisticsStatus {
case 5: // 呼叫骑手
riderInfo.LogisticsStatus = 0
@@ -193,7 +192,6 @@ func PullTiktokRiderInfo(riderInfo *mtpsapi.RiderInfo) {
// 呼叫骑手的时候推送发货
// 抖店由于发配送时运单id已经固定了,我们系统在重新发货,或者运单号发生改变时去推送信息时.抖店只识别第一个运单号所以在这儿修改成发单时的第一个运单号!
paramsMap := utils.Struct2Map(riderInfo, "", true)
globals.SugarLogger.Debugf("==================paramsMap:%s", utils.Format4Output(paramsMap, false))
if handler := partner.GetPurchaseOrderHandlerFromVendorID(model.VendorIDDD); handler != nil {
if err := handler.GetOrderRider("", "", paramsMap); err != nil {
globals.SugarLogger.Errorf("PullTiktokRiderInfo Err %s", err.Error())
@@ -297,6 +295,7 @@ func UpdateFakeWayBillToTiktok() {
if handler := partner.GetPurchaseOrderHandlerFromVendorID(model.VendorIDDD); handler != nil {
if err := handler.GetOrderRider(fakeWayBill[i].VendorOrgCode, "", paramsMap); err != nil {
globals.SugarLogger.Errorf("Fake Pull Rider Info Err :%s--%s--%v", riderInfo.OrderId, riderInfo.ThirdCarrierOrderId, err)
continue
}
}