Esempio n. 1
0
        public ActionResult Add(Encuestado encuestado, Usuario usuario)
        {
            int    id         = 0;
            string strMensaje = "No se pudo actualizar la información, intentelo más tarde";
            bool   okResult   = false;

            if (usuario.Id > 0)
            {
                id = usuario.Id;
                Encuestados UpdatePaciente = db.Encuestados.Where(c => c.IdUsuario == usuario.Id).FirstOrDefault();
                if (UpdatePaciente != null)
                {
                    EncuestadoService actualizar = new EncuestadoService();
                    strMensaje = actualizar.actualizar(usuario, encuestado);
                    okResult   = true;
                }
            }
            else
            {
                id = encuestado.IdEncuestado;
                EncuestadoService nuevo = new EncuestadoService();
                okResult   = true;
                strMensaje = nuevo.crear(usuario, encuestado);
            }
            return(Json(new Response {
                IsSuccess = okResult, Message = strMensaje, Id = id
            }, JsonRequestBehavior.AllowGet));
        }
Esempio n. 2
0
        public string actualizar(Usuario usuario, Encuestado encuestado)
        {
            string      strMensaje       = "Error";
            Usuarios    UpdateEncuestado = db.Usuarios.Where(c => c.Id == usuario.Id).FirstOrDefault();
            string      strPass          = CryproHelper.ComputeHash(usuario.Contraseña, CryproHelper.Supported_HA.SHA512, null);
            Encuestados objUsuID         = db.Encuestados.Where(c => c.IdUsuario == UpdateEncuestado.Id).FirstOrDefault();

            if (objUsuID != null)
            {
                UpdateEncuestado.NombreUsuario   = usuario.NombreUsuario;
                UpdateEncuestado.Contraseña      = strPass;
                UpdateEncuestado.Correo          = usuario.Correo;
                UpdateEncuestado.TipoUsuario     = usuario.TipoUsuario;
                UpdateEncuestado.Token           = "";
                db.Entry(UpdateEncuestado).State = EntityState.Modified;
                db.SaveChanges();

                objUsuID.Dni             = encuestado.Dni;
                objUsuID.Nombres         = encuestado.Nombres;
                objUsuID.ApellidoPaterno = encuestado.ApellidoPaterno;
                objUsuID.ApellidoMaterno = encuestado.ApellidoMaterno;
                objUsuID.Direccion       = encuestado.Direccion;
                objUsuID.Edad            = encuestado.Edad;
                objUsuID.Sexo            = encuestado.Sexo;
                objUsuID.Telefono        = encuestado.Telefono;
                db.Entry(objUsuID).State = EntityState.Modified;
                db.SaveChanges();

                strMensaje = "Se actualizaron sus datos";
            }

            return(strMensaje);
        }
Esempio n. 3
0
        public List <object> Obtener(Usuarios usuario, Encuestados encuestado)
        {
            List <object> objetos = new List <object>();
            Encuestado    Psico   = new Encuestado
            {
                IdEncuestado    = encuestado.IdEncuestado,
                Dni             = encuestado.Dni,
                Nombres         = encuestado.Nombres,
                ApellidoPaterno = encuestado.ApellidoPaterno,
                ApellidoMaterno = encuestado.ApellidoMaterno,
                Direccion       = encuestado.Direccion,
                Edad            = encuestado.Edad,
                Sexo            = encuestado.Sexo,
                Telefono        = encuestado.Telefono
            };

            objetos.Add(Psico);
            Usuario usuarios = new Usuario
            {
                Id            = usuario.Id,
                NombreUsuario = usuario.NombreUsuario,
                Contraseña    = usuario.Contraseña,
                TipoUsuario   = usuario.TipoUsuario,
                Correo        = usuario.Correo
            };

            objetos.Add(usuarios);
            return(objetos);
        }
        /// <summary>
        /// Este método obtiene todos los encuestados almacenados en la base de datos.
        /// No recibe ningún parámetro y devuelve una lista de encuestados.
        /// </summary>
        /// <returns>Lista de objetos Encuestados. El objeto encuestado posee los siguientes atributos: idEncuestado, tiempoRespuesta, ubicacion:</returns>
        public static Encuestado[] ObtenerEncuestados()
        {
            List <Encuestado> listaEncuestados = new List <Encuestado>();

            try
            {
                SqlConnection cn = new SqlConnection(CadenaConexion.cadenaConexion);
                cn.Open();
                SqlCommand cmd = new SqlCommand();
                cmd.Connection  = cn;
                cmd.CommandText = "Select * from Encuestados";
                SqlDataReader dr = cmd.ExecuteReader();

                while (dr.Read())
                {
                    Encuestado encuestado = new Encuestado();
                    encuestado.idEncuestado    = int.Parse(dr["idEncuestado"].ToString());
                    encuestado.tiempoRespuesta = DateTime.Parse(dr["tiempoRespuesta"].ToString());
                    encuestado.ubicacion       = dr["ubicacion"].ToString();
                    listaEncuestados.Add(encuestado);
                }
                cn.Close();
                dr.Close();
            }
            catch (Exception ex)
            {
                string mensaje = string.Empty;
                mensaje = ex.ToString();
                Console.WriteLine(mensaje);
            }

            return(listaEncuestados.ToArray <Encuestado>());
        }
