//metodo para eliminar un producto y retorna el mensaje de confirmacion del proceso
    public string eliminar(DataProducto dp)
    {
        string msg = "";
        //comando que ejecute el procedure update
        SqlCommand cmd = new SqlCommand("usp_delete_producto", cn.getCN);

        cmd.CommandType = CommandType.StoredProcedure;

        //lista de Parametros
        cmd.Parameters.Add("@id", SqlDbType.Int).Value = dp.Codigo;

        //abrir la conexion
        cn.getCN.Open();
        try
        {
            msg = cmd.ExecuteNonQuery().ToString() + "Registro Eliminado";
        }
        catch (Exception ex)
        {
            msg = ex.Message;
        }
        finally
        {
            cn.getCN.Close();
        }

        //enviamos el mensaje
        return(msg);
    }
        protected void btnEliminar_Click(object sender, EventArgs e)
        {
            usu = Session["usuarioNombre"].ToString();

            DataProducto dp = new DataProducto();

            dp.Codigo = int.Parse(txtCodigo.Text);

            //ejecutamos el metodo
            string msg = p.eliminar(dp);

            //alerta que muestre el mensaje
            string script = @"<script type='text/javascript'> alert('{0}'); </script>";

            script = string.Format(script, msg);
            ScriptManager.RegisterStartupScript(this, typeof(Page), "alerta", script, false);

            //visualizamos la actualizacion
            GridView1.DataSource = p.listarProd();
            GridView1.DataBind();

            txtCodigo.Text = "";
            txtNombre.Text = "";
            txtPrecio.Text = "";
            txtStock.Text  = "";
        }
    //metodo para actualizar un producto y retorna el mensaje de confirmacion del proceso
    public string actualizar(DataProducto dp)
    {
        string msg = "";
        //comando que ejecute el procedure update
        SqlCommand cmd = new SqlCommand("usp_update_producto", cn.getCN);

        cmd.CommandType = CommandType.StoredProcedure;

        //lista de Parametros
        cmd.Parameters.Add("@id", SqlDbType.Int).Value      = dp.Codigo;
        cmd.Parameters.Add("@nom", SqlDbType.VarChar).Value = dp.Descrip;
        cmd.Parameters.Add("@pre", SqlDbType.Money).Value   = dp.Precio;
        cmd.Parameters.Add("@cant", SqlDbType.Int).Value    = dp.Stock;
        cmd.Parameters.Add("@codEmp", SqlDbType.Char).Value = dp.Cod_Emple;
        cmd.Parameters.Add("@codCate", SqlDbType.Int).Value = dp.Cod_Cate;

        //abrir la conexion
        cn.getCN.Open();
        try
        {
            msg = cmd.ExecuteNonQuery().ToString() + "Registro Actualizado";
        }
        catch (Exception ex)
        {
            msg = ex.Message;
        }
        finally
        {
            cn.getCN.Close();
        }

        //enviamos el mensaje
        return(msg);
    }
예제 #4
0
        private void btnEditar_Click(object sender, EventArgs e)
        {
            //abrir formulario
            int indice = -1;

            try
            {
                indice = dgvProductos.CurrentRow.Index;
            }catch
            {
                MessageBox.Show("seleccione un Producto a editar");
            }


            //hay un indice seleccionado

            if (indice > -1)
            {
                DataProducto    prod = new DataProducto();
                DataGridViewRow fila = dgvProductos.CurrentRow;
                //prod.Id_productos = (long) fila.Cells[0].Value;
                prod.Id_productos = (long)fila.Cells[0].Value;
                prod.Codigo       = (string)fila.Cells[1].Value;
                prod.Descripcion  = (string)fila.Cells[2].Value;
                prod.Precio       = (float)fila.Cells[3].Value;
                prod.Fecha        = (DateTime)fila.Cells[4].Value;
                Form form = new AgregarProducto(prod, Modo.Actualizar);
                form.Show();
            }
        }
