fix: serial number of NE license

This commit is contained in:
2023-12-26 10:59:47 +08:00
parent a066bb3692
commit 562244d0db
2 changed files with 61 additions and 8 deletions

View File

@@ -154,7 +154,8 @@ func init() {
return 0, errors.New("quota exceeded") return 0, errors.New("quota exceeded")
}) })
*/ */
client.SetTimeout(3 * time.Second) client.SetTimeout(time.Duration(2 * time.Second))
//client.SetTimeout(2 * time.Second)
} }
func NeStatusEnumToStr(intStatus int) string { func NeStatusEnumToStr(intStatus int) string {
@@ -216,7 +217,7 @@ func GetOneLicenseInfoFromNF(w http.ResponseWriter, r *http.Request) {
if neType != omcNeTypeLower { if neType != omcNeTypeLower {
log.Debugf("r.RemoteAddr: %s omcNeTypeLower: %s", r.RemoteAddr, omcNeTypeLower) log.Debugf("r.RemoteAddr: %s omcNeTypeLower: %s", r.RemoteAddr, omcNeTypeLower)
var requestURI2NF string var requestURI2NF string
if config.GetYamlConfig().OMC.TestMode == true && strings.ToLower(neType) != "udm" { if config.GetYamlConfig().OMC.TestMode && strings.ToLower(neType) != "udm" {
var udmNEs []dborm.NeInfo var udmNEs []dborm.NeInfo
err := dborm.XormGetNeInfoByNeType("UDM", &udmNEs) err := dborm.XormGetNeInfoByNeType("UDM", &udmNEs)
if err != nil { if err != nil {
@@ -237,7 +238,7 @@ func GetOneLicenseInfoFromNF(w http.ResponseWriter, r *http.Request) {
} }
log.Debug("requestURI2NF:", requestURI2NF) log.Debug("requestURI2NF:", requestURI2NF)
resp, err := client.SetTimeout(time.Duration(1 * time.Second)).R(). resp, err := client.R().
EnableTrace(). EnableTrace().
SetHeaders(map[string]string{tokenConst.HEADER_KEY: r.Header.Get(tokenConst.HEADER_KEY)}). SetHeaders(map[string]string{tokenConst.HEADER_KEY: r.Header.Get(tokenConst.HEADER_KEY)}).
SetHeaders(map[string]string{"accessToken": token}). SetHeaders(map[string]string{"accessToken": token}).
@@ -266,6 +267,9 @@ func GetOneLicenseInfoFromNF(w http.ResponseWriter, r *http.Request) {
} }
//neItem := strings.ToUpper(neType) + "/" + neId //neItem := strings.ToUpper(neType) + "/" + neId
result, err = global.ToMap(*licenseInfo, "json") result, err = global.ToMap(*licenseInfo, "json")
if err != nil {
log.Warn("Failed to map:", err)
}
} }
} else { } else {
systemState := GetEMSState(neInfo.Ip) systemState := GetEMSState(neInfo.Ip)
@@ -279,6 +283,9 @@ func GetOneLicenseInfoFromNF(w http.ResponseWriter, r *http.Request) {
ExpiryDate: systemState.ExpiryDate, ExpiryDate: systemState.ExpiryDate,
} }
result, err = global.ToMap(*licenseInfo, "json") result, err = global.ToMap(*licenseInfo, "json")
if err != nil {
log.Warn("Failed to map:", err)
}
// neItem := strings.ToUpper(neType) + "/" + neId // neItem := strings.ToUpper(neType) + "/" + neId
// result[neItem] = sysInfo // result[neItem] = sysInfo
} }
@@ -306,6 +313,11 @@ func GetAllLicenseInfoFromNF(w http.ResponseWriter, r *http.Request) {
var neList []dborm.NeInfo var neList []dborm.NeInfo
_, err = dborm.XormGetAllNeInfo(&neList) _, err = dborm.XormGetAllNeInfo(&neList)
if err != nil {
log.Error("Failed to XormGetAllNeInfo:", err)
services.ResponseInternalServerError500ProcessError(w, err)
return
}
omcNeTypeLower := "omc" omcNeTypeLower := "omc"
if config.GetYamlConfig().OMC.NeType != "" { if config.GetYamlConfig().OMC.NeType != "" {
omcNeTypeLower = strings.ToLower(config.GetYamlConfig().OMC.NeType) omcNeTypeLower = strings.ToLower(config.GetYamlConfig().OMC.NeType)
@@ -321,7 +333,7 @@ func GetAllLicenseInfoFromNF(w http.ResponseWriter, r *http.Request) {
// requestURI2NF := fmt.Sprintf("%s/api/rest/systemManagement/v1/elementType/%s/objectType/systemState", // requestURI2NF := fmt.Sprintf("%s/api/rest/systemManagement/v1/elementType/%s/objectType/systemState",
// hostUri, strings.ToLower(ne.NeType)) // hostUri, strings.ToLower(ne.NeType))
var requestURI2NF string var requestURI2NF string
if config.GetYamlConfig().OMC.TestMode == true && strings.ToLower(ne.NeType) != "udm" { if config.GetYamlConfig().OMC.TestMode && strings.ToLower(ne.NeType) != "udm" {
var udmNEs []dborm.NeInfo var udmNEs []dborm.NeInfo
err := dborm.XormGetNeInfoByNeType("UDM", &udmNEs) err := dborm.XormGetNeInfoByNeType("UDM", &udmNEs)
if err != nil { if err != nil {
@@ -369,6 +381,9 @@ func GetAllLicenseInfoFromNF(w http.ResponseWriter, r *http.Request) {
ExpiryDate: systemState.ExpiryDate, ExpiryDate: systemState.ExpiryDate,
} }
result, err = global.ToMap(*licenseInfo, "json") result, err = global.ToMap(*licenseInfo, "json")
if err != nil {
log.Warn("Failed to map:", err)
}
// neItem := strings.ToUpper(ne.NeType) + "/" + ne.NeId // neItem := strings.ToUpper(ne.NeType) + "/" + ne.NeId
// result[neItem] = sysInfo // result[neItem] = sysInfo
} }
@@ -384,6 +399,9 @@ func GetAllLicenseInfoFromNF(w http.ResponseWriter, r *http.Request) {
ExpiryDate: systemState.ExpiryDate, ExpiryDate: systemState.ExpiryDate,
} }
result, err = global.ToMap(*licenseInfo, "json") result, err = global.ToMap(*licenseInfo, "json")
if err != nil {
log.Warn("Failed to map:", err)
}
// neItem := strings.ToUpper(ne.NeType) + "/" + ne.NeId // neItem := strings.ToUpper(ne.NeType) + "/" + ne.NeId
// result[neItem] = sysInfo // result[neItem] = sysInfo
} }
@@ -441,7 +459,7 @@ func GetOneSysinfoFromNF(w http.ResponseWriter, r *http.Request) {
if neType != omcNeTypeLower { if neType != omcNeTypeLower {
log.Debugf("r.RemoteAddr: %s omcNeTypeLower: %s", r.RemoteAddr, omcNeTypeLower) log.Debugf("r.RemoteAddr: %s omcNeTypeLower: %s", r.RemoteAddr, omcNeTypeLower)
var requestURI2NF string var requestURI2NF string
if config.GetYamlConfig().OMC.TestMode == true && strings.ToLower(neType) != "udm" { if config.GetYamlConfig().OMC.TestMode && strings.ToLower(neType) != "udm" {
var udmNEs []dborm.NeInfo var udmNEs []dborm.NeInfo
err := dborm.XormGetNeInfoByNeType("UDM", &udmNEs) err := dborm.XormGetNeInfoByNeType("UDM", &udmNEs)
if err != nil { if err != nil {
@@ -462,7 +480,7 @@ func GetOneSysinfoFromNF(w http.ResponseWriter, r *http.Request) {
} }
log.Debug("requestURI2NF:", requestURI2NF) log.Debug("requestURI2NF:", requestURI2NF)
resp, err := client.SetTimeout(time.Duration(1 * time.Second)).R(). resp, err := client.R().
EnableTrace(). EnableTrace().
SetHeaders(map[string]string{tokenConst.HEADER_KEY: r.Header.Get(tokenConst.HEADER_KEY)}). SetHeaders(map[string]string{tokenConst.HEADER_KEY: r.Header.Get(tokenConst.HEADER_KEY)}).
SetHeaders(map[string]string{"accessToken": token}). SetHeaders(map[string]string{"accessToken": token}).
@@ -515,6 +533,9 @@ func GetOneSysinfoFromNF(w http.ResponseWriter, r *http.Request) {
} }
//neItem := strings.ToUpper(neType) + "/" + neId //neItem := strings.ToUpper(neType) + "/" + neId
result, err = global.ToMap(*sysInfo, "json") result, err = global.ToMap(*sysInfo, "json")
if err != nil {
log.Warn("Failed to map:", err)
}
} }
} else { } else {
systemState := GetEMSState(neInfo.Ip) systemState := GetEMSState(neInfo.Ip)
@@ -533,6 +554,9 @@ func GetOneSysinfoFromNF(w http.ResponseWriter, r *http.Request) {
Status: NeStatusEnumToStr(neInfo.Status), Status: NeStatusEnumToStr(neInfo.Status),
} }
result, err = global.ToMap(*sysInfo, "json") result, err = global.ToMap(*sysInfo, "json")
if err != nil {
log.Warn("Failed to map:", err)
}
// neItem := strings.ToUpper(neType) + "/" + neId // neItem := strings.ToUpper(neType) + "/" + neId
// result[neItem] = sysInfo // result[neItem] = sysInfo
} }
@@ -560,6 +584,11 @@ func GetAllSysinfoFromNF(w http.ResponseWriter, r *http.Request) {
var neList []dborm.NeInfo var neList []dborm.NeInfo
_, err = dborm.XormGetAllNeInfo(&neList) _, err = dborm.XormGetAllNeInfo(&neList)
if err != nil {
log.Error("Failed to XormGetAllNeInfo:", err)
services.ResponseInternalServerError500ProcessError(w, err)
return
}
omcNeTypeLower := "omc" omcNeTypeLower := "omc"
if config.GetYamlConfig().OMC.NeType != "" { if config.GetYamlConfig().OMC.NeType != "" {
omcNeTypeLower = strings.ToLower(config.GetYamlConfig().OMC.NeType) omcNeTypeLower = strings.ToLower(config.GetYamlConfig().OMC.NeType)
@@ -575,7 +604,7 @@ func GetAllSysinfoFromNF(w http.ResponseWriter, r *http.Request) {
// requestURI2NF := fmt.Sprintf("%s/api/rest/systemManagement/v1/elementType/%s/objectType/systemState", // requestURI2NF := fmt.Sprintf("%s/api/rest/systemManagement/v1/elementType/%s/objectType/systemState",
// hostUri, strings.ToLower(ne.NeType)) // hostUri, strings.ToLower(ne.NeType))
var requestURI2NF string var requestURI2NF string
if config.GetYamlConfig().OMC.TestMode == true && strings.ToLower(ne.NeType) != "udm" { if config.GetYamlConfig().OMC.TestMode && strings.ToLower(ne.NeType) != "udm" {
var udmNEs []dborm.NeInfo var udmNEs []dborm.NeInfo
err := dborm.XormGetNeInfoByNeType("UDM", &udmNEs) err := dborm.XormGetNeInfoByNeType("UDM", &udmNEs)
if err != nil { if err != nil {
@@ -651,6 +680,9 @@ func GetAllSysinfoFromNF(w http.ResponseWriter, r *http.Request) {
// neItem := strings.ToUpper(ne.NeType) + "/" + ne.NeId // neItem := strings.ToUpper(ne.NeType) + "/" + ne.NeId
// result[neItem] = sysInfo // result[neItem] = sysInfo
result, err = global.ToMap(*sysInfo, "json") result, err = global.ToMap(*sysInfo, "json")
if err != nil {
log.Warn("Failed to map:", err)
}
} }
} else { } else {
port, _ := strconv.Atoi(ne.Port) port, _ := strconv.Atoi(ne.Port)
@@ -672,6 +704,9 @@ func GetAllSysinfoFromNF(w http.ResponseWriter, r *http.Request) {
// neItem := strings.ToUpper(ne.NeType) + "/" + ne.NeId // neItem := strings.ToUpper(ne.NeType) + "/" + ne.NeId
// result[neItem] = sysInfo // result[neItem] = sysInfo
result, err = global.ToMap(*sysInfo, "json") result, err = global.ToMap(*sysInfo, "json")
if err != nil {
log.Warn("Failed to map:", err)
}
} }
data = append(data, result) data = append(data, result)
@@ -772,7 +807,7 @@ func GetStateFromNF(w http.ResponseWriter, r *http.Request) {
log.Debug("requestURI2NF:", requestURI2NF) log.Debug("requestURI2NF:", requestURI2NF)
result["ipAddress"] = ne.Ip result["ipAddress"] = ne.Ip
resp, err := client.SetTimeout(time.Duration(1 * time.Second)).R(). resp, err := client.R().
EnableTrace(). EnableTrace().
SetHeaders(map[string]string{tokenConst.HEADER_KEY: r.Header.Get(tokenConst.HEADER_KEY)}). SetHeaders(map[string]string{tokenConst.HEADER_KEY: r.Header.Get(tokenConst.HEADER_KEY)}).
SetHeaders(map[string]string{"accessToken": token}). SetHeaders(map[string]string{"accessToken": token}).
@@ -785,6 +820,8 @@ func GetStateFromNF(w http.ResponseWriter, r *http.Request) {
ErrorCode: "1", ErrorInfo: "Internal server error, NF connnect refused", ErrorCode: "1", ErrorInfo: "Internal server error, NF connnect refused",
} }
result["error"] = errorMessage result["error"] = errorMessage
SN, _ := dborm.XormGetNESN(ne.NeType, ne.NeId)
result["serialNum"] = SN
} else { } else {
systemState := make(map[string]interface{}) systemState := make(map[string]interface{})
_ = json.Unmarshal(resp.Body(), &systemState) _ = json.Unmarshal(resp.Body(), &systemState)

View File

@@ -1820,3 +1820,19 @@ func XormGetTraceRawMsg(id int) (int64, []byte, error) {
return timestamp, rawMsg, nil return timestamp, rawMsg, nil
} }
func XormGetNESN(neType, neID string) (string, error) {
SN := "-"
_, err := xEngine.Table("ne_state").
Where("ne_type=? and ne_id=?", neType, neID).
Asc("timestamp").
Cols("serial_num").
Limit(1).
Get(&SN)
if err != nil {
log.Error("Failed to get table ne_state:", err)
return SN, err
}
return SN, nil
}