//class Товар
class Product {
private String name; //Название товара
private int price; // Цена товара
//конструктор
public Product (String name, int price) {
this.name = name;
this.price = price;
}
public String getName() {
return name;
}
public int getPrice() {
return price;
}
public void setName(String name) {
this.name = name;
}
public void setPrice (int price) {
this.price = price;
}
@Override
public String toString() {
return "Название = "+name+" Стоимость = "+price;
}
}
//класс Заказ
class Order {
private ArrayList<Product> orderlist = new ArrayList<Product>(); //продукты в заказе
private boolean payment = false; //оплачен ли заказ
private boolean register = false; //обработан ли заказ Администратором
//добавить группу товаров к Заказу
public void addProdToOrder(ArrayList<Product> orderlist) {
this.orderlist = orderlist;
}
//добавить товар к Заказу
public void addProdToOrder(Product product) {
orderlist.add(product);
}
//показать Заказ
public void showOrder() {
for (Product e: orderlist) {
System.out.println (e);
}
}
//оплачен или нет
public boolean isPayment() {
return payment;
}
//оплачен (да/нет)
public void setPayment(boolean s) {
payment = s;
}
public boolean isRegister() {
return register;
}
public void setRegister(boolean s) {
register = s;
}
}
//класс Клиент
class Client {
private Order order;
//заказать
public void book(Order order) {
this.order = order;
}
public Order getOrder() {
return order;
}
//показать Заказ
public void showOrder() {
System.out.println("Ваш заказ: ");
order.showOrder();
}
//оплатить Заказ
public void pay() {
if(order.isPayment() == true) {
System.out.println("Вы уже оплатили заказ");
} else {
order.setPayment(true);
}
}
//Забрать товар
public void take() {
if(order.isPayment() == false) {
System.out.println("Вы ещё не оплатили товар");
} else if(order.isRegister() == false) {
System.out.println("Ваша заявка ещё не обработана");
} else {
System.out.println("Спасибо за покупку!");
}
}
}
//класс Товаровед
class Administrator {
private ArrayList<Product> products = new ArrayList<Product>();
private ArrayList<Client> blackclients = new ArrayList<Client>();
//регистрация товара и добавление неплательщиков в черный список
public void registerOrder(Client client) {
if (client.getOrder().isPayment() == true) {
client.getOrder().setRegister(true);
} else {
blackclients.add(client);
}
}
//создание новых продуктов
public void createNewProduct(String name, int price) {
products.add(new Product(name,price));
}
}