public Orcamento CriarOrcamentoHospitalar(List<Orcamento> orcamentosGerenciamento, Departamento setor, int ano)
        {
            Contract.Requires(setor != null, "Departamento não informado");

            Orcamento orcamento = new OrcamentoHospitalar(setor, ano);

            if (orcamentosGerenciamento == null)
                orcamentosGerenciamento = new List<Orcamento>();

            GerenciadorDeOrcamentos gerenciador = new GerenciadorDeOrcamentos();

            if (!gerenciador.PodeCriarOrcamento(orcamentosGerenciamento, setor, TipoOrcamentoEnum.Hospitalar))
                throw new Exception("Orçamento já tem dez versões");

            orcamentosGerenciamento.Add(orcamento);

            gerenciador.InformarNomeOrcamento(orcamentosGerenciamento, orcamento, setor, TipoOrcamentoEnum.Hospitalar);

            foreach (var orcamentoGerenciamento in orcamentosGerenciamento)
            {
                Orcamentos.Salvar(orcamentoGerenciamento);
            }

            return orcamento;
        }
 public Orcamento Clonar( Orcamento orcamento)
 {
     var orcamentoNovo = new OrcamentoHospitalar(orcamento);
     orcamentoNovo.VersaoFinal = false;
     return orcamentoNovo;
 }