added merge wallet

This commit is contained in:
2026-06-10 16:57:31 +03:30
parent bb94f7a5ba
commit 285767fcd3
5 changed files with 202 additions and 10 deletions
@@ -0,0 +1,22 @@
-- ============================================================================
-- کلید main_wallet_products — اتصال محصولات به کیف اصلی (gold)
--
-- محصولاتی که id آن‌ها در این کلید است، دارایی جدا ندارند؛
-- موجودی‌شان همان gold کیف اصلی کاربر است (ساختار قدیم تک‌آبشده).
-- اگر چند id باشد، همگی یک موجودی مشترک (کیف اصلی) دارند و در صفحه
-- دارایی‌ها فقط یک کارت (محصول اولِ لیست) ساخته می‌شود.
--
-- مقدار: idها با کاما (مثل «13,25») یا آرایه JSON (مثل «[13,25]»)
-- خالی/غایب = رفتار قبلی بدون هیچ تغییری (بورس مس و پروژه‌های چند‌کیفه)
--
-- نمونه اجرا برای گلد علی:
-- UPDATE `settings` SET `value` = '13,25' WHERE `key` = 'main_wallet_products';
-- ============================================================================
INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`)
SELECT 'main_wallet_products', '', 'محصولات متصل به کیف اصلی', 0, 1,
'idهای محصول با کاما (مثل 13,25). موجودی این محصولات = gold کیف اصلی. خالی = غیرفعال'
WHERE NOT EXISTS (SELECT 1 FROM `settings` WHERE `key` = 'main_wallet_products' LIMIT 1);
-- اگر کلید از قبل وجود دارد، قابل ادیت نبودنش تضمین شود
UPDATE `settings` SET `can_edit` = 0 WHERE `key` = 'main_wallet_products';
+24
View File
@@ -294,6 +294,30 @@ AND NOT EXISTS (
SELECT 1 FROM `settings` WHERE `key` = 'unit' LIMIT 1
);
-- ---------------------------------------------------------------------------
-- settings — main_wallet_products: محصولات متصل به کیف اصلی (غیرقابل ادیت در پنل)
-- موجودی این محصولات = gold کیف اصلی. خالی = غیرفعال (رفتار پیش‌فرض چندکیفه)
-- مثال گلد علی: UPDATE settings SET value='13,25' WHERE `key`='main_wallet_products';
-- ---------------------------------------------------------------------------
INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`)
SELECT
'main_wallet_products',
'',
'محصولات متصل به کیف اصلی',
0,
1,
'idهای محصول با کاما (مثل 13,25). موجودی این محصولات = gold کیف اصلی. خالی = غیرفعال'
FROM DUAL
WHERE EXISTS (
SELECT 1 FROM information_schema.TABLES
WHERE TABLE_SCHEMA = @db AND TABLE_NAME = 'settings'
)
AND NOT EXISTS (
SELECT 1 FROM `settings` WHERE `key` = 'main_wallet_products' LIMIT 1
);
UPDATE `settings` SET `can_edit` = 0 WHERE `key` = 'main_wallet_products';
-- ---------------------------------------------------------------------------
-- پایان — برای بورس‌مس (اختیاری، جدا اجرا کنید):
-- UPDATE `settings` SET `value` = 'کیلوگرم' WHERE `key` = 'unit';