70 lines
2.1 KiB
Go
70 lines
2.1 KiB
Go
package processor
|
|
|
|
import (
|
|
"encoding/json"
|
|
"fmt"
|
|
|
|
"be.ems/src/framework/logger"
|
|
"be.ems/src/framework/resp"
|
|
neLinkModel "be.ems/src/modules/network_link/model"
|
|
neLinkService "be.ems/src/modules/network_link/service"
|
|
)
|
|
|
|
// GetCDRConnectByIMS 获取CDR会话事件-IMS
|
|
func GetCDRConnectByIMS(requestID string, data any) ([]byte, error) {
|
|
msgByte, _ := json.Marshal(data)
|
|
var query neLinkModel.CDREventIMSQuery
|
|
err := json.Unmarshal(msgByte, &query)
|
|
if err != nil {
|
|
logger.Warnf("ws processor GetCDRConnect err: %s", err.Error())
|
|
return nil, fmt.Errorf("query data structure error")
|
|
}
|
|
|
|
if query.CoreUID == "" || query.NeUID == "" {
|
|
return nil, fmt.Errorf("query coreUid/neUid is empty")
|
|
}
|
|
|
|
rows, total := neLinkService.NewCDREventIMS.FindByPage(query)
|
|
resultByte, err := json.Marshal(resp.Ok(map[string]any{
|
|
"requestId": requestID,
|
|
"data": map[string]any{"rows": rows, "total": total},
|
|
}))
|
|
return resultByte, err
|
|
}
|
|
|
|
// GetCDRConnectBySMF 获取CDR会话事件-SMF
|
|
func GetCDRConnectBySMF(requestID string, data any) ([]byte, error) {
|
|
msgByte, _ := json.Marshal(data)
|
|
var query neLinkModel.CDREventSMFQuery
|
|
err := json.Unmarshal(msgByte, &query)
|
|
if err != nil {
|
|
logger.Warnf("ws processor GetCDRConnect err: %s", err.Error())
|
|
return nil, fmt.Errorf("query data structure error")
|
|
}
|
|
|
|
rows, total := neLinkService.NewCDREventSMF.FindByPage(query)
|
|
resultByte, err := json.Marshal(resp.Ok(map[string]any{
|
|
"requestId": requestID,
|
|
"data": map[string]any{"rows": rows, "total": total},
|
|
}))
|
|
return resultByte, err
|
|
}
|
|
|
|
// GetCDRConnectBySMSC 获取CDR会话事件-SMSC
|
|
func GetCDRConnectBySMSC(requestID string, data any) ([]byte, error) {
|
|
msgByte, _ := json.Marshal(data)
|
|
var query neLinkModel.CDREventSMSCQuery
|
|
err := json.Unmarshal(msgByte, &query)
|
|
if err != nil {
|
|
logger.Warnf("ws processor GetCDRConnect err: %s", err.Error())
|
|
return nil, fmt.Errorf("query data structure error")
|
|
}
|
|
|
|
rows, total := neLinkService.NewCDREventSMSC.FindByPage(query)
|
|
resultByte, err := json.Marshal(resp.Ok(map[string]any{
|
|
"requestId": requestID,
|
|
"data": map[string]any{"rows": rows, "total": total},
|
|
}))
|
|
return resultByte, err
|
|
}
|