initial commit
All checks were successful
Build docker container / build (push) Successful in 5m4s

This commit is contained in:
David Claeys
2024-05-10 16:06:42 +02:00
parent e127afdb26
commit 8d198d46e0
18 changed files with 1022 additions and 1 deletions

View File

@ -0,0 +1,26 @@
using SQLite;
using System.IO;
using TelebilbaoEpg.Database.Models;
namespace TelebilbaoEpg.Database.Repository
{
public abstract class BaseRepository
{
protected SQLiteConnection _db;
public BaseRepository()
{
var storeFile = "/data/telebilbaoEpg.db";
#if DEBUG
storeFile = storeFile.Replace("/data/", "");
#endif
// Get an absolute path to the database file
var databasePath = Path.Combine(Directory.GetCurrentDirectory(), storeFile);
_db = new SQLiteConnection(databasePath);
_db.CreateTable<BroadCast>();
}
}
}

View File

@ -0,0 +1,33 @@
using System;
using System.Collections.Generic;
using System.Linq;
using TelebilbaoEpg.Database.Models;
namespace TelebilbaoEpg.Database.Repository
{
public class BroadCastRepository : BaseRepository, IBroadCastRepository
{
public void Add(BroadCast broadCast)
{
_db.Insert(broadCast);
}
public List<BroadCast> GetBroadCasts(DateOnly day)
{
return _db.Table<BroadCast>()
.ToList()
.Where(b => DateOnly.FromDateTime(b.From.Date) == day || DateOnly.FromDateTime(b.To) == day)
.OrderBy(b => b.From)
.ToList();
}
public List<BroadCast> GetBroadCasts(DateOnly from, DateOnly to)
{
return _db.Table<BroadCast>()
.ToList()
.Where(b => (DateOnly.FromDateTime(b.From) >= from || DateOnly.FromDateTime(b.To) >= from) && (DateOnly.FromDateTime(b.From) <= to || DateOnly.FromDateTime(b.To) <= to))
.OrderBy(b => b.From)
.ToList();
}
}
}

View File

@ -0,0 +1,15 @@
using System;
using System.Collections.Generic;
using TelebilbaoEpg.Database.Models;
namespace TelebilbaoEpg.Database.Repository
{
public interface IBroadCastRepository
{
List<BroadCast> GetBroadCasts(DateOnly day);
List<BroadCast> GetBroadCasts(DateOnly from, DateOnly to);
void Add(BroadCast broadCast);
}
}