private async Task <List <int> > FetchNextJobForChannel(AufbereitungsArtEnum aufbereitungsArt, int channel, int anzahlJobs, int[] idsToExclude)
        {
            var nextJobs = new List <int>();
            // Spezialfall: Im Normalfall sollten die Kategorien fortlaufend nummeriert sein. Aber es gibt den Fall für Kanal 4
            // der definiert dass Prioritäten zuerst 6-9 verarbeitet werden sollen, und wenn es dann nichts mehr hat die Prioritäten 1-5
            // Daher müssen wir die Kategorien anschauen und prüfen ob es einen "Bruch" gibt. Wenn ja, dann müssen wir ggf. 2 Db Abfragen
            // machen.
            var kategorienRanges = KategorieRangesPerChannel[channel];

            foreach (var kategorienRange in kategorienRanges)
            {
                nextJobs.AddRange(await primaerdatenDb.GetNextJobsForChannel(aufbereitungsArt, kategorienRange.ToArray(), anzahlJobs, idsToExclude));
                if (nextJobs.Count >= anzahlJobs)
                // Liefere die Jobs zurück, aber maximal soviele wie verlangt wurden.
                {
                    return(nextJobs.GetRange(0, anzahlJobs));
                }
            }

            return(nextJobs);
        }