Files
chengshishouce/城市手册需求文档.md
mashen c866e74ece Initial commit: React + Django 城市手册项目
- Django 4.2 + DRF + JWT + GraphQL
- React 18 + MobX + styled-components
- PostgreSQL 数据库
- Docker + Docker Compose + Nginx
- 完整的功能模块(用户、版块、文章、服务、交互、版主管理)
- 完整的文档(需求、部署、测试)
2026-04-09 13:56:02 +00:00

9.0 KiB
Raw Blame History

城市手册项目需求文档

1. 项目概述

1.1 项目名称

城市手册

1.2 项目定位

地方志兼本地生活服务平台,记录每个城市的重要信息。

1.3 目标用户

  • 本地居民:深度了解家乡
  • 游客:快速熟悉到达的城市
  • 研究者:了解城市文化和历史

1.4 主要使用场景

  • 本地人通过平台深入了解家乡的历史文化、特色服务
  • 游客快速获取城市基本信息、景点、美食、住宿等实用信息
  • 发现和推荐体现本地特色的生活服务

1.5 产品形态

  • 前期:网站
  • 后期考虑移动App

1.6 语言支持

  • 前期:中文
  • 后期:考虑多语言

1.7 MVP范围

第一版仅做少数几个城市作为样板,后续逐步扩展。


2. 数据来源

2.1 数据来源方式

  • 抓取公开数据(百科、政府网站等)
  • 用户贡献UGC

2.2 数据录入方式

  • 第一版采用人工输入方式
  • 数据抓取工具后续专门开发

3. 权限体系

3.1 用户角色

角色 职责 权限
普通用户 浏览内容、参与互动、申请版主 浏览、评论、评分、点赞、收藏、分享、申请版主、申请特色服务
版主 管理指定版块内容 管辖范围内内容初审、申请创建版块
AI审核员 内容最终审核 版主审核通过后的内容进行最终审核,决定是否发布
管理员 全局管理 版主申请审核、版主权限管理、全局内容管理

3.2 版主权限规则

  • 版主只能审核其管辖范围内的内容
  • 上级版主不需要复核下级版主审核的内容
  • 上级版主有权暂时限制下级版主的权限
  • 版主权限限制可由上级版主或管理员操作

3.3 版主申请机制

  • 用户可以申请成为特定版块的版主
  • 创建版块需要管理员批准
  • 版块创建后,特定时间内需要征集到足够支持人数
  • 支持人数不足则取消版主权限

3.4 军衔体系

版主根据管辖层级对应不同军衔:

管辖层级 军衔
省级 将军
市级 校官
县级 尉官
镇村级 士兵

4. 版块层级结构

省 → 市 → 县 → 乡镇(街道) → 村(居委会)

5. 内容审核流程

5.1 内容提交流程

文章和特色服务提交需经过以下审核流程:

提交 → 版主初审 → AI审核 → 发布
         ↓          ↓
      拒绝      拒绝

5.2 审核规则

  • 版主审核通过后内容进入AI审核
  • AI审核通过后内容正式发布
  • 版主或AI审核拒绝后内容不发布
  • AI审核规则由后台AI自行设计

6. 核心功能

6.1 城市信息展示

城市页面包含:

  • 基础信息卡片:地理位置、人口、气候、行政区划
  • 历史:建立时间、重要历史事件、名人
  • 文化:方言、习俗、节庆、特色小吃
  • 实用:交通、教育、医疗、商业
  • 生活:推荐餐厅、景点、活动、攻略

6.2 特色服务

分类:

  • 衣:服装、特产
  • 食:餐饮美食
  • 住:住宿
  • 行:交通、出行
  • 娱乐:娱乐场所、活动
  • 旅游:景点、游玩
  • 文化:文化体验、博物馆、非遗等

6.3 搜索和导航

  • 城市搜索:按名称、省份、特色搜索
  • 首页导航结构

6.4 用户系统

注册登录:

  • 用户注册(支持邮箱、手机号等)
  • 用户登录
  • 个人中心

个人中心功能:

  • 个人信息管理
  • 收藏列表(可收藏城市、特色服务)
  • 申请管理(版主申请、特色服务申请)

6.5 交互功能

评分:

  • 对城市和特色服务进行评分
  • 评分采用几星制(待确认)

点赞:

  • 对文章、特色服务进行点赞

收藏:

  • 可收藏城市、特色服务
  • 收藏列表在个人中心显示

分享:

  • 支持分享到微信朋友圈、微博、复制链接
  • 生成分享卡片

评论:

  • 对文章和城市可以评论
  • 评论内容由AI审核

7. 后台管理功能

7.1 内容管理

  • 城市信息管理(添加、编辑、删除)
  • 特色服务管理(添加、编辑、删除)
  • 内容审核管理(查看待审核内容、查看审核历史)

7.2 用户管理

  • 用户列表查看
  • 用户信息管理

7.3 版主管理

  • 版主申请审核
  • 版主权限管理(授予、限制、取消)
  • 版块管理

7.4 数据统计

  • 用户统计
  • 内容统计
  • 互动统计

