feat: expand network membership response with additional fields
Build and Deploy / build (push) Successful in 2m12s

This commit is contained in:
masoodafar-web
2025-12-12 07:52:55 +03:30
parent fe56b8f139
commit 19a717fc87
6 changed files with 158 additions and 81 deletions
@@ -2,73 +2,66 @@ namespace BackOffice.BFF.Application.NetworkMembershipCQ.Queries.GetUserNetworkI
public class GetUserNetworkInfoResponseDto
{
/// <summary>
/// شناسه عضویت شبکه
/// </summary>
// اطلاعات اصلی کاربر
public long Id { get; set; }
/// <summary>
/// شناسه کاربر
/// </summary>
public long UserId { get; set; }
/// <summary>
/// نام کاربر
/// </summary>
public string UserName { get; set; } = string.Empty;
/// <summary>
/// شناسه والد در شبکه
/// </summary>
public long? ParentId { get; set; }
/// <summary>
/// نام والد
/// </summary>
public string ParentName { get; set; } = string.Empty;
/// <summary>
/// موقعیت در شبکه (0=Left, 1=Right)
/// </summary>
public int NetworkLeg { get; set; }
/// <summary>
/// شناسه فرزند چپ
/// </summary>
public long? LeftChildId { get; set; }
/// <summary>
/// نام فرزند چپ
/// </summary>
public string LeftChildName { get; set; } = string.Empty;
/// <summary>
/// شناسه فرزند راست
/// </summary>
public long? RightChildId { get; set; }
/// <summary>
/// نام فرزند راست
/// </summary>
public string RightChildName { get; set; } = string.Empty;
/// <summary>
/// سطح در شبکه
/// </summary>
public int NetworkLevel { get; set; }
/// <summary>
/// کد معرف
/// </summary>
public string Mobile { get; set; } = string.Empty;
public string Email { get; set; } = string.Empty;
public string NationalCode { get; set; } = string.Empty;
public string ReferralCode { get; set; } = string.Empty;
/// <summary>
/// تاریخ عضویت در شبکه
/// </summary>
public bool IsMobileVerified { get; set; }
public DateTime? BirthDate { get; set; }
public DateTime JoinedAt { get; set; }
/// <summary>
/// تاریخ ایجاد
/// </summary>
// اطلاعات والد
public long? ParentId { get; set; }
public string ParentName { get; set; } = string.Empty;
public string ParentMobile { get; set; } = string.Empty;
// موقعیت در شبکه
public int NetworkLeg { get; set; }
public int NetworkLevel { get; set; }
public bool IsInNetwork { get; set; }
// اطلاعات فرزند چپ
public long? LeftChildId { get; set; }
public string LeftChildName { get; set; } = string.Empty;
public string LeftChildMobile { get; set; } = string.Empty;
public DateTime? LeftChildJoinedAt { get; set; }
// اطلاعات فرزند راست
public long? RightChildId { get; set; }
public string RightChildName { get; set; } = string.Empty;
public string RightChildMobile { get; set; } = string.Empty;
public DateTime? RightChildJoinedAt { get; set; }
// آمار فرزندان مستقیم
public int TotalChildren { get; set; }
public int LeftChildCount { get; set; }
public int RightChildCount { get; set; }
// آمار کل شبکه
public int TotalLeftLegMembers { get; set; }
public int TotalRightLegMembers { get; set; }
public int TotalNetworkSize { get; set; }
public int MaxNetworkDepth { get; set; }
// اطلاعات پکیج و دایا
public bool HasReceivedDayaCredit { get; set; }
public DateTime? DayaCreditReceivedAt { get; set; }
public int PackagePurchaseMethod { get; set; }
public bool HasPurchasedGoldenPackage { get; set; }
// آمار مالی
public double TotalEarnedCommission { get; set; }
public double TotalPaidCommission { get; set; }
public double PendingCommission { get; set; }
public int TotalBalancesEarned { get; set; }
// آمار فعالیت
public int ActiveMembersInNetwork { get; set; }
public int InactiveMembersInNetwork { get; set; }
public DateTime CreatedAt { get; set; }
}