package dao; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Date; import java.util.List; import entity.Room; public class RoomDao { private List<Room> roomList; private static RoomDao roomDao; public static RoomDao instance() { if (roomDao == null) roomDao = new RoomDao(); return roomDao; } public RoomDao() { roomList = new ArrayList<Room>(); for (int i = 0; i < 10; i++) addRoom(new Room(1101 + i, 0, 1)); for (int i = 0; i < 20; i++) addRoom(new Room(2101 + i, 0, 2)); for (int i = 0; i < 30; i++) addRoom(new Room(3201 + i, 1, 3)); for (int i = 0; i < 20; i++) addRoom(new Room(4301 + i, 2, 4)); for (int i = 0; i < 10; i++) addRoom(new Room(5301 + i, 2, 5)); } public Room getRoom(int id) { for (Room room : roomList) { if (room.getId() == id) { return room; } } return null; } public void addRoom(Room room) { roomList.add(room); } public void removeRoom(Room room) { roomList.remove(room); } public List<Room> getRoomList() { return roomList; } private int getNumsTaken() { int nums = 0; for (Room room : roomList) { if (room.getStartTime() != null) ++nums; } return nums; } private int getNumsExpired() { int nums = 0; for (Room room : roomList) { if (room.getEndTime() != null && room.getEndTime().before(new Date())) ++nums; } return nums; } public Object[][] getRoomsData() { Object[][] result = new Object[1][5]; if (roomList.size() > 0) { result = new Object[roomList.size()][5]; Room room; for (int i = 0; i < roomList.size(); i++) { room = roomList.get(i); result[i] = formatData(room); } } else { result[0][0] = 0; result[0][1] = "没有数据"; result[0][2] = 0; result[0][3] = 0; result[0][4] = 0; } return result; } public Object[][] getRoomsTakenData() { Object[][] result = new Object[getNumsTaken()][5]; int i = 0; for (Room room : roomList) { if (room.getStartTime() != null) { result[i] = formatTakenData(room); i++; } } return result; } public Object[][] getExpiredRoomsData() { Object[][] result = new Object[getNumsExpired()][5]; int i = 0; for (Room room : roomList) { if (room.getEndTime() != null && room.getEndTime().before(new Date())) { result[i] = formatTakenData(room); i++; } } return result; } private Object[] formatData(Room room) { Object[] result = new Object[5]; result[0] = room.getNumber(); result[1] = RoomTypeDao.instance().getNamebyId(room.getType()); result[2] = room.getFloor() + 1; result[3] = room.getPrice(); result[4] = room.getPriceAdded(); return result; } private Object[] formatTakenData(Room room) { Object[] result = new Object[5]; result[0] = room.getNumber(); result[1] = RoomTypeDao.instance().getNamebyId(room.getType()); result[2] = room.getMoney(); SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); result[3] = (room.getStartTime() == null) ? "" : formatter.format(room .getStartTime()); result[4] = (room.getEndTime() == null) ? "" : formatter.format(room .getEndTime()); return result; } }
最近下载更多
lsglsg9 LV23
2023年12月29日
wuying8208 LV15
2023年1月1日
微信网友_6191697646571520 LV6
2022年10月28日
TheMostCodeUser_52 LV1
2022年10月2日
308711800 LV4
2022年6月21日
3078179739 LV2
2022年6月18日
root111snkdnc LV3
2022年6月17日
wanglinddad LV55
2022年5月5日
GaryYoung LV5
2022年1月11日
2518029339 LV1
2021年12月21日