Exemplo n.º 1
0
        /// <summary>
        /// Inclui um endereço de cliente no banco de dados
        /// </summary>
        /// <param name="requisicaoDto"></param>
        /// <param name="retornoDto"></param>
        /// <returns></returns>
        public override bool Incluir(RequisicaoEntidadeDto <ClienteEnderecoDto> requisicaoDto, ref RetornoDto retornoDto)
        {
            // Valida a requisição
            if (!base.Incluir(requisicaoDto, ref retornoDto))
            {
                return(false);
            }

            // Se houver endereço preenchido e ele não existir ainda
            if (requisicaoDto.EntidadeDto.Endereco.Id == Guid.Empty &&
                !string.IsNullOrWhiteSpace(requisicaoDto.EntidadeDto.Endereco.Cep))
            {
                CepBll cepBll = new CepBll(this.pizzaByteContexto, false);
                RequisicaoEntidadeDto <CepDto> requisicaoCepDto = new RequisicaoEntidadeDto <CepDto>()
                {
                    IdUsuario     = requisicaoDto.IdUsuario,
                    Identificacao = requisicaoDto.Identificacao,
                    EntidadeDto   = requisicaoDto.EntidadeDto.Endereco
                };

                requisicaoCepDto.EntidadeDto.Id = Guid.NewGuid();

                // Incluir o endereço
                if (!cepBll.Incluir(requisicaoCepDto, ref retornoDto))
                {
                    // Logado na classe de CEP
                    return(false);
                }
            }

            ClienteEnderecoVo clienteEnderecoVo = new ClienteEnderecoVo();
            string            mensagemErro      = "";

            // Converte para VO a ser incluída no banco de dados
            if (!ConverterDtoParaVo(requisicaoDto.EntidadeDto, ref clienteEnderecoVo, ref mensagemErro))
            {
                retornoDto.Retorno  = false;
                retornoDto.Mensagem = "Falha ao converter o endereço do cliente para VO: " + mensagemErro;
                logBll.ResgistrarLog(requisicaoDto, LogRecursos.IncluirClienteEndereco, Guid.Empty, retornoDto.Mensagem);
                return(false);
            }

            // Prepara a inclusão no banco de dados
            if (!IncluirBd(clienteEnderecoVo, ref mensagemErro))
            {
                retornoDto.Retorno  = false;
                retornoDto.Mensagem = "Falha ao incluir o endereço do cliente no banco de dados: " + mensagemErro;
                logBll.ResgistrarLog(requisicaoDto, LogRecursos.IncluirClienteEndereco, Guid.Empty, retornoDto.Mensagem);
                return(false);
            }

            if (salvar)
            {
                // Salva as alterações
                if (!pizzaByteContexto.Salvar(ref mensagemErro))
                {
                    retornoDto.Retorno  = false;
                    retornoDto.Mensagem = "Erro ao salvar o endereço do cliente: " + mensagemErro;

                    logBll.ResgistrarLog(requisicaoDto, LogRecursos.IncluirClienteEndereco, Guid.Empty, mensagemErro);
                    return(false);
                }
            }

            retornoDto.Retorno  = true;
            retornoDto.Mensagem = "OK";
            return(true);
        }
Exemplo n.º 2
0
        /// <summary>
        /// Inclui uma conta no banco de dados
        /// </summary>
        /// <param name="requisicaoDto"></param>
        /// <param name="retornoDto"></param>
        /// <returns></returns>
        public override bool Incluir(RequisicaoEntidadeDto <ContaReceberDto> requisicaoDto, ref RetornoDto retornoDto)
        {
            // Valida a requisição
            if (!base.Incluir(requisicaoDto, ref retornoDto))
            {
                return(false);
            }

            ContaReceberVo contaReceberVo = new ContaReceberVo();
            string         mensagemErro   = "";

            // Converte para VO a ser incluída no banco de dados
            if (!ConverterDtoParaVo(requisicaoDto.EntidadeDto, ref contaReceberVo, ref mensagemErro))
            {
                retornoDto.Retorno  = false;
                retornoDto.Mensagem = "Falha ao converter a conta para VO: " + mensagemErro;

                logBll.ResgistrarLog(requisicaoDto, LogRecursos.IncluirContaReceber, Guid.Empty, retornoDto.Mensagem);
                return(false);
            }

            // Prepara a inclusão no banco de dados
            if (!IncluirBd(contaReceberVo, ref mensagemErro))
            {
                retornoDto.Retorno  = false;
                retornoDto.Mensagem = "Falha ao converter a conta para VO: " + mensagemErro;

                logBll.ResgistrarLog(requisicaoDto, LogRecursos.IncluirContaReceber, Guid.Empty, retornoDto.Mensagem);
                return(false);
            }

            if (salvar)
            {
                // Salva as alterações
                if (!pizzaByteContexto.Salvar(ref mensagemErro))
                {
                    retornoDto.Retorno  = false;
                    retornoDto.Mensagem = mensagemErro;

                    logBll.ResgistrarLog(requisicaoDto, LogRecursos.IncluirContaReceber, Guid.Empty, retornoDto.Mensagem);
                    return(false);
                }
            }

            retornoDto.Retorno  = true;
            retornoDto.Mensagem = "OK";
            return(true);
        }
