abstract class Order(id:Int,des:String)
{
var Id:Int=id;
var Des:String=des;
}
class PurchaseOrder(vendor:String,customer:String,id:Int,des:String) extends Order(id,des)
{
var vend:String=vendor;
var cust:String=customer;
var Id1:Int=id;
var Des1:String=des;
def PurchOrder()
{
print(Id1+"\t"+Des1+"\t"+vend+"\t"+cust+"\n");
}
}
class SalesOrder(vendor:String,customer:String,id:Int,des:String) extends Order(id,des)
{
var vend:String=vendor;
var cust:String=customer;
var Id2:Int=id;
var Des2:String=des;
def SaleOrder()
{
print(Id2+"\t"+Des2+"\t"+vend+"\t"+cust+"\n");
}
}
object Orders
{
def main(a:Array[String])
{
val ob1=new SalesOrder("Himmat","Aniket",1,"sold");
val ob2=new PurchaseOrder("Sunny","Sagar",2,"Purchased");
while(true)
{
println("MENU"+"\n"+"1:SalesOrder"+"\n"+"2:PurchaseOrder"+"\n"+"3:Exit")
print("Enter the Choise:");
var n1:Int=readInt();
n1 match{
case 1=>ob1.SaleOrder();
case 2=>ob2.PurchOrder();
case 3=>System.exit(0);
}
}
}
}