订单利润预警

This commit is contained in:
苏尹岚
2019-12-23 10:45:12 +08:00
parent ddb129dbc0
commit 3f98af6a11

View File

@@ -1321,20 +1321,17 @@ func isOrderCanSwitch2SelfDeliver(order *model.GoodsOrder) (isCan bool) {
//订单预计利润若低于0则向门店运营负责人发送钉钉消息 //订单预计利润若低于0则向门店运营负责人发送钉钉消息
func OrderProfitWarning(order *model.GoodsOrder) { func OrderProfitWarning(order *model.GoodsOrder) {
var ( var (
operatorName string operatorName string
noticeMsg string operatorPhone string
profit float64 noticeMsg string
storeID int profit float64
storeID int
) )
db := dao.GetDB() db := dao.GetDB()
if order == nil { if order == nil {
return return
} }
if order.JxStoreID == 0 { storeID = jxutils.GetShowStoreIDFromOrder(order)
storeID = order.StoreID
} else {
storeID = order.JxStoreID
}
storeDetail, err := dao.GetStoreDetail(db, storeID, order.VendorID) storeDetail, err := dao.GetStoreDetail(db, storeID, order.VendorID)
if storeDetail != nil && err == nil { if storeDetail != nil && err == nil {
payPercentage := storeDetail.PayPercentage payPercentage := storeDetail.PayPercentage
@@ -1344,13 +1341,15 @@ func OrderProfitWarning(order *model.GoodsOrder) {
profit = utils.Str2Float64(utils.Int64ToStr(order.TotalShopMoney*int64(payPercentage)/200)) / 100 profit = utils.Str2Float64(utils.Int64ToStr(order.TotalShopMoney*int64(payPercentage)/200)) / 100
} }
if profit < 0 { if profit < 0 {
if storeDetail.OperatorName != "" { if storeDetail.OperatorPhone != "" {
operatorName = storeDetail.OperatorName operatorName = storeDetail.OperatorName
} else if storeDetail.OperatorName2 != "" { operatorPhone = storeDetail.OperatorPhone
} else if storeDetail.OperatorPhone2 != "" {
operatorName = storeDetail.OperatorName2 operatorName = storeDetail.OperatorName2
operatorPhone = storeDetail.OperatorPhone2
} }
noticeMsg = fmt.Sprintf("订单号:[%v],利润 [%v],运营负责人:[%v]", order.VendorOrderID, profit, operatorName) noticeMsg = fmt.Sprintf("订单号:[%v],利润 [%v],运营负责人:[%v]", order.VendorOrderID, profit, operatorName)
user, err := dao.GetUserByID(db, "name", operatorName) user, err := dao.GetUserByID(db, "mobile", operatorPhone)
if user != nil && err == nil { if user != nil && err == nil {
ddmsg.SendUserMessage(dingdingapi.MsgTyeText, user.UserID, "警告此订单利润低于0", noticeMsg) ddmsg.SendUserMessage(dingdingapi.MsgTyeText, user.UserID, "警告此订单利润低于0", noticeMsg)
} }