1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162 |
- package response
- import "hongze/hongze_yb/utils"
- type PagingItem struct {
- IsStart bool `description:"是否首页" json:"is_start"`
- IsEnd bool `description:"是否最后一页" json:"is_end"`
- PreviousIndex int `description:"上一页页码" json:"previous_index"`
- NextIndex int `description:"下一页页码" json:"next_index"`
- CurrentIndex int `description:"当前页页码" json:"current_index"`
- Pages int `description:"总页数" json:"pages"`
- Totals int `description:"总数据量" json:"totals"`
- PageSize int `description:"每页数据条数" json:"page_size"`
- }
- func GetPaging(currentIndex,pageSize,total int)(item *PagingItem) {
- if pageSize<=0 {
- pageSize=utils.PageSize20
- }
- if currentIndex<=0 {
- currentIndex=1
- }
- item=new(PagingItem)
- item.PageSize=pageSize
- item.Totals=total
- item.CurrentIndex=currentIndex
- if total<=0 {
- item.IsStart=true
- item.IsEnd=true
- return
- }
- pages:=utils.PageCount(total,pageSize)
- item.Pages=pages
- if pages<=1 {
- item.IsStart=true
- item.IsEnd=true
- item.PreviousIndex=1
- item.NextIndex=1
- return
- }
- if pages == currentIndex {
- item.IsStart=false
- item.IsEnd=true
- item.PreviousIndex=currentIndex-1
- item.NextIndex=currentIndex
- return
- }
- if currentIndex==1 {
- item.IsStart=true
- item.IsEnd=false
- item.PreviousIndex=1
- item.NextIndex=currentIndex+1
- return
- }
- item.IsStart=false
- item.IsEnd=false
- item.PreviousIndex=currentIndex-1
- item.NextIndex=currentIndex+1
- return
- }
|