fix sql
This commit is contained in:
@@ -428,7 +428,9 @@ WHERE NOT EXISTS (SELECT 1 FROM `settings` WHERE `key` = 'fee_service_charge_per
|
||||
|
||||
-- fee_deduct_from_gold: value پیشفرض false فقط در INSERT اولیه؛ اجرای مجدد value/is_active را overwrite نمیکند
|
||||
INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`, `type`)
|
||||
SELECT 'fee_deduct_from_gold', 'false', 'اعمال مبلغ دقیق در معامله مشتری', 1, 1, NULL, 'switch'
|
||||
SELECT 'fee_deduct_from_gold', 'false', 'اعمال مبلغ دقیق در معامله مشتری', 1, 1,
|
||||
'روشن: مشتری دقیقاً همان مبلغ یا وزنی را که وارد کرده دریافت میکند. در فروش، مثلاً ۱۰۰ میلیون ریال درخواست → همان ۱۰۰ میلیون واریز و کارمزد از طلای کیف کسر میشود. در خرید، مثلاً ۱۰ گرم درخواست → همان ۱۰ گرم واریز و کارمزد به ریال قابل پرداخت اضافه میشود. خاموش (پیشفرض): در فروش کارمزد از مبلغ ریالی واریزی کم میشود (مشتری مبلغ کمتری میگیرد). در خرید کارمزد از وزن طلای واریزی کم میشود (مشتری طلای کمتری میگیرد).',
|
||||
'switch'
|
||||
WHERE NOT EXISTS (SELECT 1 FROM `settings` WHERE `key` = 'fee_deduct_from_gold' LIMIT 1);
|
||||
|
||||
INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`, `type`)
|
||||
@@ -901,7 +903,9 @@ UPDATE `settings` SET `description` = 'مبلغ اضافه (ریال) روی ق
|
||||
UPDATE `settings` SET `description` = 'مبلغ کسر (ریال) از قیمت پایه برای سمت فروش. خالی = استفاده از «اختلاف پایه».' WHERE `key` = 'sell_fee';
|
||||
UPDATE `settings` SET `description` = 'درصد کارمزد هر سفارش از مبلغ معامله (اعشاری؛ مثلاً ۰٫۰۰۵ یعنی نیم در هزار).' WHERE `key` = 'fee_service_charge_percentage';
|
||||
UPDATE `settings` SET
|
||||
`title_fa` = 'اعمال مبلغ دقیق در معامله مشتری',
|
||||
`type` = 'switch',
|
||||
`can_edit` = 1,
|
||||
`description` = 'روشن: مشتری دقیقاً همان مبلغ یا وزنی را که وارد کرده دریافت میکند. در فروش، مثلاً ۱۰۰ میلیون ریال درخواست → همان ۱۰۰ میلیون واریز و کارمزد از طلای کیف کسر میشود. در خرید، مثلاً ۱۰ گرم درخواست → همان ۱۰ گرم واریز و کارمزد به ریال قابل پرداخت اضافه میشود. خاموش (پیشفرض): در فروش کارمزد از مبلغ ریالی واریزی کم میشود (مشتری مبلغ کمتری میگیرد). در خرید کارمزد از وزن طلای واریزی کم میشود (مشتری طلای کمتری میگیرد).'
|
||||
WHERE `key` = 'fee_deduct_from_gold';
|
||||
UPDATE `settings` SET `description` = 'تعداد اولین سفارشهای هر کاربر که از کارمزد معاف میشوند. ۰ = غیرفعال.' WHERE `key` = 'fee_free';
|
||||
@@ -1200,10 +1204,26 @@ UPDATE `settings` SET `type` = 'number' WHERE `key` IN (
|
||||
'deposit_sms_support_number'
|
||||
);
|
||||
|
||||
-- ---------------------------------------------------------------------------
|
||||
-- تثبیت نهایی fee_deduct_from_gold — آخرین override قبل از COMMIT
|
||||
-- (title_fa / description / type / can_edit — value و is_active دست نمیخورند)
|
||||
-- ---------------------------------------------------------------------------
|
||||
UPDATE `settings` SET
|
||||
`title_fa` = 'اعمال مبلغ دقیق در معامله مشتری',
|
||||
`type` = 'switch',
|
||||
`can_edit` = 1,
|
||||
`description` = 'روشن: مشتری دقیقاً همان مبلغ یا وزنی را که وارد کرده دریافت میکند. در فروش، مثلاً ۱۰۰ میلیون ریال درخواست → همان ۱۰۰ میلیون واریز و کارمزد از طلای کیف کسر میشود. در خرید، مثلاً ۱۰ گرم درخواست → همان ۱۰ گرم واریز و کارمزد به ریال قابل پرداخت اضافه میشود. خاموش (پیشفرض): در فروش کارمزد از مبلغ ریالی واریزی کم میشود (مشتری مبلغ کمتری میگیرد). در خرید کارمزد از وزن طلای واریزی کم میشود (مشتری طلای کمتری میگیرد).'
|
||||
WHERE `key` = 'fee_deduct_from_gold';
|
||||
|
||||
COMMIT;
|
||||
|
||||
SELECT 'deploy_settings_const.sql finished' AS status;
|
||||
|
||||
-- بررسی fee_deduct_from_gold (desc_preview باید با «مشتری دقیقاً» شروع شود):
|
||||
SELECT `key`, `title_fa`, LEFT(`description`, 60) AS desc_preview, `can_edit`, `type`, `value`
|
||||
FROM `settings`
|
||||
WHERE `key` = 'fee_deduct_from_gold';
|
||||
|
||||
-- بعد از اجرا (اختیاری):
|
||||
-- SELECT `key`, `title_fa`, `value`, `type`, `is_active` FROM `settings` ORDER BY `key`;
|
||||
-- SELECT `key`, `value`, `title_fa` FROM `const` ORDER BY `key`;
|
||||
|
||||
@@ -426,7 +426,9 @@ WHERE NOT EXISTS (SELECT 1 FROM `settings` WHERE `key` = 'fee_service_charge_per
|
||||
|
||||
-- fee_deduct_from_gold: value پیشفرض false فقط در INSERT اولیه؛ اجرای مجدد value/is_active را overwrite نمیکند
|
||||
INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`, `type`)
|
||||
SELECT 'fee_deduct_from_gold', 'false', 'اعمال مبلغ دقیق در معامله مشتری', 1, 1, NULL, 'switch'
|
||||
SELECT 'fee_deduct_from_gold', 'false', 'اعمال مبلغ دقیق در معامله مشتری', 1, 1,
|
||||
'روشن: مشتری دقیقاً همان مبلغ یا وزنی را که وارد کرده دریافت میکند. در فروش، مثلاً ۱۰۰ میلیون ریال درخواست → همان ۱۰۰ میلیون واریز و کارمزد از طلای کیف کسر میشود. در خرید، مثلاً ۱۰ گرم درخواست → همان ۱۰ گرم واریز و کارمزد به ریال قابل پرداخت اضافه میشود. خاموش (پیشفرض): در فروش کارمزد از مبلغ ریالی واریزی کم میشود (مشتری مبلغ کمتری میگیرد). در خرید کارمزد از وزن طلای واریزی کم میشود (مشتری طلای کمتری میگیرد).',
|
||||
'switch'
|
||||
WHERE NOT EXISTS (SELECT 1 FROM `settings` WHERE `key` = 'fee_deduct_from_gold' LIMIT 1);
|
||||
|
||||
INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`, `type`)
|
||||
@@ -929,8 +931,9 @@ UPDATE `settings` SET `description` = 'مبلغ اضافه (ریال) روی ق
|
||||
UPDATE `settings` SET `description` = 'مبلغ کسر (ریال) از قیمت پایه برای سمت فروش. خالی = استفاده از «اختلاف پایه».' WHERE `key` = 'sell_fee';
|
||||
UPDATE `settings` SET `description` = 'درصد کارمزد هر سفارش از مبلغ معامله (اعشاری؛ مثلاً ۰٫۰۰۵ یعنی نیم در هزار).' WHERE `key` = 'fee_service_charge_percentage';
|
||||
UPDATE `settings` SET
|
||||
`type` = 'switch',
|
||||
`title_fa` = 'اعمال مبلغ دقیق در معامله مشتری',
|
||||
`type` = 'switch',
|
||||
`can_edit` = 1,
|
||||
`description` = 'روشن: مشتری دقیقاً همان مبلغ یا وزنی را که وارد کرده دریافت میکند. در فروش، مثلاً ۱۰۰ میلیون ریال درخواست → همان ۱۰۰ میلیون واریز و کارمزد از طلای کیف کسر میشود. در خرید، مثلاً ۱۰ گرم درخواست → همان ۱۰ گرم واریز و کارمزد به ریال قابل پرداخت اضافه میشود. خاموش (پیشفرض): در فروش کارمزد از مبلغ ریالی واریزی کم میشود (مشتری مبلغ کمتری میگیرد). در خرید کارمزد از وزن طلای واریزی کم میشود (مشتری طلای کمتری میگیرد).'
|
||||
WHERE `key` = 'fee_deduct_from_gold';
|
||||
UPDATE `settings` SET `description` = 'تعداد اولین سفارشهای هر کاربر که از کارمزد معاف میشوند. ۰ = غیرفعال.' WHERE `key` = 'fee_free';
|
||||
@@ -1042,21 +1045,61 @@ WHERE `key` IN ('text_rule', 'text_about', 'support_messenger_text', 'invite_lin
|
||||
|
||||
|
||||
-- ---------------------------------------------------------------------------
|
||||
-- sync can_edit — برای کلیدهای موجود هم طبق ساختار همین SQL تنظیم شود
|
||||
-- sync can_edit — برای کلیدهای موجود هم طبق ساختار deploy_settings_const.sql
|
||||
-- نکته: value اینجا عمداً آپدیت نمیشود؛ مقدار موجود کارفرما/پنل حفظ میشود.
|
||||
-- ---------------------------------------------------------------------------
|
||||
UPDATE `settings` s
|
||||
JOIN (
|
||||
SELECT 'admin_url' AS `key`, 1 AS `can_edit`
|
||||
UNION ALL SELECT 'app_url', 1
|
||||
UNION ALL SELECT 'auto_active_customer', 1
|
||||
UNION ALL SELECT 'balance_report_exclude_customer_id', 1
|
||||
UNION ALL SELECT 'bale_bot_token', 0
|
||||
UNION ALL SELECT 'buy_fee', 1
|
||||
UNION ALL SELECT 'charge_notif', 1
|
||||
UNION ALL SELECT 'chart_id', 1
|
||||
UNION ALL SELECT 'chart_use_local_data', 1
|
||||
UNION ALL SELECT 'close_price', 1
|
||||
|
||||
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',
|
||||
'external_order_api_enabled',
|
||||
'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',
|
||||
'montify_name',
|
||||
'montzar_base_url', 'montzar_closed',
|
||||
'montzar_diff', 'montzar_last_product_log', 'montzar_live_price', 'montzar_mazaneh',
|
||||
'montzar_order_response', 'montzar_token',
|
||||
'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_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',
|
||||
'sse_path',
|
||||
'tahesab_bank_account', 'tahesab_db', 'tahesab_host', 'tahesab_port', 'tahesab_token',
|
||||
'telegram_bot_token',
|
||||
'unit',
|
||||
'up_price', 'down_price',
|
||||
'wss_enabled',
|
||||
'zaarbox_api_url', 'zaarbox_price_key'
|
||||
);
|
||||
|
||||
UPDATE `settings` SET `can_edit` = 1 WHERE `key` IN (
|
||||
'name_fa',
|
||||
'auto_active_customer', 'balance_report_exclude_customer_id',
|
||||
'buy_fee', 'charge_notif', 'close_price',
|
||||
'deposit_sms_support_number', 'endDay',
|
||||
'fee_deduct_from_gold', 'fee_free', 'fee_service_charge_percentage', 'fee_single',
|
||||
'gift_for_referral', 'gift_for_referrer',
|
||||
'invite_link_text',
|
||||
'jibit_verification',
|
||||
'main_product_price',
|
||||
'min_first_buy', 'min_withdraw', 'minimum_sell',
|
||||
'montzar_mobile', 'montzar_open_buy', 'montzar_open_sell',
|
||||
'montzar_password', 'montzar_price', 'montzar_product_id',
|
||||
'open_register',
|
||||
'referral_bonus_amount', 'referral_id', 'referral_limit', 'referral_gift_on_first_order',
|
||||
'register_jibit_verify', 'register_referral_bonus_message', 'register_referral_sms_to_referrer',
|
||||
'sell_fee', 'show_last_price', 'startDay',
|
||||
'support_messenger', 'support_messenger_id', 'support_messenger_text',
|
||||
'text_about', 'text_rule'
|
||||
);
|
||||
|
||||
-- تفکیک نهایی type (بعد از همه batchها — override روی دیتابیس موجود)
|
||||
UPDATE `settings` SET `type` = 'price' WHERE `key` IN (
|
||||
'fee_single', 'buy_fee', 'sell_fee',
|
||||
|
||||
@@ -1,7 +1,9 @@
|
||||
-- سوییچ «اعمال مبلغ دقیق در معامله مشتری» — برای نصبهای موجود (مثلاً abshodehrahimi)
|
||||
-- سوییچ «اعمال مبلغ دقیق در معامله مشتری» — برای نصبهای موجود
|
||||
-- idempotent: چند بار قابل اجرا
|
||||
-- • اولین بار: INSERT با value='false' (پیشفرض خاموش)
|
||||
-- • اجرای مجدد: value و is_active دست نمیخورند — فقط title_fa / description / type / can_edit
|
||||
-- • اجرای مجدد: value و is_active دست نمیخورند — title_fa / description / type / can_edit همیشه override میشوند
|
||||
|
||||
START TRANSACTION;
|
||||
|
||||
INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`, `type`)
|
||||
SELECT 'fee_deduct_from_gold', 'false', 'اعمال مبلغ دقیق در معامله مشتری', 1, 1,
|
||||
@@ -15,3 +17,10 @@ SET `title_fa` = 'اعمال مبلغ دقیق در معامله مشتری',
|
||||
`type` = 'switch',
|
||||
`can_edit` = 1
|
||||
WHERE `key` = 'fee_deduct_from_gold';
|
||||
|
||||
COMMIT;
|
||||
|
||||
-- بررسی (باید desc_preview با «مشتری دقیقاً» شروع شود):
|
||||
SELECT `key`, `title_fa`, LEFT(`description`, 60) AS desc_preview, `can_edit`, `type`
|
||||
FROM `settings`
|
||||
WHERE `key` = 'fee_deduct_from_gold';
|
||||
|
||||
Reference in New Issue
Block a user