Add remaining project files
This commit is contained in:
@@ -0,0 +1,52 @@
|
||||
using LiteDB;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using System.Drawing;
|
||||
using static DeluxeBackend.Enums;
|
||||
|
||||
namespace DeluxeBackend.Models
|
||||
{
|
||||
public class CustomAvatarItem
|
||||
{
|
||||
[BsonId]
|
||||
public Guid Id { get; set; }
|
||||
[BsonRef("accounts")]
|
||||
public required Account Creator { get; set; }
|
||||
public required string Name { get; set; }
|
||||
public string Description { get; set; } = string.Empty;
|
||||
public required int Price { get; set; }
|
||||
public bool IsFeatured { get; set; } = false;
|
||||
public int? BaseAvatarItemId { get; set; }
|
||||
public required Color BaseAvatarItemColor { get; set; }
|
||||
public required string DesignFilename { get; set; }
|
||||
public required string ThumbnailImageFilename { get; set; }
|
||||
public DateTime CreatedAt { get; set; } = DateTime.UtcNow;
|
||||
public DateTime ModifiedAt { get; set; } = DateTime.UtcNow;
|
||||
public RoomAccessibility Accessibility { get; set; } = RoomAccessibility.Public;//i love how i just use RoomAccessibility for any accessibility
|
||||
public required PreviewOrientationType PreviewOrientation { get; set; }
|
||||
|
||||
[BsonIgnore]
|
||||
public Dictionary<string, object> ToDictionary()
|
||||
{
|
||||
Dictionary<string, object> data= new()
|
||||
{
|
||||
["CustomAvatarItemId"] = Id.ToString(),
|
||||
["CreatorAccountId"] = Creator.Id,
|
||||
["Name"] = Name,
|
||||
["Description"] = Description ?? "",
|
||||
["Price"] = Price,
|
||||
["Accessibility"] = (int)Accessibility,
|
||||
["IsFeatured"] = IsFeatured,
|
||||
["BaseAvatarItemColor"] = $"{ColorTranslator.ToHtml(BaseAvatarItemColor)}",
|
||||
["DesignFilename"] = DesignFilename,
|
||||
["ThumbnailImageFilename"] = ThumbnailImageFilename,
|
||||
["CreatedAt"] = CreatedAt.ToString("O"),
|
||||
["ModifiedAt"] = ModifiedAt.ToString("O"),
|
||||
};
|
||||
if (BaseAvatarItemId.HasValue)
|
||||
{
|
||||
data["BaseAvatarItemId"] = BaseAvatarItemId.Value;
|
||||
}
|
||||
return data;
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user