예제 #1
0
        public IHttpActionResult Delete(int id)
        {
            SQLConexion         _conexion   = new SQLConexion();
            List <SqlParameter> _Parametros = new List <SqlParameter>();
            DataTableReader     _dtr        = null;

            try
            {
                _conexion.Conectar(System.Configuration.ConfigurationManager.ConnectionStrings["MiBD"].ToString());
                _Parametros.Add(new SqlParameter("@id", id));
                _conexion.PrepararProcedimiento("sp_DeleteDet", _Parametros);
                _dtr = _conexion.EjecutarTableReader();
            }
            catch (Exception e)
            {
                throw new Exception(e.Message);
            }
            finally
            {
                _conexion.Desconectar();
                _conexion = null;
                _dtr      = null;
            }
            return(Ok());
        }
    public void Updates(string user)
    {
        SQLConexion         _conexion   = new SQLConexion();
        List <SqlParameter> _Parametros = new List <SqlParameter>();
        DataTableReader     _dtr        = null;
        List <User>         _list       = new List <User>();

        try
        {
            //se abre conexion
            _conexion.Conectar(System.Configuration.ConfigurationManager.ConnectionStrings["MiBD"].ToString());
            _Parametros.Add(new SqlParameter("@id", user.ToString()));
            _conexion.PrepararProcedimiento("sp_UdtEst", _Parametros);
            _dtr = _conexion.EjecutarTableReader();
        }
        catch (Exception ex)
        {
            throw new Exception(ex.Message);
        }
        finally
        {
            _conexion.Desconectar();
            _conexion = null;
            _dtr      = null;
        }
    }
        public IHttpActionResult Authenticate(Usuarios usuario)
        {
            if (usuario == null)
            {
                throw new HttpResponseException(HttpStatusCode.BadRequest);
            }

            SQLConexion         _conexion   = new SQLConexion();
            List <SqlParameter> _Parametros = new List <SqlParameter>();
            DataTableReader     _dtr        = null;
            List <Usuarios>     _list       = new List <Usuarios>();

            try
            {
                _conexion.Conectar(System.Configuration.ConfigurationManager.ConnectionStrings["MiBD"].ToString());
                _Parametros.Add(new SqlParameter("@nick", usuario.Nick));
                _Parametros.Add(new SqlParameter("@pass", usuario.Password));
                _conexion.PrepararProcedimiento("sp_auth", _Parametros);
                _dtr = _conexion.EjecutarTableReader();
                if (_dtr.HasRows && _dtr.Read())
                {
                    var token = TokenGenerator.GenerateTokenJwt(usuario.Password);
                    return(Ok(token));
                }
                else
                {
                    return(Unauthorized());
                }
            }
            catch (Exception e)
            {
                throw new Exception(e.Message);
            }
            //TODO: Validate credentials Correctly, this code is only for demo !!
        }
