public SearchCandidatoByContactoResponse SearchCandidatoByContactoResponse(string contacto, int?idCandidato) { var response = new SearchCandidatoByContactoResponse(); try { var contactoRes = _candidatoContactoRepository.GetOne(x => x.Contacto.Equals(contacto)); var candidato = contactoRes != null?_candidatoRepository.GetOne(x => x.CandidatoId.Equals(contactoRes.CandidatoId)) : null; if (candidato == null || candidato.CandidatoId == idCandidato) { response.IsValid = true; } else if (candidato.IsActivo) { response.IsValid = false; if (candidato.Usuario.Centro == null) { response.ErrorMessage = string.Format("Ya existe el usuario {0},{1} con el dato de contacto:{2} en uno de los centros.", candidato.Apellidos, candidato.Nombre, contactoRes.Contacto); } else { response.ErrorMessage = string.Format("Ya existe el usuario {0},{1} con el dato de contacto:{2} en el centro {3} ", candidato.Apellidos, candidato.Nombre, contactoRes.Contacto, candidato.Usuario.Centro.Nombre); } } else if (!candidato.IsActivo) { response.IsValid = true; } } catch (Exception ex) { response.IsValid = false; response.ErrorMessage = ex.Message; } return(response); }
public GetEmailBecarioResponse GetEmailBecario(int becarioId, int tipoMedioContactoEmail) { var response = new GetEmailBecarioResponse(); try { var becarioCandidatoId = _becarioRepository.GetOne(x => x.BecarioId == becarioId && x.IsActivo).CandidatoId; var email = _candidatoContactoRepository.GetOne(x => x.CandidatoId == becarioCandidatoId && x.IsActivo && x.TipoMedioContactoId == tipoMedioContactoEmail).Contacto; if (email != null) { response.IsValid = true; response.EmailBecario = email; } } catch (Exception ex) { response.IsValid = false; response.ErrorMessage = ex.Message; } return(response); }