public Guid Salvar(Apresentacao.Consulta consulta) { var dataHora = _validador.ValidarDataHora(consulta.Data, consulta.Hora); var imc = _validador.ValidarImc(consulta.IndiceMassaCorporal); var peso = _validador.ValidarPeso(consulta.Peso); var dieta = consulta.Dieta?.Select(a => new Modelos.Alimento() { Descricao = a.Descricao, Grupo = a.Grupo, ValorCalorico = a.ValorCalorico }); var paciente = _pacienteDados.ListarModelo(consulta.Paciente.Id); Guid guidPadrao = Guid.Empty; if (consulta.Id == guidPadrao) { return(AdicionarConsulta(consulta, dataHora, imc, peso, dieta, paciente)); } else { return(AtualizarConsulta(consulta, dataHora, imc, peso, dieta, paciente)); } }
private Guid AtualizarConsulta(Apresentacao.Consulta consulta, DateTime dataHora, double imc, double peso, IEnumerable <Modelos.Alimento> dieta, Modelos.Paciente paciente) { var consultaSalva = _consultas.Where(c => c.Id == consulta.Id).FirstOrDefault(); if (consultaSalva is null) { throw new InvalidOperationException("Consulta não encontrada"); } consultaSalva.IndiceMassaCorporal = imc; consultaSalva.Peso = peso; consultaSalva.RestricoesAlimentares = consulta.RestricoesAlimentares; consultaSalva.SensacaoPaciente = consulta.SensacaoPaciente; consultaSalva.DataHora = dataHora; consultaSalva.Paciente = paciente; consultaSalva.Dieta = dieta; return(consultaSalva.Id); }
private Guid AdicionarConsulta(Apresentacao.Consulta consulta, DateTime dataHora, double imc, double peso, IEnumerable <Modelos.Alimento> dieta, Modelos.Paciente paciente) { var guid = Guid.NewGuid(); _consultas.Add( new Modelos.Consulta() { DataHora = dataHora, Dieta = dieta, Id = guid, IndiceMassaCorporal = imc, Paciente = paciente, Peso = peso, RestricoesAlimentares = consulta.RestricoesAlimentares, SensacaoPaciente = consulta.SensacaoPaciente } ); return(guid); }