gorm.go 607 B

1234567891011121314151617181920212223242526272829303132
  1. package util
  2. import (
  3. "github.com/jinzhu/gorm"
  4. )
  5. // Where 根据条件是否拼接where查询语句
  6. func Where(db *gorm.DB, cond bool, query interface{}, args ...interface{}) *gorm.DB {
  7. if !cond {
  8. return db
  9. }
  10. return db.Where(query, args...)
  11. }
  12. // Order 排序拼接
  13. func Order(db *gorm.DB, sort string, reorder bool) *gorm.DB {
  14. if sort == "" {
  15. return db
  16. }
  17. return db.Order(sort, reorder)
  18. }
  19. // OffsetAndLimit 拼接offset和limit
  20. func OffsetAndLimit(db *gorm.DB, offset, limit int) *gorm.DB {
  21. if offset != 0 {
  22. db = db.Offset(offset)
  23. }
  24. if limit != 0 {
  25. db = db.Limit(limit)
  26. }
  27. return db
  28. }