package model

// AlarmForwardLog 告警_转发日志记录
type AlarmForwardLog struct {
	ID           int64  `json:"id" gorm:"column:id;primaryKey;autoIncrement"`
	NeType       string `json:"neType" gorm:"column:ne_type"`
	NeId         string `json:"neId" gorm:"column:ne_id"`
	AlarmSeq     int64  `json:"alarmSeq" gorm:"column:alarm_seq"`         // 告警序号 连续递增
	AlarmId      string `json:"alarmId" gorm:"column:alarm_id"`           // 告警ID
	AlarmCode    int64  `json:"alarmCode" gorm:"column:alarm_code"`       // 告警状态码
	AlarmTitle   string `json:"alarmTitle" gorm:"column:alarm_title"`     // 告警标题
	AlarmStatus  string `json:"alarmStatus" gorm:"column:alarm_status"`   // 告警状态
	AlarmType    string `json:"alarmType" gorm:"column:alarm_type"`       // 告警类型
	OrigSeverity string `json:"origSeverity" gorm:"column:orig_severity"` // 严重程度
	EventTime    int64  `json:"eventTime" gorm:"column:event_time"`       // 事件产生时间
	CreatedAt    int64  `json:"createdAt" gorm:"column:created_at"`       // 创建时间
	Type         string `json:"type" gorm:"column:type"`                  // 转发方式 SMS/EMAIL/SMSC
	Target       string `json:"target" gorm:"column:target"`              // 发送目标用户
	Result       string `json:"result" gorm:"column:result"`              // 发送结果
}

// TableName 表名称
func (*AlarmForwardLog) TableName() string {
	return "alarm_forward_log"
}

// AlarmForwardLogQuery 告警转发日志数据查询参数结构体
type AlarmForwardLogQuery struct {
	NeType    string `json:"neType" form:"neType"`       // 网元类型
	NeID      string `json:"neId" form:"neId"`           // 网元ID
	BeginTime int64  `json:"beginTime" form:"beginTime"` // 开始时间
	EndTime   int64  `json:"endTime" form:"endTime"`
	SortField string `json:"sortField" form:"sortField" binding:"omitempty,oneof=event_time id"` // 排序字段，填写结果字段
	SortOrder string `json:"sortOrder" form:"sortOrder" binding:"omitempty,oneof=asc desc"`      // 排序升降序，asc desc
	PageNum   int64  `json:"pageNum" form:"pageNum" binding:"required"`
	PageSize  int64  `json:"pageSize" form:"pageSize" binding:"required"`
}