8. 数据库设计

8.1 核心数据表

  1. 用户表 (users)

    • 用户ID
    • 用户名
    • 邮箱/手机号
    • 密码(加密)
    • 角色类型(普通用户/版主/管理员)
    • 创建时间
    • 状态(正常/禁用)
  2. 版块表 (regions)

    • 版块ID
    • 版块名称
    • 版块级别(省/市/县/乡镇/村)
    • 上级版块ID
    • 创建时间
    • 状态
  3. 版主申请表 (moderator_applications)

    • 申请ID
    • 申请者ID
    • 申请的版块ID
    • 申请时间
    • 支持人数
    • 截止时间
    • 状态(待审核/已通过/已拒绝/已取消)
    • 审核人ID
    • 审核时间
  4. 版主权限表 (moderator_permissions)

    • 权限ID
    • 版主ID
    • 管辖版块ID
    • 军衔级别
    • 权限状态(正常/限制/取消)
    • 创建时间
    • 限制时间(如有限制)
  5. 内容表 (articles)

    • 内容ID
    • 标题
    • 内容
    • 所属版块ID
    • 内容类型(城市信息/历史/文化/实用/生活)
    • 提交者ID
    • 版主审核人ID
    • 版主审核时间
    • 版主审核状态(待审核/通过/拒绝)
    • AI审核状态待审核/通过/拒绝)
    • AI审核时间
    • 发布状态(未发布/已发布)
    • 创建时间
    • 更新时间
  6. 特色服务表 (featured_services)

    • 服务ID
    • 服务名称
    • 服务描述
    • 所属版块ID
    • 服务分类(衣/食/住/行/娱乐/旅游/文化)
    • 提交者ID
    • 版主审核人ID
    • 版主审核时间
    • 版主审核状态(待审核/通过/拒绝)
    • AI审核状态待审核/通过/拒绝)
    • AI审核时间
    • 发布状态(未发布/已发布)
    • 创建时间
    • 更新时间
  7. 评论表 (comments)

    • 评论ID
    • 评论内容
    • 评论对象ID文章ID或特色服务ID
    • 评论对象类型(文章/特色服务)
    • 评论者ID
    • AI审核状态待审核/通过/拒绝)
    • 创建时间
  8. 收藏表 (favorites)

    • 收藏ID
    • 用户ID
    • 收藏对象ID城市ID或特色服务ID
    • 收藏对象类型(城市/特色服务)
    • 创建时间
  9. 评分表 (ratings)

    • 评分ID
    • 用户ID
    • 评分对象ID城市ID或特色服务ID
    • 评分对象类型(城市/特色服务)
    • 评分值
    • 创建时间
  10. 点赞表 (likes)

    • 点赞ID
    • 用户ID
    • 点赞对象ID文章ID或特色服务ID
    • 点赞对象类型(文章/特色服务)
    • 创建时间
  11. 版主支持表 (moderator_supports)

    • 支持ID
    • 支持者ID
    • 版主申请ID
    • 创建时间
  12. 权限限制表 (permission_restrictions)

    • 限制ID
    • 操作者ID上级版主或管理员
    • 被限制版主ID
    • 限制类型(部分限制/完全限制)
    • 限制开始时间
    • 限制结束时间
    • 创建时间

9. 技术实现要点

9.1 版主审核权限判断逻辑

用户A可以审核内容B的条件

  1. 用户A是版主且权限状态为正常
  2. 内容B的版块 == 用户A管辖的版块 或 内容B的版块在用户A管辖范围内

9.2 版块申请自动化逻辑

  • 截止时间到达且支持人数不足 → 自动取消版主申请
  • 版主申请取消后,相关支持记录保留但状态标记为已取消

9.3 内容审核流程自动化

  • 版主审核通过 → 自动提交到AI审核队列
  • AI审核完成 → 自动更新内容发布状态

9.4 支持人数统计

  • 实时统计版主申请的支持人数
  • 定期更新支持人数到版主申请表

10. 待确认细节

以下细节待进一步确认:

  1. 版块申请截止时间和支持人数

    • 征集期具体时长?
    • 多少人数算"足够支持人数"
  2. 评分机制

    • 评分采用几星制1-5星
    • 评分是否需要写评价?
  3. 城市信息数据字段

    • 固定模板 vs 灵活标签
  4. AI审核拒绝后的处理

    • 提交者能看到拒绝原因吗?
    • 是否可以申诉?
  5. 分享卡片生成

    • 卡片样式和内容格式?
  6. 版主权限限制的具体逻辑

    • 部分限制限制哪些权限?
    • 限制的最长时限?

11. 版本规划

1.0MVP

  • 基础网站功能
  • 少数样板城市
  • 用户系统
  • 评论、评分、点赞、收藏、分享
  • 版主申请和审核机制
  • 内容审核流程(版主+AI

后续版本

  • 扩展更多城市
  • 移动App开发
  • 多语言支持
  • 数据抓取工具
  • 商家入驻功能
  • 高级统计和分析

12. 文档版本

版本 日期 说明
1.0 2026-04-09 初始版本