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 OrcamentoOperacionalVersao CriarOrcamentoOperacional(List<Orcamento> orcamentosGerenciamento, Departamento setor, CentroDeCusto centroDeCusto, int ano) { Contract.Requires(setor != null, "Departamento não informado."); Contract.Requires(centroDeCusto != null, "Centro de custo não informado."); var orcamento = new OrcamentoOperacionalVersao(setor, centroDeCusto, ano); orcamento.CriarDespesas(); if (orcamentosGerenciamento == null) orcamentosGerenciamento = new List<Orcamento>(); var gerenciador = new GerenciadorDeOrcamentos(); if (!gerenciador.PodeCriarOrcamento(orcamentosGerenciamento, setor, centroDeCusto, TipoOrcamentoEnum.DespesaOperacional)) throw new Exception("Orçamento já tem dez versões"); orcamentosGerenciamento.Add(orcamento); gerenciador.InformarNomeOrcamento(orcamentosGerenciamento, orcamento, setor, centroDeCusto, TipoOrcamentoEnum.DespesaOperacional); foreach (var orcamentoGerenciamento in orcamentosGerenciamento) { Orcamentos.Salvar(orcamentoGerenciamento); } return orcamento; }
public virtual OrcamentoDeViagem CriarOrcamentoDeViagem(List<Orcamento> orcamentosGerenciamento, Departamento departamento, CentroDeCusto centroDeCusto, int ano) { Contract.Requires(centroDeCusto != null, "Centro de custo não informado."); Contract.Requires(departamento != null, "Departamento não informado."); var viagens = Viagens.Todos().ToList(); var diarias = Diarias.Todos().ToList(); OrcamentoDeViagem orcamento = new OrcamentoDeViagem(departamento, centroDeCusto, ano); orcamento.CriarDespesas(viagens, diarias); if (orcamentosGerenciamento == null) orcamentosGerenciamento = new List<Orcamento>(); GerenciadorDeOrcamentos gerenciador = new GerenciadorDeOrcamentos(); if (!gerenciador.PodeCriarOrcamento(orcamentosGerenciamento, departamento, centroDeCusto, TipoOrcamentoEnum.Viagem)) throw new Exception("Orçamento já tem dez versões"); orcamentosGerenciamento.Add(orcamento); gerenciador.InformarNomeOrcamento(orcamentosGerenciamento, orcamento, departamento, centroDeCusto, TipoOrcamentoEnum.Viagem); foreach (var orcamentoGerenciamento in orcamentosGerenciamento) { Orcamentos.Salvar(orcamentoGerenciamento); } return orcamento; }
public void DeletarOrcamento(Orcamento orcamento, List<Orcamento> orcamentos, Departamento departamento) { Contract.Requires(orcamento != null, "Orçamento não informado"); Contract.Requires(departamento != null, "Departamento não informado"); Orcamentos.Deletar(orcamento); if (orcamentos.Exists(c => c == orcamento)) orcamentos.Remove(orcamento); GerenciadorDeOrcamentos gerenciamento = new GerenciadorDeOrcamentos(); gerenciamento.InformarNomeOrcamento(orcamentos, orcamento, departamento, TipoOrcamentoEnum.Hospitalar); foreach (var item in orcamentos) { Orcamentos.Salvar(item); } }