product time changed

This commit is contained in:
2026-07-02 20:18:59 +03:30
parent 184977462a
commit 552d9b07af
2 changed files with 16 additions and 15 deletions
+13 -3
View File
@@ -696,12 +696,20 @@ class Controller extends BaseController
$counter->save();
}
if (!Storage::exists('accessTokenGibit') || !Storage::exists('refreshTokenGibit')) {
Storage::put('accessTokenGibit', 'توکن اولیه');
Storage::put('refreshTokenGibit', 'توکن رفرش اولیه');
}
$apiData['refresh'] = Http::withoutVerifying()->withToken(Storage::get('refreshTokenGibit'))
->post('https://napi.jibit.ir/ide/v1/tokens/generate', [
'apiKey' => 'J5WxrPxPOg',
'secretKey' => '7dgeE70xQXsQL7r36j3wif6X9',
])->json();
Storage::put('accessTokenGibit', $apiData['refresh']['accessToken']);
Storage::put('accessTokenGibit', $apiData['refresh']['accessToken'] ?? '');
if (!empty($apiData['refresh']['refreshToken'])) {
Storage::put('refreshTokenGibit', $apiData['refresh']['refreshToken']);
}
$response = Http::withoutVerifying()->withToken(Storage::get('accessTokenGibit'))
->get("https://napi.jibit.ir/ide/v1/services/matching?mobileNumber=$mobile&nationalCode=$nationalCode")
@@ -713,8 +721,10 @@ class Controller extends BaseController
'apiKey' => 'J5WxrPxPOg',
'secretKey' => '7dgeE70xQXsQL7r36j3wif6X9',
])->json();
Storage::put('accessTokenGibit', $refreshToken['accessToken']);
Storage::put('refreshTokenGibit', $refreshToken['refreshToken']);
Storage::put('accessTokenGibit', $refreshToken['accessToken'] ?? '');
if (!empty($refreshToken['refreshToken'])) {
Storage::put('refreshTokenGibit', $refreshToken['refreshToken']);
}
$response = Http::withoutVerifying()->withToken(Storage::get('accessTokenGibit'))
->get("https://napi.jibit.ir/ide/v1/services/matching?mobileNumber=$mobile&nationalCode=$nationalCode")
->json();
+3 -12
View File
@@ -640,10 +640,8 @@ class ConfigService
/**
* ساعت معامله یک محصول:
* - اگر سوییچ override محصول روشن باشد → فقط بازه اختصاصی خود محصول حاکم است (سراسری نادیده گرفته می‌شود).
* - اگر خاموش باشد → لایهٔ بیرونیِ ساعت کاری محصول (auto_open_at/auto_close_at) همیشه اعمال می‌شود،
* مستقل از اینکه close_price روشن باشد یا نه.
* - فقط اگر محصول هیچ بازهٔ معتبری نداشته باشد → فیلتر سراسری close_price + startDay/endDay اعمال می‌شود.
* - override روشن + بازه معتبر → فقط بازه اختصاصی همان محصول
* - در غیر این صورت → فقط وقتی close_price روشن است، startDay/endDay سراسری
*/
public function isProductWithinTradingHours(Product $product, ?Carbon $now = null): bool
{
@@ -651,10 +649,6 @@ class ConfigService
return $this->isWithinTimeWindow($product->auto_open_at, $product->auto_close_at, $now);
}
if ($this->hasProductTradingWindow($product->auto_open_at, $product->auto_close_at)) {
return $this->isWithinTimeWindow($product->auto_open_at, $product->auto_close_at, $now);
}
if ($this->isClosePriceEnabled() && $this->isOutsideTradingHours($now)) {
return false;
}
@@ -666,10 +660,7 @@ class ConfigService
{
$title = trim((string) ($product->title ?? 'محصول'));
if (
$this->productOverridesTradingHours($product)
|| $this->hasProductTradingWindow($product->auto_open_at, $product->auto_close_at)
) {
if ($this->productOverridesTradingHours($product)) {
$open = $this->formatProductTime($product->auto_open_at);
$close = $this->formatProductTime($product->auto_close_at);