region.go 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. package dao
  2. import (
  3. "context"
  4. "time"
  5. "go-common/app/interface/main/tv/model"
  6. "go-common/library/database/sql"
  7. "go-common/library/log"
  8. )
  9. const (
  10. _selectSQL = "SELECT page_id,title,index_type,index_tid FROM tv_pages WHERE deleted=0 AND valid=1 ORDER BY rank ASC"
  11. _findMaxmTime = "SELECT max(mtime) FROM tv_pages WHERE deleted=0 AND valid=1"
  12. )
  13. // Regions .
  14. func (d *Dao) Regions(c context.Context) (res []*model.Region, err error) {
  15. var rows *sql.Rows
  16. if rows, err = d.db.Query(c, _selectSQL); err != nil {
  17. log.Error("d.db.Query error(%v)", err)
  18. return
  19. }
  20. defer rows.Close()
  21. for rows.Next() {
  22. r := new(model.Region)
  23. if err = rows.Scan(&r.PageID, &r.Title, &r.IndexType, &r.IndexTid); err != nil {
  24. log.Error("rows.Scan error(%v)", err)
  25. return
  26. }
  27. res = append(res, r)
  28. }
  29. if err = rows.Err(); err != nil {
  30. log.Error("rows.Err() error(%v)", err)
  31. }
  32. return
  33. }
  34. // FindLastMtime .
  35. func (d *Dao) FindLastMtime(c context.Context) (res int64, err error) {
  36. var m time.Time
  37. if err = d.db.QueryRow(c, _findMaxmTime).Scan(&m); err != nil {
  38. log.Error("d.db.QueryRow error(%v)", err)
  39. return
  40. }
  41. res = m.Unix()
  42. return
  43. }