Exemplo n.º 3
0
        /// <summary>
        /// Inclui um cep no banco de dados
        /// </summary>
        /// <param name="requisicaoDto"></param>
        /// <param name="retornoDto"></param>
        /// <returns></returns>
        public override bool Incluir(RequisicaoEntidadeDto <CepDto> requisicaoDto, ref RetornoDto retornoDto)
        {
            // Valida a requisição
            if (!base.Incluir(requisicaoDto, ref retornoDto))
            {
                return(false);
            }

            // Converte para VO a ser incluída no banco de dados
            string mensagemErro = "";
            CepVo  cepVo        = new CepVo();

            if (!ConverterDtoParaVo(requisicaoDto.EntidadeDto, ref cepVo, ref mensagemErro))
            {
                retornoDto.Retorno  = false;
                retornoDto.Mensagem = "Falha ao converter o cep para VO: " + mensagemErro;

                logBll.ResgistrarLog(requisicaoDto, LogRecursos.IncluirCep, Guid.Empty, retornoDto.Mensagem);
                return(false);
            }

            // Verifica se o cep já existe
            CepVo cepExistente = null;

            if (!VerificarCepExistente(requisicaoDto.EntidadeDto, ref cepExistente, ref mensagemErro))
            {
                retornoDto.Retorno  = false;
                retornoDto.Mensagem = mensagemErro;
                return(false);
            }

            // Se estiver excluído, restaurar o cadastro antigo
            if (cepExistente != null && cepExistente.Excluido == true)
            {
                cepExistente.Logradouro = cepVo.Logradouro;
                cepExistente.Cidade     = cepVo.Cidade;
                cepExistente.Bairro     = cepVo.Bairro;
                cepExistente.Cep        = cepVo.Cep;
                cepExistente.Excluido   = false;

                if (!EditarBd(cepExistente, ref mensagemErro))
                {
                    retornoDto.Retorno  = false;
                    retornoDto.Mensagem = "Falha ao salvar os dados do Cep: " + mensagemErro;

                    logBll.ResgistrarLog(requisicaoDto, LogRecursos.IncluirCep, requisicaoDto.EntidadeDto.Id, retornoDto.Mensagem);
                    return(false);
                }
            }
            // Se não estiver excluído, não permitir incluir duplicado
            else if (cepExistente != null && cepExistente.Excluido == false)
            {
                retornoDto.Retorno  = false;
                retornoDto.Mensagem = "Esse cadastro (CEP) já existe, não é possível incluir cadastros duplicados.";

                logBll.ResgistrarLog(requisicaoDto, LogRecursos.IncluirCep, requisicaoDto.EntidadeDto.Id, retornoDto.Mensagem);
                return(false);
            }
            else
            {
                // Prepara a inclusão no banco de dados
                if (!IncluirBd(cepVo, ref mensagemErro))
                {
                    retornoDto.Retorno  = false;
                    retornoDto.Mensagem = "Falha ao converter o cep para VO: " + mensagemErro;

                    logBll.ResgistrarLog(requisicaoDto, LogRecursos.IncluirCep, Guid.Empty, retornoDto.Mensagem);
                    return(false);
                }
            }

            if (salvar)
            {
                // Salva as alterações
                if (!pizzaByteContexto.Salvar(ref mensagemErro))
                {
                    retornoDto.Retorno  = false;
                    retornoDto.Mensagem = mensagemErro;

                    logBll.ResgistrarLog(requisicaoDto, LogRecursos.IncluirCep, Guid.Empty, retornoDto.Mensagem);
                    return(false);
                }
            }

            retornoDto.Retorno  = true;
            retornoDto.Mensagem = "OK";
            return(true);
        }
