feat: ws 新增CDR会话查询
This commit is contained in:
@@ -15,13 +15,13 @@ type CDREvent struct {
|
||||
|
||||
// CDREventQuery CDR会话对象查询参数结构体
|
||||
type CDREventQuery struct {
|
||||
NeType string `form:"neType" binding:"required"`
|
||||
NeID string `form:"neId" binding:"required"`
|
||||
RmUID string `form:"rmUID"`
|
||||
StartTime string `form:"startTime" `
|
||||
EndTime string `form:"endTime"`
|
||||
SortField string `form:"sortField" binding:"omitempty,oneof=timestamp"`
|
||||
SortOrder string `form:"sortOrder" binding:"omitempty,oneof=asc desc"`
|
||||
PageNum int64 `form:"pageNum" binding:"required"`
|
||||
PageSize string `form:"pageSize" binding:"required"`
|
||||
NeType string `json:"neType" form:"neType" binding:"required"`
|
||||
NeID string `json:"neId" form:"neId" binding:"required"`
|
||||
RmUID string `json:"rmUID" form:"rmUID"`
|
||||
StartTime string `json:"startTime" form:"startTime"`
|
||||
EndTime string `json:"endTime" form:"endTime"`
|
||||
SortField string `json:"sortField" form:"sortField" binding:"omitempty,oneof=timestamp"`
|
||||
SortOrder string `json:"sortOrder" form:"sortOrder" binding:"omitempty,oneof=asc desc"`
|
||||
PageNum int64 `json:"pageNum" form:"pageNum" binding:"required"`
|
||||
PageSize int64 `json:"pageSize" form:"pageSize" binding:"required"`
|
||||
}
|
||||
|
||||
29
src/modules/ws/processor/cdr_connect.go
Normal file
29
src/modules/ws/processor/cdr_connect.go
Normal file
@@ -0,0 +1,29 @@
|
||||
package processor
|
||||
|
||||
import (
|
||||
"encoding/json"
|
||||
"fmt"
|
||||
|
||||
"ems.agt/src/framework/logger"
|
||||
"ems.agt/src/framework/vo/result"
|
||||
neDataModel "ems.agt/src/modules/network_data/model"
|
||||
neDataService "ems.agt/src/modules/network_data/service"
|
||||
)
|
||||
|
||||
// GetCDRConnect 获取CDR会话事件
|
||||
func GetCDRConnect(requestID string, data any) ([]byte, error) {
|
||||
msgByte, _ := json.Marshal(data)
|
||||
var query neDataModel.CDREventQuery
|
||||
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")
|
||||
}
|
||||
|
||||
dataMap := neDataService.NewCDREventImpl.SelectPage(query)
|
||||
resultByte, err := json.Marshal(result.Ok(map[string]any{
|
||||
"requestID": requestID,
|
||||
"data": dataMap,
|
||||
}))
|
||||
return resultByte, err
|
||||
}
|
||||
@@ -31,6 +31,12 @@ func (s *WSReceiveImpl) Receive(client *model.WSClient, reqMsg model.WSRequest)
|
||||
return err
|
||||
}
|
||||
client.MsgChan <- res
|
||||
case "cdr":
|
||||
res, err := processor.GetCDRConnect(reqMsg.RequestID, reqMsg.Data)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
client.MsgChan <- res
|
||||
default:
|
||||
return fmt.Errorf("message type not supported")
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user