后台管理系统
后台管理系统提供完整的系统管理和运营管理能力,所有接口前缀为 /admin,需管理员登录态。
1. 系统设置
| 功能 | 说明 |
|---|---|
| 配置管理 | 管理系统配置项(支持 string/int/float/bool/json 数据类型),支持分组查看和批量更新 |
| 管理员管理 | 管理员账号 CRUD(创建/编辑弹窗支持头像上传:图片经通用上传接口 /admin/uploader/image 中转后将 URL 随 avatar 字段提交保存)、状态切换、密码重置、角色分配、登录历史查询 |
| 菜单管理 | 管理后台菜单/按钮结构(树结构,支持目录/菜单/按钮三种类型) |
| 字典管理 | 管理数据字典类型和字典项(支持标签样式 default/primary/success/warning/danger/info),字典项按排序权重排列,删除字典时级联删除字典项 |
| 地区管理 | 管理省市区地区数据(树结构,含经纬度、区号、邮编) |
| 应用管理 | 管理客户端应用(名称、唯一标识 slug、描述、图标、排序、启用状态),支持查看各平台最新发布版本 |
| 应用版本管理 | 管理应用版本(平台:安卓/iOS/鸿蒙;版本号、构建号、下载地址、更新说明、最低支持版本、强制更新标记、文件大小/哈希),支持草稿/发布/撤回/废弃四种状态,发布时自动将同应用同平台的旧发布版本置为废弃 |
| 应用缓存清理 | 支持清理全部缓存或仅清理系统设置缓存(types=all 或 types=settings) |
| 操作审计日志 | 通过中间件自动记录后台操作(路径、方法、参数、状态码、IP、UA、耗时),只读查看 |
| 调度任务日志 | 自动记录定时任务执行情况(成功/失败/跳过、退出码、耗时、异常),支持按保留天数自动清理 |
| 定时任务管理 | 数据库驱动的动态定时任务 CRUD:支持 Artisan 命令 / 自定义 Shell 两种类型、命令参数与选项配置、Cron 表达式、环境限定、禁止重叠 / 单服务器 / 维护模式运行等高级选项;启用/禁用切换、手动执行(同步返回输出)、可用命令列表接口;动态任务在 AppServiceProvider 中注册到 Laravel 调度器,执行日志复用 ScheduleLogListener 自动记录 |
2. 运营管理
| 功能 | 说明 |
|---|---|
| 评论管理 | 评论列表(支持按审核状态/源类型/关键词/用户过滤)、评论详情(含 IP、上级评论摘要)、回复链查看(分页展示指定评论下的直接回复,支持链内下钻)、审核(通过/驳回/设为审核中,可填审核备注)、删除 |
| 反馈管理 | 用户反馈列表与统计、反馈详情(含附件图片、客户端信息)、处理(调整状态/优先级、填写处理备注)、删除 |
| 举报管理 | 举报列表(按状态/分类/对象类型/时间/关键词过滤)、详情(含被举报对象快照:评论内容/作者或用户资料/注册时间)、处理(resolved=已处理/rejected=已驳回 + 联动处置动作)、统计、列表导出 Excel。联动处置动作支持:hide_comment(将评论状态置为已驳回)、delete_comment(递归删除评论及其回复)、freeze_user(永久冻结,仅设置 status=FROZEN,用户表不保存冻结截止时间,需管理员通过「用户管理 → 状态切换」人工解冻)。被举报对象覆盖评论和用户两类共举报,使用多态关联(morphMap)实现任意被举报对象类型可扩展。举报分类通过字典 report_category 管理(9 类:色情低俗/暴力血腥/政治敏感/广告营销/辱骂人身攻击/虚假信息/侵权抄袭/违法违规/其他) |
| 敏感词管理 | 敏感词 CRUD(含分类与级别),按分类与级别触发不同处理(替换/复审/拦截)。敏感词状态可切换,列表可导出,支持批量导入与刷新字典缓存 |
| 短信验证码记录 | 查看短信验证码发送记录(只读) |
| 邮件验证码记录 | 查看邮件验证码发送记录(只读) |
| 上传服务 | 文件/图片/视频/APK 上传接口,生成直传 Token(兼容 S3 协议云存储) |
| 通知管理 | 站内通知列表、未读数、标记已读、批量已读、清理已读 |
| 钱包管理 | 钱包流水列表(全局,可按持有者/类型/时间筛选)、流水详情、后台调账(充正/扣减)、钱包统计(总余额/总充值/总提现) |
| 提现审核 | 提现申请列表与统计、提现详情(含脱敏收款账户)、审核通过/驳回(驳回自动解冻)、标记已打款、导出提现记录 |
| 充值订单 | 充值订单列表(按支付状态/渠道/时间筛选)、订单详情、超时订单自动关闭 |
| 协议管理 | 管理用户协议、隐私政策、充值协议等协议内容(支持富文本 HTML),协议类别通过字典管理(agreement_category),支持版本号、草稿/发布/归档状态流转,发布时自动写入生效时间,前台通过 GET /api/v1/agreements/{category} 按类别获取最新已发布版本 |
3. 公共选项接口
| 功能 | 说明 |
|---|---|
| 源类型选项 | 基于 config/morph_maps.php 的 morph map 输出多态源类型选项(label/value),供前端筛选下拉使用。此类与业务模块无关的通用选项统一挂在 CommonController 下(路由前缀 /admin/common) |
4. 附件管理(上传文件管理器)
| 功能 | 说明 |
|---|---|
| 附件列表 | 分页查询,支持类型/磁盘/扩展名/上传者/关键词/时间范围筛选 |
| 附件详情 | 查看单个附件的完整元数据(含物理文件存在性检查) |
| 附件删除 | 单个删除、批量删除,同步删除 Storage 物理文件 |
| 附件预览 | 图片/视频返回可访问 URL(公有盘直链,私有盘返回 null) |
| 附件下载 | 服务端流式下载,保留原始文件名 |
| 临时 URL | 为私有磁盘生成有时效的签名访问地址 |
| 附件重命名 | 修改显示名称,不改动物理路径 |
| 附件移动 | 在同一磁盘内移动物理路径(Storage 层 move) |
| 磁盘列表 | 查询可用的存储磁盘列表 |
| 直传登记 | 客户端直传云存储后回调登记元数据 |
详细技术方案见:附件管理技术方案
5. 监控面板
| 功能 | 说明 |
|---|---|
| 服务器性能 | 读取 Laravel Pulse 数据(CPU、内存、请求量) |
| 队列监控 | 队列负载、慢任务统计 |
| Reverb 监控 | WebSocket 连接数、消息吞吐 |
| 缓存监控 | 缓存命中率统计 |
| 异常监控 | 应用异常聚合统计 |
| 慢查询/慢请求/慢任务 | 数据库慢查询、慢 HTTP 请求、慢队列任务 |
| 外部请求监控 | 慢外部 HTTP 请求 |
6. 调试面板(Telescope,仅 local 环境)
| 功能 | 说明 |
|---|---|
| 标签管理 | 查询/监控/取消监控标签 |
| 记录开关 | 开启/暂停 Telescope 记录 |
| 条目查询 | 分页查询 Telescope 条目、查看详情、标记解决、删除条目 |
7. 队列管理(Horizon)
| 功能 | 说明 |
|---|---|
| 队列状态 | 队列统计、负载、Master/Supervisor 进程状态 |
| 标签监控 | 监控/取消监控指定标签 |
| 任务指标 | Jobs/Queues 吞吐指标和详情 |
| 批处理 | 批处理列表、详情、重试失败批次 |
| 任务列表 | 待处理/已完成/失败/静默任务列表和详情,重试失败任务 |
8. 数据概览
| 功能 | 说明 |
|---|---|
| 仪表盘统计 | 今日/总数统计(用户数、管理员数等核心指标),展示于「仪表盘 - 工作台」 |
| 财务维度 | 充值/提现汇总(充值总额、提现总额、净收入、今日充值/提现、订单笔数)与资金流向趋势(近 N 天充值/提现金额双线图),展示于独立页面「仪表盘 - 财务分析」 |
文档来源:PRD 第 3.3 节