package sqlbuilder import ( "fmt" "testing" _ "git.botann.com/lijun/sql-builder/conf" ) type Page struct { Total int `json:"total" form:"total"` PageIndex int `json:"pageIndex" form:"pageIndex"` PageSize int `json:"pageSize" form:"pageSize"` Data interface{} `json:"data" form:"data"` } func (p *Page) Init() { if p.PageIndex == 0 { p.SetPageIndex(1) } if p.PageSize == 0 { p.SetPageSize(10) } } func (p *Page) GetPageIndex() int { return p.PageIndex } func (p *Page) GetPageSize() int { return p.PageSize } func (p *Page) GetTotal() int { return p.Total } func (p *Page) SetTotal(total int) { p.Total = total } func (p *Page) SetPageIndex(pageIndex int) { p.PageIndex = pageIndex } func (p *Page) SetPageSize(pageSize int) { p.PageSize = pageSize } func TestMain(m *testing.M) { var data []struct { Autoseq int Name string } var page Page sql_builder := DefaultSqlBuilder() ids := []int{1, 2, 3, 4, 5} sql_builder.Sql = `select autoseq,name from tsysuser where del = 0 @c order by @o` sql_builder.Conditions("autoseq in (?)", ids) sql_builder.Orders("autoseq desc") page.Data = &data err := sql_builder.PaginateBySql(page.Data, &page) fmt.Println(err, data) }