public async Task <List <Screening> > NewScreening(string givenId, string givenComment) { var listOfScreenings = await GetAllScreeningsById(givenId); if (listOfScreenings.Count == 6) { return(listOfScreenings); } else if (listOfScreenings.Count != 0) { Screening lastScreening = listOfScreenings.FirstOrDefault(screening => screening.Status == true); if (lastScreening == null) { return(null); } var newScreening = lastScreening.CreateNextScreening(Guid.Parse(givenId), givenComment); await FinalizeJobApplicationOnLastScreeningStep(givenId, newScreening); await SaveScreeningToRepo(listOfScreenings, newScreening); } else { var newScreening = new CV_Screening(givenComment, Guid.Parse(givenId)); await SaveScreeningToRepo(listOfScreenings, newScreening); } return(listOfScreenings); }