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())
}