示例#1
0
        public ActionResult Purchase(int itemList, double total)
        {
            CustomerOrderHistory coh = new CustomerOrderHistory();

            coh.LocId     = (int)HttpContext.Session.GetInt32("LocId");
            coh.CustId    = _customerBL.GetCustomerByEmail(HttpContext.Session.GetString("UserEmail")).Id;
            coh.OrderDate = DateTime.Now;
            coh.OrderId   = itemList;
            coh.Total     = total;
            _customerOrderHistoryBL.AddCustomerOrderHistory(coh);
            CustomerCart cart = new CustomerCart();

            /*cart.CustId = coh.CustId;
             * cart.LocId = coh.LocId;*/
            cart = _cartBL.GetCustomerCartByIds(coh.CustId, coh.LocId);
            cart.CurrentItemsId = _orderLineItemBL.Ident_Curr() + 1;
            _cartBL.UpdateCustomerCart(cart);
            CustomerOrderLineItem orderLineItem = new CustomerOrderLineItem();

            orderLineItem.OrderId   = cart.CurrentItemsId;
            orderLineItem.ProdId    = null;
            orderLineItem.Quantity  = 0;
            orderLineItem.ProdPrice = 0;
            _orderLineItemBL.AddCustomerOrderLineItem(orderLineItem);
            return(Redirect($"/InventoryLineItem?locId={HttpContext.Session.GetInt32("LocId")}"));
        }
示例#2
0
        public ActionResult DeleteItem(int id, string prodName)
        {
            try
            {
                InventoryLineItem iLI = _inventoryLineItemBL.GetInventoryLineItemById
                                            ((int)HttpContext.Session.GetInt32("LocId"), (int)_orderLineItemBL.GetCustomerOrderLineItemById(id, _productBL.GetProductByName(prodName).Id).ProdId);
                iLI.Quantity += _orderLineItemBL.GetCustomerOrderLineItemById(id, _productBL.GetProductByName(prodName).Id).Quantity;
                _inventoryLineItemBL.UpdateInventoryLineItem(iLI);
                _orderLineItemBL.DeleteCustomerOrderLineItem(_orderLineItemBL.GetCustomerOrderLineItemById(id, _productBL.GetProductByName(prodName).Id));

                //Log.Information($"Customer deleted-- Email: {email}");
                return(RedirectToAction("Cart"));
            }
            catch (Exception e)
            {
                /*Helper.WriteError(e, "Error");
                 * Helper.WriteFatal(e, "Fatal");
                 * Helper.WriteVerbose(e, "Verbose");*/

                CustomerCart cart = new CustomerCart();
                cart.CustId         = _customerBL.GetCustomerByEmail(HttpContext.Session.GetString("UserEmail")).Id;
                cart.LocId          = _locationBL.GetLocationById((int)HttpContext.Session.GetInt32("LocId")).Id;
                cart.CurrentItemsId = _orderLineItemBL.Ident_Curr() + 1;
                _cartBL.UpdateCustomerCart(cart);
                CustomerOrderLineItem orderLineItem = new CustomerOrderLineItem();
                orderLineItem.OrderId   = cart.CurrentItemsId;
                orderLineItem.ProdId    = null;
                orderLineItem.Quantity  = 0;
                orderLineItem.ProdPrice = 0;
                _orderLineItemBL.AddCustomerOrderLineItem(orderLineItem);
                return(Redirect($"/InventoryLineItem?locId={HttpContext.Session.GetInt32("LocId")}"));
            }
            //return View();
        }
