public void CalcularReceitaBrutaOrcamentoHospitalarCOmUmSetorComDuasContasEContaDeQuantidadeEUmaDePorcentagemEvalorDaContaEmJaneiroIgualAUmEporcentagemIgualACinquentaEUnitarioIgualACemEValorComplexidadeIgualA10PorCentoValorReceitaLiuidaDeveSerIgualACentoEDez() { Departamento departamento = new Hospital("Barra Dor"); var Uti = new SetorHospitalar("UTI"); var SubUtiAdulto = new SubSetorHospital("UTIAdulto"); ContaHospital leito = new ContaHospital("Leito", TipoValorContaEnum.Quantidade); ContaHospital ocupacao = new ContaHospital("Ocupação", TipoValorContaEnum.Porcentagem); leito.MultiPlicaPorMes = true; Uti.AdicionarSetor(SubUtiAdulto); Uti.AdicionarConta(leito); Uti.AdicionarConta(ocupacao); departamento.AdicionarSetor(Uti); OrcamentoHospitalar orcamento = new OrcamentoHospitalar(departamento, 2014); var leitoProducao = orcamento.Servicos.FirstOrDefault().Valores.Where(v => v.Mes == MesEnum.Janeiro).FirstOrDefault(); var ocupacaoProducao = orcamento.Servicos[1].Valores.Where(v => v.Mes == MesEnum.Janeiro).FirstOrDefault(); leitoProducao.Valor = 1; ocupacaoProducao.Valor = 50; var incremento = orcamento.FatoresReceita.FirstOrDefault().Incrementos.Where(i => i.Mes == MesEnum.Janeiro).FirstOrDefault(); incremento.Ticket = 100; orcamento.CalcularReceitaBruta(Tickets(100, orcamento)); Assert.IsTrue(incremento.ReceitaBruta == 1550); }
public void CalcularReceitaBrutaOrcamentoHospitalarCOmUmSetorComUmaContaEContaDeQuantidadeEvalorDaContaEmJaneiroIgualADoisEUnitarioIgualAQuinhentosValorReceitaBrutaDeveSerIgualAMil() { Departamento departamento = new Hospital("Barra Dor"); var CentroCirurgico = new SetorHospitalar("Cirurgia"); var SubCentroCirurgico = new SubSetorHospital("Centro Cirúrgico"); ContaHospital Cirurgia = new ContaHospital("Cirurgia", TipoValorContaEnum.Quantidade); CentroCirurgico.AdicionarSetor(SubCentroCirurgico); CentroCirurgico.AdicionarConta(Cirurgia); departamento.AdicionarSetor(CentroCirurgico); OrcamentoHospitalar orcamento = new OrcamentoHospitalar(departamento, 2014); var producaoHospitalar = orcamento.Servicos.FirstOrDefault().Valores.Where(v => v.Mes == MesEnum.Janeiro).FirstOrDefault(); producaoHospitalar.Valor = 2; var incremento = orcamento.FatoresReceita.FirstOrDefault().Incrementos.Where(i => i.Mes == MesEnum.Janeiro).FirstOrDefault(); incremento.Ticket = 500; orcamento.CalcularReceitaBruta(Tickets(500, orcamento)); Assert.IsTrue(incremento.ReceitaBruta == 1000); }
public void CriarOrcamentoHospitalarComUmSetorComUmaContaDeveTeServicosHospitalaresIgualAUm() { Departamento departamento = new Hospital("Barra Dor"); var CentroCirurgico = new SetorHospitalar("Cirurgia"); var SubCentroCirurgico = new SubSetorHospital("Centro Cirúrgico"); ContaHospital Cirurgia = new ContaHospital("Cirurgia", TipoValorContaEnum.Quantidade); CentroCirurgico.AdicionarSetor(SubCentroCirurgico); CentroCirurgico.AdicionarConta(Cirurgia); departamento.AdicionarSetor(CentroCirurgico); OrcamentoHospitalar orcamento = new OrcamentoHospitalar(departamento, 2014); Assert.IsTrue(orcamento.Servicos.Count == 1); }
public void CriarOrcamentoHospitalarComUmSetorComUmaContaDeveTerIncrementosIgualADoze() { Departamento departamento = new Hospital("Barra Dor"); var CentroCirurgico = new SetorHospitalar("Cirurgia"); var SubCentroCirurgico = new SubSetorHospital("Centro Cirúrgico"); ContaHospital Cirurgia = new ContaHospital("Cirurgia", TipoValorContaEnum.Quantidade); CentroCirurgico.AdicionarSetor(SubCentroCirurgico); CentroCirurgico.AdicionarConta(Cirurgia); departamento.AdicionarSetor(CentroCirurgico); OrcamentoHospitalar orcamento = new OrcamentoHospitalar(departamento, 2014); Assert.IsTrue(orcamento.FatoresReceita.FirstOrDefault().Incrementos.Count == 12); }
public void CalcularReceitaLiquidaOrcamentoHospitalarEmFevereiroComUmSetorComDuasContasEContaDeQuantidadeEUmaDePorcentagemEvalorDaContaEmJaneiroIgualAUmEporcentagemIgualANoventaEUnitarioIgualACemEValorComplexidadeIgualA10PorCentoNegativaValorReceitaLiuidaDeveSerIgualDoisMilSeticentosEnoventa() { Departamento departamento = new Hospital("Barra Dor"); var Uti = new SetorHospitalar("UTI"); var SubUtiAdulto = new SubSetorHospital("UTIAdulto"); ContaHospital leito = new ContaHospital("Leito", TipoValorContaEnum.Quantidade); ContaHospital ocupacao = new ContaHospital("Ocupação", TipoValorContaEnum.Porcentagem); leito.MultiPlicaPorMes = true; Uti.AdicionarSetor(SubUtiAdulto); Uti.AdicionarConta(leito); Uti.AdicionarConta(ocupacao); departamento.AdicionarSetor(Uti); OrcamentoHospitalar orcamento = new OrcamentoHospitalar(departamento, 2014); var leitoProducao = orcamento.Servicos.FirstOrDefault().Valores.Where(v => v.Mes == MesEnum.Fevereiro).FirstOrDefault(); var ocupacaoProducao = orcamento.Servicos[1].Valores.Where(v => v.Mes == MesEnum.Fevereiro).FirstOrDefault(); leitoProducao.Valor = 1; ocupacaoProducao.Valor = 100; var incremento = orcamento.FatoresReceita.FirstOrDefault().Incrementos.Where(i => i.Mes == MesEnum.Janeiro).FirstOrDefault(); incremento.Complexidade = 10; incremento.Negativo = true; var fevereiro = orcamento.FatoresReceita.FirstOrDefault().Incrementos.Where(i => i.Mes == MesEnum.Fevereiro).FirstOrDefault(); orcamento.CalcularReceitaLiquida(Tickets1(100, orcamento),null); Assert.IsTrue(fevereiro.ReceitaLiquida == 2520); }
public void CalcularReceitaLiquidaOrcamentoHospitalarCOmUmSetorComUmaContaEContaDeQuantidadeEvalorDaContaEmJaneiroIgualAUmEUnitarioIgualACemEValorComplexidadeIgualA10PorCentoValorReceitaLiquidaDeveSerIgualACentoEDez() { Departamento departamento = new Hospital("Barra Dor"); var CentroCirurgico = new SetorHospitalar("Cirurgia"); var SubCentroCirurgico = new SubSetorHospital("Centro Cirúrgico"); ContaHospital Cirurgia = new ContaHospital("Cirurgia", TipoValorContaEnum.Quantidade); CentroCirurgico.AdicionarSetor(SubCentroCirurgico); CentroCirurgico.AdicionarConta(Cirurgia); departamento.AdicionarSetor(CentroCirurgico); OrcamentoHospitalar orcamento = new OrcamentoHospitalar(departamento, 2014); var producaoHospitalar = orcamento.Servicos.FirstOrDefault().Valores.Where(v => v.Mes == MesEnum.Janeiro).FirstOrDefault(); producaoHospitalar.Valor = 1; var incremento = orcamento.FatoresReceita.FirstOrDefault().Incrementos.Where(i => i.Mes == MesEnum.Janeiro).FirstOrDefault(); incremento.Ticket = 100; incremento.Complexidade = 10; orcamento.CalcularReceitaLiquida(Tickets(100, orcamento),null); Assert.IsTrue(incremento.ReceitaLiquida == 110); }
public void CalcularReceitaBrutaOrcamentoHospitalarReceitaBrutaDeveSerIgualATrintaEUmMil() { Departamento departamento = new Hospital("Barra Dor"); var Uti = new SetorHospitalar("UTI"); var SubUtiAdulto = new SubSetorHospital("UTIAdulto"); ContaHospital leito = new ContaHospital("Leito", TipoValorContaEnum.Quantidade); ContaHospital ocupacao = new ContaHospital("Ocupação", TipoValorContaEnum.Porcentagem); leito.MultiPlicaPorMes = true; Uti.AdicionarSetor(SubUtiAdulto); Uti.AdicionarConta(leito); Uti.AdicionarConta(ocupacao); departamento.AdicionarSetor(Uti); OrcamentoHospitalar orcamento = new OrcamentoHospitalar(departamento, 2014); var leitoProducao = orcamento.Servicos.FirstOrDefault().Valores.Where(v => v.Mes == MesEnum.Janeiro).FirstOrDefault(); var ocupacaoProducao = orcamento.Servicos[1].Valores.Where(v => v.Mes == MesEnum.Janeiro).FirstOrDefault(); leitoProducao.Valor = 10; ocupacaoProducao.Valor = 100; var incremento = orcamento.FatoresReceita.FirstOrDefault().Incrementos.Where(i => i.Mes == MesEnum.Janeiro).FirstOrDefault(); incremento.Ticket = 100; orcamento.CalcularReceitaBruta(Tickets(100, orcamento)); Assert.IsTrue(incremento.ReceitaBruta == 31000); }
public virtual void CriarServico(ContaHospital conta, SubSetorHospital subSetor, SetorHospitalar setor) { this.Servicos.Add(new ServicoHospitalar(conta, subSetor, setor)); }
public void insetir_setor_Suporte() { ContasHospitalares contas = new ContasHospitalares(); var outrasReceitas = new ContaHospital("OutrasReceitas", TipoValorContaEnum.Quantidade); var departamentos = new Departamentos(); var todos = departamentos.Todos<Hospital>(); var suporte = new SetorHospitalar("Maternidade"); var subSuporte = new SubSetorHospital("Maternidade"); suporte.AdicionarSetor(subSuporte); suporte.AdicionarConta(outrasReceitas); var setores = new SetoresHospitalares(); setores.Salvar(suporte); Insumos insumos = new Insumos(); foreach (var departamento in todos) { departamento.AdicionarSetor(suporte); departamentos.Salvar(departamento); var insumo = insumos.ObterInsumo(departamento); insumo.CriarCustoUnitarioHospitalarPor(suporte); insumos.Salvar(insumo); foreach (var subsetor in suporte.SubSetores) { var ticket = new TicketDeProducao(suporte, subsetor, departamento); insumos.Salvar(ticket); } } }
public void insetir_setor_Semi() { ContasHospitalares contas = new ContasHospitalares(); var leito = new ContaHospital("Capacidade Operacional", TipoValorContaEnum.Quantidade); var ocupacao = new ContaHospital("Taxa de Ocupação", TipoValorContaEnum.Porcentagem); var capacidadeFisica = new ContaHospital("Capacidade Fisica", TipoValorContaEnum.Quantidade, false, false); leito.MultiPlicaPorMes = true; var departamentos = new Departamentos(); var todos = departamentos.Todos<Hospital>(); var semi = new SetorHospitalar("Semi"); var subSemiIntensiva = new SubSetorHospital("Uti Semi-Intensiva"); semi.AdicionarSetor(subSemiIntensiva); semi.AdicionarConta(leito); semi.AdicionarConta(ocupacao); semi.AdicionarConta(capacidadeFisica); var setores = new SetoresHospitalares(); setores.Salvar(semi); Insumos insumos = new Insumos(); foreach (var departamento in todos) { departamento.AdicionarSetor(semi); departamentos.Salvar(departamento); var insumo = insumos.ObterInsumo(departamento); insumo.CriarCustoUnitarioHospitalarPor(semi); insumos.Salvar(insumo); foreach (var subsetor in semi.SubSetores) { var ticket = new TicketDeProducao(semi, subsetor, departamento); insumos.Salvar(ticket); } } }
public void InserirSetoresESubSetores(Departamento departamento) { Orcamentos orcamentos = new Orcamentos(); var setorHemodinamica = new SetorHospitalar("Hemodinâmica"); var subSetorHemodinamica = new SubSetorHospital("Hemodinâmica"); setorHemodinamica.AdicionarSetor(subSetorHemodinamica); var setorOncologia = new SetorHospitalar("Oncologia"); var subSetorOncologia = new SubSetorHospital("Oncologia"); setorOncologia.AdicionarSetor(subSetorOncologia); var procedimento = new ContaHospital("Procedimendo", TipoValorContaEnum.Quantidade); setorHemodinamica.AdicionarConta(procedimento); setorOncologia.AdicionarConta(procedimento); var centroCirurgico = new SetorHospitalar("Centro Cirúrgico"); var centroCirurgicoSubSetor = new SubSetorHospital("Centro Cirúrgico"); var centroCirurgicoObstetrico = new SubSetorHospital("Centro Obstétrico"); centroCirurgico.AdicionarSetor(centroCirurgicoSubSetor); centroCirurgico.AdicionarSetor(centroCirurgicoObstetrico); //Contas ta cirurgia var cirurgia = new ContaHospital("Cirurgias", TipoValorContaEnum.Quantidade); var salas = new ContaHospital("Salas", TipoValorContaEnum.Quantidade, false, true); var cirurgiaPorSala = new ContaHospital("Cirurgias por Sala", TipoValorContaEnum.Quantidade, true, false); centroCirurgico.AdicionarConta(cirurgia); centroCirurgico.AdicionarConta(salas); centroCirurgico.AdicionarConta(cirurgiaPorSala); cirurgiaPorSala.AnexarConta(cirurgia); cirurgiaPorSala.AnexarConta(salas); //UTI var uti = new SetorHospitalar("UTI"); var utiSemiMaternidade = new SubSetorHospital("UTI Semi Maternidade"); var utiAdulto = new SubSetorHospital("UTI Adulto"); var utiPediatrica = new SubSetorHospital("Uti Pediátrica"); var utiNeoNatal = new SubSetorHospital("Uti Neo-Natal"); var utiCoronariana = new SubSetorHospital("Uti Coronariana"); var semiIntensiva = new SubSetorHospital("Uti Semi-Intensiva"); //Contas da UTI var leito = new ContaHospital("Leito", TipoValorContaEnum.Quantidade); var ocupacao = new ContaHospital("Taxa de Ocupação", TipoValorContaEnum.Porcentagem); leito.MultiPlicaPorMes = true; uti.AdicionarConta(leito); uti.AdicionarConta(ocupacao); //SubSetores da UTI uti.AdicionarSetor(utiSemiMaternidade); uti.AdicionarSetor(utiAdulto); uti.AdicionarSetor(utiPediatrica); uti.AdicionarSetor(utiNeoNatal); uti.AdicionarSetor(utiCoronariana); uti.AdicionarSetor(semiIntensiva); //UNI var uni = new SetorHospitalar("UNI"); var uniAdulto = new SubSetorHospital("Uni Adulto"); var uniPediatrica = new SubSetorHospital("Uni Pediátrica"); var uniMaternidade = new SubSetorHospital("Maternidade"); uni.AdicionarSetor(uniAdulto); uni.AdicionarSetor(uniPediatrica); uni.AdicionarSetor(uniMaternidade); //Contas UNI uni.AdicionarConta(leito); uni.AdicionarConta(ocupacao); //Conta Atendimento var atendimento = new ContaHospital("Atendimento", TipoValorContaEnum.Quantidade); //Emergencia var emergencia = new SetorHospitalar("Emergência"); var subEmergenciaMaternidade = new SubSetorHospital("Emergência Maternidade"); var subEmergenciaAdulto = new SubSetorHospital("Emergência Adulto"); var subEmergenciaPediatrica = new SubSetorHospital("Emergência Pediátrica"); emergencia.AdicionarSetor(subEmergenciaMaternidade); emergencia.AdicionarSetor(subEmergenciaAdulto); emergencia.AdicionarSetor(subEmergenciaPediatrica); emergencia.AdicionarConta(atendimento); //Ambulatorio var ambulatorio = new SetorHospitalar("Ambulatório"); var subAmbulatorio = new SubSetorHospital("Ambulatório"); ambulatorio.AdicionarSetor(subAmbulatorio); ambulatorio.AdicionarConta(atendimento); //SADT var sadt = new SetorHospitalar("SADT"); var cardiologico = new SubSetorHospital("Cardiológico"); var resonanciaMagnetica = new SubSetorHospital("Resonância Mag"); var ultrassonografica = new SubSetorHospital("Ultrassonografia"); var tomografiaCompleta = new SubSetorHospital("Tomografia Comp"); var radiologia = new SubSetorHospital("Radiologia"); var patologiaClinica = new SubSetorHospital("Patologia Clínica"); var outros = new SubSetorHospital("Outros"); var exames = new ContaHospital("Exames", TipoValorContaEnum.Quantidade); sadt.AdicionarSetor(cardiologico); sadt.AdicionarSetor(resonanciaMagnetica); sadt.AdicionarSetor(ultrassonografica); sadt.AdicionarSetor(tomografiaCompleta); sadt.AdicionarSetor(radiologia); sadt.AdicionarSetor(patologiaClinica); sadt.AdicionarSetor(outros); sadt.AdicionarConta(exames); var bercario = new SetorHospitalar("Berçário"); var bercarioAltoRisco = new SubSetorHospital("Berçário Alto Risco"); var bercarioSemiIntensiva = new SubSetorHospital("Berçário Semi-intensiva"); bercario.AdicionarSetor(bercarioAltoRisco); bercario.AdicionarSetor(bercarioSemiIntensiva); bercario.AdicionarConta(ocupacao); bercario.AdicionarConta(leito); departamento.AdicionarSetor(sadt); departamento.AdicionarSetor(centroCirurgico); departamento.AdicionarSetor(uti); departamento.AdicionarSetor(uni); departamento.AdicionarSetor(emergencia); departamento.AdicionarSetor(ambulatorio); departamento.AdicionarSetor(setorHemodinamica); departamento.AdicionarSetor(setorOncologia); departamento.AdicionarSetor(bercario); Departamentos repositorio = new Departamentos(); repositorio.Salvar(sadt); repositorio.Salvar(centroCirurgico); repositorio.Salvar(uti); repositorio.Salvar(uni); repositorio.Salvar(emergencia); repositorio.Salvar(ambulatorio); repositorio.Salvar(setorHemodinamica); repositorio.Salvar(setorOncologia); repositorio.Salvar(bercario); repositorio.Salvar(departamento); }