# 图片直播项目全景导图 版本:V1.3 · 日期:2026-09-17 依据:[需求说明书](../01-需求说明书.md) · [优化方案](../04-优化方案.md) 相关:[业务流程](./02-业务流程.md) · [实施计划](./03-实施计划.md) 以下导图描述第一版规划范围,不表示功能已经实现。中文和英文为建议首发语种,服务端技术栈和容量参数待验证。 ## 1 项目思维导图 ```mermaid mindmap root((公司图片直播项目)) 工作人员 App Flutter 双平台 Android iOS 登录与权限 账号密码登录 接口同步用户 不开放注册 相册与协作 创建配置 时间地点宣传图 邀请同事 多人上传 自己照片管理 拍摄与上传 连续拍摄和相册选图 准备状态与上传队列 后台锁屏上传与异常恢复 本机队列与服务端历史 管理后台 定期拉取用户接口 稳定 ID 幂等更新 失败重试与手动补拉 用户同步与账号激活停用 全部相册与照片管理 上传公开独立开关 批量隐藏与负责人交接 下载权限与水印版本 网站展示位与用量告警 观众网页 扫码或分享链接免登录 宣传图与活动信息 浏览次数与跨标签去重 瀑布流与分类 全屏大图与左右滑动 分享与按权限下载 连续点赞与全相册气泡 自身动画去重 后台暂停与减少动画 网站悬浮组件 一段 JS 绑定展示位 后台切换活动相册 右侧悬浮轮播 自动获取最新公开照片 点击打开观众页 不可见时暂停更新 支撑服务 内部身份与相册权限 国内 OSS 直传和全球 CDN 原图防覆盖与衍生图处理 海外 API 与实时模块合并部署 独立图片处理进程 国内元数据推送与定时补漏 海外浏览点赞与统计回传 两地数据库 备份监控 共用规则 全端多语言 无修图 无人工审核 上传完成处理后自动公开 隐藏删除与公开状态一致 匿名计数不等于真实人数 ``` ## 2 系统组成与数据关系 Flutter 和现有 OSS 已确定;其余组件为实施方案基线。国内管理与海外观众服务分区部署;海外实时模块与观众 API 同部署,国内 worker 独立;轮播读海外,图片经全球 CDN。 ```mermaid flowchart TB APP["工作人员 App"] --> CN["国内管理 API"] ADM["国内管理后台"] --> CN USRC["用户信息接口"] -->|国内定时拉取| USYNC["用户资料同步任务"] USYNC --> CN APP -->|临时授权直传| OSS["国内 OSS 原图与浏览资源"] CN --> CDB[("国内主数据库")] CN --> WORKER["国内图片处理 worker"] WORKER --> OSS WORKER --> CDB CDB --> OUT["持久事件与定时补漏"] OUT -->|版本化元数据| OVER["海外观众 API 与实时模块"] OVER --> ODB[("海外展示副本与互动数据库")] ODB -->|统计快照回传| CN USER["海外观众"] -->|页面 查询 点赞 浏览| OVER SLOT["官网 JS 展示位"] -->|轮询| OVER OSS -->|回源| CDN["全球 CDN"] USER -->|图片请求| CDN SLOT -->|轮播图片| CDN ``` ## 3 权限速查 | 角色 | 管理范围 | |---|---| | 公司管理员 | 用户同步、账号激活、相册、照片、展示位和负责人转移 | | 相册创建者 | 自己创建的相册、协作者、全部相册照片及获授权展示位 | | 相册协作者 | 已加入相册的上传权限,管理自己上传的照片 | | 匿名观众 | 浏览、连续点赞、分享,按相册设置下载 | 长期保存不等于永久公开。关闭公开开关不删除原图;关闭上传也不自动关闭观众页面。