public Paciente SalvarPaciente(Paciente paciente) { try { if (paciente == null) { throw new Exception("Não é possivel salvar um Paciente vazio"); } //Vendo se a idade do paciente e maior que 18 int idade = DateTime.Now.Year - paciente.DataDeNascimento.Year; if (paciente.DataDeNascimento.AddYears(18) > DateTime.Now) { idade = idade - 1; } //Chamando a classe ValidaCpf, passando uma string digitada pelo usuario bool valido = ValidarCpf.IsCpf(paciente.CPF); if (idade > 18 && paciente.Codigo != 0 && valido == true) { //Verificando se existe algum codigo cadastrado no banco de dados var codigo = repository.Get(x => x.Codigo == paciente.Codigo).FirstOrDefault(); //Verificando se existe algum cpf cadastrado no banco de dados var cpf = repository.Get(x => x.CPF == paciente.CPF).FirstOrDefault(); if (codigo != null) { throw new Exception("Não é possivel salvar o Paciente com um código duplicado!"); } else if (cpf != null) { throw new Exception("Não é possivel salvar o Paciente com um CPF duplicado!"); } else { //Transformar string para Enum para salvar //if(paciente.Planos == EnumPlanos.) //var minhaString = "Segundo"; //MinhaEnum foo = (MinhaEnum)Enum.Parse(typeof(MinhaEnum), minhaString); repository.Save(paciente); return(paciente); } } return(null); } catch (Exception ex) { throw ex; } }
public Paciente Get(string login, string senha) { try { var paciente = new Paciente(); _dataContext.BeginTransaction(); paciente = _pacienteRepository.Get(_dataContext, login, senha); ResponseService = new ResponseService() { Type = ResponseTypeEnum.Success, Message = "Usuário consultado com sucesso." }; return(paciente); } catch (Exception e) { ResponseService = new ResponseService() { Type = ResponseTypeEnum.Error, Message = "Houve uma falha ao consultar o usuário." }; return(new Paciente()); } finally { _dataContext.Finally(); } }
public void Save(Agenda agenda) { try { _dataContext.BeginTransaction(); agenda.Medico = _medicoRepository.Get(_dataContext, agenda.Medico.Crm); agenda.Paciente = _pacienteRepository.Get(_dataContext, agenda.Paciente.Cpf); if (ValidaAgenda(agenda)) { if (agenda.Id > 0) { _agendaRepository.Update(_dataContext, agenda); } else { _agendaRepository.Add(_dataContext, agenda); } _dataContext.Commit(); ResponseService = new ResponseService() { Type = ResponseTypeEnum.Success, Message = "Agenda cadastrada com sucesso." }; } } catch (Exception e) { ResponseService = new ResponseService() { Type = ResponseTypeEnum.Error, Message = "Houve uma falha ao cadastrar a agenda." }; _dataContext.Rollback(); } finally { _dataContext.Finally(); } }