Esempio n. 1
0
        public SaleBO search(int id)
        {
            SaleBO       sale = new SaleBO();
            FileStream   fin  = new FileStream("saledata.txt", FileMode.Open);
            StreamReader sr   = new StreamReader(fin);
            String       line;

            while ((line = sr.ReadLine()) != null)
            {
                String[] data = line.Split(';');
                if (int.Parse(data[0]) == id)
                {
                    sale.Orderid = int.Parse(data[0]);
                    sale.Custid  = int.Parse(data[1]);
                    sale.Date    = data[2];
                    sale.Status  = data[3];
                    sale.Total   = double.Parse(data[4]);

                    break;
                }
            }

            sr.Close();
            fin.Close();

            return(sale);
        }
Esempio n. 2
0
        public double checkDailySale(SaleBO sale)
        {
            double dailySale = 0;

            String        connectionstring = @"Data Source=(LocalDB)\v11.0;AttachDbFilename=C:\Users\Hassan\Desktop\POS-EAD-2\POS\MyDatabase.mdf;Integrated Security=True";
            SqlConnection con = new SqlConnection(connectionstring);

            String query = "select* from sale where customerid=@custid and date=@date;";

            SqlParameter p1 = new SqlParameter("custid", sale.Custid);
            SqlParameter p2 = new SqlParameter("date", sale.Date);

            SqlCommand cmd = new SqlCommand(query, con);

            cmd.Parameters.Add(p1);
            cmd.Parameters.Add(p2);

            con.Open();

            SqlDataReader dr = cmd.ExecuteReader();

            if (dr.Read())
            {
                dailySale = dailySale + (double)dr[3];
            }

            con.Close();
            return(dailySale);
        }
Esempio n. 3
0
        public SaleBO search(int id)
        {
            SaleBO sale = new SaleBO();

            String        connectionstring = @"Data Source=(LocalDB)\v11.0;AttachDbFilename=C:\Users\Hassan\Desktop\POS-EAD-2\POS\MyDatabase.mdf;Integrated Security=True";
            SqlConnection con = new SqlConnection(connectionstring);

            String query = "select* from sale where orderid=@orderid;";

            SqlParameter p1 = new SqlParameter("orderid", id);

            SqlCommand cmd = new SqlCommand(query, con);

            cmd.Parameters.Add(p1);

            con.Open();

            SqlDataReader dr = cmd.ExecuteReader();

            if (dr.Read())
            {
                sale.Orderid = (int)dr[0];
                sale.Custid  = (int)dr[1];
                sale.Date    = (string)dr[2];
                sale.Total   = (double)dr[3];
            }

            con.Close();


            return(sale);
        }
Esempio n. 4
0
        public void save(SaleBO sale)
        {
            FileStream   fout = new FileStream("saledata.txt", FileMode.Append);
            StreamWriter sw   = new StreamWriter(fout);

            sw.WriteLine(sale.Orderid + ";" + sale.Custid + ";" + sale.Date + ";" + sale.Status + ";" + sale.Total);

            sw.Close();
            fout.Close();
        }
Esempio n. 5
0
        public void save(SaleBO sale)
        {
            CustomerDAL custD    = new CustomerDAL();
            CustomerBO  customer = custD.search(sale.Custid);

            customer.Amount = customer.Amount + sale.Total;
            custD.modify(customer);

            SaleDAL s = new SaleDAL();

            s.save(sale);
        }
Esempio n. 6
0
        public bool checkSaleLimit(SaleBO sale)
        {
            SaleDAL     saleD    = new SaleDAL();
            CustomerDAL custD    = new CustomerDAL();
            CustomerBO  customer = custD.search(sale.Custid);

            if (saleD.checkDailySale(sale) + sale.Total <= customer.Slimit)
            {
                return(true);
            }

            return(false);
        }
Esempio n. 7
0
        public double checkDailySale(SaleBO sale)
        {
            double       dailySale = 0;
            FileStream   fin       = new FileStream("saledata.txt", FileMode.Open);
            StreamReader sr        = new StreamReader(fin);

            String line;

            while ((line = sr.ReadLine()) != null)
            {
                String[] data = line.Split(';');
                if (int.Parse(data[1]) == sale.Custid && data[2] == sale.Date)
                {
                    dailySale = dailySale + double.Parse(data[4]);
                }
            }

            sr.Close();
            fin.Close();

            return(dailySale);
        }