示例#3
0
        public CustomerOrderLineItem[] LoadPreviousCutomerBill(int billno)
        {
            LinkedList <CustomerOrderLineItem> e1 = new LinkedList <CustomerOrderLineItem>();

            con                  = new SqlConnection();
            cmd                  = new SqlCommand();
            cmd.CommandText      = string.Format("select * from CustomerOrderLineItem where [BillNo.]={1}", customer.AccountNo, billno);
            con.ConnectionString = Connection;
            con.Open();
            cmd.Connection = con;
            cmd.ExecuteNonQuery();
            reader = cmd.ExecuteReader();
            while (reader.Read())
            {
                CustomerOrderLineItem e2 = new CustomerOrderLineItem();
                e2.BillNo = int.Parse(reader[0].ToString());
                // e2.PurchaseDate = reader[1].ToString();
                e2.Quantity    = int.Parse(reader[1].ToString());
                e2.ProductId   = reader[2].ToString();
                e2.ProductName = reader[3].ToString();
                e2.Rate        = double.Parse(reader[4].ToString());
                e2.Amount      = double.Parse(reader[5].ToString());
                e1.AddLast(e2);
            }
            reader.Close();
            con.Close();
            return(e1.ToArray <CustomerOrderLineItem>());
        }
        public void OrderRecord(DataGridView d1, int bilno, string date)
        {
            LinkedList <CustomerOrderLineItem> OrderLineItem = new LinkedList <CustomerOrderLineItem>();

            for (int i = 0; i < d1.RowCount - 1; i++)
            {
                CustomerOrderLineItem o1 = new CustomerOrderLineItem();
                o1.BillNo = bilno;

                o1.Quantity    = int.Parse(d1.Rows[i].Cells[0].Value.ToString());
                o1.ProductId   = d1.Rows[i].Cells[1].Value.ToString();
                o1.ProductName = d1.Rows[i].Cells[2].Value.ToString();
                o1.Rate        = double.Parse(d1.Rows[i].Cells[3].Value.ToString());
                o1.Amount      = double.Parse(d1.Rows[i].Cells[4].Value.ToString());

                customerOrder.TotalAmount = totalamt;


                OrderLineItem.AddLast(o1);
            }
            WriteOrder(customerOrder, OrderLineItem);
            DetectProductQuantity(OrderLineItem);
            UpdateNewRemainingPayment();
            // totalamt = 0;
        }
示例#5
0
        public void UpdateInventory(CustomerOrderLineItem orderItem)
        {
            InventoryLineItem invItem = _inventoryLineItemsBL.GetInventoryLineItemById((int)_location.Id, (int)orderItem.ProdId);

            invItem.Quantity -= orderItem.Quantity;
            _inventoryLineItemsBL.UpdateInventoryLineItem(_inventoryLineItemsBL.GetInventoryLineItemById((int)_location.Id, (int)orderItem.ProdId), invItem);
        }
示例#6
0
        public void UpdateCustomerOrderLineItem(CustomerOrderLineItem customerOrderLineItem2BUpated)
        {
            Entity.CustomerOrderLineItem oldCustomerOrderLineItem = _context.CustomerOrderLineItems.Find(customerOrderLineItem2BUpated.Id);
            _context.Entry(oldCustomerOrderLineItem).CurrentValues.SetValues(_mapper.ParseCustomerOrderLineItem(customerOrderLineItem2BUpated));

            _context.SaveChanges();
            _context.ChangeTracker.Clear();
        }
示例#7
0
 public void UpdateCustomerOrderLineItem(CustomerOrderLineItem customerOrderLineItem2BUpdated, CustomerOrderLineItem updatedDetails)
 {
     customerOrderLineItem2BUpdated.OrderId   = updatedDetails.OrderId;
     customerOrderLineItem2BUpdated.ProdId    = updatedDetails.ProdId;
     customerOrderLineItem2BUpdated.Quantity  = updatedDetails.Quantity;
     customerOrderLineItem2BUpdated.ProdPrice = updatedDetails.ProdPrice;
     _repo.UpdateCustomerOrderLineItem(customerOrderLineItem2BUpdated);
 }
        public CustomerOrderLineItem UpdateCustomerOrderLineItem(CustomerOrderLineItem customerOrderLineItem2BUpated)
        {
            CustomerOrderLineItem oldCustomerOrderLineItem = _context.CustomerOrderLineItems.Find(customerOrderLineItem2BUpated.Id);

            _context.Entry(oldCustomerOrderLineItem).CurrentValues.SetValues(customerOrderLineItem2BUpated);

            _context.SaveChanges();
            _context.ChangeTracker.Clear();
            return(customerOrderLineItem2BUpated);
        }
