getting the employee list filtered by tenant
This commit is contained in:
parent
73318060ec
commit
aa2a370467
@ -143,14 +143,14 @@ namespace MarcoBMS.Services.Controllers
|
|||||||
else if (hasViewTeamMembersPermission && !ShowInactive)
|
else if (hasViewTeamMembersPermission && !ShowInactive)
|
||||||
{
|
{
|
||||||
var employeeIds = await _context.ProjectAllocations
|
var employeeIds = await _context.ProjectAllocations
|
||||||
.Where(pa => projectIds.Contains(pa.ProjectId) && pa.IsActive)
|
.Where(pa => projectIds.Contains(pa.ProjectId) && pa.IsActive && pa.TenantId == tenantId)
|
||||||
.Select(pa => pa.EmployeeId)
|
.Select(pa => pa.EmployeeId)
|
||||||
.Distinct()
|
.Distinct()
|
||||||
.ToListAsync();
|
.ToListAsync();
|
||||||
|
|
||||||
result = await _context.Employees
|
result = await _context.Employees
|
||||||
.Include(fp => fp.JobRole)
|
.Include(fp => fp.JobRole)
|
||||||
.Where(e => employeeIds.Contains(e.Id) && e.IsActive)
|
.Where(e => employeeIds.Contains(e.Id) && e.IsActive && e.TenantId == tenantId)
|
||||||
.Select(e => e.ToEmployeeVMFromEmployee())
|
.Select(e => e.ToEmployeeVMFromEmployee())
|
||||||
.Distinct()
|
.Distinct()
|
||||||
.ToListAsync();
|
.ToListAsync();
|
||||||
|
@ -71,31 +71,30 @@ namespace MarcoBMS.Services.Helpers
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public async Task<List<EmployeeVM>> GetEmployeeByProjectId(Guid TenentId, Guid? ProjectId, bool ShowInActive)
|
public async Task<List<EmployeeVM>> GetEmployeeByProjectId(Guid tenantId, Guid? projectId, bool ShowInActive)
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
List<EmployeeVM> result = new List<EmployeeVM>();
|
List<EmployeeVM> result = new List<EmployeeVM>();
|
||||||
if (ProjectId.HasValue)
|
if (projectId.HasValue)
|
||||||
{
|
{
|
||||||
|
|
||||||
result = await _context.ProjectAllocations
|
result = await _context.ProjectAllocations
|
||||||
.Include(pa => pa.Employee)
|
.Include(pa => pa.Employee)
|
||||||
.ThenInclude(e => e!.JobRole)
|
.ThenInclude(e => e!.JobRole)
|
||||||
.Where(c => c.ProjectId == ProjectId.Value && c.IsActive && c.Employee != null)
|
.Where(pa => pa.ProjectId == projectId.Value && pa.IsActive && pa.Employee != null && pa.TenantId == tenantId)
|
||||||
.Select(pa => pa.Employee!.ToEmployeeVMFromEmployee())
|
.Select(pa => pa.Employee!.ToEmployeeVMFromEmployee())
|
||||||
.Distinct()
|
|
||||||
.ToListAsync();
|
.ToListAsync();
|
||||||
|
|
||||||
}
|
}
|
||||||
else if (ShowInActive)
|
else if (ShowInActive)
|
||||||
{
|
{
|
||||||
result = await _context.Employees.Where(c => c.TenantId == TenentId && c.IsActive == false).Include(fp => fp.JobRole)
|
result = await _context.Employees.Where(c => c.TenantId == tenantId && c.IsActive == false).Include(fp => fp.JobRole)
|
||||||
.Select(c => c.ToEmployeeVMFromEmployee()).ToListAsync();
|
.Select(c => c.ToEmployeeVMFromEmployee()).ToListAsync();
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
result = await _context.Employees.Where(c => c.TenantId == TenentId && c.IsActive == true).Include(fp => fp.JobRole)
|
result = await _context.Employees.Where(c => c.TenantId == tenantId && c.IsActive == true).Include(fp => fp.JobRole)
|
||||||
.Select(c => c.ToEmployeeVMFromEmployee()).ToListAsync();
|
.Select(c => c.ToEmployeeVMFromEmployee()).ToListAsync();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -103,7 +102,7 @@ namespace MarcoBMS.Services.Helpers
|
|||||||
}
|
}
|
||||||
catch (Exception ex)
|
catch (Exception ex)
|
||||||
{
|
{
|
||||||
_logger.LogError(ex, "Error occured while featching list of employee by project ID {ProjectId}", ProjectId ?? Guid.Empty);
|
_logger.LogError(ex, "Error occured while featching list of employee by project ID {ProjectId}", projectId ?? Guid.Empty);
|
||||||
return new List<EmployeeVM>();
|
return new List<EmployeeVM>();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user