You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
34 lines
623 B
34 lines
623 B
package bean
|
|
|
|
import "img/app/config"
|
|
|
|
type Page struct {
|
|
Page int `json:"page"` // 分页
|
|
Limit int `json:"limit"` // 分页大小
|
|
}
|
|
|
|
// @Title 获取页数
|
|
func (p *Page) GetPage() int {
|
|
if p.Page > 0 {
|
|
return p.Page
|
|
}
|
|
return 1
|
|
}
|
|
|
|
// @Title 获取分页大小
|
|
func (p *Page) GetLimit() int {
|
|
if p.Limit >= config.Config.MinLimit && p.Limit < config.Config.MaxLimit {
|
|
return p.Limit
|
|
}
|
|
return config.Config.DefaultLimit
|
|
}
|
|
|
|
// @Title 获取开始坐标
|
|
func (p *Page) GetStart() int {
|
|
return (p.GetPage() - 1) * p.GetLimit()
|
|
}
|
|
|
|
func (p *Page) HasPage(total int64) bool {
|
|
return total > int64(p.GetStart())
|
|
}
|