1
import java.util.Scanner;
import java.util.Date;
import java.text.DateFormat;
import java.text.SimpleDateFormat;


import java.util.*;


class ReceiptCode {
private static final char[] ItemPrice = null;

    public static void main(String[] args) {
    // TODO Auto-generated method stub
    //Font f = new Font("Calibri", Font.BOLD, 20);

    @SuppressWarnings("resource")
    Scanner scan= new Scanner(System.in);
    System.out.println("Enter Company Name");
    String companyName= scan.nextLine();

    System.out.println("Enter STREET ADDRESS");
    String street=scan.nextLine();

    System.out.println("Enter CITY, STATE, ZIP");
    String CSZ=scan.nextLine();

    //System.out.println(companyName + "\n" + street + "\n" + CSZ);


    String breaker = "------------------------------";
    List <Items> invList = new ArrayList<Items>();
    System.out.println("How many items did you order?");
    int counter = scan.nextInt();
    double totalPrice = 0;
    for (int i=0; i<counter; i++)
    {
        System.out.println("Enter Item Name");
        String fName = scan.next();
        System.out.println("Enter Quantity?");
        int fType = scan.nextInt();
        System.out.println("Enter Price?");
        double fPrice = scan.nextDouble();
        Items inv = new Items(fName, fType, fPrice);
        double x = (fType * fPrice);
        totalPrice += x;
        invList.add(inv);
        //System.out.println(totalPrice);
    }

    DateFormat dateFormat = new SimpleDateFormat("MM/dd/yyyy");
    DateFormat timeFormat = new SimpleDateFormat ("HH:mm");
    Date date = new Date();
    Date time = new Date();
    System.out.printf("%-15s %n", companyName);
    System.out.printf("%-15s %14s %n",street + "\n" + CSZ,dateFormat.format(date));
    System.out.printf("%-15s %n", timeFormat.format(time));
    System.out.println(breaker);
    for (Items c : invList) {

        System.out.println (c.getItemQTY() + " x " + c.getItemName() + " : " +       c.getItemPrice() + "$");
           System.out.println (breaker);

}   
}
}



public class Items {

    private String ItemName;
    private int ItemQTY;
    private double ItemPrice;

public Items (String fdType, int fdAmount, double fdPrice)
{
    ItemName = fdType;
    ItemQTY = fdAmount;
    ItemPrice = fdPrice;
}
public String getItemName()
{
    return ItemName;
}
public int getItemQTY()
{
    return ItemQTY;
}
public double getItemPrice()
{
    return ItemPrice;
}
    }

I have a couple questions.

  1. How can i get the total price of all the items to print out in the end?
  2. How can i multiply that price by a fixed percentage?(for tax)
  3. How can i have the receipt format print out to a physical printer.

Any help would be great! You guys are the best!

Mureinik
  • 297,002
  • 52
  • 306
  • 350

1 Answers1

0
  1. You can set a total price field at ReceiptCode class. By implementing the appropriate setters and getters you get the total price.
  2. Having done step one, multiply the price with your tax.
  3. Adopt PrintService interface. for example:

    PrintService chosenPrinter = (PrintService) selection; DocPrintJob printJob = chosenPrinter.createPrintJob();

For more details take a look at Java: Printing program output to a physical printer post.

Community
  • 1
  • 1
istovatis
  • 1,408
  • 14
  • 27