Esempio n. 5
0
        public async Task <ActionResult <RespuestaRequerimiento> > PostPrueba(EvaluacionModel modelo)
        {
            RespuestaRequerimiento respuesta = null;

            using (var transaction = _context.Database.BeginTransaction())
            {
                try
                {
                    var encuestado = new Encuestado
                    {
                        nombres   = modelo.encuestado.nombres,
                        apellidos = modelo.encuestado.apellidos,
                        cargo     = modelo.encuestado.cargo,
                        entidad   = modelo.encuestado.entidad,
                        correo    = modelo.encuestado.correo,
                        telefono  = modelo.encuestado.telefono
                    };

                    _context.Encuestados.Add(encuestado);
                    await _context.SaveChangesAsync();

                    respuesta = new RespuestaRequerimiento
                    {
                        idEncuestado          = encuestado.idEncuestado,
                        fechaInicioEvaluacion = modelo.fechaInicioEvaluacion,
                        fechaFinEvaluacion    = modelo.fechaFinEvaluacion
                    };

                    _context.Respuestas.Add(respuesta);
                    await _context.SaveChangesAsync();

                    var respuestasDetalle = new List <RespuestaRequerimientoDetalle>();

                    foreach (var item in modelo.respuestas)
                    {
                        var respuestaDetalle = new RespuestaRequerimientoDetalle
                        {
                            idRequerimiento = item.idRequerimiento,
                            idEstado        = item.idEstado,
                            comentario      = item.comentario,
                            idRespuesta     = respuesta.idRespuesta
                        };
                        respuestasDetalle.Add(respuestaDetalle);
                    }

                    _context.RespuestasDetalle.AddRange(respuestasDetalle);
                    await _context.SaveChangesAsync();

                    transaction.Commit
                        ();
                }
                catch
                {
                    BadRequest();
                }
            }

            return(CreatedAtAction("GetRespuesta", new { id = respuesta.idRespuesta }, respuesta));
        }
 /// <summary>
 /// Este método delega la responsabilidad de guardar un encuestado en la base de datos.
 /// Recibe por parámetro un objeto encuestado.
 /// </summary>
 /// <param name="encuestado">Objeto que posee los siguientes atributos: idEncuestado, tiempoRespuesta, ubicacion</param>
 public bool SaveEncuestados(Encuestado encuestado)
 {
     try
     {
         DAOEncuestado.InsertarEncuestado(encuestado);
         return(true);
     }
     catch (Exception ex)
     {
         Console.WriteLine(ex.ToString());
         return(false);
     }
 }
        /// <summary>
        /// Este método delega la responsabilidad de guardar una respuesta en la base de datos.
        /// Recibe una lista de respuestas y un encuestado.
        /// </summary>
        /// <param name="listaRespuestas">Lista de respuestas. Cada objeto respuesta posee los siguientes atributos: idRespuesta, idPregunta, idEncuesta, idEncuestado, codigoPregunta, descripcionRespuesta</param>
        /// <param name="encuestado">Objeto que posee los siguientes atributos: (idEncuestado, tiempoRespuesta, ubicacion)</param>
        public bool SaveRespuesta(RespuestaEncuestado respuestaEncuestado)
        {
            List <Respuestas> listaRespuestas = respuestaEncuestado.listaRespuestas;
            Encuestado        encuestado      = respuestaEncuestado.encuestado;

            try
            {
                DAORespuestas.InsertarRespuestas(listaRespuestas, encuestado);
                return(true);
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.ToString());
                return(false);
            }
        }
