/** * Sjekker om rom er ledig i en tidsperiode * @param int ankomst ankomstdato * @param int avreise avreisedato * @return bool retunerer om perioden er ledig eller ikke */ bool Rom::ledig(int ankomst, int avreise) { Reservasjon* reservasjon; // Antall reservasjoner int antall_reservasjoner = reservasjoner->no_of_elements(); for(int j = 1; j <= antall_reservasjoner; j++) { reservasjon = (Reservasjon*) reservasjoner->remove_no(j); // Henter ut en reservasjon // Sjekker om perioden er ledig if(ankomst <= reservasjon->getAvreiseDato() && avreise >= reservasjon->getAnkomstDato()) return false; // Legger reservasjonen tilbake i listen over reservasjoner reservasjoner->add(reservasjon); } return true; }
/** * Sjekker om rommet er ledig */ bool Rom::ledig(int ankomst) { // Henter ut antall reservasjoner int antall_reservasjoner = reservasjoner->no_of_elements(); bool ledig = true; // Looper gjennom alle reservasjoner for(int i = 0; i < antall_reservasjoner; i++) { // Henter ut en reservasjon Reservasjon* reservasjon = (Reservasjon*) reservasjoner->remove_no(i); // Sjekker om tidsperioden er ledig. if(ankomst > reservasjon->getAnkomstDato() && ankomst < reservasjon->getAvreiseDato()) { ledig = false; } // Legger reservasjonen tilbake i listen med reservasjoner reservasjoner->add(reservasjon); } return ledig; // Retunerer true eller false. }