fix: 参数配置网元获取数据失败
This commit is contained in:
@@ -3,7 +3,7 @@ package cm
|
|||||||
import (
|
import (
|
||||||
"strings"
|
"strings"
|
||||||
|
|
||||||
"be.ems/lib/dborm"
|
"be.ems/lib/core/utils/ctx"
|
||||||
"be.ems/lib/global"
|
"be.ems/lib/global"
|
||||||
"be.ems/lib/log"
|
"be.ems/lib/log"
|
||||||
"be.ems/lib/services"
|
"be.ems/lib/services"
|
||||||
@@ -14,7 +14,8 @@ import (
|
|||||||
"io"
|
"io"
|
||||||
"net/http"
|
"net/http"
|
||||||
|
|
||||||
tokenConst "be.ems/src/framework/constants/token"
|
neService "be.ems/src/modules/network_element/service"
|
||||||
|
|
||||||
"github.com/go-resty/resty/v2"
|
"github.com/go-resty/resty/v2"
|
||||||
"github.com/gorilla/mux"
|
"github.com/gorilla/mux"
|
||||||
)
|
)
|
||||||
@@ -29,54 +30,20 @@ var (
|
|||||||
func GetParamConfigFromNF(w http.ResponseWriter, r *http.Request) {
|
func GetParamConfigFromNF(w http.ResponseWriter, r *http.Request) {
|
||||||
log.Debug("GetParamConfigFromNF processing... ")
|
log.Debug("GetParamConfigFromNF processing... ")
|
||||||
|
|
||||||
// data := make([]map[string]interface{}, 1)
|
neId := ctx.GetQuery(r, "ne_id")
|
||||||
var response services.DataResponse
|
|
||||||
vars := mux.Vars(r)
|
vars := mux.Vars(r)
|
||||||
neType := vars["elementTypeValue"]
|
neType := vars["elementTypeValue"]
|
||||||
if neType == "" {
|
if neType == "" || neId == "" {
|
||||||
log.Error("elementTypeValue is empty")
|
log.Error("elementTypeValue is empty")
|
||||||
services.ResponseNotFound404UriNotExist(w, r)
|
services.ResponseNotFound404UriNotExist(w, r)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
token, err := services.CheckFrontValidRequest(w, r)
|
neInfo := neService.NewNeInfoImpl.SelectNeInfoByNeTypeAndNeID(neType, neId)
|
||||||
if err != nil {
|
|
||||||
log.Error("Request error:", err)
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
restHostPort := fmt.Sprintf("http://127.0.0.1:%d", config.GetYamlConfig().Rest[0].Port)
|
var response services.DataResponse
|
||||||
getNeInfoPattern := fmt.Sprintf(config.DefaultUriPrefix+"/databaseManagement/v1/%s/ne_info", config.GetYamlConfig().Database.Name)
|
if neInfo.NeId == neId {
|
||||||
getNeInfoURI := restHostPort + getNeInfoPattern
|
requestURI2NF := fmt.Sprintf("http://%s:%v%s", neInfo.IP, neInfo.Port, r.RequestURI)
|
||||||
neId := services.GetUriParamString(r, "ne_id", ",", true, true)
|
|
||||||
if neId == "" {
|
|
||||||
getNeInfoURI = getNeInfoURI + fmt.Sprintf("?WHERE=status+in+('0','3')+and+ne_type='%s'", neType)
|
|
||||||
} else {
|
|
||||||
getNeInfoURI = getNeInfoURI + fmt.Sprintf("?WHERE=status+in+('0','3')+and+ne_type='%v'+and+ne_id+in+%v", neType, neId)
|
|
||||||
}
|
|
||||||
log.Debug("getNeInfoURI:", getNeInfoURI)
|
|
||||||
|
|
||||||
client := resty.New()
|
|
||||||
resp, err := client.R().
|
|
||||||
EnableTrace().
|
|
||||||
SetHeaders(map[string]string{tokenConst.HEADER_KEY: r.Header.Get(tokenConst.HEADER_KEY)}).
|
|
||||||
SetHeaders(map[string]string{"accessToken": token}).
|
|
||||||
SetHeaders(map[string]string{"User-Agent": config.GetDefaultUserAgent()}).
|
|
||||||
SetHeaders(map[string]string{"Content-Type": "application/json;charset=UTF-8"}).
|
|
||||||
Get(getNeInfoURI)
|
|
||||||
if err != nil {
|
|
||||||
log.Error("Failed to Get:", err)
|
|
||||||
services.ResponseInternalServerError500ProcessError(w, err)
|
|
||||||
return
|
|
||||||
}
|
|
||||||
log.Trace("NE info:", string(resp.Body()))
|
|
||||||
|
|
||||||
// var neList []dborm.NeInfo
|
|
||||||
neList, _ := dborm.XormParseResult(resp.Body())
|
|
||||||
|
|
||||||
if len(neList) >= 1 {
|
|
||||||
s := neList[0]
|
|
||||||
requestURI2NF := fmt.Sprintf("http://%s:%v%s", s.Ip, s.Port, r.RequestURI)
|
|
||||||
log.Debug("requestURI2NF:", requestURI2NF)
|
log.Debug("requestURI2NF:", requestURI2NF)
|
||||||
|
|
||||||
resp, err := client.R().
|
resp, err := client.R().
|
||||||
@@ -100,30 +67,24 @@ func GetParamConfigFromNF(w http.ResponseWriter, r *http.Request) {
|
|||||||
func PostParamConfigToNF(w http.ResponseWriter, r *http.Request) {
|
func PostParamConfigToNF(w http.ResponseWriter, r *http.Request) {
|
||||||
log.Debug("PostParamConfigToNF processing... ")
|
log.Debug("PostParamConfigToNF processing... ")
|
||||||
|
|
||||||
_, err := services.CheckFrontValidRequest(w, r)
|
neId := ctx.GetQuery(r, "ne_id")
|
||||||
if err != nil {
|
|
||||||
log.Error("Request error:", err)
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
vars := mux.Vars(r)
|
vars := mux.Vars(r)
|
||||||
neType := vars["elementTypeValue"]
|
neType := vars["elementTypeValue"]
|
||||||
if neType == "" {
|
if neType == "" || neId == "" {
|
||||||
log.Error("elementTypeValue is empty")
|
log.Error("elementTypeValue is empty")
|
||||||
services.ResponseNotFound404UriNotExist(w, r)
|
services.ResponseNotFound404UriNotExist(w, r)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
neId := services.GetUriParamString(r, "ne_id", ",", false, false)
|
|
||||||
|
|
||||||
// no, _ := strconv.ParseInt(neId, 10, 64)
|
neInfo := neService.NewNeInfoImpl.SelectNeInfoByNeTypeAndNeID(neType, neId)
|
||||||
neInfo, err := dborm.XormGetNeInfo(neType, neId)
|
|
||||||
if err != nil {
|
if neInfo.NeId != neId {
|
||||||
log.Error("dborm.XormGetNeInfo is failed:", err)
|
log.Error("neId is empty")
|
||||||
services.ResponseInternalServerError500DatabaseOperationFailed(w)
|
services.ResponseInternalServerError500DatabaseOperationFailed(w)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
requestURI2NF := fmt.Sprintf("http://%s:%v%s", neInfo.Ip, neInfo.Port, r.RequestURI)
|
requestURI2NF := fmt.Sprintf("http://%s:%v%s", neInfo.IP, neInfo.Port, r.RequestURI)
|
||||||
log.Debug("requestURI2NF: POST ", requestURI2NF)
|
log.Debug("requestURI2NF: POST ", requestURI2NF)
|
||||||
|
|
||||||
body, err := io.ReadAll(io.LimitReader(r.Body, global.RequestBodyMaxLen)) //io.LimitReader限制大小
|
body, err := io.ReadAll(io.LimitReader(r.Body, global.RequestBodyMaxLen)) //io.LimitReader限制大小
|
||||||
@@ -152,12 +113,6 @@ func PostParamConfigToNF(w http.ResponseWriter, r *http.Request) {
|
|||||||
func PutParamConfigToNF(w http.ResponseWriter, r *http.Request) {
|
func PutParamConfigToNF(w http.ResponseWriter, r *http.Request) {
|
||||||
log.Debug("PutParamConfigToNF processing... ")
|
log.Debug("PutParamConfigToNF processing... ")
|
||||||
|
|
||||||
_, err := services.CheckFrontValidRequest(w, r)
|
|
||||||
if err != nil {
|
|
||||||
log.Error("Request error:", err)
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
vars := mux.Vars(r)
|
vars := mux.Vars(r)
|
||||||
neType := vars["elementTypeValue"]
|
neType := vars["elementTypeValue"]
|
||||||
if neType == "" {
|
if neType == "" {
|
||||||
@@ -172,16 +127,16 @@ func PutParamConfigToNF(w http.ResponseWriter, r *http.Request) {
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
neId := services.GetUriParamString(r, "ne_id", ",", false, false)
|
neId := ctx.GetQuery(r, "ne_id")
|
||||||
// no, _ := strconv.ParseInt(neId, 10, 64)
|
neInfo := neService.NewNeInfoImpl.SelectNeInfoByNeTypeAndNeID(neType, neId)
|
||||||
neInfo, err := dborm.XormGetNeInfo(neType, neId)
|
|
||||||
if err != nil {
|
if neInfo.NeId != neId {
|
||||||
log.Error("dborm.XormGetNeInfo is failed:", err)
|
log.Error("neId is empty")
|
||||||
services.ResponseInternalServerError500DatabaseOperationFailed(w)
|
services.ResponseInternalServerError500DatabaseOperationFailed(w)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
requestURI2NF := fmt.Sprintf("http://%s:%v%s", neInfo.Ip, neInfo.Port, r.RequestURI)
|
requestURI2NF := fmt.Sprintf("http://%s:%v%s", neInfo.IP, neInfo.Port, r.RequestURI)
|
||||||
log.Debug("requestURI2NF: PUT ", requestURI2NF)
|
log.Debug("requestURI2NF: PUT ", requestURI2NF)
|
||||||
|
|
||||||
body, err := io.ReadAll(io.LimitReader(r.Body, global.RequestBodyMaxLen)) //io.LimitReader限制大小
|
body, err := io.ReadAll(io.LimitReader(r.Body, global.RequestBodyMaxLen)) //io.LimitReader限制大小
|
||||||
@@ -211,36 +166,12 @@ func PutParamConfigToNF(w http.ResponseWriter, r *http.Request) {
|
|||||||
//
|
//
|
||||||
// 目前没配置,返回204
|
// 目前没配置,返回204
|
||||||
func PutOMCNeConfig(w http.ResponseWriter, r *http.Request) {
|
func PutOMCNeConfig(w http.ResponseWriter, r *http.Request) {
|
||||||
// vars := mux.Vars(r)
|
|
||||||
// neType := vars["elementTypeValue"]
|
|
||||||
// if neType == "" {
|
|
||||||
// log.Error("elementTypeValue is empty")
|
|
||||||
// services.ResponseNotFound404UriNotExist(w, r)
|
|
||||||
// return
|
|
||||||
// }
|
|
||||||
// body, err := io.ReadAll(io.LimitReader(r.Body, global.RequestBodyMaxLen))
|
|
||||||
// if err != nil {
|
|
||||||
// log.Error("Failed to io.ReadAll:", err)
|
|
||||||
// services.ResponseNotFound404UriNotExist(w, r)
|
|
||||||
// return
|
|
||||||
// }
|
|
||||||
|
|
||||||
// neInfo := new(dborm.NeInfo)
|
|
||||||
// _ = json.Unmarshal(body, neInfo)
|
|
||||||
// neInfo.NeType = strings.ToUpper(neType)
|
|
||||||
|
|
||||||
services.ResponseStatusOK204NoContent(w)
|
services.ResponseStatusOK204NoContent(w)
|
||||||
}
|
}
|
||||||
|
|
||||||
func DeleteParamConfigToNF(w http.ResponseWriter, r *http.Request) {
|
func DeleteParamConfigToNF(w http.ResponseWriter, r *http.Request) {
|
||||||
log.Debug("DeleteParamConfigToNF processing... ")
|
log.Debug("DeleteParamConfigToNF processing... ")
|
||||||
|
|
||||||
_, err := services.CheckFrontValidRequest(w, r)
|
|
||||||
if err != nil {
|
|
||||||
log.Error("Request error:", err)
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
vars := mux.Vars(r)
|
vars := mux.Vars(r)
|
||||||
neType := vars["elementTypeValue"]
|
neType := vars["elementTypeValue"]
|
||||||
if neType == "" {
|
if neType == "" {
|
||||||
@@ -248,17 +179,17 @@ func DeleteParamConfigToNF(w http.ResponseWriter, r *http.Request) {
|
|||||||
services.ResponseNotFound404UriNotExist(w, r)
|
services.ResponseNotFound404UriNotExist(w, r)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
neId := services.GetUriParamString(r, "ne_id", ",", false, false)
|
|
||||||
|
|
||||||
// no, _ := strconv.ParseInt(neId, 10, 64)
|
neId := ctx.GetQuery(r, "ne_id")
|
||||||
neInfo, err := dborm.XormGetNeInfo(neType, neId)
|
neInfo := neService.NewNeInfoImpl.SelectNeInfoByNeTypeAndNeID(neType, neId)
|
||||||
if err != nil {
|
|
||||||
log.Error("dborm.XormGetNeInfo is failed:", err)
|
if neInfo.NeId != neId {
|
||||||
|
log.Error("neId is empty")
|
||||||
services.ResponseInternalServerError500DatabaseOperationFailed(w)
|
services.ResponseInternalServerError500DatabaseOperationFailed(w)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
requestURI2NF := fmt.Sprintf("http://%s:%v%s", neInfo.Ip, neInfo.Port, r.RequestURI)
|
requestURI2NF := fmt.Sprintf("http://%s:%v%s", neInfo.IP, neInfo.Port, r.RequestURI)
|
||||||
log.Debug("requestURI2NF: DELETE ", requestURI2NF)
|
log.Debug("requestURI2NF: DELETE ", requestURI2NF)
|
||||||
|
|
||||||
client := resty.New()
|
client := resty.New()
|
||||||
|
|||||||
Reference in New Issue
Block a user