Skip to content
This repository has been archived by the owner on Apr 14, 2023. It is now read-only.

Commit

Permalink
Experiment with models
Browse files Browse the repository at this point in the history
  • Loading branch information
lucabriguglia committed Feb 11, 2022
1 parent a953422 commit 7d7381c
Show file tree
Hide file tree
Showing 2 changed files with 86 additions and 3 deletions.
22 changes: 21 additions & 1 deletion src/Atles.Domain.Models/Atles.Domain.Models.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

67 changes: 65 additions & 2 deletions src/Atles.Domain.Models/UserRank.cs
Original file line number Diff line number Diff line change
Expand Up @@ -4,23 +4,86 @@
namespace Atles.Domain.Models;

/// <summary>
/// User Rank
/// UserRank
/// </summary>
public class UserRank
{
public Guid Id { get; private set; }
public string Name { get; private set; }
public int Order { get; private set; }
public string Badge { get; private set; }
public string Role { get; private set; }

public IReadOnlyCollection<UserLevel> UserLevels => _UserLevels;
private readonly List<UserLevel> _UserLevels = new();

public UserRank(string name, int order, string badge = null)
public UserRank(string name, int order, string badge, string role)
{
Id = Guid.NewGuid();
Name = name;
Order = order;
Badge = badge;
Role = role;
}
}

public class UserBadge
{
public Guid Id { get; private set; }
public string Name { get; private set; }
public int SortOrder { get; private set; }
public string Image { get; private set; }
public string Role { get; private set; }

public IReadOnlyCollection<UserLevel> UserLevels => _UserLevels;
private readonly List<UserLevel> _UserLevels = new();

public UserBadge(string name, int sortOrder, string image, string role)
{
Id = Guid.NewGuid();
Name = name;
SortOrder = sortOrder;
Image = image;
Role = role;
}
}

public class UserBadge2
{
public Guid UserBadgeId { get; private set; }
public UserBadgeType Type { get; private set; }
public int Count { get; private set; }
public string Image { get; private set; }

public virtual UserBadge UserBadge { get; set; }

public UserBadge2(UserBadgeType type, int count, string image = null)
{
Type = type;
Count = count;
Image = image;
}
}

public enum UserBadgeType
{
/// <summary>
/// Number of total posts (topics and replies).
/// </summary>
Posts = 1,

/// <summary>
/// Number of topics.
/// </summary>
Topics = 2,

/// <summary>
/// Number of replies.
/// </summary>
Replies = 3,

/// <summary>
/// Number of accepted answers.
/// </summary>
Answers = 4
}

0 comments on commit 7d7381c

Please sign in to comment.