Esempio n. 8
0
        public void save(SaleBO sale)
        {
            String        connectionstring = @"Data Source=(LocalDB)\v11.0;AttachDbFilename=C:\Users\Hassan\Desktop\POS-EAD-2\POS\MyDatabase.mdf;Integrated Security=True";
            SqlConnection con = new SqlConnection(connectionstring);

            String query = "insert into sale(customerid,amount,date) values(@custid,@am,@date);";

            SqlParameter p1 = new SqlParameter("custid", sale.Custid);
            SqlParameter p2 = new SqlParameter("am", sale.Total);
            SqlParameter p3 = new SqlParameter("date", sale.Date);

            SqlCommand cmd = new SqlCommand(query, con);

            cmd.Parameters.Add(p1);
            cmd.Parameters.Add(p2);
            cmd.Parameters.Add(p3);

            con.Open();

            cmd.ExecuteNonQuery();

            con.Close();
        }
Esempio n. 9
0
        public void displayInvoice(SaleBO sale, List <SaleLineItemBO> linelist)
        {
            bool flagS = true;

            Console.Clear();
            System.Console.WriteLine("Invoice:-\n\n\n");

            System.Console.Write("Sales ID: " + sale.Orderid.ToString().PadRight(40));
            System.Console.Write("Customer ID: " + sale.Custid.ToString().PadRight(20) + "\n\n");

            System.Console.Write("Sales Date: " + sale.Date.PadRight(40));

            CustomerBLL custB = new CustomerBLL();
            CustomerBO  custO = custB.find(sale.Custid);

            System.Console.Write("Name: " + custO.Name.ToString().PadRight(20) + "\n");

            ItemBLL itemB = new ItemBLL();

            foreach (var i in linelist)
            {
                if (flagS)
                {
                    System.Console.WriteLine("\n----------------------------------------------------");
                    System.Console.WriteLine("Item ID".PadRight(10) + "Description".PadRight(20) + "Quantity".PadRight(10) + "Amount".PadRight(20));
                    System.Console.WriteLine("----------------------------------------------------");
                    flagS = false;
                }
                ItemBO itemO = itemB.find(i.Itemid);
                System.Console.WriteLine(i.Itemid.ToString().PadRight(10) + itemO.Description.PadRight(20) + i.Quantity.ToString().PadRight(10) + i.Amount.ToString().PadRight(20));
            }
            System.Console.WriteLine("----------------------------------------------------");
            System.Console.WriteLine("".PadRight(37) + "Total: Rs." + sale.Total);
            System.Console.WriteLine("----------------------------------------------------\n");
            System.Console.WriteLine("Press any key to continue ...");
            System.Console.ReadLine();
        }
