fix: 网元列表查询同步更新网元状态
This commit is contained in:
@@ -193,12 +193,18 @@ func (s *NeInfoController) Add(c *gin.Context) {
|
||||
return
|
||||
}
|
||||
|
||||
// 获取网元状态是否正常
|
||||
_, err = neService.NeState(body)
|
||||
if err != nil {
|
||||
body.Status = "1"
|
||||
} else {
|
||||
// 下发网管配置信息给网元
|
||||
_, err = neService.NeConfigOMC(body)
|
||||
if err == nil {
|
||||
body.Status = "1"
|
||||
} else {
|
||||
body.Status = "0"
|
||||
} else {
|
||||
body.Status = "3"
|
||||
}
|
||||
}
|
||||
|
||||
insertId := s.neInfoService.Insert(body)
|
||||
@@ -238,12 +244,18 @@ func (s *NeInfoController) Edit(c *gin.Context) {
|
||||
return
|
||||
}
|
||||
|
||||
// 获取网元状态是否正常
|
||||
_, err = neService.NeState(body)
|
||||
if err != nil {
|
||||
body.Status = "1"
|
||||
} else {
|
||||
// 下发网管配置信息给网元
|
||||
_, err = neService.NeConfigOMC(body)
|
||||
if err == nil {
|
||||
body.Status = "1"
|
||||
} else {
|
||||
body.Status = "0"
|
||||
} else {
|
||||
body.Status = "3"
|
||||
}
|
||||
}
|
||||
|
||||
rows := s.neInfoService.Update(body)
|
||||
|
||||
@@ -14,7 +14,7 @@ type NeInfo struct {
|
||||
VendorName string `json:"vendorName"`
|
||||
Dn string `json:"dn"`
|
||||
NeAddress string `json:"neAddress"`
|
||||
Status string `json:"status"` // 0: 在线 1: 下线 2: 备用 3: 工程
|
||||
Status string `json:"status"` // 0: 在线 1: 下线 2: 备用 3: 待下发配置
|
||||
UpdateTime string `json:"updateTime"`
|
||||
HostIDs string `json:"hostIds"` // 网元主机ID组 数据格式(ssh,telnet,telnet)
|
||||
|
||||
@@ -24,5 +24,5 @@ type NeInfo struct {
|
||||
ServerState map[string]any `json:"serverState,omitempty"`
|
||||
|
||||
// 主机对象组
|
||||
Hosts []NeHost `json:"hosts,omitempty" binding:"hosts"`
|
||||
Hosts []NeHost `json:"hosts,omitempty"`
|
||||
}
|
||||
|
||||
@@ -90,10 +90,24 @@ func (r *NeInfoImpl) SelectPage(query map[string]any, bandStatus bool) map[strin
|
||||
(*arr)[i].ServerState = map[string]any{
|
||||
"online": false,
|
||||
}
|
||||
// 网元状态设置为离线
|
||||
if v.Status != "1" {
|
||||
v.Status = "1"
|
||||
r.neInfoRepository.Update(v)
|
||||
}
|
||||
continue
|
||||
}
|
||||
result["online"] = true
|
||||
(*arr)[i].ServerState = result
|
||||
// 网元状态设置为在线
|
||||
if v.Status != "0" {
|
||||
// 下发网管配置信息给网元
|
||||
_, err = NeConfigOMC(v)
|
||||
if err == nil {
|
||||
v.Status = "0"
|
||||
r.neInfoRepository.Update(v)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -116,10 +130,24 @@ func (r *NeInfoImpl) SelectList(ne model.NeInfo, bandStatus bool) []model.NeInfo
|
||||
(*neList)[i].ServerState = map[string]any{
|
||||
"online": false,
|
||||
}
|
||||
// 网元状态设置为离线
|
||||
if v.Status != "1" {
|
||||
v.Status = "1"
|
||||
r.neInfoRepository.Update(v)
|
||||
}
|
||||
continue
|
||||
}
|
||||
result["online"] = true
|
||||
(*neList)[i].ServerState = result
|
||||
// 网元状态设置为在线
|
||||
if v.Status != "0" {
|
||||
// 下发网管配置信息给网元
|
||||
_, err = NeConfigOMC(v)
|
||||
if err == nil {
|
||||
v.Status = "0"
|
||||
r.neInfoRepository.Update(v)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user