Add validators and services for Product Galleries and Product Tags
- Implemented Create, Delete, Get, and Update validators for Product Galleries. - Added Create, Delete, Get, and Update validators for Product Tags. - Created service classes for handling Discount Categories, Discount Orders, Discount Products, Discount Shopping Cart, Product Categories, Product Galleries, and Product Tags. - Each service class integrates with CQRS for command and query handling. - Established mapping profiles for Product Galleries.
This commit is contained in:
@@ -86,11 +86,17 @@ public class CalculateWeeklyBalancesCommandHandler : IRequestHandler<CalculateWe
|
||||
// اعمال محدودیت سقف تعادل هفتگی (مثلاً 300)
|
||||
var cappedBalances = Math.Min(totalBalances, maxWeeklyBalances);
|
||||
|
||||
// محاسبه باقیمانده برای هفته بعد
|
||||
// اگر تعادل بیش از سقف بود، مازاد هم به remainder اضافه میشود
|
||||
var excessBalances = totalBalances - cappedBalances;
|
||||
var leftRemainder = (leftTotal - totalBalances) + (leftTotal >= rightTotal ? excessBalances : 0);
|
||||
var rightRemainder = (rightTotal - totalBalances) + (rightTotal >= leftTotal ? excessBalances : 0);
|
||||
// محاسبه باقیمانده برای هفته بعد (Flash Out Logic)
|
||||
// مثال: چپ=350، راست=450، سقف=300
|
||||
// تعادل پرداختی = MIN(MIN(350, 450), 300) = 300
|
||||
// از هر طرف نصف تعادل پرداختی کسر میشود: 300÷2 = 150
|
||||
// باقیمانده چپ: 350 - 150 = 200
|
||||
// باقیمانده راست: 450 - 150 = 300
|
||||
var balancesToPay = cappedBalances; // تعادل نهایی قابل پرداخت
|
||||
var balancesConsumedPerSide = balancesToPay / 2; // هر طرف نصف تعادل را مصرف میکند
|
||||
|
||||
var leftRemainder = leftTotal - balancesConsumedPerSide;
|
||||
var rightRemainder = rightTotal - balancesConsumedPerSide;
|
||||
|
||||
// محاسبه سهم استخر (20% از مجموع فعالسازیهای جدید کل شبکه)
|
||||
// طبق گفته دکتر: کل افراد جدید در شبکه × هزینه فعالسازی × 20%
|
||||
|
||||
Reference in New Issue
Block a user