forked from Hithomelabs/CFTunnels
Add PaginationRequest DTO for /requests endpoint
This commit is contained in:
parent
6c496c8c27
commit
7e3882febf
@ -10,6 +10,7 @@ import com.hithomelabs.CFTunnels.Entity.User;
|
|||||||
import com.hithomelabs.CFTunnels.Headers.AuthKeyEmailHeader;
|
import com.hithomelabs.CFTunnels.Headers.AuthKeyEmailHeader;
|
||||||
import com.hithomelabs.CFTunnels.Models.Config;
|
import com.hithomelabs.CFTunnels.Models.Config;
|
||||||
import com.hithomelabs.CFTunnels.Models.Ingress;
|
import com.hithomelabs.CFTunnels.Models.Ingress;
|
||||||
|
import com.hithomelabs.CFTunnels.Models.PaginationRequest;
|
||||||
import com.hithomelabs.CFTunnels.Models.TunnelResponse;
|
import com.hithomelabs.CFTunnels.Models.TunnelResponse;
|
||||||
import com.hithomelabs.CFTunnels.Models.TunnelsResponse;
|
import com.hithomelabs.CFTunnels.Models.TunnelsResponse;
|
||||||
import com.hithomelabs.CFTunnels.Repositories.UserRepository;
|
import com.hithomelabs.CFTunnels.Repositories.UserRepository;
|
||||||
@ -22,7 +23,9 @@ import org.springframework.beans.factory.annotation.Value;
|
|||||||
import org.springframework.boot.web.servlet.error.ErrorController;
|
import org.springframework.boot.web.servlet.error.ErrorController;
|
||||||
import org.springframework.dao.DataAccessException;
|
import org.springframework.dao.DataAccessException;
|
||||||
import org.springframework.data.domain.Page;
|
import org.springframework.data.domain.Page;
|
||||||
|
import org.springframework.data.domain.PageRequest;
|
||||||
import org.springframework.data.domain.Pageable;
|
import org.springframework.data.domain.Pageable;
|
||||||
|
import org.springframework.data.domain.Sort;
|
||||||
import org.springframework.http.*;
|
import org.springframework.http.*;
|
||||||
import org.springframework.security.access.prepost.PreAuthorize;
|
import org.springframework.security.access.prepost.PreAuthorize;
|
||||||
import org.springframework.security.core.GrantedAuthority;
|
import org.springframework.security.core.GrantedAuthority;
|
||||||
@ -111,8 +114,12 @@ public class TunnelController implements ErrorController {
|
|||||||
@GetMapping("/requests")
|
@GetMapping("/requests")
|
||||||
public ResponseEntity<Map<String,Object>> getAllRequests(
|
public ResponseEntity<Map<String,Object>> getAllRequests(
|
||||||
@RequestParam(required = false) Request.RequestStatus status,
|
@RequestParam(required = false) Request.RequestStatus status,
|
||||||
Pageable pageable) {
|
@ModelAttribute PaginationRequest paginationRequest) {
|
||||||
try {
|
try {
|
||||||
|
Sort sort = paginationRequest.getSort() != null && paginationRequest.getSort().length > 0
|
||||||
|
? Sort.by(paginationRequest.getSort())
|
||||||
|
: Sort.by("id");
|
||||||
|
Pageable pageable = PageRequest.of(paginationRequest.getPage(), paginationRequest.getSize(), sort);
|
||||||
Page<Request> requests = mappingRequestService.getAllRequests(status, pageable);
|
Page<Request> requests = mappingRequestService.getAllRequests(status, pageable);
|
||||||
Map<String, Object> jsonResponse = new HashMap<>();
|
Map<String, Object> jsonResponse = new HashMap<>();
|
||||||
jsonResponse.put("status", "success");
|
jsonResponse.put("status", "success");
|
||||||
|
|||||||
@ -0,0 +1,14 @@
|
|||||||
|
package com.hithomelabs.CFTunnels.Models;
|
||||||
|
|
||||||
|
import lombok.AllArgsConstructor;
|
||||||
|
import lombok.Data;
|
||||||
|
import lombok.NoArgsConstructor;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
@NoArgsConstructor
|
||||||
|
@AllArgsConstructor
|
||||||
|
public class PaginationRequest {
|
||||||
|
private int page = 0;
|
||||||
|
private int size = 10;
|
||||||
|
private String[] sort = {"id"};
|
||||||
|
}
|
||||||
Loading…
Reference in New Issue
Block a user