Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /**
- * SEF Supermarket System
- * Student 1 : Michael Mansour s3509599
- * Student 2 :
- * Student 3 :
- * Student 4 : Zixi Zhang s3459799
- */
- package Sale_staff;
- import java.io.*;
- import java.util.*;
- import Sales.*;
- import Utilities.*;
- /**
- * @author Student :
- *
- */
- public class Sale_Staff {
- private static PrintStream out = System.out;
- private BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));
- private static final String username = "salestaff";
- private static final String password = "12345678";
- private List<transaction_info> trans_info = new ArrayList<transaction_info>();
- public Sale_Staff() throws FileNotFoundException, ClassNotFoundException, IOException{
- //Check Username & Password first
- if(Login.login(username, password)){
- loadItemInfo.loadtransactionInfo((ArrayList<transaction_info>) trans_info, "transaction_info.tmp");
- staffMenu();
- saveItemInfo.savetransactioninfo(trans_info, "transaction_info.tmp");
- }else
- out.println("\nusername or password incorrect!");
- }
- /**
- * Staff Menu contains 1. Remove items
- * 2. Cancel Transaction
- */
- private void staffMenu() throws IOException{
- for(int i =0;i < trans_info.size();i++){
- for(int j=i+1;j < trans_info.size();j++){
- if(trans_info.get(i).get_customerid().equals(trans_info.get(j).get_customerid())){
- trans_info.get(i).get_Cart().addAll(trans_info.get(j).get_Cart());
- trans_info.remove(j);
- j = i;
- }
- }
- }
- int selection;
- do{
- out.println("1. Remove item");
- out.println("2. Cancel transaction");
- out.println("3. Exit to main menu");
- out.println("Enter a number");
- selection = InputValidation.ValidateInt(bf.readLine());
- if (selection == 1){
- PrintList();
- removeitem();
- }
- else if (selection == 2){
- PrintList();
- Cancellation();
- }
- }while(selection != 3);
- }
- /**
- * Remove items implementation
- */
- private void removeitem() throws IOException{
- out.println("Select transaction number: ");
- int select = InputValidation.ValidateInt(bf.readLine()) - 1;
- try{
- transaction_info ti = trans_info.get(select);
- out.println("\n Transaction Detail \n");
- out.println("CustomerID: " + ti.get_customerid() + " Card: " + ti.get_CardNum() +
- " Total Price: " + ti.get_totalPrice());
- out.println();
- List<Cart> cart = ti.get_Cart();
- if (cart.size() > 0){
- int j = 1;
- for(int i = 0;i < cart.size();i++){
- out.println(j +" name : "+cart.get(i).getName() + " ID: " + cart.get(i).getID() + " price: " + cart.get(i).getPrice()
- + " quantity: " + cart.get(i).getQuantity());
- j++;
- }
- out.println("Select No. item to remove: ");
- int sel = InputValidation.ValidateInt(bf.readLine()) - 1;
- try{
- cart.remove(sel);
- out.println("Item has been deleted!!!");
- trans_info.set(select, new transaction_info(ti.get_customerid(), ti.get_CardNum(), cart));
- }catch(IndexOutOfBoundsException ibe){
- out.println("No. invalid!");
- }
- }else
- out.println("### NO ITEM IN LIST ###\n");
- }catch(IndexOutOfBoundsException iob){
- out.println("Number invalid!");
- }
- }
- /**
- * Cancel transactions implementation
- */
- private void Cancellation() throws IOException{
- out.println("Select transaction number: ");
- int select = InputValidation.ValidateInt(bf.readLine()) - 1;
- try{
- transaction_info ti = trans_info.remove(select);
- out.println(ti.get_customerid() + "'s transaction has been cancelled!\n");
- }catch(IndexOutOfBoundsException iob){
- out.println("Number invalid!");
- }
- }
- private void PrintList(){
- int i = 1;
- for(transaction_info t : trans_info){
- out.println(i + " CustomerID: " + t.get_customerid() + " Card: " + t.get_CardNum() +
- " Total Price: " + t.get_totalPrice());
- out.println("\n Cart Detail \n");
- for(Cart c : t.get_Cart())
- if(c != null)
- out.println("name : "+c.getName() + " ID: " + c.getID() + " price: " + c.getPrice()
- + " quantity: " + c.getQuantity());
- out.println();
- i++;
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement