- use new jx to process jd bad comment and elm urge order
This commit is contained in:
@@ -22,7 +22,8 @@ const (
|
||||
)
|
||||
|
||||
var (
|
||||
ErrCanNotFindOrder = errors.New("找不到相应订单")
|
||||
ErrCanNotFindOrder = errors.New("找不到相应订单")
|
||||
ErrCanNotFindWaybill = errors.New("找不到相应运单")
|
||||
)
|
||||
|
||||
var (
|
||||
|
||||
@@ -106,3 +106,18 @@ func (w *OrderManager) addWaybillStatus(bill *model.Waybill, db orm.Ormer, addPa
|
||||
}
|
||||
return isDuplicated, err
|
||||
}
|
||||
|
||||
func (c *OrderManager) LoadWaybill(vendorWaybillID string, waybillVendorID int) (bill *model.Waybill, err error) {
|
||||
db := orm.NewOrm()
|
||||
bill = &model.Waybill{
|
||||
VendorWaybillID: vendorWaybillID,
|
||||
WaybillVendorID: waybillVendorID,
|
||||
}
|
||||
if err = db.Read(bill, "VendorWaybillID", "WaybillVendorID"); err != nil {
|
||||
if err == orm.ErrNoRows {
|
||||
err = ErrCanNotFindWaybill
|
||||
}
|
||||
globals.SugarLogger.Infof("LoadWaybill vendorWaybillID:%s failed with error:%v", vendorWaybillID, err)
|
||||
}
|
||||
return bill, err
|
||||
}
|
||||
|
||||
@@ -43,6 +43,8 @@ type IOrderManager interface {
|
||||
LoadOrder(vendorOrderID string, vendorID int) (order *model.GoodsOrder, err error)
|
||||
UpdateWaybillVendorID(bill *model.Waybill, revertStatus bool) (err error)
|
||||
UpdateOrderStatusAndFlag(order *model.GoodsOrder) (err error)
|
||||
|
||||
LoadWaybill(vendorWaybillID string, waybillVendorID int) (bill *model.Waybill, err error)
|
||||
}
|
||||
|
||||
type IPurchasePlatformHandler interface {
|
||||
|
||||
@@ -15,7 +15,6 @@ import (
|
||||
"git.rosy.net.cn/jx-callback/business/jxutils"
|
||||
"git.rosy.net.cn/jx-callback/business/model"
|
||||
"git.rosy.net.cn/jx-callback/business/partner"
|
||||
"git.rosy.net.cn/jx-callback/legacy/freshfood"
|
||||
)
|
||||
|
||||
const (
|
||||
@@ -237,7 +236,8 @@ func (c *PurchaseHandler) onOrderUserUrgeOrder(msg *elmapi.CallbackOrderUrgeMsg)
|
||||
StatusTime: utils.Timestamp2Time(msg.UpdateTime),
|
||||
}
|
||||
if globals.ReallyCallPlatformAPI {
|
||||
freshfood.FreshFoodAPI.ELMClientUrgeOrder(msg.OrderID)
|
||||
// freshfood.FreshFoodAPI.ELMClientUrgeOrder(msg.OrderID)
|
||||
c.ClientUrgeOrder(msg.OrderID)
|
||||
}
|
||||
return elmapi.Err2CallbackResponse(partner.CurOrderManager.OnOrderStatusChanged(status), status.VendorStatus)
|
||||
}
|
||||
|
||||
51
business/partner/purchase/elm/order_legacy_urge.go
Normal file
51
business/partner/purchase/elm/order_legacy_urge.go
Normal file
@@ -0,0 +1,51 @@
|
||||
package elm
|
||||
|
||||
import (
|
||||
"github.com/KenmyZhang/aliyun-communicate"
|
||||
|
||||
"git.rosy.net.cn/baseapi/utils"
|
||||
"git.rosy.net.cn/jx-callback/business/model"
|
||||
"git.rosy.net.cn/jx-callback/business/partner"
|
||||
"git.rosy.net.cn/jx-callback/globals"
|
||||
)
|
||||
|
||||
const (
|
||||
ELM_SMS_SIGN_NAME = "好菜鲜生" //饿了么短信推送的签名
|
||||
ELM_SMS_REMINDERS_DAIPEISHONG_TEMPLATECODE = "SMS_135028810" //饿了么待配送模板ID
|
||||
ELM_SMS_REMINDERS_PEISHOGNZHONG_TEMPLATECODE = "SMS_139225187" //饿了么配送中模板ID
|
||||
)
|
||||
|
||||
func (c *PurchaseHandler) ClientUrgeOrder(orderID string) (err error) {
|
||||
go func() (err error) {
|
||||
globals.SugarLogger.Debugf("ClientUrgeOrder orderID:%s", orderID)
|
||||
order, err2 := partner.CurOrderManager.LoadOrder(orderID, model.VendorIDELM)
|
||||
if err = err2; err == nil {
|
||||
templateCode := ""
|
||||
var templateParams map[string]interface{}
|
||||
if order.Status == model.OrderStatusFinishedPickup {
|
||||
templateCode = ELM_SMS_REMINDERS_DAIPEISHONG_TEMPLATECODE
|
||||
templateParams = map[string]interface{}{
|
||||
"name": order.ConsigneeName,
|
||||
}
|
||||
} else if order.Status == model.OrderStatusDelivering {
|
||||
bill, err2 := partner.CurOrderManager.LoadWaybill(order.VendorWaybillID, order.WaybillVendorID)
|
||||
if err = err2; err == nil {
|
||||
templateCode = ELM_SMS_REMINDERS_PEISHOGNZHONG_TEMPLATECODE
|
||||
templateParams = map[string]interface{}{
|
||||
"name": order.ConsigneeName,
|
||||
"number": bill.CourierMobile,
|
||||
}
|
||||
}
|
||||
}
|
||||
if templateCode != "" {
|
||||
smsClient := aliyunsmsclient.New("http://dysmsapi.aliyuncs.com/")
|
||||
_, err = smsClient.Execute(globals.AliKey, globals.AliSecret, order.ConsigneeMobile, ELM_SMS_SIGN_NAME, templateCode, string(utils.MustMarshal(templateParams)))
|
||||
}
|
||||
}
|
||||
if err != nil {
|
||||
globals.SugarLogger.Warnf("ClientUrgeOrder orderID:%s failed with error:%v", orderID, err)
|
||||
}
|
||||
return err
|
||||
}()
|
||||
return err
|
||||
}
|
||||
@@ -11,7 +11,6 @@ import (
|
||||
"git.rosy.net.cn/jx-callback/business/partner"
|
||||
"git.rosy.net.cn/jx-callback/globals"
|
||||
"git.rosy.net.cn/jx-callback/globals/api"
|
||||
"git.rosy.net.cn/jx-callback/legacy/freshfood"
|
||||
)
|
||||
|
||||
var (
|
||||
@@ -46,11 +45,9 @@ func (c *PurchaseHandler) onOrderMsg(msg *jdapi.CallbackOrderMsg) (retVal *jdapi
|
||||
} else {
|
||||
status := c.callbackMsg2Status(msg)
|
||||
if msg.StatusID == jdapi.OrderStatusAddComment || msg.StatusID == jdapi.OrderStatusModifyComment {
|
||||
if false { //globals.ReallyCallPlatformAPI {
|
||||
freshfood.FreshFoodAPI.JDOrderComment(msg)
|
||||
}
|
||||
if err := c.onOrderComment(msg); err != nil {
|
||||
// return jdapi.Err2CallbackResponse(err, status.VendorStatus)
|
||||
if globals.ReallyCallPlatformAPI {
|
||||
// freshfood.FreshFoodAPI.JDOrderComment(msg)
|
||||
c.onOrderComment(msg)
|
||||
}
|
||||
}
|
||||
err := partner.CurOrderManager.OnOrderStatusChanged(status)
|
||||
|
||||
@@ -121,17 +121,17 @@ func (c *PurchaseHandler) onOrderComment(msg *jdapi.CallbackOrderMsg) (err error
|
||||
}
|
||||
if err == nil {
|
||||
if isNewComment {
|
||||
globals.SugarLogger.Debug("fuck1")
|
||||
err = dao.CreateEntity(db, comment)
|
||||
} else {
|
||||
globals.SugarLogger.Debug("fuck2")
|
||||
_, err = dao.UpdateEntity(db, comment)
|
||||
}
|
||||
}
|
||||
globals.SugarLogger.Debugf("onOrderComment err:%v", err)
|
||||
}
|
||||
}
|
||||
}
|
||||
if err != nil {
|
||||
globals.SugarLogger.Warnf("onOrderComment failed with error:%v", err)
|
||||
}
|
||||
return err
|
||||
}()
|
||||
return err
|
||||
|
||||
Reference in New Issue
Block a user