namespace CMSMicroservice.Application.NetworkMembershipCQ.Queries.GetNetworkTree;
///
/// DTO برای نمایش درخت دوتایی شبکه
///
public class NetworkTreeDto
{
public long UserId { get; set; }
public string? Mobile { get; set; }
public string? FirstName { get; set; }
public string? LastName { get; set; }
///
/// کد معرف کاربر
///
public string? ReferralCode { get; set; }
public NetworkLeg? LegPosition { get; set; }
public int CurrentDepth { get; set; }
///
/// تاریخ فعالسازی در باشگاه مشتریان
///
public DateTime? ClubActivatedAt { get; set; }
///
/// وضعیت فعال بودن در باشگاه مشتریان
///
public bool IsClubActive { get; set; }
///
/// شماره هفته فعالسازی
///
public long? ActivationWeekDefinitionId { get; set; }
///
/// نام نمایشی هفته فعالسازی (مثل: هفته یکم)
///
public string? ActivationWeekDisplayName { get; set; }
///
/// آیا کاربر در هفته هدف فعال شده است؟
///
public bool IsActivatedInTargetWeek { get; set; }
///
/// تاریخ ایجاد کاربر
///
public DateTimeOffset UserCreated { get; set; }
///
/// آیا فعالسازی در هفته هدف اولین بار بوده؟ null = بدون Cycle
///
public bool? IsNewActivation { get; set; }
///
/// نام پکیج موثر (هفته هدف یا پکیج فعلی)
///
public string? PackageName { get; set; }
public long? PackageId { get; set; }
/// آخرین LeftLegTotal پکیج طلایی (پایه)
public int GoldLeftLegTotal { get; set; }
/// آخرین RightLegTotal پکیج طلایی (پایه)
public int GoldRightLegTotal { get; set; }
/// آخرین LeftLegTotal پکیج نقرهای
public int SilverLeftLegTotal { get; set; }
/// آخرین RightLegTotal پکیج نقرهای
public int SilverRightLegTotal { get; set; }
public NetworkTreeDto? LeftChild { get; set; }
public NetworkTreeDto? RightChild { get; set; }
}