🎯 BÀI TẬP TỔNG HỢP DART – CHỦ ĐỀ QUẢN LÝ KHÁCH SẠN
PHẦN 1 – DỮ LIỆU PHÒNG (Map & List)
-
Tạo một Map mô tả thông tin của một phòng khách sạn bao gồm:
-
roomId -
type(Standard / Deluxe / Suite) -
price -
available(true/false)
-
-
Tạo một List<Map> gồm ít nhất 5 phòng với loại phòng và giá khác nhau.
-
Thực hiện các thao tác:
-
In toàn bộ phòng có loại Standard.
-
Tìm phòng có giá cao nhất.
-
Tính giá trung bình của tất cả phòng.
-
Cập nhật trạng thái
availablecủa một phòng bất kỳ thành không còn trống và in lại Map đó.
-
PHẦN 2 – XỬ LÝ JSON
-
Chuyển Map phòng ở bước 1 sang chuỗi JSON.
-
Cho một chuỗi JSON chứa danh sách các phòng (tự tạo hoặc dùng danh sách ở bước 2).
Thực hiện:-
Parse chuỗi JSON thành List<Map>.
-
In tất cả phòng có giá > 100.
-
Đếm số phòng theo từng loại (Standard/Deluxe/Suite).
-
PHẦN 3 – XÂY DỰNG CLASS
-
Tạo lớp Room gồm:
-
roomId
-
type
-
price
-
available
Thêm các phương thức:
-
In thông tin phòng.
-
Trả về giá phòng sau khi giảm 10%.
-
Khởi tạo đối tượng từ JSON (
Room.fromJson). -
Chuyển đối tượng thành JSON (
toJson()).
-
-
Tạo ít nhất 3 đối tượng Room từ dữ liệu có sẵn.
-
In thông tin từng phòng.
-
Tạo danh sách Room được sinh ra từ chuỗi JSON ở bước 5.
-
PHẦN 4 – QUẢN LÝ KHÁCH SẠN BẰNG CLASS
-
Tạo lớp Hotel gồm:
-
Tên khách sạn
-
Danh sách Room
Thêm phương thức:
-
addRoom(Room room) -
findAvailableRooms()– trả về danh sách phòng trống -
getAveragePrice()– trả về giá trung bình -
getRoomsByType(String type)– lọc theo loại phòng -
toJson()– chuyển toàn bộ khách sạn thành JSON
-
-
Khởi tạo một đối tượng Hotel và:
-
Thêm tối thiểu 5 phòng vào danh sách.
-
In danh sách phòng còn trống.
-
In giá trung bình của tất cả phòng.
-
In danh sách phòng loại Deluxe.
-
Xuất toàn bộ dữ liệu khách sạn ra JSON và in theo định dạng đẹp.
-