Esempio n. 10
0
        public void createSale()
        {
            Console.Clear();
            System.Console.WriteLine("New Sale\n\n");

            SaleBO  sale  = new SaleBO();
            SaleBLL saleB = new SaleBLL();

            int id = saleB.readId();

            System.Console.WriteLine("Sales ID: " + id);

            DateTime thisDay = DateTime.Today;

            System.Console.WriteLine("Sales Date: " + thisDay.ToString("dd/MM/yyyy"));

            System.Console.Write("Enter CustomerID: ");
            int    custid;
            String c = System.Console.ReadLine();

            if (c.Length != 0)
            {
                custid = int.Parse(c);
            }
            else
            {
                custid = 0;
            }

            CustomerBLL custB  = new CustomerBLL();
            CustomerBO  custO  = custB.find(custid);
            int         choice = 0;

            if (custO.Custid != 0)
            {
                List <SaleLineItemBO> lineList = new List <SaleLineItemBO>();

                SaleLineItemBLL lineBI    = new SaleLineItemBLL(); //I-initial
                SaleLineItemBO  lineitemI = makenewSale();



                if (lineitemI.Itemid != 0)
                {
                    lineitemI.Lineid = lineBI.readId();

                    lineitemI.Orderid = id;
                    lineitemI.Amount  = lineBI.calculatesubTotal(lineitemI);
                    System.Console.WriteLine("Sub-Total: Rs." + lineitemI.Amount);
                    lineList.Add(lineitemI);
                }


                while (choice != 4)
                {
                    System.Console.WriteLine("\nPress 1 to Enter New Item");
                    System.Console.WriteLine("Press 2 to End Sale");
                    System.Console.WriteLine("Press 3 to Remove an existing Item from the current sale");
                    System.Console.WriteLine("Press 4 to Cancel Sale");
                    System.Console.WriteLine("Choose from option 1 – 4:");

                    System.Console.Write("Enter Choice: ");
                    c = System.Console.ReadLine();

                    if (c.Length != 0)
                    {
                        choice = int.Parse(c);
                    }
                    else
                    {
                        choice = 0;
                    }

                    while (choice < 1 || choice > 4)
                    {
                        System.Console.Write("InValid Choice! Enter again: ");
                        c = System.Console.ReadLine();

                        if (c.Length != 0)
                        {
                            choice = int.Parse(c);
                        }
                        else
                        {
                            choice = 0;
                        }
                    }

                    if (choice == 1)
                    {
                        SaleLineItemBLL lineB    = new SaleLineItemBLL();
                        SaleLineItemBO  lineitem = makenewSale();


                        if (lineitem.Itemid != 0)
                        {
                            lineitem.Lineid = lineB.readId();

                            lineitem.Orderid = id;
                            lineitem.Amount  = lineB.calculatesubTotal(lineitem);
                            System.Console.WriteLine("Sub-Total: Rs." + lineitem.Amount);

                            lineList.Add(lineitem);
                        }
                    }
                    else if (choice == 2)
                    {
                        SaleLineItemBLL lineB = new SaleLineItemBLL();
                        if (lineList.Count > 0)
                        {
                            sale.Orderid = id;
                            sale.Date    = thisDay.ToString("dd/MM/yyyy");
                            sale.Custid  = custO.Custid;
                            sale.Total   = saleB.calculateTotal(lineList);

                            if (saleB.checkSaleLimit(sale))
                            {
                                lineB.save(lineList);
                                saleB.save(sale);

                                displayInvoice(sale, lineList);
                            }
                            else
                            {
                                Console.Clear();
                                System.Console.WriteLine("\n\n\n\n\n\n ***Error! Sale Limit Exceeded***");
                                System.Threading.Thread.Sleep(2000);
                            }
                        }

                        break;
                    }
                    else if (choice == 3)
                    {
                        int itemid; bool flag = true;
                        System.Console.Write("\nEnter ItemID to be removed: ");
                        c = System.Console.ReadLine();
                        if (c.Length != 0)
                        {
                            itemid = int.Parse(c);
                        }
                        else
                        {
                            itemid = 0;
                        }

                        List <SaleLineItemBO> removeList = new List <SaleLineItemBO>();
                        foreach (var line in lineList)
                        {
                            if (line.Itemid == itemid)
                            {
                                removeList.Add(line);
                                flag = false;
                            }
                        }

                        foreach (var line in removeList)
                        {
                            lineList.Remove(line);
                        }

                        if (flag)
                        {
                            System.Console.WriteLine("Error! Item not included in sale");
                        }
                    }
                }
            }
            else
            {
                Console.Clear();
                System.Console.WriteLine("\n\n\n\n\n\n ***Error! Customer Not Found***");
                System.Threading.Thread.Sleep(2000);
            }
        }
Esempio n. 11
0
        public void makepayment()
        {
            Console.Clear();
            System.Console.WriteLine("Payment\n\n");

            ReceiptBO  rec  = new ReceiptBO();
            ReceiptBLL recB = new ReceiptBLL();

            int recid = recB.readId();

            DateTime thisDay = DateTime.Today;

            System.Console.Write("Enter SaleID: ");
            int    saleid;
            String c = System.Console.ReadLine();

            if (c.Length != 0)
            {
                saleid = int.Parse(c);
            }
            else
            {
                saleid = 0;
            }

            SaleBLL saleB = new SaleBLL();
            SaleBO  saleO = saleB.find(saleid);

            CustomerBLL custB = new CustomerBLL();
            CustomerBO  custO = custB.find(saleO.Custid);

            if (saleO.Orderid != 0)
            {
                double amountpaid = recB.amountpaid(saleid);
                double remain     = saleO.Total - amountpaid;
                System.Console.WriteLine("Customer Name: " + custO.Name);
                System.Console.WriteLine("Total Sales Amount: " + saleO.Total);
                System.Console.WriteLine("Amount paid: " + amountpaid);
                System.Console.WriteLine("Remaining Amount: " + remain);
                System.Console.Write("Enter Amount: ");

                double amt;
                c = System.Console.ReadLine();
                if (c.Length != 0)
                {
                    amt = double.Parse(c);
                }
                else
                {
                    amt = 0;
                }

                while (amt < 0 || amt > remain)
                {
                    System.Console.Write("InValid Amount! Enter again: ");
                    c = System.Console.ReadLine();
                    if (c.Length != 0)
                    {
                        amt = double.Parse(c);
                    }
                    else
                    {
                        amt = 0;
                    }
                }

                if (remain > 0)
                {
                    custO.Amount = custO.Amount - amt;
                    custB.modify(custO);

                    rec.Receiptid  = recid;
                    rec.Orderid    = saleid;
                    rec.Amountpaid = amt;
                    recB.save(rec);
                }
                else
                {
                    System.Console.WriteLine("Back to Main Menu...");
                    System.Threading.Thread.Sleep(2000);
                }
            }
        }