Example #1
0
        private void buildTreeviewMenu(OrgTreeData treeItem, IEnumerable <TreeData> lstTreeData)
        {
            IEnumerable <OrgTreeData> _treeItems;

            _treeItems = lstTreeData.Where(item => item.UnderID == treeItem.UserID).Select(x =>
                                                                                           new OrgTreeData
            {
                name        = x.UserName,
                UserID      = x.UserID,
                styleClass  = setColor(x.Level),
                Level       = x.Level,
                FirstName   = x.FirstName,
                LastName    = x.LastName,
                UserName    = x.UserName,
                PhoneNumber = x.PhoneNumber,
                DcID        = x.DcID
            });

            if (_treeItems != null && _treeItems.Count() > 0)
            {
                List <OrgTreeData> items = new List <OrgTreeData>();
                foreach (var item in _treeItems)
                {
                    treeItem.children.Add(item);
                    buildTreeviewMenu(item, lstTreeData);
                }
            }
        }
Example #2
0
        public OrgTreeData OrgTreeData(Guid?groupId = null)
        {
            var orgGroups = groupId.HasValue
                ? _orgGroupRepository.GetByIdWithChildren(groupId.Value)
                : _orgGroupRepository.OrgGroups;

            var jobs = from job in _jobRepository.Job
                       from orgGroup in orgGroups.InnerJoin(g => g.Id == job.OrgGroupId)
                       select job;
            var data = new OrgTreeData
            {
                Groups = (from orgGroup in _orgGroupRepository.OrgGroupsWithSupervisor
                          where orgGroup.Id.In(orgGroups.Select(g => g.Id))
                          select orgGroup).ToList(),
                Jobs  = jobs.ToList(),
                Roles = (from role in _jobRepository.PersonRolesExtended
                         from job in jobs.InnerJoin(job => job.Id == role.JobId)
                         select role).ToList()
            };

            return(data);
        }