| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465 |
- using System.ComponentModel.DataAnnotations;
- using System.ComponentModel.DataAnnotations.Schema;
- namespace Domain.Entities.Members
- {
- public class MemberStats
- {
- [ForeignKey(nameof(MemberID))]
- public virtual Member Member { get; private set; } = null!;
- public byte[] RowVersion { get; set; } = Array.Empty<byte>();
- [Key]
- public int MemberID { get; set; }
- public long Exp { get; set; } = 0;
- public long PostCount { get; set; } = 0;
- public long CommentCount { get; set; } = 0;
- public long LikeReceivedCount { get; set; } = 0;
- public long LikeGivenCount { get; set; } = 0;
- public long ReportedCount { get; set; } = 0;
- public long BookmarkGivenCount { get; set; } = 0;
- public int WarningCount { get; set; } = 0;
- public int SuspensionCount { get; set; } = 0;
- public long LoginCount { get; set; } = 0;
- public long AttendanceCount { get; set; } = 0;
- public long FollowingCount { get; set; } = 0;
- public long FollowerCount { get; set; } = 0;
- public long PaymentCount { get; set; } = 0;
- public long TotalPaidAmount { get; set; } = 0;
- public long TotalCanceledAmount { get; set; } = 0;
- private MemberStats() { }
- private MemberStats(int memberID)
- {
- if (memberID <= 0)
- {
- throw new ArgumentOutOfRangeException(nameof(memberID));
- }
- MemberID = memberID;
- }
- public static MemberStats Create(int memberID)
- {
- return new(memberID);
- }
- }
- }
|