42 lines
2.3 KiB
Go
42 lines
2.3 KiB
Go
package model
|
||
|
||
import "encoding/json"
|
||
|
||
// NeHost 网元主机表 ne_host
|
||
type NeHost struct {
|
||
HostID string `json:"hostId" gorm:"column:host_id"` // 主机主键
|
||
HostType string `json:"hostType" gorm:"column:host_type" binding:"oneof=ssh telnet redis"` // 连接类型 ssh telnet redis
|
||
GroupID string `json:"groupId" gorm:"column:group_id"` // 分组(0默认 1网元 2系统)
|
||
Title string `json:"title" gorm:"column:title"` // 标题名称
|
||
Addr string `json:"addr" gorm:"column:addr" binding:"required"` // 主机地址
|
||
Port int64 `json:"port" gorm:"column:port" binding:"required,number,max=65535,min=1"` // 端口 22 4100 6379
|
||
User string `json:"user" gorm:"column:user" binding:"required"` // 认证用户名
|
||
AuthMode string `json:"authMode" gorm:"column:auth_mode" binding:"oneof=0 1 2"` // 认证模式(0密码 1主机私钥 2已免密)
|
||
Password string `json:"password" gorm:"column:password"` // 认证密码
|
||
PrivateKey string `json:"privateKey" gorm:"column:private_key"` // 认证私钥
|
||
PassPhrase string `json:"passPhrase" gorm:"column:pass_phrase"` // 认证私钥密码
|
||
DBName string `json:"dbName" gorm:"column:db_name"` // 数据库名称
|
||
Remark string `json:"remark" gorm:"column:remark"` // 备注
|
||
CreateBy string `json:"createBy" gorm:"column:create_by"` // 创建者
|
||
CreateTime int64 `json:"createTime" gorm:"column:create_time"` // 创建时间
|
||
UpdateBy string `json:"updateBy" gorm:"column:update_by"` // 更新者
|
||
UpdateTime int64 `json:"updateTime" gorm:"column:update_time"` // 更新时间
|
||
}
|
||
|
||
// TableName 表名称
|
||
func (*NeHost) TableName() string {
|
||
return "ne_host"
|
||
}
|
||
|
||
// CopyTo 网元主机信息将josn同key名的结构体复制给另一个结构体
|
||
func (m *NeHost) CopyTo(to interface{}) error {
|
||
b, err := json.Marshal(m)
|
||
if err != nil {
|
||
return err
|
||
}
|
||
if err = json.Unmarshal(b, to); err != nil {
|
||
return err
|
||
}
|
||
return nil
|
||
}
|