- continue refactoring...

This commit is contained in:
gazebo
2018-08-17 16:42:16 +08:00
parent d40186e930
commit c5db19045d
33 changed files with 656 additions and 178 deletions

View File

@@ -3,14 +3,29 @@ package elm
import (
"git.rosy.net.cn/baseapi/platformapi/elmapi"
"git.rosy.net.cn/baseapi/utils"
"git.rosy.net.cn/jx-callback/business/jxcallback/scheduler"
"git.rosy.net.cn/jx-callback/business/jxutils"
"git.rosy.net.cn/jx-callback/business/model"
)
type Controller struct {
var (
curPurchaseHandler *PurchaseHandler
)
type PurchaseHandler struct {
scheduler.BasePurchasePlatform
}
func (c *Controller) OnCallbackMsg(msg *elmapi.CallbackMsg) (retVal *elmapi.CallbackResponse) {
func init() {
curPurchaseHandler = new(PurchaseHandler)
scheduler.CurrentScheduler.RegisterPurchasePlatform(model.VendorIDELM, curPurchaseHandler)
}
func OnCallbackMsg(msg *elmapi.CallbackMsg) (retVal *elmapi.CallbackResponse) {
return curPurchaseHandler.OnCallbackMsg(msg)
}
func (c *PurchaseHandler) OnCallbackMsg(msg *elmapi.CallbackMsg) (retVal *elmapi.CallbackResponse) {
if msg.Type == elmapi.MsgTypeOrderValid {
innerMsg := make(map[string]interface{})
err := utils.UnmarshalUseNumber([]byte(msg.Message), &innerMsg)
@@ -18,7 +33,7 @@ func (c *Controller) OnCallbackMsg(msg *elmapi.CallbackMsg) (retVal *elmapi.Call
retVal = elmapi.Err2CallbackResponse(err, "")
} else {
innerMsg["msgType"] = msg.Type
retVal = new(OrderController).OnOrderNewMsg(innerMsg)
retVal = c.OnOrderNewMsg(innerMsg)
}
} else if msg.Type > elmapi.MsgTypeOrderValid && msg.Type < elmapi.MsgTypeUserApplyCancel {
var innerMsg elmapi.CallbackOrderStatusMsg
@@ -27,7 +42,7 @@ func (c *Controller) OnCallbackMsg(msg *elmapi.CallbackMsg) (retVal *elmapi.Call
retVal = elmapi.Err2CallbackResponse(err, "")
} else {
innerMsg.MsgType = msg.Type
retVal = new(OrderController).OnOrderStatusMsg(&innerMsg)
retVal = c.OnOrderStatusMsg(&innerMsg)
}
} else if msg.Type >= elmapi.MsgTypeUserApplyCancel && msg.Type < elmapi.MsgTypeUserUrgeOrder {
var innerMsg elmapi.CallbackOrderCancelRefundMsg
@@ -36,7 +51,7 @@ func (c *Controller) OnCallbackMsg(msg *elmapi.CallbackMsg) (retVal *elmapi.Call
retVal = elmapi.Err2CallbackResponse(err, "")
} else {
innerMsg.MsgType = msg.Type
retVal = new(OrderController).OnOrderCancelRefundMsg(&innerMsg)
retVal = c.OnOrderCancelRefundMsg(&innerMsg)
}
} else if msg.Type == elmapi.MsgTypeUserUrgeOrder {
var innerMsg elmapi.CallbackOrderUrgeMsg
@@ -46,7 +61,7 @@ func (c *Controller) OnCallbackMsg(msg *elmapi.CallbackMsg) (retVal *elmapi.Call
} else {
innerMsg.MsgType = msg.Type
jxutils.CallMsgHandler(func() {
retVal = new(OrderController).onOrderUserUrgeOrder(&innerMsg)
retVal = c.onOrderUserUrgeOrder(&innerMsg)
}, jxutils.ComposeUniversalOrderID(innerMsg.OrderID, model.VendorIDELM))
}
} else if msg.Type >= elmapi.MsgTypeWaybillWait4DeliveryVendor && msg.Type <= elmapi.MsgTypeRejectedSystemError {
@@ -56,7 +71,7 @@ func (c *Controller) OnCallbackMsg(msg *elmapi.CallbackMsg) (retVal *elmapi.Call
retVal = elmapi.Err2CallbackResponse(err, "")
} else {
innerMsg.MsgType = msg.Type
retVal = new(WaybillController).OnWaybillStatusMsg(&innerMsg)
retVal = c.OnWaybillStatusMsg(&innerMsg)
}
} else {
retVal = elmapi.SuccessResponse