package models type SdkChanSet struct { SdkType string `gorm:"column:sdk_type;primary_key" json:"sdk_type"` ChanNum int `gorm:"column:chan_num;default:16" json:"chan_num"` ConfidenceInc int `gorm:"column:confidenceInc;default:5" json:"confidenceInc"` MinMovePos int `gorm:"column:minMovePos;default:1" json:"minMovePos"` } func (SdkChanSet) TableName() string { return "sdk_chan_set" } func (scs *SdkChanSet) FindAll() (list []SdkChanSet,err error) { if err := db.Table(scs.TableName()).Find(&list).Error; err != nil { return []SdkChanSet{}, err } return list, nil } func (scs *SdkChanSet) SelectBySdkType(sdkType string) (exist bool,model SdkChanSet){ dbSelect := db.Table(scs.TableName()).Where("sdk_type=?",sdkType).First(&model) if dbSelect.Error != nil || dbSelect.RowsAffected == 0 { return false, model } return dbSelect.RecordNotFound(), model } func (scs *SdkChanSet) Insert() (err error) { tx := db.Table(scs.TableName()).Begin() if tx.Error != nil { return tx.Error } if err := tx.Create(&scs).Error; err != nil { tx.Rollback() return err } err =tx.Commit().Error if err == nil{ return nil } return err } func (scs *SdkChanSet) Update() (b bool, err error) { result :=db.Exec("update ? set chan_num=? where sdk_type=?",scs.TableName(), scs.ChanNum, scs.SdkType) if result.Error != nil { return false, err } return result.RowsAffected>0,nil } func (scs *SdkChanSet) Delete(sdkType string) bool { updateResult := db.Exec("delete from ? where sdk_type=?", scs.TableName(),sdkType) if updateResult.Error != nil || updateResult.RowsAffected == 0 { return false } return true }