public HttpResponseMessage Put(MovimentacaoEstoqueViewModel movimentacaoViewModel) { if (ModelState.IsValid) { bool verifica = _movimentacaoApp.Update(movimentacaoViewModel); return(verifica ? Request.CreateResponse(HttpStatusCode.OK, "Dado excluído com sucesso!") : Request.CreateErrorResponse(HttpStatusCode.BadRequest, "Estoque insuficiente para esta operação!")); } return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState)); }
public HttpResponseMessage Post(MovimentacaoEstoqueViewModel movimentacaoViewModel) { if (ModelState.IsValid) { movimentacaoViewModel.TipoMovimento = "Entrada"; _movimentacaoApp.Add(movimentacaoViewModel); return(Request.CreateResponse(HttpStatusCode.Created, movimentacaoViewModel)); } return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState)); }
public void Add(MovimentacaoEstoqueViewModel movimentacaoViewModel) { var movimentacao = Mapper.Map <MovimentacaoEstoqueViewModel, MovimentacaoEstoque>(movimentacaoViewModel); BeginTransaction(); //Cadastra Movimentacao _movimentacaoService.Add(movimentacao); _logSistemaService.AddLog("MovimentacaoEstoque", movimentacaoViewModel.MovimentacaoId, "Cadastro", ""); Commit(); }
public bool Update(MovimentacaoEstoqueViewModel movimentacaoViewModel) { var movimentacao = Mapper.Map <MovimentacaoEstoqueViewModel, MovimentacaoEstoque>(movimentacaoViewModel); var movimentacaoBase = _movimentacaoService.GetById(movimentacao.MovimentacaoId); var e = _estoqueService.GetById(movimentacao.EstoqueId); BeginTransaction(); //Estou alterando acrescentando quantidade if (movimentacaoBase.Quantidade < movimentacao.Quantidade) { e.Quantidade = e.Quantidade + (movimentacao.Quantidade - movimentacaoBase.Quantidade); } else { //Estou alterando retirando quantidade if (movimentacaoBase.Quantidade > movimentacao.Quantidade) { //Verifica se tem estoque suficiente para quantidade retirada if (e.Quantidade < (movimentacaoBase.Quantidade - movimentacao.Quantidade)) { return(false); } else { e.Quantidade = e.Quantidade - (movimentacaoBase.Quantidade - movimentacao.Quantidade); } } } e.ValorTotal = e.Quantidade * e.ValorUnitario; //Atualiza Movimentacao _movimentacaoService.Add(movimentacao); //Atualiza estoque _estoqueService.Update(e); _logSistemaService.AddLog("MovimentacaoEstoque", movimentacaoViewModel.MovimentacaoId, "Update", ""); Commit(); return(true); }
public MovimentacaoEstoquePage() { BindingContext = movViewModel = new MovimentacaoEstoqueViewModel(); InitializeComponent(); current = this; }