diff --git a/app/Http/Controllers/Auth/AuthController.php b/app/Http/Controllers/Auth/AuthController.php index 975b67a..a25a74e 100644 --- a/app/Http/Controllers/Auth/AuthController.php +++ b/app/Http/Controllers/Auth/AuthController.php @@ -136,8 +136,8 @@ class AuthController extends Controller $data['active'] = true; } $cnt = Cnt::where('key', 'gram')->first(); - if (!is_null($cnt)) { - $data['gram'] = $cnt->value; + if ($cnt !== null && trim((string) $cnt->value) !== '') { + $data['gram'] = (int) $cnt->value; } do { @@ -159,24 +159,11 @@ class AuthController extends Controller $referrer = null; if (isset($data['referral_to_id'])) { $referrer = Customer::where('referral_id', $data['referral_to_id'])->first(); - if ($referrer) { - if ($cfg->getBool('register_referral_sms_to_referrer', false)) { - $messageRef = "{$data['name']} با کد معرف شما ثبت نام کرد.\nبا اولین خرید او پاداش دریافت میکنید.\n" . $this->Config('name_fa'); - $this->Send($referrer->mobile, $messageRef); - } else { - $adminMessage = "با معرفی {$referrer->name}، کاربر {$data['name']} در اپ {$this->Config('name_fa')} ثبت نام کرده و منتظر تایید شماست."; - User::where('send_sms', 1)->get()->each(function ($admin) use ($adminMessage) { - $this->send($admin->mobile, $adminMessage); - }); - } - } else { + if (!$referrer) { return response()->json(['message' => 'کد نامعتبره'], 422); } } else { - if ( - $this->Config('referral_id') == 'required' - || $cfg->getBool('is_requaire_referral', false) - ) { + if ($this->Config('referral_id') == 'required') { return response()->json(['message' => 'کد معرف اجباریست'], 422); } } @@ -187,6 +174,15 @@ class AuthController extends Controller if ($referrer) { $referrer->increment('total_referrals'); + if ($cfg->getBool('register_referral_sms_to_referrer', false)) { + $messageRef = "{$data['name']} با کد معرف شما ثبت نام کرد.\nبا اولین خرید او پاداش دریافت میکنید.\n" . $this->Config('name_fa'); + $this->Send($referrer->mobile, $messageRef); + } else { + $adminMessage = "با معرفی {$referrer->name}، کاربر {$data['name']} در اپ {$this->Config('name_fa')} ثبت نام کرده و منتظر تایید شماست."; + User::where('send_sms', 1)->get()->each(function ($admin) use ($adminMessage) { + $this->send($admin->mobile, $adminMessage); + }); + } } if ($cfg->getBool('register_jibit_verify', false) && isset($customer->is_legal)) { diff --git a/app/Http/Controllers/Customer/CustomerController.php b/app/Http/Controllers/Customer/CustomerController.php index a3a28cf..3ba7fbf 100644 --- a/app/Http/Controllers/Customer/CustomerController.php +++ b/app/Http/Controllers/Customer/CustomerController.php @@ -300,7 +300,7 @@ class CustomerController extends Controller } elseif (!$customer->is_legal && !$cfg->getBool('register_jibit_verify', false)) { return response()->json([ - 'message' => 'اطلاعات شما با موفقیت ثبت شد. تأیید خودکار هویت در این سامانه فعال نیست؛ لطفاً برای تکمیل احراز هویت با پشتیبانی یا مدیر سامانه تماس بگیرید.', + 'message' => 'اطلاعات شما با موفقیت ثبت شد. لطفاً برای تکمیل احراز هویت با پشتیبانی یا مدیر سامانه تماس بگیرید.', ], 422); } return response()->json(true); diff --git a/database/sql/abaeigold_merge_goldali_catalog.sql b/database/sql/abaeigold_merge_goldali_catalog.sql index a4c532c..bd8924f 100644 --- a/database/sql/abaeigold_merge_goldali_catalog.sql +++ b/database/sql/abaeigold_merge_goldali_catalog.sql @@ -1,12 +1,13 @@ -- ============================================================================= --- عبایی گلد — ادغام settings با کاتالوگ goldAliii +-- عبایی گلد — ادغام settings با کاتالوگ واحد -- -- منبع مقادیر: abaeigold_client.json --- قالب کلیدها: goldali (102 کلید) +-- قالب کلیدها: goldali (101 کلید) -- -- قوانین: -- • کلید مشترک → value از کلاینت، metadata از کاتالوگ -- • کلید کاتالوگ بدون مقدار در کلاینت → value=''، is_active=0 +-- • هر setting با value پر → is_active=1 (الزام ConfigService) -- • کلیدهای اضافی کلاینت → DELETE -- -- قبل از اجرا: USE دیتابیس عبایی گلد + بکاپ @@ -75,13 +76,13 @@ INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `de SELECT 'external_order_api_enabled', '', 'فعال‌سازی API سفارش خارجی (get_wallet / order)', 1, 0, 'true + node_client_id + node_shared_secret', NULL WHERE NOT EXISTS (SELECT 1 FROM `settings` WHERE `key` = 'external_order_api_enabled' LIMIT 1); INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`, `type`) -SELECT 'fee_cash', '500000', 'اختلاف ریالی هر گرم (سفارش)', 1, 1, 'goldAliii: 0', 'number' +SELECT 'fee_cash', '500000', 'اختلاف ریالی هر گرم (سفارش)', 1, 1, 'مقدار نمونه: 0', 'number' 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_free', '0', 'تعداد سفارش اول بدون کارمزد', 1, 1, NULL, 'switch' WHERE NOT EXISTS (SELECT 1 FROM `settings` WHERE `key` = 'fee_free' LIMIT 1); INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`, `type`) -SELECT 'fee_service_charge_percentage', '0.005', 'درصد کارمزد سفارش', 1, 1, 'goldAliii: 7%', 'number' +SELECT 'fee_service_charge_percentage', '0.005', 'درصد کارمزد سفارش', 1, 1, 'مقدار نمونه: 0.07', 'number' WHERE NOT EXISTS (SELECT 1 FROM `settings` WHERE `key` = 'fee_service_charge_percentage' LIMIT 1); INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`, `type`) SELECT 'fee_single', '500000', 'اختلاف قیمت پایه (ریال)', 1, 1, 'پیش‌فرض Laravel fee.single', 'number' @@ -114,9 +115,6 @@ INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `de SELECT 'has_page_price_trigger', 'true', 'صفحه هشدار قیمت', 1, 1, NULL, 'switch' WHERE NOT EXISTS (SELECT 1 FROM `settings` WHERE `key` = 'has_page_price_trigger' LIMIT 1); INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`, `type`) -SELECT 'is_requaire_referral', 'true', 'کد معرف اجباری (قدیمی)', 1, 1, NULL, 'switch' -WHERE NOT EXISTS (SELECT 1 FROM `settings` WHERE `key` = 'is_requaire_referral' LIMIT 1); -INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`, `type`) SELECT 'jibit_verification', 'false', 'تأیید کارت بانکی با جیبیت', 1, 1, 'true/false — BankAccountController', 'switch' WHERE NOT EXISTS (SELECT 1 FROM `settings` WHERE `key` = 'jibit_verification' LIMIT 1); INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`, `type`) @@ -177,7 +175,7 @@ INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `de SELECT 'montzar_password', '09901810700', 'رمز API همکار', 1, 1, NULL, 'text' WHERE NOT EXISTS (SELECT 1 FROM `settings` WHERE `key` = 'montzar_password' LIMIT 1); INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`, `type`) -SELECT 'montzar_price', 'true', 'قیمت از همکار (montzar)', 1, 1, 'گلد علی: false — zaarbox فعال', 'switch' +SELECT 'montzar_price', 'true', 'قیمت از همکار (montzar)', 1, 1, 'معمولاً false وقتی price_provider=zaarbox', 'switch' WHERE NOT EXISTS (SELECT 1 FROM `settings` WHERE `key` = 'montzar_price' LIMIT 1); INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`, `type`) SELECT 'montzar_product_id', '25', 'کد محصول همکار', 1, 1, NULL, 'number' @@ -261,13 +259,13 @@ INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `de SELECT 'referral_count_for_gift', '', 'تعداد معرف برای هدیه', 1, 0, NULL, 'number' WHERE NOT EXISTS (SELECT 1 FROM `settings` WHERE `key` = 'referral_count_for_gift' LIMIT 1); INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`, `type`) -SELECT 'referral_id', 'required', 'الزام کد معرف', 0, 1, 'required,', 'select' +SELECT 'referral_id', 'required', 'الزام کد معرف', 1, 1, 'required = اجباری؛ خالی = اختیاری|required,', 'select' WHERE NOT EXISTS (SELECT 1 FROM `settings` WHERE `key` = 'referral_id' LIMIT 1); INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`, `type`) SELECT 'referral_limit', '', 'محدودیت دعوت', 1, 0, NULL, 'text' WHERE NOT EXISTS (SELECT 1 FROM `settings` WHERE `key` = 'referral_limit' LIMIT 1); INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`, `type`) -SELECT 'register_jibit_verify', '', 'تأیید کدملی/موبایل در ثبت‌نام', 1, 0, 'AuthController', 'switch' +SELECT 'register_jibit_verify', 'true', 'تأیید کدملی/موبایل در ثبت‌نام', 1, 1, 'AuthController', 'switch' WHERE NOT EXISTS (SELECT 1 FROM `settings` WHERE `key` = 'register_jibit_verify' LIMIT 1); INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`, `type`) SELECT 'register_referral_bonus_message', '', 'پیام پاداش در SMS ثبت‌نام', 1, 0, NULL, 'text' @@ -489,7 +487,7 @@ UPDATE `settings` SET `title_fa` = 'اختلاف ریالی هر گرم (سفارش)', `can_edit` = 1, `type` = 'number', - `description` = 'goldAliii: 0', + `description` = 'مقدار نمونه: 0', `value` = '500000', `is_active` = 1, `updated_at` = NOW() @@ -507,7 +505,7 @@ UPDATE `settings` SET `title_fa` = 'درصد کارمزد سفارش', `can_edit` = 1, `type` = 'number', - `description` = 'goldAliii: 7%', + `description` = 'مقدار نمونه: 0.07', `value` = '0.005', `is_active` = 1, `updated_at` = NOW() @@ -602,15 +600,6 @@ UPDATE `settings` SET `is_active` = 1, `updated_at` = NOW() WHERE `key` = 'has_page_price_trigger'; -UPDATE `settings` SET - `title_fa` = 'کد معرف اجباری (قدیمی)', - `can_edit` = 1, - `type` = 'switch', - `description` = NULL, - `value` = 'true', - `is_active` = 1, - `updated_at` = NOW() -WHERE `key` = 'is_requaire_referral'; UPDATE `settings` SET `title_fa` = 'تأیید کارت بانکی با جیبیت', `can_edit` = 1, @@ -795,7 +784,7 @@ UPDATE `settings` SET `title_fa` = 'قیمت از همکار (montzar)', `can_edit` = 1, `type` = 'switch', - `description` = 'گلد علی: false — zaarbox فعال', + `description` = 'معمولاً false وقتی price_provider=zaarbox', `value` = 'true', `is_active` = 1, `updated_at` = NOW() @@ -1045,9 +1034,9 @@ UPDATE `settings` SET WHERE `key` = 'referral_count_for_gift'; UPDATE `settings` SET `title_fa` = 'الزام کد معرف', - `can_edit` = 0, + `can_edit` = 1, `type` = 'select', - `description` = 'required,', + `description` = 'required = اجباری؛ خالی = اختیاری|required,', `value` = 'required', `is_active` = 1, `updated_at` = NOW() @@ -1066,8 +1055,8 @@ UPDATE `settings` SET `can_edit` = 1, `type` = 'switch', `description` = 'AuthController', - `value` = '', - `is_active` = 0, + `value` = 'true', + `is_active` = 1, `updated_at` = NOW() WHERE `key` = 'register_jibit_verify'; UPDATE `settings` SET @@ -1263,6 +1252,28 @@ UPDATE `settings` SET `updated_at` = NOW() WHERE `key` LIKE 'logo_login%' AND `key` <> 'logo_login'; +-- 3b) legacy is_requaire_referral → referral_id (قبل از DELETE) + +-- legacy is_requaire_referral → referral_id +UPDATE `settings` AS r +SET + r.`value` = 'required', + r.`is_active` = 1, + r.`updated_at` = NOW() +WHERE r.`key` = 'referral_id' + AND EXISTS ( + SELECT 1 + FROM ( + SELECT `value`, `is_active` + FROM `settings` + WHERE `key` = 'is_requaire_referral' + LIMIT 1 + ) AS leg + WHERE leg.`is_active` = 1 + AND LOWER(TRIM(COALESCE(leg.`value`, ''))) IN ('true', '1', 'yes') + ) + AND TRIM(COALESCE(r.`value`, '')) <> 'required'; + -- 4) DELETE extras DELETE FROM `settings` @@ -1297,7 +1308,6 @@ WHERE `key` NOT IN ( 'has_page_permission', 'has_page_physical_gold', 'has_page_price_trigger', - 'is_requaire_referral', 'jibit_verification', 'key', 'logo_login', @@ -1373,4 +1383,15 @@ WHERE `key` NOT IN ( DELETE FROM `settings` WHERE `key` = 'price_method'; +-- 4b) حذف کلیدهای legacy + +DELETE FROM `settings` WHERE `key` = 'is_requaire_referral'; + +-- 5) is_active — ConfigService فقط وقتی is_active=1 و value پر باشد می‌خواند + +UPDATE `settings` SET + `is_active` = 1, + `updated_at` = NOW() +WHERE TRIM(COALESCE(`value`, '')) <> ''; + COMMIT; diff --git a/database/sql/abaeigold_merge_goldali_const.sql b/database/sql/abaeigold_merge_goldali_const.sql index cb463bd..f2b9e8b 100644 --- a/database/sql/abaeigold_merge_goldali_const.sql +++ b/database/sql/abaeigold_merge_goldali_const.sql @@ -1,5 +1,5 @@ -- ============================================================================= --- عبایی گلد — ادغام const با کاتالوگ goldAliii +-- عبایی گلد — ادغام const با کاتالوگ واحد -- -- منبع مقادیر: abaeigold_client.json -- قالب: 10 کلید goldali @@ -33,7 +33,7 @@ INSERT INTO `const` (`key`, `value`, `title_fa`) SELECT 'main_product', '13', 'محصول آبشده پیش‌فرض' WHERE NOT EXISTS (SELECT 1 FROM `const` WHERE `key` = 'main_product' LIMIT 1); INSERT INTO `const` (`key`, `value`, `title_fa`) -SELECT 'gram', '', 'گرم ثبت‌نام' +SELECT 'gram', '0', 'گرم ثبت‌نام' WHERE NOT EXISTS (SELECT 1 FROM `const` WHERE `key` = 'gram' LIMIT 1); INSERT INTO `const` (`key`, `value`, `title_fa`) SELECT 'first_customer_wallet_value', '', 'حداقل اولین خرید' @@ -79,7 +79,7 @@ UPDATE `const` SET WHERE `key` = 'main_product'; UPDATE `const` SET `title_fa` = 'گرم ثبت‌نام', - `value` = '', + `value` = '0', `updated_at` = NOW() WHERE `key` = 'gram'; UPDATE `const` SET diff --git a/database/sql/abshode_rahimi_merge_goldali_catalog.sql b/database/sql/abshode_rahimi_merge_goldali_catalog.sql index cf43142..c1960c2 100644 --- a/database/sql/abshode_rahimi_merge_goldali_catalog.sql +++ b/database/sql/abshode_rahimi_merge_goldali_catalog.sql @@ -75,13 +75,13 @@ INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `de SELECT 'external_order_api_enabled', '', 'فعال‌سازی API سفارش خارجی (get_wallet / order)', 1, 0, 'true + node_client_id + node_shared_secret', NULL WHERE NOT EXISTS (SELECT 1 FROM `settings` WHERE `key` = 'external_order_api_enabled' LIMIT 1); INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`, `type`) -SELECT 'fee_cash', '500000', 'اختلاف ریالی هر گرم (سفارش)', 1, 1, 'goldAliii: 0', 'number' +SELECT 'fee_cash', '500000', 'اختلاف ریالی هر گرم (سفارش)', 1, 1, 'مقدار نمونه: 0', 'number' 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_free', '0', 'تعداد سفارش اول بدون کارمزد', 1, 1, NULL, 'switch' WHERE NOT EXISTS (SELECT 1 FROM `settings` WHERE `key` = 'fee_free' LIMIT 1); INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`, `type`) -SELECT 'fee_service_charge_percentage', '0.005', 'درصد کارمزد سفارش', 1, 1, 'goldAliii: 7%', 'number' +SELECT 'fee_service_charge_percentage', '0.005', 'درصد کارمزد سفارش', 1, 1, 'مقدار نمونه: 0.07', 'number' WHERE NOT EXISTS (SELECT 1 FROM `settings` WHERE `key` = 'fee_service_charge_percentage' LIMIT 1); INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`, `type`) SELECT 'fee_single', '500000', 'اختلاف قیمت پایه (ریال)', 1, 1, 'پیش‌فرض Laravel fee.single', 'number' @@ -114,9 +114,6 @@ INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `de SELECT 'has_page_price_trigger', 'true', 'صفحه هشدار قیمت', 1, 1, NULL, 'switch' WHERE NOT EXISTS (SELECT 1 FROM `settings` WHERE `key` = 'has_page_price_trigger' LIMIT 1); INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`, `type`) -SELECT 'is_requaire_referral', 'true', 'کد معرف اجباری (قدیمی)', 1, 1, NULL, 'switch' -WHERE NOT EXISTS (SELECT 1 FROM `settings` WHERE `key` = 'is_requaire_referral' LIMIT 1); -INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`, `type`) SELECT 'jibit_verification', 'true', 'تأیید کارت بانکی با جیبیت', 1, 1, 'true/false — BankAccountController', 'switch' WHERE NOT EXISTS (SELECT 1 FROM `settings` WHERE `key` = 'jibit_verification' LIMIT 1); INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`, `type`) @@ -178,7 +175,7 @@ INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `de SELECT 'montzar_password', '09133745569', 'رمز API همکار', 1, 1, NULL, 'text' WHERE NOT EXISTS (SELECT 1 FROM `settings` WHERE `key` = 'montzar_password' LIMIT 1); INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`, `type`) -SELECT 'montzar_price', 'true', 'قیمت از همکار (montzar)', 1, 1, 'گلد علی: false — zaarbox فعال', 'switch' +SELECT 'montzar_price', 'true', 'قیمت از همکار (montzar)', 1, 1, 'معمولاً false وقتی price_provider=zaarbox', 'switch' WHERE NOT EXISTS (SELECT 1 FROM `settings` WHERE `key` = 'montzar_price' LIMIT 1); INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`, `type`) SELECT 'montzar_product_id', '1', 'کد محصول همکار', 1, 1, NULL, 'number' @@ -262,7 +259,7 @@ INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `de SELECT 'referral_count_for_gift', '', 'تعداد معرف برای هدیه', 1, 0, NULL, 'number' WHERE NOT EXISTS (SELECT 1 FROM `settings` WHERE `key` = 'referral_count_for_gift' LIMIT 1); INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`, `type`) -SELECT 'referral_id', 'required', 'الزام کد معرف', 0, 1, 'required,', 'select' +SELECT 'referral_id', 'required', 'الزام کد معرف', 1, 1, 'required = اجباری؛ خالی = اختیاری|required,', 'select' WHERE NOT EXISTS (SELECT 1 FROM `settings` WHERE `key` = 'referral_id' LIMIT 1); INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`, `type`) SELECT 'referral_limit', '', 'محدودیت دعوت', 1, 0, NULL, 'text' @@ -490,7 +487,7 @@ UPDATE `settings` SET `title_fa` = 'اختلاف ریالی هر گرم (سفارش)', `can_edit` = 1, `type` = 'number', - `description` = 'goldAliii: 0', + `description` = 'مقدار نمونه: 0', `value` = '500000', `is_active` = 1, `updated_at` = NOW() @@ -508,7 +505,7 @@ UPDATE `settings` SET `title_fa` = 'درصد کارمزد سفارش', `can_edit` = 1, `type` = 'number', - `description` = 'goldAliii: 7%', + `description` = 'مقدار نمونه: 0.07', `value` = '0.005', `is_active` = 1, `updated_at` = NOW() @@ -603,15 +600,6 @@ UPDATE `settings` SET `is_active` = 1, `updated_at` = NOW() WHERE `key` = 'has_page_price_trigger'; -UPDATE `settings` SET - `title_fa` = 'کد معرف اجباری (قدیمی)', - `can_edit` = 1, - `type` = 'switch', - `description` = NULL, - `value` = 'true', - `is_active` = 1, - `updated_at` = NOW() -WHERE `key` = 'is_requaire_referral'; UPDATE `settings` SET `title_fa` = 'تأیید کارت بانکی با جیبیت', `can_edit` = 1, @@ -797,7 +785,7 @@ UPDATE `settings` SET `title_fa` = 'قیمت از همکار (montzar)', `can_edit` = 1, `type` = 'switch', - `description` = 'گلد علی: false — zaarbox فعال', + `description` = 'معمولاً false وقتی price_provider=zaarbox', `value` = 'true', `is_active` = 1, `updated_at` = NOW() @@ -1047,9 +1035,9 @@ UPDATE `settings` SET WHERE `key` = 'referral_count_for_gift'; UPDATE `settings` SET `title_fa` = 'الزام کد معرف', - `can_edit` = 0, + `can_edit` = 1, `type` = 'select', - `description` = 'required,', + `description` = 'required = اجباری؛ خالی = اختیاری|required,', `value` = 'required', `is_active` = 1, `updated_at` = NOW() @@ -1299,7 +1287,6 @@ WHERE `key` NOT IN ( 'has_page_permission', 'has_page_physical_gold', 'has_page_price_trigger', - 'is_requaire_referral', 'jibit_verification', 'key', 'logo_login', @@ -1375,4 +1362,26 @@ WHERE `key` NOT IN ( DELETE FROM `settings` WHERE `key` = 'price_method'; +-- legacy is_requaire_referral → referral_id +UPDATE `settings` AS r +SET + r.`value` = 'required', + r.`is_active` = 1, + r.`updated_at` = NOW() +WHERE r.`key` = 'referral_id' + AND EXISTS ( + SELECT 1 + FROM ( + SELECT `value`, `is_active` + FROM `settings` + WHERE `key` = 'is_requaire_referral' + LIMIT 1 + ) AS leg + WHERE leg.`is_active` = 1 + AND LOWER(TRIM(COALESCE(leg.`value`, ''))) IN ('true', '1', 'yes') + ) + AND TRIM(COALESCE(r.`value`, '')) <> 'required'; + +DELETE FROM `settings` WHERE `key` = 'is_requaire_referral'; + COMMIT; diff --git a/database/sql/abshode_rahimi_merge_goldali_catalog_patch.sql b/database/sql/abshode_rahimi_merge_goldali_catalog_patch.sql index 2bf8f60..c4b6c79 100644 --- a/database/sql/abshode_rahimi_merge_goldali_catalog_patch.sql +++ b/database/sql/abshode_rahimi_merge_goldali_catalog_patch.sql @@ -165,7 +165,7 @@ UPDATE `settings` SET `title_fa` = 'اختلاف ریالی هر گرم (سفارش)', `can_edit` = 1, `type` = 'number', - `description` = 'goldAliii: 0', + `description` = 'مقدار نمونه: 0', `value` = '500000', `is_active` = 1, `updated_at` = NOW() @@ -183,7 +183,7 @@ UPDATE `settings` SET `title_fa` = 'درصد کارمزد سفارش', `can_edit` = 1, `type` = 'number', - `description` = 'goldAliii: 7%', + `description` = 'مقدار نمونه: 0.07', `value` = '0.005', `is_active` = 1, `updated_at` = NOW() @@ -472,7 +472,7 @@ UPDATE `settings` SET `title_fa` = 'قیمت از همکار (montzar)', `can_edit` = 1, `type` = 'switch', - `description` = 'گلد علی: false — zaarbox فعال', + `description` = 'معمولاً false وقتی price_provider=zaarbox', `value` = 'true', `is_active` = 1, `updated_at` = NOW() diff --git a/database/sql/bourcecu_merge_goldali_catalog.sql b/database/sql/bourcecu_merge_goldali_catalog.sql index 236cf8d..a76a29d 100644 --- a/database/sql/bourcecu_merge_goldali_catalog.sql +++ b/database/sql/bourcecu_merge_goldali_catalog.sql @@ -147,10 +147,10 @@ INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `de SELECT 'referral_id', '', 'الزام کد معرف', 0, 0, 'required,', 'select' WHERE NOT EXISTS (SELECT 1 FROM `settings` WHERE `key` = 'referral_id' LIMIT 1); INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`, `type`) -SELECT 'fee_service_charge_percentage', '0.005', 'درصد کارمزد سفارش', 1, 1, 'goldAliii: 7%', 'number' +SELECT 'fee_service_charge_percentage', '0.005', 'درصد کارمزد سفارش', 1, 1, 'مقدار نمونه: 0.07', 'number' WHERE NOT EXISTS (SELECT 1 FROM `settings` WHERE `key` = 'fee_service_charge_percentage' LIMIT 1); INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`, `type`) -SELECT 'fee_cash', '500000', 'اختلاف ریالی هر گرم (سفارش)', 1, 1, 'goldAliii: 0', 'number' +SELECT 'fee_cash', '500000', 'اختلاف ریالی هر گرم (سفارش)', 1, 1, 'مقدار نمونه: 0', 'number' 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 'payping_start_url', '', 'آدرس شروع درگاه', 1, 0, NULL, 'text' @@ -198,7 +198,7 @@ INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `de SELECT 'tabanGohar_price', 'false', 'قیمت تابان گوهر', 1, 1, NULL, 'switch' WHERE NOT EXISTS (SELECT 1 FROM `settings` WHERE `key` = 'tabanGohar_price' LIMIT 1); INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`, `type`) -SELECT 'montzar_price', '', 'قیمت از همکار (montzar)', 1, 0, 'گلد علی: false — zaarbox فعال', 'switch' +SELECT 'montzar_price', '', 'قیمت از همکار (montzar)', 1, 0, 'معمولاً false وقتی price_provider=zaarbox', 'switch' WHERE NOT EXISTS (SELECT 1 FROM `settings` WHERE `key` = 'montzar_price' LIMIT 1); INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`, `type`) SELECT 'montzar_mobile', '', 'موبایل API همکار', 1, 0, NULL, 'text' @@ -690,7 +690,7 @@ UPDATE `settings` SET `title_fa` = 'درصد کارمزد سفارش', `can_edit` = 1, `type` = 'number', - `description` = 'goldAliii: 7%', + `description` = 'مقدار نمونه: 0.07', `value` = '0.005', `is_active` = 1, `updated_at` = NOW() @@ -699,7 +699,7 @@ UPDATE `settings` SET `title_fa` = 'اختلاف ریالی هر گرم (سفارش)', `can_edit` = 1, `type` = 'number', - `description` = 'goldAliii: 0', + `description` = 'مقدار نمونه: 0', `value` = '500000', `is_active` = 1, `updated_at` = NOW() @@ -843,7 +843,7 @@ UPDATE `settings` SET `title_fa` = 'قیمت از همکار (montzar)', `can_edit` = 1, `type` = 'switch', - `description` = 'گلد علی: false — zaarbox فعال', + `description` = 'معمولاً false وقتی price_provider=zaarbox', `value` = '', `is_active` = 0, `updated_at` = NOW() diff --git a/database/sql/generate_merge_sql.py b/database/sql/generate_merge_sql.py index 345e975..2cc575e 100644 --- a/database/sql/generate_merge_sql.py +++ b/database/sql/generate_merge_sql.py @@ -1,7 +1,7 @@ #!/usr/bin/env python3 """ Generate client merge SQL (settings + const) from: - - goldAli catalog template (abshode_rahimi_merge_goldali_catalog.sql UPDATE blocks) + - reference catalog template (abshode_rahimi_merge_goldali_catalog.sql UPDATE blocks) - client JSON: { "settings": [...], "const": [...] } Usage: @@ -25,7 +25,7 @@ CONST_CATALOG: list[dict] = [ {"key": "header_banner", "title_fa": "بنر بالای صفحه", "default": ""}, {"key": "app_closed", "title_fa": "بسته بودن اپ", "default": "false"}, {"key": "main_product", "title_fa": "محصول آبشده پیش‌فرض", "default": "13"}, - {"key": "gram", "title_fa": "گرم ثبت‌نام", "default": ""}, + {"key": "gram", "title_fa": "گرم ثبت‌نام", "default": "0"}, {"key": "first_customer_wallet_value", "title_fa": "حداقل اولین خرید", "default": ""}, {"key": "jibit_counter", "title_fa": "شمارنده جیبیت", "default": "0"}, {"key": "price", "title_fa": "لیست قیمت TGJU (JSON)", "default": "[]"}, @@ -41,8 +41,45 @@ SETTINGS_SKIP = { "montzar_order_response", "montzar_last_product_log", "liman_token", + "is_requaire_referral", } +# metadata overrides for catalog keys (e.g. editable in admin panel) +SETTINGS_META_OVERRIDES: dict[str, dict] = { + "referral_id": { + "can_edit": 1, + "description": "required = اجباری؛ خالی = اختیاری|required,", + }, +} + +LEGACY_SETTINGS_DELETE = ("is_requaire_referral",) + + +def legacy_referral_migration_sql() -> list[str]: + """اگر is_requaire_referral قدیمی روشن بود → referral_id = required""" + return [ + "-- legacy is_requaire_referral → referral_id", + "UPDATE `settings` AS r", + "SET", + " r.`value` = 'required',", + " r.`is_active` = 1,", + " r.`updated_at` = NOW()", + "WHERE r.`key` = 'referral_id'", + " AND EXISTS (", + " SELECT 1", + " FROM (", + " SELECT `value`, `is_active`", + " FROM `settings`", + " WHERE `key` = 'is_requaire_referral'", + " LIMIT 1", + " ) AS leg", + " WHERE leg.`is_active` = 1", + " AND LOWER(TRIM(COALESCE(leg.`value`, ''))) IN ('true', '1', 'yes')", + " )", + " AND TRIM(COALESCE(r.`value`, '')) <> 'required';", + "", + ] + CONST_SKIP_PREFIXES = ("goldir",) CONST_SKIP_KEYS = {"log", "last_order_log"} @@ -168,7 +205,7 @@ def generate_settings_sql( ) -> str: lines: list[str] = [ "-- =============================================================================", - f"-- {client_name_fa} — ادغام settings با کاتالوگ goldAliii", + f"-- {client_name_fa} — ادغام settings با کاتالوگ واحد", "--", f"-- منبع مقادیر: {client_name}_client.json", f"-- قالب کلیدها: goldali ({len(catalog)} کلید)", @@ -176,6 +213,7 @@ def generate_settings_sql( "-- قوانین:", "-- • کلید مشترک → value از کلاینت، metadata از کاتالوگ", "-- • کلید کاتالوگ بدون مقدار در کلاینت → value=''، is_active=0", + "-- • هر setting با value پر → is_active=1 (الزام ConfigService)", "-- • کلیدهای اضافی کلاینت → DELETE", "--", f"-- قبل از اجرا: USE دیتابیس {client_name_fa} + بکاپ", @@ -197,7 +235,9 @@ def generate_settings_sql( catalog_keys = sorted(catalog.keys()) for key in catalog_keys: - meta = catalog[key] + meta = dict(catalog[key]) + if key in SETTINGS_META_OVERRIDES: + meta.update(SETTINGS_META_OVERRIDES[key]) val = client_settings.get(key) if val is None: val = "" @@ -214,7 +254,9 @@ def generate_settings_sql( lines.extend(["", "-- 2) UPDATE", ""]) for key in catalog_keys: - meta = catalog[key] + meta = dict(catalog[key]) + if key in SETTINGS_META_OVERRIDES: + meta.update(SETTINGS_META_OVERRIDES[key]) val = client_settings.get(key) if val is None: val = "" @@ -243,6 +285,11 @@ def generate_settings_sql( " `updated_at` = NOW()", "WHERE `key` LIKE 'logo_login%' AND `key` <> 'logo_login';", "", + "-- 3b) legacy is_requaire_referral → referral_id (قبل از DELETE)", + "", + ]) + lines.extend(legacy_referral_migration_sql()) + lines.extend([ "-- 4) DELETE extras", "", "DELETE FROM `settings`", @@ -256,6 +303,20 @@ def generate_settings_sql( "", "DELETE FROM `settings` WHERE `key` = 'price_method';", "", + "-- 4b) حذف کلیدهای legacy", + "", + ]) + for legacy_key in LEGACY_SETTINGS_DELETE: + lines.append(f"DELETE FROM `settings` WHERE `key` = {sql_str(legacy_key)};") + lines.extend([ + "", + "-- 5) is_active — ConfigService فقط وقتی is_active=1 و value پر باشد می‌خواند", + "", + "UPDATE `settings` SET", + " `is_active` = 1,", + " `updated_at` = NOW()", + "WHERE TRIM(COALESCE(`value`, '')) <> '';", + "", "COMMIT;", "", ]) @@ -269,7 +330,7 @@ def generate_const_sql( ) -> str: lines: list[str] = [ "-- =============================================================================", - f"-- {client_name_fa} — ادغام const با کاتالوگ goldAliii", + f"-- {client_name_fa} — ادغام const با کاتالوگ واحد", "--", f"-- منبع مقادیر: {client_name}_client.json", "-- قالب: 10 کلید goldali", diff --git a/database/sql/goldali_compat_patch.sql b/database/sql/goldali_compat_patch.sql index bfcb90e..8d8e0b6 100644 --- a/database/sql/goldali_compat_patch.sql +++ b/database/sql/goldali_compat_patch.sql @@ -7,7 +7,7 @@ START TRANSACTION; -- UPDATE `settings` SET `value` = 'zaarbox' WHERE `key` = 'price_provider'; UPDATE `settings` SET `value` = 'main_product' WHERE `key` = 'price_provider'; INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`) -SELECT 'price_provider', 'main_product', 'منبع قیمت', 1, 1, 'main_product برای گلد علی' +SELECT 'price_provider', 'main_product', 'منبع قیمت', 1, 1, 'montzar | taban_gohar | main_product | zaarbox' WHERE NOT EXISTS (SELECT 1 FROM `settings` WHERE `key` = 'price_provider' LIMIT 1); INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`) SELECT 'main_product', '13', 'شناسه محصول آبشده', 1, 1, 'اول settings، بعد const' @@ -92,7 +92,7 @@ WHERE NOT EXISTS (SELECT 1 FROM `const` WHERE `key` = 'app_closed' LIMIT 1); -- کارمزد سفارش (مثل config/fee.php برنچ goldAliii — نه fee_single نمایش قیمت) INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`) -SELECT 'fee_cash', '0', 'اختلاف ریالی هر گرم (سفارش)', 1, 1, 'گلد علی: 0' +SELECT 'fee_cash', '0', 'اختلاف ریالی هر گرم (سفارش)', 1, 1, 'مقدار نمونه: 0' 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`) diff --git a/database/sql/goldali_database_settings.sql b/database/sql/goldali_database_settings.sql index c3ada39..cbe32f4 100644 --- a/database/sql/goldali_database_settings.sql +++ b/database/sql/goldali_database_settings.sql @@ -37,7 +37,7 @@ UPDATE `settings` SET `value` = '500000' WHERE `key` IN ('fee_single', 'buy_fee' -- ۲) کارمزد سفارش — مثل config/fee.php برنچ goldAliii (اجباری برای /customer/single/order) -- ----------------------------------------------------------------------------- INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`) -SELECT 'fee_cash', '0', 'اختلاف ریالی هر گرم (سفارش)', 1, 1, 'goldAliii: 0' +SELECT 'fee_cash', '0', 'اختلاف ریالی هر گرم (سفارش)', 1, 1, 'مقدار نمونه: 0' WHERE NOT EXISTS (SELECT 1 FROM `settings` WHERE `key` = 'fee_cash' LIMIT 1); -- مثل محصول ۱۳ (percent_fee_buy=0.02) — نه 0.07؛ سفارش‌های قدیمی موفق هم 0.02 بودند INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`) @@ -50,7 +50,7 @@ UPDATE `settings` SET `value` = '0.02' WHERE `key` = 'fee_service_charge_percent -- ۳) ثبت‌نام / معرف / APIها -- ----------------------------------------------------------------------------- INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`) -SELECT 'referral_id', 'required', 'الزام کد معرف', 0, 1, NULL +SELECT 'referral_id', 'required', 'الزام کد معرف', 1, 1, 'required = اجباری؛ خالی = اختیاری|required,' WHERE NOT EXISTS (SELECT 1 FROM `settings` WHERE `key` = 'referral_id' LIMIT 1); INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`) SELECT 'open_register', '1', 'ثبت‌نام باز', 1, 1, NULL diff --git a/database/sql/goldali_fee_order_patch.sql b/database/sql/goldali_fee_order_patch.sql index c4f2cdf..45b2372 100644 --- a/database/sql/goldali_fee_order_patch.sql +++ b/database/sql/goldali_fee_order_patch.sql @@ -3,7 +3,7 @@ START TRANSACTION; INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`) -SELECT 'fee_cash', '0', 'اختلاف ریالی هر گرم (سفارش)', 1, 1, 'مثل goldAliii config/fee.cash' +SELECT 'fee_cash', '0', 'اختلاف ریالی هر گرم (سفارش)', 1, 1, 'مثل config/fee.cash' 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`) diff --git a/database/sql/goldali_payping_patch.sql b/database/sql/goldali_payping_patch.sql index 06be471..288e551 100644 --- a/database/sql/goldali_payping_patch.sql +++ b/database/sql/goldali_payping_patch.sql @@ -11,7 +11,7 @@ SELECT 'payping_verify_url', 'https://payment.goldaliii.com/payment/verify', 'آ WHERE NOT EXISTS (SELECT 1 FROM `settings` WHERE `key` = 'payping_verify_url' LIMIT 1); INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`) -SELECT 'payping_gateway_name', 'sepal', 'نام gateway درگاه', 1, 1, 'گلد علی: sepal' +SELECT 'payping_gateway_name', 'sepal', 'نام gateway درگاه', 1, 1, 'مثال: sepal' WHERE NOT EXISTS (SELECT 1 FROM `settings` WHERE `key` = 'payping_gateway_name' LIMIT 1); INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`) diff --git a/database/sql/goldali_post_merge_settings.sql b/database/sql/goldali_post_merge_settings.sql index d1ac89c..bd09676 100644 --- a/database/sql/goldali_post_merge_settings.sql +++ b/database/sql/goldali_post_merge_settings.sql @@ -28,7 +28,6 @@ UPDATE `settings` SET `title_fa` = 'عنوان PWA' WHERE `key` = 'title_pwa' AN UPDATE `settings` SET `title_fa` = 'عنوان favicon' WHERE `key` = 'title_fav' AND (`title_fa` IS NULL OR TRIM(`title_fa`) = ''); UPDATE `settings` SET `title_fa` = 'متن قوانین' WHERE `key` = 'text_rule' AND (`title_fa` IS NULL OR TRIM(`title_fa`) = ''); UPDATE `settings` SET `title_fa` = 'متن درباره ما' WHERE `key` = 'text_about' AND (`title_fa` IS NULL OR TRIM(`title_fa`) = ''); -UPDATE `settings` SET `title_fa` = 'کد معرف اجباری (قدیمی)' WHERE `key` = 'is_requaire_referral' AND (`title_fa` IS NULL OR TRIM(`title_fa`) = ''); UPDATE `settings` SET `title_fa` = 'صفحه کسب درآمد' WHERE `key` = 'has_page_earn_money' AND (`title_fa` IS NULL OR TRIM(`title_fa`) = ''); UPDATE `settings` SET `title_fa` = 'صفحه صندوق' WHERE `key` = 'has_page_fund' AND (`title_fa` IS NULL OR TRIM(`title_fa`) = ''); UPDATE `settings` SET `title_fa` = 'صفحه مجوزها' WHERE `key` = 'has_page_permission' AND (`title_fa` IS NULL OR TRIM(`title_fa`) = ''); @@ -56,7 +55,7 @@ UPDATE `const` SET `title_fa` = 'بنر بالای صفحه' WHERE `key` = 'head -- منبع قیمت: اتحادیه (تنها منبع فعال در کد مرج‌شده) INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`) SELECT 'price_provider', 'main_product', 'منبع قیمت', - 1, 1, 'گلد علی: main_product — montzar | taban_gohar | main_product' + 1, 1, 'montzar | taban_gohar | main_product | zaarbox' WHERE NOT EXISTS (SELECT 1 FROM `settings` WHERE `key` = 'price_provider' LIMIT 1); INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`) SELECT 'main_product', '13', 'شناسه محصول آبشده', 1, 1, 'اول settings، بعد const' @@ -76,10 +75,36 @@ INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `de SELECT 'sell_fee', '500000', 'سود/اختلاف فروش (ریال)', 1, 1, 'اگر خالی باشد از fee_single' WHERE NOT EXISTS (SELECT 1 FROM `settings` WHERE `key` = 'sell_fee' LIMIT 1); --- ثبت‌نام: کد referral_id را هم چک می‌کند (کنار is_requaire_referral) +-- ثبت‌نام: فقط referral_id (required = اجباری) INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`) -SELECT 'referral_id', 'required', 'الزام کد معرف', 0, 1, 'required یا خالی' +SELECT 'referral_id', 'required', 'الزام کد معرف', 1, 1, 'required = اجباری؛ خالی = اختیاری|required,' WHERE NOT EXISTS (SELECT 1 FROM `settings` WHERE `key` = 'referral_id' LIMIT 1); +UPDATE `settings` SET + `can_edit` = 1, + `description` = 'required = اجباری؛ خالی = اختیاری|required,' +WHERE `key` = 'referral_id'; + +-- legacy is_requaire_referral → referral_id +UPDATE `settings` AS r +SET + r.`value` = 'required', + r.`is_active` = 1, + r.`updated_at` = NOW() +WHERE r.`key` = 'referral_id' + AND EXISTS ( + SELECT 1 + FROM ( + SELECT `value`, `is_active` + FROM `settings` + WHERE `key` = 'is_requaire_referral' + LIMIT 1 + ) AS leg + WHERE leg.`is_active` = 1 + AND LOWER(TRIM(COALESCE(leg.`value`, ''))) IN ('true', '1', 'yes') + ) + AND TRIM(COALESCE(r.`value`, '')) <> 'required'; + +DELETE FROM `settings` WHERE `key` = 'is_requaire_referral'; INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`) SELECT 'profit_gold_api_enabled', 'true', 'API سود طلا', 0, 1, NULL @@ -131,7 +156,7 @@ SELECT 'payping_verify_url', 'https://payment.goldaliii.com/payment/verify', 'آ WHERE NOT EXISTS (SELECT 1 FROM `settings` WHERE `key` = 'payping_verify_url' LIMIT 1); INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`) -SELECT 'payping_gateway_name', 'sepal', 'نام gateway درگاه', 1, 1, 'گلد علی: sepal' +SELECT 'payping_gateway_name', 'sepal', 'نام gateway درگاه', 1, 1, 'مثال: sepal' WHERE NOT EXISTS (SELECT 1 FROM `settings` WHERE `key` = 'payping_gateway_name' LIMIT 1); INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`) @@ -169,7 +194,7 @@ WHERE NOT EXISTS (SELECT 1 FROM `const` WHERE `key` = 'app_closed' LIMIT 1); -- WHERE `key` IN ( -- 'price_provider', 'profit_gold_api_enabled', -- 'fee_single', 'buy_fee', 'sell_fee', --- 'referral_id', 'is_requaire_referral', +-- 'referral_id', -- 'payping_start_url', 'payping_verify_url', 'payping_gateway_name' -- ) -- ORDER BY `key`; diff --git a/database/sql/goldali_settings_full_catalog.sql b/database/sql/goldali_settings_full_catalog.sql index c2c92ca..cbb9fa6 100644 --- a/database/sql/goldali_settings_full_catalog.sql +++ b/database/sql/goldali_settings_full_catalog.sql @@ -44,7 +44,7 @@ SELECT 'tabanGohar_price', 'false', 'قیمت تابان گوهر', 1, 1, NULL WHERE NOT EXISTS (SELECT 1 FROM `settings` WHERE `key` = 'tabanGohar_price' LIMIT 1); INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`) -SELECT 'montzar_price', 'false', 'قیمت از همکار (montzar)', 1, 1, 'گلد علی: false — zaarbox فعال' +SELECT 'montzar_price', 'false', 'قیمت از همکار (montzar)', 1, 1, 'معمولاً false وقتی price_provider=zaarbox' WHERE NOT EXISTS (SELECT 1 FROM `settings` WHERE `key` = 'montzar_price' LIMIT 1); -- Montzar — برای تعویض provider یا پر شدن خودکار توسط cron @@ -338,7 +338,7 @@ UPDATE `settings` SET `type` = 'longtext' WHERE `key` IN ('text_rule', 'text_abo -- select (+ گزینه‌ها در description) UPDATE `settings` SET `type` = 'select', `description` = 'montzar,zaarbox,main_product,etehadie,taban_gohar' WHERE `key` = 'price_provider'; -UPDATE `settings` SET `type` = 'select', `description` = 'required,' WHERE `key` = 'referral_id'; +UPDATE `settings` SET `type` = 'select', `description` = 'required = اجباری؛ خالی = اختیاری|required,', `can_edit` = 1 WHERE `key` = 'referral_id'; UPDATE `settings` SET `type` = 'select', `description` = 'sepal,' WHERE `key` = 'payping_gateway_name'; -- switch @@ -348,7 +348,7 @@ UPDATE `settings` SET `type` = 'switch' WHERE `key` IN ( 'send_to_tahesab', 'profit_gold_api_enabled', 'payping_round_toman', 'payping_strict_failed_withdraw', 'has_page_earn_money', 'has_page_fund', 'has_page_permission', 'has_page_price_trigger', 'has_page_physical_gold', 'has_chat', 'charge_notif', 'group_sms', 'display_montzar', - 'montzar_closed', 'montzar_open_buy', 'montzar_open_sell', 'is_requaire_referral', + 'montzar_closed', 'montzar_open_buy', 'montzar_open_sell', 'product_update_price_on_list', 'product_auto_close_open_on_list', 'payping_fin_sync_enabled', 'fee_free', 'external_order_api_enabled' ); diff --git a/database/sql/goldali_zaarbox_price.sql b/database/sql/goldali_zaarbox_price.sql index 3f98287..07eaca4 100644 --- a/database/sql/goldali_zaarbox_price.sql +++ b/database/sql/goldali_zaarbox_price.sql @@ -22,7 +22,7 @@ UPDATE `settings` SET `value` = 'estjt_41670cdf0270a874b68a0a95a235f9a1' WHERE ` -- نمودار: chart_id = UUID از /api/history/{id} — اگر خالی باشد ca3800a0-1f57-3528-b963-178f9168e04f INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`) -SELECT 'chart_id', '', 'UUID نمودار Zaarbox', 1, 1, 'خالی = پیش‌فرض آبشده گلد علی' +SELECT 'chart_id', '', 'UUID نمودار Zaarbox', 1, 1, 'خالی = UUID پیش‌فرض' WHERE NOT EXISTS (SELECT 1 FROM `settings` WHERE `key` = 'chart_id' LIMIT 1); COMMIT; diff --git a/database/sql/sources/abaeigold_client.json b/database/sql/sources/abaeigold_client.json index bca5f85..5bc5510 100644 --- a/database/sql/sources/abaeigold_client.json +++ b/database/sql/sources/abaeigold_client.json @@ -26,7 +26,6 @@ {"key": "admin_url", "value": "https://abaeigold.ir/admin/"}, {"key": "tahesab_token", "value": null}, {"key": "tahesab_db", "value": null}, - {"key": "is_requaire_referral", "value": "true"}, {"key": "has_page_earn_money", "value": "false"}, {"key": "has_page_fund", "value": "true"}, {"key": "has_page_permission", "value": "true"}, @@ -54,6 +53,7 @@ {"key": "group_sms", "value": "false"}, {"key": "bale_bot_token", "value": null}, {"key": "jibit_verification", "value": "false"}, + {"key": "register_jibit_verify", "value": "true"}, {"key": "gift_for_referrer", "value": "0.005"}, {"key": "display_montzar", "value": "true"}, {"key": "referral_limit", "value": ""},