public async Task <IActionResult> LogBulkTimes([FromBody] BulkLogTimesRequest request) { if (request == null) { return(new JsonResult(new { message = "Invalid request" })); } if (request.FromDateTime < request.ToDateTime) { await _timeLoggerService.BulkLogTimes(request); } return(Ok()); }
public async Task <IActionResult> LogBulkTimes(BulkLogTimesRequest request) { IServiceProvider provider = TestServiceProvider.CreateProvider( services => _setup(services)); using IServiceScope scope = provider.CreateScope(); var result = await scope.ServiceProvider .GetRequiredService <TimesheetController>() .LogBulkTimes(request); TimeLoggerContext dbContext = scope.ServiceProvider.GetRequiredService <TimeLoggerContext>(); Timesheets.AddRange(dbContext.TimeSheets); return(result); }
public async Task BulkLogTimes(BulkLogTimesRequest request) { foreach (DateTime day in EachDay(request.FromDateTime, request.ToDateTime)) { await LogInTime(new LogTimeRequest { LogTime = new DateTime(day.Year, day.Month, day.Day, 9, 0, 0), OverrideHolidays = request.OverrideHolidays }); await LogOutTime(new LogTimeRequest { LogTime = new DateTime(day.Year, day.Month, day.Day, 17, 0, 0), OverrideHolidays = request.OverrideHolidays }); } }