2026-06-21 20:27:13 +03:30
/** توضیح و فرمول فارسی — برای tooltip آیکون راهنما */
2026-06-23 22:31:07 +03:30
import { m } from '@/utils/metalLabels'
2026-06-21 20:27:13 +03:30
export type DashboardHelp = {
description : string
formula : string
}
export const MESGHAL_FACTOR = '۴.۳۳۱۸۰۲'
2026-06-23 22:31:07 +03:30
function help ( description : string , formula : string ) : DashboardHelp {
return {
description : m ( description ),
formula : m ( formula ),
}
2026-06-21 20:27:13 +03:30
}
2026-06-23 22:31:07 +03:30
export const dashboardHero = help (
'آخرین قیمت پایه هر گرم طلا در سیستم.' ,
`قیمت هر مثقال = قیمت هر گرم × ${ MESGHAL_FACTOR } `
)
export const dashboardGateway = help (
'وقتی فعال باشد مشتری میتواند از درگاه بانکی واریز کند؛ در حالت غیرفعال فقط واریز دستی ممکن است.' ,
'وضعیت: فعال یا غیرفعال'
)
2026-06-21 20:27:13 +03:30
export const dashboardKpi = {
2026-07-02 01:25:29 +03:30
priceDiffProfit : help (
'مجموع سود اختلاف قیمت (فاصله بین قیمت پایه و قیمت مشتری) — فقط از تفاوت buy/sell price. کارمزد جداگانه در کارت «کارمزد معامله» است.' ,
'سود اختلاف قیمت = جمع «سود کل» (total_fee) هر سفارش در بازه'
2026-06-23 22:31:07 +03:30
),
commission : help (
2026-07-02 01:25:29 +03:30
'مجموع کارمزد ریالی معاملات (درصد/وزن کارمزد) — جدا از سود اختلاف قیمت.' ,
2026-07-01 22:28:09 +03:30
'کارمزد = جمع service_charge_price هر سفارش در بازه'
),
totalTradingProfit : help (
2026-07-02 01:25:29 +03:30
'مجموع سود اختلاف قیمت و کارمزد — همان ردیف «جمع» در خلاصه درآمد.' ,
'جمع = سود اختلاف قیمت + کارمزد معاملات'
2026-06-23 22:31:07 +03:30
),
orderCount : help (
'تعداد همه سفارشهایی که در بازه انتخابی ثبت شدهاند (هر وضعیتی).' ,
'تعداد = شمارش سفارشها بین دو تاریخ'
),
goldBalance : help (
'تراز وزنی طلا از سفارشات موفق؛ مثبت یعنی به مشتری بیشتر فروختهاید.' ,
'تراز طلا = گرم فروش − گرم خرید (سفارش موفق)'
),
cashBalance : help (
'تراز ریالی همان سفارشات موفق؛ ورود و خروج نقد از معاملات.' ,
'تراز ریال = مبلغ فروش − مبلغ خرید'
),
mazanehBalance : help (
'میانگین موزون قیمت معاملات، تبدیلشده به مثقال.' ,
`(جمع مبلغ معاملات ÷ جمع گرم) × ${ MESGHAL_FACTOR } `
),
2026-06-21 20:27:13 +03:30
} as const satisfies Record < string , DashboardHelp >
2026-07-01 22:28:09 +03:30
export const dashboardTradingIncomeSummary = help (
2026-07-11 00:35:37 +03:30
'تفکیک کارمزد فروشگاه در بازهٔ انتخابی: بخشی از ریال مشتری کسر شده (کارمزد ریالی) و بخشی از طلا (کارمزد طلایی با معادل ریالی). جمع = مجموع هر دو به ریال.' ,
'جمع کارمزد = کارمزد ریالی + (گرم کارمزد طلایی × قیمت روز)'
2026-07-01 22:28:09 +03:30
)
2026-06-23 22:31:07 +03:30
export const dashboardDateRange = help (
'تاریخ شروع و پایان برای محاسبه کارتها، تراز و نمودارها.' ,
'گزارش = از تاریخ … تا تاریخ …'
)
2026-06-21 20:27:13 +03:30
export const dashboardDateMetrics = {
2026-06-23 22:31:07 +03:30
bankDeposit : help (
'کل واریزهای موفق مشتریان از درگاه آنلاین در این بازه.' ,
'جمع مبلغ واریزهای تأییدشده از درگاه'
),
netIncome : help (
2026-07-01 22:28:09 +03:30
'شاخص قدیمی: اختلاف قیمت اصلی و پرداختی منهای ارزش هدایا — با «جمع سود معاملات» یکی نیست.' ,
'تراز قیمت−پرداخت = جمع |قیمت اصلی − پرداختی| − (گرم هدیه × مظنه)'
),
totalTradingProfit : help (
2026-07-02 01:25:29 +03:30
'همان «جمع سود معاملات» در خلاصه بالا — اختلاف قیمت + کارمزد.' ,
2026-07-01 22:28:09 +03:30
'جمع = fullPriceSood + fullPriceKarmozd'
2026-06-23 22:31:07 +03:30
),
gifts : help (
'طلایی که ادمین به مشتریان هدیه داده در همین بازه.' ,
'گرم هدیه = جمع طلای ثبتشده در تراکنشهای ادمین'
),
2026-06-21 20:27:13 +03:30
} as const satisfies Record < string , DashboardHelp >
export const dashboardCharts = {
2026-06-23 22:31:07 +03:30
incomeMix : help (
2026-07-02 01:25:29 +03:30
'تفکیک درآمد: سود اختلاف قیمت، کارمزد ریالی، و ارزش هدایا.' ,
'درآمد = سود اختلاف قیمت + کارمزد + (گرم هدیه × مظنه)'
2026-06-23 22:31:07 +03:30
),
buySellVolume : help (
'مقدار طلای خرید و فروش مشتری در هر روز (فقط سفارش موفق).' ,
'هر روز: گرم خرید مشتری و گرم فروش به مشتری'
),
priceChart : help (
'روند تغییر قیمت پایه هر گرم در ۲۴ ساعت، هفته یا ماه.' ,
'نمودار = قیمت پایه در هر لحظه'
),
productActivity : help (
'مقایسه حجم خرید و فروش هر محصول در بازه انتخابی.' ,
'خرید = جمع گرم مثبت | فروش = جمع گرم منفی (معاملات همان بازه)'
),
2026-06-21 20:27:13 +03:30
} as const satisfies Record < string , DashboardHelp >
export const dashboardOrders = {
2026-06-23 22:31:07 +03:30
peakHours : help (
'توزیع سفارشهای موفق مشتریان خانگی در ۲۴ ساعت شبانهروز؛ برای شناخت ساعات شلوغ.' ,
'هر ستون = تعداد سفارش در آن ساعت (جمع چند روز اخیر)'
),
recent : help (
'۱۴ سفارش آخر با جزئیات مظنه و سود.' ,
2026-07-02 01:25:29 +03:30
'مظنه = قیمت پایه | قیمت مشتری = مظنه ± اختلاف قیمت | سود/گرم = همان اختلاف قیمت'
2026-06-23 22:31:07 +03:30
),
2026-06-21 20:27:13 +03:30
} as const satisfies Record < string , DashboardHelp >
2026-06-23 22:31:07 +03:30
export const dashboardCustomers = help (
'آمار مشتریان خانگی ثبتشده در سیستم.' ,
'فعال = دارای کیف پول | بدون احراز = هویت تأیید نشده'
)
2026-06-21 20:27:13 +03:30
export const dashboardCustomerMetrics = {
2026-06-23 22:31:07 +03:30
total : help ( 'همه مشتریان خانگی ثبتشده.' , 'شمارش کل مشتریان' ),
new : help ( 'مشتریانی که در ۳ ماه اخیر ثبتنام کردهاند.' , 'ثبتنام در ۹۰ روز گذشته' ),
active : help ( 'مشتریانی که حداقل یک کیف پول دارند.' , 'دارای موجودی در کیف' ),
notVerified : help ( 'مشتریانی که احراز هویت را تکمیل نکردهاند.' , 'وضعیت احراز: ناقص' ),
2026-06-21 20:27:13 +03:30
} as const satisfies Record < string , DashboardHelp >
2026-06-23 22:31:07 +03:30
export const dashboardWallet = help (
'مجموع موجودی طلا و ریال همه مشتریان.' ,
'ارزش طلا به ریال = جمع گرم × مظنه لحظهای'
)
2026-06-21 20:27:13 +03:30
export const dashboardWalletMetrics = {
2026-06-23 22:31:07 +03:30
gold : help ( 'مجموع طلای موجود در کیف همه مشتریان.' , 'جمع گرم طلا در کیفها' ),
cash : help ( 'مجموع ریال موجود در کیف همه مشتریان.' , 'جمع ریال در کیفها' ),
goldToCash : help ( 'ارزش ریالی کل طلای مشتریان با مظنه فعلی.' , 'جمع گرم × قیمت هر گرم' ),
2026-06-21 20:27:13 +03:30
} as const satisfies Record < string , DashboardHelp >