用java写一个酒店客房管理系统程序
时间: 2023-09-29 11:06:42 浏览: 83
基于java的酒店客房管理系统
5星 · 资源好评率100%
好的,这是一个比较大的项目,我可以给您提供一个简单的酒店客房管理系统的程序框架,您可以在此基础上进行扩展和完善。
首先,我们需要定义一些数据结构,比如客房信息、订单信息等。可以创建一个Room类和一个Order类来表示客房和订单信息,如下所示:
```
public class Room {
private String roomId; // 客房编号
private String roomType; // 客房类型
private double price; // 客房价格
private boolean isBooked; // 客房是否已被预订
// 构造方法
public Room(String roomId, String roomType, double price, boolean isBooked) {
this.roomId = roomId;
this.roomType = roomType;
this.price = price;
this.isBooked = isBooked;
}
// getter和setter方法
// ...
}
public class Order {
private String orderId; // 订单编号
private String roomId; // 客房编号
private String customerName; // 客户姓名
private int days; // 入住天数
private double totalPrice; // 订单总价
// 构造方法
public Order(String orderId, String roomId, String customerName, int days, double totalPrice) {
this.orderId = orderId;
this.roomId = roomId;
this.customerName = customerName;
this.days = days;
this.totalPrice = totalPrice;
}
// getter和setter方法
// ...
}
```
接下来,我们可以创建一个Hotel类来管理客房和订单信息,如下所示:
```
import java.util.ArrayList;
import java.util.List;
public class Hotel {
private List<Room> rooms; // 客房列表
private List<Order> orders; // 订单列表
// 构造方法
public Hotel() {
rooms = new ArrayList<>();
orders = new ArrayList<>();
}
// 添加客房
public void addRoom(Room room) {
rooms.add(room);
}
// 预订客房
public void bookRoom(String roomId, String customerName, int days) {
// 查找客房
for (Room room : rooms) {
if (room.getRoomId().equals(roomId)) {
// 判断客房是否已被预订
if (room.isBooked()) {
System.out.println("该客房已被预订,请选择其他客房!");
return;
}
// 更新客房状态
room.setBooked(true);
// 生成订单
String orderId = generateOrderId();
double totalPrice = room.getPrice() * days;
Order order = new Order(orderId, roomId, customerName, days, totalPrice);
orders.add(order);
System.out.println("预订成功,订单号为:" + orderId);
return;
}
}
System.out.println("未找到该客房,请重新输入客房编号!");
}
// 取消预订
public void cancelBook(String orderId) {
// 查找订单
for (Order order : orders) {
if (order.getOrderId().equals(orderId)) {
// 查找客房
for (Room room : rooms) {
if (room.getRoomId().equals(order.getRoomId())) {
// 更新客房状态
room.setBooked(false);
// 删除订单
orders.remove(order);
System.out.println("取消预订成功!");
return;
}
}
}
}
System.out.println("未找到该订单,请重新输入订单编号!");
}
// 查询客房信息
public void queryRoom(String roomId) {
for (Room room : rooms) {
if (room.getRoomId().equals(roomId)) {
System.out.println("客房编号:" + room.getRoomId());
System.out.println("客房类型:" + room.getRoomType());
System.out.println("客房价格:" + room.getPrice());
if (room.isBooked()) {
System.out.println("客房状态:已被预订");
} else {
System.out.println("客房状态:未被预订");
}
return;
}
}
System.out.println("未找到该客房,请重新输入客房编号!");
}
// 查询订单信息
public void queryOrder(String orderId) {
for (Order order : orders) {
if (order.getOrderId().equals(orderId)) {
System.out.println("订单编号:" + order.getOrderId());
System.out.println("客房编号:" + order.getRoomId());
System.out.println("客户姓名:" + order.getCustomerName());
System.out.println("入住天数:" + order.getDays());
System.out.println("订单总价:" + order.getTotalPrice());
return;
}
}
System.out.println("未找到该订单,请重新输入订单编号!");
}
// 生成订单号
private String generateOrderId() {
// 省略生成订单号的代码
return "xxxxxxxxxx";
}
}
```
以上是一个简单的酒店客房管理系统程序框架,您可以根据实际需求进行修改和完善。
阅读全文