Exemplo n.º 4
0
        /// <summary>
        /// Inclui uma lista de itens de um pedido no banco de dados
        /// </summary>
        /// <param name="requisicaoDto"></param>
        /// <param name="retornoDto"></param>
        /// <returns></returns>
        internal bool IncluirLista(RequisicaoListaEntidadesDto <PedidoItemDto> requisicaoDto, ref RetornoDto retornoDto)
        {
            string mensagemErro = "";

            if (!UtilitarioBll.ValidarIdentificacao(requisicaoDto.Identificacao, requisicaoDto.IdUsuario, ref mensagemErro))
            {
                retornoDto.Retorno  = false;
                retornoDto.Mensagem = mensagemErro;
                logBll.ResgistrarLog(requisicaoDto, LogRecursos.IncluirListaPedidoItem, Guid.Empty, mensagemErro);
                return(false);
            }

            if (requisicaoDto.ListaEntidadesDto.Count <= 0)
            {
                retornoDto.Retorno  = false;
                retornoDto.Mensagem = "Informe ao menos um item para incluir.";
                logBll.ResgistrarLog(requisicaoDto, LogRecursos.IncluirListaPedidoItem, Guid.Empty, retornoDto.Mensagem);
                return(false);
            }

            //Confirmar o id do pedido e um novo id para cada item
            requisicaoDto.ListaEntidadesDto.ForEach(p => p.IdPedido = requisicaoDto.IdComum);
            requisicaoDto.ListaEntidadesDto.ForEach(p => p.Id       = Guid.NewGuid());

            // Para cada item
            foreach (var item in requisicaoDto.ListaEntidadesDto)
            {
                // Converte para VO a ser incluída no banco de dados
                PedidoItemVo pedidoItemVo = new PedidoItemVo();
                if (!ConverterDtoParaVo(item, ref pedidoItemVo, ref mensagemErro))
                {
                    retornoDto.Retorno  = false;
                    retornoDto.Mensagem = "Falha ao converter o item do pedido para VO: " + mensagemErro;

                    logBll.ResgistrarLog(requisicaoDto, LogRecursos.IncluirListaPedidoItem, Guid.Empty, retornoDto.Mensagem);
                    return(false);
                }

                if (!item.ValidarEntidade(ref mensagemErro))
                {
                    retornoDto.Retorno  = false;
                    retornoDto.Mensagem = mensagemErro;
                    logBll.ResgistrarLog(requisicaoDto, LogRecursos.IncluirListaPedidoItem, Guid.Empty, mensagemErro);
                    return(false);
                }

                // Prepara a inclusão no banco de dados
                if (!IncluirBd(pedidoItemVo, ref mensagemErro))
                {
                    retornoDto.Retorno  = false;
                    retornoDto.Mensagem = "Falha ao salvar o item do pedido: " + mensagemErro;

                    logBll.ResgistrarLog(requisicaoDto, LogRecursos.IncluirListaPedidoItem, Guid.Empty, retornoDto.Mensagem);
                    return(false);
                }
            }

            if (salvar)
            {
                // Salva as alterações
                if (!pizzaByteContexto.Salvar(ref mensagemErro))
                {
                    retornoDto.Retorno  = false;
                    retornoDto.Mensagem = mensagemErro;

                    logBll.ResgistrarLog(requisicaoDto, LogRecursos.IncluirListaPedidoItem, Guid.Empty, retornoDto.Mensagem);
                    return(false);
                }
            }

            retornoDto.Retorno  = true;
            retornoDto.Mensagem = "OK";
            return(true);
        }