예제 #5
0
        public ActionResult RegistrarProducto(HttpPostedFileBase imagen, String nombre, int cantidadStock, int precio, String descripcion, String tipo)
        {
            String imagenNombre = Path.GetFileName(imagen.FileName);

            try
            {
                string path = Server.MapPath("~/img/");

                if (!Directory.Exists(path))
                {
                    Directory.CreateDirectory(path);
                }
                imagen.SaveAs(path + Path.GetFileName(imagen.FileName));
            }
            catch (Exception e) { }

            Producto producto = new Producto();

            producto.Nombre        = nombre;
            producto.CantidadStock = cantidadStock;
            producto.Precio        = precio;
            producto.Descripcion   = descripcion;
            producto.Tipo          = int.Parse(tipo);
            producto.Imagen        = imagenNombre;

            DataProducto dataProducto = new DataProducto();

            dataProducto.insertarProducto(producto);
            return(View());
        }
 public void Iniciar(DataProducto prod)
 {
     txtid.Text          = prod.Id_productos.ToString();
     txtcodigo.Text      = prod.Codigo.ToString();
     txtprecio.Text      = prod.Precio.ToString();
     txtdescription.Text = prod.Descripcion;
     dtpfecha.Value      = prod.Fecha;
 }
예제 #7
0
        public ActionResult ActualizarProducto(HttpPostedFileBase imagen, String nombre, int cantidadStock, int precio, string descripcion, string tipo, string id, string imagenVieja)
        {
            String imagenNombre = "";

            if (imagen == null)
            {
                imagenNombre = imagenVieja;
            }
            else
            {
                imagenNombre = Path.GetFileName(imagen.FileName);
                try
                {
                    string path = Server.MapPath("~/img/");

                    if (!Directory.Exists(path))
                    {
                        Directory.CreateDirectory(path);
                    }
                    imagen.SaveAs(path + Path.GetFileName(imagen.FileName));
                }
                catch (Exception e) { }
            }


            Producto producto = new Producto();

            producto.Id            = int.Parse(id);
            producto.Nombre        = nombre;
            producto.CantidadStock = cantidadStock;
            producto.Precio        = precio;
            producto.Descripcion   = descripcion;
            producto.Tipo          = int.Parse(tipo);
            producto.Imagen        = imagenNombre;

            try
            {
                DataProducto dataProducto = new DataProducto();
                dataProducto.actualizarProducto(producto);
                var lista = dataProducto.obtenerTodos();

                return(RedirectToAction("VerProductos", lista));
            }
            catch
            {
                DataProducto dataProducto = new DataProducto();
                producto            = dataProducto.obtenerProducto(int.Parse(id));
                ViewBag.nombre      = producto.Nombre;
                ViewBag.cantidad    = producto.CantidadStock;
                ViewBag.precio      = producto.Precio;
                ViewBag.descripcion = producto.Descripcion;
                ViewBag.tipo        = producto.Tipo;
                ViewBag.imagen      = producto.Imagen;
                ViewBag.id          = id;
                return(View());
            }
        }
 /// <summary>
 /// se usa para editar
 /// </summary>
 /// <param name="prod"></param>
 /// <param name="modo"></param>
 public EditarProducto(DataProducto prod, Modo modo)
 {
     InitializeComponent();
     this.modo      = modo;
     this.Text      = "Editar Producto";
     groupProd.Text = "Editar Producto";
     Iniciar(prod);
     // ocultar el boton de agregar
     btnAgregar.Enabled = false;
     txtid.Enabled      = false;
 }
예제 #9
0
        public ActionResult EliminarProducto(int id, int?page)
        {
            DataProducto dataProducto = new DataProducto();

            dataProducto.eliminarProducto(id);
            var lista = dataProducto.obtenerTodos();

            int pageSize   = 5;
            int pageNumber = (page ?? 1);

            return(View("VerProductos", lista.ToPagedList(pageNumber, pageSize)));
        }
예제 #10
0
        public ActionResult ActualizarProducto(int id)
        {
            DataProducto dataProducto = new DataProducto();
            Producto     producto     = dataProducto.obtenerProducto(id);

            ViewBag.nombre      = producto.Nombre;
            ViewBag.cantidad    = producto.CantidadStock;
            ViewBag.precio      = producto.Precio;
            ViewBag.descripcion = producto.Descripcion;
            ViewBag.tipo        = producto.Tipo;
            ViewBag.imagen      = producto.Imagen;
            ViewBag.id          = id;
            return(View());
        }
