Example #1
0
 /// <summary>
 /// Adiciona o movimento no contexto e atualiza o saldo do produto.
 /// </summary>
 /// <param name="movimento">Movimento que está sendo criado.</param>
 /// <returns>O movimento que foi criado.</returns>
 public MovimentoEstoque CriarMovimento(MovimentoEstoque movimento)
 {
     Context.MovimentosEstoque.Add(movimento);
     movimento.Produto.Saldo += movimento.Quantidade;
     Context.Entry(movimento.Produto).State = EntityState.Modified;
     return(movimento);
 }
Example #2
0
        public async Task <IHttpActionResult> Delete(int id)
        {
            var produto = await Context.Produtos.FindAsync(id);

            if (produto == null)
            {
                return(NotFound());
            }

            try
            {
                Context.Entry <Produto>(produto).State = EntityState.Deleted;
                await Context.SaveChangesAsync();
            }
            catch (DbUpdateException)
            {
                throw new HttpResponseException(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, "Produto não pode ser excluído pois já há vendas para este produto."));
            }

            return(Ok());
        }