コード例 #1
0
        public async Task <IActionResult> AddProduct(PurchaseDetailTmpViewModel view)
        {
            var user = await _dataContext.Users.Where(u => u.UserName == User.Identity.Name).FirstOrDefaultAsync();

            if (ModelState.IsValid)
            {
                var purchaseDetailTmp = _dataContext.PurchaseDetailTmps.Where(sdt => sdt.Username == User.Identity.Name && sdt.Product.Id == view.ProductId).FirstOrDefault();
                if (purchaseDetailTmp == null)
                {
                    var product = await _dataContext.Products.FindAsync(view.ProductId);

                    purchaseDetailTmp = new PurchaseDetailTmp
                    {
                        Id       = view.Id,
                        Name     = product.Name,
                        Price    = view.Price,
                        Quantity = view.Quantity,
                        Username = User.Identity.Name,
                        Product  = await _dataContext.Products.FindAsync(view.ProductId)
                    };
                    _dataContext.PurchaseDetailTmps.Add(purchaseDetailTmp);
                }
                else
                {
                    purchaseDetailTmp.Quantity += view.Quantity;
                    _dataContext.Entry(purchaseDetailTmp).State = EntityState.Modified;
                }
                await _dataContext.SaveChangesAsync();

                return(RedirectToAction("Create"));
            }

            view.Products = _combosHelper.GetComboProducts();
            return(View(view));
        }
コード例 #2
0
        public IActionResult AddProduct()
        {
            var model = new PurchaseDetailTmpViewModel
            {
                Products = _combosHelper.GetComboProducts()
            };

            return(View(model));
        }