- send weixin msg more accurately.
This commit is contained in:
@@ -7,7 +7,6 @@ import (
|
||||
"git.rosy.net.cn/baseapi"
|
||||
"git.rosy.net.cn/baseapi/utils"
|
||||
"git.rosy.net.cn/jx-callback/business/jxutils"
|
||||
"git.rosy.net.cn/jx-callback/business/jxutils/weixinmsg"
|
||||
"git.rosy.net.cn/jx-callback/business/model"
|
||||
"git.rosy.net.cn/jx-callback/business/scheduler"
|
||||
"git.rosy.net.cn/jx-callback/globals"
|
||||
@@ -60,7 +59,6 @@ func (c *OrderController) OnOrderNew(order *model.GoodsOrder, msgVendorStatus st
|
||||
if err == nil && !isDuplicated {
|
||||
if isDuplicated, err = c.saveOrder(order, false, db); err == nil && !isDuplicated {
|
||||
err = scheduler.CurrentScheduler.OnOrderNew(order, false)
|
||||
weixinmsg.NotifyNewOrder(order)
|
||||
}
|
||||
}
|
||||
return err
|
||||
@@ -96,7 +94,6 @@ func (c *OrderController) OnOrderAdjust(order *model.GoodsOrder, msgVendorStatus
|
||||
// 因为订单调度器需要的是真实状态,所以用order的状态
|
||||
err = scheduler.CurrentScheduler.OnOrderNew(order, false)
|
||||
err = scheduler.CurrentScheduler.OnOrderStatusChanged(model.Order2Status(order), false)
|
||||
weixinmsg.NotifyNewOrder(order)
|
||||
}
|
||||
}
|
||||
return err
|
||||
|
||||
@@ -4,7 +4,6 @@ import (
|
||||
"time"
|
||||
|
||||
"git.rosy.net.cn/baseapi/utils"
|
||||
"git.rosy.net.cn/jx-callback/business/jxutils/weixinmsg"
|
||||
"git.rosy.net.cn/jx-callback/business/model"
|
||||
"git.rosy.net.cn/jx-callback/business/scheduler"
|
||||
"git.rosy.net.cn/jx-callback/globals"
|
||||
@@ -90,11 +89,6 @@ func (w *WaybillController) OnWaybillStatusChanged(bill *model.Waybill) (err err
|
||||
}
|
||||
if err == nil && !isDuplicated {
|
||||
scheduler.CurrentScheduler.OnWaybillStatusChanged(bill, false)
|
||||
if bill.Status == model.WaybillStatusAccepted || bill.Status == model.WaybillStatusDelivered {
|
||||
if order, err2 := OrderManager.LoadOrder(bill.VendorOrderID, bill.OrderVendorID); err2 == nil {
|
||||
weixinmsg.NotifyWaybillStatus(bill, order)
|
||||
}
|
||||
}
|
||||
if globals.GenerateLegacyJxOrder {
|
||||
w.legacyWaybillStatusChanged(bill, db)
|
||||
}
|
||||
|
||||
@@ -99,6 +99,10 @@ func SendMsgToStore(storeID int, templateID, downloadURL string, data interface{
|
||||
|
||||
func NotifyNewOrder(order *model.GoodsOrder) (err error) {
|
||||
globals.SugarLogger.Debugf("NotifyNewOrder orderID:%s", order.VendorOrderID)
|
||||
if !model.IsOrderSolid(order) {
|
||||
globals.SugarLogger.Infof("NotifyNewOrder orderID:%s is not solid", order.VendorOrderID)
|
||||
return nil
|
||||
}
|
||||
sb := new(strings.Builder)
|
||||
sb.WriteString("老板,")
|
||||
sb.WriteString(order.ConsigneeName)
|
||||
@@ -142,9 +146,13 @@ func NotifyNewOrder(order *model.GoodsOrder) (err error) {
|
||||
}
|
||||
|
||||
func NotifyWaybillStatus(bill *model.Waybill, order *model.GoodsOrder) error {
|
||||
globals.SugarLogger.Debugf("NotifyWaybillStatus bill:%v", bill)
|
||||
globals.SugarLogger.Debugf("NotifyWaybillStatus orderID:%s bill:%v", order.VendorOrderID, bill)
|
||||
if !model.IsOrderSolid(order) {
|
||||
globals.SugarLogger.Infof("NotifyWaybillStatus orderID:%s is not solid", order.VendorOrderID)
|
||||
return nil
|
||||
}
|
||||
var title string
|
||||
var templateID string
|
||||
templateID := ""
|
||||
remark := ""
|
||||
titleColor := ""
|
||||
switch bill.Status {
|
||||
|
||||
@@ -8,6 +8,7 @@ import (
|
||||
|
||||
"git.rosy.net.cn/baseapi/utils"
|
||||
"git.rosy.net.cn/jx-callback/business/jxutils"
|
||||
"git.rosy.net.cn/jx-callback/business/jxutils/weixinmsg"
|
||||
"git.rosy.net.cn/jx-callback/business/legacymodel"
|
||||
"git.rosy.net.cn/jx-callback/business/model"
|
||||
"git.rosy.net.cn/jx-callback/business/scheduler"
|
||||
@@ -205,6 +206,9 @@ func (s *DefScheduler) OnOrderNew(order *model.GoodsOrder, isPending bool) (err
|
||||
savedOrderInfo.SetOrder(order) // 调整单或消息错序都可能进到这里来
|
||||
}
|
||||
s.resetTimer(savedOrderInfo, nil, isPending)
|
||||
if !isPending {
|
||||
weixinmsg.NotifyNewOrder(order)
|
||||
}
|
||||
return err
|
||||
}
|
||||
|
||||
@@ -285,6 +289,9 @@ func (s *DefScheduler) OnWaybillStatusChanged(bill *model.Waybill, isPending boo
|
||||
s.swtich2SelfDeliverWithRetry(savedOrderInfo, bill, 2, 10*time.Second)
|
||||
}
|
||||
}
|
||||
if !isPending {
|
||||
weixinmsg.NotifyWaybillStatus(bill, order)
|
||||
}
|
||||
} else if !s.isBillCandidate(order, bill) && bill.WaybillVendorID != order.VendorID {
|
||||
// 发生这种情况的原因就是两个接单事件几乎同时到达(来不及取消),也算正常
|
||||
s.CancelWaybill(bill)
|
||||
@@ -364,6 +371,9 @@ func (s *DefScheduler) OnWaybillStatusChanged(bill *model.Waybill, isPending boo
|
||||
s.updateOrderByBill(order, bill, false)
|
||||
}
|
||||
}
|
||||
if !isPending {
|
||||
weixinmsg.NotifyWaybillStatus(bill, order)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user