Files
boursecu_server/database/sql/__pycache__/generate_merge_sql.cpython-314.pyc
T

110 lines
17 KiB
Plaintext
Raw Normal View History

2026-06-06 12:55:07 +03:30
+
Ţă#j›2ăóÖa€0t$Rt^RIHt^RIt^RIt^RIt^RIHt]!] 4P4Pt ] R, t
RRRRR R
/RR RR R R
/RR
RRR R
/RRRRR R
/RRRRR R/RRRRR R/RRRRR R
/RRRRR R
/RRRRR R/RRRRR R /.
tR!]R"&R#R$/t0R:mtR;tR%R&0tR'R(ltR)R*ltR+R,ltR-R.ltR/R0ltR1R2ltR3R4ltR5R6ltR7R8lt]R98Xd
]!4R#R#)<a
Generate client merge SQL (settings + const) from:
- goldAli catalog template (abshode_rahimi_merge_goldali_catalog.sql UPDATE blocks)
- client JSON: { "settings": [...], "const": [...] }
Usage:
python generate_merge_sql.py abaeigold_client.json abaeigold
)Ú annotationsN)ÚPathz(abshode_rahimi_merge_goldali_catalog.sqlÚkeyÚ
limited_priceÚtitle_fauسقŮ� قیمت Ů…Ř­ŘŻŮ�ŘŻÚdefaultÚÚis_gateway_openu'باز بŮ�دن درگاه پرداختÚlimanuŘŞŮ�کن لیمانÚ
header_banneruبنر بالای صŮ�حهÚ
app_closeduبسته بŮ�دن اپÚfalseÚ main_productu%محصŮ�Ů„ آبشده پیش‌Ů�رضÚ13Úgramuگرم ثبت‌نامÚfirst_customer_wallet_valueuحداقل اŮ�لین خریدÚ
jibit_counteruشمارنده جیبیتÚ0Úpriceuلیست قیمت TGJU (JSON)z[]z
list[dict]Ú
CONST_CATALOGÚ liman_tokenz const:limanÚlogÚlast_order_logcó €V^8„dQhRRRR/#)érÚstrÚreturn©)Úformats"Úa/mnt/new-volume-7/vue_projects/abshode_khanegi/khaneghi_server/database/sql/generate_merge_sql.pyÚ __annotate__r 2s€÷;ń;�sđ;�sń;ócób€VP4PRR4PRR4#)Ú
rÚ
)ÚstripÚreplace)rs&rÚ
normalize_keyr'2s(€Ř Ź9‰9‹;× Ń �t RÓ (× 0Ń 0°°rÓ :Đ:r!có €V^8„dQhRRRR/#)rÚvalueú
str | Nonerrr)rs"rr r 6s€÷KńK�:đK #ńKr!có€€VfR#R\V4PRR4PRR4,R,#)NÚNULLÚ'Ú\z\\ú'')rr&©r)s&rÚsql_strr16s8€Ř ‚}ŮŘ ”�U“×#Ń# D¨&Ó1×9Ń9¸#¸tÓDŐ DŔsŐ JĐJr!có €V^8„dQhRRRR/#)rÚlinerrr*r)rs"rr r <s€÷ń�3đ :ńr!cóP€VP4PR4pVPR4'dR#VPR4pW^,RP4pVP R4'd-VPR4'dV^RP RR4#V#)Ú,z= NULLNÚ=r-r/é˙˙˙˙)r%ÚrstripÚendswithÚindexÚ
startswithr&)r3ÚeqÚraws& rÚ_parse_sql_fieldr><s�€Ř Ź:‰:‹<× Ń �sÓ #€DŘ ‡}�}�X×ŇŮŘ
ʉ�C‹€BŘ
�AŤv�x�.×
Ń
Ó
€CŘ
‡~�~�c×Ň�sź|™|¨C×0Ň0Ř�1�R�y× Ń   sÓ+Đ+Ř €Jr!có €V^8„dQhRRRR/#)rÚtextrrúdict[str, dict]r)rs"rr r Gs€÷#ń# đ#¨ń#r!c óP€/p\P!RV4pVEFpVPR4'gK\P!RV4pV'gK>VP ^4p/pVP 4FFpVP
4pRF-pVPRV R24'gK \V4Wh&K/ KH RVPR4;'gR R\VPR4;'g^4RVPR4RVPR4/W&EK \P!R
V\P4p V 'dH\P!R V P ^44FpVPVRR R^RR RR
/4K V#)z(?=UPDATE `settings` SET)úUPDATE `settings` SETzWHERE `key` = '([^']+)';rÚcan_editÚtypeÚ descriptionÚ`z` =rz<DELETE FROM `settings`\s+WHERE `key` NOT IN \(\s*(.*?)\s*\);z '([^']+)'r@N)rrDrErF)
ÚreÚsplitr;ÚsearchÚgroupÚ
splitlinesr%r>ÚgetÚintÚSÚfindallÚ
setdefault)
r@ÚcatalogÚblocksÚblockÚkey_mrÚfieldsr3ÚcolÚdelete_ms
& rÚparse_catalog_updatesrYGsp€Ř!€GÜ
ŹXŠXĐ2°DÓ
9€FÜ�Ř×ŃĐ 7×8Ň8Ů Ü— ’ Đ5°uÓ=�ßŮ ŘŹk‰k�!‹n�Ř(*�Ř×$Ń$Ö&�DŘ—:‘:“<�DŰF�Ř—?‘? Q s e¨3 <×0Ô0Ü"2°4Ó"8�F“KóGń'đ
�ź
™
 :Ó.×4Đ4°"Ř ś�FźJ™J zÓ2×7Đ7°aÓ8Ř �F—J‘J�vÓ&Ř �6ź:™: mÓ4đ 
�Ś ńô*ŹyŠyŘGŘ Ü
ʉó€H÷
Ü—:’:�l¨HŻN©N¸1Ó,=Ö>�CŘ × Ń ŘŘ�R ¨Q°¸Ŕ
ČtĐTö
ń?đ
€Nr!có €V^8„dQhRRRR/#)rÚpathrrz3tuple[dict[str, str | None], dict[str, str | None]]r)rs"rr r ms€÷*ń*�4đ*Đ$Wń*r!cóÜ€\P!VPRR74p/p/pVPR.4Fjp\ VR,4pV\
9dK"VPR4pVe'\
V\4'dVP4pVR8wdTMRW%&Kl VPR.4F…p\ VR,4pV\9gVP\4'dK=VPR4pVe'\
V\4'dVP4pVR8wdTMRW5&K‡ RVPR.4Uu0uFp\ VR,4kK up9dXVPR.4FAp\ VR,4R8XgKVPR4'gK5VR,VR &KC VPR
4pV'd%\V4P4R9dR VR
&M›VPR4'd4\VPR44P4R 8XdRVR
&MQVPR
4'g;TPR
V'd!\V4P4R9dR MR4VPR4'd$VPR4'g
VR,VR&W#3#uupi)úutf-8©ÚencodingÚsettingsrr)NrÚconstrr
Ú
montzar_priceÚtrueÚmontzarÚprice_providerÚmain_product_pricer)rcÚ1)ÚjsonÚloadsÚ read_textrMr'Ú
SETTINGS_SKIPÚ
isinstancerr%ÚCONST_SKIP_KEYSr;ÚCONST_SKIP_PREFIXESÚlowerrQ) r[Údatar`raÚrowrÚvalÚrÚmps & rÚload_client_rowsrumsR€Ü Ź:Š:�d—n‘n¨g�nÓ6Ó 7€DŘ&(€HŘ#%€EŕŹx‰x�
 BÖ'�Ü�C ťJÓ'�Ř ”-Ô Ů ŘŹg‰g�gÓ�Ř Š?śz¨#¬s×3Ň3Ř—)‘)“+�CŘ" bśy™¨d�‹
ń(đŹx‰x� Ö$�Ü�C ťJÓ'�Ř ”/Ô ! S§^ˇ^Ô4G×%HŇ%HŮ ŘŹg‰g�gÓ�Ř Š?śz¨#¬s×3Ň3Ř—)‘)“+�CŘ 2śI‘S¨4�‹
ń%đ¸$ż(ą(Ŕ:ČrÔ:RÓSŃ:R°Qś q¨ĄxÖ0Ń:RŃSÔSŘ—8‘8�J¨Ö+�CÜ�S ťZÓ(¨MÖ9¸cżgągŔg×>NÔ>NŘ!$ WĄ��g“ń,đ
ʉ�oÓ &€Bß Śc�"‹gŹm‰m‹o Ô.Ř%.�Đ!Ň"Ř Ź‰Đ*× +Ň +´°H·L±LĐAUÓ4VÓ0W×0]Ń0]Ó0_ĐciÔ0iŘ%3�Đ!Ň"Ř
Ź\‰\Đ*×
+Ň
+Ř×ŃĐ,ż2Ä#ŔbĂ'Ç-Á-Ă/ĐUbÔBb©iĐhjÔkđ
‡y�y�× Ň ¨Ż©°n×)EŇ)EŘ#(¨Ő#8��Ń ŕ �?Đůň%TsĹK)có €V^8„dQhRRRR/#)rr)r*rrNr)rs"rr r šs€÷
ń
�:đ
¨#ń
r!có €VeVR8Xd^#^#)Nrrr0s&rÚis_active_valuerxšs€Ř ‚}� ś ŮŮ r!c
ó,€V^8„dQhRRRRRRRRRR/#) rÚ client_namerÚclient_name_farRrAÚclient_settingsúdict[str, str | None]rr)rs"rr r  sA€÷cńcŘđcŕđcđđcđ+đ cđ
 ń cr!có€RRV R2RRV R2RRRRR R
RR V R 2RR
RR
RR
RRRRR
RR
.p\VP44pVFÔpW&,pVPV4pVfR
p\VR
8wdTMR4p VP R4VP R\ V4 R\ V4 R\ VR,4 RVR, RV R\ VR,4 R\ VR,4 24VP R\ V4 R24KÖ VP
.R-O4VEF5pW&,pVPV4pVfR
p\VR
8wdTMR4p VP R4VP R \ VR,4 R!24VP R"VR, R!24VP R#\ VR,4 R!24VP R$\ VR,4 R!24VP R%\ V4 R!24VP R&V R!24VP R'4VP R(\ V4 R)24EK8 VP
.R.O4\V4F?wr¦V
\V4^,
8dR!MR
p VP R*\ V4 V 24KA VP R+4VP
.R/O4R,PV4#)0úP-- =============================================================================ú-- u6 — ادغام settings با کاتالŮ�ÚŻ goldAliiiú--ő-- منبع مقادیر: ú _client.jsonu0-- قالب کلیدها: goldali (103 کلید)u-- Ů‚Ů�انین:uW-- • کلید مشترک → value از کلاینت، metadata از کاتالŮ�ÚŻua-- • کلید کاتالŮ�ÚŻ بدŮ�ن مقدار در کلاینت → value=''ŘŚ is_active=0u:-- • کلیدهای اضاŮ�ŰŚ کلاینت → DELETEu,-- قبل از اجرا: USE دیتابیس u + بکاپrúSTART TRANSACTION;ú-SET NAMES utf8mb4 COLLATE utf8mb4_unicode_ci;zALTER TABLE `settings`zY MODIFY COLUMN `description` TEXT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL,z^ MODIFY COLUMN `title_fa` VARCHAR(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL,zY MODIFY COLUMN `type` VARCHAR(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL;ú -- 1) INSERTNzcINSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`, `type`)úSELECT ú, rrDrFrEz9WHERE NOT EXISTS (SELECT 1 FROM `settings` WHERE `key` = ú
LIMIT 1);rCú `title_fa` = r5z `can_edit` = z `type` = z `description` = ú `value` = z `is_active` = ú `updated_at` = NOW()úWHERE `key` = Ú;ú ú);r$©rz -- 2) UPDATEr)rz-- 3) logo_login normalizerúDELETE FROM `settings`z8WHERE `key` LIKE 'logo_login%' AND `key` <> 'logo_login'zh AND EXISTS (SELECT 1 FROM (SELECT `id`, `key` FROM `settings`) AS `s` WHERE `s`.`key` = 'logo_login');rrCz `key` = 'logo_login',zH `value` = TRIM(REPLACE(REPLACE(`value`, CHAR(13), ''), CHAR(10), '')),rŚz9WHERE `key` LIKE 'logo_login%' AND `key` <> 'logo_login';rz-- 4) DELETE extrasrr’úWHERE `key` NOT IN ()rz4DELETE FROM `settings` WHERE `key` = 'price_method';rúCOMMIT;r)
ÚsortedÚkeysrMrxÚappendr1ÚextendÚ enumerateÚlenÚjoin) rzr{rRr|ÚlinesÚ catalog_keysrÚmetarrÚactiveÚiÚcommas &&&& rÚgenerate_settings_sqlr˘ s€đ [Ř
�nĐ
ĐSĐTŘ Ř
$ [ M°Đ>Ř:Ř ŘŘaŘkŘDŘ Ř
6°~Đ6FŔkĐRŘZŘ
ŘŘ
Ř7Ř
Ř ŘcŘhŘcŘ
ŘŘ