Add project files.
This commit is contained in:
40
Database/Entities/Puzzle.cs
Normal file
40
Database/Entities/Puzzle.cs
Normal file
@@ -0,0 +1,40 @@
|
||||
namespace ConnectionsAPI.Database.Entities
|
||||
{
|
||||
public class Puzzle
|
||||
{
|
||||
/// <summary>
|
||||
/// Primary key of the entity
|
||||
/// </summary>
|
||||
public int Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// When the entity was created (is the sync date)
|
||||
/// </summary>
|
||||
public DateTime CreatedDate { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// When the puzzle was "printed" online
|
||||
/// </summary>
|
||||
public string PrintDate { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// The name of the editor for the puzzle
|
||||
/// </summary>
|
||||
public string EditorName { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// The actual count of the puzzle
|
||||
/// </summary>
|
||||
public int Index { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// The MD5 hash for the source content used to sync this puzzle
|
||||
/// </summary>
|
||||
public string ContentMD5 { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// The categories associated with this puzzle
|
||||
/// </summary>
|
||||
public virtual ICollection<PuzzleCategory> Categories { get; set; } = [];
|
||||
}
|
||||
}
|
||||
30
Database/Entities/PuzzleCard.cs
Normal file
30
Database/Entities/PuzzleCard.cs
Normal file
@@ -0,0 +1,30 @@
|
||||
namespace ConnectionsAPI.Database.Entities
|
||||
{
|
||||
public class PuzzleCard
|
||||
{
|
||||
/// <summary>
|
||||
/// Primary key of the entity
|
||||
/// </summary>
|
||||
public int Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// The contents of this card (the word)
|
||||
/// </summary>
|
||||
public string Content { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// The initial position of this card on the grid
|
||||
/// </summary>
|
||||
public int Position { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// The ID of the associated Connections category
|
||||
/// </summary>
|
||||
public int PuzzleCategoryId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// The associated category instance
|
||||
/// </summary>
|
||||
public virtual PuzzleCategory? PuzzleCategory { get; set; }
|
||||
}
|
||||
}
|
||||
35
Database/Entities/PuzzleCategory.cs
Normal file
35
Database/Entities/PuzzleCategory.cs
Normal file
@@ -0,0 +1,35 @@
|
||||
namespace ConnectionsAPI.Database.Entities
|
||||
{
|
||||
public class PuzzleCategory
|
||||
{
|
||||
/// <summary>
|
||||
/// Primary key of the entity
|
||||
/// </summary>
|
||||
public int Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// The name of the category in this Connections puzzle
|
||||
/// </summary>
|
||||
public string Name { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// The color of the category in this Connections puzzle; Also used for sorting
|
||||
/// </summary>
|
||||
public PuzzleCategoryColor Color { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// The ID of the associated Connections puzzle
|
||||
/// </summary>
|
||||
public int PuzzleId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// The associated puzzle instance
|
||||
/// </summary>
|
||||
public virtual Puzzle? Puzzle { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// The cards associated with this category
|
||||
/// </summary>
|
||||
public ICollection<PuzzleCard> PuzzleCards { get; set; } = [];
|
||||
}
|
||||
}
|
||||
10
Database/Entities/PuzzleCategoryColor.cs
Normal file
10
Database/Entities/PuzzleCategoryColor.cs
Normal file
@@ -0,0 +1,10 @@
|
||||
namespace ConnectionsAPI.Database.Entities
|
||||
{
|
||||
public enum PuzzleCategoryColor
|
||||
{
|
||||
Yellow = 1,
|
||||
Green = 2,
|
||||
Blue = 3,
|
||||
Purple = 4,
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user