fix setting

This commit is contained in:
2026-07-04 10:56:48 +03:30
parent 7ea7fa9ae9
commit 40d04a2dfb
3 changed files with 15 additions and 5 deletions
+1 -1
View File
@@ -324,7 +324,7 @@ const defaultOpenGroupId = computed(() => {
const visibleIds = visibleSettingGroups.value.map((g) => g.id) const visibleIds = visibleSettingGroups.value.map((g) => g.id)
const preferred = isSystemMode.value const preferred = isSystemMode.value
? ['chart', 'pricing', 'payping', 'tahesab', 'store', 'general'] ? ['chart', 'pricing', 'payping', 'tahesab', 'store', 'general']
: ['general', 'content', 'pricing', 'referral'] : ['general', 'content', 'pricing', 'price_source', 'referral']
const fromPreferred = preferred.find((id) => visibleIds.includes(id)) const fromPreferred = preferred.find((id) => visibleIds.includes(id))
return fromPreferred ?? visibleIds[0] return fromPreferred ?? visibleIds[0]
}) })
@@ -31,6 +31,12 @@ export const EDITABLE_SETTING_GROUPS: SettingGroupDef[] = [
k k
) || k.includes('charge_percentage') ) || k.includes('charge_percentage')
}, },
{
id: 'price_source',
title: 'منبع قیمت و تابلو',
icon: 'vuesax-linear:chart-2',
match: (k) => /^(price_provider|zaarbox_|main_product$)/.test(k)
},
{ {
id: 'content', id: 'content',
title: 'متن‌های اپ', title: 'متن‌های اپ',
@@ -479,7 +479,7 @@ export const SETTING_LOCKED_KEYS = new Set([
'unit', 'unit',
'up_price', 'down_price', 'up_price', 'down_price',
'wss_enabled', 'wss_enabled',
'zaarbox_api_url', 'zaarbox_price_key' 'zaarbox_api_url'
]) ])
/** قابل ویرایش در پنل — هم‌تراز deploy_settings_const.sql */ /** قابل ویرایش در پنل — هم‌تراز deploy_settings_const.sql */
@@ -501,7 +501,8 @@ export const SETTING_EDITABLE_KEYS = new Set([
'register_jibit_verify', 'register_referral_bonus_message', 'register_referral_sms_to_referrer', 'register_jibit_verify', 'register_referral_bonus_message', 'register_referral_sms_to_referrer',
'sell_fee', 'show_last_price', 'startDay', 'sell_fee', 'show_last_price', 'startDay',
'support_messenger', 'support_messenger_id', 'support_messenger_text', 'support_messenger', 'support_messenger_id', 'support_messenger_text',
'text_about', 'text_rule' 'text_about', 'text_rule',
'zaarbox_price_key'
]) ])
/** عنوان فارسی — کاتالوگ پنل بر title_fa دیتابیس اولویت دارد */ /** عنوان فارسی — کاتالوگ پنل بر title_fa دیتابیس اولویت دارد */
@@ -530,12 +531,15 @@ export function resolveSettingDescription(row: Pick<Const, 'key' | 'description'
return row.description ?? '' return row.description ?? ''
} }
/** can_edit — کاتالوگ پنل بر مقدار دیتابیس اولویت دارد */ /** can_edit — مقدار دیتابیس اولویت دارد؛ لیست‌های ثابت فقط fallback */
export function resolveSettingCanEdit(row: Pick<Const, 'key' | 'can_edit'>): Const['can_edit'] { export function resolveSettingCanEdit(row: Pick<Const, 'key' | 'can_edit'>): Const['can_edit'] {
const key = (row.key ?? '').trim() const key = (row.key ?? '').trim()
if (row.can_edit !== undefined && row.can_edit !== null) {
return row.can_edit
}
if (SETTING_LOCKED_KEYS.has(key)) return 0 if (SETTING_LOCKED_KEYS.has(key)) return 0
if (SETTING_EDITABLE_KEYS.has(key)) return 1 if (SETTING_EDITABLE_KEYS.has(key)) return 1
return row.can_edit ?? 1 return 1
} }
/** اعمال override متادیتا (عنوان، توضیح، نوع، can_edit) روی ردیف API */ /** اعمال override متادیتا (عنوان، توضیح، نوع، can_edit) روی ردیف API */