From 88c11a30600a1c3678095e483df58a89d32bad05 Mon Sep 17 00:00:00 2001
From: evilimkova <evilimkova@onpointserv.com>
Date: Tue, 4 Apr 2023 17:00:44 +0200
Subject: [PATCH] FindAll - Pageable

---
 .../modulecertificate/service/CertificateController.java  | 6 ++++--
 .../modulecertificate/service/CertificateFacade.java      | 8 ++++----
 .../modulecertificate/service/CertificateMapper.java      | 6 +++---
 3 files changed, 11 insertions(+), 9 deletions(-)

diff --git a/application/module-certificate/src/main/java/org/fuseri/modulecertificate/service/CertificateController.java b/application/module-certificate/src/main/java/org/fuseri/modulecertificate/service/CertificateController.java
index 0eeffc07..c9b263f9 100644
--- a/application/module-certificate/src/main/java/org/fuseri/modulecertificate/service/CertificateController.java
+++ b/application/module-certificate/src/main/java/org/fuseri/modulecertificate/service/CertificateController.java
@@ -6,6 +6,8 @@ import org.fuseri.model.dto.certificate.CertificateDto;
 import org.fuseri.model.dto.certificate.CertificateSimpleDto;
 import org.fuseri.model.dto.common.Result;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.data.domain.Page;
+import org.springframework.data.domain.Pageable;
 import org.springframework.web.bind.annotation.*;
 
 import java.util.List;
@@ -91,7 +93,7 @@ public class CertificateController {
      * @return a Result object containing a list of CertificateDto objects and pagination information
      */
     @GetMapping("/findAll")
-    public Result<CertificateDto> findAllCertificates(@RequestParam int page) {
-        return new Result<>();
+    public Page<CertificateSimpleDto> findAllCertificates(Pageable pageable) {
+        return certificateFacade.findAll(pageable);
     }
 }
diff --git a/application/module-certificate/src/main/java/org/fuseri/modulecertificate/service/CertificateFacade.java b/application/module-certificate/src/main/java/org/fuseri/modulecertificate/service/CertificateFacade.java
index 53c25d1b..c57f97ae 100644
--- a/application/module-certificate/src/main/java/org/fuseri/modulecertificate/service/CertificateFacade.java
+++ b/application/module-certificate/src/main/java/org/fuseri/modulecertificate/service/CertificateFacade.java
@@ -49,10 +49,10 @@ public class CertificateFacade {
         return certificateMapper.mapToList(certificateService.findByUserIdAndCourseId(userId, courseId));
     }
 
-    //@Transactional(readOnly = true)
-    //public Page<CertificateDto> findAll(Pageable pageable) {
-        //return certificateMapper.mapToPageDto(certificateService.findAll(pageable));
-    //}
+    @Transactional(readOnly = true)
+    public Page<CertificateSimpleDto> findAll(Pageable pageable) {
+        return certificateMapper.mapToPageDto(certificateService.findAll(pageable));
+    }
 
     @Transactional
     public void deleteCertificate(Long certificateId) {
diff --git a/application/module-certificate/src/main/java/org/fuseri/modulecertificate/service/CertificateMapper.java b/application/module-certificate/src/main/java/org/fuseri/modulecertificate/service/CertificateMapper.java
index 024b8c09..f6738c44 100644
--- a/application/module-certificate/src/main/java/org/fuseri/modulecertificate/service/CertificateMapper.java
+++ b/application/module-certificate/src/main/java/org/fuseri/modulecertificate/service/CertificateMapper.java
@@ -44,7 +44,7 @@ public interface CertificateMapper {
 
     List<CertificateSimpleDto> mapToList(List<Certificate> certificates);
 
-    //default Page<CertificateDto> mapToPageDto(Page<Certificate> certificates) {
-        //return new PageImpl<>(mapToList(certificates.getContent()), certificates.getPageable(), certificates.getTotalPages());
-    //}
+    default Page<CertificateSimpleDto> mapToPageDto(Page<Certificate> certificates) {
+        return new PageImpl<>(mapToList(certificates.getContent()), certificates.getPageable(), certificates.getTotalPages());
+    }
 }
-- 
GitLab