diff --git a/business/model/const.go b/business/model/const.go
index 0161b46d0..dc9c9d5a4 100644
--- a/business/model/const.go
+++ b/business/model/const.go
@@ -276,7 +276,8 @@ const (
)
const (
- ApplyRefund =
+ ApplyOrderCancel = 140 // 申请取消
+ ApplyOrderRefund = 130 // 申请退款
)
const (
diff --git a/business/model/print_setting.go b/business/model/print_setting.go
index ec9cc3927..a9cf46722 100644
--- a/business/model/print_setting.go
+++ b/business/model/print_setting.go
@@ -62,8 +62,8 @@ type OrderVoice struct {
UserOrderCancelVoice int `json:"user_order_cancel_voice"` // 用户取消订单订单语音提示[1打开]
RefundOrder int `json:"refund_order"` // 退款打印[1打开]
RefundOrderVoice int `json:"refund_order_voice"` // 退款提示语音[1打开]
- BusinessOrderCancel int `json:"business_order_cancel"` // 商家取消打印[1打开]
- BusinessOrderCancelVoice int `json:"business_order_cancel_voice"` // 商家取消订单语音提示[1打开]
+ BusinessOrderCancel int `json:"business_order_cancel"` // 取消订单[1打开]
+ BusinessOrderCancelVoice int `json:"business_order_cancel_voice"` // 取消订单语音提示[1打开]
}
// RiderVoice 骑手动态语音提示
@@ -90,8 +90,8 @@ type ShopPickingVoice struct {
BusinessOffLineVoice int `json:"business_off_line_voice"` // 店铺离线语音[1打开]
WaitOrderPrint int `json:"wait_order_print"` // 待接单打印[1打开]
WaitOrderVoice int `json:"wait_order_voice"` // 待接单语音[1打开]
- WaitPickingPrint int `json:"wait_picking_print"` // 待接单打印[1打开]
- WaitPickingVoice int `json:"wait_picking_voice"` // 待接单语音[1打开]
+ WaitPickingPrint int `json:"wait_picking_print"` // 待拣货单打印[1打开]
+ WaitPickingVoice int `json:"wait_picking_voice"` // 待拣货语音[1打开]
}
func GetPrintSetting(printNo string) (*PrintSettingObj, error) {
diff --git a/business/model/print_temp_utils.go b/business/model/print_temp_utils.go
index 159dad54c..b4730353c 100644
--- a/business/model/print_temp_utils.go
+++ b/business/model/print_temp_utils.go
@@ -138,10 +138,38 @@ func MakePrintMsgOnTemp(param map[string]string, userId string) (string, error)
// MakePrintMsgOnTempVoice 制作平台语音
func MakePrintMsgOnTempVoice(param map[string]string, setting *PrintSettingObj, userId string) (string, error) {
- printVoiceMsg := "" // 语音信息
- printVoiceValue := make([]interface{}, 0, 0)
- textMsg := "" // 文本信息
+ // 打印机提示音设置(暂时不做)
+ // 打订单
+ if param[OrderStatusPrint] != "" {
+ // 订单提示设置
+ printMsg, err := PrinterOrderVoice(param, setting, userId)
+ if err != nil {
+ return "", err
+ }
+ return printMsg, nil
+ }
+
+ // 打运单
+ if param[WayBillStatusPrint] != "" {
+
+ }
+
+ // 门店状态
+ if param[StoreStatusPrint] != "" {
+ return PrintStoreStatus(param, setting), nil
+ }
+
+}
+
+// PrinterOrderVoice 打印机订单提示设置
+func PrinterOrderVoice(param map[string]string, setting *PrintSettingObj, userId string) (string, error) {
+ var (
+ printVoiceMsg string //语音信息
+ printVoiceValue = make([]interface{}, 0, 0)
+ textMsg string // 文本信息
+ err error
+ )
// 称谓设置/平台语音设置
if (setting.CallNameSetting == 64 || setting.CallNameSetting == 65 || setting.CallNameSetting == 66) && setting.SystemVoice == SettingClose {
// 老板
@@ -149,14 +177,13 @@ func MakePrintMsgOnTempVoice(param map[string]string, setting *PrintSettingObj,
printVoiceValue = append(printVoiceValue, setting.CallNameSetting)
}
- // 打印机提示音设置(暂时不做)
-
+ // 订单状态
switch param[OrderStatusPrint] {
// 新订单
- case utils.Int2Str(OrderStatusWaitAccepted), utils.Int2Str(OrderStatusNew), utils.Int2Str(OrderStatusAccepted):
+ case utils.Int2Str(OrderStatusNew):
// 订单设置
if setting.OrderVoiceSetting.PrintOrder == SettingOpen { // 打印订单
- textMsg, err := MakePrintMsgOnTemp(param, userId)
+ textMsg, err = MakePrintMsgOnTemp(param, userId)
if err != nil {
return "", err
}
@@ -166,11 +193,41 @@ func MakePrintMsgOnTempVoice(param map[string]string, setting *PrintSettingObj,
printVoiceValue = append(printVoiceValue, NewOrderVoice)
printVoiceMsg, printVoiceValue = SyntheticSpeech(printVoiceMsg, printVoiceValue, param)
}
+ // 申请取消
+ case utils.Int2Str(ApplyOrderCancel):
+ // 订单设置
+ if setting.OrderVoiceSetting.UserOrderCancel == SettingOpen { // 申请取消打印
+ textMsg, err = MakePrintMsgOnTemp(param, userId)
+ if err != nil {
+ return "", err
+ }
+ }
+ if setting.OrderVoiceSetting.UserOrderCancelVoice == SettingOpen && setting.SystemVoice == SettingClose { // 申请取消语音
+ printVoiceMsg += `%s%s` // 你来新订单了
+ printVoiceValue = append(printVoiceValue, ApplyCancelVoice)
+ printVoiceMsg, printVoiceValue = SyntheticSpeech(printVoiceMsg, printVoiceValue, param)
+ }
+ // 申请退款
+ case utils.Int2Str(ApplyOrderRefund):
+ // 订单设置
+ if setting.OrderVoiceSetting.RefundOrder == SettingOpen { // 取消打印订单
+ textMsg, err = MakePrintMsgOnTemp(param, userId)
+ if err != nil {
+ return "", err
+ }
+ }
+ if setting.OrderVoiceSetting.RefundOrderVoice == SettingOpen && setting.SystemVoice == SettingClose {
+ if setting.OrderVoiceSetting.OrderNotice == SettingOpen && setting.SystemVoice == SettingClose {
+ printVoiceMsg, printVoiceValue = SyntheticSpeech(printVoiceMsg, printVoiceValue, param)
+ printVoiceMsg += `%s`
+ printVoiceValue = append(printVoiceValue, ApplyRefundVoice)
+ }
+ }
// 取消打印
case utils.Int2Str(OrderStatusCanceled):
// 订单设置
if setting.OrderVoiceSetting.BusinessOrderCancel == SettingOpen { // 取消打印订单
- textMsg, err := MakePrintMsgOnTemp(param, userId)
+ textMsg, err = MakePrintMsgOnTemp(param, userId)
if err != nil {
return "", err
}
@@ -182,19 +239,93 @@ func MakePrintMsgOnTempVoice(param map[string]string, setting *PrintSettingObj,
printVoiceValue = append(printVoiceValue, CancelOrderVoice)
}
}
- // 申请取消
- case "":
- // 申请退款
- case utils.Int2Str(OrderStatusCanceled):
- case "15": // 待拣货
+ case utils.Int2Str(OrderStatusAccepted): // 待拣货
+ if setting.PickingSetting.WaitPickingPrint == SettingOpen { // 打印订单
+ textMsg, err = MakePrintMsgOnTemp(param, userId)
+ if err != nil {
+ return "", err
+ }
+ }
+ if setting.PickingSetting.WaitPickingVoice == SettingOpen && setting.SystemVoice == SettingClose { // 订单通知
+ printVoiceMsg += `%s%s` // 你有订单未拣货
+ printVoiceValue = append(printVoiceValue, WaitPickUpOrderVoice)
+ printVoiceMsg, printVoiceValue = SyntheticSpeech(printVoiceMsg, printVoiceValue, param)
+ }
+ case utils.Int2Str(OrderStatusWaitAccepted): // 待接单
+ if setting.PickingSetting.WaitPickingPrint == SettingOpen { // 打印订单
+ textMsg, err = MakePrintMsgOnTemp(param, userId)
+ if err != nil {
+ return "", err
+ }
+ }
+ if setting.PickingSetting.WaitPickingVoice == SettingOpen && setting.SystemVoice == SettingClose { // 订单通知
+ printVoiceMsg += `%s%s` // 你有订单未接单(订单未处理)
+ printVoiceValue = append(printVoiceValue, WaitOrderVoice)
+ printVoiceMsg, printVoiceValue = SyntheticSpeech(printVoiceMsg, printVoiceValue, param)
+ }
case "110": // 送达
- case "":
case "120": // 收货,好像没有
}
+ voice := strings.Replace(fmt.Sprintf(strings.Replace(printVoiceMsg, "\n", "", -1), printVoiceValue...), "\\n", "\r\n", -1)
+ return voice + textMsg, nil
+}
+
+// PrintWayBillOrderStatus 打印运单类通知消息
+func PrintWayBillOrderStatus(param map[string]string, setting *PrintSettingObj) {
+ var (
+ printVoiceMsg string //语音信息
+ printVoiceValue = make([]interface{}, 0, 0)
+ textMsg string // 文本信息
+ err error
+ )
+
+ switch param[WayBillStatusPrint] {
+ case:
+ if setting.PickingSetting.WaitPickingPrint == SettingOpen { // 打印订单
+ textMsg, err = MakePrintMsgOnTemp(param, userId)
+ if err != nil {
+ return "", err
+ }
+ }
+ if setting.PickingSetting.WaitPickingVoice == SettingOpen && setting.SystemVoice == SettingClose { // 订单通知
+ printVoiceMsg += `%s%s` // 你有订单未拣货
+ printVoiceValue = append(printVoiceValue, WaitPickUpOrderVoice)
+ printVoiceMsg, printVoiceValue = SyntheticSpeech(printVoiceMsg, printVoiceValue, param)
+ }
+
+ }
+}
+
+// PrintStoreStatus 打印门店状态
+func PrintStoreStatus(param map[string]string, setting *PrintSettingObj) string {
+ var (
+ printVoiceMsg string //语音信息
+ printVoiceValue = make([]interface{}, 0, 0)
+ textMsg string // 文本信息
+ textMsgValue = make([]interface{}, 0, 0)
+ )
+
+ // 离线打印文本开启
+ if setting.PickingSetting.BusinessOffLine == SettingOpen {
+ textMsg += `
门店下线通知
`
+ textMsg += `门店:%s
`
+ textMsg += `平台:%s
`
+ textMsg += `下线时间:%s
`
+ textMsgValue = append(textMsgValue, param[EBailOrderNoPrint], param[VendorNamePrint], utils.Time2DateStr(time.Now()))
+ }
+ // 离线打印语音开启
+ if setting.SystemVoice == SettingOpen && setting.PickingSetting.BusinessOffLineVoice == SettingOpen {
+ printVoiceMsg += `%s`
+ printVoiceValue = append(printVoiceValue, StoreOfflineVoice)
+ }
+ voice := strings.Replace(fmt.Sprintf(strings.Replace(printVoiceMsg, "\n", "", -1), printVoiceValue...), "\\n", "\r\n", -1)
+ msg := strings.Replace(fmt.Sprintf(strings.Replace(textMsg, "\n", "", -1), textMsgValue...), "\\n", "\r\n", -1)
+
+ return voice + msg
}
// SyntheticSpeech 合成语音 (美团xxx号订单)
diff --git a/business/model/print_temp_voice.go b/business/model/print_temp_voice.go
index 79ca4530e..ffffe0c8f 100644
--- a/business/model/print_temp_voice.go
+++ b/business/model/print_temp_voice.go
@@ -149,9 +149,5 @@ const (
AppIDPrint = "appId" // 应用id
OrderStatusPrint = "orderStatus" // 订单状态
WayBillStatusPrint = "wayBillStatus" // 运单状态
+ StoreStatusPrint = "storeStatusPrint" // 门店状态
)
-
-// 订单/运单常量
-const ()
-
-// 平台常量