예제 #4
0
        public IHttpActionResult PutCell(CellPhones cell)
        {
            SQLConexion         _conexion   = new SQLConexion();
            List <SqlParameter> _Parametros = new List <SqlParameter>();
            DataTableReader     _dtr        = null;
            List <CellPhones>   _list       = new List <CellPhones>();

            try
            {
                _conexion.Conectar(System.Configuration.ConfigurationManager.ConnectionStrings["MiBD"].ToString());
                _Parametros.Add(new SqlParameter("@id", cell.Id));
                _Parametros.Add(new SqlParameter("@namephone", cell.Name));
                _Parametros.Add(new SqlParameter("@price", cell.Price));
                _Parametros.Add(new SqlParameter("@firmware", cell.Firmware));
                _Parametros.Add(new SqlParameter("@brand", cell.Brand));
                _conexion.PrepararProcedimiento("sp_UpdateCellPhone", _Parametros);
                _dtr = _conexion.EjecutarTableReader();
                _dtr.Close();
            }
            catch (Exception e)
            {
                throw new Exception(e.Message);
            }
            finally
            {
                _conexion.Desconectar();
                _conexion = null;
                _dtr      = null;
            }
            return(Ok(_list));
        }
    public User Login(User user)
    {//oahdpiubpiufpqiuwebcpiuqwbcpiasdbcpuy
        SQLConexion         _conexion   = new SQLConexion();
        List <SqlParameter> _Parametros = new List <SqlParameter>();
        DataTableReader     _dtr        = null;

        try
        {
            _conexion.Conectar(System.Configuration.ConfigurationManager.ConnectionStrings["MiBD"].ToString());
            _Parametros.Add(new SqlParameter("@nick", user.Nick));
            _Parametros.Add(new SqlParameter("@pass", user.Password));
            _conexion.PrepararProcedimiento("[dbo].[sp_conf]", _Parametros);
            _dtr = _conexion.EjecutarTableReader();

            if (_dtr.HasRows)
            {
                _dtr.Read();
                User _user = new global::User()
                {
                    Id       = long.Parse(_dtr["Id"].ToString()),
                    Name     = _dtr["Nombre"].ToString(),
                    LastName = _dtr["LastName"].ToString(),
                    Nick     = user.Nick,
                    Password = user.Password
                };
                _dtr.Close();
                HttpContext.Current.Session["Identificador"] = _user.Id;
                return(_user);
            }
            else
            {
                throw new Exception("User not found");
            }
        }
        catch (Exception msg)
        {
            throw new Exception(msg.Message);
        }
        finally
        {
            _conexion.Desconectar();
            _conexion = null;
            _dtr      = null;
        }
        //Aqui iría la logica a base de datos
        //if (user.Nick == "andreiarias53" && user.Password == "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855")
        //{

        //Creamos session con el Id del Usuario

        //}
        //else
    }
예제 #6
0
        public IHttpActionResult GetId(string fecha)
        {
            SQLConexion         _conexion         = new SQLConexion();
            List <SqlParameter> _Parametros       = new List <SqlParameter>();
            DataTableReader     _dtr              = null;
            List <DetalleVenta> _list             = new List <DetalleVenta>();
            List <ProductoDetalleVentaModel> _dtv = new List <ProductoDetalleVentaModel>();
            DetalleVenta detalleVenta             = new DetalleVenta();

            try
            {
                _conexion.Conectar(System.Configuration.ConfigurationManager.ConnectionStrings["MiBD"].ToString());
                _Parametros.Add(new SqlParameter("@fecha", fecha));
                _conexion.PrepararProcedimiento("sp_GetByDateTime2", _Parametros);
                _dtr = _conexion.EjecutarTableReader();
                if (_dtr.HasRows)
                {
                    while (_dtr.Read())
                    {
                        //Se recuperan los valores de acuerdo al alias que se definio en el procedimiento almacenado
                        detalleVenta.IdVenta    = Int32.Parse(_dtr["IdVenta"].ToString());
                        detalleVenta.TotalVenta = Double.Parse(_dtr["TotalCompra"].ToString());
                        ProductoDetalleVentaModel _producto = new ProductoDetalleVentaModel()
                        {
                            IdProducto = Int32.Parse(_dtr["IdProducto"].ToString()),
                            Nombre     = _dtr["Nombre"].ToString(),
                            Cantidad   = Int32.Parse(_dtr["Cantidad"].ToString()),
                            Precio     = Double.Parse(_dtr["PrecioUnitario"].ToString())
                        };
                        _dtv.Add(_producto);
                        detalleVenta.Productos = _dtv;
                    }

                    _dtr.Close();
                    _list.Add(detalleVenta);
                    return(Ok(_list));
                }
            }
            catch (Exception e)
            {
                throw new Exception(e.Message);
            }
            finally
            {
                _conexion.Desconectar();
                _conexion = null;
                _dtr      = null;
            }
            return(Ok(_list));
        }
    public List <User> GetUsers(string user)
    {
        SQLConexion         _conexion   = new SQLConexion();
        List <SqlParameter> _Parametros = new List <SqlParameter>();
        DataTableReader     _dtr        = null;
        List <User>         _list       = new List <User>();

        try
        {
            //se abre conexion
            _conexion.Conectar(System.Configuration.ConfigurationManager.ConnectionStrings["MiBD"].ToString());
            _Parametros.Add(new SqlParameter("@nick", user.ToString()));
            _conexion.PrepararProcedimiento("sp_ListUsers", _Parametros);
            _dtr = _conexion.EjecutarTableReader();
            if (_dtr.HasRows)
            {
                while (_dtr.Read())
                {
                    User _user = new User()
                    {
                        //Se recuperan los valores de acuerdo al alias que se definio en el procedimiento almacenado
                        Id       = long.Parse(_dtr["Id"].ToString()),
                        Name     = _dtr["Nombre"].ToString(),
                        LastName = _dtr["LastName"].ToString(),
                        Nick     = _dtr["Nick"].ToString(),
                        Password = _dtr["Password"].ToString(),
                        Img      = _dtr["Img"].ToString()
                    };
                    _list.Add(_user); //Se agrega elemento 2

                    //HttpContext.Current.Session["Identificador"] = _user.Id;
                }
                //JavaScriptSerializer js = new JavaScriptSerializer();
                //Context.Response.Write(js.Serialize(_list));
                _dtr.Close();
                return(_list);
            }
        }
        catch (Exception ex)
        {
            throw new Exception(ex.Message);
        }
        finally
        {
            _conexion.Desconectar();
            _conexion = null;
            _dtr      = null;
        }
        return(_list);
    }
