Skip to content

Commit

Permalink
Feat : ajout page & size sur controller récupération liste demandes
Browse files Browse the repository at this point in the history
  • Loading branch information
pierre-maraval committed May 3, 2024
1 parent affb161 commit 57dbf76
Show file tree
Hide file tree
Showing 11 changed files with 90 additions and 78 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
import fr.abes.item.core.configuration.ItemConfiguration;
import fr.abes.item.core.entities.item.DemandeExemp;
import fr.abes.item.core.entities.item.TypeExemp;
import org.springframework.data.domain.Pageable;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.query.Param;
Expand All @@ -27,19 +28,19 @@ public interface IDemandeExempDao extends JpaRepository<DemandeExemp, Integer> {
TypeExemp getTypeExemp(@Param("numDemande") Integer numDemande);

@Query("select d from DemandeExemp d where d.iln = :iln and d.etatDemande.numEtat not in (9, 2, 10)")
List<DemandeExemp> getActiveDemandesExempForUserExceptedPreparedStatus(@Param("iln") String iln);
List<DemandeExemp> getActiveDemandesExempForUserExceptedPreparedStatus(@Param("iln") String iln, Pageable pageRequest);

@Query("select d from DemandeExemp d where d.iln = :iln and d.etatDemande.numEtat not in (9, 10)")
List<DemandeExemp> getAllActiveDemandesExempForAdmin(@Param("iln") String iln);
List<DemandeExemp> getAllActiveDemandesExempForAdmin(@Param("iln") String iln, Pageable pageRequest);

@Query("select d from DemandeExemp d where d.etatDemande.numEtat not in (9, 10)")
List<DemandeExemp> getAllActiveDemandesExempForAdminExtended();
List<DemandeExemp> getAllActiveDemandesExempForAdminExtended(Pageable pageRequest);

@Query("select d from DemandeExemp d where d.iln = :iln and d.etatDemande.numEtat = 9")
List<DemandeExemp> getAllArchivedDemandesExemp(@Param("iln") String iln);
List<DemandeExemp> getAllArchivedDemandesExemp(@Param("iln") String iln, Pageable pageRequest);

@Query("select d from DemandeExemp d where d.etatDemande.numEtat = 9")
List<DemandeExemp> getAllArchivedDemandesExempExtended();
List<DemandeExemp> getAllArchivedDemandesExempExtended(Pageable pageRequest);

//Même si l'ide signale la requête elle est correcte, demandes en statut terminé avec une ancienneté de plus de 90 jours sur la dernière date de modification récupérées
@Query("select d from DemandeExemp d where d.etatDemande.numEtat = 7 and (day(current_date) - day(d.dateModification)) > 90 order by d.dateModification asc")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@

import fr.abes.item.core.configuration.ItemConfiguration;
import fr.abes.item.core.entities.item.DemandeModif;
import org.springframework.data.domain.Pageable;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.query.Param;
Expand All @@ -16,25 +17,26 @@
@ItemConfiguration
public interface IDemandeModifDao extends JpaRepository<DemandeModif, Integer> {
/**
* @param iln l'établissement auquel appartient la bibliothèque, une bibliothèque pouvant appartenir à
* plusieurs établissements
* @param iln l'établissement auquel appartient la bibliothèque, une bibliothèque pouvant appartenir à
* plusieurs établissements
* @param pageRequest
* @return les demandes appartenant à l'iln de l'utilisateur (un iln comprenant plusieurs rcr)
* et qui sont ni dans l'état préparé, ni dans l'état archivé
* et qui sont ni dans l'état préparé, ni dans l'état archivé
*/
@Query("select d from DemandeModif d where d.iln = :iln and d.etatDemande.numEtat not in (9, 2, 10)")
List<DemandeModif> getActiveDemandesModifForUserExceptedPreparedStatus(@Param("iln") String iln);
List<DemandeModif> getActiveDemandesModifForUserExceptedPreparedStatus(@Param("iln") String iln, Pageable pageRequest);

@Query("select d from DemandeModif d where d.iln = :iln and d.etatDemande.numEtat not in (9, 10)")
List<DemandeModif> getAllActiveDemandesModifForAdmin(@Param("iln") String iln);
List<DemandeModif> getAllActiveDemandesModifForAdmin(@Param("iln") String iln, Pageable pageRequest);

@Query("select d from DemandeModif d where d.etatDemande.numEtat not in (9, 2, 10)")
List<DemandeModif> getAllActiveDemandesModifForAdminExtended();
List<DemandeModif> getAllActiveDemandesModifForAdminExtended(Pageable pageRequest);

@Query("select d from DemandeModif d where d.iln = :iln and d.etatDemande.numEtat = 9")
List<DemandeModif> getAllArchivedDemandesModif(@Param("iln") String iln);
List<DemandeModif> getAllArchivedDemandesModif(@Param("iln") String iln, Pageable pageRequest);

@Query("select d from DemandeModif d where d.etatDemande.numEtat = 9")
List<DemandeModif> getAllArchivedDemandesModifExtended();
List<DemandeModif> getAllArchivedDemandesModifExtended(Pageable pageRequest);

@Query("select d from DemandeModif d where d.etatDemande.numEtat = 5 order by d.dateModification asc")
List<DemandeModif> getNextDemandeToProceed();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@

import fr.abes.item.core.configuration.ItemConfiguration;
import fr.abes.item.core.entities.item.DemandeRecouv;
import org.springframework.data.domain.Pageable;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.query.Param;
Expand All @@ -22,19 +23,19 @@ public interface IDemandeRecouvDao extends JpaRepository<DemandeRecouv, Integer>
List<DemandeRecouv> getNextDemandeToProceedWithoutDAT();

@Query("select d from DemandeRecouv d where d.iln = :iln and d.etatDemande.numEtat not in (9, 10)")
List<DemandeRecouv> getActiveDemandesRecouvForUserExceptedPreparedStatus(@Param("iln") String iln);
List<DemandeRecouv> getActiveDemandesRecouvForUserExceptedPreparedStatus(@Param("iln") String iln, Pageable pageRequest);

@Query("select d from DemandeRecouv d where d.iln = :iln and d.etatDemande.numEtat not in (9, 10)")
List<DemandeRecouv> getAllActiveDemandesRecouvForAdmin(@Param("iln") String iln);
List<DemandeRecouv> getAllActiveDemandesRecouvForAdmin(@Param("iln") String iln, Pageable pageRequest);

@Query("select d from DemandeRecouv d where d.etatDemande.numEtat not in (9, 10)")
List<DemandeRecouv> getAllActiveDemandesRecouvForAdminExtended();
List<DemandeRecouv> getAllActiveDemandesRecouvForAdminExtended(Pageable pageRequest);

@Query("select d from DemandeRecouv d where d.iln = :iln and d.etatDemande.numEtat = 9")
List<DemandeRecouv> getAllArchivedDemandesRecouv(@Param("iln") String iln);
List<DemandeRecouv> getAllArchivedDemandesRecouv(@Param("iln") String iln, Pageable pageRequest);

@Query("select d from DemandeRecouv d where d.etatDemande.numEtat = 9")
List<DemandeRecouv> getAllArchivedDemandesRecouvExtended();
List<DemandeRecouv> getAllArchivedDemandesRecouvExtended(Pageable pageRequest);

@Query("select d from DemandeRecouv d where d.etatDemande.numEtat = 10 order by d.dateModification asc")
List<DemandeRecouv> getListDemandesToClean();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ public interface IDemandeService {

Demande closeDemande(Demande demande) throws DemandeCheckingException;

List<Demande> getActiveDemandesForUser(String iln);
List<Demande> getActiveDemandesForUser(String iln, int page, int size);

Demande getIdNextDemandeToProceed(int minHour, int maxHour);

Expand All @@ -42,13 +42,13 @@ public interface IDemandeService {

Demande changeStateCanceled(Demande demande, int etatDemande);

List<Demande> getAllArchivedDemandes(String iln);
List<Demande> getAllArchivedDemandes(String iln, int page, int size);

List<Demande> getAllArchivedDemandesAllIln();
List<Demande> getAllArchivedDemandesAllIln(int page, int size);

List<Demande> getAllActiveDemandesForAdminExtended();
List<Demande> getAllActiveDemandesForAdminExtended(int page, int size);

List<Demande> getAllActiveDemandesForAdmin(String iln);
List<Demande> getAllActiveDemandesForAdmin(String iln, int page, int size);

Demande returnState(Integer etape, Demande demande) throws DemandeCheckingException;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@
import lombok.Getter;
import lombok.ToString;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.data.domain.PageRequest;
import org.springframework.stereotype.Service;
import org.springframework.web.multipart.MultipartFile;

Expand Down Expand Up @@ -86,8 +87,8 @@ public List<Demande> findAll() {
}

@Override
public List<Demande> getAllActiveDemandesForAdmin(String iln) {
List<DemandeExemp> demandeExemps = demandeExempDao.getAllActiveDemandesExempForAdmin(iln);
public List<Demande> getAllActiveDemandesForAdmin(String iln, int page, int size) {
List<DemandeExemp> demandeExemps = demandeExempDao.getAllActiveDemandesExempForAdmin(iln, PageRequest.of(page, size));
List<Demande> demandeList = new ArrayList<>(demandeExemps);
//TODO 1 chopper les rcr en une iste string, 2 dao xml pour recuperer la liste des libelle avec un tableau mappé, 3 alimenter les entites LIB iteration

Expand All @@ -96,8 +97,8 @@ public List<Demande> getAllActiveDemandesForAdmin(String iln) {
}

@Override
public List<Demande> getAllActiveDemandesForAdminExtended() {
List<DemandeExemp> demandeExemp = demandeExempDao.getAllActiveDemandesExempForAdminExtended();
public List<Demande> getAllActiveDemandesForAdminExtended(int page, int size) {
List<DemandeExemp> demandeExemp = demandeExempDao.getAllActiveDemandesExempForAdminExtended(PageRequest.of(page, size));
List<Demande> demandeList = new ArrayList<>(demandeExemp);
setIlnShortNameOnList(demandeList);
return demandeList;
Expand Down Expand Up @@ -130,12 +131,14 @@ public void deleteById(Integer id) {
/**
* Méthode permettant de chercher les demandeModifs d'un utilisateur
*
* @param iln numéro de l'utilisateur propriétaire des demandeModifs
* @param iln numéro de l'utilisateur propriétaire des demandeModifs
* @param page
* @param size
* @return liste des demandeModifs de l'utilisateur (hors demandeModifs archivées)
*/
@Override
public List<Demande> getActiveDemandesForUser(String iln) {
List<DemandeExemp> demandeExemps = demandeExempDao.getActiveDemandesExempForUserExceptedPreparedStatus(iln);
public List<Demande> getActiveDemandesForUser(String iln, int page, int size) {
List<DemandeExemp> demandeExemps = demandeExempDao.getActiveDemandesExempForUserExceptedPreparedStatus(iln, PageRequest.of(page, size));
List<Demande> listeDemande = new ArrayList<>(demandeExemps);
setIlnShortNameOnList(listeDemande);
return listeDemande;
Expand Down Expand Up @@ -676,16 +679,16 @@ public String getInfoHeaderFichierResultat(Demande demande, LocalDateTime dateDe
}

@Override
public List<Demande> getAllArchivedDemandes(String iln) {
List<DemandeExemp> demandeExemp = demandeExempDao.getAllArchivedDemandesExemp(iln);
public List<Demande> getAllArchivedDemandes(String iln, int page, int size) {
List<DemandeExemp> demandeExemp = demandeExempDao.getAllArchivedDemandesExemp(iln, PageRequest.of(page, size));
List<Demande> demandeList = new ArrayList<>(demandeExemp);
setIlnShortNameOnList(demandeList);
return demandeList;
}

@Override
public List<Demande> getAllArchivedDemandesAllIln() {
List<DemandeExemp> demandeExemp = demandeExempDao.getAllArchivedDemandesExempExtended();
public List<Demande> getAllArchivedDemandesAllIln(int page, int size) {
List<DemandeExemp> demandeExemp = demandeExempDao.getAllArchivedDemandesExempExtended(PageRequest.of(page, size));
List<Demande> demandeList = new ArrayList<>(demandeExemp);
setIlnShortNameOnList(demandeList);
return demandeList;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@
import fr.abes.item.core.utilitaire.Utilitaires;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.data.domain.PageRequest;
import org.springframework.stereotype.Service;
import org.springframework.web.multipart.MultipartFile;

Expand Down Expand Up @@ -59,8 +60,8 @@ public DemandeModifService(ILibProfileDao libProfileDao, IDemandeModifDao demand
}

@Override
public List<Demande> getAllActiveDemandesForAdminExtended() {
List<DemandeModif> demandeModif = demandeModifDao.getAllActiveDemandesModifForAdminExtended();
public List<Demande> getAllActiveDemandesForAdminExtended(int page, int size) {
List<DemandeModif> demandeModif = demandeModifDao.getAllActiveDemandesModifForAdminExtended(PageRequest.of(page, size));
List<Demande> demandeList = new ArrayList<>(demandeModif);
setIlnShortNameOnList(demandeList);
return demandeList;
Expand All @@ -70,28 +71,30 @@ public List<Demande> getAllActiveDemandesForAdminExtended() {
/**
* Méthode permettant de chercher les demandeModifs d'un utilisateur
*
* @param iln numéro de l'utilisateur propriétaire des demandeModifs
* @param iln numéro de l'utilisateur propriétaire des demandeModifs
* @param page
* @param size
* @return liste des demandeModifs de l'utilisateur (hors demandeModifs archivées)
*/
@Override
public List<Demande> getActiveDemandesForUser(String iln) {
List<DemandeModif> demandeModifs = this.demandeModifDao.getActiveDemandesModifForUserExceptedPreparedStatus(iln);
public List<Demande> getActiveDemandesForUser(String iln, int page, int size) {
List<DemandeModif> demandeModifs = this.demandeModifDao.getActiveDemandesModifForUserExceptedPreparedStatus(iln, PageRequest.of(page, size));
List<Demande> listeDemande = new ArrayList<>(demandeModifs);
setIlnShortNameOnList(listeDemande);
return listeDemande;
}

@Override
public List<Demande> getAllArchivedDemandes(String iln) {
List<DemandeModif> demandeModifs = this.demandeModifDao.getAllArchivedDemandesModif(iln);
public List<Demande> getAllArchivedDemandes(String iln, int page, int size) {
List<DemandeModif> demandeModifs = this.demandeModifDao.getAllArchivedDemandesModif(iln, PageRequest.of(page, size));
List<Demande> listeDemandes = new ArrayList<>(demandeModifs);
setIlnShortNameOnList(listeDemandes);
return listeDemandes;
}

@Override
public List<Demande> getAllArchivedDemandesAllIln() {
List<DemandeModif> demandeModifs = this.demandeModifDao.getAllArchivedDemandesModifExtended();
public List<Demande> getAllArchivedDemandesAllIln(int page, int size) {
List<DemandeModif> demandeModifs = this.demandeModifDao.getAllArchivedDemandesModifExtended(PageRequest.of(page, size));
List<Demande> listeDemandes = new ArrayList<>(demandeModifs);
setIlnShortNameOnList(listeDemandes);
return listeDemandes;
Expand Down Expand Up @@ -331,8 +334,8 @@ public Exemplaire getNoticeTraitee(Demande demande, String exemplaire, LigneFich
* @return la liste de toutes les demandeModifs
*/
@Override
public List<Demande> getAllActiveDemandesForAdmin(String iln) {
List<DemandeModif> demandeModifs = demandeModifDao.getAllActiveDemandesModifForAdmin(iln);
public List<Demande> getAllActiveDemandesForAdmin(String iln, int page, int size) {
List<DemandeModif> demandeModifs = demandeModifDao.getAllActiveDemandesModifForAdmin(iln, PageRequest.of(page, size));
List<Demande> demandeList = new ArrayList<>(demandeModifs);
setIlnShortNameOnList(demandeList);
return demandeList;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@
import fr.abes.item.core.utilitaire.Utilitaires;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.data.domain.PageRequest;
import org.springframework.stereotype.Service;
import org.springframework.web.multipart.MultipartFile;

Expand Down Expand Up @@ -61,8 +62,8 @@ public List<Demande> findAll() {
}

@Override
public List<Demande> getAllActiveDemandesForAdmin(String iln) {
List<DemandeRecouv> demandeRecouvs = demandeRecouvDao.getAllActiveDemandesRecouvForAdmin(iln);
public List<Demande> getAllActiveDemandesForAdmin(String iln, int page, int size) {
List<DemandeRecouv> demandeRecouvs = demandeRecouvDao.getAllActiveDemandesRecouvForAdmin(iln, PageRequest.of(page, size));
List<Demande> demandeList = new ArrayList<>(demandeRecouvs);
setIlnShortNameOnList(demandeList);
return demandeList;
Expand Down Expand Up @@ -98,21 +99,23 @@ public DemandeRecouv creerDemande(String rcr, Integer userNum) {

/**
* Méthode permettant de chercher les demandeModifs d'un utilisateur
* @param iln numéro de l'utilisateur propriétaire des demandeModifs
*
* @param iln numéro de l'utilisateur propriétaire des demandeModifs
* @param page
* @param size
* @return liste des demandeModifs de l'utilisateur (hors demandeModifs archivées)
*/
@Override
public List<Demande> getActiveDemandesForUser(String iln) {
List<DemandeRecouv> demandeRecouvs = this.demandeRecouvDao.getActiveDemandesRecouvForUserExceptedPreparedStatus(iln);
public List<Demande> getActiveDemandesForUser(String iln, int page, int size) {
List<DemandeRecouv> demandeRecouvs = this.demandeRecouvDao.getActiveDemandesRecouvForUserExceptedPreparedStatus(iln, PageRequest.of(page, size));
List<Demande> listeDemande = new ArrayList<>(demandeRecouvs);
setIlnShortNameOnList(listeDemande);
return listeDemande;
}

@Override
public List<Demande> getAllActiveDemandesForAdminExtended() {
List<DemandeRecouv> demandeRecouv = demandeRecouvDao.getAllActiveDemandesRecouvForAdminExtended();
public List<Demande> getAllActiveDemandesForAdminExtended(int page, int size) {
List<DemandeRecouv> demandeRecouv = demandeRecouvDao.getAllActiveDemandesRecouvForAdminExtended(PageRequest.of(page, size));
List<Demande> demandeList = new ArrayList<>(demandeRecouv);
setIlnShortNameOnList(demandeList);
return demandeList;
Expand Down Expand Up @@ -203,16 +206,16 @@ public Demande changeStateCanceled(Demande demande, int etatDemande) {
}

@Override
public List<Demande> getAllArchivedDemandes(String iln) {
List<DemandeRecouv> demandeRecouvs = this.demandeRecouvDao.getAllArchivedDemandesRecouv(iln);
public List<Demande> getAllArchivedDemandes(String iln, int page, int size) {
List<DemandeRecouv> demandeRecouvs = this.demandeRecouvDao.getAllArchivedDemandesRecouv(iln, PageRequest.of(page, size));
List<Demande> demandeList = new ArrayList<>(demandeRecouvs);
setIlnShortNameOnList(demandeList);
return demandeList;
}

@Override
public List<Demande> getAllArchivedDemandesAllIln() {
List<DemandeRecouv> demandeRecouvs = this.demandeRecouvDao.getAllArchivedDemandesRecouvExtended();
public List<Demande> getAllArchivedDemandesAllIln(int page, int size) {
List<DemandeRecouv> demandeRecouvs = this.demandeRecouvDao.getAllArchivedDemandesRecouvExtended(PageRequest.of(page, size));
List<Demande> demandeList = new ArrayList<>(demandeRecouvs);
setIlnShortNameOnList(demandeList);
return demandeList;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,12 +10,10 @@
import fr.abes.item.core.service.*;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.extension.ExtendWith;
import org.mockito.Mockito;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.boot.test.mock.mockito.MockBean;
import org.springframework.test.context.junit.jupiter.SpringExtension;

import java.text.SimpleDateFormat;
import java.util.Calendar;
Expand All @@ -24,7 +22,6 @@
import static org.mockito.Mockito.when;

@SpringBootTest(classes = {DemandeExempService.class})
@ExtendWith({SpringExtension.class})
class DemandeExempServiceTest {
@MockBean
IDemandeExempDao demandeExempDao;
Expand Down
Loading

0 comments on commit 57dbf76

Please sign in to comment.