
<p>import java.util.*; //Use of ArrayList
import java.io.*; //Use of InputStreamReader and BufferedReader
import java.util.regex.*; //Use of regular expressions
import java.text.*;</p>
<p>class ProductController
{
OrderController orderControllerOb=new OrderController();</p>
<p> public void initiateReportOnProductsManufactured()
{
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
OrderUI orderUI=new OrderUI();
ProductUI productUI=new ProductUI();
Order orderOb=null;
ArrayList<Object> orderDetails=new ArrayList<Object>();
int orderId=orderUI.getOrderId();
if(orderId!=-1) //If system error occurs
{
orderOb=CDAManufacturers.searchOrderList(orderId); //Check order id is in the order list
if(orderOb!=null) //If order id is in the order list
{
orderDetails=CDAManufacturers.returnOrderDetails(orderOb); //Fetch order details from the order list
productUI.displayOrderDetails(orderDetails); //Display order details
orderUI.displayMenu(); //clerk's menu is displayed
}
else
{
orderUI.displayErrorMessage("Invalid order ID!!!!");
orderUI.displayMenu(); //clerk's menu is displayed
}
}
else
{
orderUI.displayErrorMessage("Sorry!!! unable to display the order details");
orderUI.displayMenu(); //clerk's menu is displayed
}
}
public void initiateReportOnTaxCollected()
{
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
OrderUI orderUI=new OrderUI();
Order orderOb=null;
double bill=0.0,salesTax=0.0,octroi=0.0,customsDuty=0.0;
ArrayList<Object> orderDetails=new ArrayList<Object>();
int orderId=orderUI.getOrderId();
if(orderId!=-1) //If system error occurs
{
orderOb=CDAManufacturers.searchOrderList(orderId); //Check order id is in the order list
if(orderOb!=null) //If order id is in the order list
{
orderDetails=CDAManufacturers.returnOrderDetailsForBill(orderOb); //Fetch order details from the order list
bill=CDAManufacturers.calculateBill(orderDetails);
salesTax=0.1*bill;
octroi=0.14*bill;
customsDuty=0.16*bill;
System.out.println("Rs."+salesTax);
System.out.println("Rs."+octroi);
System.out.println("Rs."+customsDuty);
orderUI.displayMenu(); //clerk's menu is displayed
}
else
{
orderUI.displayErrorMessage("Invalid order ID!!!!");
orderUI.displayMenu(); //clerk's menu is displayed
}
}
else
{
orderUI.displayErrorMessage("Sorry!!! unable to display the order details");
orderUI.displayMenu(); //clerk's menu is displayed
}
}</p>
<p>public void initiateReportOnRevenueEarned()
{ <br />
orderControllerOb.initiateViewBills();
}
public void initiateReportOnProductsReturned()
{
}
public void initiateViewSalesOfProducts()
{
ProductUI productUiOb=new ProductUI(); //Create ProductUI
ArrayList<Product> productList=new ArrayList<Product>();
productList=CDAManufacturers.returnSalesOfProducts(); //Returns list of sales of Products
productUiOb.viewProductSalesList(productList); //Displays list of sales of Products
}
}</p>
<p>//---------------------------------------------------------------------------------</p>
<p>class ProductUI
{
private InputStreamReader input=new InputStreamReader(System.in);
private BufferedReader br=new BufferedReader(input);</p>
<p> //Contract: ProductSalesList(List):void
//Displays product id, product name and sales count of the product for given product list
public void viewProductSalesList(ArrayList<Product> productList)
{
System.out.println(" Product\t\t------------Sales-----------");
System.out.println("");
for(Product productOb:productList)
System.out.println(productOb.getProductName()+"\t\t\t\t"+productOb.getProductSalesCount());
displayMenu(); //Display administrator's menu
}</p>
<p> //Contract: displayErrorMessage(String):void
//Displays error message and then the administrator's menu
public void displayErrorMessage(String msg)
{
System.out.println(msg);
displayMenu(); //Display administrator's menu
}</p>
<p> //Contract: displayMenu():void
//Displays administrator's menu
public void displayMenu()
{
try
{
System.out.println("");
System.out.println("Press any key to continue");
br.readLine();
MainClerkSystem mainclerkSystemOb=new MainClerkSystem();
mainclerkSystemOb.initiateClerkView();
}
catch(Exception e)
{
System.err.println("Exception: "+e);
}
} </p>
<p> //Contract: requestProductDetailsConfirmation():String
//Reads the product details and validates them
private String requestProductDetailsConfirmation()
{
String cont="";
boolean flag=false;
try
{
while(flag==false)
{
System.out.println("");
System.out.println("Are you sure you want to add product? (Y/N): ");
cont=br.readLine();
if(cont.equalsIgnoreCase("y")||cont.equalsIgnoreCase("n"))
flag=true;
else
System.out.println("Please enter Y or N...");
}
return(cont);
}
catch(Exception e)
{
//System.err.println("Exception: "+e);
return("n");
}
}</p>
<p> //Contract: notifyProductAdditionSuccess(Object):void
//Prompt product's successfully addition and display its id
public void notifyProductAdditionSuccess(Product productOb)
{
displayMenu();
}</p>
<p> //Contract:displayOrderDetails(List):void
//Displays the order details which is passed as a list
public void displayOrderDetails(ArrayList<Object> orderDetails)
{
System.out.println("");
System.out.println("Date Of Order :\t"+orderDetails.get(3));
int x=((orderDetails.size()-4)/2);
System.out.println("");
System.out.println("Quantity Manufactured \t Products Name");
for(int i=5;i<orderDetails.size()-x;i++)
{
System.out.println("\t"+orderDetails.get(i+x)+"\t\t"+orderDetails.get(i));
}
} <br />
}</p>
<p>//----------------------------------------------------------------------------------------</p>
<p>//Class Product:
//Attributes: int id ; String name ; int quantity ; double price ; int salesCount
//Methods: setProductId(List):void ; getProductId():list ; setProductName(String):void ; getProductName():String
// setProductQuantity(String):void ; getProductQuantity():int ; setProductPrice(double):void
// getProductPrice():double ; setProductSalesCount(int):void ; getProductSalesCount():int
class Product
{
private int id;
private String name;
private int quantity;
private double price;
private int salesCount;</p>
<p> //Contract: setProductId(int):void
//It modifies Product id
public void setProductId(int id)
{
this.id=id;
}</p>
<p> //Contract: getProductId():int
//It returns Product id
public int getProductId()
{
return(id);
}
//Contract: setProductName(String):void
//It modifies product name
public void setProductName(String name)
{
this.name=name;
}</p>
<p> //Contract:getProductName():String
//It returns product name
public String getProductName()
{
return(name);
}</p>
<p> //Contract: setProductQuantity(String):void
//It modifies product name
public void setProductQuantity(int quantity)
{
this.quantity=quantity;
}</p>
<p> //Contract:getProductQuantity():int
//It returns product name
public int getProductQuantity()
{
return(quantity);
}
//Contract: setProductPrice(double):void
//It modifies product price
public void setProductPrice(double price)
{
this.price=price;
}</p>
<p> //Contract:getProductPrice():double
//It returns product price
public double getProductPrice()
{
return(price);
}</p>
<p> //Contract: setProductSalesCount(int):void
//It modifies product sales count
public void setProductSalesCount(int salesCount)
{
this.salesCount=salesCount;
}</p>
<p> //Contract:getProductSalesCount():int
//It returns product sales count
public int getProductSalesCount()
{
return(salesCount);
}
}</p>
If you are facing any programming issue, such as compilation errors or not able to find the code you are looking for.
Ask your questions, our development team will try to give answers to your questions.