示例#9
0
        public CustomerOrderLineItem GetCustomerOrderLineItemDetails()
        {
            CustomerOrderLineItem newLineItem = new CustomerOrderLineItem();

            newLineItem.OrderId    = _customerOrderLineItemBL.Ident_Curr() + 1; //newLineItem.Id;
            newLineItem.ProdId     = null;
            newLineItem.Quantity   = 0;
            newLineItem.ProdPrice  = 0;
            _customerOrderLineItem = newLineItem;
            return(newLineItem);
        }
示例#10
0
        public CustomerOrderLineItem GetCustomerOrderLineItemDetails(int orderId, int prodId, int quantity)
        {
            CustomerOrderLineItem newLineItem = new CustomerOrderLineItem();

            newLineItem.OrderId    = orderId; //newLineItem.Id;
            newLineItem.ProdId     = prodId;
            newLineItem.Quantity   = quantity;
            newLineItem.ProdPrice  = _productBL.GetProductById(prodId).ProdPrice;
            _customerOrderLineItem = newLineItem;
            return(newLineItem);
        }
示例#11
0
 public CartIndexVM cast2CartIndexVM(CustomerOrderLineItem coli2BCasted, Product product2BCasted)
 {
     return(new CartIndexVM
     {
         ProdName = product2BCasted.ProdName,
         Quantity = coli2BCasted.Quantity,
         ProdPrice = product2BCasted.ProdPrice,
         Total = coli2BCasted.Quantity * product2BCasted.ProdPrice,
         Id = coli2BCasted.OrderId
     });
 }
示例#12
0
        public void AddItemToCart(string _item)
        {
            int prodId = int.Parse(_item);

            Console.WriteLine($"Ordering {_productBL.GetProductById(prodId).ProdName}");
            Console.Write($"Enter Quantity to add to cart: ");
            int quantity = int.Parse(Console.ReadLine());

            Console.WriteLine();
            bool exists = false;
            CustomerOrderLineItem orderItem2BUpdated = new CustomerOrderLineItem();

            foreach (var item in _customerOrderLineItemBL.GetCustomerOrderLineItems())
            {
                if (item.OrderId == _customerCart.CurrentItemsId && item.ProdId == prodId)
                {
                    exists             = true;
                    orderItem2BUpdated = item;
                }
            }
            try
            {
                if (_customerOrderLineItem.ProdId != null && exists)
                {
                    orderItem2BUpdated.Quantity += quantity;
                    _customerOrderLineItemBL.UpdateCustomerOrderLineItem(_customerOrderLineItemBL.GetCustomerOrderLineItemById((int)orderItem2BUpdated.Id), orderItem2BUpdated);
                }
                else if (_customerOrderLineItem.ProdId != null && !exists)
                {
                    _customerOrderLineItemBL.AddCustomerOrderLineItem(GetCustomerOrderLineItemDetails((int)_customerOrderLineItem.OrderId, (int)prodId, (int)quantity));
                }
                else if (_customerOrderLineItem.ProdId == null)
                {
                    _customerOrderLineItem.ProdId    = prodId;
                    _customerOrderLineItem.Quantity  = quantity;
                    _customerOrderLineItem.ProdPrice = _productBL.GetProductById(prodId).ProdPrice;
                    _customerOrderLineItemBL.UpdateCustomerOrderLineItem(_customerOrderLineItemBL.GetCustomerOrderLineItemById((int)_customerOrderLineItem.Id), _customerOrderLineItem);
                }
            }
            catch (System.Exception)
            {
                throw;
            }
        }
        public void AddToCart(int index, int quantity)
        {//add items to cart....
            CustomerOrder         c1 = new CustomerOrder();
            CustomerOrderLineItem c2 = new CustomerOrderLineItem();

            MessageBox.Show(products[index].PRODUCT_ID);
            c2.ProductId   = products[index].PRODUCT_ID;
            c2.ProductName = products[index].PRODUCT_NAME;
            c2.Quantity    = quantity;

            c2.Rate         = products[index].PRODUCT_PRICE;
            c2.Amount       = c2.Rate * quantity;
            c1.PurchaseDate = DateTime.Now.ToString("yyyy-MM-dd");
            c1.CustomerId   = customer.AccountNo;
            c1.BillNo       = GetBillNo();
            c2.BillNo       = c1.BillNo;

            customerOrder = c1;
            OrderLineItem.AddLast(c2);
        }
