package yb import ( "github.com/beego/beego/v2/client/orm" "time" ) // Speaker 活动表 type Speaker struct { SpeakerId int `orm:"column(speaker_id);pk" description:"主讲人ID"` SpeakerName string `description:"主讲人"` SpeakerHeadPic string `description:"主讲人头像"` SpeakerBackgroundPic string `description:"主讲人背景图"` CreateTime time.Time `description:"创建时间"` ModifyTime time.Time `description:"更新时间"` } // TableName 表名变更 func (speaker *Speaker) TableName() string { return "yb_speaker" } // AddSpeaker 新增主讲人 func AddSpeaker(item *Speaker) (err error) { o := orm.NewOrm() lastId, err := o.Insert(item) item.SpeakerId = int(lastId) return } // UpdateReport 更新主讲人 func (speaker *Speaker) Update(cols []string) (err error) { o := orm.NewOrm() _, err = o.Update(speaker, cols...) return } // GetSpeakerById 根据主键获取主讲人 func GetSpeakerById(id int) (item *Speaker, err error) { o := orm.NewOrm() sql := `SELECT * FROM yb_speaker WHERE speaker_id = ? LIMIT 1` err = o.Raw(sql, id).QueryRow(&item) return } // GetSpeakerByName 根据姓名获取主讲人 func GetSpeakerByName(name string) (item *Speaker, err error) { o := orm.NewOrm() sql := `SELECT * FROM yb_speaker WHERE speaker_name = ? LIMIT 1` err = o.Raw(sql, name).QueryRow(&item) return } // GetAllSpeakerList 获取所有主讲人列表数据 func GetAllSpeakerList() (list []*Speaker, err error) { o := orm.NewOrm() sql := "select * from yb_speaker order by speaker_id desc " _, err = o.Raw(sql).QueryRows(&list) return } // GetSpeakerPageList 获取主讲人列表-分页 func GetSpeakerPageList(cond string, pars []interface{}, startSize, pageSize int) (total int, list []*Speaker, err error) { o := orm.NewOrm() sql := `SELECT * FROM yb_speaker WHERE 1=1 ` if cond != `` { sql += cond } sql += ` ORDER BY speaker_id DESC` totalSql := `SELECT COUNT(1) total FROM (` + sql + `) z` if err = o.Raw(totalSql, pars).QueryRow(&total); err != nil { return } sql += ` LIMIT ?,?` _, err = o.Raw(sql, pars, startSize, pageSize).QueryRows(&list) return } // DelSpeaker 删除主讲人 func DelSpeaker(speakerId int) (err error) { o := orm.NewOrm() sql := `DELETE FROM yb_speaker WHERE speaker_id = ? LIMIT 1` _, err = o.Raw(sql, speakerId).Exec() return }