From 46f96fada863400258c9e55f1c8bf10253a6bbe1 Mon Sep 17 00:00:00 2001 From: gazebo Date: Tue, 25 Dec 2018 15:17:23 +0800 Subject: [PATCH] - debug output in createWaybillOn3rdProviders - disable ELM in CreateWaybillOnProviders. --- .../scheduler/basesch/basesch_ext.go | 5 +++ .../jxcallback/scheduler/defsch/defsch.go | 2 ++ business/jxstore/cms/message.go | 33 +++++++++++++++++++ business/model/message.go | 27 +++++++++++++++ 4 files changed, 67 insertions(+) create mode 100644 business/jxstore/cms/message.go create mode 100644 business/model/message.go diff --git a/business/jxcallback/scheduler/basesch/basesch_ext.go b/business/jxcallback/scheduler/basesch/basesch_ext.go index 2ae0367f0..9d11ee525 100644 --- a/business/jxcallback/scheduler/basesch/basesch_ext.go +++ b/business/jxcallback/scheduler/basesch/basesch_ext.go @@ -1,6 +1,8 @@ package basesch import ( + "fmt" + "git.rosy.net.cn/jx-callback/business/jxcallback/scheduler" "git.rosy.net.cn/jx-callback/business/jxutils" "git.rosy.net.cn/jx-callback/business/jxutils/jxcontext" @@ -14,6 +16,9 @@ import ( func (c *BaseScheduler) CreateWaybillOnProviders(ctx *jxcontext.Context, vendorOrderID string, vendorID int, userName string) (bills []*model.Waybill, err error) { globals.SugarLogger.Infof("CreateWaybillOnProviders orderID:%s userName:%s", vendorOrderID, userName) + if vendorID == model.VendorIDELM { + return nil, fmt.Errorf("不要直接使用饿了么订单号,请使用相应的饿百订单号") + } order, err := partner.CurOrderManager.LoadOrder(vendorOrderID, vendorID) if err == nil { if order.LockStatus != model.OrderStatusLocked && order.Status >= model.OrderStatusFinishedPickup && order.Status < model.OrderStatusEndBegin { diff --git a/business/jxcallback/scheduler/defsch/defsch.go b/business/jxcallback/scheduler/defsch/defsch.go index 052b77dc3..a85a8ac4f 100644 --- a/business/jxcallback/scheduler/defsch/defsch.go +++ b/business/jxcallback/scheduler/defsch/defsch.go @@ -523,6 +523,8 @@ func (s *DefScheduler) createWaybillOn3rdProviders(savedOrderInfo *WatchOrderInf return nil }); err == nil { successCount++ + } else { + globals.SugarLogger.Infof("CreateWaybill orderID:%s failed with error:%v", order.VendorOrderID, err) } } } diff --git a/business/jxstore/cms/message.go b/business/jxstore/cms/message.go new file mode 100644 index 000000000..87e778911 --- /dev/null +++ b/business/jxstore/cms/message.go @@ -0,0 +1,33 @@ +package cms + +import ( + "git.rosy.net.cn/jx-callback/business/jxutils/jxcontext" + "git.rosy.net.cn/jx-callback/business/model" + "git.rosy.net.cn/jx-callback/business/model/dao" +) + +func SendStoreMessage(ctx *jxcontext.Context, title, content string, storeIDs []int, isAsync, isContinueWhenError bool) (err error) { + db := dao.GetDB() + dao.Begin(db) + defer dao.Rollback(db) + msg := &model.Message{ + Title: title, + Content: content, + Type: model.MessageTypeStore, + } + if err = dao.CreateEntity(db, msg); err != nil { + return err + } + for _, storeID := range storeIDs { + msgStatus := &model.MessageStatus{ + MessageID: msg.ID, + StoreID: storeID, + Status: model.MessageStatusNew, + } + if err = dao.CreateEntity(db, msgStatus); err != nil { + return err + } + } + dao.Commit(db) + return err +} diff --git a/business/model/message.go b/business/model/message.go new file mode 100644 index 000000000..858371da1 --- /dev/null +++ b/business/model/message.go @@ -0,0 +1,27 @@ +package model + +const ( + MessageTypeStore = 1 +) + +const ( + MessageStatusNew = 0 + MessageStatusSendAllSuccess = 1 + MessageStatusSendSuccess = 2 + MessageStatusSendAllFailed = 3 + MessageStatusRead = 4 +) + +type Message struct { + ModelIDCULD + Type int8 + Title string + Content string +} + +type MessageStatus struct { + ModelIDCULD + MessageID int + StoreID int + Status int8 +}