예제 #11
0
        public void AgregarProducto(DataProducto producto)
        {
            //transformo el DataProducto en DataEntidad
            ProductoEntidad entidad = new ProductoEntidad();

            entidad.Codigo      = producto.Codigo;
            entidad.Descripcion = producto.Descripcion;
            entidad.Precio      = producto.Precio;
            entidad.Fecha       = producto.Fecha;
            //llamo a la persistencia
            ProductosRepo repProdu = new ProductosRepo();

            repProdu.AgregarProducto(entidad);
        }
예제 #12
0
        public List <DataProducto> ObtenerProductos(string consulta)
        {
            List <DataProducto> lista = new List <DataProducto>();

            /*
             * DataProducto prod1 = new DataProducto();
             * prod1.Id_productos= 1;
             * prod1.Codigo = "codigo";
             * prod1.Descripcion = "descripcion01";
             * prod1.Precio = 12.0f;
             * lista.Add(prod1);
             * DataProducto prod2 = new DataProducto();
             * prod1.Id_productos = 2;
             * prod1.Codigo = "codigo01";
             * prod1.Descripcion = "descripcion01";
             * prod1.Precio = 15.f;
             * lista.Add(prod1);
             * prod2.Id_productos = 2;
             * prod2.Codigo = "codigo02";
             * prod2.Descripcion = "descripcion02";
             * prod2.Precio = 2.2f;
             * lista.Add(prod2);
             */
            ProductosRepo          prodRep = new ProductosRepo();
            List <ProductoEntidad> list2   = prodRep.ListarProductos(consulta);

            ///recorrer la lista
            foreach (ProductoEntidad prod in list2)
            {
                DataProducto producto = new DataProducto
                {
                    Id_productos = prod.Id_productos,
                    Codigo       = prod.Codigo,
                    Descripcion  = prod.Descripcion,
                    Precio       = prod.Precio,
                    Fecha        = prod.Fecha
                };
                lista.Add(producto);
            }

            return(lista);
        }
        private void btnAgregar_Click(object sender, EventArgs e)
        {
            DialogResult resultado = MessageBox.Show("seguro que desea\r\n agregar", "salir",
                                                     MessageBoxButtons.YesNoCancel);

            if (resultado == DialogResult.Yes &&
                txtcodigo.Text.Trim() != string.Empty &&
                txtdescription.Text.Trim() != string.Empty &&
                txtprecio.Text.Trim() != string.Empty)
            {
                //llamar a agregar
                DateTime     fecha = dtpfecha.Value.Date;
                DataProducto prod  = new DataProducto();
                //prod.Id_productos= long.Parse(txtid.Text);
                prod.Codigo      = txtcodigo.Text.ToString();
                prod.Precio      = float.Parse(txtprecio.Text.ToString());
                prod.Descripcion = txtdescription.Text;
                prod.Fecha       = fecha;
                Producto producto = new Producto();
                producto.AgregarProducto(prod);
            }
        }
예제 #14
0
        public ActionResult enviarDatos(String Key) //recibimos la imagen como parametro en el metodo
        {
            String          claveEncritpda = Encriptar(Key);
            DataProducto    dataProducto   = new DataProducto();
            List <Producto> productos      = dataProducto.obtenerTodos();
            DatosEmpresa    datosEmpresa   = new DatosEmpresa();

            datosEmpresa.ClaveGenerada = claveEncritpda;
            datosEmpresa.NombreEmpresa = this.nombre;

            datosEmpresa.Productos = productos;

            //enviar al api
            var datosenvio = JsonConvert.SerializeObject(datosEmpresa);
            //HttpContent contenido = new StringContent(datosenvio, Encoding.UTF8, "application/json"); ;

            HttpClient clienteHttp = new HttpClient();

            clienteHttp.BaseAddress = new Uri(this.url);

            var request = clienteHttp.PostAsync("api/producto", datosEmpresa, new JsonMediaTypeFormatter()).Result;

            if (request.IsSuccessStatusCode)//consulta si la peticion es 200 es decir que estuvo bien
            {
                var resultString = request.Content.ReadAsStringAsync().Result;
                //
                var respuesta = JsonConvert.DeserializeObject <Mensaje>(resultString);

                ViewBag.mensaje = respuesta.Respuesta;
                return(View("Key"));
            }
            else
            {
                //Solicitud no se pudo realizar
                ViewBag.mensaje = "La solicitud no se pudo realizar";
                return(View("Key"));
            }
        }
