feat: 网元直连修复查询data数据类型转换异常
This commit is contained in:
@@ -12,14 +12,14 @@ import (
|
|||||||
|
|
||||||
// AMFNbInfoList AMF基站信息
|
// AMFNbInfoList AMF基站信息
|
||||||
//
|
//
|
||||||
// 查询参数 {"nbId":"7"}
|
// 查询参数 {"id":"7"}
|
||||||
//
|
//
|
||||||
// 返回结果 []
|
// 返回结果 []
|
||||||
func AMFNbInfoList(neInfo model.NeInfo, data map[string]string) ([]map[string]any, error) {
|
func AMFNbInfoList(neInfo model.NeInfo, data map[string]string) ([]map[string]any, error) {
|
||||||
neUrl := fmt.Sprintf("http://%s:%d/api/rest/ueManagement/v1/elementType/amf/objectType/nbInfo", neInfo.IP, neInfo.Port)
|
neUrl := fmt.Sprintf("http://%s:%d/api/rest/ueManagement/v1/elementType/amf/objectType/nbInfo", neInfo.IP, neInfo.Port)
|
||||||
// 查询参数拼接
|
// 查询参数拼接
|
||||||
query := []string{}
|
query := []string{}
|
||||||
if v, ok := data["nbId"]; ok && v != "" {
|
if v, ok := data["id"]; ok && v != "" {
|
||||||
query = append(query, fmt.Sprintf("nbId=%s", v))
|
query = append(query, fmt.Sprintf("nbId=%s", v))
|
||||||
}
|
}
|
||||||
if len(query) > 0 {
|
if len(query) > 0 {
|
||||||
@@ -44,7 +44,47 @@ func AMFNbInfoList(neInfo model.NeInfo, data map[string]string) ([]map[string]an
|
|||||||
|
|
||||||
// 固定返回字段,方便前端解析
|
// 固定返回字段,方便前端解析
|
||||||
if v, ok := resData["data"]; ok && v != nil {
|
if v, ok := resData["data"]; ok && v != nil {
|
||||||
return v.([]map[string]any), nil
|
if arr := v.([]any); len(arr) > 0 {
|
||||||
|
result := make([]map[string]any, len(arr))
|
||||||
|
for i, item := range arr {
|
||||||
|
result[i] = item.(map[string]any)
|
||||||
|
}
|
||||||
|
return result, nil
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return []map[string]any{}, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
// AMFGnbStateList AMF基站状态信息,对比配置项gnbList
|
||||||
|
//
|
||||||
|
// 返回结果 []
|
||||||
|
func AMFGnbStateList(neInfo model.NeInfo) ([]map[string]any, error) {
|
||||||
|
neUrl := fmt.Sprintf("http://%s:%d/api/rest/ueManagement/v1/elementType/amf/objectType/nbState", neInfo.IP, neInfo.Port)
|
||||||
|
resBytes, err := fetch.Get(neUrl, nil, 60_000)
|
||||||
|
if err != nil {
|
||||||
|
errStr := err.Error()
|
||||||
|
logger.Warnf("AMFNbInfoList Get \"%s\"", neUrl)
|
||||||
|
logger.Errorf("AMFNbInfoList %s", errStr)
|
||||||
|
return nil, fmt.Errorf("NeService AMF API Error")
|
||||||
|
}
|
||||||
|
|
||||||
|
// 序列化结果 {"data":[{"name": "Gnb","address": "192.168.8.1","state": "INACTIVE"}]}
|
||||||
|
var resData map[string]any
|
||||||
|
err = json.Unmarshal(resBytes, &resData)
|
||||||
|
if err != nil {
|
||||||
|
logger.Errorf("AMFNbInfoList Unmarshal %s", err.Error())
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
|
// 固定返回字段,方便前端解析
|
||||||
|
if v, ok := resData["data"]; ok && v != nil {
|
||||||
|
if arr := v.([]any); len(arr) > 0 {
|
||||||
|
result := make([]map[string]any, len(arr))
|
||||||
|
for i, item := range arr {
|
||||||
|
result[i] = item.(map[string]any)
|
||||||
|
}
|
||||||
|
return result, nil
|
||||||
|
}
|
||||||
}
|
}
|
||||||
return []map[string]any{}, nil
|
return []map[string]any{}, nil
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -88,7 +88,13 @@ func IMSUeSessionList(neInfo model.NeInfo, data map[string]string) ([]map[string
|
|||||||
|
|
||||||
// 固定返回字段,方便前端解析
|
// 固定返回字段,方便前端解析
|
||||||
if v, ok := resData["data"]; ok && v != nil {
|
if v, ok := resData["data"]; ok && v != nil {
|
||||||
return v.([]map[string]any), nil
|
if arr := v.([]any); len(arr) > 0 {
|
||||||
|
result := make([]map[string]any, len(arr))
|
||||||
|
for i, item := range arr {
|
||||||
|
result[i] = item.(map[string]any)
|
||||||
|
}
|
||||||
|
return result, nil
|
||||||
|
}
|
||||||
}
|
}
|
||||||
return []map[string]any{}, nil
|
return []map[string]any{}, nil
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -12,14 +12,14 @@ import (
|
|||||||
|
|
||||||
// MMENbInfoList AMF基站信息
|
// MMENbInfoList AMF基站信息
|
||||||
//
|
//
|
||||||
// 查询参数 {"nbId":"7"}
|
// 查询参数 {"id":"7"}
|
||||||
//
|
//
|
||||||
// 返回结果 []
|
// 返回结果 []
|
||||||
func MMENbInfoList(neInfo model.NeInfo, data map[string]string) ([]map[string]any, error) {
|
func MMENbInfoList(neInfo model.NeInfo, data map[string]string) ([]map[string]any, error) {
|
||||||
neUrl := fmt.Sprintf("http://%s:%d/api/rest/ueManagement/v1/elementType/mme/objectType/nbInfo", neInfo.IP, neInfo.Port)
|
neUrl := fmt.Sprintf("http://%s:%d/api/rest/ueManagement/v1/elementType/mme/objectType/nbInfo", neInfo.IP, neInfo.Port)
|
||||||
// 查询参数拼接
|
// 查询参数拼接
|
||||||
query := []string{}
|
query := []string{}
|
||||||
if v, ok := data["nbId"]; ok && v != "" {
|
if v, ok := data["id"]; ok && v != "" {
|
||||||
query = append(query, fmt.Sprintf("nbId=%s", v))
|
query = append(query, fmt.Sprintf("nbId=%s", v))
|
||||||
}
|
}
|
||||||
if len(query) > 0 {
|
if len(query) > 0 {
|
||||||
@@ -44,7 +44,13 @@ func MMENbInfoList(neInfo model.NeInfo, data map[string]string) ([]map[string]an
|
|||||||
|
|
||||||
// 固定返回字段,方便前端解析
|
// 固定返回字段,方便前端解析
|
||||||
if v, ok := resData["data"]; ok && v != nil {
|
if v, ok := resData["data"]; ok && v != nil {
|
||||||
return v.([]map[string]any), nil
|
if arr := v.([]any); len(arr) > 0 {
|
||||||
|
result := make([]map[string]any, len(arr))
|
||||||
|
for i, item := range arr {
|
||||||
|
result[i] = item.(map[string]any)
|
||||||
|
}
|
||||||
|
return result, nil
|
||||||
|
}
|
||||||
}
|
}
|
||||||
return []map[string]any{}, nil
|
return []map[string]any{}, nil
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user