32 lines
558 B
Smarty
32 lines
558 B
Smarty
package requests
|
|
|
|
type Pager struct {
|
|
Pagination `json:",inline"`
|
|
Total int64 `json:"total"`
|
|
Items interface{} `json:"items"`
|
|
}
|
|
|
|
type Pagination struct {
|
|
Page int `json:"page" form:"page"`
|
|
Limit int `json:"limit" form:"limit"`
|
|
}
|
|
|
|
func (filter *PageQueryFilter) Offset() int {
|
|
return (filter.Page - 1) * filter.Limit
|
|
}
|
|
|
|
func (filter *PageQueryFilter) Format() *PageQueryFilter {
|
|
if filter.Page <= 0 {
|
|
filter.Page = 1
|
|
}
|
|
|
|
if filter.Limit <= 0 {
|
|
filter.Limit = 10
|
|
}
|
|
|
|
if filter.Limit > 50 {
|
|
filter.Limit = 50
|
|
}
|
|
return filter
|
|
}
|