This commit is contained in:
邹宗楠
2023-12-18 17:58:31 +08:00
parent 22cd091452
commit 15f28cf1c9
2 changed files with 16 additions and 6 deletions

View File

@@ -260,12 +260,14 @@ func (c *OrderManager) OnOrderStatusChanged(vendorOrgCode string, orderStatus *m
dao.UpdateEntity(db, order, "OrderFinishedAt")
} else if orderStatus.Status == model.OrderStatusCanceled {
order2, err2 := c.LoadOrder(orderStatus.VendorOrderID, orderStatus.VendorID) // 订单被取消,则取消三方运单
waybill, _ := dao.GetWaybills(db, order2.VendorOrderID, []int64{model.VendorIDMTPS, model.VendorIDDada, model.VendorIDFengNiao, model.VendorIDUUPT, model.VendorIDSFPS})
for _, v := range waybill {
if err := partner.GetDeliveryPlatformFromVendorID(v.WaybillVendorID).Handler.CancelWaybill(v, 0, "订单被取消了"); err != nil {
partner.CurOrderManager.OnOrderMsg(order2, fmt.Sprintf("订单[%s]被取消了,运单[%s]取消失败Err: %s", order.VendorOrderID, v.VendorWaybillID, err.Error()), "")
} else {
partner.CurOrderManager.OnOrderMsg(order2, fmt.Sprintf("订单[%s]被取消了,运单[%s]取消成功", order.VendorOrderID, v.VendorWaybillID), "")
if orderStatus.OrderType == model.OrderTypeOrder {
waybill, _ := dao.GetWaybills(db, order2.VendorOrderID, []int64{model.VendorIDMTPS, model.VendorIDDada, model.VendorIDFengNiao, model.VendorIDUUPT, model.VendorIDSFPS})
for _, v := range waybill {
if err := partner.GetDeliveryPlatformFromVendorID(v.WaybillVendorID).Handler.CancelWaybill(v, 0, "订单被取消了"); err != nil {
partner.CurOrderManager.OnOrderMsg(order2, fmt.Sprintf("订单[%s]被取消了,运单[%s]取消失败Err: %s", order.VendorOrderID, v.VendorWaybillID, err.Error()), "")
} else {
partner.CurOrderManager.OnOrderMsg(order2, fmt.Sprintf("订单[%s]被取消了,运单[%s]取消成功", order.VendorOrderID, v.VendorWaybillID), "")
}
}
}
// 刷新订单结束时间

View File

@@ -174,6 +174,14 @@ func (c *PurchaseHandler) onAfsOrderMsg(msg *ebaiapi.CallbackMsg) (retVal *ebaia
dao.UpdateEntity(dao.GetDB(), goodsOrder, "TotalShopMoney")
}
}
if utils.Str2Int(orderStatus.VendorStatus) == ebaiapi.OrderUserCancelMerchantAgreed {
afs, _ := partner.CurOrderManager.LoadAfsOrder(orderStatus.RefVendorOrderID, model.VendorIDEBAI)
afs.Status = orderStatus.Status
afs.VendorStatus = orderStatus.VendorStatus
afs.Flag = model.YES
dao.UpdateEntity(dao.GetDB(), afs, "Status", "VendorStatus", "Flag")
}
retVal = api.EbaiAPI.Err2CallbackResponse(msg.Cmd, err, nil)
}
return retVal