public static int changeReservation(int reservationNumber, DateTime startDate, DateTime endDate) { Search search = new HawkeyehvkBLL.Search(); if (!search.validateReservationNumber(reservationNumber))// check reservation number { return(1); } else if (startDate > endDate) // check that dates are in a valid order { return(2); } List <Pet> pets = Pet.listPetsByReservation(reservationNumber); int largeDogs = 0; foreach (Pet pet in pets) { if (pet.size == 'L') { largeDogs++; } } // check that there are available runs if (Run.checkRunAvailability(startDate, endDate, 'L') < largeDogs || Run.checkRunAvailability(startDate, endDate, 'R') < pets.Count) { return(3); } // change the res dates try { ReservationDB db = new ReservationDB(); db.changeReservationDB(reservationNumber, startDate, endDate); } catch { return(4); } return(0); }