public int countTotalWorkedDayInYear(int EmployeeID) { int count = 0; var item = _EmployeeProfileMethod.getEmplyeeWorkDate(EmployeeID); var workDay = _EmployeeProfileMethod.getEmployeeWrokDay(EmployeeID); CountAbsenceDay model = new CountAbsenceDay(); foreach (var data in workDay) { model.workDay = Convert.ToDateTime(data.Date); int year = data.Date.Value.Year; int month = data.Date.Value.Month; int StartDay = data.Date.Value.Day; DateTime EndOfMonth = new DateTime(year, month, DateTime.DaysInMonth(year, month)); int day = EndOfMonth.Day; int currurntYear = DateTime.Now.Year; if (currurntYear == year) { for (int i = 0; i < day; i++) { if (i == StartDay) { count++; } } } } return(count); }
public Double countAbsenceDay(int EmployeeId) { int count = 0; int workCount = 0; var item = _EmployeeProfileMethod.getEmplyeeWorkDate(EmployeeId); var workDay = _EmployeeProfileMethod.getEmployeeWrokDay(EmployeeId); Double absenceDay = 0; CountAbsenceDay model = new CountAbsenceDay(); DateTime startDate; int year = 0; int month = 0; int day = 0; Double diffOfDate = 0; if (item.Count > 0) { foreach (var data in item) { startDate = Convert.ToDateTime(data.StartDate); year = data.StartDate.Value.Year; month = data.StartDate.Value.Month; day = data.StartDate.Value.Day; count = countSunday(year, month, day); diffOfDate = DateTime.Today.Subtract(startDate).TotalDays + 1; } } foreach (var data in workDay) { model.workDay = Convert.ToDateTime(data.Date); workCount = workCount + countWorkDay(model.workDay.Day); } absenceDay = diffOfDate - Convert.ToDouble(count + workCount); return(absenceDay); }