예제 #8
0
        public IHttpActionResult GetId(int id)
        {
            SQLConexion         _conexion   = new SQLConexion();
            List <SqlParameter> _Parametros = new List <SqlParameter>();
            DataTableReader     _dtr        = null;
            List <CellPhones>   _list       = new List <CellPhones>();

            try
            {
                _conexion.Conectar(System.Configuration.ConfigurationManager.ConnectionStrings["MiBD"].ToString());
                _Parametros.Add(new SqlParameter("@id", id));
                _conexion.PrepararProcedimiento("sp_GetById", _Parametros);
                _dtr = _conexion.EjecutarTableReader();
                if (_dtr.HasRows)
                {
                    while (_dtr.Read())
                    {
                        CellPhones _cellPhones = new CellPhones()
                        {
                            //Se recuperan los valores de acuerdo al alias que se definio en el procedimiento almacenado
                            Id       = Int32.Parse(_dtr["IdCellPhone"].ToString()),
                            Name     = _dtr["NamePhone"].ToString(),
                            Firmware = _dtr["Firmware"].ToString(),
                            Price    = Double.Parse(_dtr["Price"].ToString()),
                            Brand    = _dtr["Brand"].ToString()
                        };
                        _list.Add(_cellPhones); //Se agrega elemento 2

                        //HttpContext.Current.Session["Identificador"] = _user.Id;
                    }
                    //JavaScriptSerializer js = new JavaScriptSerializer();
                    //Context.Response.Write(js.Serialize(_list));
                    _dtr.Close();
                    return(Ok(_list));
                }
            }
            catch (Exception e)
            {
                throw new Exception(e.Message);
            }
            finally
            {
                _conexion.Desconectar();
                _conexion = null;
                _dtr      = null;
            }
            return(Ok(_list));
        }
