- write legacy jxoder almost ok.
This commit is contained in:
@@ -41,7 +41,8 @@ type DeliveryPlatformHandler interface {
|
||||
}
|
||||
|
||||
type OrderManager interface {
|
||||
MasterWaybillStatusChanged(*model.Waybill) (err error)
|
||||
OnOrderStatusChanged(status *model.OrderStatus) (err error) // 此消息是否使用还不确定
|
||||
UpdateWaybillVendorID(bill *model.Waybill) (err error)
|
||||
}
|
||||
|
||||
type Scheduler interface {
|
||||
@@ -51,7 +52,6 @@ type Scheduler interface {
|
||||
|
||||
// 以下是订单
|
||||
OnOrderNew(order *model.GoodsOrder) (err error)
|
||||
OnOrderAccepted(order *model.GoodsOrder) (err error)
|
||||
OnOrderStatusChanged(status *model.OrderStatus) (err error)
|
||||
|
||||
// 以下是运单
|
||||
@@ -59,36 +59,36 @@ type Scheduler interface {
|
||||
}
|
||||
|
||||
type BaseScheduler struct {
|
||||
orderManager OrderManager
|
||||
purchasePlatformHandlers map[int]PurchasePlatformHandler
|
||||
deliveryPlatformHandlers map[int]DeliveryPlatformHandler
|
||||
CurOrderManager OrderManager
|
||||
PurchasePlatformHandlers map[int]PurchasePlatformHandler
|
||||
DeliveryPlatformHandlers map[int]DeliveryPlatformHandler
|
||||
}
|
||||
|
||||
func (c *BaseScheduler) Init() {
|
||||
c.purchasePlatformHandlers = make(map[int]PurchasePlatformHandler)
|
||||
c.deliveryPlatformHandlers = make(map[int]DeliveryPlatformHandler)
|
||||
c.PurchasePlatformHandlers = make(map[int]PurchasePlatformHandler)
|
||||
c.DeliveryPlatformHandlers = make(map[int]DeliveryPlatformHandler)
|
||||
}
|
||||
|
||||
func (c *BaseScheduler) RegisterOrderManager(handler OrderManager) {
|
||||
c.orderManager = handler
|
||||
c.CurOrderManager = handler
|
||||
}
|
||||
|
||||
func (c *BaseScheduler) RegisterPurchasePlatform(vendorID int, handler PurchasePlatformHandler) {
|
||||
if !(vendorID >= model.VendorIDPurchaseBegin && vendorID <= model.VendorIDPurchaseEnd) {
|
||||
panic(fmt.Sprintf("purchase vendor:%d is illegal", vendorID))
|
||||
}
|
||||
if _, ok := c.purchasePlatformHandlers[vendorID]; ok {
|
||||
if _, ok := c.PurchasePlatformHandlers[vendorID]; ok {
|
||||
panic(fmt.Sprintf("purchase vendor:%d, already exists", vendorID))
|
||||
}
|
||||
c.purchasePlatformHandlers[vendorID] = handler
|
||||
c.PurchasePlatformHandlers[vendorID] = handler
|
||||
}
|
||||
|
||||
func (c *BaseScheduler) RegisterDeliveryPlatform(vendorID int, handler DeliveryPlatformHandler) {
|
||||
if !(vendorID >= model.VendorIDDeliveryBegin && vendorID <= model.VendorIDDeliveryEnd) {
|
||||
panic(fmt.Sprintf("delivery vendor:%d is illegal", vendorID))
|
||||
}
|
||||
if _, ok := c.deliveryPlatformHandlers[vendorID]; ok {
|
||||
if _, ok := c.DeliveryPlatformHandlers[vendorID]; ok {
|
||||
panic(fmt.Sprintf("delivery vendor:%d, already exists", vendorID))
|
||||
}
|
||||
c.deliveryPlatformHandlers[vendorID] = handler
|
||||
c.DeliveryPlatformHandlers[vendorID] = handler
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user