private async Task <IList <EmployeeQueryDto> > GetEmpOrgNames(List <string> employeeIds) { var empOrgs = await _relationOrganizationEmployeeAppService.GetOrgIdsByEmployeeIds(employeeIds); var groupEmpOrgs = empOrgs.GroupBy(o => o.EmployeeId) .Select(o => new EmployeeQueryDto { Id = o.Key, OrganizationIds = o.Select(og => og.OrganizationId).ToList() }).ToList(); var orgIds = empOrgs.Select(o => o.OrganizationId).ToList(); var orgNames = await _organizationAppService.GetOrganizationNameByIds(orgIds); foreach (var item in groupEmpOrgs) { var orgs = orgNames.Where(n => item.OrganizationIds.Contains(n.Id)).Select(n => n.Name); item.Department = string.Join(";", orgs); } return(groupEmpOrgs.ToList()); }