Example #1
0
        public async Task <RSOrderItem> AddOrderItem(int id, [FromBody] int productId)
        {
            RSOrder order = await db.Orders.FindAsync(id);

            if (!order.Active) //Disallow editing closed orders
            {
                return(null);
            }

            RSProduct product = await db.Products.FindAsync(productId);

            if (order != null && product != null)
            {
                RSOrderItem oi = new RSOrderItem(product, order);
                db.OrderItems.Add(oi);
                await db.SaveChangesAsync();

                return(new RSOrderItem()
                {
                    Id = oi.Id,
                    Price = oi.Price,
                    State = oi.State,
                    Product = oi.Product != null ? new RSProduct()
                    {
                        Id = oi.Product.Id,
                        Title = oi.Product.Title
                    } : null
                });
            }
            else
            {
                return(null);
            }
        }
Example #2
0
        public async Task <ActionResult> DeleteConfirmed(int id)
        {
            RSProduct rSProduct = await db.Products.FindAsync(id);

            db.Products.Remove(rSProduct);
            await db.SaveChangesAsync();

            return(RedirectToAction("Index"));
        }
Example #3
0
        public async Task <ActionResult> Edit(RSProduct rSProduct)
        {
            if (ModelState.IsValid)
            {
                db.Entry(rSProduct).State = System.Data.Entity.EntityState.Modified;
                await db.SaveChangesAsync();

                return(RedirectToAction("Index"));
            }
            return(View(rSProduct));
        }
Example #4
0
        public async Task <ActionResult> Create(RSProduct rSProduct)
        {
            if (ModelState.IsValid)
            {
                db.Products.Add(rSProduct);
                await db.SaveChangesAsync();

                return(RedirectToAction("Index"));
            }

            return(View(rSProduct));
        }
Example #5
0
        // GET: Products/Delete/5
        public async Task <ActionResult> Delete(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            RSProduct rSProduct = await db.Products.FindAsync(id);

            if (rSProduct == null)
            {
                return(HttpNotFound());
            }
            return(View(rSProduct));
        }
Example #6
0
        private async void navProductMenu_ProductSelected(RSProduct product)
        {
            RSOrderItem orderItem = await Service.AddOrderItem(order.Id, product.Id);

            if (orderItem != null)
            {
                order.Items.Add(orderItem);
                lstOrderItems.ItemsSource = order.Items.Where(oi => oi.State < 2);
            }
            else
            {
                MessageDialog md = new MessageDialog("Položku nelze přidat.", "Přidání položky");
                await md.ShowAsync();
            }
        }
Example #7
0
        // GET: Products/Details/5
        public async Task <ActionResult> Details(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }

            RSProduct rSProduct = await db.Products.Include(p => p.Stocks).SingleOrDefaultAsync(p => p.Id == id);

            if (rSProduct == null)
            {
                return(HttpNotFound());
            }

            return(View(rSProduct));
        }
Example #8
0
        public async Task <ActionResult> RemoveStock(int id, int stockId)
        {
            RSStockItem stock = await db.StockItems.FindAsync(stockId);

            RSProduct product = await db.Products.FindAsync(id);

            if (stock != null && product != null)
            {
                if (product.Stocks.Remove(stock))
                {
                    db.StockItems.Remove(stock);
                    await db.SaveChangesAsync();

                    return(Json(true));
                }
            }
            throw new HttpException(400, "Error removing item");
        }
Example #9
0
        public async Task <ActionResult> AddProduct(int id, int productId)
        {
            RSProduct product = await db.Products.FindAsync(productId);

            RSOrder order = await db.Orders.FindAsync(id);

            if (product != null && order != null)
            {
                RSOrderItem orderItem = new RSOrderItem(product, order);

                db.OrderItems.Add(orderItem);
                await db.SaveChangesAsync();

                return(Json(true));
            }
            else
            {
                throw new HttpException(400, "Error inserting OrderItem");
            }
        }
Example #10
0
        public async Task <ActionResult> AddStock(int id, int stockId, double amount)
        {
            RSStock stock = await db.Stocks.FindAsync(stockId);

            RSProduct product = await db.Products.FindAsync(id);

            if (stock != null && product != null)
            {
                RSStockItem stockItem = new RSStockItem();
                stockItem.Amount  = amount;
                stockItem.Stock   = stock;
                stockItem.Product = product;

                db.StockItems.Add(stockItem);
                await db.SaveChangesAsync();

                return(Json(true));
            }
            else
            {
                throw new HttpException(400, "Error inserting item");
            }
        }