package models //摄像机组 type CameraGroup struct { Id string `gorm:"primary_key;column:id" json:"id"` GroupName string `gorm:"column:groupName" json:"groupName"` //分组id CameraIds string `gorm:"column:cameraIds" json:"cameraIds"` //摄像机列表 } func (CameraGroup) TableName() string { return "camera_group" } func (cg *CameraGroup) FindAll() (arr []CameraGroup) { if err := db.Table(cg.TableName()).Scan(&arr).Error;err !=nil { return nil } return arr } func (cg *CameraGroup) Insert() (bool,error) { if err = db.Table(cg.TableName()).Create(&cg).Error; err != nil { return false, err } return true, nil } func (cg *CameraGroup) SelectById(cameraId string) (rows int64, err error) { dbselect := db.Where("id = ?", cameraId).First(&cg) if dbselect.Error != nil || dbselect.RowsAffected == 0 { return 0, err } return dbselect.RowsAffected, nil } func (cg *CameraGroup) Update() (bool,error) { result := db.Table(cg.TableName()).Where("id=?",cg.Id).Save(&cg) if result.Error != nil { return false, err } return result.RowsAffected > 0, nil } func (cg *CameraGroup) Delete(id string) bool { if err := db.Table(cg.TableName()).Where("id=?",id).Delete(&CameraGroup{}).Error; err != nil { var cpr CameraPolygonRelation cpr.DeleteByGroupId(id) return false } return true }