Exemplo n.º 5
0
        /// <summary>
        /// Inclui um pedido, seus itens, sua entrega e seu cliente no banco de dados
        /// </summary>
        /// <param name="requisicaoDto"></param>
        /// <param name="retornoDto"></param>
        /// <returns></returns>
        public override bool Incluir(RequisicaoEntidadeDto <PedidoDto> requisicaoDto, ref RetornoDto retornoDto)
        {
            // Valida a requisição
            if (!base.Incluir(requisicaoDto, ref retornoDto))
            {
                return(false);
            }

            // Se não houver cliente, deixar o id Nulo
            if (requisicaoDto.EntidadeDto.Cliente == null || requisicaoDto.EntidadeDto.Cliente.Id == Guid.Empty)
            {
                requisicaoDto.EntidadeDto.IdCliente = null;
            }

            // Converte para VO a ser incluída no banco de dados
            string   mensagemErro = "";
            PedidoVo pedidoVo     = new PedidoVo();

            if (!ConverterDtoParaVo(requisicaoDto.EntidadeDto, ref pedidoVo, ref mensagemErro))
            {
                retornoDto.Retorno  = false;
                retornoDto.Mensagem = "Falha ao converter o pedido para VO: " + mensagemErro;

                logBll.ResgistrarLog(requisicaoDto, LogRecursos.IncluirPedido, Guid.Empty, retornoDto.Mensagem);
                return(false);
            }

            // Prepara a inclusão no banco de dados
            if (!IncluirBd(pedidoVo, ref mensagemErro))
            {
                retornoDto.Retorno  = false;
                retornoDto.Mensagem = "Falha ao converter o pedido para VO: " + mensagemErro;

                logBll.ResgistrarLog(requisicaoDto, LogRecursos.IncluirPedido, Guid.Empty, retornoDto.Mensagem);
                return(false);
            }

            //Incluir Itens
            PedidoItemBll pedidoItemBll = new PedidoItemBll(pizzaByteContexto, false);
            RequisicaoListaEntidadesDto <PedidoItemDto> requisicaoItensDto = new RequisicaoListaEntidadesDto <PedidoItemDto>()
            {
                IdComum           = pedidoVo.Id,
                Identificacao     = requisicaoDto.Identificacao,
                IdUsuario         = requisicaoDto.IdUsuario,
                ListaEntidadesDto = requisicaoDto.EntidadeDto.ListaItens
            };

            if (!pedidoItemBll.IncluirLista(requisicaoItensDto, ref retornoDto))
            {
                return(false);
            }

            // Incluir/editar cliente, enredeço e taxas
            if (!AtualizarCadastros(requisicaoDto, ref retornoDto))
            {
                return(false);
            }

            // Se houver pagamentos, incluir as contas a receber
            if (requisicaoDto.EntidadeDto.RecebidoCredito != 0 ||
                requisicaoDto.EntidadeDto.RecebidoDebito != 0 ||
                requisicaoDto.EntidadeDto.RecebidoDinheiro != 0)
            {
                RequisicaoListaEntidadesDto <ContaReceberDto> requisicaoContasDto = new RequisicaoListaEntidadesDto <ContaReceberDto>()
                {
                    IdUsuario     = requisicaoDto.IdUsuario,
                    Identificacao = requisicaoDto.Identificacao,
                    IdComum       = requisicaoDto.EntidadeDto.Id
                };

                requisicaoDto.EntidadeDto.DataInclusao = DateTime.Now.AddHours(4);
                List <ContaReceberDto> listaContas = new List <ContaReceberDto>();
                if (!GerarListaContas(requisicaoDto.EntidadeDto, ref listaContas, ref mensagemErro))
                {
                    retornoDto.Retorno  = false;
                    retornoDto.Mensagem = "Falha ao gerar as contas: " + mensagemErro;

                    logBll.ResgistrarLog(requisicaoDto, LogRecursos.IncluirPedido, Guid.Empty, retornoDto.Mensagem);
                    return(false);
                }

                requisicaoContasDto.ListaEntidadesDto = listaContas;

                ContaReceberBll contaReceberBll = new ContaReceberBll(pizzaByteContexto, false);
                if (!contaReceberBll.IncluirContasPedido(requisicaoContasDto, ref retornoDto))
                {
                    return(false);
                }
            }

            if (salvar)
            {
                // Salva as alterações
                if (!pizzaByteContexto.Salvar(ref mensagemErro))
                {
                    retornoDto.Retorno  = false;
                    retornoDto.Mensagem = mensagemErro;

                    logBll.ResgistrarLog(requisicaoDto, LogRecursos.IncluirPedido, Guid.Empty, retornoDto.Mensagem);
                    return(false);
                }
            }

            retornoDto.Retorno  = true;
            retornoDto.Mensagem = "OK";
            return(true);
        }
