|
|
|
|
@@ -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 += `<sound>%s</sound><sound>%s</sound>` // 你来新订单了
|
|
|
|
|
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 += `<sound>%s</sound>`
|
|
|
|
|
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 += `<sound>%s</sound><sound>%s</sound>` // 你有订单未拣货
|
|
|
|
|
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 += `<sound>%s</sound><sound>%s</sound>` // 你有订单未接单(订单未处理)
|
|
|
|
|
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 += `<sound>%s</sound><sound>%s</sound>` // 你有订单未拣货
|
|
|
|
|
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 += `<center><b>门店下线通知</b></center><br>`
|
|
|
|
|
textMsg += `<center><b>门店:%s</b></center><br>`
|
|
|
|
|
textMsg += `<center><b>平台:%s</b></center><br>`
|
|
|
|
|
textMsg += `<center><b>下线时间:%s</b></center><br>`
|
|
|
|
|
textMsgValue = append(textMsgValue, param[EBailOrderNoPrint], param[VendorNamePrint], utils.Time2DateStr(time.Now()))
|
|
|
|
|
}
|
|
|
|
|
// 离线打印语音开启
|
|
|
|
|
if setting.SystemVoice == SettingOpen && setting.PickingSetting.BusinessOffLineVoice == SettingOpen {
|
|
|
|
|
printVoiceMsg += `<sound>%s</sound>`
|
|
|
|
|
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号订单)
|
|
|
|
|
|