示例#14
0
        public ActionResult Create(CustomerCRVM newCustomer)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    _customerBL.AddCustomer(_mapper.cast2Customer(newCustomer));
                    Log.Information($"Customer created-- Email: {newCustomer.CustomerEmail}");

                    //move this loop to BL
                    foreach (var loc in _locationBL.GetLocations())
                    {
                        CustomerCart cart = new CustomerCart();
                        cart.CustId         = _customerBL.GetCustomerByEmail(newCustomer.CustomerEmail).Id;
                        cart.LocId          = loc.Id;
                        cart.CurrentItemsId = _orderLineItemBL.Ident_Curr() + 1;
                        _cartBL.AddCustomerCart(cart);
                        CustomerOrderLineItem orderLineItem = new CustomerOrderLineItem();
                        orderLineItem.OrderId   = cart.CurrentItemsId;
                        orderLineItem.ProdId    = null;
                        orderLineItem.Quantity  = 0;
                        orderLineItem.ProdPrice = 0;
                        _orderLineItemBL.AddCustomerOrderLineItem(orderLineItem);
                    }
                    //Helper.WriteInformation($"Customer created-- Email: {newCustomer.CustomerEmail}");

                    return(Redirect("/Customer/Login"));
                }
                catch (Exception e)
                {
                    Helper.WriteError(e, "Error");
                    Helper.WriteFatal(e, "Fatal");
                    Helper.WriteVerbose(e, "Verbose");
                    return(View());
                }
                finally
                {
                }
            }
            return(View());
        }
示例#15
0
 public void GetCart()
 {
     try
     {
         _customerCart = _customerCartBL.GetCustomerCartByIds((int)_user.Id, (int)_location.Id);
         //_customerOrderLineItem = _customerOrderLineItemBL.GetCustomerOrderLineItemById((int)_customerCart.CurrentItemsId);
         foreach (var item in _customerOrderLineItemBL.GetCustomerOrderLineItems())
         {
             if (item.OrderId == _customerCart.CurrentItemsId)
             {
                 _customerOrderLineItem = item;
                 break;
             }
         }
     }
     catch (Exception)
     {
         CreateCustomerOrderLineItem();
         CreateCustomerCart();
     }
 }