Exemplo n.º 6
0
        /// <summary>
        /// Inclui um fornecedor no banco de dados
        /// </summary>
        /// <param name="requisicaoDto"></param>
        /// <param name="retornoDto"></param>
        /// <returns></returns>
        public override bool Incluir(RequisicaoEntidadeDto <FornecedorDto> requisicaoDto, ref RetornoDto retornoDto)
        {
            // Valida a requisição
            if (!base.Incluir(requisicaoDto, ref retornoDto))
            {
                return(false);
            }

            // Converte para VO a ser incluída no banco de dados
            string       mensagemErro = "";
            FornecedorVo fornecedorVo = new FornecedorVo();

            if (!ConverterDtoParaVo(requisicaoDto.EntidadeDto, ref fornecedorVo, ref mensagemErro))
            {
                retornoDto.Retorno  = false;
                retornoDto.Mensagem = "Falha ao converter o fornecedor para VO: " + mensagemErro;

                logBll.ResgistrarLog(requisicaoDto, LogRecursos.IncluirFornecedor, Guid.Empty, retornoDto.Mensagem);
                return(false);
            }

            // Verifica se o fornecedor já existe
            FornecedorVo fornecedorExistente = null;

            if (!VerificarFornecedorExistente(requisicaoDto.EntidadeDto, ref fornecedorExistente, ref mensagemErro))
            {
                retornoDto.Retorno  = false;
                retornoDto.Mensagem = mensagemErro;
                return(false);
            }

            // Se estiver excluído, restaurar o cadastro antigo
            if (fornecedorExistente != null && fornecedorExistente.Excluido == true)
            {
                fornecedorExistente.NomeFantasia        = fornecedorVo.NomeFantasia;
                fornecedorExistente.RazaoSocial         = fornecedorVo.RazaoSocial;
                fornecedorExistente.Telefone            = fornecedorVo.Telefone;
                fornecedorExistente.Cnpj                = fornecedorVo.Cnpj;
                fornecedorExistente.NumeroEndereco      = fornecedorVo.NumeroEndereco;
                fornecedorExistente.ComplementoEndereco = fornecedorVo.ComplementoEndereco;
                fornecedorExistente.Obs      = fornecedorVo.Obs;
                fornecedorExistente.IdCep    = fornecedorVo.IdCep;
                fornecedorExistente.Endereco = fornecedorVo.Endereco;
                fornecedorExistente.Excluido = false;

                if (!EditarBd(fornecedorExistente, ref mensagemErro))
                {
                    retornoDto.Retorno  = false;
                    retornoDto.Mensagem = "Falha ao salvar os dados do produto: " + mensagemErro;

                    logBll.ResgistrarLog(requisicaoDto, LogRecursos.IncluirFornecedor, requisicaoDto.EntidadeDto.Id, retornoDto.Mensagem);
                    return(false);
                }
            }
            // Se não estiver excluído, não permitir incluir duplicado
            else if (fornecedorExistente != null && fornecedorExistente.Excluido == false)
            {
                retornoDto.Retorno  = false;
                retornoDto.Mensagem = "Esse cadastro (fornecedor) já existe, não é possível incluir cadastros duplicados.";

                logBll.ResgistrarLog(requisicaoDto, LogRecursos.IncluirFornecedor, requisicaoDto.EntidadeDto.Id, retornoDto.Mensagem);
                return(false);
            }
            else
            {
                // Prepara a inclusão no banco de dados
                if (!IncluirBd(fornecedorVo, ref mensagemErro))
                {
                    retornoDto.Retorno  = false;
                    retornoDto.Mensagem = "Falha ao converter o fornecedor para VO: " + mensagemErro;

                    logBll.ResgistrarLog(requisicaoDto, LogRecursos.IncluirFornecedor, Guid.Empty, retornoDto.Mensagem);
                    return(false);
                }
            }

            if (salvar)
            {
                // Salva as alterações
                if (!pizzaByteContexto.Salvar(ref mensagemErro))
                {
                    retornoDto.Retorno  = false;
                    retornoDto.Mensagem = mensagemErro;

                    logBll.ResgistrarLog(requisicaoDto, LogRecursos.IncluirFornecedor, Guid.Empty, retornoDto.Mensagem);
                    return(false);
                }
            }

            retornoDto.Retorno  = true;
            retornoDto.Mensagem = "OK";
            return(true);
        }
Exemplo n.º 7
0
        /// <summary>
        /// Inclui uma movimentação de caixa no banco de dados
        /// </summary>
        /// <param name="requisicaoDto"></param>
        /// <param name="retornoDto"></param>
        /// <returns></returns>
        public override bool Incluir(RequisicaoEntidadeDto <MovimentoCaixaDto> requisicaoDto, ref RetornoDto retornoDto)
        {
            // Valida a requisição
            if (!base.Incluir(requisicaoDto, ref retornoDto))
            {
                return(false);
            }

            // Converte para VO a ser incluída no banco de dados
            string mensagemErro = "";

            if (!UtilitarioBll.ValidarUsuarioAdm(requisicaoDto.Identificacao, ref mensagemErro))
            {
                retornoDto.Retorno  = false;
                retornoDto.Mensagem = "Este usuário não é administrador. Para inclur movimentos de caixa é necessário " +
                                      $"logar com um usuário administrador. {mensagemErro}";

                logBll.ResgistrarLog(requisicaoDto, LogRecursos.IncluirMovimentoCaixa, Guid.Empty, retornoDto.Mensagem);
                return(false);
            }

            MovimentoCaixaVo movimentoCaixaVo = new MovimentoCaixaVo();

            if (!ConverterDtoParaVo(requisicaoDto.EntidadeDto, ref movimentoCaixaVo, ref mensagemErro))
            {
                retornoDto.Retorno  = false;
                retornoDto.Mensagem = "Falha ao converter a movimentação de caixa para VO: " + mensagemErro;

                logBll.ResgistrarLog(requisicaoDto, LogRecursos.IncluirMovimentoCaixa, Guid.Empty, retornoDto.Mensagem);
                return(false);
            }

            // Prepara a inclusão no banco de dados
            if (!IncluirBd(movimentoCaixaVo, ref mensagemErro))
            {
                retornoDto.Retorno  = false;
                retornoDto.Mensagem = "Falha ao converter a movimentação de caixa para VO: " + mensagemErro;

                logBll.ResgistrarLog(requisicaoDto, LogRecursos.IncluirMovimentoCaixa, Guid.Empty, retornoDto.Mensagem);
                return(false);
            }

            if (salvar)
            {
                // Salva as alterações
                if (!pizzaByteContexto.Salvar(ref mensagemErro))
                {
                    retornoDto.Retorno  = false;
                    retornoDto.Mensagem = mensagemErro;

                    logBll.ResgistrarLog(requisicaoDto, LogRecursos.IncluirMovimentoCaixa, Guid.Empty, retornoDto.Mensagem);
                    return(false);
                }
            }

            logBll.ResgistrarLog(requisicaoDto, LogRecursos.IncluirMovimentoCaixa, movimentoCaixaVo.Id, retornoDto.Mensagem);

            retornoDto.Retorno  = true;
            retornoDto.Mensagem = "OK";
            return(true);
        }
