使用Java来做一个中文能够有正常功能的饭卡管理系统
时间: 2023-07-16 07:13:27 浏览: 43
饭卡管理系统主要涉及到用户信息管理、餐厅信息管理、饭卡充值消费、报表统计等功能,以下是一个简单的Java实现。
1. 用户信息管理
首先需要设计用户信息的数据结构,包括学号、姓名、余额等字段。可以使用HashMap来实现用户信息的存储和查询,代码如下:
```
import java.util.HashMap;
public class UserManager {
private HashMap<String, User> users;
public UserManager() {
users = new HashMap<>();
}
public void addUser(User user) {
users.put(user.getId(), user);
}
public User getUser(String id) {
return users.get(id);
}
public void updateUser(User user) {
users.put(user.getId(), user);
}
}
```
2. 餐厅信息管理
同样需要设计餐厅信息的数据结构,包括餐厅名称、位置、菜单等字段。可以使用类似的方式来实现餐厅信息的存储和查询,代码如下:
```
import java.util.HashMap;
public class RestaurantManager {
private HashMap<String, Restaurant> restaurants;
public RestaurantManager() {
restaurants = new HashMap<>();
}
public void addRestaurant(Restaurant restaurant) {
restaurants.put(restaurant.getName(), restaurant);
}
public Restaurant getRestaurant(String name) {
return restaurants.get(name);
}
public void updateRestaurant(Restaurant restaurant) {
restaurants.put(restaurant.getName(), restaurant);
}
}
```
3. 饭卡充值消费
在进行饭卡充值和消费时,需要先查询用户信息和餐厅信息,然后判断余额是否充足,最后更新用户余额和餐厅销售额。代码如下:
```
public void recharge(String userId, double amount) {
User user = userManager.getUser(userId);
user.setBalance(user.getBalance() + amount);
userManager.updateUser(user);
}
public void consume(String userId, String restaurantName, double amount) {
User user = userManager.getUser(userId);
Restaurant restaurant = restaurantManager.getRestaurant(restaurantName);
if (user.getBalance() < amount) {
throw new RuntimeException("余额不足");
}
user.setBalance(user.getBalance() - amount);
restaurant.setSales(restaurant.getSales() + amount);
userManager.updateUser(user);
restaurantManager.updateRestaurant(restaurant);
}
```
4. 报表统计
最后需要实现一些报表统计功能,比如查询某个时间段内某个餐厅的销售额等。可以根据实际需求来设计和实现这些功能。
以上是一个简单的Java实现,具体实现方式和数据结构可以根据实际需求进行调整和扩展。