- ebai.CmdOrderPartRefund的业务流程处理
This commit is contained in:
@@ -11,7 +11,7 @@ func OnCallbackMsg(msg *ebaiapi.CallbackMsg) (response *ebaiapi.CallbackResponse
|
||||
if orderID := GetOrderIDFromMsg(msg); orderID != "" {
|
||||
jxutils.CallMsgHandler(func() {
|
||||
switch msg.Cmd {
|
||||
case ebaiapi.CmdOrderCreate, ebaiapi.CmdOrderStatus, ebaiapi.CmdOrderUserCancel:
|
||||
case ebaiapi.CmdOrderCreate, ebaiapi.CmdOrderStatus, ebaiapi.CmdOrderUserCancel, ebaiapi.CmdOrderPartRefund:
|
||||
response = CurPurchaseHandler.onOrderMsg(msg)
|
||||
case ebaiapi.CmdOrderDeliveryStatus:
|
||||
response = CurPurchaseHandler.onWaybillMsg(msg)
|
||||
|
||||
@@ -24,8 +24,9 @@ const (
|
||||
callDeliveryDelay = 10 * time.Minute
|
||||
callDeliveryDelayGap = 30
|
||||
// fakePickedUp = "9527"
|
||||
fakeUserApplyCancel = "fake_user_apply_cancel"
|
||||
fakeAcceptOrder = "fake_accept_order"
|
||||
fakeUserApplyCancel = "fake_user_apply_cancel"
|
||||
fakeAcceptOrder = "fake_accept_order"
|
||||
fakePartRefundFinished = "fake_part_refund_finished"
|
||||
)
|
||||
|
||||
// 饿百的接单会直接召唤配送,为了统一将饿百的接单影射成拣货完成,然后模拟一个接单消息
|
||||
@@ -34,6 +35,7 @@ var (
|
||||
VendorStatus2StatusMap = map[string]int{
|
||||
ebaiapi.OrderStatusNew: model.OrderStatusNew,
|
||||
fakeAcceptOrder: model.OrderStatusAccepted,
|
||||
fakePartRefundFinished: model.OrderStatusAdjust,
|
||||
ebaiapi.OrderStatusAccepted: model.OrderStatusFinishedPickup,
|
||||
fakeUserApplyCancel: model.OrderStatusApplyCancel,
|
||||
ebaiapi.OrderStatusCourierAccepted: model.OrderStatusDelivering,
|
||||
@@ -269,6 +271,14 @@ func (c *PurchaseHandler) callbackMsg2Status(msg *ebaiapi.CallbackMsg) (orderSta
|
||||
} else {
|
||||
orderStatus = nil
|
||||
}
|
||||
} else if msg.Cmd == ebaiapi.CmdOrderPartRefund {
|
||||
if utils.Int64ToStr(utils.MustInterface2Int64(msg.Body["status"])) == ebaiapi.OrderPartRefundSuccess {
|
||||
orderStatus.VendorStatus = fakePartRefundFinished
|
||||
orderStatus.Status = c.GetStatusFromVendorStatus(orderStatus.VendorStatus)
|
||||
orderStatus.Remark = utils.Interface2String(msg.Body["reason"])
|
||||
} else {
|
||||
orderStatus = nil
|
||||
}
|
||||
} else if status, ok := msg.Body["status"]; ok {
|
||||
if vendorStatus, ok := status.(string); ok {
|
||||
orderStatus.VendorStatus = vendorStatus
|
||||
|
||||
Reference in New Issue
Block a user