Exemplo n.º 8
0
        /// <summary>
        /// Processa uma lista de taxas, editando as existentes e incluindo as novas
        /// </summary>
        /// <param name="requisicaoDto"></param>
        /// <param name="retornoDto"></param>
        /// <returns></returns>
        public bool IncluirEditarLista(RequisicaoListaEntidadesDto <TaxaEntregaDto> requisicaoDto, ref RetornoDto retornoDto)
        {
            if (requisicaoDto.ListaEntidadesDto.Count <= 0)
            {
                retornoDto.Retorno  = false;
                retornoDto.Mensagem = "É necessário ter ao menos uma taxa de entrega para incluir a lista de taxas.";

                logBll.ResgistrarLog(requisicaoDto, LogRecursos.IncluirAlterarListaTaxaEntrega, Guid.Empty, retornoDto.Mensagem);
                return(false);
            }

            string mensagemErro = "";

            if (!UtilitarioBll.ValidarIdentificacao(requisicaoDto.Identificacao, requisicaoDto.IdUsuario, ref mensagemErro))
            {
                retornoDto.Retorno  = false;
                retornoDto.Mensagem = mensagemErro;

                logBll.ResgistrarLog(requisicaoDto, LogRecursos.IncluirAlterarListaTaxaEntrega, Guid.Empty, mensagemErro);
                return(false);
            }

            // Para cada taxa
            foreach (var taxa in requisicaoDto.ListaEntidadesDto)
            {
                // Se existir, editar os dados
                if (taxa.Id != Guid.Empty)
                {
                    TaxaEntregaVo taxaEntregaVo;
                    if (!ObterPorIdBd(taxa.Id, out taxaEntregaVo, ref mensagemErro, true))
                    {
                        retornoDto.Mensagem = "Erro ao obter a taxa de entrega: " + mensagemErro;
                        retornoDto.Retorno  = false;

                        logBll.ResgistrarLog(requisicaoDto, LogRecursos.IncluirAlterarListaTaxaEntrega, taxa.Id, retornoDto.Mensagem);
                        return(false);
                    }

                    if (!taxa.ValidarEntidade(ref mensagemErro))
                    {
                        retornoDto.Retorno  = false;
                        retornoDto.Mensagem = mensagemErro;

                        logBll.ResgistrarLog(requisicaoDto, LogRecursos.IncluirAlterarListaTaxaEntrega, Guid.Empty, mensagemErro);
                        return(false);
                    }

                    // Converte para VO a ser alterado no banco de dados
                    if (!ConverterDtoParaVo(taxa, ref taxaEntregaVo, ref mensagemErro))
                    {
                        retornoDto.Retorno  = false;
                        retornoDto.Mensagem = "Falha ao converter a taxa de entrega para VO: " + mensagemErro;

                        logBll.ResgistrarLog(requisicaoDto, LogRecursos.IncluirAlterarListaTaxaEntrega, Guid.Empty, retornoDto.Mensagem);
                        return(false);
                    }

                    if (!EditarBd(taxaEntregaVo, ref mensagemErro))
                    {
                        retornoDto.Retorno  = false;
                        retornoDto.Mensagem = "Falha ao salvar os novos dados da taxa de entrega: " + mensagemErro;

                        logBll.ResgistrarLog(requisicaoDto, LogRecursos.IncluirAlterarListaTaxaEntrega, taxaEntregaVo.Id, retornoDto.Mensagem);
                        return(false);
                    }
                }
                else // Se não existir, incluir
                {
                    taxa.Id = Guid.NewGuid();
                    if (!taxa.ValidarEntidade(ref mensagemErro))
                    {
                        retornoDto.Retorno  = false;
                        retornoDto.Mensagem = mensagemErro;

                        logBll.ResgistrarLog(requisicaoDto, LogRecursos.IncluirAlterarListaTaxaEntrega, Guid.Empty, mensagemErro);
                        return(false);
                    }

                    // Converte para VO a ser incluída no banco de dados
                    TaxaEntregaVo taxaEntregaVo = new TaxaEntregaVo();
                    if (!ConverterDtoParaVo(taxa, ref taxaEntregaVo, ref mensagemErro))
                    {
                        retornoDto.Retorno  = false;
                        retornoDto.Mensagem = "Falha ao converter a taxa de entrega para VO: " + mensagemErro;

                        logBll.ResgistrarLog(requisicaoDto, LogRecursos.IncluirAlterarListaTaxaEntrega, Guid.Empty, retornoDto.Mensagem);
                        return(false);
                    }

                    // Prepara a inclusão no banco de dados
                    if (!IncluirBd(taxaEntregaVo, ref mensagemErro))
                    {
                        retornoDto.Retorno  = false;
                        retornoDto.Mensagem = $"Falha ao incluir a taxa de entrega ({taxaEntregaVo.BairroCidade}) para VO: " + mensagemErro;

                        logBll.ResgistrarLog(requisicaoDto, LogRecursos.IncluirAlterarListaTaxaEntrega, Guid.Empty, retornoDto.Mensagem);
                        return(false);
                    }
                }
            }

            if (salvar)
            {
                // Salva as alterações
                if (!pizzaByteContexto.Salvar(ref mensagemErro))
                {
                    retornoDto.Retorno  = false;
                    retornoDto.Mensagem = mensagemErro;

                    logBll.ResgistrarLog(requisicaoDto, LogRecursos.IncluirTaxaEntrega, Guid.Empty, retornoDto.Mensagem);
                    return(false);
                }
            }

            retornoDto.Mensagem = "OK";
            retornoDto.Retorno  = true;
            return(true);
        }
