4d6d77531d
Build and Deploy to Kubernetes / build-and-deploy (push) Successful in 15m3s
- SP sp_CalculateWeeklyBalances: added @PackageId, @InputMaxBalancesPerLeg, @InputMaxNetworkLevel params; filters by PackageId - SP sp_CalculateWeeklyCommissionPool: added @PackageId param; all queries filter by PackageId/WeeklyPoolId for isolation - ICommissionCalculationStrategy: added optional PackageId param to both methods - StoredProcedureCommissionCalculationStrategy: loops per-package for both Balance and Pool methods; filters by packageId if provided - OrmCommissionCalculationStrategy: signature updated to match interface - TriggerWeeklyCalculationCommand: added PackageId optional field - TriggerWeeklyCalculationCommandHandler: passes PackageId to strategy - GetWeeklyCommissionPoolQuery: added optional PackageId filter - GetWeeklyCommissionPoolQueryHandler: filters pool by PackageId if provided - GetAllWeeklyPoolsQuery/Handler/DTO: added PackageId filter + PackageTitle in response - Proto commission.proto: added package_id to TriggerWeeklyCalculationRequest, GetWeeklyCommissionPoolRequest, WeeklyCommissionPoolModel, GetWeeklyCommissionPoolResponse, GetAllWeeklyPoolsRequest - CommissionProfile: added explicit mappings for TriggerWeeklyCalculation, GetWeeklyCommissionPool, GetAllWeeklyPools Fixes: SP picks wrong pool when multiple packages per week Fixes: SP ignores PackageId on ForceRecalculate (now uses WeeklyPoolId) Fixes: Zero-balance pools not fully recorded (now sets TotalBalances=0, ValuePerBalance=0)
30 lines
1.0 KiB
C#
30 lines
1.0 KiB
C#
namespace CMSMicroservice.Application.CommissionCQ.Commands.TriggerWeeklyCalculation;
|
|
|
|
public record TriggerWeeklyCalculationCommand : IRequest<TriggerWeeklyCalculationResponseDto>
|
|
{
|
|
/// <summary>
|
|
/// شماره هفته (فرمت: "YYYY-Www")
|
|
/// </summary>
|
|
public long WeekDefinitionId { get; init; }
|
|
|
|
/// <summary>
|
|
/// اگر true باشد، محاسبات قبلی را حذف و دوباره محاسبه میکند
|
|
/// </summary>
|
|
public bool ForceRecalculate { get; init; }
|
|
|
|
/// <summary>
|
|
/// Skip balance calculation (Step 1)
|
|
/// </summary>
|
|
public bool SkipBalances { get; init; }
|
|
|
|
/// <summary>
|
|
/// Skip pool calculation and payout processing (Step 2)
|
|
/// </summary>
|
|
public bool SkipPayouts { get; init; }
|
|
|
|
/// <summary>
|
|
/// شناسه پکیج — اگر مقدار داشته باشد فقط این پکیج محاسبه میشود، در غیر این صورت همه پکیجها
|
|
/// </summary>
|
|
public long? PackageId { get; init; }
|
|
}
|