예제 #15
0
        public DataRecomendacion GetRecomendacionesUsuario(string TiendaID, DataRecomendacion dataRecomendacion)
        {
            var db         = _client.GetDatabase(_database);
            var collection = db.GetCollection <BsonDocument>(TiendaID);
            var query      = collection.Find(new BsonDocument("UsuarioID", dataRecomendacion.UsuarioID));
            var count      = query.CountAsync();

            count.Wait();
            if (count.Result == 0)
            {
                return(null);
            }

            var prod = query.FirstAsync();

            List <DataProducto> listDP = new List <DataProducto>();
            string    UsuarioID        = prod.Result["UsuarioID"].AsString;
            BsonArray ar = prod.Result["productos"].AsBsonArray;

            string   nombre              = "";
            long     productoid          = 0;
            string   descripcion         = "";
            int      precio_base_subasta = 0;
            int      precio_compra       = 0;
            DateTime fecha_cierre        = DateTime.UtcNow;
            string   idOfertante         = "";

            foreach (var a in ar)
            {
                if (!a["nombre"].IsBsonNull)
                {
                    nombre = a["nombre"].AsString;
                }
                if (!a["ProductoID"].IsBsonNull)
                {
                    productoid = a["ProductoID"].AsInt64;
                }
                if (!a["descripcion"].IsBsonNull)
                {
                    descripcion = a["descripcion"].AsString;
                }
                if (!a["precio_base_subasta"].IsBsonNull)
                {
                    precio_base_subasta = a["precio_base_subasta"].AsInt32;
                }
                if (!a["precio_compra"].IsBsonNull)
                {
                    precio_compra = a["precio_compra"].AsInt32;
                }
                if (!a["fecha_cierre"].IsBsonNull)
                {
                    fecha_cierre = a["fecha_cierre"].ToUniversalTime();
                }
                if (!a["idOfertante"].IsBsonNull)
                {
                    idOfertante = a["idOfertante"].AsString;
                }

                DataProducto dp = new DataProducto {
                    descripcion         = descripcion,
                    fecha_cierre        = fecha_cierre,
                    idOfertante         = idOfertante,
                    nombre              = nombre,
                    precio_compra       = precio_compra,
                    precio_base_subasta = precio_base_subasta,
                    ProductoID          = productoid
                };
                listDP.Add(dp);
            }
            return(new DataRecomendacion {
                UsuarioID = UsuarioID, productos = listDP
            });
        }
 public EditarProducto(DataProducto prod, Modo modo, FormInicio formInicio) : this(prod, modo)
 {
     this.formInicio = formInicio;
 }
예제 #17
0
        public ActionResult VerProductos(string sortOrder, string currentFilter, string searchString, int?page)
        {
            DataProducto dataProducto = new DataProducto();
            var          lista        = dataProducto.obtenerTodos();

            ViewBag.CurrentSort    = sortOrder;
            ViewBag.NameSortParm   = String.IsNullOrEmpty(sortOrder) ? "name_desc" : "";
            ViewBag.DateSortParm   = sortOrder == "Cant" ? "cant_desc" : "Cant";
            ViewBag.PrecioSortParm = sortOrder == "CantP" ? "cantp_desc" : "CantP";

            if (searchString != null)
            {
                page = 1;
            }
            else
            {
                searchString = currentFilter;
            }

            ViewBag.CurrentFilter = searchString;

            var producto = from s in lista
                           select s;

            if (!String.IsNullOrEmpty(searchString))
            {
                producto = producto.Where(s => s.Nombre.Contains(searchString) ||
                                          s.CantidadStock.ToString().Contains(searchString));
            }

            switch (sortOrder)
            {
            case "name_desc":
                producto = producto.OrderByDescending(s => s.Id);
                break;

            case "Cant":
                producto = producto.OrderBy(s => s.Nombre);
                break;

            case "cant_desc":
                producto = producto.OrderByDescending(s => s.CantidadStock);
                break;

            case "CantP":
                producto = producto.OrderBy(s => s.Nombre);
                break;

            case "cantp_desc":
                producto = producto.OrderByDescending(s => s.Precio);
                break;

            default:
                producto = producto.OrderBy(s => s.Nombre);
                break;
            }

            int pageSize   = 5;
            int pageNumber = (page ?? 1);

            return(View(producto.ToPagedList(pageNumber, pageSize)));
        }