fix some bugs 5

This commit is contained in:
2026-07-21 22:23:09 +03:30
parent 55ce5e83b0
commit 3f8c47b1fc
6 changed files with 215 additions and 36 deletions
@@ -568,11 +568,15 @@ class PargarInboundController extends Controller
}
$tradedProductId = (int) ($payload['product_id'] ?? $order->product_id ?? 0);
$tradesMainGold = $tradedProductId <= 0
|| app(ConfigService::class)->isMainWalletProduct($tradedProductId)
|| ($product && self::isMeltedTradeGroup($product->group_type ?? null));
// فقط محصولات main_wallet_products روی GoldInv آبشده اثر دارند.
// group_type=آبشده به‌تنهایی کافی نیست (مثلاً آبشده سرمایه‌گذاری / قلک).
if ($tradedProductId > 0) {
$tradesMainGold = app(ConfigService::class)->isMainWalletProduct($tradedProductId);
} else {
$tradesMainGold = $product && self::isMeltedTradeGroup($product->group_type ?? null);
}
// اثر مانده از روش پرداخت؛ وزن طلا فقط وقتی کالای معامله یا پرداخت به کیف اصلی مربوط است
// اثر مانده از روش پرداخت؛ وزن طلا فقط وقتی کالای معامله به کیف اصلی مربوط است
if ($paymentKind === PargarSyncService::PAYMENT_CASH) {
if ($tradesMainGold) {
// خرید/فروش آبشده کیف‌اصلی با نقدی: وزن + مبلغ — حتماً تعدادی نباشد
@@ -580,7 +584,7 @@ class PargarInboundController extends Controller
$count = 0;
$weight = $amount;
} else {
// محصول غیر اصلی با پرداخت نقدی: فقط ریال
// محصول غیر اصلی با پرداخت نقدی: فقط ریال (بدون وزن طلای پرگار)
$rialItemId = $sync->pargarItemIdRial();
$itemId = $rialItemId > 0 ? $rialItemId : $sync->pargarItemIdGold();
$weight = 0;