private OtherInfoRowModel CalculateOtherInfoFlags(OtherInfoRowModel model) { var responseExistenteRecruiting = _candidatoService.CheckCandidatoEnRecruiting(model.Nombre, model.Email, model.Telefono, model.NIF); if (responseExistenteRecruiting.IsValid) { if (!responseExistenteRecruiting.ExistenteEnRecruiting) { model.Visualizable = true; } else { model.ExistenteRecruiting = responseExistenteRecruiting.ExistenteEnRecruiting; var responseEnProcesoRecruiting = _candidaturaService.CheckEnProceso((int)responseExistenteRecruiting.CandidatoId); if (responseEnProcesoRecruiting.IsValid) { if (responseEnProcesoRecruiting.EnProceso) { model.EnProceso = responseEnProcesoRecruiting.EnProceso; model.Contratado = responseEnProcesoRecruiting.Contratado; model.Visualizable = false; } else { var responseDescarteSeisMeses = _candidaturaService.CheckDescarteMenosSeisMeses((int)responseExistenteRecruiting.CandidatoId); if (responseDescarteSeisMeses.IsValid) { if (!responseDescarteSeisMeses.DescarteMenosSeisMeses) { model.Visualizable = true; } else { model.DescarteRenunciaMenosSeisMeses = responseDescarteSeisMeses.DescarteMenosSeisMeses; var responseNoMotivadoCambioEmpresaResponse = _candidaturaService.CheckNoMotivadoCambioEmpresa((int)responseExistenteRecruiting.CandidatoId); if (responseNoMotivadoCambioEmpresaResponse.IsValid) { if (responseNoMotivadoCambioEmpresaResponse.NoMotivadoCambioEmpresa) { model.NoMotivadoCambioEmpresa = responseNoMotivadoCambioEmpresaResponse.NoMotivadoCambioEmpresa; model.Visualizable = true; } else { model.Visualizable = false; } } } } } } } } return(model); }
// POST: OtherInfoApi public DatosCandidatoApiModel Post(DatosCandidatoConsultaApiModel model) { DatosCandidatoApiModel datosCandidato = new DatosCandidatoApiModel(); try { if (ValidateUser(model)) { var candidato = _candidatoService.CheckCandidatoEnRecruiting(model.Nombre, model.Email, model.Telefono, model.NIF); if (candidato.IsValid) { if (candidato.ExistenteEnRecruiting) { var datosBasicosCandidato = _candidatoService.GetCandidatoById((int)candidato.CandidatoId); datosCandidato.ExistenteRecruiting = true; datosCandidato.Nombre = datosBasicosCandidato.CandidatoViewModel.Nombres; datosCandidato.Apellidos = datosBasicosCandidato.CandidatoViewModel.Apellidos; datosCandidato.Titulacion = datosBasicosCandidato.CandidatoViewModel.Titulacion; var candidaturas = _candidaturaService.GetCandidaturasByIdCandidato((int)candidato.CandidatoId); if (candidaturas.CandidaturasViewModel != null && candidaturas.CandidaturasViewModel.Count() != 0) { datosCandidato.NumCandidaturas = candidaturas.CandidaturasViewModel.Count(); datosCandidato = MapearDatosCandidatura(datosCandidato, candidaturas.CandidaturasViewModel); } else { datosCandidato.NumCandidaturas = 0; } } else { datosCandidato.ExistenteRecruiting = candidato.ExistenteEnRecruiting; } } return(datosCandidato); } } catch (Exception exception) { return(datosCandidato); } return(datosCandidato); }
private ContactarCandidatoResponse ContactarCandidato(ContactarCandidatoModel model) { var response = new ContactarCandidatoResponse(); var candidatoGuardar = new CandidatoOtherInfoViewModel() { Nombre = model.Nombre, Apellidos = model.Apellidos, NIF = model.NIF, Telefono = model.Telefono, Email = model.Email, TitulacionId = model.TitulacionId, UsuarioCreacionOtherInfo = model.UsuarioCreacionOtherInfo }; var responseCheckExistenteRecruiting = _candidatoService.CheckCandidatoEnRecruiting(model.Nombre + " " + model.Apellidos, model.Email, model.Telefono, model.NIF); if (responseCheckExistenteRecruiting.IsValid) { if (responseCheckExistenteRecruiting.ExistenteEnRecruiting) { candidatoGuardar.CandidatoId = responseCheckExistenteRecruiting.CandidatoId; var responseUpdateCandidato = _candidatoService.UpdateCandidatoOtherInfo(candidatoGuardar); if (responseUpdateCandidato.IsValid) { var responseCrearCandidatura = CheckAndCreateCandidatura(model, responseUpdateCandidato.CandidatoId); response.IsValid = responseCrearCandidatura.IsValid; response.ErrorMessage = responseCrearCandidatura.ErrorMessage; } } else { var responseCreateCandidato = _candidatoService.CreateCandidatoOtherInfo(candidatoGuardar); if (responseCreateCandidato.IsValid) { var responseCrearCandidatura = CheckAndCreateCandidatura(model, responseCreateCandidato.CandidatoId); response.IsValid = responseCrearCandidatura.IsValid; response.ErrorMessage = responseCrearCandidatura.ErrorMessage; } } } return(response); }