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

Commit 7d7381c

Browse files
committed
Experiment with models
1 parent a953422 commit 7d7381c

2 files changed

Lines changed: 86 additions & 3 deletions

File tree

src/Atles.Domain.Models/Atles.Domain.Models.xml

Lines changed: 21 additions & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/Atles.Domain.Models/UserRank.cs

Lines changed: 65 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,23 +4,86 @@
44
namespace Atles.Domain.Models;
55

66
/// <summary>
7-
/// User Rank
7+
/// UserRank
88
/// </summary>
99
public class UserRank
1010
{
1111
public Guid Id { get; private set; }
1212
public string Name { get; private set; }
1313
public int Order { get; private set; }
1414
public string Badge { get; private set; }
15+
public string Role { get; private set; }
1516

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

19-
public UserRank(string name, int order, string badge = null)
20+
public UserRank(string name, int order, string badge, string role)
2021
{
2122
Id = Guid.NewGuid();
2223
Name = name;
2324
Order = order;
2425
Badge = badge;
26+
Role = role;
2527
}
28+
}
29+
30+
public class UserBadge
31+
{
32+
public Guid Id { get; private set; }
33+
public string Name { get; private set; }
34+
public int SortOrder { get; private set; }
35+
public string Image { get; private set; }
36+
public string Role { get; private set; }
37+
38+
public IReadOnlyCollection<UserLevel> UserLevels => _UserLevels;
39+
private readonly List<UserLevel> _UserLevels = new();
40+
41+
public UserBadge(string name, int sortOrder, string image, string role)
42+
{
43+
Id = Guid.NewGuid();
44+
Name = name;
45+
SortOrder = sortOrder;
46+
Image = image;
47+
Role = role;
48+
}
49+
}
50+
51+
public class UserBadge2
52+
{
53+
public Guid UserBadgeId { get; private set; }
54+
public UserBadgeType Type { get; private set; }
55+
public int Count { get; private set; }
56+
public string Image { get; private set; }
57+
58+
public virtual UserBadge UserBadge { get; set; }
59+
60+
public UserBadge2(UserBadgeType type, int count, string image = null)
61+
{
62+
Type = type;
63+
Count = count;
64+
Image = image;
65+
}
66+
}
67+
68+
public enum UserBadgeType
69+
{
70+
/// <summary>
71+
/// Number of total posts (topics and replies).
72+
/// </summary>
73+
Posts = 1,
74+
75+
/// <summary>
76+
/// Number of topics.
77+
/// </summary>
78+
Topics = 2,
79+
80+
/// <summary>
81+
/// Number of replies.
82+
/// </summary>
83+
Replies = 3,
84+
85+
/// <summary>
86+
/// Number of accepted answers.
87+
/// </summary>
88+
Answers = 4
2689
}

0 commit comments

Comments
 (0)