package models import "errors" //全部下级设备(平台或摄像机)信息列表 type VssDev struct { PublicID string `gorm:"column:publicId;not null;unique;" json:"publicId"` //国标设备20位id Name string `gorm:"column:name" json:"name"` //资源名称 IP string `gorm:"column:ip" json:"ip"` //ip Port int `gorm:"column:port" json:"port"` //端口 Corp string `gorm:"column:corp" json:"corp"` //厂商 ParentId string `gorm:"column:parentId" json:"parentId"` //父节点id UserName string `gorm:"column:username" json:"username"` //设备注册用户名 Passwd string `gorm:"column:passwd" json:"passwd"` //设备注册密码 DevMode string `gorm:"column:devMode;default:'gb28181';" json:"devMode"` //设备类型 Alive int `gorm:"column:alive;default:0;" json:"alive"` //状态 0:不在线 1:在线 } func (VssDev) TableName() string { return "VSSDevTbl" } func (v *VssDev) Insert() (bool,error) { result := db.Table(v.TableName()).Create(&v) if result.Error != nil { return false, result.Error } if result.RowsAffected > 0 { return true, nil } return false, errors.New("新增失败") } func (v *VssDev) Update() (bool,error) { result := db.Table(v.TableName()).Save(&v) if result.Error != nil { return false, result.Error } if result.RowsAffected > 0 { return true, nil } return false, errors.New("更新失败") } func (v *VssDev) Exist(publicId string) bool { dbSelect := db.Table(v.TableName()).Where("publicId=?", publicId).First(&v) if dbSelect.Error != nil || dbSelect.RowsAffected ==0 { return false } return true } func (v *VssDev) FindAll() (list []VssDev, err error) { err = db.Table(v.TableName()).Find(&list).Error if err != nil { return []VssDev{}, err } return list,nil }