diff --git a/Marco.Pms.Services/Controllers/EmployeeController.cs b/Marco.Pms.Services/Controllers/EmployeeController.cs index 628fa59..1702dc8 100644 --- a/Marco.Pms.Services/Controllers/EmployeeController.cs +++ b/Marco.Pms.Services/Controllers/EmployeeController.cs @@ -148,12 +148,13 @@ namespace MarcoBMS.Services.Controllers .Distinct() .ToListAsync(); - result = await _context.Employees - .Include(fp => fp.JobRole) - .Where(e => employeeIds.Contains(e.Id) && e.IsActive && e.TenantId == tenantId) - .Select(e => e.ToEmployeeVMFromEmployee()) - .Distinct() - .ToListAsync(); + var employees = await _context.Employees + .Include(fp => fp.JobRole) + .Where(e => employeeIds.Contains(e.Id) && e.JobRole != null && e.IsActive && e.TenantId == tenantId) + .Distinct() + .ToListAsync(); + + result = employees.Select(e => e.ToEmployeeVMFromEmployee()).ToList(); _logger.LogInfo("Employee list fetched using limited access (active only)."); } diff --git a/Marco.Pms.Services/Helpers/EmployeeHelper.cs b/Marco.Pms.Services/Helpers/EmployeeHelper.cs index edda815..6187628 100644 --- a/Marco.Pms.Services/Helpers/EmployeeHelper.cs +++ b/Marco.Pms.Services/Helpers/EmployeeHelper.cs @@ -85,12 +85,12 @@ namespace MarcoBMS.Services.Helpers .Distinct() .ToListAsync(); - result = await _context.Employees + var employees = await _context.Employees .Include(fp => fp.JobRole) - .Where(e => employeeIds.Contains(e.Id) && e.IsActive && e.TenantId == tenantId) - .Select(e => e.ToEmployeeVMFromEmployee()) + .Where(e => employeeIds.Contains(e.Id) && e.JobRole != null && e.IsActive && e.TenantId == tenantId) .Distinct() .ToListAsync(); + result = employees.Select(e => e.ToEmployeeVMFromEmployee()).ToList(); } else if (ShowInActive)