feat: refactor week number handling to use WeekDefinitionId across multiple entities and queries
This commit is contained in:
@@ -15,10 +15,16 @@ public class UserCommissionPayout : BaseAuditableEntity
|
||||
/// </summary>
|
||||
public virtual User User { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// شماره هفته
|
||||
/// شناسه تعریف هفته (کلید خارجی به WeekDefinition)
|
||||
/// </summary>
|
||||
public string WeekNumber { get; set; }
|
||||
public long WeekDefinitionId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// WeekDefinition Navigation Property
|
||||
/// </summary>
|
||||
public virtual WeekDefinition WeekDefinition { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// شناسه استخر هفتگی
|
||||
|
||||
@@ -5,10 +5,16 @@ namespace CMSMicroservice.Domain.Entities.Commission;
|
||||
/// </summary>
|
||||
public class WeeklyCommissionPool : BaseAuditableEntity
|
||||
{
|
||||
|
||||
/// <summary>
|
||||
/// شماره هفته (مثال: "2025-W48")
|
||||
/// شناسه تعریف هفته (کلید خارجی به WeekDefinition)
|
||||
/// </summary>
|
||||
public string WeekNumber { get; set; }
|
||||
public long WeekDefinitionId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// WeekDefinition Navigation Property
|
||||
/// </summary>
|
||||
public virtual WeekDefinition WeekDefinition { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// مجموع مبلغ جمعشده در استخر (ریال)
|
||||
|
||||
@@ -12,10 +12,17 @@ public class WorkerExecutionLog : BaseAuditableEntity
|
||||
/// </summary>
|
||||
public Guid ExecutionId { get; set; }
|
||||
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// شماره هفته (مثلاً 2025-W48)
|
||||
/// شناسه تعریف هفته (کلید خارجی به WeekDefinition)
|
||||
/// </summary>
|
||||
public string WeekNumber { get; set; } = string.Empty;
|
||||
public long WeekDefinitionId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// WeekDefinition Navigation Property
|
||||
/// </summary>
|
||||
public virtual WeekDefinition WeekDefinition { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// زمان شروع اجرا
|
||||
|
||||
@@ -20,10 +20,16 @@ public class CommissionPayoutHistory : BaseAuditableEntity
|
||||
/// </summary>
|
||||
public long UserId { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// شماره هفته
|
||||
/// شناسه تعریف هفته (کلید خارجی به WeekDefinition)
|
||||
/// </summary>
|
||||
public string WeekNumber { get; set; }
|
||||
public long WeekDefinitionId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// WeekDefinition Navigation Property
|
||||
/// </summary>
|
||||
public virtual WeekDefinition WeekDefinition { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// مبلغ قبل از تغییر
|
||||
|
||||
@@ -16,9 +16,14 @@ public class NetworkWeeklyBalance : BaseAuditableEntity
|
||||
public virtual User User { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// شماره هفته (مثال: "2025-W48")
|
||||
/// شناسه تعریف هفته (کلید خارجی به WeekDefinition)
|
||||
/// </summary>
|
||||
public string WeekNumber { get; set; }
|
||||
public long WeekDefinitionId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// WeekDefinition Navigation Property
|
||||
/// </summary>
|
||||
public virtual WeekDefinition WeekDefinition { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// تعداد اعضای جدید شاخه چپ در این هفته
|
||||
|
||||
@@ -0,0 +1,67 @@
|
||||
using CMSMicroservice.Domain.Entities.Commission;
|
||||
using CMSMicroservice.Domain.Entities.History;
|
||||
using CMSMicroservice.Domain.Entities.Network;
|
||||
|
||||
namespace CMSMicroservice.Domain.Entities;
|
||||
|
||||
/// <summary>
|
||||
/// تعریف هفتهها برای نمایش در سیستم
|
||||
/// این جدول شامل اطلاعات کامل هر هفته شامل شماره نمایشی، شماره میلادی، شماره شمسی و بازه تاریخی است
|
||||
/// </summary>
|
||||
public class WeekDefinition : BaseAuditableEntity
|
||||
{
|
||||
/// <summary>
|
||||
/// شماره ترتیبی هفته (1، 2، 3، ...)
|
||||
/// برای مرتبسازی و محاسبات استفاده میشود
|
||||
/// </summary>
|
||||
public int WeekOrder { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// نام نمایشی هفته (مثال: "هفته یکم"، "هفته دوم"، "هفته سوم")
|
||||
/// این متن برای نمایش به کاربر نهایی (ادمین و مشتری) استفاده میشود
|
||||
/// </summary>
|
||||
public string DisplayName { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// شماره هفته میلادی (مثال: "2025-W01", "2025-W02")
|
||||
/// فرمت ISO 8601
|
||||
/// </summary>
|
||||
public string GregorianWeekNumber { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// شماره هفته شمسی (مثال: "1403-W01", "1403-W02")
|
||||
/// </summary>
|
||||
public string PersianWeekNumber { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// تاریخ شروع هفته (میلادی) - شنبه
|
||||
/// </summary>
|
||||
public DateTime StartDate { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// تاریخ پایان هفته (میلادی) - جمعه
|
||||
/// </summary>
|
||||
public DateTime EndDate { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// سال میلادی
|
||||
/// </summary>
|
||||
public int GregorianYear { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// سال شمسی
|
||||
/// </summary>
|
||||
public int PersianYear { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// آیا این هفته فعال است؟
|
||||
/// </summary>
|
||||
public bool IsActive { get; set; } = true;
|
||||
|
||||
// Navigation Properties
|
||||
public virtual ICollection<NetworkWeeklyBalance>? NetworkWeeklyBalances { get; set; }
|
||||
public virtual ICollection<WeeklyCommissionPool>? WeeklyCommissionPools { get; set; }
|
||||
public virtual ICollection<UserCommissionPayout>? UserCommissionPayouts { get; set; }
|
||||
public virtual ICollection<WorkerExecutionLog>? WorkerExecutionLogs { get; set; }
|
||||
public virtual ICollection<CommissionPayoutHistory>? CommissionPayoutHistories { get; set; }
|
||||
}
|
||||
Reference in New Issue
Block a user