联合文社 · 完整网址地图

本页收录联合文社官方网站全部可访问 URL、API 端点、静态资源、数据库表结构及内容文件,作为网站架构的完整索引与导航中枢。

版本 v2.3.0更新 2026-07-11域名 lianhewenshe.top后端 Node.js + Express数据库 MySQL 8风格 MONO · 暗色主题
23
前端页面
54
API 端点
8
静态资源
13
数据库表
4
内容文件
15
服务端模块

📄 一、前端页面 (共 23 个页面 · 含完整路由参数说明)

首页 / 主页

/

联合文社品牌主页面。展示 Hero 品牌标语、核心特色、关于我们、入驻社团网格、进行中赛事卡片。

公开P1.0 最高权重
API 依赖GET /api/public/contests
内容来源content/home/hero.md / about.md
核心模块ULS.theme / cursor / mouseBg / mdLoader / components / auth
路由参数

全部赛事列表

/contests

所有文学赛事的完整列表,支持三种筛选状态。未登录用户自动跳转登录页。

需登录P0.9
API 依赖GET /api/public/contests
筛选状态全部 / 进行中 (active) / 已结束 (ended)
路由参数无(纯列表,无查询参数)

单个赛事详情

/contest

赛事完整详情:简介、比赛规则、参赛社团限制、评委评分表格、投稿入口。通过查询参数加载。

公开P0.9
API 依赖GET /api/public/contests/:id · GET /api/public/judge-ratings
内容来源content/contest/intro.md / rules.md
路由参数?id=<赛事ID> — 必填,指定加载哪个赛事

在线编辑器

/editor

沉浸式写作环境:侧边栏文档管理、格式化工具栏、Markdown 预览、本地自动保存、云端存取同步。投稿:赛事下拉选择 → 自动加载社团列表 → 5 种固定体裁。

需登录P0.9
API 依赖GET/POST/PUT/DELETE /api/documents
核心功能文档CRUD · Markdown预览 · localStorage · 云同步
路由参数

统一登录 / 注册

/auth

双Tab统一认证页面。支持普通用户 + 管理员统一登录,注册自动创建成员记录。支持登录后跳转。

公开P0.8
API 依赖POST /api/auth/register · POST /api/auth/login-any
Tab 面板登录(用户名+密码) / 注册(用户名+密码+笔名)
路由参数?redirect=<目标URL> — 可选,登录成功后跳转目标

管理后台

/admin

管理员全功能面板:10大管理模块、完整CRUD、批量导入。区分 admin 和 super 两级权限。

