Blacker.MangaScraper.Library.DAL.StorageDAL.GetRecentlyDownloadedMangas C# (CSharp) Method

GetRecentlyDownloadedMangas() public method

public GetRecentlyDownloadedMangas ( System.DateTime downloadedAfter ) : IEnumerable
downloadedAfter System.DateTime
return IEnumerable
        public IEnumerable<IMangaRecord> GetRecentlyDownloadedMangas(DateTime downloadedAfter)
        {
            const string sql = @"SELECT
                                    m.ScraperId,
                                    m.MangaId,
                                    m.MangaName,
                                    m.Url
                                FROM Mangas m
                                INNER JOIN Chapters ch
                                    ON m.ScraperId = ch.ScraperId AND m.MangaId = ch.MangaId
                                WHERE ch.Downloaded > @DownloadedAfter
                                GROUP BY m.ScraperId, m.MangaId, m.MangaName, m.Url, strftime('%y-%m', ch.Downloaded)
                                ORDER BY strftime('%y-%m', ch.Downloaded) DESC, COUNT(ch.ChapterId) DESC";

            using (var connection = GetConnection())
            using (var command = GetTextCommand(sql))
            {
                command.Parameters.AddWithValue("@DownloadedAfter", GetDBSafeDateTime(downloadedAfter));

                var table = ExecuteDataTable(command, connection);

                return (from DataRow row in table.Rows
                        select new MangaRecord()
                                   {
                                       MangaId = Convert.ToString(row["MangaId"]),
                                       MangaName = Convert.ToString(row["MangaName"]),
                                       Scraper = (Guid) row["ScraperId"],
                                       Url = row["Url"] as string
                                   }
                       ).ToList();
            }
        }