Esempio n. 8
0
        public ActionResult Add(Usuario usuario, Encuestado encuestado, Coordinador admin)
        {
            int    id         = 0;
            string strMensaje = "No se pudo actualizar la información, intentelo más tarde";
            bool   okResult   = false;

            if (usuario.Id > 0)
            {
                id = usuario.Id;
                Usuarios UpdatePaciente = db.Usuarios.Where(c => c.Id == usuario.Id).FirstOrDefault();
                var      Tipo           = db.Usuarios.Where(c => c.Id == usuario.Id).Select(m => m.TipoUsuario).FirstOrDefault();
                if (Tipo == "Encuestado")
                {
                    EncuestadoService actualizar = new EncuestadoService();
                    strMensaje = actualizar.actualizar(usuario, encuestado);
                    okResult   = true;
                }
                else if (Tipo == "Coordinador")
                {
                    CoordinadorService actualizar = new CoordinadorService();
                    strMensaje = actualizar.actualizar(usuario, admin);
                    okResult   = true;
                }
            }
            else
            {
                if (usuario.TipoUsuario == "Encuestado")
                {
                    id = encuestado.IdEncuestado;
                    EncuestadoService nuevo = new EncuestadoService();
                    okResult   = true;
                    strMensaje = nuevo.crear(usuario, encuestado);
                }

                else if (usuario.TipoUsuario == "Coordinador")
                {
                    id = admin.IdCoordinador;
                    CoordinadorService nuevo = new CoordinadorService();
                    okResult   = true;
                    strMensaje = nuevo.crear(usuario, admin);
                }
            }
            return(Json(new Response {
                IsSuccess = okResult, Message = strMensaje, Id = id
            }, JsonRequestBehavior.AllowGet));
        }
Esempio n. 9
0
        public string crear(Usuario usuario, Encuestado encuestado)
        {
            string strMensaje = "Se agrego el Encuestado correctamente";

            try
            {
                string strPass     = CryproHelper.ComputeHash(usuario.Contraseña, CryproHelper.Supported_HA.SHA512, null);
                var    objUsuarios = (new Usuarios
                {
                    TipoUsuario = "Encuestado",
                    NombreUsuario = usuario.NombreUsuario,
                    Contraseña = strPass,
                    Correo = usuario.Correo,
                    Token = ""
                });
                db.Usuarios.Add(objUsuarios);
                db.SaveChanges();

                var objUsuID = db.Usuarios.Where(c => c.NombreUsuario == objUsuarios.NombreUsuario).Select(b => b.Id).FirstOrDefault();

                var objUsuNew = (new Encuestados
                {
                    Dni = encuestado.Dni,
                    Nombres = encuestado.Nombres,
                    ApellidoPaterno = encuestado.ApellidoPaterno,
                    ApellidoMaterno = encuestado.ApellidoMaterno,
                    Direccion = encuestado.Direccion,
                    Edad = encuestado.Edad,
                    Sexo = encuestado.Sexo,
                    Telefono = encuestado.Telefono,
                    IdUsuario = objUsuID
                });
                db.Encuestados.Add(objUsuNew);
                db.SaveChanges();
            }
            catch (Exception e)
            {
                strMensaje = e.Message;
            }
            return(strMensaje);
        }
        /// <summary>
        /// Este método inserta un encuestado en la base de datos.
        /// Recibe por parámetro un objeto encuestado.
        /// </summary>
        /// <param name="encuestado">Objeto que posee los siguientes atributos: idEncuestado, tiempoRespuesta, ubicacion</param>
        public static void InsertarEncuestado(Encuestado encuestado)
        {
            try
            {
                SqlConnection cn = new SqlConnection(CadenaConexion.cadenaConexion);
                cn.Open();
                SqlCommand cmd = new SqlCommand();
                cmd.Connection  = cn;
                cmd.CommandText = @"Insert into Encuestados (tiempoRespuesta, ubicacion) values
                                                    (@tiempoRespuesta, @ubicacion)";
                cmd.Parameters.AddWithValue("@tiempoRespuesta", encuestado.tiempoRespuesta);
                cmd.Parameters.AddWithValue("@ubicacion", encuestado.ubicacion);
                cmd.ExecuteNonQuery();
                cn.Close();
            }

            catch (Exception ex)
            {
                string mensaje = string.Empty;
                mensaje = ex.ToString();
                Console.WriteLine(mensaje);
            }
        }
