using Oms.Domain.Shared; using Oms.Domain.Shared.Enums; using SqlSugar; namespace Oms.Domain.MarketingAggregate.Entities; [SugarTable("t_referral_commission_rule")] public class ReferralCommissionRule : OmsAuditedAggregateRoot { public string RuleName { get; set; } = "默认分成规则"; public string CommissionMode { get; set; } = "per_amount"; public decimal BaseAmount { get; set; } = 1000M; public decimal CommissionAmount { get; set; } = 2M; public int FreezeDays { get; set; } = 7; public string SettleTriggerOrderStatus { get; set; } = "deliverySuccess"; public decimal? MonthlyCap { get; set; } public string MinInviteLevelCode { get; set; } = "V1"; public decimal MinPaidBaseFreight { get; set; } = 50M; public decimal FirstOrderRate { get; set; } = 0.05M; public decimal FirstOrderCap { get; set; } = 50M; public decimal FollowOrderRate { get; set; } = 0.03M; public decimal FollowOrderCap { get; set; } = 30M; public int FollowWindowDays { get; set; } = 90; public int MaxRewardOrders { get; set; } = 6; public int SettleBusinessDays { get; set; } = 3; public EnableStatus Status { get; set; } = EnableStatus.Enabled; }