{{ titles[view] }}

{{ subtitles[view] }}
{{ nowText }}
{{ overview.totals.users || 0 }} ئىشلەتكۈچى · 用户总数 بۈگۈن +{{ (overview.today && overview.today.users) || 0 }}
{{ money(overview.totals.revenueFen) }} كىرىم · 总收入 {{ overview.totals.paidOrders || 0 }} زاكاز · 笔订单
{{ overview.totals.members || 0 }} ئەزا · 会员数 ھازىر ئاكتىپ
{{ overview.totals.tts || 0 }} بىرىكتۈرۈلگەن ئاۋاز · 合成次数 {{ fmtNum(overview.totals.chars) }} ھەرپ
{{ fmtNum(overview.totals.coinsEarned) }} تارقىتىلغان تەڭگە · 发放音币 {{ fmtNum(overview.totals.coinsSpent) }} سەرپ بولدى
{{ overview.totals.adCompletes || 0 }} ئېلان كۆرۈش · 广告完成 {{ money(overview.totals.adRevenueFen) }} مۆلچەر كىرىم

ئاخىرقى {{ days }} كۈنلۈك يۈزلىنىش · 近 {{ days }} 天趋势

ئىشلەتكۈچى / 新增 بىرىكتۈرۈش / 合成
{{ t.day.slice(5) }}
ھازىرچە سانلىق مەلۇمات يوق

يېڭى ئىشلەتكۈچىلەر · 最新用户

{{ (u.nickname || u.username || 'U').slice(0,1) }}
{{ u.nickname || u.username || 'ئىشلەتكۈچى' }} {{ u.openid || u.email || '' }}
{{ u.coins }} 🪙 {{ fmtDate(u.createdAt) }}
يوق

ئاخىرقى زاكازلار · 最新订单

{{ o.orderNo }} {{ o.plan }} {{ money(o.amountFen) }} {{ orderText(o.status) }}
يوق
ئىشلەتكۈچى تەڭگە ئەزالىق ھالەت تىزىملاتقان مەشغۇلات
{{ (u.nickname || u.username || 'U').slice(0,1) }}
{{ u.nickname || u.username || 'ئىشلەتكۈچى' }} {{ u.openid || u.email || u.inviteCode || '' }}
{{ u.coins }} {{ isMember(u) ? (u.member.plan + ' · ' + leftDays(u) + 'ك') : '—' }} {{ u.status === 'active' ? 'نورمال' : 'چەكلەنگەن' }} {{ fmtDate(u.createdAt) }}
ئىشلەتكۈچى تېپىلمىدى
جەمئىي {{ uq.total }} · بەت {{ uq.page }}/{{ pages(uq.total, uq.limit) }}
زاكاز نومۇرى ئىشلەتكۈچى پىلان مىقدار تەڭگە ھالەت ۋاقىت مەشغۇلات
{{ o.orderNo }} {{ (o.userId && (o.userId.nickname || o.userId.username)) || '—' }} {{ o.plan }} {{ money(o.amountFen) }} +{{ o.coins }} {{ orderText(o.status) }} {{ fmtDate(o.createdAt) }}
زاكاز يوق
جەمئىي {{ oq.total }}
{{ b._id }}: {{ b.sum }} ({{ b.n }})
ئىشلەتكۈچى تۈر مىقدار قالدۇق ئىزاھات ۋاقىت
{{ (c.userId && (c.userId.nickname || c.userId.username)) || '—' }} {{ c.type }} {{ c.amount > 0 ? '+' : '' }}{{ c.amount }} {{ c.balanceAfter }} {{ c.note || c.reason }} {{ fmtDate(c.createdAt) }}
خاتىرە يوق
جەمئىي {{ cq.total }}

كۈندىلىك ۋەزىپە · 每日任务

ۋەزىپەئىشلەتكۈچىقېتىمتەڭگە
{{ taskName(r._id) }} {{ r.users }} {{ r.times }} {{ r.coins }}
بۇ كۈندە ھېچقانداق ۋەزىپە ئىجرا قىلىنمىدى

ئېلان ھەرىكىتى · 广告事件

ھەرىكەتقېتىمتەڭگەكىرىم
{{ adName(r._id) }} {{ r.n }} {{ r.coins }} {{ money(r.revenue) }}
ئېلان خاتىرىسى يوق

كۈنلۈك ئېلان كۆرۈلۈشى · 每日广告

{{ d.day.slice(5) }}
تاماملانغان / 完成 كۆرسىتىلگەن / 展示
جەمئىي {{ sq.total }}
ئىشلەتكۈچى ئۈلگە ID ئۇزۇنلۇقى ھالەت ئاڭلاش مەشغۇلات
{{ (s.userId && (s.userId.nickname || s.userId.username)) || 'مېھمان' }} {{ s.sampleId }} {{ (s.durationMs / 1000).toFixed(1) }}s {{ sampleText(s.status) }}
ئۈلگە يوق
جەمئىي {{ tq.total }} قېتىم · {{ fmtNum(ttsChars) }} ھەرپ
ئىشلەتكۈچى تېكىست ئاۋاز ئۇزۇنلۇقى ئاڭلاش ۋاقىت
{{ (r.userId && (r.userId.nickname || r.userId.username)) || '—' }} {{ r.text }} {{ r.preset || r.voice }} {{ (r.durationMs / 1000).toFixed(1) }}s {{ fmtDate(r.createdAt) }}
خاتىرە يوق
{{ invites.total }}ئاخىرقى {{ invites.days }} كۈندىكى تەكلىپ · 邀请总数

