public async Task <IActionResult> Detalle(string mensaje, int idCandidato, int idPersona)
        {
            if (HttpContext.Session.GetInt32(Constantes.idCandidatoSession) != idCandidato)
            {
                HttpContext.Session.SetInt32(Constantes.idCandidatoSession, idCandidato);
                HttpContext.Session.SetInt32(Constantes.idCandidatoPersonaSession, idPersona);
            }

            var candidato = ObtenerCandidato();

            var empleadoActual = new FichaCandidatoViewModel {
                IdCandidato = candidato.IdCandidato
            };
            var response = await apiServicio.ObtenerElementoAsync1 <Response>(empleadoActual,
                                                                              new Uri(WebApp.BaseAddress),
                                                                              "api/Candidatos/ObtenerFichaCandidato");

            if (response.IsSuccess)
            {
                InicializarMensaje(mensaje);
                var empleadoRespuesta = JsonConvert.DeserializeObject <FichaCandidatoViewModel>(response.Resultado.ToString());
                return(View(empleadoRespuesta));
            }
            return(BadRequest());
        }
        public async Task <IActionResult> Detalle(FichaCandidatoViewModel fichaCandidato)
        {
            if (!ModelState.IsValid)
            {
                InicializarMensaje(Mensaje.CorregirFormulario);
                return(View(fichaCandidato));
            }

            try
            {
                var response = await apiServicio.EditarAsync <Response>(fichaCandidato, new Uri(WebApp.BaseAddress), "api/Candidatos/EditarCandidato");

                if (response.IsSuccess)
                {
                    return(RedirectToAction("Detalle", new { mensaje = Mensaje.GuardadoSatisfactorio, idCandidato = HttpContext.Session.GetInt32(Constantes.idCandidatoSession) }));
                }
                // await CargarCombosEmpleado(datosBasicosEmpleado);
                ViewData["Error"] = Mensaje.ExisteEmpleado;
                return(View(fichaCandidato));
            }
            catch (Exception ex)
            {
                throw;
            }
        }
        public async Task <IActionResult> Create(FichaCandidatoViewModel fichaCandidato)
        {
            if (!ModelState.IsValid)
            {
                InicializarMensaje(Mensaje.CorregirFormulario);
                return(View(fichaCandidato));
            }

            try
            {
                var response = await apiServicio.InsertarAsync(fichaCandidato, new Uri(WebApp.BaseAddress), "api/Candidatos/InsertarCandidato");

                if (response.IsSuccess)
                {
                    var empleado = JsonConvert.DeserializeObject <Empleado>(response.Resultado.ToString());
                    // return RedirectToAction("AgregarDistributivo", new { IdEmpleado = empleado.IdEmpleado });
                }
                ViewData["Error"] = Mensaje.ExisteEmpleado;
                return(View(fichaCandidato));
            }
            catch (Exception ex)
            {
                throw;
            }
        }
        public FichaCandidatoViewModel ObtenerCandidato()
        {
            var candidato = new FichaCandidatoViewModel
            {
                IdCandidato = Convert.ToInt32(HttpContext.Session.GetInt32(Constantes.idCandidatoSession)),
                IdPersona   = Convert.ToInt32(HttpContext.Session.GetInt32(Constantes.idCandidatoPersonaSession)),
            };

            return(candidato);
        }
Пример #5
0
        public async Task <Response> EditarCandidato([FromBody] FichaCandidatoViewModel viewModel)
        {
            try
            {
                var persona = await db.Persona.Where(x => x.IdPersona == viewModel.IdPersona).FirstOrDefaultAsync();

                if (persona != null)
                {
                    var existe = await existeCandidato(viewModel.Identificacion, persona);

                    if (!existe)
                    {
                        persona.Apellidos       = viewModel.Apellidos;
                        persona.Nombres         = viewModel.Nombres;
                        persona.Identificacion  = viewModel.Identificacion;
                        persona.TelefonoCasa    = viewModel.TelefonoCasa;
                        persona.TelefonoPrivado = viewModel.TelefonoPrivado;
                        persona.CorreoPrivado   = viewModel.CorreoPrivado;
                        db.Persona.Update(persona);
                        await db.SaveChangesAsync();

                        return(new Response {
                            IsSuccess = true, Resultado = persona
                        });
                    }
                    return(new Response {
                        IsSuccess = false, Message = Mensaje.ExisteRegistro
                    });
                }


                return(new Response {
                    IsSuccess = false, Message = Mensaje.RegistroNoEncontrado
                });
            }
            catch (Exception ex)
            {
                return(new Response {
                    IsSuccess = false, Message = ex.Message
                });
            }
        }