feat: support ticket settings in OMC
This commit is contained in:
@@ -150,14 +150,14 @@ func PostCDREventFrom(w http.ResponseWriter, r *http.Request) {
|
||||
|
||||
// 添加配置中的原始收件人(如管理员、监控人员等)
|
||||
if len(emailConfig.To) > 0 {
|
||||
recipients = append(recipients, emailConfig.To...)
|
||||
recipients = append(recipients, strings.Split(emailConfig.To, ",")...)
|
||||
}
|
||||
|
||||
// 添加当前工单的座席邮箱
|
||||
recipients = append(recipients, ticket.AgentEmail)
|
||||
|
||||
// 去重处理(避免重复邮箱)
|
||||
emailCopy.To = email.RemoveDuplicateEmails(recipients)
|
||||
emailCopy.To = strings.Join(email.RemoveDuplicateEmails(recipients), ",")
|
||||
|
||||
// 设置邮件主题和内容
|
||||
emailCopy.Subject = "新工单分配通知"
|
||||
|
||||
@@ -22,6 +22,13 @@ func (o *ConfigOMC) Query(paramName string) (any, error) {
|
||||
result := config.GetYamlConfig().Alarm.SMSCForward
|
||||
result.Password = PASSWORD_MASK
|
||||
results = append(results, result)
|
||||
case "ticketNotification":
|
||||
result := config.GetPsapConfig().Ticket.TicketNotification
|
||||
result.Password = PASSWORD_MASK
|
||||
results = append(results, result)
|
||||
case "ticketTimeout":
|
||||
result := config.GetPsapConfig().Ticket.TicketTimeout
|
||||
results = append(results, result)
|
||||
default:
|
||||
return nil, fmt.Errorf("invalid source parameter")
|
||||
}
|
||||
@@ -57,6 +64,26 @@ func (o *ConfigOMC) Modify(paramName string, paramData map[string]any) (any, err
|
||||
fmt.Println("failed to write config yaml file:", err)
|
||||
return results, err
|
||||
}
|
||||
case "ticketNotification":
|
||||
param := &(config.GetPsapConfig().Ticket.TicketNotification)
|
||||
config.UpdatePsapStructFromMap(param, paramData)
|
||||
result := *param
|
||||
results = append(results, result)
|
||||
err := config.WritePsapOriginalConfig(config.PsapYamlConfigInfo.FilePath, paramName, paramData)
|
||||
if err != nil {
|
||||
fmt.Println("failed to write config yaml file:", err)
|
||||
return results, err
|
||||
}
|
||||
case "ticketTimeout":
|
||||
param := &(config.GetPsapConfig().Ticket.TicketTimeout)
|
||||
config.UpdatePsapStructFromMap(param, paramData)
|
||||
result := *param
|
||||
results = append(results, result)
|
||||
err := config.WritePsapOriginalConfig(config.PsapYamlConfigInfo.FilePath, paramName, paramData)
|
||||
if err != nil {
|
||||
fmt.Println("failed to write config yaml file:", err)
|
||||
return results, err
|
||||
}
|
||||
default:
|
||||
return nil, fmt.Errorf("invalid source parameter")
|
||||
}
|
||||
|
||||
@@ -2,6 +2,7 @@ package mf_callback_ticket
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"strings"
|
||||
"time"
|
||||
|
||||
"be.ems/lib/config"
|
||||
@@ -391,14 +392,14 @@ func (s *CallbackTicketService) UpdateTicketToTimeout(ticket *CallbackTicket, or
|
||||
|
||||
// 添加配置中的原始收件人(如管理员、监控人员等)
|
||||
if len(emailConfig.To) > 0 {
|
||||
recipients = append(recipients, emailConfig.To...)
|
||||
recipients = append(recipients, strings.Split(emailConfig.To, ",")...)
|
||||
}
|
||||
|
||||
// 添加当前工单的座席邮箱
|
||||
recipients = append(recipients, ticket.AgentEmail)
|
||||
|
||||
// 去重处理(避免重复邮箱)
|
||||
emailCopy.To = email.RemoveDuplicateEmails(recipients)
|
||||
emailCopy.To = strings.Join(email.RemoveDuplicateEmails(recipients), ",")
|
||||
|
||||
// 设置邮件主题和内容
|
||||
emailCopy.Subject = "新工单自动重建通知"
|
||||
@@ -484,14 +485,14 @@ func (s *CallbackTicketService) BatchUpdateTimeoutTickets(tickets []CallbackTick
|
||||
|
||||
// 添加配置中的原始收件人(如管理员、监控人员等)
|
||||
if len(emailConfig.To) > 0 {
|
||||
recipients = append(recipients, emailConfig.To...)
|
||||
recipients = append(recipients, strings.Split(emailConfig.To, ",")...)
|
||||
}
|
||||
|
||||
// 添加当前工单的座席邮箱
|
||||
recipients = append(recipients, ticket.AgentEmail)
|
||||
|
||||
// 去重处理(避免重复邮箱)
|
||||
emailCopy.To = email.RemoveDuplicateEmails(recipients)
|
||||
emailCopy.To = strings.Join(email.RemoveDuplicateEmails(recipients), ",")
|
||||
|
||||
// 设置邮件主题和内容
|
||||
emailCopy.Subject = "新工单自动重建通知"
|
||||
|
||||
Reference in New Issue
Block a user