public async Task <List <TotalsForChartModel> > TotalHoursForCharts(int year) { var totalHoursList = new List <TotalsForChartModel>(); for (int i = 1; i < 13; i++) { var totalsModel = new TotalsForChartModel { Month = MonthConverter.ConvertIntToMonth(i) }; totalHoursList.Add(totalsModel); } foreach (var model in totalHoursList) { var month = MonthConverter.ConvertIntToMaand(MonthConverter.ConvertMonthToInt(model.Month)); var entities = await context.DeclarationForms.Where(d => d.Month == month && d.Year == year).ToListAsync(); foreach (var entity in entities) { model.TotalHoliday += entity.TotalHoliday; model.TotalOther += entity.TotalOther; model.TotalOvertime += entity.TotalOvertime; model.TotalSickness += entity.TotalSickness; model.TotalTraining += entity.TotalTraining; model.TotalVacation += entity.TotalVacation; model.TotalWorkedHours += entity.TotalWorkedHours; } ; } return(totalHoursList); }
public async Task AddHourRows(int year, string month, int declarationFormId) { var entity = await context.HourRows.FirstOrDefaultAsync(h => h.DeclarationFormId == declarationFormId); // als er uberhaupt iets in de hourrows van het declaratieform staat maakt het niks meer aan. Kan dus voor bugs zorgen. if (entity == null) { var monthInt = MonthConverter.ConvertMonthToInt(month); month = MonthConverter.ConvertIntToMonth(monthInt); int days = DateTime.DaysInMonth(year, monthInt); for (var i = 1; i <= days; i++) { HourRow hourRow = new HourRow { Date = Convert.ToString(i) + "/" + Convert.ToString(month) + "/" + Convert.ToString(year), Worked = 0, Overtime = 0, Sickness = 0, Vacation = 0, Holiday = 0, Training = 0, Other = 0, OtherExplanation = "", DeclarationFormId = declarationFormId }; context.HourRows.Add(hourRow); await context.SaveChangesAsync(); } } }
public async Task <List <DeclarationFormModel> > GetAllFormsOfMonth(int month) { var monthString = MonthConverter.ConvertIntToMonth(month); var entities = await context.DeclarationForms.Include(df => df.HourRows).Where(d => d.Month == monthString).ToListAsync(); var forms = await GetFormModelsFromEntities(entities); return(forms); }