Esempio n. 11
0
        public async Task <ActionResult <Encuestado> > PostEncuestado(Encuestado modelo)
        {
            var encuestado = new Encuestado
            {
                nombres   = modelo.nombres,
                apellidos = modelo.apellidos,
                correo    = modelo.correo,
                telefono  = modelo.telefono,
                cargo     = modelo.cargo,
                entidad   = modelo.entidad
            };

            _context.Encuestados.Add(encuestado);
            try
            {
                await _context.SaveChangesAsync();
            }
            catch
            {
                return(BadRequest());
            }

            return(CreatedAtAction("GetEncuestado", new { id = encuestado.idEncuestado }, encuestado));
        }
 public IActionResult Post([FromBody] Encuestado encuestado)
 {
     this.encuestadosRepository.SaveEncuestados(encuestado);
     //var response = Request.CreateResponse<Encuestado>(System.Net.HttpStatusCode.Created, encuestado);
     return(Ok(encuestado));
 }
        /// <summary>
        /// Este método inserta una respuesta y el encuestado al que corresponde esa respuesta en la base de datos.
        /// Recibe una lista de respuestas y un encuestado.
        /// </summary>
        /// <param name="listaRespuestas">Lista de respuestas. Cada objeto respuesta posee los siguientes atributos: idRespuesta, idPregunta, idEncuesta, idEncuestado, codigoPregunta, descripcionRespuesta</param>
        /// <param name="encuestado">Objeto que posee los siguientes atributos: (idEncuestado, tiempoRespuesta, ubicacion)</param>
        public static void InsertarRespuestas(List <Respuestas> listaRespuestas, Encuestado encuestado)
        {
            SqlConnection cn = new SqlConnection(CadenaConexion.cadenaConexion);

            cn.Open();
            SqlTransaction transaction;
            SqlCommand     cmd = new SqlCommand();

            cmd.Connection  = cn;
            transaction     = cn.BeginTransaction();
            cmd.Transaction = transaction;

            try
            {
                int  idEncuestado = 0;
                int  idRespuesta  = 1;
                bool primeraVez   = true;

                foreach (var respuesta in listaRespuestas)
                {
                    if (primeraVez)
                    {
                        cmd.CommandText = @"Insert into Encuestados (tiempoRespuesta, ubicacion) values
                                        (@tiempoRespuesta, @ubicacion) SELECT SCOPE_IDENTITY();";

                        cmd.Parameters.AddWithValue("@tiempoRespuesta", encuestado.tiempoRespuesta);
                        cmd.Parameters.AddWithValue("@ubicacion", encuestado.ubicacion);

                        idEncuestado = int.Parse(cmd.ExecuteScalar().ToString());
                        primeraVez   = false;
                    }

                    Pregunta pregunta = DAOPreguntas.ObtenerPreguntaPorCodigoYEncuesta(respuesta.idEncuesta, respuesta.codigoPregunta);


                    cmd.CommandText = @"Insert into Respuestas (idRespuesta, idPregunta, idEncuesta, idEncuestado, descripcionRespuesta, fechaRespuesta) values
                                                    (@idRespuesta, @idPregunta, @idEncuesta, @idEncuestado, @descripcionRespuesta, @fechaRespuesta)";

                    cmd.Parameters.Clear();
                    cmd.Parameters.AddWithValue("@idRespuesta", idRespuesta);
                    cmd.Parameters.AddWithValue("@idPregunta", pregunta.idPregunta);
                    cmd.Parameters.AddWithValue("@idEncuesta", respuesta.idEncuesta);
                    cmd.Parameters.AddWithValue("@idEncuestado", idEncuestado);
                    cmd.Parameters.AddWithValue("@descripcionRespuesta", respuesta.descripcionRespuesta);
                    cmd.Parameters.AddWithValue("@fechaRespuesta", DateTime.Now);
                    cmd.ExecuteNonQuery();

                    idRespuesta = idRespuesta + 1;

                    Encuesta encuesta = DAOEncuesta.ObtenerEncuesta(respuesta.idEncuesta);

                    if (encuesta.estadoEncuesta == "creada")
                    {
                        try
                        {
                            SqlConnection cn2 = new SqlConnection(CadenaConexion.cadenaConexion);
                            cn2.Open();
                            SqlCommand cmd2 = new SqlCommand();
                            cmd2.Connection  = cn2;
                            cmd2.CommandText = @"Update Encuestas set estadoEncuesta='respondida' where idEncuesta=@idEncuesta";
                            cmd2.Parameters.AddWithValue("@idEncuesta", respuesta.idEncuesta);
                            cmd2.ExecuteNonQuery();
                            cn2.Close();
                        }

                        catch (Exception ex)
                        {
                            string mensaje = string.Empty;
                            mensaje = ex.ToString();
                            Console.WriteLine(mensaje);
                        }
                    }
                }

                transaction.Commit();
                cn.Close();
            }

            catch (Exception ex)
            {
                transaction.Rollback();
                string mensaje = string.Empty;
                mensaje = ex.ToString();
                Console.WriteLine(mensaje);
            }
        }