internal void CadastrarOrdemCompra(OrdemCompraDTO ordemCompra, List <OrdemCompraProdutoDTO> listaOcProduto) { this.mensagem = ""; int id_OrdemCompra = 0; id_OrdemCompra = OrdemCompraDAO.GetInstance().CadastrarOrdemCompra(ordemCompra); if (OrdemCompraDAO.GetInstance().Mensagem != "") { this.mensagem = OrdemCompraDAO.GetInstance().Mensagem; return; } OrdemCompraProdutoDAO.GetInstance().CadastrarProdutoOrdemCompra(listaOcProduto, id_OrdemCompra); if (OrdemCompraProdutoDAO.GetInstance().Mensagem != "") { this.mensagem = OrdemCompraProdutoDAO.GetInstance().Mensagem; return; } ProdutoDAO.GetInstance().AtualizarProdutoQuantidadeOc(listaOcProduto); if (ProdutoDAO.GetInstance().Mensagem != "") { this.mensagem = ProdutoDAO.GetInstance().Mensagem; } }
public async Task <ResultadoBase <bool> > SolicitarRegistroOrdemCompra(OrdemCompraDTO ordemCompraDTO) { var novaOrdemCompra = ordemCompraDTO.Mapear(); if (!novaOrdemCompra.Valida()) { return new ResultadoBase <bool>() { CodigoErro = MensagemErro.OMS_010, Resultado = false, TipoErro = TipoErro.Validacao } } ; var cliente = await _clienteRepositorio.ConsultarPorId(novaOrdemCompra.IdCliente); if (cliente == null) { return new ResultadoBase <bool>() { CodigoErro = MensagemErro.OMS_001, Resultado = false, TipoErro = TipoErro.Validacao } } ; var produto = await _produtoRepositorio.ConsultarPorId(novaOrdemCompra.IdProduto); if (produto == null) { return new ResultadoBase <bool>() { CodigoErro = MensagemErro.OMS_002, Resultado = false, TipoErro = TipoErro.Validacao } } ; var contaCorrente = await _contaCorrenteRepositorio.ObterPorId(novaOrdemCompra.IdCliente); if (contaCorrente == null) { return new ResultadoBase <bool>() { CodigoErro = MensagemErro.OMS_003, Resultado = false, TipoErro = TipoErro.Validacao } } ; var resultado = await _ordemCompraDominoServico.PermiteRegistroDeOrdemCompra(cliente, produto, contaCorrente, novaOrdemCompra); if (resultado.Resultado) { //faz a solictacao de registro await _mensageriaRepoSitorio.EnviarMensagem <OrdemCompra>(TopicosMensageria.SolicitacaoRegistroOrdem, novaOrdemCompra); } return(resultado); } } }
private void BtnFinalizar_Click(object sender, RoutedEventArgs e) { if (MessageBox.Show("FINALIZAR ORDEM DE COMPRA?", "FINALIZAR ODC", MessageBoxButton.YesNo, MessageBoxImage.Question) == MessageBoxResult.No) { return; } OrdemCompraDTO ordemCompra = new OrdemCompraDTO(); OrdemCompraProdutoDTO ocProduto = new OrdemCompraProdutoDTO(); List <OrdemCompraProdutoDTO> listaOcProduto = new List <OrdemCompraProdutoDTO>(); ordemCompra.DtDigitacao = dtpDt_Digitacao.SelectedDate.ToString(); try { ordemCompra.ValorTotal = Convert.ToDouble(txtVlr_Total.Text); } catch (Exception ex) { MessageBox.Show("VALOR TOTAL INVALIDO"); return; } try { ordemCompra.Pessoa.IdPessoa = Convert.ToInt32(cmbNm_Fornecedor.SelectedValue); } catch (Exception) { MessageBox.Show("FORNECEDOR NÃO INFORMADO"); return; } ordemCompra.TpStatus = "F"; ordemCompra.Usuario.IdUsuario = estPropriedades.Id_Usuario; listaOcProduto = dtgProdutos.ItemsSource as List <OrdemCompraProdutoDTO>; Controller.GetInstance().CadastrarOrdemCompra(ordemCompra, listaOcProduto); if (Controller.GetInstance().Mensagem != "") { MessageBox.Show(Controller.GetInstance().Mensagem); } else { MessageBox.Show("ENTRADA DE PRODUTOS REGISTRADA"); InicializarCampos(); } }
public async Task <IActionResult> SolicitarRegistroOrdemCompra([FromBody] OrdemCompraDTO ordemCompra) { try { var result = await _ordemCompraServico.SolicitarRegistroOrdemCompra(ordemCompra); if (result.Resultado == false) { return(BadRequest(new { message = result.Descricao(), erro = result.CodigoErro })); } return(Created(string.Empty, result)); } catch (Exception ex) { return(StatusCode(500, (new { message = ex }))); } }