예제 #1
0
        private void EliminarImagen(Panel pnl, LinkButton lnk)
        {
            Imagen_ProductoBC objImagen_ProductoBC = new Imagen_ProductoBC();
            Imagen_ProductoBE objImagen_ProductoBE = new Imagen_ProductoBE();

            try
            {
                string codigo = ObtenerCodigoPnlImagen(pnl);

                string path = MapPath(PATH_IMG_PROD);
                File.Delete(path + Path.GetFileName(ObtenerRutaPnlImagen(pnl)));

                objImagen_ProductoBE.Id_Producto = Convert.ToInt32(ViewState["ID_PRODUCTO"]);
                objImagen_ProductoBE.Id_Imagen   = Convert.ToInt32(codigo);

                objImagen_ProductoBC.Delete_Imagen_Producto(objImagen_ProductoBE.Id_Imagen, objImagen_ProductoBE.Id_Producto);
                pnl.Style.Add("background-image", "url('" + NO_IMAGE + "')");

                lnk.Visible = false;
            }
            catch (Exception)
            {
                throw;
            }
        }
예제 #2
0
        protected void btnGuardarImagen_Click(object sender, EventArgs e)
        {
            Imagen_ProductoBE objImagen_ProductoBE = new Imagen_ProductoBE();
            Imagen_ProductoBC objImagen_ProductoBC = new Imagen_ProductoBC();


            try
            {
                if (fuNuevaImagen.HasFile)
                {
                    string ext = Path.GetExtension(fuNuevaImagen.FileName);

                    if (Tools.EsImagen(ext))
                    {
                        string idPanel    = hdImagenCodigo.Value;
                        string rutaImagen = hdRutaImagen.Value;
                        //string imagen = rutaImagen.Replace("url('", "").Replace("')", "");
                        rutaImagen = rutaImagen.Remove(0, 5);
                        rutaImagen = rutaImagen.Remove(rutaImagen.Length - 1);

                        bool esPrimero = (idPanel == "1" ? true : false);
                        objImagen_ProductoBE             = AgregarImagen(fuNuevaImagen, esPrimero);
                        objImagen_ProductoBE.Id_Producto = Convert.ToInt32(ViewState["ID_PRODUCTO"]);

                        string path = MapPath(PATH_IMG_PROD);

                        if (!rutaImagen.Contains(NO_IMAGE))
                        {
                            string codigo = Path.GetFileName(rutaImagen).Replace(Path.GetExtension(rutaImagen), "");
                            objImagen_ProductoBC.Delete_Imagen_Producto(Convert.ToInt32(codigo), Convert.ToInt32(ViewState["ID_PRODUCTO"]));
                            File.Delete(path + Path.GetFileName(rutaImagen));
                        }

                        int id_imagen = objImagen_ProductoBC.Insert_Imagen_Producto(objImagen_ProductoBE);

                        string nombre_img = id_imagen + ext;
                        //GuardarImagen(fuNuevaImagen, nombre_img);
                        fuNuevaImagen.SaveAs(path + nombre_img);

                        Panel pnl = (Panel)pnlImagenActualizar.FindControl("pnlImagen" + idPanel);
                        pnl.Style.Add("background-image", "url('" + PATH_IMG_PROD + nombre_img + "')");

                        if (idPanel != "1")
                        {
                            LinkButton lnk = (LinkButton)pnlImagenActualizar.FindControl("lnkEliminarImagen" + idPanel);
                            lnk.Visible = true;
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                Tools.Error(GetType(), this, ex);
            }
        }
예제 #3
0
 public int Insert_Update_Imagen_Producto(Imagen_ProductoBE objImagen_ProductoBE)
 {
     try
     {
         return(objImagen_ProductoDALC.Insert_Update_Imagen_Producto(objImagen_ProductoBE));
     }
     catch (Exception)
     {
         throw;
     }
 }
예제 #4
0
 public void Update_Imagen_Producto(Imagen_ProductoBE objImagen_ProductoBE)
 {
     try
     {
         objImagen_ProductoDALC.Update_Imagen_Producto(objImagen_ProductoBE);
     }
     catch (Exception)
     {
         throw;
     }
 }
예제 #5
0
        public Imagen_ProductoBE Get_Imagen_Producto(Int32 id_imagen, Int32 id_producto)
        {
            String cadena;
            String sql = "Imagen_Producto_Get";

            SqlParameter[]    arrParameters        = new SqlParameter[2];
            Imagen_ProductoBE objImagen_ProductoBE = null;

            try
            {
                cadena = Tool.GetCadenaConexion();

                using (SqlConnection conn = new SqlConnection(cadena))
                {
                    using (SqlCommand cmd = conn.CreateCommand())
                    {
                        cmd.CommandText = sql;
                        cmd.CommandType = CommandType.StoredProcedure;

                        arrParameters[0] = new SqlParameter("@id_imagen", id_imagen);
                        arrParameters[1] = new SqlParameter("@id_producto", id_producto);

                        for (int i = 0; i < arrParameters.Length; i++)
                        {
                            cmd.Parameters.Add(arrParameters[i]);
                        }

                        cmd.Connection.Open();

                        using (SqlDataReader dr = cmd.ExecuteReader())
                        {
                            while (dr.Read())
                            {
                                objImagen_ProductoBE             = new Imagen_ProductoBE();
                                objImagen_ProductoBE.Id_Imagen   = Convert.ToInt32(dr["id_imagen"]);
                                objImagen_ProductoBE.Id_Producto = Convert.ToInt32(dr["id_producto"]);
                                objImagen_ProductoBE.Nombre      = dr["nombre"].ToString();
                            }
                        }
                    }
                }
                return(objImagen_ProductoBE);
            }
            catch (Exception)
            {
                throw;
            }
        }
예제 #6
0
        public List <Imagen_ProductoBE> Select_Imagen_Producto()
        {
            String                   cadena;
            String                   sql = "Imagen_Producto_Select";
            Imagen_ProductoBE        objImagen_ProductoBE = null;
            List <Imagen_ProductoBE> lstImagen_ProductoBE = null;

            try
            {
                cadena = Tool.GetCadenaConexion();

                using (SqlConnection conn = new SqlConnection(cadena))
                {
                    using (SqlCommand cmd = conn.CreateCommand())
                    {
                        cmd.CommandText = sql;
                        cmd.CommandType = CommandType.StoredProcedure;

                        cmd.Connection.Open();

                        using (SqlDataReader dr = cmd.ExecuteReader())
                        {
                            while (dr.Read())
                            {
                                if (lstImagen_ProductoBE == null)
                                {
                                    lstImagen_ProductoBE = new List <Imagen_ProductoBE>();
                                }

                                objImagen_ProductoBE             = new Imagen_ProductoBE();
                                objImagen_ProductoBE.Id_Imagen   = Convert.ToInt32(dr["id_imagen"]);
                                objImagen_ProductoBE.Id_Producto = Convert.ToInt32(dr["id_producto"]);
                                objImagen_ProductoBE.Nombre      = dr["nombre"].ToString();

                                lstImagen_ProductoBE.Add(objImagen_ProductoBE);
                            }
                        }
                    }
                }

                return(lstImagen_ProductoBE);
            }
            catch (Exception)
            {
                throw;
            }
        }
예제 #7
0
        public int Insert_Imagen_Producto(Imagen_ProductoBE objImagen_ProductoBE)
        {
            String cadena;
            String sql = "Imagen_Producto_Insert";

            SqlParameter[] arrParameters = new SqlParameter[3];
            int            codigo        = 0;

            try
            {
                cadena = Tool.GetCadenaConexion();

                using (SqlConnection conn = new SqlConnection(cadena))
                {
                    using (SqlCommand cmd = conn.CreateCommand())
                    {
                        cmd.CommandText = sql;
                        cmd.CommandType = CommandType.StoredProcedure;

                        arrParameters[0] = new SqlParameter("@id_producto", objImagen_ProductoBE.Id_Producto);
                        arrParameters[1] = new SqlParameter("@nombre", objImagen_ProductoBE.Nombre);
                        arrParameters[2] = new SqlParameter("@mostrar_primero", objImagen_ProductoBE.Mostrar_Primero);

                        for (int i = 0; i < arrParameters.Length; i++)
                        {
                            cmd.Parameters.Add(arrParameters[i]);
                        }

                        cmd.Connection.Open();

                        codigo = Convert.ToInt32(cmd.ExecuteScalar());
                    }
                }

                return(codigo);
            }
            catch (Exception)
            {
                throw;
            }
        }
예제 #8
0
        private Imagen_ProductoBE AgregarImagen(FileUpload fu, bool esPrimero = false)
        {
            try
            {
                Imagen_ProductoBE objImagen_ProductoBE = new Imagen_ProductoBE();

                string ext = Path.GetExtension(fu.FileName);

                if (Tools.EsImagen(ext))
                {
                    objImagen_ProductoBE.Mostrar_Primero = esPrimero;
                    objImagen_ProductoBE.Nombre          = ext;
                }

                return(objImagen_ProductoBE);
            }
            catch (Exception)
            {
                throw;
            }
        }
예제 #9
0
        public void Update_Imagen_Producto(Imagen_ProductoBE objImagen_ProductoBE)
        {
            String cadena;
            String sql = "Imagen_Producto_Update";

            SqlParameter[] arrParameters = new SqlParameter[4];

            try
            {
                cadena = Tool.GetCadenaConexion();

                using (SqlConnection conn = new SqlConnection(cadena))
                {
                    using (SqlCommand cmd = conn.CreateCommand())
                    {
                        cmd.CommandText = sql;
                        cmd.CommandType = CommandType.StoredProcedure;

                        arrParameters[0] = new SqlParameter("@id_imagen", objImagen_ProductoBE.Id_Imagen);
                        arrParameters[1] = new SqlParameter("@id_producto", objImagen_ProductoBE.Id_Producto);
                        arrParameters[2] = new SqlParameter("@nombre", objImagen_ProductoBE.Nombre);
                        arrParameters[3] = new SqlParameter("@mostrar_primero", objImagen_ProductoBE.Mostrar_Primero);

                        for (int i = 0; i < arrParameters.Length; i++)
                        {
                            cmd.Parameters.Add(arrParameters[i]);
                        }

                        cmd.Connection.Open();
                        cmd.ExecuteNonQuery();
                    }
                }
            }
            catch (Exception)
            {
                throw;
            }
        }
예제 #10
0
        protected void btnGuardar_Click(object sender, EventArgs e)
        {
            ProductoBC        objProductoBC        = new ProductoBC();
            ProductoBE        objProductoBE        = new ProductoBE();
            Imagen_ProductoBE objImagen_ProductoBE = new Imagen_ProductoBE();
            CategoriaBE       objCategoriaBE       = new CategoriaBE();

            try
            {
                UsuarioBE objUsuarioBE = (UsuarioBE)Session["USUARIO"];

                objProductoBE.Id_Usuario_Creacion     = objUsuarioBE.Id_Usuario;
                objProductoBE.Id_Usuario_Modificacion = objUsuarioBE.Id_Usuario;
                objProductoBE.Nombre                 = txtNombre.Text.Trim();
                objProductoBE.Precio                 = Convert.ToDecimal(txtPrecio.Text.Trim());
                objProductoBE.Destacado              = chkDestacado.Checked;
                objProductoBE.Descripcion_Corta      = txtDescripcionCorta.Text.Trim();
                objProductoBE.Descripcion            = txtDescripcion.Text.Trim();
                objProductoBE.Youtube                = txtYoutube.Text.Trim();
                objProductoBE.Detalle                = txtDetalle.Text.Trim();
                objProductoBE.Caracteristica_Tecnica = txtCaracteristicaTecnica.Text.Trim();

                //string colores = Request.Form[lbColorDestino.UniqueID];
                //if (!string.IsNullOrEmpty(colores))
                //{
                //    foreach (string item in colores.Split(','))
                //    {
                //        objColorBE = new ColorBE();
                //        objColorBE.Id_Color = Convert.ToInt32(item);
                //        objProductoBE.lstColorBE.Add(objColorBE);
                //    }
                //}

                string categorias = Request.Form[lbCategoriaDestino.UniqueID];
                if (!string.IsNullOrEmpty(categorias))
                {
                    foreach (string item in categorias.Split(','))
                    {
                        objCategoriaBE = new CategoriaBE();
                        objCategoriaBE.Id_Categoria = Convert.ToInt32(item);
                        objProductoBE.lstCategoriaBE.Add(objCategoriaBE);
                    }
                }

                string[] atributos = ViewState["ATRIBUTOS"].ToString().Split('|');

                GridView            gv = new GridView();
                Elemento_AtributoBE objElemento_AtributoBE = new Elemento_AtributoBE();
                //Producto_Elemento_AtributoBE objProducto_Elemento_AtributoBE = new Producto_Elemento_AtributoBE();

                foreach (string s in atributos)
                {
                    string[] atributo = s.Split(',');

                    if (!string.IsNullOrEmpty(s))
                    {
                        gv = new GridView();
                        gv = (GridView)pnlAtributos.FindControl("gvElementoAtributo" + atributo[0]);

                        foreach (GridViewRow r in gv.Rows)
                        {
                            objElemento_AtributoBE = new Elemento_AtributoBE();

                            CheckBox chk = (CheckBox)r.Cells[0].Controls[0];

                            if (chk.Checked)
                            {
                                objElemento_AtributoBE.Id_Elemento_Atributo = Convert.ToInt32(chk.ID.Replace("chk", ""));
                                objProductoBE.lstElemento_AtributoBE.Add(objElemento_AtributoBE);
                            }
                        }
                    }
                }

                if ((Modo)ViewState["MODO"] == Modo.Insertar)
                {
                    String error = ValidarImagenes();

                    if (String.IsNullOrEmpty(error))
                    {
                        if (fuImagen1.HasFile)
                        {
                            objProductoBE.lstImagen_ProductoBE.Add(AgregarImagen(fuImagen1, true));
                        }
                        if (fuImagen2.HasFile)
                        {
                            objProductoBE.lstImagen_ProductoBE.Add(AgregarImagen(fuImagen2));
                        }
                        if (fuImagen3.HasFile)
                        {
                            objProductoBE.lstImagen_ProductoBE.Add(AgregarImagen(fuImagen3));
                        }
                        if (fuImagen4.HasFile)
                        {
                            objProductoBE.lstImagen_ProductoBE.Add(AgregarImagen(fuImagen4));
                        }
                    }
                    else
                    {
                        Tools.Alert(error, "Agregar Producto", GetType(), this);
                        return;
                    }

                    objProductoBC.Insert_Producto_Completo(objProductoBE);

                    GuardarImagen(fuImagen1, objProductoBE.lstImagen_ProductoBE[0].Nombre);

                    if (objProductoBE.lstImagen_ProductoBE.Count >= 2)
                    {
                        GuardarImagen(fuImagen2, objProductoBE.lstImagen_ProductoBE[1].Nombre);
                    }
                    if (objProductoBE.lstImagen_ProductoBE.Count >= 3)
                    {
                        GuardarImagen(fuImagen3, objProductoBE.lstImagen_ProductoBE[2].Nombre);
                    }
                    if (objProductoBE.lstImagen_ProductoBE.Count >= 4)
                    {
                        GuardarImagen(fuImagen4, objProductoBE.lstImagen_ProductoBE[3].Nombre);
                    }
                }
                else if ((Modo)ViewState["MODO"] == Modo.Editar)
                {
                    objProductoBE.Id_Producto = Convert.ToInt32(ViewState["ID_PRODUCTO"]);

                    objProductoBC.Update_Producto_Completo(objProductoBE);
                }

                Response.Redirect("/Administrador/Productos.aspx");
            }
            catch (Exception ex)
            {
                Tools.Error(GetType(), this, ex);
            }
        }