<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>SaaS on 雾之岛</title><link>https://lctnb.top/tags/saas/</link><description>Recent content from 雾之岛</description><generator>Hugo</generator><language>zh-cn</language><managingEditor>wudao686@gmail.com (雾岛)</managingEditor><webMaster>wudao686@gmail.com (雾岛)</webMaster><copyright>本博客所有文章除特别声明外，均采用 BY-NC-SA 许可协议。转载请注明出处！</copyright><lastBuildDate>Wed, 15 Jul 2026 22:00:00 +0800</lastBuildDate><atom:link href="https://lctnb.top/tags/saas/index.xml" rel="self" type="application/rss+xml"/><item><title>FF-Lite（云联） 仿飞书协同办公平台 - 完整项目介绍与使用指南</title><link>https://lctnb.top/post/ff-lite-%E9%A1%B9%E7%9B%AE%E5%AE%8C%E6%95%B4%E4%BB%8B%E7%BB%8D%E4%B8%8E%E4%BD%BF%E7%94%A8%E6%8C%87%E5%8D%97/</link><pubDate>Wed, 15 Jul 2026 22:00:00 +0800</pubDate><author>wudao686@gmail.com (雾岛)</author><guid>https://lctnb.top/post/ff-lite-%E9%A1%B9%E7%9B%AE%E5%AE%8C%E6%95%B4%E4%BB%8B%E7%BB%8D%E4%B8%8E%E4%BD%BF%E7%94%A8%E6%8C%87%E5%8D%97/</guid><description>
<![CDATA[<h1>FF-Lite（云联） 仿飞书协同办公平台 - 完整项目介绍与使用指南</h1><p>作者：雾岛（wudao686@gmail.com）</p>
        
          <h1 id="ff-lite云联-仿飞书协同办公平台---完整项目介绍与使用指南">
<a class="header-anchor" href="#ff-lite%e4%ba%91%e8%81%94-%e4%bb%bf%e9%a3%9e%e4%b9%a6%e5%8d%8f%e5%90%8c%e5%8a%9e%e5%85%ac%e5%b9%b3%e5%8f%b0---%e5%ae%8c%e6%95%b4%e9%a1%b9%e7%9b%ae%e4%bb%8b%e7%bb%8d%e4%b8%8e%e4%bd%bf%e7%94%a8%e6%8c%87%e5%8d%97"></a>
FF-Lite（云联） 仿飞书协同办公平台 - 完整项目介绍与使用指南
</h1><hr>
<h2 id="一项目概述">
<a class="header-anchor" href="#%e4%b8%80%e9%a1%b9%e7%9b%ae%e6%a6%82%e8%bf%b0"></a>
一、项目概述
</h2><h3 id="11-一句话定位">
<a class="header-anchor" href="#11-%e4%b8%80%e5%8f%a5%e8%af%9d%e5%ae%9a%e4%bd%8d"></a>
1.1 一句话定位
</h3><p><strong>为中小企业提供 2 周即可上线的协同办公 MVP</strong>，覆盖&quot;找人、聊天、写文档、管账号、管组织、管任务&quot;六大场景，让 50 人以下团队无需采购 SaaS 也能跑通数字化办公闭环。</p>
<h3 id="12-产品代号">
<a class="header-anchor" href="#12-%e4%ba%a7%e5%93%81%e4%bb%a3%e5%8f%b7"></a>
1.2 产品代号
</h3><p><strong>FF-Lite（云联） MVP</strong>（仿飞书协同办公平台最小可行产品）</p>
<h3 id="13-核心价值">
<a class="header-anchor" href="#13-%e6%a0%b8%e5%bf%83%e4%bb%b7%e5%80%bc"></a>
1.3 核心价值
</h3><table>
	<thead>
			<tr>
					<th style="text-align: left">痛点</th>
					<th style="text-align: left">传统做法</th>
					<th style="text-align: left">FF-Lite（云联） 解法</th>
			</tr>
	</thead>
	<tbody>
			<tr>
					<td style="text-align: left">团队沟通分散</td>
					<td style="text-align: left">微信 + 邮件混用</td>
					<td style="text-align: left">工作消息全在一处，实时推送</td>
			</tr>
			<tr>
					<td style="text-align: left">找人困难</td>
					<td style="text-align: left">翻微信群 / 问同事</td>
					<td style="text-align: left">通讯录检索 + 员工名片</td>
			</tr>
			<tr>
					<td style="text-align: left">文档协作混乱</td>
					<td style="text-align: left">邮件附件 + 微信传文件</td>
					<td style="text-align: left">本地编辑 + 群组分享</td>
			</tr>
			<tr>
					<td style="text-align: left">账号管理乱</td>
					<td style="text-align: left">共享账号 / 密码群发</td>
					<td style="text-align: left">用户管理 + RBAC + 操作日志</td>
			</tr>
			<tr>
					<td style="text-align: left">组织架构不清</td>
					<td style="text-align: left">群聊混乱</td>
					<td style="text-align: left">部门树 + 职位管理</td>
			</tr>
			<tr>
					<td style="text-align: left">任务追踪困难</td>
					<td style="text-align: left">口头/微信派活</td>
					<td style="text-align: left">任务发布/分配/追踪/日程</td>
			</tr>
	</tbody>
</table>
<h3 id="14-项目状态">
<a class="header-anchor" href="#14-%e9%a1%b9%e7%9b%ae%e7%8a%b6%e6%80%81"></a>
1.4 项目状态
</h3><table>
	<thead>
			<tr>
					<th style="text-align: center">版本</th>
					<th style="text-align: left">范围</th>
					<th style="text-align: center">功能数</th>
					<th style="text-align: center">状态</th>
			</tr>
	</thead>
	<tbody>
			<tr>
					<td style="text-align: center">V1.0</td>
					<td style="text-align: left">用户中心 / 通讯录 / IM / 文档 / 管理后台</td>
					<td style="text-align: center">22</td>
					<td style="text-align: center">已完成</td>
			</tr>
			<tr>
					<td style="text-align: center">V2.0</td>
					<td style="text-align: left">多企业 SaaS 化（企业注册 / 邀请码 / 删除企业 / 数据隔离）</td>
					<td style="text-align: center">4</td>
					<td style="text-align: center">已完成</td>
			</tr>
			<tr>
					<td style="text-align: center">V2.1</td>
					<td style="text-align: left">任务与日程管理</td>
					<td style="text-align: center">5</td>
					<td style="text-align: center">已完成</td>
			</tr>
			<tr>
					<td style="text-align: center">V2.1+</td>
					<td style="text-align: left">AI 智能助理</td>
					<td style="text-align: center">5</td>
					<td style="text-align: center">规划中</td>
			</tr>
	</tbody>
</table>
<hr>
<h2 id="二技术架构">
<a class="header-anchor" href="#%e4%ba%8c%e6%8a%80%e6%9c%af%e6%9e%b6%e6%9e%84"></a>
二、技术架构
</h2><h3 id="21-技术栈一览">
<a class="header-anchor" href="#21-%e6%8a%80%e6%9c%af%e6%a0%88%e4%b8%80%e8%a7%88"></a>
2.1 技术栈一览
</h3><table>
	<thead>
			<tr>
					<th style="text-align: left">层级</th>
					<th style="text-align: left">技术选型</th>
					<th style="text-align: left">说明</th>
			</tr>
	</thead>
	<tbody>
			<tr>
					<td style="text-align: left"><strong>前端</strong></td>
					<td style="text-align: left">Vue 3 + TypeScript + Vite</td>
					<td style="text-align: left">SPA 单页应用，Element Plus 组件库</td>
			</tr>
			<tr>
					<td style="text-align: left"><strong>后端</strong></td>
					<td style="text-align: left">.NET 10 + C#</td>
					<td style="text-align: left">模块化单体架构，DDD 领域驱动设计</td>
			</tr>
			<tr>
					<td style="text-align: left"><strong>数据库</strong></td>
					<td style="text-align: left">PostgreSQL 16+</td>
					<td style="text-align: left">多 Schema 隔离，EF Core ORM</td>
			</tr>
			<tr>
					<td style="text-align: left"><strong>缓存/消息</strong></td>
					<td style="text-align: left">Redis 7+</td>
					<td style="text-align: left">缓存 + SignalR Backplane 实时推送</td>
			</tr>
			<tr>
					<td style="text-align: left"><strong>文件存储</strong></td>
					<td style="text-align: left">MinIO</td>
					<td style="text-align: left">对象存储（图片/文件上传）</td>
			</tr>
			<tr>
					<td style="text-align: left"><strong>实时通信</strong></td>
					<td style="text-align: left">SignalR</td>
					<td style="text-align: left">WebSocket 实时消息推送</td>
			</tr>
			<tr>
					<td style="text-align: left"><strong>认证</strong></td>
					<td style="text-align: left">JWT (HS256)</td>
					<td style="text-align: left">无状态 Token 认证</td>
			</tr>
			<tr>
					<td style="text-align: left"><strong>部署</strong></td>
					<td style="text-align: left">Docker Compose</td>
					<td style="text-align: left">一键启动 5 个容器</td>
			</tr>
			<tr>
					<td style="text-align: left"><strong>反向代理</strong></td>
					<td style="text-align: left">Nginx + Let&rsquo;s Encrypt</td>
					<td style="text-align: left">HTTPS 加密 + 域名转发</td>
			</tr>
	</tbody>
</table>
<h3 id="22-架构图">
<a class="header-anchor" href="#22-%e6%9e%b6%e6%9e%84%e5%9b%be"></a>
2.2 架构图
</h3><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-fallback" data-lang="fallback"><span class="line"><span class="cl">┌─────────────────────────────────────────────────────────┐
</span></span><span class="line"><span class="cl">│                      用户浏览器                          │
</span></span><span class="line"><span class="cl">│                  https://fs.lctnb.top                    │
</span></span><span class="line"><span class="cl">└──────────────────────┬──────────────────────────────────┘
</span></span><span class="line"><span class="cl">                       │ HTTPS
</span></span><span class="line"><span class="cl">                       ▼
</span></span><span class="line"><span class="cl">┌─────────────────────────────────────────────────────────┐
</span></span><span class="line"><span class="cl">│                   Nginx 反向代理                         │
</span></span><span class="line"><span class="cl">│              (SSL 终止 + 静态文件 + API 转发)             │
</span></span><span class="line"><span class="cl">└──────────┬──────────────────────┬───────────────────────┘
</span></span><span class="line"><span class="cl">           │ /api/*               │ /*
</span></span><span class="line"><span class="cl">           ▼                      ▼
</span></span><span class="line"><span class="cl">┌──────────────────┐   ┌──────────────────┐
</span></span><span class="line"><span class="cl">│   ff-api (.NET)  │   │  ff-frontend     │
</span></span><span class="line"><span class="cl">│   端口: 5000     │   │  (Nginx 静态)    │
</span></span><span class="line"><span class="cl">└────────┬─────────┘   └──────────────────┘
</span></span><span class="line"><span class="cl">         │
</span></span><span class="line"><span class="cl">    ┌────┼────┬────────┐
</span></span><span class="line"><span class="cl">    ▼    ▼    ▼        ▼
</span></span><span class="line"><span class="cl">┌──────┐ ┌──────┐ ┌──────┐
</span></span><span class="line"><span class="cl">│PostgreSQL│ │Redis │ │MinIO │
</span></span><span class="line"><span class="cl">│  :5432  │ │:6379 │ │:9000 │
</span></span><span class="line"><span class="cl">└─────────┘ └──────┘ └──────┘
</span></span></code></pre></div><h3 id="23-项目目录结构">
<a class="header-anchor" href="#23-%e9%a1%b9%e7%9b%ae%e7%9b%ae%e5%bd%95%e7%bb%93%e6%9e%84"></a>
2.3 项目目录结构
</h3><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-fallback" data-lang="fallback"><span class="line"><span class="cl">FF-Lite/
</span></span><span class="line"><span class="cl">├── frontend/                     # Vue 3 前端
</span></span><span class="line"><span class="cl">│   └── src/
</span></span><span class="line"><span class="cl">│       ├── views/                # 页面组件
</span></span><span class="line"><span class="cl">│       │   ├── auth/             # 登录/注册/企业注册
</span></span><span class="line"><span class="cl">│       │   ├── workbench/        # 工作台
</span></span><span class="line"><span class="cl">│       │   ├── im/               # 即时通讯
</span></span><span class="line"><span class="cl">│       │   ├── contact/          # 通讯录
</span></span><span class="line"><span class="cl">│       │   ├── doc/              # 云文档
</span></span><span class="line"><span class="cl">│       │   ├── task/             # 任务管理
</span></span><span class="line"><span class="cl">│       │   ├── profile/          # 个人中心
</span></span><span class="line"><span class="cl">│       │   └── admin/            # 管理后台
</span></span><span class="line"><span class="cl">│       ├── router/               # 路由配置
</span></span><span class="line"><span class="cl">│       ├── stores/               # Pinia 状态管理
</span></span><span class="line"><span class="cl">│       └── components/           # 公共组件
</span></span><span class="line"><span class="cl">├── backend/                      # .NET 10 后端
</span></span><span class="line"><span class="cl">│   └── src/
</span></span><span class="line"><span class="cl">│       ├── FF.App.Api/           # API 入口（Controllers + SignalR Hub）
</span></span><span class="line"><span class="cl">│       ├── FF.App.Auth/          # 认证模块（JWT + 登录/注册）
</span></span><span class="line"><span class="cl">│       ├── FF.App.User/          # 用户模块（通讯录/部门/个人中心）
</span></span><span class="line"><span class="cl">│       ├── FF.App.IM/            # 即时通讯模块（SignalR + 消息）
</span></span><span class="line"><span class="cl">│       ├── FF.App.Doc/           # 文档模块（编辑器/分享）
</span></span><span class="line"><span class="cl">│       ├── FF.App.Admin/         # 管理后台（RBAC/日志/职位）
</span></span><span class="line"><span class="cl">│       ├── FF.App.Task/          # 任务管理模块（DDD 聚合）
</span></span><span class="line"><span class="cl">│       ├── FF.App.Tenant/        # 企业租户模块（SaaS）
</span></span><span class="line"><span class="cl">│       └── FF.App.SharedKernel/  # 共享内核（DDD 基础）
</span></span><span class="line"><span class="cl">└── docs/                         # 项目文档
</span></span><span class="line"><span class="cl">    ├── 01-需求分析/PRD.md
</span></span><span class="line"><span class="cl">    ├── 02-开发文档/
</span></span><span class="line"><span class="cl">    ├── 04-数据库设计/
</span></span><span class="line"><span class="cl">    └── 10-测试文档/
</span></span></code></pre></div><hr>
<h2 id="三功能模块详解">
<a class="header-anchor" href="#%e4%b8%89%e5%8a%9f%e8%83%bd%e6%a8%a1%e5%9d%97%e8%af%a6%e8%a7%a3"></a>
三、功能模块详解
</h2><h3 id="31-用户认证4-个功能">
<a class="header-anchor" href="#31-%e7%94%a8%e6%88%b7%e8%ae%a4%e8%af%814-%e4%b8%aa%e5%8a%9f%e8%83%bd"></a>
3.1 用户认证（4 个功能）
</h3><table>
	<thead>
			<tr>
					<th style="text-align: left">功能</th>
					<th style="text-align: left">说明</th>
			</tr>
	</thead>
	<tbody>
			<tr>
					<td style="text-align: left"><strong>登录</strong></td>
					<td style="text-align: left">手机号 + 密码登录，JWT Token 认证</td>
			</tr>
			<tr>
					<td style="text-align: left"><strong>邀请注册</strong></td>
					<td style="text-align: left">管理员生成邀请链接 → 员工点链接注册 → 自动入部门</td>
			</tr>
			<tr>
					<td style="text-align: left"><strong>企业注册</strong></td>
					<td style="text-align: left">手机号 + 企业名称 + 密码 → 创建企业并成为超管</td>
			</tr>
			<tr>
					<td style="text-align: left"><strong>个人中心</strong></td>
					<td style="text-align: left">修改头像、昵称、邮箱、个性签名</td>
			</tr>
	</tbody>
</table>
<h4 id="登录页面">
<a class="header-anchor" href="#%e7%99%bb%e5%bd%95%e9%a1%b5%e9%9d%a2"></a>
登录页面
</h4><p><img src="https://gitee.com/ak-47-combustible-ice/pic-go/raw/master/20260720213028287.png" alt="登录页面"></p>
        
        <hr><p>本文2026-07-15首发于<a href='https://lctnb.top/'>雾之岛</a>，最后修改于2026-07-15</p>]]></description><category>项目文档</category></item></channel></rss>