fix some setting show

This commit is contained in:
2026-07-01 15:47:24 +03:30
parent 6aaadf5825
commit 235b835100
6 changed files with 87 additions and 256 deletions
+30 -93
View File
@@ -114,10 +114,6 @@ INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `de
SELECT 'has_page_earn_money', 'false', 'صفحه کسب درآمد', 1, 1, NULL, 'switch'
WHERE NOT EXISTS (SELECT 1 FROM `settings` WHERE `key` = 'has_page_earn_money' LIMIT 1);
INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`, `type`)
SELECT 'default_vc_number', '', 'پیشوند شماره حواله (پرگار)', 1, 1, NULL, 'text'
WHERE NOT EXISTS (SELECT 1 FROM `settings` WHERE `key` = 'default_vc_number' LIMIT 1);
INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`, `type`)
SELECT 'montzar_order_response', '[]', 'پاسخ سفارش همکار', 0, 1, NULL, 'longtext'
WHERE NOT EXISTS (SELECT 1 FROM `settings` WHERE `key` = 'montzar_order_response' LIMIT 1);
@@ -219,21 +215,6 @@ INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `de
SELECT 'sse_path', '/api/price/stream', 'مسیر SSE قیمت', 0, 1, 'GET لاراول — استریم event:last و event:list با payload کامل', 'text'
WHERE NOT EXISTS (SELECT 1 FROM `settings` WHERE `key` = 'sse_path' LIMIT 1);
INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`, `type`)
SELECT 'wss_path', '/prc/ws', 'مسیر WebSocket قیمت', 0, 1,
'مسیر WebSocket روی دامنه اپ — معمولاً /prc/ws (پروکسی به پورت داخلی ws).', 'text'
WHERE NOT EXISTS (SELECT 1 FROM `settings` WHERE `key` = 'wss_path' LIMIT 1);
INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`, `type`)
SELECT 'wss_link', '', 'آدرس trigger وب‌سوکت (سرور)', 0, 1,
'آدرس HTTP سرویس ws برای trigger برادکست از سرور لاراول — مثال: http://localhost:2090. اولویت با env WSS_LINK/wssLink است.', 'text'
WHERE NOT EXISTS (SELECT 1 FROM `settings` WHERE `key` = 'wss_link' LIMIT 1);
INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`, `type`)
SELECT 'wss_trigger_path', '/prc/api/trigger-update', 'مسیر trigger برادکست', 0, 1,
'مسیر POST برای ارسال رویداد last/list به سرویس ws — پیش‌فرض: /prc/api/trigger-update', 'text'
WHERE NOT EXISTS (SELECT 1 FROM `settings` WHERE `key` = 'wss_trigger_path' LIMIT 1);
INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`, `type`)
SELECT 'montify_name', '', 'نام فروشگاه در درگاه', 0, 1, NULL, 'text'
WHERE NOT EXISTS (SELECT 1 FROM `settings` WHERE `key` = 'montify_name' LIMIT 1);
@@ -392,10 +373,6 @@ INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `de
SELECT 'payping_fin_customer_id', '23', 'customer_id fin', 1, 1, NULL
WHERE NOT EXISTS (SELECT 1 FROM `settings` WHERE `key` = 'payping_fin_customer_id' LIMIT 1);
INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`)
SELECT 'payping_gateway_item', 'gp1Q', 'item تکی (legacy)', 1, 1, NULL
WHERE NOT EXISTS (SELECT 1 FROM `settings` WHERE `key` = 'payping_gateway_item' LIMIT 1);
INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`, `type`)
SELECT 'payping_start_url', 'https://payping.limangold.ir/payment/start', 'آدرس شروع درگاه', 1, 1, NULL, 'text'
WHERE NOT EXISTS (SELECT 1 FROM `settings` WHERE `key` = 'payping_start_url' LIMIT 1);
@@ -440,10 +417,6 @@ INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `de
SELECT 'sell_fee', '', 'سود فروش نمایش', 1, 1, NULL, 'price'
WHERE NOT EXISTS (SELECT 1 FROM `settings` WHERE `key` = 'sell_fee' LIMIT 1);
INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`, `type`)
SELECT 'fee_cash', '500000', 'کارمزد ریالی سفارش (legacy)', 0, 1, NULL, 'price'
WHERE NOT EXISTS (SELECT 1 FROM `settings` WHERE `key` = 'fee_cash' LIMIT 1);
INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`, `type`)
SELECT 'fee_service_charge_percentage', '0.005', 'درصد کارمزد سفارش', 1, 1, NULL, 'number'
WHERE NOT EXISTS (SELECT 1 FROM `settings` WHERE `key` = 'fee_service_charge_percentage' LIMIT 1);
@@ -472,10 +445,6 @@ INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `de
SELECT 'montzar_closed', 'false', 'بسته بودن همکار', 1, 1, NULL, 'switch'
WHERE NOT EXISTS (SELECT 1 FROM `settings` WHERE `key` = 'montzar_closed' LIMIT 1);
INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`, `type`)
SELECT 'price_from_nasiryan', 'false', 'قیمت از نصیریان', 1, 0, NULL, 'switch'
WHERE NOT EXISTS (SELECT 1 FROM `settings` WHERE `key` = 'price_from_nasiryan' LIMIT 1);
-- =============================================================================
-- عنوان فارسی — backfill اولیه (فقط اگر title_fa خالی باشد؛ override نهایی در انتهای فایل)
-- =============================================================================
@@ -541,9 +510,6 @@ WHERE `key` = 'buy_fee';
UPDATE `settings` SET `title_fa` = COALESCE(NULLIF(TRIM(`title_fa`), ''), 'سود فروش نمایش')
WHERE `key` = 'sell_fee';
UPDATE `settings` SET `title_fa` = COALESCE(NULLIF(TRIM(`title_fa`), ''), 'کارمزد ریالی سفارش (legacy)')
WHERE `key` = 'fee_cash';
UPDATE `settings` SET `title_fa` = COALESCE(NULLIF(TRIM(`title_fa`), ''), 'درصد کارمزد سفارش')
WHERE `key` = 'fee_service_charge_percentage';
@@ -639,13 +605,13 @@ UPDATE `settings` SET `type` = 'switch' WHERE `key` IN (
'has_page_earn_money', 'charge_notif', 'group_sms',
'montzar_closed', 'montzar_open_buy', 'montzar_open_sell',
'payping_fin_sync_enabled', 'external_order_api_enabled', 'is_store', 'wss_enabled',
'register_referral_sms_to_referrer', 'register_referral_bonus_message', 'price_from_nasiryan',
'register_referral_sms_to_referrer', 'register_referral_bonus_message',
'banner_enabled'
);
-- price (مبالغ ریالی)
UPDATE `settings` SET `type` = 'price' WHERE `key` IN (
'fee_single', 'buy_fee', 'sell_fee', 'fee_cash',
'fee_single', 'buy_fee', 'sell_fee',
'min_withdraw', 'min_first_buy', 'minimum_sell',
'up_price', 'down_price'
);
@@ -667,12 +633,12 @@ UPDATE `settings` SET `type` = 'text' WHERE `key` IN (
'montzar_token', 'montzar_diff', 'montzar_live_price', 'montzar_mazaneh',
'montzar_truly_buy_mazaneh', 'montzar_truly_sell_mazaneh', 'startDay', 'endDay',
'payping_start_url', 'payping_verify_url', 'payping_gateway_items', 'payping_fin_url',
'payping_fin_token', 'payping_gateway_item', 'tahesab_host', 'tahesab_token', 'tahesab_db',
'payping_fin_token', 'tahesab_host', 'tahesab_token', 'tahesab_db',
'node_client_id', 'node_shared_secret',
'sse_path',
'tahesab_bank_account', 'telegram_bot_token', 'bale_bot_token', 'support_messenger_id',
'referral_bonus_amount', 'balance_report_exclude_customer_id', 'metal_type', 'main_metal', 'montify_name', 'price_extreme_date',
'default_vc_number', 'liman_token'
'liman_token'
);
-- پیش‌فرض برای ردیف‌های بدون type
@@ -732,8 +698,8 @@ SELECT 'unit', '', 'واحد وزن دارایی و معاملات', 1, 1,
WHERE NOT EXISTS (SELECT 1 FROM `settings` WHERE `key` = 'unit' LIMIT 1);
INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`)
SELECT 'main_wallet_products', '', 'محصولات متصل به کیف اصلی', 0, 1,
'idهای محصول با کاما (مثل 13,25). موجودی = gold کیف اصلی. خالی = غیرفعال'
SELECT 'main_wallet_products', '13', 'محصولات متصل به کیف اصلی', 1, 1,
'محصولاتی که موجودی‌شان از کیف طلای اصلی خوانده می‌شود. چند محصول با کاما. پیش‌فرض: 13'
WHERE NOT EXISTS (SELECT 1 FROM `settings` WHERE `key` = 'main_wallet_products' LIMIT 1);
INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`, `type`)
@@ -769,34 +735,6 @@ INSERT INTO `const` (`key`, `value`, `title_fa`)
SELECT 'liman', '', 'توکن fin (legacy)'
WHERE NOT EXISTS (SELECT 1 FROM `const` WHERE `key` = 'liman' LIMIT 1);
INSERT INTO `const` (`key`, `value`, `title_fa`)
SELECT 'nasiryan', '', 'توکن API نصیریان'
WHERE NOT EXISTS (SELECT 1 FROM `const` WHERE `key` = 'nasiryan' LIMIT 1);
INSERT INTO `const` (`key`, `value`, `title_fa`)
SELECT 'nasiryan_price', '0', 'قیمت لحظه‌ای نصیریان'
WHERE NOT EXISTS (SELECT 1 FROM `const` WHERE `key` = 'nasiryan_price' LIMIT 1);
INSERT INTO `const` (`key`, `value`, `title_fa`)
SELECT 'nasiryan_diff', '0', 'اختلاف قیمت نصیریان'
WHERE NOT EXISTS (SELECT 1 FROM `const` WHERE `key` = 'nasiryan_diff' LIMIT 1);
INSERT INTO `const` (`key`, `value`, `title_fa`)
SELECT 'nasiryan_mazaneh', '0', 'مظنه نصیریان'
WHERE NOT EXISTS (SELECT 1 FROM `const` WHERE `key` = 'nasiryan_mazaneh' LIMIT 1);
INSERT INTO `const` (`key`, `value`, `title_fa`)
SELECT 'nasiryan_truly_buy_mazaneh', '0', 'مظنه خرید نصیریان'
WHERE NOT EXISTS (SELECT 1 FROM `const` WHERE `key` = 'nasiryan_truly_buy_mazaneh' LIMIT 1);
INSERT INTO `const` (`key`, `value`, `title_fa`)
SELECT 'nasiryan_truly_sell_mazaneh', '0', 'مظنه فروش نصیریان'
WHERE NOT EXISTS (SELECT 1 FROM `const` WHERE `key` = 'nasiryan_truly_sell_mazaneh' LIMIT 1);
INSERT INTO `const` (`key`, `value`, `title_fa`)
SELECT 'nasiryan_closed', 'true', 'بسته بودن نصیریان'
WHERE NOT EXISTS (SELECT 1 FROM `const` WHERE `key` = 'nasiryan_closed' LIMIT 1);
-- ---------------------------------------------------------------------------
-- پاکسازی کلیدهای legacy / تست
-- ---------------------------------------------------------------------------
@@ -808,10 +746,22 @@ DELETE FROM `settings` WHERE `key` IN (
'has_page_fund', 'has_page_permission', 'has_page_price_trigger', 'has_page_physical_gold',
'has_chat', 'product_update_price_on_list', 'product_auto_close_open_on_list',
'referral_count_for_gift', 'store_status',
'name_en', 'bace_url', 'server_url', 'key', 'color_primary', 'color_secondary'
'name_en', 'bace_url', 'server_url', 'key', 'color_primary', 'color_secondary',
'price_from_nasiryan',
'goldir_base_url', 'fee_cash', 'default_vc_number', 'payping_gateway_item',
'wss_path', 'wss_link', 'wss_trigger_path',
'wss_trigger_host', 'wss_trigger_scheme', 'wss_http_port', 'wss_socket_port'
);
DELETE FROM `const` WHERE `key` = 'log' OR `key` LIKE 'goldir%';
DELETE FROM `const` WHERE `key` = 'log' OR `key` LIKE 'goldir%' OR `key` IN (
'nasiryan',
'nasiryan_price',
'nasiryan_diff',
'nasiryan_mazaneh',
'nasiryan_truly_buy_mazaneh',
'nasiryan_truly_sell_mazaneh',
'nasiryan_closed'
);
-- ---------------------------------------------------------------------------
-- metadata — type / title_fa / description (value / is_active دست نمی‌خورند؛ can_edit در انتها)
@@ -932,7 +882,6 @@ UPDATE `settings` SET `description` = 'واحد نمایش وزن در دارا
UPDATE `settings` SET `description` = 'روشن: کاربران جدید می‌توانند ثبت‌نام کنند. خاموش: فقط ورود کاربران موجود مجاز است.' WHERE `key` = 'open_register';
UPDATE `settings` SET `description` = 'روشن: حساب کاربر بلافاصله پس از ثبت‌نام فعال می‌شود. خاموش: نیاز به تأیید دستی ادمین دارد.' WHERE `key` = 'auto_active_customer';
UPDATE `settings` SET `description` = 'نوع چیدمان اپ: روشن = حالت فروشگاهی (سبد، دسته‌بندی، حواله و …). خاموش = حالت معامله آبشده/محصولات کلاسیک. فقط از دیپلوی تغییر می‌کند.' WHERE `key` = 'is_store';
UPDATE `settings` SET `description` = 'پیشوند اختیاری برای شماره‌گذاری حواله‌ها در سیستم حسابداری خارجی. خالی = بدون پیشوند.' WHERE `key` = 'default_vc_number';
UPDATE `settings` SET `description` = 'روشن: نمودار قیمت از تاریخچه ذخیره‌شده در دیتابیس خودتان. خاموش: از سرویس تابلو آنلاین (با شناسه chart_id) استفاده می‌شود.' WHERE `key` = 'chart_use_local_data';
UPDATE `settings` SET `description` = 'شناسه یکتا (UUID) نمودار در سرویس تابلو. اگر خالی باشد از شناسه پیش‌فرض سرویس استفاده می‌شود.' WHERE `key` = 'chart_id';
@@ -948,7 +897,6 @@ UPDATE `settings` SET `description` = 'ساعت پایان فعالیت روزا
UPDATE `settings` SET `description` = 'اختلاف پایه (ریال) بین قیمت خرید و فروش روی مظنه. معمولاً نصف فاصله اسپرد کل است.' WHERE `key` = 'fee_single';
UPDATE `settings` SET `description` = 'مبلغ اضافه (ریال) روی قیمت پایه برای سمت خرید. خالی = استفاده از «اختلاف پایه».' WHERE `key` = 'buy_fee';
UPDATE `settings` SET `description` = 'مبلغ کسر (ریال) از قیمت پایه برای سمت فروش. خالی = استفاده از «اختلاف پایه».' WHERE `key` = 'sell_fee';
UPDATE `settings` SET `description` = 'کارمزد ثابت ریالی هر سفارش (قدیمی). اگر «درصد کارمزد معامله» تنظیم شده باشد، معمولاً اولویت با درصد است.' WHERE `key` = 'fee_cash';
UPDATE `settings` SET `description` = 'درصد کارمزد هر سفارش از مبلغ معامله (اعشاری؛ مثلاً ۰٫۰۰۵ یعنی نیم در هزار).' WHERE `key` = 'fee_service_charge_percentage';
UPDATE `settings` SET `description` = 'تعداد اولین سفارش‌های هر کاربر که از کارمزد معاف می‌شوند. ۰ = غیرفعال.' WHERE `key` = 'fee_free';
UPDATE `settings` SET `description` = 'حداقل مبلغ درخواست برداشت وجه (ریال). درخواست‌های کمتر رد می‌شوند.' WHERE `key` = 'min_withdraw';
@@ -992,9 +940,6 @@ UPDATE `settings` SET `description` = 'پاسخ JSON آخرین سفارش ار
UPDATE `settings` SET `description` = 'لاگ JSON آخرین محصول دریافت‌شده از API همکار. توسط سیستم پر می‌شود.' WHERE `key` = 'montzar_last_product_log';
UPDATE `settings` SET `description` = 'آدرس کامل فایل APK اندروید (https). اگر خالی باشد لینک دانلود در اپ نمایش داده نمی‌شود.' WHERE `key` = 'apk_download_link';
UPDATE `settings` SET `description` = 'روشن: اسلایدر بنر صفحه اصلی در اپ کاربر نمایش داده می‌شود. خاموش: بنرها مخفی می‌مانند (محتوای بنر از پنل «بنرها» مدیریت می‌شود).' WHERE `key` = 'banner_enabled';
UPDATE `settings` SET `description` = 'مسیر WebSocket روی دامنه اپ — معمولاً /prc/ws (پروکسی به پورت داخلی ws).' WHERE `key` = 'wss_path';
UPDATE `settings` SET `description` = 'آدرس HTTP سرویس ws برای trigger برادکست از سرور لاراول — مثال: http://localhost:2090. اولویت با env WSS_LINK/wssLink است.' WHERE `key` = 'wss_link';
UPDATE `settings` SET `description` = 'مسیر POST برای ارسال رویداد last/list به سرویس ws — پیش‌فرض: /prc/api/trigger-update' WHERE `key` = 'wss_trigger_path';
UPDATE `settings` SET `description` = 'شناسه کلاینت برای API سفارش خارجی (هدر X-Client-Id). باید با مقدار تنظیم‌شده در سرویس مقصد یکسان باشد.' WHERE `key` = 'node_client_id';
UPDATE `settings` SET `description` = 'کلید مشترک امضای HMAC برای احراز درخواست‌های API سفارش خارجی. محرمانه نگه دارید.' WHERE `key` = 'node_shared_secret';
@@ -1007,11 +952,10 @@ UPDATE `settings` SET `description` = 'روشن: پس از واریز/برداش
UPDATE `settings` SET `description` = 'آدرس کامل endpoint ثبت تراکنش در سامانه fin (POST).' WHERE `key` = 'payping_fin_url';
UPDATE `settings` SET `description` = 'توکن احراز هویت برای API سامانه fin.' WHERE `key` = 'payping_fin_token';
UPDATE `settings` SET `description` = 'شناسه مشتری/حساب در سامانه fin که تراکنش‌ها به نام آن ثبت می‌شوند.' WHERE `key` = 'payping_fin_customer_id';
UPDATE `settings` SET `description` = 'کد item تکی درگاه (legacy). اگر payping_gateway_items پر باشد اولویت با لیست چرخشی است.' WHERE `key` = 'payping_gateway_item';
UPDATE `settings` SET `description` = 'آدرس API شروع پرداخت (redirect کاربر به درگاه).' WHERE `key` = 'payping_start_url';
UPDATE `settings` SET `description` = 'آدرس API تأیید و نهایی‌سازی پرداخت پس از بازگشت از درگاه.' WHERE `key` = 'payping_verify_url';
UPDATE `settings` SET `description` = 'نام درگاه پرداخت فعال که به سرویس واسط درگاه ارسال می‌شود|sepal,' WHERE `key` = 'payping_gateway_name';
UPDATE `settings` SET `description` = 'لیست کدهای item درگاه (با کاما) برای چرخش بین چند merchant. خالی = استفاده از payping_gateway_item.' WHERE `key` = 'payping_gateway_items';
UPDATE `settings` SET `description` = 'لیست کدهای item درگاه (با کاما) برای چرخش بین چند merchant.' WHERE `key` = 'payping_gateway_items';
UPDATE `settings` SET `description` = 'روشن: مبلغ پرداخت به نزدیک‌ترین تومان گرد می‌شود. خاموش: مبلغ دقیق ریالی.' WHERE `key` = 'payping_round_toman';
UPDATE `settings` SET `description` = 'روشن: در صورت وجود برداشت ناموفق قبلی، تسویه جدید با احتیاط بیشتر انجام می‌شود.' WHERE `key` = 'payping_strict_failed_withdraw';
@@ -1034,8 +978,9 @@ UPDATE `settings` SET `description` = 'توکن ربات بله برای ارس
UPDATE `settings` SET `description` = 'روشن: پس از شارژ کیف توسط ادمین، پیامک به مشتری ارسال می‌شود.' WHERE `key` = 'charge_notif';
UPDATE `settings` SET `description` = 'روشن: امکان ارسال پیامک گروهی از پنل ادمین فعال است.' WHERE `key` = 'group_sms';
UPDATE `settings` SET `description` = 'شناسه‌های عددی محصول (با کاما) که موجودی آن‌ها از کیف طلای اصلی خوانده می‌شود. خالی = غیرفعال.' WHERE `key` = 'main_wallet_products';
UPDATE `settings` SET `description` = 'روشن: در حالت فروشگاهی قیمت از API نصیریان خوانده می‌شود (در صورت پیکربندی). فقط برای برخی نصب‌ها.' WHERE `key` = 'price_from_nasiryan';
UPDATE `settings` SET `description` = 'محصولاتی که موجودی‌شان از کیف طلای اصلی خوانده می‌شود. چند محصول با کاما. پیش‌فرض: 13' WHERE `key` = 'main_wallet_products';
UPDATE `settings` SET `value` = '13' WHERE `key` = 'main_wallet_products' AND TRIM(COALESCE(`value`, '')) = '';
UPDATE `settings` SET `can_edit` = 1 WHERE `key` = 'main_wallet_products';
UPDATE `settings` SET `description` = 'روشن: API محاسبه سود طلا فعال است. در اکثر نصب‌ها خاموش می‌ماند.' WHERE `key` = 'profit_gold_api_enabled';
-- ---------------------------------------------------------------------------
@@ -1076,13 +1021,11 @@ UPDATE `settings` SET `title_fa` = 'نمودار از داده خود سایت'
UPDATE `settings` SET `title_fa` = 'بستن خودکار خارج از ساعت کاری' WHERE `key` = 'close_price';
UPDATE `settings` SET `title_fa` = 'رنگ اصلی' WHERE `key` = 'color_primary';
UPDATE `settings` SET `title_fa` = 'رنگ ثانویه' WHERE `key` = 'color_secondary';
UPDATE `settings` SET `title_fa` = 'پیشوند شماره حواله (پرگار)' WHERE `key` = 'default_vc_number';
UPDATE `settings` SET `title_fa` = 'شماره تماس جهت پشتیبانی واریز' WHERE `key` = 'deposit_sms_support_number';
UPDATE `settings` SET `title_fa` = 'کمترین قیمت امروز' WHERE `key` = 'down_price';
UPDATE `settings` SET `title_fa` = 'ساعت پایان' WHERE `key` = 'endDay';
UPDATE `settings` SET `title_fa` = 'فعال‌سازی API سفارش خارجی (get_wallet / order)' WHERE `key` = 'external_order_api_enabled';
UPDATE `settings` SET `title_fa` = 'کارمزد (قدیمی — درصد)' WHERE `key` = 'fee';
UPDATE `settings` SET `title_fa` = 'کارمزد ریالی سفارش (legacy)' WHERE `key` = 'fee_cash';
UPDATE `settings` SET `title_fa` = 'تعداد سفارش اول بدون کارمزد' WHERE `key` = 'fee_free';
UPDATE `settings` SET `title_fa` = 'درصد کارمزد سفارش' WHERE `key` = 'fee_service_charge_percentage';
UPDATE `settings` SET `title_fa` = 'اختلاف پایه نمایش' WHERE `key` = 'fee_single';
@@ -1135,7 +1078,6 @@ UPDATE `settings` SET `title_fa` = 'customer_id fin' WHERE `key` = 'payping_fin_
UPDATE `settings` SET `title_fa` = 'همگام‌سازی fin' WHERE `key` = 'payping_fin_sync_enabled';
UPDATE `settings` SET `title_fa` = 'توکن fin' WHERE `key` = 'payping_fin_token';
UPDATE `settings` SET `title_fa` = 'URL fin' WHERE `key` = 'payping_fin_url';
UPDATE `settings` SET `title_fa` = 'item تکی (legacy)' WHERE `key` = 'payping_gateway_item';
UPDATE `settings` SET `title_fa` = 'لیست item (چرخشی)' WHERE `key` = 'payping_gateway_items';
UPDATE `settings` SET `title_fa` = 'نام gateway درگاه' WHERE `key` = 'payping_gateway_name';
UPDATE `settings` SET `title_fa` = 'گرد کردن مبلغ به تومان' WHERE `key` = 'payping_round_toman';
@@ -1143,7 +1085,6 @@ UPDATE `settings` SET `title_fa` = 'آدرس شروع درگاه' WHERE `key` =
UPDATE `settings` SET `title_fa` = 'برداشت ناموفق سخت‌گیرانه' WHERE `key` = 'payping_strict_failed_withdraw';
UPDATE `settings` SET `title_fa` = 'آدرس تأیید درگاه' WHERE `key` = 'payping_verify_url';
UPDATE `settings` SET `title_fa` = 'تاریخ min/max روز' WHERE `key` = 'price_extreme_date';
UPDATE `settings` SET `title_fa` = 'قیمت از نصیریان' WHERE `key` = 'price_from_nasiryan';
UPDATE `settings` SET `title_fa` = 'منبع قیمت' WHERE `key` = 'price_provider';
UPDATE `settings` SET `title_fa` = 'API سود طلا' WHERE `key` = 'profit_gold_api_enabled';
UPDATE `settings` SET `title_fa` = 'مقدار پاداش معرف' WHERE `key` = 'referral_bonus_amount';
@@ -1177,9 +1118,6 @@ UPDATE `settings` SET `title_fa` = 'عنوان PWA' WHERE `key` = 'title_pwa';
UPDATE `settings` SET `title_fa` = 'واحد وزن دارایی و معاملات' WHERE `key` = 'unit';
UPDATE `settings` SET `title_fa` = 'بیشترین قیمت امروز' WHERE `key` = 'up_price';
UPDATE `settings` SET `title_fa` = 'قیمت لحظه‌ای (SSE)' WHERE `key` = 'wss_enabled';
UPDATE `settings` SET `title_fa` = 'آدرس trigger وب‌سوکت (سرور)' WHERE `key` = 'wss_link';
UPDATE `settings` SET `title_fa` = 'مسیر WebSocket قیمت' WHERE `key` = 'wss_path';
UPDATE `settings` SET `title_fa` = 'مسیر trigger برادکست' WHERE `key` = 'wss_trigger_path';
UPDATE `settings` SET `title_fa` = 'آدرس API تابلو Zaarbox' WHERE `key` = 'zaarbox_api_url';
UPDATE `settings` SET `title_fa` = 'شناسه ردیف تابلو (key یا UUID)' WHERE `key` = 'zaarbox_price_key';
@@ -1192,13 +1130,12 @@ UPDATE `settings` SET `can_edit` = 0 WHERE `key` IN (
'admin_url', 'apk_download_link', 'app_url',
'bale_bot_token', 'banner_enabled',
'chart_id', 'chart_use_local_data',
'default_vc_number',
'external_order_api_enabled',
'fee_cash', 'group_sms',
'group_sms',
'has_page_earn_money',
'is_store',
'logo_login', 'logo_register', 'title_pwa', 'title_fav',
'main_product', 'main_wallet_products', 'metal_type', 'main_metal',
'main_product', 'metal_type', 'main_metal',
'montify_name',
'montzar_base_url', 'montzar_closed',
'montzar_diff', 'montzar_last_product_log', 'montzar_live_price', 'montzar_mazaneh',
@@ -1206,7 +1143,7 @@ UPDATE `settings` SET `can_edit` = 0 WHERE `key` IN (
'montzar_truly_buy_mazaneh', 'montzar_truly_sell_mazaneh',
'node_client_id', 'node_shared_secret',
'payping_fin_customer_id', 'payping_fin_sync_enabled', 'payping_fin_token', 'payping_fin_url',
'payping_gateway_item', 'payping_gateway_items', 'payping_gateway_name',
'payping_gateway_items', 'payping_gateway_name',
'payping_round_toman', 'payping_start_url', 'payping_strict_failed_withdraw', 'payping_verify_url',
'price_extreme_date', 'price_provider', 'profit_gold_api_enabled',
'send_to_tahesab', 'service_charge_percentage',
@@ -1215,7 +1152,7 @@ UPDATE `settings` SET `can_edit` = 0 WHERE `key` IN (
'telegram_bot_token',
'unit',
'up_price', 'down_price',
'wss_enabled', 'wss_link', 'wss_path', 'wss_trigger_path',
'wss_enabled',
'zaarbox_api_url', 'zaarbox_price_key'
);
@@ -1230,11 +1167,11 @@ UPDATE `settings` SET `can_edit` = 1 WHERE `key` IN (
'invite_link_text',
'jibit_verification',
'main_product_price',
'main_wallet_products',
'min_first_buy', 'min_withdraw', 'minimum_sell',
'montzar_mobile', 'montzar_open_buy', 'montzar_open_sell',
'montzar_password', 'montzar_price', 'montzar_product_id',
'open_register',
'price_from_nasiryan',
'referral_bonus_amount', 'referral_id', 'referral_limit',
'register_jibit_verify', 'register_referral_bonus_message', 'register_referral_sms_to_referrer',
'sell_fee', 'show_last_price', 'startDay',
@@ -1244,7 +1181,7 @@ UPDATE `settings` SET `can_edit` = 1 WHERE `key` IN (
-- تفکیک نهایی type (بعد از همه batchها — override روی دیتابیس موجود)
UPDATE `settings` SET `type` = 'price' WHERE `key` IN (
'fee_single', 'buy_fee', 'sell_fee', 'fee_cash',
'fee_single', 'buy_fee', 'sell_fee',
'min_withdraw', 'min_first_buy', 'minimum_sell',
'up_price', 'down_price'
);