Class PlanningServices

java.lang.Object
io.vertigo.planning.agenda.services.PlanningServices
All Implemented Interfaces:
io.vertigo.core.node.component.Component, io.vertigo.core.node.component.CoreComponent

public class PlanningServices extends Object implements io.vertigo.core.node.component.Component
  • Constructor Details

    • PlanningServices

      public PlanningServices()
  • Method Details

    • createAgenda

      public Agenda createAgenda(String name)
    • createPlageHoraire

      public PlageHoraire createPlageHoraire(CreationPlageHoraireForm creationPlageHoraireForm, List<io.vertigo.datamodel.data.model.UID<Agenda>> authorizedAgeUids, int maxWeekDaysNumber)
    • duplicateSemaine

      public void duplicateSemaine(List<io.vertigo.datamodel.data.model.UID<Agenda>> ageUids, DuplicationSemaineForm duplicationSemaineForm, Map<io.vertigo.datamodel.data.model.UID<Agenda>,Integer> dureeTranchePerAgenda, List<LocalDate> joursFermes)
    • duplicateJour

      public void duplicateJour(List<io.vertigo.datamodel.data.model.UID<Agenda>> ageUids, DuplicationJourForm duplicationJourForm, Map<io.vertigo.datamodel.data.model.UID<Agenda>,Integer> dureeTranchePerAgenda, List<LocalDate> joursFermes)
    • deletePlageHoraireCascade

      public void deletePlageHoraireCascade(io.vertigo.datamodel.data.model.UID<Agenda> agendaUid, io.vertigo.datamodel.data.model.UID<PlageHoraire> plageHoraireUid)
    • closeTrancheHoraire

      public void closeTrancheHoraire(io.vertigo.datamodel.data.model.UID<Agenda> agendaUid, io.vertigo.datamodel.data.model.UID<TrancheHoraire> trancheHoraireUid)
    • getAgenda

      public Agenda getAgenda(io.vertigo.datamodel.data.model.UID<Agenda> ageUid)
    • getAgendas

      public io.vertigo.datamodel.data.model.DtList<Agenda> getAgendas(List<io.vertigo.datamodel.data.model.UID<Agenda>> ageUids)
    • getAgendasDisplay

      public io.vertigo.datamodel.data.model.DtList<AgendaDisplay> getAgendasDisplay(List<io.vertigo.datamodel.data.model.UID<Agenda>> ageUids)
    • getPlageHoraireDisplayByAgendas

      public io.vertigo.datamodel.data.model.DtList<PlageHoraireDisplay> getPlageHoraireDisplayByAgendas(List<io.vertigo.datamodel.data.model.UID<Agenda>> ageUids, LocalDate firstDate, LocalDate lastDate)
    • getDefaultPlageHoraireByAgenda

      public io.vertigo.datamodel.data.model.DtList<DefaultPlageHoraire> getDefaultPlageHoraireByAgenda(List<io.vertigo.datamodel.data.model.UID<Agenda>> ageUids, LocalDate minusMonths, LocalDate firstDate)
      Détermine les plages horaires par défaut d'un agenda. Pour l'instant en dur, plus tard pourrait analyser l'existant.
      Parameters:
      minusMonths - Nombre de mois à analyser
      firstDate - Première date de la période à simuler
      agendaUid - uid de l'agenda
      Returns:
      Liste des plages horaires par défaut
    • getPlageHoraireDisplay

      public PlageHoraireDisplay getPlageHoraireDisplay(io.vertigo.datamodel.data.model.UID<PlageHoraire> plageUid)
    • getTrancheHoraireDisplayByPlage

      public io.vertigo.datamodel.data.model.DtList<TrancheHoraireDisplay> getTrancheHoraireDisplayByPlage(io.vertigo.datamodel.data.model.UID<PlageHoraire> plageUid)
    • getReservationOrphelines

      public io.vertigo.datamodel.data.model.DtList<PlageHoraireDisplay> getReservationOrphelines(List<io.vertigo.datamodel.data.model.UID<Agenda>> ageUids, LocalDate firstDate, LocalDate lastDate)
    • getPremierJourLibrePourDuplication

      public LocalDate getPremierJourLibrePourDuplication(AgendaDisplayRange agendaRange)
    • getAvailableCreneaux

      public io.vertigo.datamodel.data.model.DtList<Creneau> getAvailableCreneaux(io.vertigo.datamodel.data.model.UID<TrancheHoraire> trhUid, int maxAvailabilities)
    • reserverCreneau

      public Optional<ReservationCreneau> reserverCreneau(io.vertigo.datamodel.data.model.UID<TrancheHoraire> trhUid)
    • reserverCreneau

      public Optional<ReservationCreneau> reserverCreneau(List<io.vertigo.datamodel.data.model.UID<Agenda>> ageUids, LocalDate startDate, LocalDate endDate, Integer startMinutes, Integer endMinutes)
    • reserverCreneauBO

      public ReservationCreneau reserverCreneauBO(io.vertigo.datamodel.data.model.UID<TrancheHoraire> trhUid, boolean siSurbooking)
    • reserverCreneaux

      public io.vertigo.datamodel.data.model.DtList<ReservationCreneau> reserverCreneaux(io.vertigo.datamodel.data.model.UID<TrancheHoraire> trhUid, io.vertigo.datamodel.data.model.DtList<Creneau> creneaux)
    • publishPlageHorairesAndRelinkReservation

      public void publishPlageHorairesAndRelinkReservation(List<io.vertigo.datamodel.data.model.UID<Agenda>> ageUids, PublicationTrancheHoraireForm publicationTrancheHoraireForm)
    • relinkReservationsToCreneaux

      public void relinkReservationsToCreneaux(List<io.vertigo.datamodel.data.model.UID<Agenda>> ageUids, LocalDate dateLocaleDebut, LocalDate dateLocaleFin)
      Reassocie les creneaux publiés aux ReservationCreneaux existant. Utilisé après une publication de plage horaire pour rattacher les réservations préexistantes. ou après un import de réservation.
      Parameters:
      dateLocaleDebut - Date de début
      dateLocaleFin - Date de fin
      ageUid - Uid de l'agenda
    • supprimerReservationCreneau

      public void supprimerReservationCreneau(List<io.vertigo.datamodel.data.model.UID<ReservationCreneau>> recUids)
    • getTrancheHoraireIfExists

      public Optional<TrancheHoraire> getTrancheHoraireIfExists(io.vertigo.datamodel.data.model.UID<TrancheHoraire> trhUid)
    • getDateDisponibleDisplayFuturOnly

      public io.vertigo.datamodel.data.model.DtList<DateDisponibleDisplay> getDateDisponibleDisplayFuturOnly(List<io.vertigo.datamodel.data.model.UID<Agenda>> ageUids, YearMonth yearMonth)
      Récupère les date disponibles d'un mois. N'affiche pas les disponibilités invalid input: '<' date du jour.
      Parameters:
      yearMonth - le mois à afficher.
      ageUid - l'id d'agenda
      Returns:
      la liste d'affichage
    • getDateDisponibleDisplay

      public io.vertigo.datamodel.data.model.DtList<DateDisponibleDisplay> getDateDisponibleDisplay(List<io.vertigo.datamodel.data.model.UID<Agenda>> ageUids, LocalDate startDate, LocalDate endDate)
    • getTrancheHoraireDisplayByDate

      public io.vertigo.datamodel.data.model.DtList<TrancheHoraireDisplay> getTrancheHoraireDisplayByDate(List<io.vertigo.datamodel.data.model.UID<Agenda>> ageUids, LocalDate startDate, LocalDate endDate)
    • deleteEmptyAgenda

      public void deleteEmptyAgenda(io.vertigo.datamodel.data.model.UID<Agenda> agendaUid)
    • purgeAgendaOlderThan

      public int purgeAgendaOlderThan(LocalDate olderThan)
      Purge agenda data linked to plage_horaire older than given date
      Parameters:
      olderThan -
    • checkAuthorizedAgendaOfPlh

      public io.vertigo.datamodel.data.model.UID<Agenda> checkAuthorizedAgendaOfPlh(io.vertigo.datamodel.data.model.UID<PlageHoraire> plhUid, List<io.vertigo.datamodel.data.model.UID<Agenda>> authorizedAgeUids)
    • checkAuthorizedAgenda

      public io.vertigo.datamodel.data.model.UID<Agenda> checkAuthorizedAgenda(io.vertigo.datamodel.data.model.UID<Agenda> ageUid, List<io.vertigo.datamodel.data.model.UID<Agenda>> authorizedAgeUids)
    • getMinutesLabel

      protected final String getMinutesLabel(int minutesOfDay)
    • getDaysLimitLabel

      protected String getDaysLimitLabel(int days, boolean onlyOneLevel)