import java.io.Serializable; /** * Encapsulates a room in the HealthSpa. * * @author Cormac Redmond -- credmond85 /at/ gmail */ public class Room extends ModelObject implements Serializable { private double price; private boolean[][] roomTimetable; private boolean[][] roomTimetableNextWeek; public Room(String name, String roomCode, double price) { super(name, roomCode); setPrice(price); setRoomTimetable(new boolean[10][7]); setRoomTimetableNextWeek(new boolean[10][7]); } public double getPrice() { return price; } public void setPrice(double price) { this.price = price; } public boolean[] getRoomTimetableForPeriod(int hour, int week) { boolean[] periodTimetable = new boolean[7]; for (int i = 0; i < 7; i++) { if (week == 0) { periodTimetable[i] = roomTimetable[hour][i]; } else if (week == 1) periodTimetable[i] = roomTimetableNextWeek[hour][i]; } return periodTimetable; } private void setRoomTimetable(boolean[][] roomTimetable) { this.roomTimetable = roomTimetable; } public boolean makeBooking(String userCode, String staffCode, int hour, int day, int week) { if (week == 0) { if (roomTimetable[hour][day]) return false;//Already booked roomTimetable[hour][day] = true; } else if (week == 1) { if (roomTimetableNextWeek[hour][day]) return false;//Already booked roomTimetableNextWeek[hour][day] = true; } return true; } public boolean removeBooking(String userCode, String staffCode, int hour, int day, int week) { if (week == 0) { roomTimetable[hour][day] = false; } else if (week == 1) { roomTimetableNextWeek[hour][day] = false; } return true; } private void setRoomTimetableNextWeek(boolean[][] roomTimetableNextWeek) { this.roomTimetableNextWeek = roomTimetableNextWeek; } }