Пример #1
0
        private void addFromLast(_DropdownlistLinkedModel model, LinkedList<_DropdownlistLinkedNodeModel> linkedList, int projectId)
        {
            _DropdownlistLinkedNodeModel first = null;
            if (linkedList.Last == null)
            {
                first = new _DropdownlistLinkedNodeModel();
                linkedList.AddLast(first);
            }
            else
            {
                first = linkedList.First.Value;
            }

            first.CurrentProject = getProjectById(projectId);

            _DropdownlistLinkedNodeModel pre = getParent(projectId);
            if (pre != null)
            {
                linkedList.AddBefore(linkedList.First, pre);
                first.Projects = getFromParent(pre.CurrentProject.Id);

                addFromLast(model, linkedList, pre.CurrentProject.Id);
            }
            else
            {
                model.TailSelectedProject = getParentGroup(projectId);
                first.Projects = getFromGroup(model.TailSelectedProject.Id);
            }

        }
Пример #2
0
        public _DropdownlistLinkedNodeModel GetNextNode(int projectId)
        {
            _DropdownlistLinkedNodeModel model = new _DropdownlistLinkedNodeModel();

            Project project = session.Load<Project>(projectId);
            if (!project.Children.IsNullOrEmpty())
            {
                model.Projects = new List<LiteItemModel>();
                model.Projects.FilledBy(project.Children);
                model.CurrentProject = model.Projects[0];
            }

            return model;
        }
Пример #3
0
 private _DropdownlistLinkedNodeModel getFirstNode(IList<Project> rootProjects)
 {
     _DropdownlistLinkedNodeModel firstNode = new _DropdownlistLinkedNodeModel();
     firstNode.Projects = new List<LiteItemModel>();
     foreach (Project project in rootProjects)
     {
         LiteItemModel projectItemModel = new LiteItemModel();
         projectItemModel.FilledBy(project);
         firstNode.Projects.Add(projectItemModel);
     }
     firstNode.CurrentProject = firstNode.Projects.First();
     return firstNode;
 }
Пример #4
0
 public static void FilledByHead(this LinkedList<_DropdownlistLinkedNodeModel> models, Project head)
 {
     while (head.Children != null && head.Children.Count > 0)
     {
         _DropdownlistLinkedNodeModel lastModel = new _DropdownlistLinkedNodeModel();
         lastModel.Projects = new List<LiteItemModel>();
         lastModel.Projects.FilledBy(head.Children);
         lastModel.CurrentProject = lastModel.Projects.First();
         models.AddLast(lastModel);
         head = head.Children.First();
     }
 }
Пример #5
0
        public static void FilledByTail(this LinkedList<_DropdownlistLinkedNodeModel> models, Project tail)
        {
            while (tail.Parent != null)
            {
                _DropdownlistLinkedNodeModel nodeModel = new _DropdownlistLinkedNodeModel();
                nodeModel.filledBy(tail);
                models.AddFirst(nodeModel);
                tail = tail.Parent;
            }

            _DropdownlistLinkedNodeModel firstNode = new _DropdownlistLinkedNodeModel
            {
                CurrentProject = new LiteItemModel()
            };
            firstNode.CurrentProject.FilledBy(tail);
            models.AddFirst(firstNode);
        }
Пример #6
0
 public _DropdownlistLinkedNodeModel GetNextNode(int projectId)
 {
     _DropdownlistLinkedNodeModel model = new _DropdownlistLinkedNodeModel
     {
         CurrentProject = new LiteItemModel { Id = 8, Name = "DBA" },
         Projects = new List<LiteItemModel> 
         { 
             new LiteItemModel{ Id = 10, Name = "C#"},
             new LiteItemModel{ Id = 12, Name = "javascript"},
         }
     };
     return model;
 }
Пример #7
0
        public _DropdownlistLinkedModel GetDropdownlistLink(int userId)
        {
            LiteItemModel zyfei = new LiteItemModel { Id = 1, Name = "自由飞" };
            LiteItemModel sgkj = new LiteItemModel { Id = 2, Name = "首顾科技" };
            LiteItemModel baichuan = new LiteItemModel { Id = 3, Name = "百川开源" };
            _DropdownlistLinkedModel model = new _DropdownlistLinkedModel
            {
                LinkedProject = new LinkedList<_DropdownlistLinkedNodeModel>()
            };

            LiteItemModel chuangye = new LiteItemModel { Id = 21, Name = "创业" };
            LiteItemModel task = new LiteItemModel { Id = 22, Name = "任务管理" };
            LiteItemModel zhuangshi = new LiteItemModel { Id = 23, Name = "装饰点评" };
            model.LinkedProject = new LinkedList<_DropdownlistLinkedNodeModel>();
            _DropdownlistLinkedNodeModel first = new _DropdownlistLinkedNodeModel
            {
                CurrentProject = task,
                Projects = new List<LiteItemModel> { chuangye, task, zhuangshi }
            };
            model.LinkedProject.AddFirst(first);

            LiteItemModel front = new LiteItemModel { Id = 31, Name = "前台" };
            LiteItemModel backend = new LiteItemModel { Id = 32, Name = "后台" };
            LiteItemModel ui = new LiteItemModel { Id = 33, Name = "UI" };
            LiteItemModel SEO = new LiteItemModel { Id = 34, Name = "SEO" };
            LiteItemModel design = new LiteItemModel { Id = 35, Name = "设计" };
            LiteItemModel DBA = new LiteItemModel { Id = 36, Name = "DBA" };
            LiteItemModel Admin = new LiteItemModel { Id = 37, Name = "行政" };
            _DropdownlistLinkedNodeModel second = new _DropdownlistLinkedNodeModel
            {
                CurrentProject = front,
                Projects = new List<LiteItemModel> { front, backend, ui }
            };
            model.LinkedProject.AddAfter(model.LinkedProject.Last, second);

            LiteItemModel csharp_4 = new LiteItemModel { Id = 41, Name = "C#" };
            LiteItemModel DBA_4 = new LiteItemModel { Id = 42, Name = "DBA" };
            _DropdownlistLinkedNodeModel third = new _DropdownlistLinkedNodeModel
            {
                CurrentProject = csharp_4,
                Projects = new List<LiteItemModel> { csharp_4, DBA_4 }
            };
            model.LinkedProject.AddAfter(model.LinkedProject.Last, third);

            model.TailSelectedProject = csharp_4;

            model.SelectedProjectHasChild = true;

            return model;
        }
Пример #8
0
 private _DropdownlistLinkedNodeModel getParent(int projectId)
 {
     _DropdownlistLinkedNodeModel model = new _DropdownlistLinkedNodeModel();
     switch (projectId)
     {
         case 2:
         case 3:
         case 15:
             return null;
         case 5:
         case 7:
         case 9:
             model = new _DropdownlistLinkedNodeModel
             {
                 CurrentProject = new LiteItemModel { Id = 2, Name = "创业" }
             };
             break;
         case 11:
         case 12:
         case 14:
             model = new _DropdownlistLinkedNodeModel
             {
                 CurrentProject = new LiteItemModel { Id = 3, Name = "任务管理" }
             };
             break;
     }
     return model;
 }