Estoy trabajando en un problema en el que tengo que hacer la paginación de dos listas de datos.
ex. código psudo
int recordsPerPage = 100; // this is dynamic int currentPage = 1; // this is dynamic array users = [...]; //length = 55 array admins = [....]; //length = 455Quiero una paginación como esta.
perpage = 100; user_size = 55; admin_zise = 455; total_recors = 510 // 455+55 total_pages = Maths.ceil(total_recors/per_page) //5.1 // 6 50 per entity // 100/2 // records will be sent like this. page 1> 50 user - 50 admin page 2> 5 user - 95 admin page 3> 0 user - 100 admin page 4> 0 user - 100 admin page 5> 0 user - 100 admin page 6> 0 user - 10 adminNo soy capaz de averiguar la lógica para este caso.
Quiero implementar esto es Java (arranque de primavera).
No estoy muy seguro de lo que está preguntando, pero esta podría ser casi su pregunta:
@Data class PaginationResponse { private List<Object> data; private int sizePerPage; private int total; } PaginationResponse getResponse(int page, int sizePerPage) { List<Object> object = new ArrayList<>(); ObjectA[] arr_a = {}; ObjectB[] arr_b = {}; object.addAll(Arrays.asList(arr_a)); object.addAll(Arrays.asList(arr_b)); PaginationResponse response = new PaginationResponse(); int start = (page - 1) * sizePerPage; response.setData(object.subList(start, start + sizePerPage)); response.setSizePerPage(sizePerPage); response.setTotal(object.size()); return response; }