예제 #9
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="correo"> Se recibe el correo del usuario con el cual se quiere iniciar sesion</param>
        /// <param name="pass">Se recibe el password previamente encriptado para que no viaje desprotegida.
        /// Para encriptar password haga uso de la funcion <see cref="EncriptacionSHA256(string)"/></param>
        /// <example>
        /// Ejemplo de logeo con cuenta de administrador
        /// <code>
        /// LoginUsuario("*****@*****.**", EncriptacionSHA256("ADMIN"))
        /// </code>
        /// </example>
        /// <returns>Retorna un valor de tipo entero. 0 para no encontrado, 1 para administrador y 2 para usuario normal</returns>
        public Tuple <int, int, int> LoginUsuario(string correo, string pass)
        {
            SQLConexion         conn       = new SQLConexion();
            List <SqlParameter> parametros = new List <SqlParameter>();
            DataTableReader     reader;

            try
            {
                conn.Conectar(cadenaConexion);
                parametros.Add(new SqlParameter("@correo", correo));
                parametros.Add(new SqlParameter("@contrasenia", pass));

                conn.PrepararProcedimiento("sp_Login", parametros);
                reader = conn.EjecutarTableReader();

                if (reader.HasRows)
                {
                    Usuario usuarioReturn = new Usuario();
                    while (reader.Read())
                    {
                        usuarioReturn.IdUsuario   = (int)reader["IdUsuario"];
                        usuarioReturn.IdGrupo     = (int)reader["IdGrupo"];
                        usuarioReturn.Tipo        = (int)reader["Tipo"];
                        usuarioReturn.Nombre      = (string)reader["Nombre"];
                        usuarioReturn.Apellido    = (string)reader["Apellido"];
                        usuarioReturn.Correo      = (string)reader["Correo"];
                        usuarioReturn.Contrasenia = (string)reader["Contrasenia"];
                    }

                    return(new Tuple <int, int, int>(usuarioReturn.IdUsuario, usuarioReturn.Tipo, usuarioReturn.IdGrupo));//usuarioReturn.Tipo; //EL TIPO 1 ES ADMINISTRADOR Y EL TIPO 2 EL EMPLEADO
                }
                else
                {
                    return(null); //EL CERO SIMBOLIZA UN USUARIO INEXISTENTE
                }
            }
            catch (Exception Ex)
            {
                return(null);

                throw Ex;
            }
            finally
            {
                conn.Desconectar();
            }
        }
예제 #10
0
        public IHttpActionResult GetId(int id)
        {
            SQLConexion          _conexion   = new SQLConexion();
            List <SqlParameter>  _Parametros = new List <SqlParameter>();
            DataTableReader      _dtr        = null;
            List <ProductoModel> _list       = new List <ProductoModel>();

            try
            {
                _conexion.Conectar(System.Configuration.ConfigurationManager.ConnectionStrings["MiBD"].ToString());
                _Parametros.Add(new SqlParameter("@id", id));
                _conexion.PrepararProcedimiento("sp_GetProductById", _Parametros);
                _dtr = _conexion.EjecutarTableReader();
                if (_dtr.HasRows)
                {
                    while (_dtr.Read())
                    {
                        ProductoModel _producto = new ProductoModel()
                        {
                            //Se recuperan los valores de acuerdo al alias que se definio en el procedimiento almacenado
                            IdProducto = Int32.Parse(_dtr["IdProducto"].ToString()),
                            Nombre     = _dtr["Nombre"].ToString(),
                            Precio     = Double.Parse(_dtr["Precio"].ToString())
                        };
                        _list.Add(_producto);
                    }
                    _dtr.Close();
                    return(Ok(_list));
                }
            }
            catch (Exception e)
            {
                throw new Exception(e.Message);
            }
            finally
            {
                _conexion.Desconectar();
                _conexion = null;
                _dtr      = null;
            }
            return(Ok(_list));
        }
예제 #11
0
        public IHttpActionResult post(List <ProductoDetalleVentaModel> Lista)
        {
            List <SqlParameter> _Parametros = new List <SqlParameter>();
            SQLConexion         conn        = new SQLConexion();
            var dt = new DataTable();

            dt.Columns.Add("IdProducto", typeof(Int32));
            dt.Columns.Add("Cantidad", typeof(Int32));
            //DataRow dc = dt.NewRow();
            try
            {
                for (int i = 0; i < Lista.Count; i++)
                {
                    DataRow dc = dt.NewRow();
                    dc[0] = Lista[i].IdProducto;
                    dc[1] = Lista[i].Cantidad;
                    dt.Rows.Add(dc);
                }

                conn.Conectar(System.Configuration.ConfigurationManager.ConnectionStrings["MiBD"].ToString());
                _Parametros.Add(new SqlParameter("@detalle", dt));
                _Parametros[0].SqlDbType = SqlDbType.Structured;
                _Parametros[0].TypeName  = "dbo.Detalle";
                conn.PrepararProcedimiento("sp_Insert", _Parametros);
                conn.EjecutarTableReader();
            }
            catch (Exception e)
            {
                throw new Exception(e.Message);
            }
            finally
            {
                conn.Desconectar();
                conn = null;
            }
            return(Ok());
        }