Exemplo n.º 1
0
 public List <PersonWithStaffSummaries> GetStaffSummariesForOrgGroup(Guid orgGroupId)
 {
     return((from person in _personRepository.PeopleWithStaffSummaries
             from orgGroup in _orgGroupRepository.GetByIdWithChildren(orgGroupId).InnerJoin(org => org.Id == person.Staff.OrgGroupId)
             where person.StaffId != null
             orderby person.PreferredName ?? person.FirstName, person.LastName
             select person).ToList());
 }
Exemplo n.º 2
0
 public IQueryable <PersonWithStaff> PeopleWithStaffUnderGroup(Guid orgGroupId)
 {
     return((from person in _personRepository.PeopleWithStaff
             from org in _orgGroupRepository.GetByIdWithChildren(orgGroupId)
             .InnerJoin(orgGroup => orgGroup.Id == person.Staff.OrgGroupId)
             select person).OrderBy(_ => _.PreferredName ?? _.FirstName).ThenBy(_ => _.LastName));
 }
Exemplo n.º 3
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);
        }