merge goldali with abshode_khanegi branch

This commit is contained in:
2026-06-04 12:18:53 +03:30
parent aea3cbbc6e
commit a9815fa717
28 changed files with 1359 additions and 379 deletions
+26 -9
View File
@@ -10,6 +10,7 @@ use App\Models\Setting;
use App\Models\ConfigStatic;
use App\Models\Customer;
use App\Services\MontzarService;
use App\Services\EtehadiePriceService;
use App\Models\Price;
use App\Models\PriceCandle;
use App\Models\PriceTrigger;
@@ -140,6 +141,7 @@ class ReportController extends Controller
$closed = false;
$montzar_price = 0;
$etehadie_teh = 0;
$tgn = 0;
$pr_price = 0;
@@ -165,11 +167,14 @@ class ReportController extends Controller
'main_product' => 0,
'taban_gohar' => 0,
'montzar' => 0,
'etehadie_teh' => 0,
'closed' => true,
'time' => now(),
]);
};
$priceProvider = $config->priceProvider();
/*
|--------------------------------------------------------------------------
| بستن قیمت طبق منطق قبلی
@@ -222,14 +227,22 @@ class ReportController extends Controller
$diff_buy = (float) $settingsMap->get('buy_fee', $difference);
$diff_sell = (float) $settingsMap->get('sell_fee', $difference);
$montzar_price_enabled = $toBool($config->Config('montzar_price'));
/*
|--------------------------------------------------------------------------
| اتحادیه (گلد علی / refPricer) — فقط وقتی price_provider=etehadie
|--------------------------------------------------------------------------
*/
if ($priceProvider === 'etehadie' && !$closed) {
$etehadie = app(EtehadiePriceService::class)->fetchMainGramPrice();
$etehadie_teh = (int) ($etehadie['price'] ?? 0);
}
/*
|--------------------------------------------------------------------------
| Montzar - اولویت اول
| Montzar — فقط وقتی price_provider=montzar
|--------------------------------------------------------------------------
*/
if ($montzar_price_enabled && !$closed) {
if ($priceProvider === 'montzar' && !$closed) {
try {
$montzarBaseUrl = rtrim($config->Config('montzar_base_url') ?: 'https://montpar.ir', '/');
$montzarProductId = (int) ($config->Config('montzar_product_id') ?: 25);
@@ -347,18 +360,19 @@ class ReportController extends Controller
/*
|--------------------------------------------------------------------------
| انتخاب قیمت اصلی
| اولویت:
| Montzar -> Taban Gohar -> Main Product
| انتخاب قیمت اصلی (همان price_provider)
|--------------------------------------------------------------------------
*/
if ($montzar_price_enabled && ($montzar_price ?? 0) !== 0 && !$closed) {
if ($priceProvider === 'etehadie' && $etehadie_teh > 0 && !$closed) {
$priceValue = (int) $etehadie_teh;
$priceSource = 'etehadie';
} elseif ($priceProvider === 'montzar' && ($montzar_price ?? 0) !== 0 && !$closed) {
$priceValue = (int) $montzar_price;
$priceSource = 'montzar';
} elseif ($toBool($taban_gohar_price) && ($tgn ?? 0) !== 0 && !$closed) {
} elseif ($priceProvider === 'taban_gohar' && $toBool($taban_gohar_price) && ($tgn ?? 0) !== 0 && !$closed) {
$priceValue = $tgn;
$priceSource = 'taban_gohar';
} elseif ($toBool($main_product_price) && ($pr_price ?? 0) !== 0 && !$closed) {
} elseif ($priceProvider === 'main_product' && $toBool($main_product_price) && ($pr_price ?? 0) !== 0 && !$closed) {
$priceValue = $pr_price;
$priceSource = 'main_product';
} else {
@@ -376,6 +390,7 @@ class ReportController extends Controller
'main_product' => $pr_price ?? 0,
'taban_gohar' => $tgn ?? 0,
'montzar' => $montzar_price ?? 0,
'etehadie_teh' => $etehadie_teh ?? 0,
'closed' => true,
'time' => now(),
]);
@@ -392,6 +407,7 @@ class ReportController extends Controller
'main_product' => $pr_price ?? 0,
'taban_gohar' => $tgn ?? 0,
'montzar' => $montzar_price ?? 0,
'etehadie_teh' => $etehadie_teh ?? 0,
'closed' => true,
'time' => now(),
]);
@@ -488,6 +504,7 @@ class ReportController extends Controller
'main_product' => $pr_price ?? 0,
'taban_gohar' => $tgn ?? 0,
'montzar' => $montzar_price ?? 0,
'etehadie_teh' => $etehadie_teh ?? 0,
'closed' => false,
'time' => now(),
]);