仅管理员P0.7
API 依赖30+ 个 /api/admin/* 端点
管理模块概览 · 赛事 · 稿件 · 社团 · 成员 · 评分 · 管理员 · 用户 · 设置 · 批量导入
权限等级admin(常规CRUD)/ super(含用户管理+系统设置+批量导入)

AI 写作助手

/ai

智能创作对话页面。多 AI 角色选择(诗词助手、小说家、文学评论家等),SSE 流式打字机逐字渲染,支持 OpenAI / DeepSeek / Anthropic。

需登录P0.9
API 依赖GET /api/ai/roles · /api/ai/sessions · POST /api/ai/send-stream
核心能力角色选择 · SSE流式对话 · 会话历史 · 多Provider支持
路由参数

作家排行榜

/leaderboard

基于投稿均分的作家水平排行榜。金/银/铜领奖台 + 完整排名表格。

公开P0.8
API 依赖GET /api/public/judge-ratings
展示内容领奖台前三名 · 排名表格(均分/文章数/最高/最低)

论坛首页

/bbs

联合文社官方论坛入口。展示版块列表与热门帖子概览。

需登录P0.8
核心内容版块导航 · 热门帖子 · 创作交流/学术讨论/赛事专区

论坛版块

/bbs-forum

论坛版块内帖子列表,含面包屑导航,动态加载版块帖子。

需登录P0.8

论坛帖子详情

/bbs-topic

帖子完整页面:标题、正文、回复列表。

需登录P0.8

论坛发帖

/bbs-post

发布新帖或编辑已有帖子,含标题输入与内容编辑器。

需登录P0.7

论坛群组

/bbs-group

卡片网格展示所有群组,支持创建新群组,与文友深入交流。

需登录P0.7

论坛个人空间

/bbs-profile

用户个人主页,双栏布局(sticky 侧边栏 + 内容区),展示资料与发帖历史。

需登录P0.7

论坛私信

/bbs-messages

站内私信中心,私信列表与对话界面。

需登录P0.6

论坛搜索

/bbs-search

帖子搜索页,搜索框 + 结果列表。

需登录P0.6

论坛会员支付

/bbs-pay

5元/月畅享创作交流社区。双栏布局展示会员权益与支付入口。

需登录P0.6

会员过期提示

/bbs-expired

会员已到期提示页,居中卡片引导续费。

需登录P0.5

网址地图

/sitemap

网站完整结构索引,以分组 section 列出全部页面、API、资源、数据库表。

公开P0.5

树形网址地图

/sitemap-tree

交互式可展开/折叠的树形结构地图,支持搜索过滤与全部展开/折叠。

公开P0.5

关于站长

/about

联合文社创始人春斋主人的个人介绍页面。在文学与科技的边缘,寻找属于我们的那一部分青春。

公开P0.7

棋类对弈

/chess

五子棋、围棋在线实时对弈页面。支持模式选择和多种棋盘主题。

公开P0.7

选择身份

/role-select

身份选择入口页面。提供站长和游客两种身份入口,选择后进入对应功能区域。

公开P0.7

二、API 路由端点 (共 9 个路由模块 · 54 个端点)

GET /api/health — 健康检查
GET/api/health服务健康检查 → { ok: true, service: "uls-backend" }公开
POST /api/auth/* — 用户认证路由
POST/api/auth/register普通用户注册(body: username + password + penName),自动创建 members 记录公开
POST/api/auth/login普通用户登录(仅查 app_users 表)公开
POST/api/auth/login-any统一登录(先查 admin_users 再查 app_users,返回 type 字段区分身份)公开
GET/api/auth/me获取当前登录用户信息(需 Bearer Token)用户
GET /api/ai/* — AI 写作助手公开路由
GET/api/ai/roles获取所有活跃 AI 角色(诗词助手、小说家等)公开
/api/ai/* — AI 写作助手用户路由(需认证)
GET/api/ai/sessions获取当前用户的对话会话列表用户
POST/api/ai/sessions创建新 AI 对话会话(body: roleId)用户
DELETE/api/ai/sessions/:id删除指定会话及所有消息用户
GET/api/ai/sessions/:id/messages获取会话历史消息记录用户
POST/api/ai/send发送消息并获取 AI 回复(非流式,body: sessionId + message)用户
POST/api/ai/send-streamSSE 流式发送消息(body: sessionId + message,支持 OpenAI/DeepSeek/Anthropic)用户
/api/ai/admin/* — AI 管理路由(需管理员)
GET/api/ai/admin/statsAI 使用统计数据管理员
GET/api/ai/admin/roles获取所有 AI 角色(含禁用)管理员
POST/api/ai/admin/roles创建新 AI 角色管理员
PUT/api/ai/admin/roles/:id更新 AI 角色配置管理员
DELETE/api/ai/admin/roles/:id删除 AI 角色管理员
PUT/api/ai/admin/roles/:id/status启用/禁用 AI 角色(body: active)管理员
GET/api/ai/admin/api-settings获取 API 密钥配置管理员
POST/api/ai/admin/api-settings保存 API 密钥配置(body: provider + apiKey + apiUrl + model)管理员
POST /api/admin/auth/* — 管理员认证路由
POST/api/admin/auth/login管理员登录(body: username + password,返回 JWT token 和管理员信息)公开
GET /api/public/* — 公开数据路由
GET/api/public/contests获取所有赛事列表公开
GET/api/public/contests/:id获取单个赛事详情(路径参数: id)公开
GET/api/public/judge-ratings获取所有评委评分(可选查询参数: contestId 按赛事筛选)公开
/api/admin/* — 管理后台 CRUD 路由(共 30+ 端点)
GET/api/admin/stats统计面板(contests/active/manuscripts/societies/members/ratings 数量)管理员
GET/api/admin/bootstrap一次性加载所有管理数据(contests, manuscripts, societies, members, ratings, adminUsers, appUsers, settings)管理员
GET/api/admin/contests获取所有赛事列表管理员
POST/api/admin/contests创建赛事(body: name, description, theme, start_date, end_date, status)超级管理员
PUT/api/admin/contests/:id更新赛事信息超级管理员
DEL/api/admin/contests/:id删除赛事超级管理员
GET/api/admin/manuscripts获取所有稿件列表管理员
POST/api/admin/manuscripts创建稿件(body: contest_id, contest_name, title, author, society, genre, content, work_date)管理员
PUT/api/admin/manuscripts/:id更新稿件信息管理员
DEL/api/admin/manuscripts/:id删除稿件管理员
GET/api/admin/societies获取所有社团列表管理员
POST/api/admin/societies创建社团(body: name, leader, member_count, joined_year, rating, score)超级管理员
PUT/api/admin/societies/:id更新社团信息超级管理员
DEL/api/admin/societies/:id删除社团超级管理员
GET/api/admin/members获取所有成员列表管理员
POST/api/admin/members创建成员(body: pen_name, real_name, society, genre, contact, note, rating, score)管理员
PUT/api/admin/members/:id更新成员信息管理员
DEL/api/admin/members/:id删除成员管理员
GET/api/admin/judge-ratings获取所有评委评分管理员
POST/api/admin/judge-ratings创建评分(body: name, judge, level, score, contest_id, contest_name, society, comment, rating_date)管理员
DEL/api/admin/judge-ratings/:id删除单条评分管理员
DEL/api/admin/judge-ratings清空所有评分(无路径参数)管理员
GET/api/admin/users获取管理员列表超级管理员
POST/api/admin/users创建管理员(body: username, password, role [admin|super], alias)超级管理员
PUT/api/admin/users/:id更新管理员信息超级管理员
DEL/api/admin/users/:id删除管理员(默认 admin 账号不可删除)超级管理员
GET/api/admin/app-users获取普通用户列表超级管理员
POST/api/admin/app-users创建普通用户(body: username, password, pen_name, level, score, banned, note)超级管理员
PUT/api/admin/app-users/:id更新普通用户信息超级管理员
PATCH/api/admin/app-users/:id/ban封禁/解封用户(body: banned [boolean])超级管理员
DEL/api/admin/app-users/:id删除普通用户超级管理员
GET/api/admin/settings获取系统设置(键值对)管理员
PUT/api/admin/settings更新系统设置(body: { setting_key: setting_value, ... })超级管理员
POST/api/admin/bulk/:key批量导入数据(:key ∈ {contests, manuscripts, societies, members, judge-ratings, settings, admin-users, app-users}),使用事务超级管理员
/api/documents/* — 编辑器文档路由
GET/api/documents获取当前用户的所有文档用户
POST/api/documents创建/更新文档(ON DUPLICATE KEY UPDATE 增量同步)用户
PUT/api/documents/:id更新文档用户
DEL/api/documents/:id删除文档用户
/api/members/* — 成员管理路由
GET/api/members获取成员列表(限 50 条)用户
POST/api/members创建成员记录(body: pen_name, real_name, society, genre, contact, note)用户
/api/submissions/* — 投稿管理路由
GET/api/submissions获取当前用户的投稿稿件用户
POST/api/submissions提交稿件(验证赛事存在+进行中状态+社团合法+体裁白名单)用户

🗄️ 三、数据库表结构 (共 9 张表 · MySQL 8 · utf8mb4 · 数据库名: uls)

app_users

普通用户表 — 前端注册用户,笔名与 members 表联动
idusernamepassword_hashpen_namelevelscorebannedban_reasonnote
UNIQUE: username

admin_users

管理员账号表 — 区分 admin 和 super 两级角色
idusernamepassword_hashrolealias
UNIQUE: username · role ∈ {admin, super}

contests

文学赛事表 — 赛事基本信息与状态
idnamedescriptionthemestart_dateend_datestatus
status ∈ {active, ended}

manuscripts

投稿稿件表 — 关联赛事
idcontest_idcontest_nametitleauthorsocietygenrecontentwork_date
FK: contest_id → contests.id · content 类型: MEDIUMTEXT

societies

入驻社团表 — 16个文学社团信息
idnameleadermember_countjoined_yearratingscore
UNIQUE: name

members

成员/写手表 — 笔名、社团、体裁
idpen_namereal_namesocietygenrecontactnoteratingscore

judge_ratings

评委评分表 — 关联赛事,含评语
idcontest_idcontest_nameparticipant_namesocietyjudge_namelevelscorecommentrating_date
FK: contest_id → contests.id

editor_documents

在线编辑器文档表 — 用户级联删除
iduser_idtitlecontent
FK: user_id → app_users.id (CASCADE) · content 类型: MEDIUMTEXT

settings

系统设置键值对表
setting_keysetting_value
PK: setting_key · 默认: title=联合文社, contestLimit=3

🎨 四、静态资源文件 (共 7 个资源文件 · 含 CSS / JS / HTML 组件)

assets/css/tokens.css

3.97 KB

设计令牌 — CSS自定义属性:亮/暗双主题、字体栈、动画缓动、间距体系

assets/css/base.css

6 KB

基础样式 — CSS Reset、排版、栅格系统、辅助类、打印样式、响应式

assets/css/components.css

18.49 KB

组件库 — 按钮、卡片、徽章、导航栏、表格、标签页、模态框、Toast、赛事卡片

assets/css/animations.css

13.76 KB

动画增强 v4.0 — Spring过渡、交错入场、呼吸灯、骨架屏、滚动揭示、光标拖尾

assets/js/core.js

14.23 KB

核心JS库 — 全局 namespace ULS:主题管理、自定义光标、Canvas粒子背景、打字机效果、滚动揭示、Markdown渲染、组件加载器、Toast通知、用户认证、对话框

assets/components/nav.html

全局导航栏组件 — 品牌链接、首页/赛事/编辑器导航、用户区域(#nav-user-area)、主题切换按钮

assets/components/footer.html

全局页脚组件 — 三栏布局:品牌介绍、旗下社团列表、链接导航,版本号 v2.0.0

📝 五、Markdown 内容文件 (共 4 个内容文件 · 动态加载渲染)

content/home/hero.md

首页 Hero 区域 — 品牌标语"文以载道,社以聚心",多体裁多社团核心理念

content/home/about.md

关于我们 — 十余个入驻社团列表介绍(穸阑文学、碎梦阁、不正经文社、醉舟诗社等)

content/contest/intro.md

赛事简介 — "联合文社第二次文字创作大赛"暨2027年高考前最后一次大型赛事,16个参赛社团

content/contest/rules.md

比赛规则 — 社团参赛人数要求(≥15%)、禁止AI创作、元老社团评选、六级定级体系

🔐 六、访问权限矩阵 (三级权限:公开 / 登录用户 / 管理员)

页面 / 路由公开访问登录用户管理员超级管理员说明
/完全公开
/contests需登录,否则重定向 auth
/contest公开查看,投稿需登录
/editor需登录
/auth完全公开
/admin仅管理员可访问
/about关于站长,完全公开
/chess棋类对弈,完全公开
/role-select身份选择,完全公开
/sitemap本页面
/sitemap.xml搜索引擎 XML 地图
/sitemap.json结构化 JSON 地图