Fix generatePageNavigation for total count of records
This commit is contained in:
parent
13ddb6025e
commit
b469df74ac
@ -268,6 +268,22 @@ func generatePageNavigation(ctx context.Context, iter dal.Iterator, mod *types.M
|
||||
// Sorting
|
||||
out.Sort = dal.IteratorSorting(iter)
|
||||
|
||||
// No need to generate prev/next cursor
|
||||
// if limit is not defined and set is empty
|
||||
if p.Limit > 0 && len(set) > 0 {
|
||||
// PrevPage
|
||||
out.PrevPage, err = dal.PreLoadCursor(ctx, iter, 1, true, first)
|
||||
if err != nil {
|
||||
return
|
||||
}
|
||||
|
||||
// NextPage
|
||||
out.NextPage, err = dal.PreLoadCursor(ctx, iter, 1, false, last)
|
||||
if err != nil {
|
||||
return
|
||||
}
|
||||
}
|
||||
|
||||
if p.IncTotal || p.IncPageNavigation {
|
||||
// For the first page nav
|
||||
err = generatePage(last)
|
||||
@ -296,6 +312,7 @@ func generatePageNavigation(ctx context.Context, iter dal.Iterator, mod *types.M
|
||||
|
||||
interLoop++
|
||||
total++
|
||||
last = rec
|
||||
return generatePage(rec)
|
||||
})
|
||||
if err != nil {
|
||||
@ -308,22 +325,6 @@ func generatePageNavigation(ctx context.Context, iter dal.Iterator, mod *types.M
|
||||
}
|
||||
}
|
||||
|
||||
// No need to generate prev/next cursor
|
||||
// if limit is not defined and set is empty
|
||||
if p.Limit > 0 && len(set) > 0 {
|
||||
// PrevPage
|
||||
out.PrevPage, err = dal.PreLoadCursor(ctx, iter, 1, true, first)
|
||||
if err != nil {
|
||||
return
|
||||
}
|
||||
|
||||
// NextPage
|
||||
out.NextPage, err = dal.PreLoadCursor(ctx, iter, 1, false, last)
|
||||
if err != nil {
|
||||
return
|
||||
}
|
||||
}
|
||||
|
||||
// Total
|
||||
if p.IncTotal {
|
||||
out.Total = total
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user