Class ReservationManager

java.lang.Object
sk.iway.iwcm.components.reservation.ReservationManager

public class ReservationManager extends Object
ReservationManager.java - vykonava pracu s databazou, posiela e-mail, generuje hash pre ReservationAjaxAction.java
  • Constructor Details

    • ReservationManager

      protected ReservationManager()
  • Method Details

    • getReservationObjects

      public static List<ReservationObjectBean> getReservationObjects()
      Vrati vsetky rezervacne objekty z tabulky reservation_object
      Returns:
      List naplneny rezervacnymi objektami, ktore je mozne si rezervovat - z tabulky reservation_object
    • getReservationObjects

      public static List<ReservationObjectBean> getReservationObjects(String email)
      Vrati vsetky rezervacne objekty z tabulky reservation_object
      Parameters:
      email - , podla ktoreho chceme vyfiltrovat objekty
      Returns:
      List naplneny rezervacnymi objektami, ktore je mozne si rezervovat - z tabulky reservation_object vyfiltrovane podla parametra email
    • getReservationObjectsForAllDay

      public static List<ReservationObjectBean> getReservationObjectsForAllDay(boolean reservationForAllDay)
      Vrati vsetky rezervacne objekty z tabulky reservation_object - ci su to celodenne rezervacie
      Parameters:
      reservationForAllDay - - ci su to celodenne rezervacie
      Returns:
      List
    • getAccepterEmails

      public static List<String> getAccepterEmails()
      Funkcia, ktora vrati zoznam vsetkych emailovych adries schvalovatelov rezervacii
    • getReservationObjectById

      public static ReservationObjectBean getReservationObjectById(int reservationObjectId)
      Vrati (naplni) rezervacny objekt so zadanym identifikatorom
      Parameters:
      reservationObjectId - - identifikator rezervacneho objektu, ktory chceme ziskat
      Returns:
      bean s properties rezervacneho objektu s identifikatorom reservationObjectId
    • getReservationObjectForAllDayById

      public static ReservationObjectBean getReservationObjectForAllDayById(int reservationObjectId, boolean reservationForAllDay)
    • getReservations

      public static List<ReservationBean> getReservations(Date filterDateFrom, Date filterDateTo, int filterObjectId)
      Vyfiltruje a vrati rezervacie z tabulky reservation podla zadanych parametrov
      Parameters:
      filterDateFrom - od ktoreho datumu sa maju vyselektovat rezervacie
      filterDateTo - do ktoreho datumu sa maju vyselektovat rezervacie
      filterObjectId - identifikator rezervacneho objektu, podla ktoreho sa maju rezervacie vyfiltrovat
      Returns:
      List naplneny rezervaciami, ktore splnaju podmienky udane vstupnymi parametrami
    • getAllReservationsForAllDay

      public static List<ReservationBean> getAllReservationsForAllDay(Date filterDateFrom, Date filterDateTo, boolean reservationForAllDay)
    • getAllReservationsForAllDayObjectId

      public static List<ReservationBean> getAllReservationsForAllDayObjectId(Date filterDateFrom, Date filterDateTo, boolean reservationForAllDay, String reservationObjectIdString)
    • addReservation

      public static int addReservation(ReservationBean reservation, String serverName, Prop prop, String lng) throws ParseException
      Ulozi rezervaciu do tabulky reservation
      Parameters:
      reservation - - objekt, v ktorom su ulozene jednotlive vlastnosti danej rezervacie
      serverName - - nazov serveru, aby sme vedeli vyskladat spravny odkaz do mejlu
      prop - - properties, ktore sa pouzije na pisanie emailu
      Returns:
      0 - ak ulozenie do databazy prebehlo v poriadku, 1 - ak pouzivatel nezadal objekt
      Throws:
      ParseException
    • mustReservationObjectAccepted

      public static boolean mustReservationObjectAccepted(int reservationObjectId)
      Zisti, ci musi byt rezervacia daneho rezervacneho objektu schvalena
      Parameters:
      reservationObjectId - id rezervacneho objektu, u ktoreho zistujeme potrebu schvalenia
      Returns:
      true ak musi byt schvaleny, false ak nepotrebuje schvalenie
    • deleteReservation

      public static int deleteReservation(int reservationId, String passwd, String currUserEmail)
      Vymaze rezervaciu z tabulky reservation
      Parameters:
      reservationId - - identifikacne cislo rezervacie, ktoru chceme vymazat
      passwd - - heslo na vymazanie rezervacie, zadava sa pri pridavani objektu
      currUserEmail - - email prihlaseneho uzivatela
      Returns:
      0 ak vymazanie z databazy prebehlo v poriadku, 1 ak pouzivatel zadal nespravne heslo, 2 - ina SQL chyba
    • addEditReservationObject

      public static int addEditReservationObject(ReservationObjectBean reservationObject, int reservationObjectId)
      Ulozi alebo zmeni vlastnosti rezervacneho objektu do tabulky reservation_object
      Parameters:
      reservationObject - - objekt, v ktorom su ulozene jednotlive vlastnosti daneho rezervacneho objektu
      reservationObjectId - - identifikator objektu, ktoreho vlastnosti sa maju zmenit
      Returns:
      0 - ak ulozenie do databazy prebehlo v poriadku, 1 - ak pouzivatel nezadal email schvalovatela, hoci zadal, ze schvalenie je potrebne, 2 - ak nazov objektu uz existuje, 3 - ina SQL chyba, 4 - nezhoduju sa hesla
    • deleteReservationObject

      public static int deleteReservationObject(int reservationObjectId)
      Vymaze rezervacny objekt z tabulky reservation_object
      Parameters:
      reservationObjectId - - identifikacne cislo rezervacneho objektu, ktory chceme vymazat
      Returns:
      0 ak vymazanie z databazy prebehlo v poriadku, 1 ak je objekt rezervovany, 2 - ina SQL chyba
    • getReservationObjectPasswd

      public static String getReservationObjectPasswd(int reservationObjectId)
      Vrati heslo rezervacneho objektu, ktore je potrebne zadat na vymazanie jeho rezervacie
      Parameters:
      reservationObjectId - - identifikacne cislo rezervacneho objektu
      Returns:
      heslo zahashovane md5 z tabulky reservation_object
    • getReservationObjectId

      public static int getReservationObjectId(int reservationId)
      Vrati identifikator rezervacneho objektu podla identifikatora, na ktory je vystavena rezervacia
      Parameters:
      reservationId - - identifikacne cislo rezervacie
      Returns:
      identifikator rezervacneho objektu, na ktory je vystavena rezervacia
    • getReservationObject

      public static ReservationObjectBean getReservationObject(int reservationObjectId)
      Naplni a vrati Bean rezervacny objekt podla jeho identifikatora
      Parameters:
      reservationObjectId - - identifikacne cislo rezervacneho objektu
      Returns:
      naplneny reservationObjectBean
    • getReservationObjectName

      public static String getReservationObjectName(int reservationObjectId)
      Vrati nazov rezervacneho objektu na zaklade jeho id
      Parameters:
      reservationObjectId - - identifikacne cislo rezervacneho objektu
      Returns:
      nazov rezervacneho objektu
    • getHashValue

      public static String getHashValue(int reservationId)
      Vrati hash danej rezervacie na zaklade id rezervacneho objektu, kvoli spekulacnym schvalovaniam
      Parameters:
      reservationId - - identifikacne cislo rezervacie
      Returns:
      unikatnu hashovu hodnotu rezervacie z tabulky reservation
    • acceptReservation

      public static boolean acceptReservation(int reservationId, String hash)
      Akceptacia rezervacie odkazom z mejlu
      Parameters:
      reservationId - - identifikacne cislo rezervacie, ktoru chceme schvalit
      hash - - kod, ktory je potrebne zadat, aby sa predislo spekulativnym schvalovaniam
      Returns:
      true ak sa schvalenie rezervacie podarilo, inak false
    • isDeletedWithoutPass

      public static boolean isDeletedWithoutPass(int reservationId)
      Zisti, ci na vymazanie danej rezervacie je potrebne heslo
      Parameters:
      reservationId - - identifikacne cislo rezervacie, o ktorej chceme zistit, ci na jej vymazanie je potrebne heslo
      Returns:
      true ak je mozne tuto rezervaciu vymazat bez hesla, inak false
    • isConflict

      public static int isConflict(ReservationBean reservation) throws ParseException
      Zisti, ci rezervacia nie je v konflikte s inou, uz ulozenou rezervaciou. Konflikt znamena ze sa rezervacie prekryvaju v case bez ohladu na to ci su schvalene alebo nie, jedna sa o rezervacie an ten isty objekt samozrejme
      Parameters:
      reservation -
      Returns:
      Throws:
      ParseException
    • getReservationEmailById

      public static String getReservationEmailById(int reservationId)
      vrati email uzivatela, ktory si rezervoval
      Parameters:
      reservationId -
      Returns:
    • getReservationById

      public static ReservationBean getReservationById(int reservationId)
      vrati rezervaciu
      Parameters:
      reservationId -
      Returns:
    • getReservationObjectId

      public static int getReservationObjectId(ReservationObjectBean bean)
    • sendApprovalStatusChangedEmail

      public static void sendApprovalStatusChangedEmail(ReservationBean reservation, boolean approved, javax.servlet.http.HttpServletRequest request)