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 }