]> git.somenet.org - pub/jan/sbc.git/blob - src/main/java/at/ac/tuwien/sbc/valesriegler/types/Order.java
Space cooks prepare pizzas and Pizzeria GUI shows that
[pub/jan/sbc.git] / src / main / java / at / ac / tuwien / sbc / valesriegler / types / Order.java
1 package at.ac.tuwien.sbc.valesriegler.types;
2
3 import java.io.Serializable;
4 import java.util.ArrayList;
5 import java.util.List;
6
7 import at.ac.tuwien.sbc.valesriegler.common.HasId;
8 import at.ac.tuwien.sbc.valesriegler.common.Util;
9 import at.ac.tuwien.sbc.valesriegler.group.Group;
10
11 /**
12  * Object denotes a Group's interest in pizzas and the state of the pizzas
13  * themselves.
14  * 
15  * @author jan
16  * 
17  */
18 public class Order implements Serializable, HasId {
19         private static int idNext = 0;
20         private Integer id;
21         private Integer groupId;
22         private OrderStatus status;
23
24         private List<PizzaOrder> orderedPizzas;
25         private List<Pizza> cookedPizzas = new ArrayList<>();
26         
27         // this is necessary so that i can make a xvsm linda selection on it
28         private Integer numberOfPizzas;
29
30         public Order(int groupId, List<PizzaOrder> orderedPizzas) {
31                 id = ++idNext;
32                 this.groupId = groupId;
33                 status = OrderStatus.NEW;
34                 this.orderedPizzas = orderedPizzas;
35                 cookedPizzas = null;
36         }
37
38         public Order(Group group, List<PizzaOrder> orderedPizzas) {
39                 id = ++idNext;
40                 groupId = group.getGroupData().getId();
41                 status = OrderStatus.NEW;
42                 this.orderedPizzas = orderedPizzas;
43                 cookedPizzas = null;
44         }
45
46         public List<Pizza> getCookedPizzas() {
47                 return cookedPizzas;
48         }
49
50         public int getGroupId() {
51                 return groupId;
52         }
53
54         public int getNumberOfPizzas() {
55                 return Util.getIntSafe(numberOfPizzas);
56         }
57
58         public void setNumberOfPizzas(Integer numberOfPizzas) {
59                 this.numberOfPizzas = numberOfPizzas;
60         }
61
62         public void setId(Integer id) {
63                 this.id = id;
64         }
65
66         public int getId() {
67                 return id;
68         }
69
70         public List<PizzaOrder> getOrderedPizzas() {
71                 return orderedPizzas;
72         }
73
74         public OrderStatus getStatus() {
75                 return status;
76         }
77
78         public void setCookedPizzas(List<Pizza> cookedPizzas) {
79                 this.cookedPizzas = cookedPizzas;
80         }
81
82         public void setGroupId(int groupId) {
83                 this.groupId = groupId;
84         }
85
86         public void setOrderedPizzas(List<PizzaOrder> orderedPizzas) {
87                 this.orderedPizzas = orderedPizzas;
88         }
89
90         public void setStatus(OrderStatus status) {
91                 this.status = status;
92         }
93
94         @Override
95         public String toString() {
96                 return "Order [id=" + id + ", groupId=" + groupId + ", status=" + status + ", orderedPizzas=" + orderedPizzas
97                                 + ", cookedPizzas=" + cookedPizzas + "]";
98         }
99 }