model.go 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. package yb_road_video
  2. import (
  3. "hongze/hongze_yb/global"
  4. )
  5. func (r *YbRoadVideo) Create() (err error) {
  6. err = global.DEFAULT_MYSQL.Create(r).Error
  7. return
  8. }
  9. func (r *YbRoadVideo) Update(updateCols []string) (err error) {
  10. err = global.DEFAULT_MYSQL.Model(r).Select(updateCols).Updates(*r).Error
  11. return
  12. }
  13. // GetPageListByCondition 分页获取视频列表
  14. func GetPageListByCondition(where string, par []interface{}, pageIndex, pageSize int) (list []*YbRoadVideo, total int64, err error) {
  15. offset := (pageIndex - 1) * pageSize
  16. err = global.DEFAULT_MYSQL.Model(YbRoadVideo{}).
  17. Where(where, par...).Count(&total).Error
  18. if err != nil {
  19. return
  20. }
  21. err = global.DEFAULT_MYSQL.Model(YbRoadVideo{}).
  22. Where(where, par...).
  23. Offset(offset).Limit(pageSize).
  24. Order("publish_time DESC").Scan(&list).Error
  25. return
  26. }
  27. // GetItemById 主键获取已发布的视频
  28. func GetItemById(videoId int) (item *YbRoadVideo, err error) {
  29. err = global.DEFAULT_MYSQL.Model(YbRoadVideo{}).
  30. Where("road_video_id = ? AND is_deleted = 0 AND publish_state = 1", videoId).
  31. First(&item).Error
  32. return
  33. }