示例#1
0
        private void nowyAtrybytButton_Click(object sender, EventArgs e)
        {
            if (treeView.SelectedNode != null)
            {
                AtrybutyTreeNode groupNode = (AtrybutyTreeNode)treeView.SelectedNode;
                if (!groupNode.IsGroup)
                {
                    groupNode = (AtrybutyTreeNode)groupNode.Parent;
                }

                Enova.Business.Old.DB.Web.Atrybut atrybut = new Enova.Business.Old.DB.Web.Atrybut()
                {
                    GUID                   = Guid.NewGuid(),
                    GrupaAtrybutow         = groupNode.GrupaAtrybutow,
                    Kolejnosc              = 1000,
                    Kolor                  = string.Empty,
                    Nazwa                  = string.Empty,
                    PSAtrybutID            = 0,
                    PSGrupaID              = 0,
                    Stamp                  = DateTime.Now,
                    Synchronizacja         = (int)Enova.Business.Old.Types.RowSynchronizeOld.NotsynchronizedNew,
                    SynchronizacjaTekstury = (int)Enova.Business.Old.Types.SynchronizeImage.None
                };
                Enova.Business.Old.Core.ContextManager.WebContext.AddToAtrybuty(atrybut);

                AtrybutyTreeNode node = new AtrybutyTreeNode(atrybut);
                groupNode.Nodes.Add(node);
                addedNodes.Add(node);
                treeView.SelectedNode = node;
                nazwaAtrybutuTextBox.Focus();
            }
        }
示例#2
0
 public AtrybutyTreeNode(Enova.Business.Old.DB.Web.Atrybut atrybut)
     : base(atrybut.Nazwa)
 {
     this.grupa   = atrybut.GrupaAtrybutow;
     this.atrybut = atrybut;
     isGroup      = false;
 }
示例#3
0
        private void SaveChanges()
        {
            DateTime stamp = DateTime.Now;

            foreach (AtrybutyTreeNode gnode in treeView.Nodes)
            {
                foreach (AtrybutyTreeNode anode in gnode.Nodes)
                {
                    Enova.Business.Old.DB.Web.Atrybut atrybut = anode.Atrybut;
                    if (atrybut.EntityState == System.Data.EntityState.Modified)
                    {
                        if (atrybut.Synchronizacja == (int)RowSynchronizeOld.Synchronized)
                        {
                            atrybut.Stamp          = stamp;
                            atrybut.Synchronizacja = (int)RowSynchronizeOld.NotsynchronizedEdit;
                        }
                    }
                }
                Enova.Business.Old.DB.Web.GrupaAtrybutow grupa = gnode.GrupaAtrybutow;
                if (grupa.EntityState == System.Data.EntityState.Modified)
                {
                    if (grupa.Synchronizacja == (int)RowSynchronizeOld.Synchronized)
                    {
                        grupa.Stamp          = stamp;
                        grupa.Synchronizacja = (int)RowSynchronizeOld.NotsynchronizedEdit;
                    }
                }
            }

            foreach (AtrybutyTreeNode node in deletedNodes)
            {
                if (node.IsGroup)
                {
                    node.GrupaAtrybutow.Synchronizacja = (int)RowSynchronizeOld.NotsynchronizedDelete;
                    node.GrupaAtrybutow.Stamp          = stamp;
                    Enova.Business.Old.Core.ContextManager.WebContext.OptimisticSaveChanges();
                    Enova.Business.Old.Core.ContextManager.WebContext.Detach(node.GrupaAtrybutow);

                    foreach (AtrybutyTreeNode anode in node.Nodes)
                    {
                        anode.Atrybut.Synchronizacja = (int)RowSynchronizeOld.NotsynchronizedDelete;
                        anode.Atrybut.Stamp          = stamp;
                        Enova.Business.Old.Core.ContextManager.WebContext.OptimisticSaveChanges();
                        Enova.Business.Old.Core.ContextManager.WebContext.Detach(anode.Atrybut);
                    }
                }
                else
                {
                    node.Atrybut.Synchronizacja = (int)RowSynchronizeOld.NotsynchronizedDelete;
                    node.Atrybut.Stamp          = stamp;
                    Enova.Business.Old.Core.ContextManager.WebContext.OptimisticSaveChanges();
                    Enova.Business.Old.Core.ContextManager.WebContext.Detach(node.Atrybut);
                }
            }

            Enova.Business.Old.Core.ContextManager.WebContext.OptimisticSaveChanges();
        }