ئالدىنقى تەكلىپ قىلغۇچىلار · 邀请排行

#ئىشلەتكۈچىتەكلىپمۇكاپاتكود
{{ i + 1 }}
{{ (t.nickname || t.username || 'U').slice(0,1) }}
{{ t.nickname || t.username || 'ئىشلەتكۈچى' }} {{ t.openid || '' }}
{{ t.n }} {{ t.coins }} {{ t.inviteCode }}
تەكلىپ يوق

{{ groupName(g) }}

{{ g }}
{{ it.labelUg || it.key }} {{ it.labelZh }} · {{ it.key }}

شىفىر ئۆزگەرتىش · 修改密码

مۇھىت ھالىتى · 运行环境

دومېن / 域名
{{ system.domain || '—' }}
PUBLIC_BASE_URL
{{ system.publicBaseUrl || '—' }}
Node.js
{{ system.node }}
ئىشلەۋاتقان ۋاقىت / 运行
{{ uptime(system.uptimeSec) }}
ئىشلىتىلگەن ياد / 内存
{{ system.memoryMB }} MB
MongoDB ھالىتى
{{ system.mongoState === 1 ? 'ئۇلانغان' : 'ئۇلانمىغان' }}
ئاۋاز ھۆججىتى / 音频文件
{{ system.clips }}
ئاۋاز سىناش بېتىنى ئېچىش · 打开试听页

ئىقتىدار ھالىتى · 功能开关

微信 كىرىش / 微信登录
{{ system.wechatLogin ? 'تەييار' : 'WX_APPID/WX_SECRET يوق' }}
TTS ئاچقۇچى
{{ system.ttsConfigured ? 'تەييار' : 'يوق' }}
كۆڭۈلدىكى ئاۋاز
{{ system.ttsVoice }}
ئاۋاز كۆچۈرۈش / 声音复刻
{{ system.voiceClone ? 'ئۇلانغان' : 'تەييار ئەمەس' }}
ئېلان بىرلىكى ID
{{ system.adsUnitId || '—' }}
پۇل تۆلەش / 支付
{{ system.payEnabled ? 'ئوچۇق' : 'تاقاق' }}

بۇ قىممەتلەر server/.env دىن ئوقۇلىدۇ. ئۆزگەرتكەندىن كېيىن مۇلازىمېتىرنى قايتا قوزغىتىڭ:
宝塔面板 → Node项目 → لەيىق → 重启

باشقۇرغۇچىھەرىكەتنىشانتەپسىلاتIPۋاقىت
{{ l.adminEmail }} {{ l.action }} {{ l.targetType }} {{ (l.targetId || '').slice(-6) }} {{ JSON.stringify(l.detail) }} {{ l.ip }} {{ fmtDate(l.createdAt) }}
خاتىرە يوق
جەمئىي {{ logTotal }}
{{ bk.stats.records || 0 }} سانلىق مەلۇمات · 数据库记录 {{ bk.stats.collections || 0 }} tables · {{ bk.stats.audio.files || 0 }} audio
{{ bk.files.length }} زاپاس ھۆججىتى · 备份文件 ئەڭ كۆپ {{ bk.keep }} دانە ساقلىنىدۇ
{{ bk.stats.audio.text || '0 B' }} ئاۋاز ھۆججىتى · 音频占用 {{ bk.stats.audio.files || 0 }} ھۆججەت

سانلىق ئامبار زاپاسى · 数据库备份(JSON)

بىر كۇنۇپكا بىلەن پۈتۈن MongoDB نىڭ ھەممە جەدۋىلى بىر .json ھۆججىتىگە يېزىلىدۇ. بۇ ھۆججەتنى چۈشۈرۈپ ساقلاپ قويسىڭىز، يېڭى مۇلازىمېتىردا ئوخشاش كۇنۇپكا بىلەن ئەسلىگە كەلتۈرگىلى بولىدۇ.

ھۆججەت نامى · 文件 خاتىرە چوڭلۇق ۋاقىت مەشغۇلات
{{ f.file }} {{ f.records == null ? '—' : f.records }} {{ fmtSize(f.bytes) }} {{ fmtDate(f.createdAt) }}
ھازىرچە زاپاس يوق — ئۈستىدىكى كۇنۇپكىنى بېسىڭ

يېڭى مۇلازىمېتىردا ئەسلىگە كەلتۈرۈش · 上传恢复

زاپاس .json ھۆججىتىنى تاللاڭ — يۈكلەنگەندىن كېيىن ھازىرقى سانلىق مەلۇمات ئالماشتۇرۇلىدۇ (ئالدى بىلەن ئاپتوماتىك بىر زاپاس ياسىلىدۇ).

{{ bk.msg }}

كۆچۈش تىزىملىكى · 搬家只复制这 5 样

① server/
پۈتۈن مۇلازىمېتىر + باشقۇرۇش تاختىسى
② server/.env
ئاچقۇچ ۋە تەڭشەكلەر
③ server/public/audio/
ئاۋاز ھۆججەتلىرى
④ server/backups/*.json
سانلىق ئامبار زاپاسى
⑤ miniprogram/
كىچىك پروگرامما كودى

زاپاس قىلتىقى: {{ bk.dir }}
بۇ قىلتىقتىكى ھەممە .json نى كۆچۈرسىڭىز بولىدۇ.

{{ toast.msg }}