package models import ( "errors" "github.com/jinzhu/gorm" ) // Protocal 产品协议(数据点) type Protocal struct { gorm.Model RecordId string `gorm:"column:record_id;size:32;index"` Name string `gorm:"size:30;not null;"` //名称 Label string `gorm:"size:20;not null;"` // 标签 Type int //读写类型 ReadWriteType int //数据类型 UnitSymbol string //单位 Description string //备注 ProductID uint //所属产品 SensorID uint //所属传感器 } // Validate 验证 func (a *Protocal) Validate() error { if a.Name == "" || a.Label == "" { return errors.New("非法参数[Name, Label]") } else if a.ProductID == 0 { return errors.New("缺少产品信息") } else if a.SensorID == 0 { return errors.New("缺少传感器信息") } return nil }