Skip to content

Commit 9042a0a

Browse files
Modified the usage of order's timestamp to allow storing hours.
1 parent 754e4ce commit 9042a0a

File tree

5 files changed

+24
-21
lines changed

5 files changed

+24
-21
lines changed

api/src/main/java/coreapi/Order.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
package coreapi;
22

33
import java.math.BigDecimal;
4-
import java.time.LocalDate;
4+
import java.time.LocalDateTime;
55
import java.util.List;
66
import java.util.Map;
77

@@ -37,7 +37,7 @@ public interface Order {
3737
* @return Returns the day of creation of the order
3838
* @see LocalDate
3939
*/
40-
public LocalDate getDate();
40+
public LocalDateTime getDate();
4141
/**
4242
* Returns the constant corresponding to the current state of the order,
4343
* as determined by the Enum <code>OrderStatus</code>.

api/src/main/java/coreapi/OrderFactory.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
package coreapi;
22

3-
import java.util.Date;
4-
import java.time.LocalDate;
3+
4+
import java.time.LocalDateTime;
55
/**
66
* The static factory to use in the creation of new order objects.
77
* @author Borja
@@ -38,7 +38,7 @@ public static int getOrderCount()
3838
*/
3939
public static Order createOrder(Cafeteria assignedCafeteria)
4040
{
41-
return createOrder(assignedCafeteria, LocalDate.now());
41+
return createOrder(assignedCafeteria, LocalDateTime.now());
4242
}
4343

4444
/**
@@ -51,7 +51,7 @@ public static Order createOrder(Cafeteria assignedCafeteria)
5151
* @see Order
5252
* @see Date
5353
*/
54-
public static Order createOrder(Cafeteria assignedCafeteria, LocalDate creationDate)
54+
public static Order createOrder(Cafeteria assignedCafeteria, LocalDateTime creationDate)
5555
{
5656
OrderImpl createdOrder = new OrderImpl(orderCount++, creationDate);
5757
assignedCafeteria.registerOrder(createdOrder);

api/src/main/java/coreapi/OrderImpl.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
import java.util.List;
77
import java.util.Map;
88
import java.util.LinkedHashMap;
9-
import java.time.LocalDate;
9+
import java.time.LocalDateTime;
1010

1111
/**
1212
* Implementation of the <code>Order</code> interface.
@@ -19,7 +19,7 @@ public class OrderImpl implements Order, Serializable {
1919

2020
private static final long serialVersionUID = 1L;
2121
private final int id;
22-
private LocalDate creationDate;
22+
private LocalDateTime creationDate;
2323
// Map cannot take primitive types as the type of its mapped values
2424
private LinkedHashMap<Product, Integer> basket;
2525
private OrderStatus orderStatus;
@@ -29,7 +29,7 @@ public class OrderImpl implements Order, Serializable {
2929
* @param assignedId The identifier assigned to this order.
3030
* @param creationDate The timestamp representing the day this order was created.
3131
*/
32-
OrderImpl(int assignedId, LocalDate assignedDate)
32+
OrderImpl(int assignedId, LocalDateTime assignedDate)
3333
{
3434
id = assignedId;
3535
creationDate = assignedDate;
@@ -48,7 +48,7 @@ public class OrderImpl implements Order, Serializable {
4848
* @return Returns the day of creation of the order
4949
* @see LocalDate
5050
*/
51-
public LocalDate getDate() { return creationDate; }
51+
public LocalDateTime getDate() { return creationDate; }
5252
/**
5353
* Returns the constant corresponding to the current state of the order,
5454
* as determined by the Enum <code>OrderStatus</code>.

api/src/main/java/coreapi/OrderService.java

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -169,10 +169,9 @@ public BigDecimal getTotalDailyRegister(Cafeteria coffe, LocalDate date)
169169
{
170170
BigDecimal dailyRegister = BigDecimal.ZERO;
171171

172-
//We go through the order history of the establishment
173172
for(Order ord: coffe.getOrders())
174173
{
175-
if(ord.getDate() == date)
174+
if(ord.getDate().toLocalDate().equals(date))
176175
{
177176
dailyRegister = dailyRegister.add(ord.totalCost());
178177
}
@@ -183,23 +182,23 @@ public BigDecimal getTotalDailyRegister(Cafeteria coffe, LocalDate date)
183182

184183
/**
185184
* Returns the cash register from the indicated cafeteria on the designated day.
186-
* @param coffe The cafeteria from which to calculate the cash register.
185+
* @param coffee The cafeteria from which to calculate the cash register.
187186
* @param date The day to which calculate the cash register.
188187
* @return Returns the number of orders that have been on the specified date.
189188
*/
190-
public BigDecimal getNumberOfOrdersDailyRegister(Cafeteria coffe, LocalDate date)
189+
public int getNumberOfDailyOrders(Cafeteria coffee, LocalDate date)
191190
{
192-
int n_orders = 0;
191+
int numberOfOrders = 0;
193192

194193
//We go through the order history of the establishment
195-
for(Order ord: coffe.getOrders())
194+
for(Order ord: coffee.getOrders())
196195
{
197-
if(ord.getDate() == date)
196+
if(ord.getDate().toLocalDate().equals(date))
198197
{
199-
dailyRegister++;
198+
numberOfOrders++;
200199
}
201200
}
202-
return dailyRegister;
201+
return numberOfOrders;
203202
}
204203

205204
}

terminalCli/src/main/java/terminalcli/Screen.java

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,10 @@
1313
import java.io.*;
1414
import java.util.*;
1515
import java.time.LocalDate;
16+
import java.time.LocalTime;
17+
import java.time.LocalDateTime;
1618
import java.lang.*;
19+
import java.math.BigDecimal;
1720

1821
public class Screen
1922
{
@@ -59,7 +62,8 @@ public void main_screen(Cafeteria coffe)
5962
d = keyboard.nextInt();
6063
m = keyboard.nextInt();
6164
y = keyboard.nextInt();
62-
LocalDate date = LocalDate.of(y,m,d);
65+
// We create a complete timestamp from the introduced date and the current time.
66+
LocalDateTime date = LocalDateTime.of(LocalDate.of(y,m,d), LocalTime.now());
6367

6468
DailyRegister_screen(coffe, date);
6569
break;
@@ -313,7 +317,7 @@ public void Finish_Order_screen(Cafeteria coffe, Order ord)
313317
public void DailyRegister_screen(Cafeteria coffe, LocalDate date)
314318
{
315319
char op;
316-
int n_orders = OrderService.getNumberOfOrdersDailyRegister(coffe, date);
320+
int n_orders = OrderService.getNumberOfDailyOrders(coffe, date);
317321
BigDecimal daily = getDailyRegister(coffe,date);
318322
Scanner keyboard = new Scanner(System.in);
319323

0 commit comments

Comments
 (0)