public virtual int GetNewEquivalenceClassPosition()
        {
            IdSet set = new IdSet();

            foreach (EquivalenceClass element1 in EquivalenceClasses)
            {
                set.registerId(element1.Position);
            }
            return(set.NextValidId());
        }
Esempio n. 2
0
        public virtual int getNewCombinationPosition()
        {
            IdSet set = new IdSet();

            foreach (Combination com in Combinations)
            {
                set.registerId(com.Position);
            }
            return(set.NextValidId());
        }
Esempio n. 3
0
        public override void Hacer()
        {
            try
            {
                Categoria         categoria  = Parameters[EActionsParameters.CATEGORIA] as Categoria;
                IList <Categoria> categorias = Parameters[EActionsParameters.CATEGORIAS] as IList <Categoria>;
                IdSet             idset      = Parameters[EActionsParameters.IDS] as IdSet;
                if (categorias == null || categoria == null || idset == null)
                {
                    return;
                }


                FCategoria catdialog = new FCategoria();
                catdialog.Text = this.name;

                Categoria newCategoria = new Categoria();
                newCategoria.Id = idset.getNextValidId();

                catdialog.ShowDialog();
                if (catdialog.DialogResult == DialogResult.OK)
                {
                    idset.registerId(newCategoria.Id);
                    if (newCategoria.Name != catdialog.txtNombre.Text)
                    {
                        newCategoria.Name = catdialog.txtNombre.Text;
                    }
                    if (newCategoria.Description != catdialog.txtDescripcion.Text)
                    {
                        newCategoria.Description = catdialog.txtDescripcion.Text;
                    }
                    //adicionar la categoria hija
                    categorias.Add(newCategoria);
                    if (categoria.Children.Count > 1)
                    {
                        newCategoria.Orden = categoria.Children[0] + newCategoria.Id.ToString();
                    }

                    ((List <Categoria>)categorias).Sort();
                    categoria.addCategoria(newCategoria);
                    //publicar la nueva categoria
                    Parameters.Add(EActionsParameters.NUEVA_CATEGORIA, newCategoria);
                }
            }
            catch (Exception e)
            {
                mensajes = "Ocurrio un error \n" + e.Message;
            }
        }
Esempio n. 4
0
        public override void Hacer()
        {
            try
            {
                FCategorias cat = new FCategorias();
                cat.categoriasTree.Nodes.Clear();
                CategoriaDAO      dao = new CategoriaDAO();
                IList <Categoria> categorias;
                categorias = dao.getCategorias();

                if (categorias == null)
                {
                    return;
                }
                List <Categoria> categoriasClone = new List <Categoria>();
                categoriasClone.AddRange(categorias);
                idSet.clear();
                foreach (Categoria categoria in categorias)
                {
                    categoria.Changed += new ChangedEventHandler(CambioCategoria);
                    idSet.registerId(categoria.Id);
                }
                cat.pIdSet     = idSet;
                cat.Categorias = categorias;
                cat.fillTree();
                cat.categoriasTree.ExpandAll();
                cat.ShowDialog();
                if (cat.DialogResult == DialogResult.OK)
                {
                    foreach (Categoria categoria in categoriasClone)
                    {
                        if (!categorias.Contains(categoria))
                        {
                            dao.Eliminar(categoria);
                        }
                    }
                    foreach (Categoria categoria in categorias)
                    {
                        if (!categoriasClone.Contains(categoria))
                        {
                            dao.Adicionar(categoria);
                        }
                    }
                    if (categoriasCambiadas != null)
                    {
                        foreach (Categoria categoria in categoriasCambiadas)
                        {
                            if (categoriasClone.Contains(categoria) && (categorias.Contains(categoria)))
                            {
                                dao.Actualizar(categoria);
                            }
                        }
                    }


                    //guardar las nuevas categorias
                }
            }
            catch (Exception e)
            {
                mensajes = "No se pudieron editar las categorías \n" + e.Message;
            }
        }