/** * Get an order to put in the database * * @param id for the order * @param warehouse for the order * @param station for the order * @param customer for the the order * @return order */ public Order getOrder(int id, Warehouse warehouse, Station station, Customer customer) { Order order = new Order(); order.setOrderID(id); order.setCustomerID(customer.getCustomerID()); order.setWarehouseID(warehouse.getWarehouseID()); order.setStationID(station.getStationID()); order.setDateOrdered(randDate()); order.setCompleted(1); // set as completed by default order.setNumLineItems(randInt(3, 10)); // number of line items per order customer.setDeliveriesReceived(customer.getDeliveriesReceived() + 1); customer.setNumPayments(customer.getNumPayments() + 1); return order; }
/** * Get a line item to put in the database * * @param id for the line item * @param warehouse for the station * @param Station station * @param Customer customer * @param Order order * @param ArrayList<Item> itemList * @return lineItem */ public LineItem getLineItem( int id, Warehouse warehouse, Station station, Customer customer, Order order, ArrayList<Item> itemList) { LineItem lineItem = new LineItem(); Item item = itemList.get(randInt(0, itemList.size())); int numOrdered = randInt(1, 5); if (item.getCurrentStock() < numOrdered) return null; lineItem.setLineItemID(id); lineItem.setOrderID(order.getOrderID()); lineItem.setItemID(item.getItemID()); lineItem.setCustomerID(customer.getCustomerID()); lineItem.setWarehouseID(warehouse.getWarehouseID()); lineItem.setStationID(station.getStationID()); lineItem.setNumOrdered(numOrdered); lineItem.setAmountDue(item.getPrice().multiply(new BigDecimal(lineItem.getNumOrdered()))); lineItem.setAmountDue( lineItem.getAmountDue().add(station.getSalesTax().multiply(lineItem.getAmountDue()))); lineItem.setAmountDue( lineItem.getAmountDue().subtract(customer.getDiscount().multiply(lineItem.getAmountDue()))); lineItem.setDateDelivered(randDate()); item.setNumLineItems(item.getNumLineItems() + 1); item.setNumSold(item.getNumSold() + lineItem.getNumOrdered()); // item.setCurrentStock(item.getCurrentStock() - lineItem.getNumOrdered()); don't modify stock // counts for random generation customer.setTotalPaid(customer.getTotalPaid().add(lineItem.getAmountDue())); station.setTotalSales(station.getTotalSales().add(lineItem.getAmountDue())); warehouse.setTotalSales(warehouse.getTotalSales().add(lineItem.getAmountDue())); return lineItem; }
/** * Get a customer to put in the database * * @param id for the customer * @param warehouse for the customer * @param station for the customer * @return customer */ public Customer getCustomer(int id, Warehouse warehouse, Station station) { Customer customer = new Customer(); customer.setCustomerID(id); customer.setWarehouseID(warehouse.getWarehouseID()); customer.setStationID(station.getStationID()); customer.setFirstName(fnames.get(randInt(0, fnames.size()))); customer.setMiddleInitial(letters[randInt(0, letters.length)]); customer.setLastName(lnames.get(randInt(0, lnames.size()))); customer.setAddress(randAddress()); customer.setCity(cities.get(randInt(0, cities.size()))); customer.setState(states.get(randInt(0, states.size()))); customer.setZip(zips.get(randInt(0, zips.size()))); customer.setPhone(randInt(100, 1000) + "-" + randInt(100, 1000) + "-" + randInt(1000, 10000)); customer.setDateAdded(randDate()); customer.setDiscount(new BigDecimal(randDouble(minDiscount, maxDiscount))); customer.setBalance(new BigDecimal(0)); customer.setTotalPaid(new BigDecimal(0)); customer.setNumPayments(0); customer.setDeliveriesReceived(0); return customer; }