init project portal web
This commit is contained in:
49
lib/helper/pagination/index.ts
Normal file
49
lib/helper/pagination/index.ts
Normal file
@ -0,0 +1,49 @@
|
||||
interface Props<T> {
|
||||
currentPage: number
|
||||
totalPages: number
|
||||
pageSize: number
|
||||
totalElements: number;
|
||||
content: T
|
||||
}
|
||||
|
||||
export default class PaginationModel<T> {
|
||||
private currentPage: number;
|
||||
private totalPages: number;
|
||||
private pageSize: number;
|
||||
private totalElements: number;
|
||||
private content: T;
|
||||
|
||||
constructor({
|
||||
currentPage,
|
||||
totalPages,
|
||||
pageSize,
|
||||
totalElements,
|
||||
content,
|
||||
}: Props<T>) {
|
||||
this.currentPage = currentPage
|
||||
this.totalPages = totalPages
|
||||
this.pageSize = pageSize
|
||||
this.totalElements = totalElements
|
||||
this.content = content
|
||||
}
|
||||
|
||||
getCurrentPage = () => this.currentPage
|
||||
|
||||
getTotalPages = () => this.totalPages
|
||||
|
||||
getPageSize = () => this.pageSize
|
||||
|
||||
getTotalElements = () => this.totalElements
|
||||
|
||||
getContent = () => this.content
|
||||
|
||||
static initialValue = () => {
|
||||
return new PaginationModel<any>({
|
||||
currentPage: 0,
|
||||
totalPages: 0,
|
||||
pageSize: 0,
|
||||
totalElements: 0,
|
||||
content: [],
|
||||
})
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user