public void Atualizar(OrcamentoDao orcamentoDao)
        {
            try
            {
                ValidarAtualizar(orcamentoDao);

                orcamentoRepository.Atualizar(orcamentoDao.ToBd());

                // insere o histórico do orçamentos
                orcamentoHistoricoRepository.Incluir(new OrcamentoHistorico()
                {
                    OrcamentoID  = orcamentoDao.OrcamentoID,
                    DataCadastro = DateTime.Now,
                    Observacao   = "Foi gerada venda do Orçamento"
                });
            }
            catch (BusinessException ex)
            {
                throw ex;
            }
            catch (Exception ex)
            {
                logRepository.Incluir(new Log()
                {
                    Descricao = ex.ToString(), DataHora = DateTime.Now
                });

                throw ex;
            }
        }
        public List <OrcamentoDao> Listar(OrcamentoDao orcamentoDao)
        {
            try
            {
                return(orcamentoRepository.Listar(orcamentoDao.ToBd(), true, 50).Select(x => x.ToApp()).ToList());
            }
            catch (BusinessException ex)
            {
                throw ex;
            }
            catch (Exception ex)
            {
                logRepository.Incluir(new Log()
                {
                    Descricao = ex.ToString(), DataHora = DateTime.Now
                });

                throw ex;
            }
        }
        public int Incluir(OrcamentoDao orcamentoDao)
        {
            int orcamentoId = 0;

            try
            {
                ValidarIncluir(orcamentoDao);

                orcamentoId = orcamentoRepository.Incluir(orcamentoDao.ToBd());

                return(orcamentoId);
            }
            catch (BusinessException ex)
            {
                throw ex;
            }
            catch (Exception ex)
            {
                logRepository.Incluir(new Log()
                {
                    Descricao = ex.ToString(), DataHora = DateTime.Now
                });

                throw ex;
            }
            finally
            {
                // insere o histórico do orçamentos
                if (orcamentoId > 0)
                {
                    orcamentoHistoricoRepository.Incluir(new OrcamentoHistorico()
                    {
                        OrcamentoID  = orcamentoId,
                        DataCadastro = DateTime.Now,
                        Observacao   = "Cadastro do Orçamento"
                    });
                }
            }
        }