数据看板
总用户数
{{ dashboard.total_users || 0 }}
活跃: {{ dashboard.active_users || 0 }}
近7天新增
{{ dashboard.recent_7days || 0 }}
本周注册
男性用户
{{ dashboard.male_count || 0 }}
占比 {{ dashboard.total_users ? Math.round(dashboard.male_count/dashboard.total_users*100) : 0 }}%
女性用户
{{ dashboard.female_count || 0 }}
占比 {{ dashboard.total_users ? Math.round(dashboard.female_count/dashboard.total_users*100) : 0 }}%
待支付
{{ dashboard.queue_stats.pending_pay || 0 }}
学员未付款
待预约
{{ dashboard.queue_stats.pending_schedule || 0 }}
已付未选班
待签约
{{ dashboard.queue_stats.pending_sign || 0 }}
客服需处理
进行中课程
{{ dashboard.queue_stats.in_class || 0 }}
已签约/上课中
待退款审批
{{ dashboard.queue_stats.refund_pending || 0 }}
仅管理员
待开票
{{ dashboard.queue_stats.invoice_pending || 0 }}
财务登记
待提现审核
{{ dashboard.queue_stats.payout_pending || 0 }}
线下打款
课程分布
财务 · 收入与退款(近{{ financeDays }}天)
累计收入
¥{{ fmtMoney(finance.summary.total_revenue) }}
累计退款
¥{{ fmtMoney(finance.summary.total_refund) }}
净收入
¥{{ fmtMoney(finance.summary.net_revenue) }}
本月收入
¥{{ fmtMoney(finance.summary.month_revenue) }}
已提现佣金
¥{{ fmtMoney(finance.summary.paid_commission) }}
加载中…
收入 ¥{{ fmtMoney(periodRevenue) }}
退款 ¥{{ fmtMoney(periodRefund) }}
{{ finance.series.length ? finance.series[0].date.slice(5) : '' }}
{{ finance.series.length ? finance.series[Math.floor(finance.series.length/2)].date.slice(5) : '' }}
今天
城市分布 (Top 10)
用户管理
用户列表
| 姓名 | 性别 | 手机 | 城市 | 职业 | 级别 | 注册时间 | 操作 |
|---|---|---|---|---|---|---|---|
| {{ u.name }}推广员可退款 | {{ u.gender }} | {{ u.phone }} | {{ u.city }} | {{ u.occupation }} | {{ u.level }} | {{ u.created_at }} |
共 {{ userTotal }} 条,第 {{ userPage }}/{{ Math.ceil(userTotal / 20) }} 页
订单管理
学员订单
| 订单号 | 学员 | 课程 | 金额 | 状态 | 来源 | 下单时间 | 操作 |
|---|---|---|---|---|---|---|---|
| {{ o.order_no }} | {{ o.user_name }} {{ o.user_phone }} |
{{ o.level_name }} | ¥{{ o.amount }} 实付¥{{ o.paid_amount }} |
{{ o.status_text }} | {{ o.source==='miniprogram'?'小程序':'其他' }} | {{ (o.created_at||'').slice(0,16) }} | |
| 暂无订单 | |||||||
共 {{ orderTotal }} 条,第 {{ orderPage }}/{{ Math.ceil(orderTotal/orderSize) }} 页
| 退款单号 | 学员/订单 | 申请金额 | 计算依据 | 原因 | 状态 | 申请时间 | 操作 |
|---|---|---|---|---|---|---|---|
| {{ r.refund_no }} | {{ r.order && r.order.user_name }} {{ r.order && r.order.level_name }} |
¥{{ r.apply_amount }} |
{{ r.calc_detail.expr }}
{{ r.calc_detail.trigger }}
|
{{ r.reason }} | {{ {'applying':'待审批','refunding':'退款中','success':'已退款','rejected':'已驳回'}[r.status]||r.status }} | {{ (r.created_at||'').slice(0,16) }} | {{ r.status==='applying' ? '需管理员权限' : '' }} |
| 暂无退款申请 | |||||||
| 订单 | 抬头 | 金额 | 接收邮箱 | 状态 | 申请时间 | 操作 |
|---|---|---|---|---|---|---|
| {{ i.order_no }} {{ i.level_name }} / {{ i.user_name }} |
{{ i.title_type==='company'?'企业':'个人' }} {{ i.title }} 税号 {{ i.tax_no }} |
¥{{ i.amount }} | {{ i.email || '-' }} | {{ {'applying':'待开票','invoiced':'已开票','rejected':'已驳回'}[i.status]||i.status }}
№{{ i.invoice_no }} |
{{ (i.created_at||'').slice(0,16) }} | 查看PDF |
| 暂无开票申请 | ||||||
| 申请人 | 身份 | 金额 | 构成明细 | 状态 | 申请时间 | 操作 |
|---|---|---|---|---|---|---|
| {{ p.agent_name || ('ID:'+p.agent_id) }} | {{ p.agent_type==='student'?'学员推广员':'网页代理商' }} | ¥{{ p.amount }} |
{{ d.level_name }} @{{ d.rate }}% → ¥{{ d.final || d.estimated }}
等 {{ p.commission_detail.length }} 笔…
|
{{ {'requesting':'待审核','paid':'已打款','rejected':'已驳回'}[p.status]||p.status }} | {{ (p.created_at||'').slice(0,16) }} | |
| 暂无提现申请 | ||||||
课程管理
权限规则:客服可新建、上架/下架;上架后内容永久锁定(下架不解锁,修改需管理员);从未上架的课程客服可改;删除仅管理员(上架中需先下架)。
| 课程名称 | 价格 | 总课时 | 退费规则 | 排课 | 佣金比例 | 上架状态 | 操作 |
|---|---|---|---|---|---|---|---|
| {{ l.name }} | ¥{{ l.price }} | {{ l.total_lessons || '-' }} | {{ {'lesson':'按节退','stage':'按阶段退','none':'不可退'}[l.refund_mode]||'未配置' }} | {{ l.recurrence ? (l.recurrence.type==='weekly' ? '每周'+(l.recurrence.weekdays||[]).join('、') : '固定'+(l.recurrence.dates||[]).length+'天') : '未配置' }} | {{ l.commission_pct ? l.commission_pct+'%' : '-' }} | {{ l.is_on_shelf?'已上架':'未上架' }} | 已锁定·仅管理员可改 |
| 暂无课程 | |||||||
发货仓管理
{{ editingWarehouse ? '编辑发货仓' : '新建发货仓' }}
{{ w.name }}
默认
{{ w.sender_name }} | {{ w.sender_phone }}
{{ w.sender_address }}
暂无发货仓,请先创建
同意记录
| 用户 | 手机 | 同意方式 | 版本 | IP地址 | 时间 |
|---|---|---|---|---|---|
| {{ log.user_name }} | {{ log.user_phone }} | {{ log.consent_type === 'checkbox' ? '勾选同意' : '管理员添加' }} | {{ log.consent_version }} | {{ log.ip_address }} | {{ log.created_at }} |
共 {{ consentTotal }} 条
员工管理
| 用户名 | 姓名 | 角色 | 状态 | 创建时间 | 操作 |
|---|---|---|---|---|---|
| {{ s.username }} | {{ s.name }} | {{ s.role }} | {{ s.is_active ? '正常' : '禁用' }} | {{ s.created_at }} | 默认账号 |
补录模板库
| ID | 模板名称 | 包含字段(学员必填) | 创建时间 | 操作 |
|---|---|---|---|---|
| {{ t.id }} | {{ t.name }} | {{ l }} | {{ t.created_at }} | |
| 暂无模板,点右上角新建 | ||||
说明:客服在用户列表点「补录二维码」时可选择模板;学员扫码后只需填写模板内的字段(系统已有值自动带出,可修改),模板内所有字段均为必填。
系统设置
邮箱配置(用于备份发送)
QQ邮箱配置说明:
1. 登录QQ邮箱 -> 设置 -> 账户
2. 开启 POP3/SMTP 服务
3. 生成授权码(不是QQ密码)
4. SMTP服务器:smtp.qq.com,端口:465(SSL)
1. 登录QQ邮箱 -> 设置 -> 账户
2. 开启 POP3/SMTP 服务
3. 生成授权码(不是QQ密码)
4. SMTP服务器:smtp.qq.com,端口:465(SSL)
企业微信通知(新订单/退款推送到客服群)
配置方法:
1. 打开客服企业微信群 → 右上角群设置 → 群机器人 → 添加机器人
2. 复制机器人的 Webhook 地址粘贴到上面,保存设置
3. 点「发送测试消息」验证群里能收到
触发场景:支付成功新订单、新退款申请、退款完成
1. 打开客服企业微信群 → 右上角群设置 → 群机器人 → 添加机器人
2. 复制机器人的 Webhook 地址粘贴到上面,保存设置
3. 点「发送测试消息」验证群里能收到
触发场景:支付成功新订单、新退款申请、退款完成
AI模型配置(用于发货信息智能解析)
说明:
1. 配置后代理商发货信息将使用AI智能解析
2. 不配置则使用正则表达式解析(支持标准格式)
3. 当前系统使用:小米MiMo模型
1. 配置后代理商发货信息将使用AI智能解析
2. 不配置则使用正则表达式解析(支持标准格式)
3. 当前系统使用:小米MiMo模型
快递100配置(上门取件-线上支付)
配置说明:
1. 登录 https://api.kuaidi100.com 注册企业账号
2. 申请「上门取件-线上支付」服务,获取Key和Secret
3. 回调地址需公网可访问,用于接收快递状态变更通知
4. 寄件人信息会自动填入每个发货订单的发件人字段
1. 登录 https://api.kuaidi100.com 注册企业账号
2. 申请「上门取件-线上支付」服务,获取Key和Secret
3. 回调地址需公网可访问,用于接收快递状态变更通知
4. 寄件人信息会自动填入每个发货订单的发件人字段
数据管理
数据导出
导出用户数据为CSV文件,包含完整个人信息
数据还原
上传.db备份文件还原数据库,还原前会自动备份当前数据
自动备份:系统每天凌晨2:00自动备份数据库。备份文件保留最近30份。完整SQLite数据库备份(含所有表:用户、订单、角色、发货仓等)。
备份列表
暂无备份记录
{{ b.filename }}
提交发货信息
粘贴发货信息
支持任意格式(含姓名/电话/地址/商品)或
解析结果(可编辑)
| 收货人 | 电话 | 地址 | 商品 | 备注 | 操作 |
|---|---|---|---|---|---|
我的发货订单
{{ agentStats.pending || 0 }}
待发货
{{ agentStats.ordered || 0 }}
已下单
{{ agentStats.picked || 0 }}
已取件
{{ agentStats.inTransit || 0 }}
运输中
{{ agentStats.delivered || 0 }}
已签收
已选 {{ agentSelOrd.length }} / {{ agentOrders.length }}
{{ o.receiver_name }}
{{ shipStatusLabel(o.status) }}
{{ o.receiver_phone }} | {{ o.product }}
{{ o.receiver_address }}
📌 备注:{{ o.remark }}
{{ o.kuaidi_com_name }} {{ o.kuaidi_num }}
暂无发货订单
共 {{ agentTotal }} 条,第 {{ agentPage }}/{{ Math.ceil(agentTotal / 20) }} 页
推广中心
总佣金
¥{{ agentPsum.total_commission || 0 }}
可提现
¥{{ agentPsum.withdrawable || 0 }}
待结算
¥{{ agentPsum.pending_total || 0 }}
已提现
¥{{ agentPsum.paid_out || 0 }}
申请提现
审核通过后线下打款,1-3个工作日到账
在售课程佣金
| 课程 | 价格 | 佣金比例 | 推广可得 | 推广码 |
|---|---|---|---|---|
| {{ c.name }} | ¥{{ c.price }} | {{ c.commission_pct }}% | ¥{{ c.commission_amount }} | 查看/下载 已生成 |
| 暂无在售课程 | ||||
推广订单(学员信息已脱敏)
| 订单号 | 课程 | 学员 | 实付 | 状态 | 预计佣金 | 时间 |
|---|---|---|---|---|---|---|
| {{ o.order_no }} | {{ o.level_name }} | {{ o.user_name }} {{ o.user_phone }} |
¥{{ o.paid_amount || o.amount }} | {{ orderStatusLabel(o.status) }}自购 | {{ o.commission ? '¥'+o.commission.amount : '-' }} {{ o.commission.note }} |
{{ (o.created_at||'').slice(0,10) }} |
| 暂无推广订单 | ||||||
发货订单管理
{{ shippingStats.pending || 0 }}
待发货
{{ shippingStats.ordered || 0 }}
已下单
{{ shippingStats.picked || 0 }}
已取件
{{ shippingStats.inTransit || 0 }}
运输中
{{ shippingStats.delivered || 0 }}
已签收
已选 {{ selectedOrders.length }} / {{ shippingOrders.length }}
{{ o.receiver_name }}
{{ shipStatusLabel(o.status) }}
{{ o.receiver_phone }} | {{ o.product || '-' }}
{{ o.receiver_address }}
📌 特殊发货需求:{{ o.remark }}
代理商:{{ o.agent_name }}
{{ o.kuaidi_com_name }} {{ o.kuaidi_num }}
暂无发货订单
共 {{ shippingTotal }} 条,第 {{ shippingPage }}/{{ Math.ceil(shippingTotal / 20) }} 页
角色管理
| 角色名称 | 说明 | 权限数 | 用户数 | 类型 | 操作 |
|---|---|---|---|---|---|
| {{ r.name }} | {{ r.description }} | {{ r.permission_count }}/{{ totalPermissions }} | {{ r.user_count }} | {{ r.is_system ? '系统' : '自定义' }} |