ref: 多core表结构和代码调整修改
This commit is contained in:
@@ -125,7 +125,7 @@ func PostAlarmFromNF(w http.ResponseWriter, r *http.Request) {
|
||||
log.Debug("alarmData:", v)
|
||||
|
||||
// 是否存在网元 neId实际是rmUID
|
||||
neInfo := neService.FindByRmuid(v.NeId)
|
||||
neInfo := neService.FindByCoreUidAndNeUid("*", v.NeId)
|
||||
if neInfo.NeType != v.NeType {
|
||||
msg := fmt.Sprintf("network element does not exist %s", v.NeId)
|
||||
services.ResponseWithJson(w, 400, resp.ErrMsg(msg))
|
||||
@@ -143,7 +143,7 @@ func PostAlarmFromNF(w http.ResponseWriter, r *http.Request) {
|
||||
v.AddInfo = fmt.Sprintf("NeInfo:%s", v.NeType)
|
||||
}
|
||||
if v.ObjectUid == "" {
|
||||
v.ObjectUid = neInfo.RmUID
|
||||
v.ObjectUid = neInfo.NeUID
|
||||
}
|
||||
if v.ObjectName == "" {
|
||||
v.ObjectName = neInfo.NeName
|
||||
@@ -161,7 +161,7 @@ func PostAlarmFromNF(w http.ResponseWriter, r *http.Request) {
|
||||
services.ResponseWithJson(w, 400, resp.ErrMsg(err.Error()))
|
||||
return
|
||||
}
|
||||
groupID := fmt.Sprintf("%s_%s_%s", wsService.GROUP_ALARM_EVENT, neInfo.NeType, neInfo.NeId)
|
||||
groupID := fmt.Sprintf("%s_%s_%s", wsService.GROUP_ALARM_EVENT, neInfo.CoreUID, neInfo.NeUID)
|
||||
wsService.NewWSSend.ByGroupID(groupID, clearAlarmEvent)
|
||||
}
|
||||
if v.AlarmStatus == AlarmStatusActive {
|
||||
@@ -171,7 +171,7 @@ func PostAlarmFromNF(w http.ResponseWriter, r *http.Request) {
|
||||
services.ResponseWithJson(w, 400, resp.ErrMsg(err.Error()))
|
||||
return
|
||||
}
|
||||
groupID := fmt.Sprintf("%s_%s_%s", wsService.GROUP_ALARM_EVENT, neInfo.NeType, neInfo.NeId)
|
||||
groupID := fmt.Sprintf("%s_%s_%s", wsService.GROUP_ALARM_EVENT, neInfo.CoreUID, neInfo.NeUID)
|
||||
wsService.NewWSSend.ByGroupID(groupID, newAlarmEvent)
|
||||
}
|
||||
continue
|
||||
@@ -184,7 +184,7 @@ func PostAlarmFromNF(w http.ResponseWriter, r *http.Request) {
|
||||
services.ResponseWithJson(w, 400, resp.ErrMsg(err.Error()))
|
||||
return
|
||||
}
|
||||
groupID := fmt.Sprintf("%s_%s_%s", wsService.GROUP_ALARM, neInfo.NeType, neInfo.NeId)
|
||||
groupID := fmt.Sprintf("%s_%s_%s", wsService.GROUP_ALARM, neInfo.CoreUID, neInfo.NeUID)
|
||||
wsService.NewWSSend.ByGroupID(groupID, clearAlarm)
|
||||
}
|
||||
if v.AlarmStatus == AlarmStatusActive {
|
||||
@@ -194,7 +194,7 @@ func PostAlarmFromNF(w http.ResponseWriter, r *http.Request) {
|
||||
services.ResponseWithJson(w, 400, resp.ErrMsg(err.Error()))
|
||||
return
|
||||
}
|
||||
groupID := fmt.Sprintf("%s_%s_%s", wsService.GROUP_ALARM, neInfo.NeType, neInfo.NeId)
|
||||
groupID := fmt.Sprintf("%s_%s_%s", wsService.GROUP_ALARM, neInfo.CoreUID, neInfo.NeUID)
|
||||
wsService.NewWSSend.ByGroupID(groupID, newAlarm)
|
||||
}
|
||||
|
||||
@@ -232,12 +232,13 @@ func alarmClear(neInfo neModel.NeInfo, v Alarm) (neDataModel.Alarm, error) {
|
||||
alarmService := neDataService.NewAlarm
|
||||
// 检查网元告警ID是否唯一
|
||||
alarmIdArr := alarmService.Find(neDataModel.Alarm{
|
||||
CoreUID: neInfo.CoreUID,
|
||||
NeUID: neInfo.NeUID,
|
||||
NeType: neInfo.NeType,
|
||||
NeId: neInfo.NeId,
|
||||
AlarmId: v.AlarmId,
|
||||
})
|
||||
if len(alarmIdArr) != 1 {
|
||||
return neDataModel.Alarm{}, fmt.Errorf("[%s %s] clear alarm not exists alarmId:%s", neInfo.NeType, neInfo.NeId, v.AlarmId)
|
||||
return neDataModel.Alarm{}, fmt.Errorf("[%s %s] clear alarm not exists alarmId:%s", neInfo.CoreUID, neInfo.NeUID, v.AlarmId)
|
||||
}
|
||||
|
||||
// 产生时间
|
||||
@@ -245,11 +246,9 @@ func alarmClear(neInfo neModel.NeInfo, v Alarm) (neDataModel.Alarm, error) {
|
||||
|
||||
alarm := neDataModel.Alarm{
|
||||
ID: alarmIdArr[0].ID,
|
||||
CoreUID: neInfo.CoreUID,
|
||||
NeUID: neInfo.NeUID,
|
||||
NeType: neInfo.NeType,
|
||||
NeId: neInfo.NeId,
|
||||
NeName: neInfo.NeName,
|
||||
Province: neInfo.Province,
|
||||
PvFlag: neInfo.PvFlag,
|
||||
AlarmSeq: alarmIdArr[0].AlarmSeq, // seq 告警序号
|
||||
AlarmId: v.AlarmId,
|
||||
AlarmTitle: v.AlarmTitle,
|
||||
@@ -276,7 +275,7 @@ func alarmClear(neInfo neModel.NeInfo, v Alarm) (neDataModel.Alarm, error) {
|
||||
if rows > 0 {
|
||||
return alarm, nil
|
||||
}
|
||||
return neDataModel.Alarm{}, fmt.Errorf("[%s %s] clear alarm fail", neInfo.NeType, neInfo.NeId)
|
||||
return neDataModel.Alarm{}, fmt.Errorf("[%s %s] clear alarm fail", neInfo.CoreUID, neInfo.NeUID)
|
||||
}
|
||||
|
||||
// alarmNew 新增告警
|
||||
@@ -284,24 +283,23 @@ func alarmNew(neInfo neModel.NeInfo, v Alarm) (neDataModel.Alarm, error) {
|
||||
alarmService := neDataService.NewAlarm
|
||||
// 检查网元告警ID是否唯一
|
||||
alarmIdArr := alarmService.Find(neDataModel.Alarm{
|
||||
CoreUID: neInfo.CoreUID,
|
||||
NeUID: neInfo.NeUID,
|
||||
NeType: neInfo.NeType,
|
||||
NeId: neInfo.NeId,
|
||||
AlarmId: v.AlarmId,
|
||||
})
|
||||
if len(alarmIdArr) > 0 {
|
||||
return neDataModel.Alarm{}, fmt.Errorf("[%s %s] new alarm already exists alarmId:%s", neInfo.NeType, neInfo.NeId, v.AlarmId)
|
||||
return neDataModel.Alarm{}, fmt.Errorf("[%s %s] new alarm already exists alarmId:%s", neInfo.CoreUID, neInfo.NeUID, v.AlarmId)
|
||||
}
|
||||
// seq 告警序号
|
||||
lastSeq := alarmService.FindAlarmSeqLast(neInfo.NeType, neInfo.NeId)
|
||||
lastSeq := alarmService.FindAlarmSeqLast(neInfo.CoreUID, neInfo.NeUID)
|
||||
// 产生时间
|
||||
eventTime := date.ParseStrToDate(v.EventTime, date.YYYY_MM_DDTHH_MM_SSZ)
|
||||
|
||||
alarm := neDataModel.Alarm{
|
||||
CoreUID: neInfo.CoreUID,
|
||||
NeUID: neInfo.NeUID,
|
||||
NeType: neInfo.NeType,
|
||||
NeId: neInfo.NeId,
|
||||
NeName: neInfo.NeName,
|
||||
Province: neInfo.Province,
|
||||
PvFlag: neInfo.PvFlag,
|
||||
AlarmSeq: lastSeq + 1,
|
||||
AlarmId: v.AlarmId,
|
||||
AlarmTitle: v.AlarmTitle,
|
||||
@@ -324,7 +322,7 @@ func alarmNew(neInfo neModel.NeInfo, v Alarm) (neDataModel.Alarm, error) {
|
||||
alarm.ID = insertId
|
||||
return alarm, nil
|
||||
}
|
||||
return neDataModel.Alarm{}, fmt.Errorf("[%s %s] new alarm fail", neInfo.NeType, neInfo.NeId)
|
||||
return neDataModel.Alarm{}, fmt.Errorf("[%s %s] new alarm fail", neInfo.CoreUID, neInfo.NeUID)
|
||||
}
|
||||
|
||||
// alarmSaveLog 保存告警日志
|
||||
@@ -332,8 +330,9 @@ func alarmSaveLog(neInfo neModel.NeInfo, v Alarm) int64 {
|
||||
alarmLogService := neDataService.NewAlarmLog
|
||||
eventTime := date.ParseStrToDate(v.EventTime, date.YYYY_MM_DDTHH_MM_SSZ)
|
||||
alarmLog := neDataModel.AlarmLog{
|
||||
CoreUID: neInfo.CoreUID,
|
||||
NeUID: neInfo.NeUID,
|
||||
NeType: neInfo.NeType,
|
||||
NeId: neInfo.NeId,
|
||||
AlarmSeq: int64(v.AlarmSeq),
|
||||
AlarmId: v.AlarmId,
|
||||
AlarmTitle: v.AlarmTitle,
|
||||
@@ -365,12 +364,13 @@ func alarmEventClear(neInfo neModel.NeInfo, v Alarm) (neDataModel.AlarmEvent, er
|
||||
alarmEventService := neDataService.NewAlarmEvent
|
||||
// 检查网元告警ID是否唯一
|
||||
alarmIdArr := alarmEventService.Find(neDataModel.AlarmEvent{
|
||||
CoreUID: neInfo.CoreUID,
|
||||
NeUID: neInfo.NeUID,
|
||||
NeType: neInfo.NeType,
|
||||
NeId: neInfo.NeId,
|
||||
AlarmId: v.AlarmId,
|
||||
})
|
||||
if len(alarmIdArr) != 1 {
|
||||
return neDataModel.AlarmEvent{}, fmt.Errorf("[%s %s] clear alarm event not exists alarmId:%s", neInfo.NeType, neInfo.NeId, v.AlarmId)
|
||||
return neDataModel.AlarmEvent{}, fmt.Errorf("[%s %s] clear alarm event not exists alarmId:%s", neInfo.CoreUID, neInfo.NeUID, v.AlarmId)
|
||||
}
|
||||
|
||||
// 产生时间
|
||||
@@ -378,8 +378,9 @@ func alarmEventClear(neInfo neModel.NeInfo, v Alarm) (neDataModel.AlarmEvent, er
|
||||
|
||||
alarmEvent := neDataModel.AlarmEvent{
|
||||
ID: alarmIdArr[0].ID,
|
||||
CoreUID: neInfo.CoreUID,
|
||||
NeUID: neInfo.NeUID,
|
||||
NeType: neInfo.NeType,
|
||||
NeId: neInfo.NeId,
|
||||
AlarmSeq: alarmIdArr[0].AlarmSeq, // seq 告警序号
|
||||
AlarmId: v.AlarmId,
|
||||
AlarmTitle: v.AlarmTitle,
|
||||
@@ -403,7 +404,7 @@ func alarmEventClear(neInfo neModel.NeInfo, v Alarm) (neDataModel.AlarmEvent, er
|
||||
if rows > 0 {
|
||||
return alarmEvent, nil
|
||||
}
|
||||
return neDataModel.AlarmEvent{}, fmt.Errorf("[%s %s] clear alarm event fail", neInfo.NeType, neInfo.NeId)
|
||||
return neDataModel.AlarmEvent{}, fmt.Errorf("[%s %s] clear alarm event fail", neInfo.CoreUID, neInfo.NeUID)
|
||||
}
|
||||
|
||||
// alarmEventNew 新增告警事件
|
||||
@@ -411,21 +412,23 @@ func alarmEventNew(neInfo neModel.NeInfo, v Alarm) (neDataModel.AlarmEvent, erro
|
||||
alarmEventService := neDataService.NewAlarmEvent
|
||||
// 检查网元告警ID是否唯一
|
||||
alarmIdArr := alarmEventService.Find(neDataModel.AlarmEvent{
|
||||
CoreUID: neInfo.CoreUID,
|
||||
NeUID: neInfo.NeUID,
|
||||
NeType: neInfo.NeType,
|
||||
NeId: neInfo.NeId,
|
||||
AlarmId: v.AlarmId,
|
||||
})
|
||||
if len(alarmIdArr) > 0 {
|
||||
return neDataModel.AlarmEvent{}, fmt.Errorf("[%s %s] new alarm event already exists alarmId:%s", neInfo.NeType, neInfo.NeId, v.AlarmId)
|
||||
return neDataModel.AlarmEvent{}, fmt.Errorf("[%s %s] new alarm event already exists alarmId:%s", neInfo.CoreUID, neInfo.NeUID, v.AlarmId)
|
||||
}
|
||||
// seq 告警序号
|
||||
lastSeq := alarmEventService.FindAlarmEventSeqLast(neInfo.NeType, neInfo.NeId)
|
||||
lastSeq := alarmEventService.FindAlarmEventSeqLast(neInfo.CoreUID, neInfo.NeUID)
|
||||
// 产生时间
|
||||
eventTime := date.ParseStrToDate(v.EventTime, date.YYYY_MM_DDTHH_MM_SSZ)
|
||||
|
||||
alarmEvent := neDataModel.AlarmEvent{
|
||||
CoreUID: neInfo.CoreUID,
|
||||
NeUID: neInfo.NeUID,
|
||||
NeType: neInfo.NeType,
|
||||
NeId: neInfo.NeId,
|
||||
AlarmSeq: lastSeq + 1,
|
||||
AlarmId: v.AlarmId,
|
||||
AlarmTitle: v.AlarmTitle,
|
||||
@@ -447,8 +450,9 @@ func alarmEventNew(neInfo neModel.NeInfo, v Alarm) (neDataModel.AlarmEvent, erro
|
||||
if v.AlarmCode == constants.ALARM_EVENT_REBOOT {
|
||||
alarmService := neDataService.NewAlarm
|
||||
rows := alarmService.Find(neDataModel.Alarm{
|
||||
CoreUID: neInfo.CoreUID,
|
||||
NeUID: neInfo.NeUID,
|
||||
NeType: neInfo.NeType,
|
||||
NeId: neInfo.NeId,
|
||||
AlarmStatus: "1",
|
||||
})
|
||||
for _, v := range rows {
|
||||
@@ -457,11 +461,11 @@ func alarmEventNew(neInfo neModel.NeInfo, v Alarm) (neDataModel.AlarmEvent, erro
|
||||
}
|
||||
// 网元重启后,有跟踪任务的需要重新补发启动任务
|
||||
if v.AlarmCode == constants.ALARM_EVENT_REBOOT {
|
||||
traceService.NewTraceTask.RunUnstopped(neInfo.NeType, neInfo.NeId)
|
||||
traceService.NewTraceTask.RunUnstopped(neInfo.CoreUID, neInfo.NeUID)
|
||||
}
|
||||
return alarmEvent, nil
|
||||
}
|
||||
return neDataModel.AlarmEvent{}, fmt.Errorf("[%s %s] new alarm event fail", neInfo.NeType, neInfo.NeId)
|
||||
return neDataModel.AlarmEvent{}, fmt.Errorf("[%s %s] new alarm event fail", neInfo.CoreUID, neInfo.NeUID)
|
||||
}
|
||||
|
||||
// mapToAlarm 将 []map[string]any 转换为 []Alarm
|
||||
@@ -505,7 +509,7 @@ func GetAlarmFromNF(w http.ResponseWriter, r *http.Request) {
|
||||
continue
|
||||
}
|
||||
if len(data) == 0 {
|
||||
log.Infof("Not found sync alarms, neType=%s, neId=%s", neInfo.NeType, neInfo.NeId)
|
||||
log.Infof("Not found sync alarms, neType=%s, neId=%s", neInfo.CoreUID, neInfo.NeUID)
|
||||
continue
|
||||
}
|
||||
|
||||
@@ -519,7 +523,7 @@ func GetAlarmFromNF(w http.ResponseWriter, r *http.Request) {
|
||||
v.AddInfo = fmt.Sprintf("NeInfo:%s", v.NeType)
|
||||
}
|
||||
if v.ObjectUid == "" {
|
||||
v.ObjectUid = neInfo.RmUID
|
||||
v.ObjectUid = neInfo.NeUID
|
||||
}
|
||||
if v.ObjectName == "" {
|
||||
v.ObjectName = neInfo.NeName
|
||||
|
||||
@@ -188,11 +188,12 @@ func writeLog(alarmData *Alarm, toUser, forwardBy string, err error) error {
|
||||
if err != nil {
|
||||
result = err.Error()
|
||||
}
|
||||
neInfo := neService.NewNeInfo.FindByRmuid(alarmData.NeId)
|
||||
neInfo := neService.NewNeInfo.FindByCoreUidAndNeUid("*", alarmData.NeId)
|
||||
eventTime := date.ParseStrToDate(alarmData.EventTime, date.YYYY_MM_DDTHH_MM_SSZ)
|
||||
alarmForwardLog := neDataModel.AlarmForwardLog{
|
||||
CoreUID: neInfo.CoreUID,
|
||||
NeUID: neInfo.NeUID,
|
||||
NeType: neInfo.NeType,
|
||||
NeId: neInfo.NeId,
|
||||
AlarmSeq: int64(alarmData.AlarmSeq),
|
||||
AlarmId: alarmData.AlarmId,
|
||||
AlarmTitle: alarmData.AlarmTitle,
|
||||
|
||||
Reference in New Issue
Block a user