Exemplo n.º 9
0
        /// <summary>
        /// Inclui um produto no banco de dados
        /// </summary>
        /// <param name="requisicaoDto"></param>
        /// <param name="retornoDto"></param>
        /// <returns></returns>
        public override bool Incluir(RequisicaoEntidadeDto <ProdutoDto> requisicaoDto, ref RetornoDto retornoDto)
        {
            // Valida a requisição
            if (!base.Incluir(requisicaoDto, ref retornoDto))
            {
                return(false);
            }

            // Converte para VO a ser incluída no banco de dados
            string    mensagemErro = "";
            ProdutoVo produtoVo    = new ProdutoVo();

            if (!ConverterDtoParaVo(requisicaoDto.EntidadeDto, ref produtoVo, ref mensagemErro))
            {
                retornoDto.Retorno  = false;
                retornoDto.Mensagem = "Falha ao converter o produto para VO: " + mensagemErro;

                logBll.ResgistrarLog(requisicaoDto, LogRecursos.IncluirProduto, Guid.Empty, retornoDto.Mensagem);
                return(false);
            }

            // Verifica se o produto já existe
            ProdutoVo produtoExistente = null;

            if (!VerificarProdutoExistente(requisicaoDto.EntidadeDto, ref produtoExistente, ref mensagemErro))
            {
                retornoDto.Retorno  = false;
                retornoDto.Mensagem = mensagemErro;
                return(false);
            }

            // Se estiver excluído, restaurar o cadastro antigo
            if (produtoExistente != null && produtoExistente.Excluido == true)
            {
                produtoExistente.Descricao = produtoVo.Descricao;
                produtoExistente.Preco     = produtoVo.Preco;
                produtoExistente.Tipo      = produtoVo.Tipo;
                produtoExistente.Excluido  = false;

                if (!EditarBd(produtoExistente, ref mensagemErro))
                {
                    retornoDto.Retorno  = false;
                    retornoDto.Mensagem = "Falha ao salvar os dados do produto: " + mensagemErro;

                    logBll.ResgistrarLog(requisicaoDto, LogRecursos.IncluirProduto, requisicaoDto.EntidadeDto.Id, retornoDto.Mensagem);
                    return(false);
                }
            }
            // Se não estiver excluído, não permitir incluir duplicado
            else if (produtoExistente != null && produtoExistente.Excluido == false)
            {
                retornoDto.Retorno  = false;
                retornoDto.Mensagem = "Esse cadastro (produto) já existe, não é possível incluir cadastros duplicados.";

                logBll.ResgistrarLog(requisicaoDto, LogRecursos.IncluirProduto, requisicaoDto.EntidadeDto.Id, retornoDto.Mensagem);
                return(false);
            }
            else
            {
                // Prepara a inclusão no banco de dados
                if (!IncluirBd(produtoVo, ref mensagemErro))
                {
                    retornoDto.Retorno  = false;
                    retornoDto.Mensagem = "Falha ao converter o produto para VO: " + mensagemErro;

                    logBll.ResgistrarLog(requisicaoDto, LogRecursos.IncluirProduto, Guid.Empty, retornoDto.Mensagem);
                    return(false);
                }
            }

            if (salvar)
            {
                // Salva as alterações
                if (!pizzaByteContexto.Salvar(ref mensagemErro))
                {
                    retornoDto.Retorno  = false;
                    retornoDto.Mensagem = mensagemErro;

                    logBll.ResgistrarLog(requisicaoDto, LogRecursos.IncluirProduto, Guid.Empty, retornoDto.Mensagem);
                    return(false);
                }
            }

            retornoDto.Retorno  = true;
            retornoDto.Mensagem = "OK";
            return(true);
        }
