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(); } }
public bool ValidaAgenda(Agenda agenda) { ResponseService = new ResponseService(); if (agenda.Clinica == null || agenda.Clinica.Id == 0) { ResponseService.FieldsInvalids.Add("Clinica"); ResponseService.Message += "Não foi possível identificar a clínica."; } if (agenda.Medico == null || agenda.Medico.Id == 0) { ResponseService.FieldsInvalids.Add("Medico"); ResponseService.Message += "Não foi possível identificar o médico."; } if (agenda.Paciente == null || agenda.Paciente.Id == 0) { ResponseService.FieldsInvalids.Add("Paciente"); ResponseService.Message += "Não foi possível identificar o paciente."; } if (agenda.DataHoraMarcada < DateTime.Now) { ResponseService.FieldsInvalids.Add("DataHoraMarcada"); ResponseService.Message += "A data marcada deve ser maior que a atual."; } if (string.IsNullOrEmpty(agenda.TempoEstimado)) { ResponseService.FieldsInvalids.Add("TempoEstimado"); ResponseService.Message += "O tempo estimado não foi informado."; } if (ResponseService.FieldsInvalids.Count > 0) { ResponseService.Message += "Informe os dados corretamente."; } ResponseService.Type = string.IsNullOrEmpty(ResponseService.Message) ? ResponseTypeEnum.Success : ResponseTypeEnum.Warning; return(ResponseService.Type == ResponseTypeEnum.Success); }
public PacienteService() { _dataContext = new DataContext(); _pacienteRepository = new PacienteRepository(); ResponseService = new ResponseService(); }
public ClinicaService() { _dataContext = new DataContext(); _clinicaRepository = new ClinicaRepository(); ResponseService = new ResponseService(); }