Exemplo n.º 1
0
        public async Task <IActionResult> PutProductsPrice(int id, decimal productsPrice)
        {
            var  identity    = HttpContext.User.Identity as ClaimsIdentity;
            bool canContinue = await IdentifyAdminLoginAsync(identity);

            if (canContinue)
            {
                LogedUser = identity.FindFirst(ClaimTypes.NameIdentifier).Value.ToString();

                var products = await _context.Products.FindAsync(id);

                products.ProductPrice = productsPrice;

                if (id != products.ProductId)
                {
                    return(BadRequest());
                }

                _context.Entry(products).State = EntityState.Modified;

                try
                {
                    var PriceLog = new PriceLog
                    {
                        Productid       = products.ProductId,
                        NewPrice        = products.ProductPrice,
                        Pricechangedate = DateTime.UtcNow,
                        UserId          = LogedUser
                    };
                    _context.PriceLog.Add(PriceLog);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!ProductsExists(id))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }

                return(NoContent());
            }
            return(NotFound());
        }
Exemplo n.º 2
0
        public async Task <IActionResult> PutStock(int id, Stock stock)
        {
            if (id != stock.MovementId)
            {
                return(BadRequest());
            }

            _context.Entry(stock).State = EntityState.Modified;

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!StockExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(NoContent());
        }
Exemplo n.º 3
0
        public async Task <ActionResult <ProductLikes> > PostProductLikes(int id)
        {
            var    identity  = HttpContext.User.Identity as ClaimsIdentity;
            string LogedUser = identity.FindFirst(ClaimTypes.NameIdentifier).Value.ToString();
            var    product   = await _context.Products.FindAsync(id);

            ProductLikes productLikes = new ProductLikes
            {
                ProductId = id,
                UserId    = LogedUser,
                DateLiked = DateTime.UtcNow
            };

            try
            {
                product.ProductLikes         += 1;
                _context.Entry(product).State = EntityState.Modified;
                _context.ProductLikes.Add(productLikes);
                await _context.SaveChangesAsync();
            }
            catch
            {
                return(NoContent());
            }

            return(CreatedAtAction("GetProductLikes", new { id = productLikes.ProductId }, productLikes));
        }