Exemplo n.º 10
0
        /// <summary>
        /// Inclui um usuario no banco de dados
        /// </summary>
        /// <param name="requisicaoDto"></param>
        /// <param name="retornoDto"></param>
        /// <returns></returns>
        public override bool Incluir(RequisicaoEntidadeDto <UsuarioDto> requisicaoDto, ref RetornoDto retornoDto)
        {
            // Valida a requisição
            if (!base.Incluir(requisicaoDto, ref retornoDto))
            {
                return(false);
            }

            // Converte para VO a ser incluída no banco de dados
            string    mensagemErro = "";
            UsuarioVo usuarioVo    = new UsuarioVo();

            if (!ConverterDtoParaVo(requisicaoDto.EntidadeDto, ref usuarioVo, ref mensagemErro))
            {
                retornoDto.Retorno  = false;
                retornoDto.Mensagem = "Falha ao converter o usuario para VO: " + mensagemErro;

                logBll.ResgistrarLog(requisicaoDto, LogRecursos.IncluirUsuario, Guid.Empty, retornoDto.Mensagem);
                return(false);
            }

            // Verifica se o usuario já existe
            UsuarioVo usuarioExistente = null;

            if (!VerificarUsuarioExistente(requisicaoDto.EntidadeDto, ref usuarioExistente, ref mensagemErro))
            {
                retornoDto.Retorno  = false;
                retornoDto.Mensagem = mensagemErro;
                return(false);
            }

            // Se estiver excluído, restaurar o cadastro antigo
            if (usuarioExistente != null && usuarioExistente.Excluido == true)
            {
                usuarioExistente.Nome          = usuarioVo.Nome;
                usuarioExistente.Senha         = usuarioVo.Senha;
                usuarioExistente.Email         = usuarioVo.Email;
                usuarioExistente.Administrador = usuarioVo.Administrador;
                usuarioExistente.Excluido      = false;

                if (!EditarBd(usuarioExistente, ref mensagemErro))
                {
                    retornoDto.Retorno  = false;
                    retornoDto.Mensagem = "Falha ao salvar os dados do produto: " + mensagemErro;

                    logBll.ResgistrarLog(requisicaoDto, LogRecursos.IncluirUsuario, requisicaoDto.EntidadeDto.Id, retornoDto.Mensagem);
                    return(false);
                }
            }
            // Se não estiver excluído, não permitir incluir duplicado
            else if (usuarioExistente != null && usuarioExistente.Excluido == false)
            {
                retornoDto.Retorno  = false;
                retornoDto.Mensagem = "Esse cadastro (usuário) já existe, não é possível incluir cadastros duplicados.";

                logBll.ResgistrarLog(requisicaoDto, LogRecursos.IncluirUsuario, requisicaoDto.EntidadeDto.Id, retornoDto.Mensagem);
                return(false);
            }
            else
            {
                // Prepara a inclusão no banco de dados
                if (!IncluirBd(usuarioVo, ref mensagemErro))
                {
                    retornoDto.Retorno  = false;
                    retornoDto.Mensagem = "Falha ao converter o usuario para VO: " + mensagemErro;

                    logBll.ResgistrarLog(requisicaoDto, LogRecursos.IncluirUsuario, Guid.Empty, retornoDto.Mensagem);
                    return(false);
                }
            }

            if (salvar)
            {
                // Salva as alterações
                if (!pizzaByteContexto.Salvar(ref mensagemErro))
                {
                    retornoDto.Retorno  = false;
                    retornoDto.Mensagem = mensagemErro;

                    logBll.ResgistrarLog(requisicaoDto, LogRecursos.IncluirUsuario, Guid.Empty, retornoDto.Mensagem);
                    return(false);
                }
            }

            retornoDto.Retorno  = true;
            retornoDto.Mensagem = "OK";
            return(true);
        }