59 lines
1.3 KiB
C#
59 lines
1.3 KiB
C#
using InnovEnergy.App.Backend.DataTypes;
|
|
using InnovEnergy.App.Backend.Relations;
|
|
|
|
|
|
namespace InnovEnergy.App.Backend.Database;
|
|
|
|
|
|
public static partial class Db
|
|
{
|
|
public static Folder? GetFolderById(Int64? id)
|
|
{
|
|
return Folders
|
|
.FirstOrDefault(f => f.Id == id);
|
|
}
|
|
|
|
public static Installation? GetInstallationById(Int64? id)
|
|
{
|
|
return Installations
|
|
.FirstOrDefault(i => i.Id == id);
|
|
}
|
|
|
|
public static UserAction? GetActionById(Int64? id)
|
|
{
|
|
return UserActions
|
|
.FirstOrDefault(i => i.Id == id);
|
|
}
|
|
|
|
public static User? GetUserById(Int64? id)
|
|
{
|
|
return Users
|
|
.FirstOrDefault(u => u.Id == id);
|
|
}
|
|
|
|
public static User? GetUserByEmail(String email)
|
|
{
|
|
return Users
|
|
.FirstOrDefault(u => u.Email == email);
|
|
}
|
|
|
|
public static Session? GetSession(String token)
|
|
{
|
|
var session = Sessions
|
|
.FirstOrDefault(s => s.Token == token);
|
|
|
|
// cannot use session.Valid in the DB query above.
|
|
// It does not exist in the db (IgnoreAttribute)
|
|
|
|
if (session is null)
|
|
return null;
|
|
|
|
if (!session.Valid)
|
|
{
|
|
Delete(session);
|
|
return null;
|
|
}
|
|
|
|
return session;
|
|
}
|
|
} |