用户总数
{{ dash.users.total }} 今日 +{{ dash.users.today }}
订单总数
{{ dash.orders.total }} 今日 {{ dash.orders.today }}
今日收入
¥{{ money(dash.income.today) }}
等待中
{{ dash.orders.waiting }}
累计成功收码
{{ dash.orders.received }}
累计收入
¥{{ money(dash.income.total) }}
用户余额合计
¥{{ money(dash.users.balance) }}
今日新增用户
{{ dash.users.today }}
线路状态
{{ c.name }}
{{ c.base }}
{{ c.status===1?(c.configured?'已配置':'待填写'):'已停用' }}
还没有配置线路
快捷入口
最近订单
| {{ (o.created_at||'').slice(5,16) }} | {{ o.project_name }} | {{ o.phone }} | {{ o.code || '—' }} | {{ o.status_text }} |
暂无订单 |
| ID | 用户名 | 邮箱 | 余额 | 订单 | 状态 | 注册时间 | 最后登录 | 操作 |
|---|---|---|---|---|---|---|---|---|
| {{ u.id }} | {{ u.username }} | {{ u.email || '—' }} | ¥{{ money(u.balance) }} | {{ u.orders }} | {{ u.status===1?'正常':'已封禁' }} | {{ (u.created_at||'').slice(0,10) }} | {{ (u.last_login_at||'—') }} | |
没有用户 | ||||||||
| ID | 名称 | 线路 | 分类 | 售价 | 成本 | 排序 | 状态 | 操作 |
|---|---|---|---|---|---|---|---|---|
| {{ p.id }} | {{ p.name }} |
{{ m.name }}
未绑定
|
{{ p.category || '—' }} | ¥{{ money(p.price) }} | ¥{{ money(p.cost) }} | {{ p.sort }} | {{ p.status===1?'上架':'下架' }} | |
还没有项目 点右上角「新增项目」添加 | ||||||||
| 订单号 | 项目 | 号码 | 归属地 | 验证码 | 金额 | 状态 | 创建时间 |
|---|---|---|---|---|---|---|---|
| {{ o.order_no }} | {{ o.project_name }} | {{ o.phone }} | {{ o.phone_gsd || '—' }} | {{ o.code || '—' }} | ¥{{ money(o.price) }} | {{ o.status_text }} | {{ o.created_at }} |
没有订单 | |||||||
| 订单号 | 用户 | 金额 | 方式 | 状态 | 平台交易号 | 提交时间 | 支付时间 |
|---|---|---|---|---|---|---|---|
| {{ r.order_no }} | {{ r.nickname || r.username || ('#' + r.user_id) }} | ¥{{ money(r.amount) }} | {{ payTypeText(r.pay_type) }} | {{ r.status===1?'已支付':(r.status===0?'待支付':'已关闭') }} | {{ r.trade_no || '—' }} | {{ r.created_at }} | {{ r.paid_at || '—' }} |
暂无充值记录 | |||||||
| 时间 | 号码 | 短信内容 | 验证码 | 来源 | 用户 | 操作 |
|---|---|---|---|---|---|---|
| {{ s.at }} | {{ s.phone }} | {{ s.sms }} |
{{ s.code || '—' }} | {{ s.channel_name || '—' }} · {{ s.project_name || '—' }} | {{ s.username }} | |
还没有收到短信 号上收到验证码后,这里会留一条记录 | ||||||
线路就是号码的来源。可以同时配多条,前台会让用户先选线路再取号;只配一条时,前台不会显示选择这一步。
{{ (c.name||'线')[0] }}
{{ c.status===1?'启用中':'已停用' }}
{{ c.name }}
{{ c.driver_title }}
未设价格
这条线路不建项目,不填单价就等于免费取号。
{{ c.msgOk?'连接正常':'连接异常' }}
{{ c.msg }}
正在读取线路…
还没有配置线路
先添加一条,前台才能取号。
基本信息
联系方式(显示在充值页与页脚)
注册与计费
在线充值(码支付 / 易支付)
填到域名或目录即可,程序会自动拼 submit.php。要带 https://。
回调地址填:{{ payNotifyExample }}
支付平台后台的「异步通知 / notify_url」就填这个。
支付平台后台的「异步通知 / notify_url」就填这个。
在线客服开场白
用户第一次打开客服窗口时,自动以客服身份发这一条。留空就不发。
号码释放与排队
号码分配成功就开始计时,到「订单超时」秒数后自动释放并退款,不需要人工干预。
到点释放由每个访问自动触发,长时间没人访问时可另配计划任务 cron.php。
维护模式
| ID | 线路 | 标题 | 内容 | 排序 | 状态 | 时间 | 操作 |
|---|---|---|---|---|---|---|---|
| {{ a.id }} | {{ annChannelName(a.channel_id) }} | {{ a.title }} | {{ a.sort }} | {{ a.status===1?'显示':'隐藏' }} | {{ (a.created_at||'').slice(0,10) }} | ||
还没有公告 | |||||||
| ID | 标题 | 内容 | 已读人数 | 排序 | 状态 | 时间 | 操作 |
|---|---|---|---|---|---|---|---|
| {{ n.id }} | {{ n.title }} | {{ n.read_count }} | {{ n.sort }} | {{ n.status===1?'显示':'隐藏' }} | {{ (n.created_at||'').slice(0,10) }} | ||
还没有站内公告 | |||||||
{{ t.name }}
{{ (t.last_at || '').slice(11, 16) }}
{{ t.last_from === 'admin' ? '我:' : '' }}{{ t.last_text }}
{{ t.unread > 9 ? '9+' : t.unread }}
还没有人发来消息
用户在前台右下角点「在线客服」就能开聊
{{ chatUser.nickname || chatUser.username }}
{{ chatUser.username }} · 余额 ¥{{ money(chatUser.balance) }}
我
{{ chatUser.initial || '?' }}
{{ m.text }}
{{ (m.created_at || '').slice(5, 16) }}
· {{ m.read ? '已读' : '未读' }}
还没有聊天记录
在下面输入内容,用户会在前台看到
选择左边的会话开始聊天
消息在数据库里是加密存的,这里看到的是解密后的内容
超过 24 小时没有新消息的会话会自动永久清空
这里记录了系统与通道之间的全部请求,排错时看这里最直观。日志只保留最近记录,建议定期清理。
| 时间 | 线路 | 动作 | 结果 | 返回信息 | 耗时 | 详情 |
|---|---|---|---|---|---|---|
| {{ l.created_at }} | {{ l.channel_name || '—' }} | {{ l.scope }} | {{ l.ok?'成功':'失败' }} | {{ l.msg || '—' }} | {{ l.cost_ms }}ms | |
暂无日志 | ||||||