Showing the list of all attendance even if user have selfattendance permissons
This commit is contained in:
parent
d180d5d60e
commit
c47b0da7b8
@ -856,10 +856,10 @@ namespace MarcoBMS.Services.Controllers
|
|||||||
lstAttendanceQuery = lstAttendanceQuery.Where(a => a.ProjectID == projectId);
|
lstAttendanceQuery = lstAttendanceQuery.Where(a => a.ProjectID == projectId);
|
||||||
}
|
}
|
||||||
|
|
||||||
Attendance lstAttendance = await lstAttendanceQuery.FirstOrDefaultAsync() ?? new Attendance();
|
List<Attendance> lstAttendances = await lstAttendanceQuery.ToListAsync() ?? new List<Attendance>();
|
||||||
|
|
||||||
var project = await _context.Projects.FirstOrDefaultAsync(p => p.Id == lstAttendance.ProjectID && p.TenantId == tenantId);
|
|
||||||
|
|
||||||
|
var projectIds = lstAttendances.Select(a => a.ProjectID).ToList();
|
||||||
|
var projects = await _context.Projects.Where(p => projectIds.Contains(p.Id) && p.TenantId == tenantId).ToListAsync();
|
||||||
|
|
||||||
var employee = await _context.Employees
|
var employee = await _context.Employees
|
||||||
.Include(e => e.Organization)
|
.Include(e => e.Organization)
|
||||||
@ -867,6 +867,8 @@ namespace MarcoBMS.Services.Controllers
|
|||||||
.FirstOrDefaultAsync(e => e.Id == employeeId && e.IsActive);
|
.FirstOrDefaultAsync(e => e.Id == employeeId && e.IsActive);
|
||||||
|
|
||||||
if (employee != null && employee.JobRole != null && employee.Organization != null)
|
if (employee != null && employee.JobRole != null && employee.Organization != null)
|
||||||
|
{
|
||||||
|
foreach (var lstAttendance in lstAttendances)
|
||||||
{
|
{
|
||||||
EmployeeAttendanceVM result1 = new EmployeeAttendanceVM
|
EmployeeAttendanceVM result1 = new EmployeeAttendanceVM
|
||||||
{
|
{
|
||||||
@ -875,7 +877,7 @@ namespace MarcoBMS.Services.Controllers
|
|||||||
EmployeeId = employee.Id,
|
EmployeeId = employee.Id,
|
||||||
FirstName = employee.FirstName,
|
FirstName = employee.FirstName,
|
||||||
OrganizationName = employee.Organization.Name,
|
OrganizationName = employee.Organization.Name,
|
||||||
ProjectName = project?.Name,
|
ProjectName = projects.Where(p => p.Id == lstAttendance.ProjectID).Select(p => p.Name).FirstOrDefault(),
|
||||||
LastName = employee.LastName,
|
LastName = employee.LastName,
|
||||||
JobRoleName = employee.JobRole.Name,
|
JobRoleName = employee.JobRole.Name,
|
||||||
CheckInTime = lstAttendance.InTime,
|
CheckInTime = lstAttendance.InTime,
|
||||||
@ -884,6 +886,7 @@ namespace MarcoBMS.Services.Controllers
|
|||||||
};
|
};
|
||||||
result.Add(result1);
|
result.Add(result1);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user