Added the attendance persentage and task persentage

This commit is contained in:
ashutosh.nehete 2025-10-06 13:15:48 +05:30
parent c33afa58c3
commit 245182eb07
2 changed files with 6 additions and 2 deletions

View File

@ -7,13 +7,15 @@
public required string TimeStamp { get; set; } public required string TimeStamp { get; set; }
public int TodaysAttendances { get; set; } public int TodaysAttendances { get; set; }
public int TotalEmployees { get; set; } public int TotalEmployees { get; set; }
public double AttendancePercentage { get; set; }
public int RegularizationPending { get; set; } public int RegularizationPending { get; set; }
public int CheckoutPending { get; set; } public int CheckoutPending { get; set; }
public double TotalPlannedWork { get; set; } public double TotalPlannedWork { get; set; }
public double TotalCompletedWork { get; set; } public double TotalCompletedWork { get; set; }
public double CompletionStatus { get; set; }
public double TotalPlannedTask { get; set; } public double TotalPlannedTask { get; set; }
public double TotalCompletedTask { get; set; } public double TotalCompletedTask { get; set; }
public double CompletionStatus { get; set; } public double TaskPercentage { get; set; }
public int ReportPending { get; set; } public int ReportPending { get; set; }
public int TodaysAssignTasks { get; set; } public int TodaysAssignTasks { get; set; }
public List<TeamOnSite> TeamOnSite { get; set; } = new List<TeamOnSite>(); public List<TeamOnSite> TeamOnSite { get; set; } = new List<TeamOnSite>();

View File

@ -263,13 +263,15 @@ namespace Marco.Pms.Services.Helpers
// Fill report // Fill report
statisticReport.TodaysAttendances = checkedInEmployeeIds.Count; statisticReport.TodaysAttendances = checkedInEmployeeIds.Count;
statisticReport.TotalEmployees = assignedEmployeeIds.Count; statisticReport.TotalEmployees = assignedEmployeeIds.Count;
statisticReport.AttendancePercentage = checkedInEmployeeIds.Count > 0 ? (checkedInEmployeeIds.Count / assignedEmployeeIds.Count) * 100 : 0;
statisticReport.RegularizationPending = regularizationIds.Count; statisticReport.RegularizationPending = regularizationIds.Count;
statisticReport.CheckoutPending = checkoutPendingIds.Count; statisticReport.CheckoutPending = checkoutPendingIds.Count;
statisticReport.TotalPlannedWork = totalPlannedWork; statisticReport.TotalPlannedWork = totalPlannedWork;
statisticReport.TotalCompletedWork = totalCompletedWork; statisticReport.TotalCompletedWork = totalCompletedWork;
statisticReport.CompletionStatus = totalPlannedWork > 0 ? (totalCompletedWork / totalPlannedWork) * 100 : 0;
statisticReport.TotalPlannedTask = totalPlannedTask; statisticReport.TotalPlannedTask = totalPlannedTask;
statisticReport.TotalCompletedTask = totalCompletedTask; statisticReport.TotalCompletedTask = totalCompletedTask;
statisticReport.CompletionStatus = totalPlannedWork > 0 ? totalCompletedWork / totalPlannedWork : 0; statisticReport.AttendancePercentage = totalCompletedTask > 0 ? (totalCompletedTask / totalPlannedTask) * 100 : 0;
statisticReport.TodaysAssignTasks = todayAssignedTasks.Count; statisticReport.TodaysAssignTasks = todayAssignedTasks.Count;
statisticReport.ReportPending = reportPending.Count; statisticReport.ReportPending = reportPending.Count;
statisticReport.TeamOnSite = teamOnSite; statisticReport.TeamOnSite = teamOnSite;