Exemplo n.º 1
0
        public async Task <IActionResult> Create([Bind("Id,Solicitante,HoraDisponible,Estado,Entrevistadora")] TablaDeEntrevista tablaDeEntrevista, int idSolicitante, int idHoraDisponible, string idEstado, string idEntrevistadora)
        {
            Solicitante    solicitante = _context.Solicitante.Single(x => x.Id == idSolicitante);
            HoraDisponible hora        = _context.HoraDisponible.Single(x => x.Id == idHoraDisponible);
            UsuarioInterno usuario     = _context.UsuarioInterno.Single(x => x.Id == idEntrevistadora);

            tablaDeEntrevista.Solicitante    = solicitante;
            tablaDeEntrevista.Entrevistadora = usuario;
            tablaDeEntrevista.HoraDisponible = hora;

            if (ModelState.IsValid)
            {
                ///// Esto modifica el estado de la hora a no disponible//////////
                HoraDisponible horaOcupada = _context.HoraDisponible.Where(x => x.Id == hora.Id).First();
                horaOcupada.Estado = "Ocupada";

                Solicitante concertado = _context.Solicitante.Where(x => x.Id == solicitante.Id).First();
                concertado.Proceso = "Entrevista Concertada";
                ///// Esto modifica el estado del candidato a entrevista concertada/////////

                _context.Add(tablaDeEntrevista);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            return(View(tablaDeEntrevista));
        }
        public async Task <IActionResult> Edit(int id, [Bind("Id,HoraDisponible,Estado,Entrevistadora")] TablaDeEntrevista tablaDeEntrevista, int idHoraDisponible, string idEstado, string idEntrevistadora)
        {
            HoraDisponible hora    = _context.HoraDisponible.Single(x => x.Id == idHoraDisponible);
            UsuarioInterno usuario = _context.UsuarioInterno.Single(x => x.Id == idEntrevistadora);

            tablaDeEntrevista.Entrevistadora = usuario;
            tablaDeEntrevista.HoraDisponible = hora;

            if (id != tablaDeEntrevista.Id)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(tablaDeEntrevista);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!TablaDeEntrevistaExists(tablaDeEntrevista.Id))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            return(View(tablaDeEntrevista));
        }