diff --git a/src/model/query/paginate/mod.rs b/src/model/query/paginate/mod.rs index c29ee51ec..78ad54d52 100644 --- a/src/model/query/paginate/mod.rs +++ b/src/model/query/paginate/mod.rs @@ -74,13 +74,13 @@ where s.parse().map_err(serde::de::Error::custom) } +use crate::controller::views::pagination::PagerMeta; + #[derive(Debug)] pub struct PageResponse { pub page: Vec, - pub total_pages: u64, - pub total_items: u64, + pub meta: PagerMeta, } - use crate::Result as LocoResult; /// Paginate function for fetching paginated data from the database. @@ -165,8 +165,12 @@ where let paginated_response = PageResponse { page, - total_pages: total_pages_and_items.number_of_pages, - total_items: total_pages_and_items.number_of_items, + meta: PagerMeta { + page: pagination_query.page, + page_size: pagination_query.page_size, + total_pages: total_pages_and_items.number_of_pages, + total_items: total_pages_and_items.number_of_items, + }, }; Ok(paginated_response) @@ -213,7 +217,11 @@ where Ok(PageResponse { page, - total_pages: total_pages_and_items.number_of_pages, - total_items: total_pages_and_items.number_of_items, + meta: PagerMeta { + page: pagination_query.page, + page_size: pagination_query.page_size, + total_pages: total_pages_and_items.number_of_pages, + total_items: total_pages_and_items.number_of_items, + }, }) }