private void createCategory()
        {
            product_category obj = new product_category();

            obj.name = txtName.Text;

            using (metaGamesInventoryAlterEntities BD = new metaGamesInventoryAlterEntities())
            {
                try
                {
                    BD.product_category.Add(obj); //Añadimos el objeto nuevo al contexto de la entidad Company
                    BD.SaveChanges();             //Guardamos los cambios hechos al contexto en la base de datos metaGamesInventory
                    MessageBox.Show("Categoría registrada exitosamente.", "Operación exitosa", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
                    RDProductCategory form = new RDProductCategory();
                    form.Show();
                    this.Close();
                }
                catch
                {
                    string text = "Posibles incongruencias:" +
                                  "\n1. Ya existe una categoría con el nombre: " + txtName.Text;
                    MessageBox.Show(text, "Operación fallida", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
        }
 public CUProductCategory(product_category obj)
 {
     InitializeComponent();
     categoryToUpdate  = obj;
     txtName.Text      = obj.name;
     btnCancel.Visible = true;
 }
        private void createProduct()
        //Método encargado de la inserción de datos dentro del contexto de la tabla Product y,
        //posteriormente, en la base de datos.
        {
            product obj = new product();//Objeto que almacenará los datos obtenidos de los controles del formulario

            obj.name             = txtName.Text;
            obj.price            = Double.Parse(nudPrice.Value.ToString());
            obj.minimum_quantity = Int32.Parse(nudMinimum.Value.ToString());
            obj.stock            = Int32.Parse(nudStock.Value.ToString());

            //Obtenemos el id, tanto del proveedor como de la categoria seleccionada,
            //gracias a una consulta a las listas correspondientes
            try

            {
                obj.id_provider = providers.Where(d => d.name == cmbProvider.Text).First().id;
            }
            catch
            /*Si acaso no encuentra el proveedor registrado, se procede a crear un nuevo registro dentro de la tabla Provider*/
            {
                using (metaGamesInventoryAlterEntities BD = new metaGamesInventoryAlterEntities())
                {
                    try
                    {
                        provider newProvider = new provider();
                        newProvider.name = cmbProvider.Text;
                        BD.provider.Add(newProvider);
                        BD.SaveChanges();
                    }
                    catch
                    {
                        MessageBox.Show("El proveedor ya existe", "¡Error!", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        return;
                    }
                }
            }

            try

            {
                obj.id_product_category = categories.Where(d => d.name == cmbCategory.Text).First().id;
            }
            catch
            /*Si acaso no encuentra el proveedor registrado, se procede a crear un nuevo registro dentro de la tabla product_category*/
            {
                using (metaGamesInventoryAlterEntities BD = new metaGamesInventoryAlterEntities())
                {
                    try
                    {
                        product_category newCategory = new product_category();
                        newCategory.name = cmbCategory.Text;
                        BD.product_category.Add(newCategory);
                        BD.SaveChanges();
                    }
                    catch
                    {
                        MessageBox.Show("La categoría ya existe", "¡Error!", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        return;
                    }
                }
            }

            obj.product_description = txtDescription.Text;

            using (metaGamesInventoryAlterEntities BD = new metaGamesInventoryAlterEntities())
            //Creamos un nuevo contexto de la base de datos
            {
                if (obj.id_provider == null)
                {
                    obj.id_provider = BD.provider.Where(d => d.name == cmbProvider.Text).First().id;
                }
                if (obj.id_product_category == null)
                {
                    obj.id_product_category = BD.product_category.Where(d => d.name == cmbCategory.Text).First().id;
                }
                BD.product.Add(obj); //Añadimos el objeto previamente establecido al contexto creado
                BD.SaveChanges();    //Persistimos los datos del contexto, dentro de la base de datos
                MessageBox.Show("Producto registrado exitosamente.", "Operación exitosa", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
                closable = true;
                this.Close();
                RDProduct form = new RDProduct();
                form.MdiParent = metaGamesInventory.home.ActiveForm;
                form.Text      = "Productos registrados";
                form.Show();
            }
        }
Beispiel #4
0
 private void dgvData_CellClick(object sender, DataGridViewCellEventArgs e)
 {
     selected = categories.ElementAt <product_category>(e.RowIndex);
     //Creamos un objeto con los datos de la celda seleccionada
 }
        private void updateProduct()
        //Método encargado de la actualización de datos dentro del contexto de la tabla Product y,
        //posteriormente, en la base de datos.
        {
            productToUpdate.name             = txtName.Text;
            productToUpdate.price            = Double.Parse(nudPrice.Value.ToString());
            productToUpdate.minimum_quantity = Int32.Parse(nudMinimum.Value.ToString());
            productToUpdate.stock            = Int32.Parse(nudStock.Value.ToString());
            //Obtenemos el id, tanto del proveedor como de la categoria seleccionada,
            //gracias a una consulta a las listas correspondientes
            try
            {
                productToUpdate.id_provider = providers.Where(d => d.name == cmbProvider.Text).First().id;
            }
            catch
            /*Si acaso no encuentra el proveedor registrado, se procede a crear un nuevo registro dentro de la tabla Provider*/
            {
                using (metaGamesInventoryAlterEntities BD = new metaGamesInventoryAlterEntities())
                {
                    try
                    {
                        provider newProvider = new provider();
                        newProvider.name = cmbProvider.Text;
                        BD.provider.Add(newProvider);
                        BD.SaveChanges();
                    }
                    catch
                    {
                        MessageBox.Show("El proveedor ya existe", "¡Error!", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        return;
                    }
                }
            }

            try

            {
                productToUpdate.id_product_category = categories.Where(d => d.name == cmbCategory.Text).First().id;
            }
            catch
            /*Si acaso no encuentra el proveedor registrado, se procede a crear un nuevo registro dentro de la tabla product_category*/
            {
                using (metaGamesInventoryAlterEntities BD = new metaGamesInventoryAlterEntities())
                {
                    try
                    {
                        product_category newCategory = new product_category();
                        newCategory.name = cmbCategory.Text;
                        BD.product_category.Add(newCategory);
                        BD.SaveChanges();
                    }
                    catch
                    {
                        MessageBox.Show("La categoría ya existe", "¡Error!", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        return;
                    }
                }
            }
            productToUpdate.product_description = txtDescription.Text;

            using (metaGamesInventoryAlterEntities BD = new metaGamesInventoryAlterEntities())
            //Creamos un nuevo contexto de la base de datos
            {
                productToUpdate.id_provider         = BD.provider.Where(d => d.name == cmbProvider.Text).First().id;
                productToUpdate.id_product_category = BD.product_category.Where(d => d.name == cmbCategory.Text).First().id;

                //Actualizamos el producto registrado dentro del contexto, por el objeto productToUpdate
                BD.Entry(productToUpdate).State = System.Data.Entity.EntityState.Modified;
                BD.SaveChanges();//Persistimos los datos actualizados dentro de la base de datos
                MessageBox.Show("Producto modificado exitosamente.", "Operación exitosa", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
                closable = true;
                this.Close();
                RDProduct form = new RDProduct();
                form.MdiParent = metaGamesInventory.home.ActiveForm;
                form.Text      = "Productos registrados";
                form.Show();
            }
        }