示例#16
0
 public void DeleteCustomerOrderLineItem(CustomerOrderLineItem customerOrderLineItem2BDeleted)
 {
     _repo.DeleteCustomerOrderLineItem(customerOrderLineItem2BDeleted);
 }
 public CustomerOrderLineItem UpdateCustomerOrderLineItem(CustomerOrderLineItem customerOrderLineItem2BUpdated)
 {
     return(_repo.UpdateCustomerOrderLineItem(customerOrderLineItem2BUpdated));
 }
 public CustomerOrderLineItem DeleteCustomerOrderLineItem(CustomerOrderLineItem customerOrderLineItem2BDeleted)
 {
     return(_repo.DeleteCustomerOrderLineItem(customerOrderLineItem2BDeleted));
 }
 public CustomerOrderLineItem AddCustomerOrderLineItem(CustomerOrderLineItem newCustomerOrderLineItem)
 {
     //TODO: Add BL
     return(_repo.AddCustomerOrderLineItem(newCustomerOrderLineItem));
 }
        /*[HttpPost]
         * [ValidateAntiForgeryToken]*/
        public ActionResult AddToCart(int id, int amount) //(OrderItemVM item, int amount)
        {
            /*_executeOrder.AddItemToCart(_customerBL.GetCustomerByEmail(HttpContext.Session.GetString("UserEmail")),
             *  _inventoryLineItemBL.GetInventoryLineItemById(id), amount);*/

            //move to BL
            try
            {
                if (_inventoryLineItemBL.GetInventoryLineItemById(
                        _inventoryLineItemBL.GetInventoryLineItemById(id).InventoryId,
                        _inventoryLineItemBL.GetInventoryLineItemById(id).ProductId).Quantity > 0)
                {
                    bool updateCOLI            = false;
                    CustomerOrderLineItem coli = new CustomerOrderLineItem();
                    Customer     customer      = new Customer();
                    CustomerCart cart          = new CustomerCart();
                    customer = _customerBL.GetCustomerByEmail(HttpContext.Session.GetString("UserEmail"));
                    cart     = _cartBL.GetCustomerCartByIds(customer.Id, _inventoryLineItemBL.GetInventoryLineItemById(id).InventoryId);

                    coli.OrderId   = cart.CurrentItemsId;
                    coli.ProdId    = _inventoryLineItemBL.GetInventoryLineItemById(id).ProductId;
                    coli.Quantity  = amount;
                    coli.ProdPrice = _productBL.GetProductById(_inventoryLineItemBL.GetInventoryLineItemById(id).ProductId).ProdPrice;

                    foreach (var item in _coliBL.GetCustomerOrderLineItemById(cart.CurrentItemsId))
                    {
                        if (item.ProdId == null)
                        {
                            coli           = item;
                            coli.ProdId    = _inventoryLineItemBL.GetInventoryLineItemById(id).ProductId;
                            coli.Quantity  = amount;
                            coli.ProdPrice = _productBL.GetProductById(_inventoryLineItemBL.GetInventoryLineItemById(id).ProductId).ProdPrice;
                            updateCOLI     = true;
                            break;
                        }
                        else if (item.ProdId == _inventoryLineItemBL.GetInventoryLineItemById(id).ProductId)
                        {
                            coli           = item;
                            coli.Quantity += amount;
                            updateCOLI     = true;
                            break;
                        }
                    }
                    if (updateCOLI)
                    {
                        _coliBL.UpdateCustomerOrderLineItem(coli);
                    }
                    else
                    {
                        _coliBL.AddCustomerOrderLineItem(coli);
                    }
                    InventoryLineItem updateILI = _inventoryLineItemBL.GetInventoryLineItemById(id);
                    updateILI.Quantity -= 1;
                    _inventoryLineItemBL.UpdateInventoryLineItem(updateILI);
                    return(RedirectToAction("Index", new { locId = _inventoryLineItemBL.GetInventoryLineItemById(id).InventoryId }));
                }
                else
                {
                    return(RedirectToAction("Index", new { locId = _inventoryLineItemBL.GetInventoryLineItemById(id).InventoryId }));
                }
            }
            catch (Exception e)
            {
                return(RedirectToAction("Index", new { locId = _inventoryLineItemBL.GetInventoryLineItemById(id).InventoryId }));
            }



            /*coli = _coliBL.GetCustomerOrderLineItemById(cart.CurrentItemsId);
             * if (coli.ProdId == null)
             * {
             *  coli.ProdId =
             * }*/
        }
 public CustomerOrderLineItem AddCustomerOrderLineItem(CustomerOrderLineItem newCustomerOrderLineItem)
 {
     _context.CustomerOrderLineItems.Add(newCustomerOrderLineItem);
     _context.SaveChanges();
     return(newCustomerOrderLineItem);
 }
 public CustomerOrderLineItem DeleteCustomerOrderLineItem(CustomerOrderLineItem customerOrderLineItem2BDeleted)
 {
     _context.CustomerOrderLineItems.Remove(customerOrderLineItem2BDeleted);
     _context.SaveChanges();
     return(customerOrderLineItem2BDeleted);
 }
示例#23
0
 // Add to CustomerOrderLineItem
 public void AddItemToCart(Customer customer, InventoryLineItem item,
                           int quantity)
 {
     CustomerOrderLineItem _coli = new CustomerOrderLineItem();
 }
示例#24
0
 public void AddCustomerOrderLineItem(CustomerOrderLineItem newCustomerOrderLineItem)
 {
     //TODO: Add BL
     _repo.AddCustomerOrderLineItem(newCustomerOrderLineItem);
 }