Ejemplo n.º 1
0
 // Parse the object into its fields to put in a basic MongoDB object
 private BasicDBObject toBasicDBObject(Receipt receipt) {
   BasicDBObject basicDBObject = new BasicDBObject();
   basicDBObject.put("id", receipt.getId());
   basicDBObject.put("name", receipt.getName());
   basicDBObject.put("text", receipt.getText());
   return basicDBObject;
 }
Ejemplo n.º 2
0
  protected boolean isAssociatedToAnyActiveReceipt() {
    for (final Receipt receipt : getReceiptsSet()) {
      if (receipt.isActive()) {
        return true;
      }
    }

    return false;
  }
Ejemplo n.º 3
0
  public Receipt getActiveReceipt() {
    for (final Receipt receipt : getReceiptsSet()) {
      if (receipt.isActive()) {
        return receipt;
      }
    }

    return null;
  }
 /**
  * This method returns the most current expiry date for a user.
  *
  * @param receipts the list of receipts to iterate through
  * @return a string of either a date or a message
  */
 @Temporal(TemporalType.DATE)
 public String getCurrentExpiryDate(List<Receipt> receipts) {
   Date dawnOfTime = new Date(0, 0, 0);
   Date expiryDate = dawnOfTime;
   for (Receipt receipt : receipts) {
     Date currentDate = receipt.getDateOfExpiry();
     if (currentDate.compareTo(expiryDate) > 0) {
       expiryDate = receipt.getDateOfExpiry();
     }
   }
   if (expiryDate.compareTo(dawnOfTime) == 0) {
     return "No current expiry date";
   }
   return expiryDate.toString();
 }
Ejemplo n.º 5
0
  public static void main(String[] args) {
    MySQLHandler handler = new MySQLHandler();

    // Create data structures to be added to DB
    User user = new User("Wil", "Burns", "*****@*****.**", "password");
    City city = new City("Charlottesville", "VA", "22903");
    Store store = new Store("Harris Teeter", "975 Emmet Street North");
    Location location = new Location("1", "1");
    Item item1 = new Item("Milk", "1");
    Item item2 = new Item("Eggs", "1");
    Item item3 = new Item("Bacon", "1");
    Line line1 = new Line("1", "1", "3.39", "2");
    Line line2 = new Line("1", "2", "1.89", "1");
    Line line3 = new Line("1", "3", "2.99", "3");

    // Perform inserts
    handler.addUser(user);
    handler.addCity(city);
    handler.addStore(store);
    handler.addLocation(location);
    handler.addItem(item1);
    handler.addItem(item2);
    handler.addItem(item3);
    handler.addLine(line1);
    handler.addLine(line2);
    handler.addLine(line3);
    handler.addReceipt(new Receipt("1", "1", "2009-12-07"));

    user = handler.getUser("*****@*****.**");
    System.out.println("User Id: " + user.getUserId());

    // Print user's receipt list
    ArrayList<Receipt> receipts = handler.getReceipts(user);
    for (Receipt toPrint : receipts) {
      System.out.println("Receipt id:" + toPrint.getReceiptId());
      ArrayList<Line> lines = handler.getLines(toPrint);
      for (Line line : lines) {
        Item item = handler.getItem(line);
        System.out.println(
            "Item: "
                + item.getName()
                + " Price: "
                + line.getPrice()
                + " Quantity: "
                + line.getQuantity());
      }
    }
  }
Ejemplo n.º 6
0
  public ArrayList<Line> getLines(Receipt receipt) {
    ArrayList<Line> toReturn = new ArrayList<Line>();
    connect();
    try {
      // Create a stmt object
      stmt = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);

      // Query the database, storing the result
      // in an object of type ResultSet
      rs =
          stmt.executeQuery(
              "SELECT * from Line WHERE " + "Line.ReceiptId='" + receipt.getReceiptId() + "'");

      // Check if User is already in the database
      while (rs.next()) {
        String lineId = rs.getString("LineId");
        String receiptId = rs.getString("ReceiptId");
        String itemId = rs.getString("ItemId");
        String price = rs.getString("Price");
        String quantity = rs.getString("Quantity");
        Line toAdd = new Line(lineId, receiptId, itemId, price, quantity);
        toReturn.add(toAdd);
      } // end while loop
    } catch (Exception e) {
      e.printStackTrace();
    } // end catch
    finally {
      disconnect();
    }
    return toReturn;
  }
  public static void main(String[] args) throws Exception {

    ApplicationContext app = new ClassPathXmlApplicationContext("ioc_aop.xml");
    PurchaseOrderProcessor orderProcessor = app.getBean(PurchaseOrderProcessor.class);

    PurchaseOrder order = new PurchaseOrder();
    order.setItemCost(1000.00f);
    Receipt receipt = orderProcessor.processPurchaseOrder(order);

    PurchaseOrderDiscountProcessor orderDiscountProcessor =
        (PurchaseOrderDiscountProcessor) orderProcessor;
    Receipt discountedReceipt =
        orderDiscountProcessor.processDiscountOrder(order, DiscountStrategy.HALF_OFF_ENTIRE);

    System.out.println(
        String.format(
            "Total discounted purchase amount (given %s discount): %f ",
            DiscountStrategy.HALF_OFF_ENTIRE,
            (discountedReceipt.getPurchaseAmt() - discountedReceipt.getDiscountedAmount())));
  }
