- FakeMsgTypeOrderReceived, FakeMsgTypeOrderDelivering for mtwm
This commit is contained in:
@@ -24,5 +24,5 @@ func OnOrderCallbackMsg(msg *mtwmapi.CallbackMsg) (response *mtwmapi.CallbackRes
|
|||||||
}
|
}
|
||||||
|
|
||||||
func GetOrderIDFromMsg(msg *mtwmapi.CallbackMsg) string {
|
func GetOrderIDFromMsg(msg *mtwmapi.CallbackMsg) string {
|
||||||
return msg.Data.Get("order_id")
|
return msg.Data.Get(mtwmapi.KeyOrderID)
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
package mtwm
|
package mtwm
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"net/url"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
"git.rosy.net.cn/baseapi/platformapi/mtwmapi"
|
"git.rosy.net.cn/baseapi/platformapi/mtwmapi"
|
||||||
@@ -12,6 +13,11 @@ import (
|
|||||||
"git.rosy.net.cn/jx-callback/globals/api"
|
"git.rosy.net.cn/jx-callback/globals/api"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
const (
|
||||||
|
FakeMsgTypeOrderReceived = "orderReceived"
|
||||||
|
FakeMsgTypeOrderDelivering = "orderDelivering"
|
||||||
|
)
|
||||||
|
|
||||||
var (
|
var (
|
||||||
VendorStatus2StatusMap = map[string]int{
|
VendorStatus2StatusMap = map[string]int{
|
||||||
mtwmapi.OrderStatusUserCommitted: model.OrderStatusUnknown,
|
mtwmapi.OrderStatusUserCommitted: model.OrderStatusUnknown,
|
||||||
@@ -138,7 +144,7 @@ func (c *PurchaseHandler) callbackMsg2Status(msg *mtwmapi.CallbackMsg) *model.Or
|
|||||||
case mtwmapi.MsgTypeOrderCanceled:
|
case mtwmapi.MsgTypeOrderCanceled:
|
||||||
vendorStatus = mtwmapi.OrderStatusCanceled
|
vendorStatus = mtwmapi.OrderStatusCanceled
|
||||||
remark = msg.Data.Get("reason")
|
remark = msg.Data.Get("reason")
|
||||||
case mtwmapi.MsgTypeNewOrder, mtwmapi.MsgTypeOrderAccepted, mtwmapi.MsgTypeOrderFinished:
|
case mtwmapi.MsgTypeNewOrder, FakeMsgTypeOrderReceived, mtwmapi.MsgTypeOrderAccepted, FakeMsgTypeOrderDelivering, mtwmapi.MsgTypeOrderFinished:
|
||||||
vendorStatus = msg.Data.Get("status")
|
vendorStatus = msg.Data.Get("status")
|
||||||
statusTime = utils.Str2Int64(msg.Data.Get("utime"))
|
statusTime = utils.Str2Int64(msg.Data.Get("utime"))
|
||||||
case mtwmapi.MsgTypeOrderRefund, mtwmapi.MsgTypeOrderPartialRefund:
|
case mtwmapi.MsgTypeOrderRefund, mtwmapi.MsgTypeOrderPartialRefund:
|
||||||
@@ -164,7 +170,19 @@ func (c *PurchaseHandler) callbackMsg2Status(msg *mtwmapi.CallbackMsg) *model.Or
|
|||||||
func (c *PurchaseHandler) AcceptOrRefuseOrder(order *model.GoodsOrder, isAcceptIt bool, userName string) (err error) {
|
func (c *PurchaseHandler) AcceptOrRefuseOrder(order *model.GoodsOrder, isAcceptIt bool, userName string) (err error) {
|
||||||
if globals.EnableStoreWrite && globals.EnableMtwmStoreWrite {
|
if globals.EnableStoreWrite && globals.EnableMtwmStoreWrite {
|
||||||
if isAcceptIt {
|
if isAcceptIt {
|
||||||
err = api.MtwmAPI.OrderReceived(utils.Str2Int64(order.VendorOrderID))
|
if err = api.MtwmAPI.OrderReceived(utils.Str2Int64(order.VendorOrderID)); err == nil {
|
||||||
|
msg := &mtwmapi.CallbackMsg{
|
||||||
|
Cmd: FakeMsgTypeOrderReceived,
|
||||||
|
Data: url.Values{},
|
||||||
|
}
|
||||||
|
msg.Data.Set("timestamp", utils.Int64ToStr(time.Now().Unix()))
|
||||||
|
msg.Data.Set("utime", msg.Data.Get("timestamp"))
|
||||||
|
msg.Data.Set(mtwmapi.KeyOrderID, order.VendorOrderID)
|
||||||
|
msg.Data.Set("status", mtwmapi.OrderStatusReceived)
|
||||||
|
go func() {
|
||||||
|
OnOrderCallbackMsg(msg)
|
||||||
|
}()
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
err = api.MtwmAPI.OrderCancel(utils.Str2Int64(order.VendorOrderID))
|
err = api.MtwmAPI.OrderCancel(utils.Str2Int64(order.VendorOrderID))
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,6 +1,9 @@
|
|||||||
package mtwm
|
package mtwm
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"net/url"
|
||||||
|
"time"
|
||||||
|
|
||||||
"git.rosy.net.cn/baseapi/platformapi/mtwmapi"
|
"git.rosy.net.cn/baseapi/platformapi/mtwmapi"
|
||||||
"git.rosy.net.cn/baseapi/utils"
|
"git.rosy.net.cn/baseapi/utils"
|
||||||
"git.rosy.net.cn/jx-callback/business/model"
|
"git.rosy.net.cn/jx-callback/business/model"
|
||||||
@@ -27,7 +30,21 @@ func (p *PurchaseHandler) GetWaybillStatusFromVendorStatus(vendorStatus string)
|
|||||||
|
|
||||||
func (c *PurchaseHandler) onWaybillMsg(msg *mtwmapi.CallbackMsg) (response *mtwmapi.CallbackResponse) {
|
func (c *PurchaseHandler) onWaybillMsg(msg *mtwmapi.CallbackMsg) (response *mtwmapi.CallbackResponse) {
|
||||||
waybill := c.callbackMsg2Waybill(msg)
|
waybill := c.callbackMsg2Waybill(msg)
|
||||||
return mtwmapi.Err2CallbackResponse(partner.CurOrderManager.OnWaybillStatusChanged(waybill), "")
|
err := partner.CurOrderManager.OnWaybillStatusChanged(waybill)
|
||||||
|
if err == nil && waybill.Status == model.WaybillStatusDelivering {
|
||||||
|
msg := &mtwmapi.CallbackMsg{
|
||||||
|
Cmd: FakeMsgTypeOrderDelivering,
|
||||||
|
Data: url.Values{},
|
||||||
|
}
|
||||||
|
msg.Data.Set("timestamp", utils.Int64ToStr(time.Now().Unix()))
|
||||||
|
msg.Data.Set("utime", msg.Data.Get("timestamp"))
|
||||||
|
msg.Data.Set(mtwmapi.KeyOrderID, waybill.VendorOrderID)
|
||||||
|
msg.Data.Set("status", mtwmapi.OrderStatusDelivering)
|
||||||
|
go func() {
|
||||||
|
OnOrderCallbackMsg(msg)
|
||||||
|
}()
|
||||||
|
}
|
||||||
|
return mtwmapi.Err2CallbackResponse(err, "")
|
||||||
}
|
}
|
||||||
|
|
||||||
func (c *PurchaseHandler) callbackMsg2Waybill(msg *mtwmapi.CallbackMsg) (retVal *model.Waybill) {
|
func (c *PurchaseHandler) callbackMsg2Waybill(msg *mtwmapi.CallbackMsg) (retVal *model.Waybill) {
|
||||||
|
|||||||
Reference in New Issue
Block a user