Example #1
0
        public decimal SelfPurchase(Cart cart)
        {
            decimal sum = 0;

            receipt = "\t\tPurchase in Vered Shop   " + DateTime.Now + "\t\n\n" + $"{"Barcode",-30}{"Price",-25}{"Product"}\n\n";

            if (Client != null)
            {
                var order = new Order()
                {
                    SellerId = 4,

                    ClientId = Client.ClientId,

                    Created = DateTime.Now
                };
                dataBase.Orders.Add(order);
                dataBase.SaveChanges();
                var sells = new List <Sell>();

                foreach (Product product in cart)
                {
                    if (product.CountOnShelf > 0)
                    {
                        var sell = new Sell()
                        {
                            OrderId   = order.OrderId,
                            ProductId = product.ProductId,
                        };
                        dataBase.Sells.Add(sell);
                        long barcode      = product.Barcode;
                        var  productCount = dataBase.Products.Where(i => i.Barcode == barcode).FirstOrDefault();
                        receipt += $"{product.Barcode,-25}{product.Price,-25}{product.Name} \n";
                        productCount.CountOnShelf--;
                        sum += product.Price;
                    }
                }
                receipt     += "\nOrder Number: " + order.OrderId + " Status : Closed  Total price:\t" + sum;
                order.Amount = sum;
                dataBase.SaveChanges();

                #region Send Mail With Bill To Client
                if (Client.Email != null)
                {
                    try
                    {
                        MailAddress from = new MailAddress("*****@*****.**", "Vered Shop");

                        MailAddress to = new MailAddress("*****@*****.**");

                        MailMessage mail = new MailMessage(from, to);

                        mail.Subject = "Veres Shop Purchase";

                        mail.Body = $"<h2>Hello, {Client}. You made a purchase on the date {order.Created}. The sum of purchase is {sum}. Thanks for purchase! </h2>";

                        mail.IsBodyHtml = true;

                        SmtpClient smtp = new SmtpClient("smtp.gmail.com", 587);

                        smtp.Credentials = new NetworkCredential("*****@*****.**", "algebra12");
                        smtp.EnableSsl   = true;
                        smtp.Send(mail);
                    }
                    catch
                    {
                    }
                }
                #endregion
            }
            else
            {
                var order = new Order()
                {
                    SellerId = 4,

                    ClientId = 5,

                    Created = DateTime.Now
                };
                dataBase.Orders.Add(order);
                dataBase.SaveChanges();

                var sells = new List <Sell>();

                foreach (Product product in cart)
                {
                    if (product.CountOnShelf > 0)
                    {
                        var sell = new Sell()
                        {
                            OrderId   = order.OrderId,
                            ProductId = product.ProductId,
                        };
                        dataBase.Sells.Add(sell);
                        long barcode      = product.Barcode;
                        var  productCount = dataBase.Products.Where(i => i.Barcode == barcode).FirstOrDefault();
                        receipt += $"{product.Barcode,-25}{product.Price,-25}{product.Name} \n";
                        productCount.CountOnShelf--;
                        sum += product.Price;
                    }
                }
                receipt     += "\nOrder Number: " + order.OrderId + " Status : Closed  Total price:\t" + sum;
                order.Amount = sum;
                dataBase.SaveChanges();
            }



            #region Create A Bill

            using (PdfDocument document = new PdfDocument())
            {
                PdfPage page = document.Pages.Add();

                PdfGraphics graphics = page.Graphics;

                PdfFont font = new PdfStandardFont(PdfFontFamily.Helvetica, 20);

                graphics.DrawString(receipt, font, PdfBrushes.Black, new PointF(0, 0));

                document.Save("Bill.pdf");
            }
            #endregion



            return(sum);
        }
Example #2
0
        public decimal buyThroughPos(Cart cart)
        {
            decimal sum = 0;

            receipt = "\t\tPurchase in Vered Shop   " + DateTime.Now + "\t\n\n" + $"{"Barcode",-30}{"Price",-25}{"Product"}\n\n";

            if (Seller != null)
            {
                var order = new Order()
                {
                    SellerId = Seller.SellerId,

                    ClientId = Client.ClientId,

                    Created = DateTime.Now
                };
                dataBase.Orders.Add(order);
                dataBase.SaveChanges();


                var sells = new List <Sell>();

                foreach (Product product in cart)
                {
                    if (product.CountOnShelf > 0)
                    {
                        var sell = new Sell()
                        {
                            OrderId   = order.OrderId,
                            ProductId = product.ProductId,
                        };
                        dataBase.Sells.Add(sell);
                        long barcode      = product.Barcode;
                        var  productCount = dataBase.Products.Where(i => i.Barcode == barcode).FirstOrDefault();
                        receipt += $"{product.Barcode,-20}{product.Price,-20}{product.Name} \n";
                        productCount.CountOnShelf--;
                        sum += product.Price;
                    }
                }
                receipt     += "\nOrder Number: " + order.OrderId + " Status : Closed   Total price:\t" + sum + "\n\n";
                order.Amount = sum;
                dataBase.SaveChanges();
            }
            else
            {
                var order = new Order()
                {
                    SellerId = 4,

                    ClientId = Client.ClientId,

                    Created = DateTime.Now
                };
                dataBase.Orders.Add(order);
                dataBase.SaveChanges();


                var sells = new List <Sell>();

                foreach (Product product in cart)
                {
                    if (product.CountOnShelf > 0)
                    {
                        var sell = new Sell()
                        {
                            OrderId   = order.OrderId,
                            ProductId = product.ProductId,
                        };
                        dataBase.Sells.Add(sell);
                        long barcode      = product.Barcode;
                        var  productCount = dataBase.Products.Where(i => i.Barcode == barcode).FirstOrDefault();
                        receipt += $"{product.Barcode,-20}{product.Price,-20}{product.Name} \n";
                        productCount.CountOnShelf--;
                        sum += product.Price;
                    }
                }
                receipt     += "\nOrder Number: " + order.OrderId + " Status : Closed   Total price:\t" + sum;
                order.Amount = sum;
                dataBase.SaveChanges();
            }

            #region Create A Bill

            using (PdfDocument document = new PdfDocument())
            {
                PdfPage page = document.Pages.Add();

                PdfGraphics graphics = page.Graphics;

                PdfFont font = new PdfStandardFont(PdfFontFamily.Helvetica, 20);

                graphics.DrawString(receipt, font, PdfBrushes.Black, new PointF(0, 0));

                document.Save("Bill.pdf");
            }
            #endregion

            return(sum);
        }