private EstoqueDto ObterEstoque(GDASession sessao, DadosAdicionaisFiltroPedidoDto dadosAdicionais, Produto produto) { var pedidoProducao = dadosAdicionais.TipoPedido == Data.Model.Pedido.TipoPedidoEnum.Producao; var estoqueReal = (decimal)ProdutoLojaDAO.Instance.GetEstoque( sessao, (uint)dadosAdicionais.IdLoja, (uint)produto.IdProd, pedidoProducao); var bloquearEstoque = !pedidoProducao && GrupoProdDAO.Instance.BloquearEstoque(sessao, produto.IdGrupoProd, produto.IdSubgrupoProd); var estoqueAtual = bloquearEstoque ? estoqueReal : 999999999; var retorno = new EstoqueDto { QuantidadeReal = estoqueReal, QuantidadeAtual = estoqueAtual, NumeroBarrasAluminio = null, Unidade = "peça(s)", ExibirPopupFaltaEstoque = PedidoConfig.DadosPedido.ExibePopupVidrosEstoque && ProdutoDAO.Instance.ExibirMensagemEstoque(sessao, produto.IdGrupoProd, produto.IdSubgrupoProd), }; var tipoCalculo = (TipoCalculoGrupoProd)produto.TipoCalculo; this.CalcularQuantidadeBarrasAluminio(tipoCalculo, retorno); this.VerificarUnidadeEstoqueEM2(tipoCalculo, retorno); return(retorno); }
public async Task <EstoqueDto> AddAsync(EstoqueDto estoqueDto) { var estoque = this.mapperEstoque.MapperDtoToEntity(estoqueDto); var result = await this.serviceEstoque.AddAsync(estoque); return(this.mapperEstoque.MapperEntityToDto(result)); }
public void Initialize() { service = new VeiculoService(veiculoRepository); veiculo = new Veiculo("IKG6861", "Verde", 100.00, true, true, "Hyundai", "HB20", TipoVeiculo.Carro, "Venda"); listaVeiculo = new List <Veiculo> { veiculo }; estoque = new EstoqueDto(veiculo.Id, veiculo.Placa, veiculo.Cor, veiculo.Preco, Enum.GetName(typeof(TipoVeiculo), veiculo.TipoVeiculo), veiculo.TipoOperacao, veiculo.ArCondicionado, veiculo.Automatico, veiculo.Marca, veiculo.Modelo, veiculo.Disponivel); expected = new List <EstoqueDto> { estoque }; }
public async Task <ActionResult <EstoqueDto> > Adicionar(EstoqueDto obj) { if (!ModelState.IsValid) { return(CustomResponse(ModelState)); } await _Estoqueservice.Adicionar(_mapper.Map <Estoque>(obj)); obj.UltimaAtualizacao = DateTime.Now; return(CustomResponse(obj)); }
public async Task <ActionResult <EstoqueDto> > Put(Guid id, [FromBody] EstoqueDto estoqueDto) { try { return(await this.applicationServiceEstoque.UpdateAsync(id, estoqueDto)); } catch (Exception ex) { throw ex; } }
public async Task <ActionResult <EstoqueDto> > Post([FromBody] EstoqueDto estoqueDto) { try { return(await this.applicationServiceEstoque.AddAsync(estoqueDto)); } catch (Exception ex) { throw ex; } }
public EstoqueDto MapperEntityToDto(Estoque estoque) { var estoqueDto = new EstoqueDto() { Id = estoque.Id, IdProduto = estoque.IdProduto, IdUnidadeAtendimento = estoque.IdUnidadeAtendimento, Quantidade = estoque.Quantidade }; return(estoqueDto); }
public Estoque MapperDtoToEntity(EstoqueDto estoqueDto) { var estoque = new Estoque() { Id = estoqueDto.Id, IdProduto = estoqueDto.IdProduto, IdUnidadeAtendimento = estoqueDto.IdUnidadeAtendimento, Quantidade = estoqueDto.Quantidade }; return(estoque); }
public IActionResult EditarEstoque(int id) { var estoque = database.Estoques.Include(p => p.Produto).First(e => e.Id == id); ViewBag.Produto = database.Produtos.ToList(); EstoqueDto estoqueView = new EstoqueDto(); estoqueView.Id = estoque.Id; estoqueView.ProdutoID = estoque.Produto.Id; estoqueView.Quantidade = estoque.Quantidade; return(View(estoqueView)); }
public async Task <IActionResult> Delete(EstoqueDto dto) { var result = new HttpResult <EstoqueDto>(this._logger, this._service); try { await this._service.Remove(dto); return(result.ReturnCustomResponse(dto)); } catch (Exception ex) { return(result.ReturnCustomException(ex, "Estoque", dto)); } }
private void VerificarUnidadeEstoqueEM2(TipoCalculoGrupoProd tipoCalculo, EstoqueDto estoque) { var tiposCalculoM2 = new[] { TipoCalculoGrupoProd.M2, TipoCalculoGrupoProd.M2Direto, }; if (!tiposCalculoM2.Contains(tipoCalculo)) { return; } estoque.Unidade = "m²"; }
public IActionResult Atualizar(EstoqueDto dadosTemporario) { if (ModelState.IsValid) { var dados = database.Estoques.First(est => est.Id == dadosTemporario.Id); dados.Produto = database.Produtos.First(pro => pro.Id == dadosTemporario.ProdutoID); dados.Quantidade = dadosTemporario.Quantidade; database.SaveChanges(); return(RedirectToAction("ListarEstoque", "Gestao")); } else { ViewBag.Produto = database.Produtos.ToList(); return(View("../Gestao/EditarEstoque")); } }
public async Task <EstoqueDto> UpdateAsync(Guid id, EstoqueDto estoqueDto) { var result = await this.GetByIdAsync(id); if (result != null) { estoqueDto.Id = result.Id; var estoque = this.mapperEstoque.MapperDtoToEntity(estoqueDto); await this.serviceEstoque.UpdateAsync(estoque); return(await this.GetByIdAsync(estoque.Id)); } else { return(new EstoqueDto()); } }
public async Task <ActionResult <EstoqueDto> > Atualizar(int id, EstoqueDto obj) { if (id != obj.Id) { NotificarErro("O id informado não é o mesmo que foi passado na requisção"); return(CustomResponse(obj)); } if (!ModelState.IsValid) { return(CustomResponse(ModelState)); } obj.UltimaAtualizacao = DateTime.Now; await _Estoqueservice.Atualizar(_mapper.Map <Estoque>(obj)); return(CustomResponse(obj)); }
public IActionResult Salvar(EstoqueDto dadosTemporario) { if (ModelState.IsValid) { Estoque dados = new Estoque(); dados.Produto = database.Produtos.First(Produto => Produto.Id == dadosTemporario.ProdutoID); dados.Quantidade = dadosTemporario.Quantidade; dados.Status = true; database.Estoques.Add(dados); database.SaveChanges(); return(RedirectToAction("ListarEstoque", "Gestao")); } else { ViewBag.Produto = database.Produtos.ToList(); return(View("../Gestao/NovoEstoque")); } }
private void CalcularQuantidadeBarrasAluminio(TipoCalculoGrupoProd tipoCalculo, EstoqueDto estoque) { var tiposCalculoBarrasAluminio = new[] { TipoCalculoGrupoProd.MLAL0, TipoCalculoGrupoProd.MLAL05, TipoCalculoGrupoProd.MLAL1, TipoCalculoGrupoProd.MLAL6, }; if (!tiposCalculoBarrasAluminio.Contains(tipoCalculo)) { return; } estoque.Unidade = "ml"; estoque.NumeroBarrasAluminio = (int)Math.Ceiling(estoque.QuantidadeAtual / 6); }