Ejemplo n.º 8
0
 public void update(Receipt receipt) {
   try {
     BasicDBObject searchQuery = new BasicDBObject();
     searchQuery.put("id", receipt.getId());
     BasicDBObject basicDBObject = toBasicDBObject(receipt);
     DB db = MongoDBCreater.getDB("MyDB");
     DBCollection collection = db.getCollection("MyCollection");
     collection.update(searchQuery, basicDBObject);
   } catch (Exception e) {
     e.printStackTrace();
   }
 }
Ejemplo n.º 9
0
 public static void main(String[] args) {
   Receipt receipt = new Receipt();
   receipt.printTitle();
   receipt.print("Jack's Magic Beans", 4, 4.25);
   receipt.print("Princess Peas", 3, 5.1);
   receipt.print("Three Bears Porridge", 1, 14.29);
   receipt.printTotal();
 }
Ejemplo n.º 10
0
  public void addReceipt(Receipt toAdd) {
    connect();
    try {
      // Create a stmt object
      stmt = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);

      // Query the database, storing the result
      // in an object of type ResultSet
      rs =
          stmt.executeQuery(
              "SELECT * from Receipt WHERE "
                  + "UserId='"
                  + toAdd.getUserId()
                  + "' AND "
                  + "ReceiptNumber='"
                  + toAdd.getReceiptNumber()
                  + "' AND "
                  + "Date='"
                  + toAdd.getDate()
                  + "'");

      // Check if User is already in the database
      while (rs.next()) {
        System.out.println("Receipt already exists in DB.");
        disconnect();
        return;
      } // end while loop

      stmt.executeUpdate(
          "INSERT INTO Receipt(UserId, ReceiptNumber, Date) VALUES ('"
              + toAdd.getUserId()
              + "', '"
              + toAdd.getReceiptNumber()
              + "', '"
              + toAdd.getDate()
              + "')");
    } catch (Exception e) {
      e.printStackTrace();
    } // end catch
    finally {
      disconnect();
    }
  }
  @Override
  protected void onCreate(Bundle savedInstanceState) {
    // TODO Auto-generated method stub
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_receipt_view);

    viewStoreName = (TextView) findViewById(R.id.viewStoreName);
    viewPurchaseDate = (TextView) findViewById(R.id.viewPurchaseDate);
    viewReceiptAmount = (TextView) findViewById(R.id.viewReceiptAmount);
    viewReceiptImage = (ImageView) findViewById(R.id.viewReceiptImage);

    // "Receipt" is a key from putExtra() method
    Receipt receipt = (Receipt) this.getIntent().getSerializableExtra(MainActivity.RECEIPT_KEY);

    String newDateStr = receipt.getPurchaseDate();
    try {
      // Log.v(TAG, "getPurchaseDate: " + receipt.getPurchaseDate());

      if (newDateStr != null && !newDateStr.isEmpty()) {
        java.util.Date date = form.parse(newDateStr);
        SimpleDateFormat postFormater = new SimpleDateFormat("dd MMM, yyyy");
        newDateStr = postFormater.format(date);
      }
    } catch (ParseException e) {
      e.printStackTrace();
    }
    viewPurchaseDate.setText(newDateStr);

    viewStoreName.setText(receipt.getStoreName());
    viewReceiptAmount.setText("$" + ((double) receipt.getReceiptAmount() / 100));

    if (receipt.getImage() != null) {
      File imgFile = new File(receipt.getImage());

      if (imgFile.exists()) {

        Bitmap myBitmap = BitmapFactory.decodeFile(imgFile.getAbsolutePath());
        Bitmap newBitmap = Bitmap.createScaledBitmap(myBitmap, 500, 500, false);

        viewReceiptImage.setImageBitmap(newBitmap);
      }
    }
  }
Ejemplo n.º 12
0
 public void startNewSale(String customerID) {
   receipt.startNewSale(customerID);
 }
Ejemplo n.º 13
0
 public void finalizeSale() {
   receipt.finalizeSale();
 }
Ejemplo n.º 14
0
 public void displayReceipt() {
   receipt.displayReceipt();
 }
 @Override
 public IAmAReceipt convertToReceipt(IHoldDistinctItems distinctItemList) {
   return Receipt.createFrom(distinctItemList, this.priceChecker);
 }
Ejemplo n.º 16
0
  @Test
  public void shouldDisplayDetails() {
    Receipt receipt = new Receipt("This is an item");

    assertEquals("This is an item", receipt.display());
  }
Ejemplo n.º 17
0
 public void addProduct(String productId, double qty) {
   receipt.addNewLineItem(productId, qty);
 }