添加Store.OperatorPhone3

This commit is contained in:
gazebo
2020-02-12 08:40:18 +08:00
parent f77849d08a
commit 97a5c2d921
7 changed files with 128 additions and 121 deletions

View File

@@ -1389,13 +1389,8 @@ func isOrderCanSwitch2SelfDeliver(order *model.GoodsOrder) (isCan bool) {
//订单预计利润若低于0则向门店运营负责人发送钉钉消息
func OrderProfitWarning(order *model.GoodsOrder) {
var (
operatorName string
operatorPhone string
noticeMsg string
profit float64
storeID int
)
var profit float64
db := dao.GetDB()
if order == nil {
return
@@ -1404,7 +1399,7 @@ func OrderProfitWarning(order *model.GoodsOrder) {
globals.SugarLogger.Debugf("OrderProfitWarning TotalShopMoney=0 orderID:%s", order.VendorOrderID)
return
}
storeID = jxutils.GetShowStoreIDFromOrder(order)
storeID := jxutils.GetShowStoreIDFromOrder(order)
storeDetail, err := dao.GetStoreDetail(db, storeID, order.VendorID)
if storeDetail != nil && err == nil {
payPercentage := storeDetail.PayPercentage
@@ -1414,17 +1409,13 @@ func OrderProfitWarning(order *model.GoodsOrder) {
profit = utils.Str2Float64(utils.Int64ToStr(order.TotalShopMoney*int64(payPercentage)/200)) / 100
}
if profit < 0 {
if storeDetail.OperatorPhone != "" {
operatorName = storeDetail.OperatorName
operatorPhone = storeDetail.OperatorPhone
} else if storeDetail.OperatorPhone2 != "" {
operatorName = storeDetail.OperatorName2
operatorPhone = storeDetail.OperatorPhone2
}
noticeMsg = fmt.Sprintf("利润 [%v],运营负责人:[%v]门店ID[%v]平台门店ID[%v],门店名:[%v],订单号(点击进入详情)%v", profit, operatorName, order.StoreID, order.VendorStoreID, order.StoreName, globals.BackstageHost+"/#/ordermanager/"+order.VendorOrderID)
user, err := dao.GetUserByID(db, "mobile", operatorPhone)
if user != nil && err == nil {
ddmsg.SendUserMessage(dingdingapi.MsgTyeText, user.UserID, "警告此订单利润低于0", noticeMsg)
operatorPhone, operatorName := getOrderOperatorInfo(order, storeDetail)
if operatorPhone != "" {
noticeMsg := fmt.Sprintf("利润 [%v],运营负责人:[%v]门店ID[%v]平台门店ID[%v],门店名:[%v],订单号(点击进入详情)%v", profit, operatorName, order.StoreID, order.VendorStoreID, order.StoreName, globals.BackstageHost+"/#/ordermanager/"+order.VendorOrderID)
user, err := dao.GetUserByID(db, "mobile", operatorPhone)
if user != nil && err == nil {
ddmsg.SendUserMessage(dingdingapi.MsgTyeText, user.UserID, "警告此订单利润低于0", noticeMsg)
}
}
}
}
@@ -1436,8 +1427,11 @@ func (s *DefScheduler) notifyOrderStakeHolder(order *model.GoodsOrder, msgTitle,
}
db := dao.GetDB()
storeDetail, err := dao.GetStoreDetail(db, jxutils.GetSaleStoreIDFromOrder(order), order.VendorID)
if err == nil && storeDetail.OperatorPhone != "" {
userMobiles = append(userMobiles, storeDetail.OperatorPhone)
if err == nil {
operatorPhone, _ := getOrderOperatorInfo(order, storeDetail)
if operatorPhone != "" {
userMobiles = append(userMobiles, operatorPhone)
}
}
if len(userMobiles) > 0 {
if msgTitle == "" {
@@ -1454,3 +1448,18 @@ func (s *DefScheduler) notifyOrderStakeHolder(order *model.GoodsOrder, msgTitle,
}
return err
}
func getOrderOperatorInfo(order *model.GoodsOrder, storeDetail *dao.StoreDetail) (operatorPhone, operatorName string) {
switch order.VendorID {
case model.VendorIDJD:
operatorPhone = storeDetail.OperatorPhone
operatorName = storeDetail.OperatorName
case model.VendorIDEBAI:
operatorPhone = storeDetail.OperatorPhone2
operatorName = storeDetail.OperatorName2
case model.VendorIDMTWM:
operatorPhone = storeDetail.OperatorPhone3
operatorName = storeDetail.OperatorName3
}
return operatorPhone, operatorName
}