# 小程序改造方案 - 开发者中心 & 企业控制台 > 制定时间:2026-04-12 > 项目中心:以「项目」为核心构建所有功能 --- ## 一、整体架构设计 ### 1.1 用户角色划分 ``` ┌─────────────────────────────────────────────────────────────┐ │ 小程序端 │ ├─────────────────────────┬───────────────────────────────────┤ │ 🛠️ 开发者角色 │ 🏢 企业客户角色 │ │ (Developer) │ (Enterprise) │ ├─────────────────────────┼───────────────────────────────────┤ │ • 拥有开发者权限的用户 │ • 拥有企业权限的用户 │ │ • 可开发/发布应用 │ • 可管理企业应用、成员、账单 │ │ • 独立于企业存在 │ • 属于某个企业组织 │ │ │ • 可申请成为开发者 │ └─────────────────────────┴───────────────────────────────────┘ ``` ### 1.2 角色获取方式 | 角色 | 获取方式 | 说明 | |------|---------|------| | 开发者 | 申请审核制 | 用户主动申请 → 资料审核 → 获得开发者权限 | | 企业客户 | 购买产品 | 下单支付 → 自动开通企业账号 → 成为企业主 | --- ## 二、页面结构设计 ### 2.1 入口设计 ``` 首页 (pages/index/index) ├── 产品展示区 ├── 快捷入口区 │ ├── 🛠️ 开发者中心 (开发者角色入口) │ └── 🏢 企业控制台 (企业客户入口) └── 底部 TabBar (商城/购物车/我的) ``` **注意**:两个入口对普通用户可见,但需要对应角色权限才能进入。 ### 2.2 开发者中心 (developer/) ``` developer/ ├── index.tsx # 开发者工作台 │ ├── 我的项目列表 │ ├── 快捷操作 (新建项目、查看文档) │ └── 开发者动态/通知 │ ├── project/ │ ├── index.tsx # 项目列表 │ ├── create.tsx # 创建项目 │ └── [id]/ │ ├── index.tsx # 项目概览 │ ├── settings.tsx # 项目设置 │ ├── members.tsx # 项目成员 │ ├── api-keys.tsx # API Key 管理 │ ├── deployments.tsx # 部署记录 │ └── logs.tsx # 运行日志 │ ├── app/ # 应用管理 │ ├── index.tsx # 应用列表 │ ├── create.tsx # 创建应用 │ └── [id]/ │ ├── index.tsx # 应用详情 │ ├── version.tsx # 版本管理 │ ├── config.tsx # 应用配置 │ └── publish.tsx # 发布管理 │ ├── market/ # 开发者市场 │ ├── index.tsx # 市场首页 │ ├── templates.tsx # 模板市场 │ └── plugins.tsx # 插件市场 │ ├── orders/ # 开发订单 (已有) │ └── index.tsx │ ├── developer/ # 开发者中心 │ ├── index.tsx # 开发者设置 │ ├── profile.tsx # 个人资料 │ ├── credentials.tsx # 开发者凭证 │ └── notification.tsx # 通知设置 │ └── docs/ # 文档中心 ├── index.tsx # 文档首页 ├── quickstart.tsx # 快速开始 ├── api-docs.tsx # API 文档 └── sdk-download.tsx # SDK 下载 ``` ### 2.3 企业控制台 (enterprise/) ``` enterprise/ ├── index.tsx # 企业工作台 │ ├── 企业概览仪表盘 │ ├── 快捷入口 (应用/成员/账单) │ └── 最新动态 │ ├── apps/ # 企业应用 │ ├── index.tsx # 应用列表 │ ├── [id]/ │ │ ├── index.tsx # 应用详情 │ │ ├── monitor.tsx # 运营监控 │ │ ├── analytics.tsx # 数据分析 │ │ └── settings.tsx # 应用设置 │ └── purchase.tsx # 购买应用 │ ├── members/ # 成员管理 │ ├── index.tsx # 成员列表 │ ├── invite.tsx # 邀请成员 │ ├── roles.tsx # 角色权限 │ └── audit.tsx # 权限审批 │ ├── orders/ # 订单账单 │ ├── index.tsx # 订单列表 │ ├── detail.tsx # 订单详情 │ ├── invoice.tsx # 发票管理 │ └── bills.tsx # 账单明细 │ ├── billing/ # 费用中心 │ ├── index.tsx # 费用概览 │ ├── consumption.tsx # 消费明细 │ ├── recharge.tsx # 充值中心 │ └── coupons.tsx # 优惠券 │ ├── enterprise/ # 企业设置 │ ├── index.tsx # 企业设置 │ ├── info.tsx # 企业信息 │ ├── domain.tsx # 域名配置 │ ├── security.tsx # 安全设置 │ └── notification.tsx # 通知设置 │ └── developer/ # 开发者入口 ├── index.tsx # 开发者介绍 └── apply.tsx # 申请开发者 ``` --- ## 三、核心功能设计 ### 3.1 项目管理 (项目中心) **项目类型**: | 类型 | 说明 | 适用角色 | |------|------|---------| | 基础项目 | 免费,限制功能 | 所有开发者 | | 专业项目 | 付费,功能完整 | 开发者/企业 | | 企业项目 | 全功能,支持团队协作 | 企业 | **项目核心属性**: ```typescript interface Project { id: string name: string // 项目名称 type: 'basic' | 'pro' | 'enterprise' owner: string // 所有者 (开发者ID 或 企业ID) ownerType: 'developer' | 'enterprise' description?: string // 项目描述 icon?: string // 项目图标 status: 'active' | 'suspended' | 'archived' createdAt: string updatedAt: string // 关联信息 apps: string[] // 关联的应用 members: ProjectMember[] // 项目成员 apiKeys: ApiKey[] // API Key // 统计 appCount: number memberCount: number apiCallCount: number // API 调用次数 storageUsed: number // 存储使用量 } ``` ### 3.2 开发者角色功能 **权限项**: | 权限 | 说明 | 默认 | |------|------|------| | project.create | 创建项目 | ✅ | | project.edit | 编辑项目 | ✅ | | project.delete | 删除项目 | ✅ | | app.create | 创建应用 | ✅ | | app.publish | 发布应用 | ✅ | | apiKey.manage | 管理 API Key | ✅ | | market.access | 访问市场 | ✅ | | docs.access | 访问文档 | ✅ | **开发者特有功能**: - ✅ 创建和管理个人项目 - ✅ 开发、测试、发布应用 - ✅ 访问模板/插件市场 - ✅ 生成和管理 API Key - ✅ 查看开发者文档和 SDK - ✅ 提交工单和技术支持 ### 3.3 企业客户角色功能 **权限项**: | 权限 | 说明 | 适用角色 | |------|------|------| | enterprise.manage | 企业管理 | 企业主 | | app.manage | 应用管理 | 企业主/管理员 | | member.invite | 邀请成员 | 企业主/管理员 | | member.role | 分配角色 | 企业主/管理员 | | order.view | 查看订单 | 所有成员 | | billing.view | 查看账单 | 企业主/财务 | | billing.pay | 支付充值 | 企业主/财务 | **企业特有功能**: - ✅ 企业仪表盘和数据概览 - ✅ 应用运营监控 - ✅ 成员邀请和权限管理 - ✅ 订单管理和发票 - ✅ 费用中心和充值 - ✅ 企业信息配置 ### 3.4 角色切换机制 ``` 用户登录 │ ├── 开发者身份 │ └── 可进入开发者中心 │ ├── 企业身份 │ └── 可进入企业控制台 │ └── 两者皆有 └── 可切换身份入口 ├── [开发者] 🛠️ 开发者中心 └── [企业] 🏢 企业控制台 ``` --- ## 四、开发优先级与里程碑 ### Phase 1:基础框架 ⭐ 必须上线 **目标**:建立核心框架,实现最小可用产品 | 模块 | 页面 | 工作量 | 优先级 | |------|------|--------|--------| | 入口设计 | 首页快捷入口 + 身份切换 | ⭐⭐ | P0 | | 开发者工作台 | 开发者首页/概览 | ⭐⭐⭐ | P0 | | 项目管理 | 项目列表 + 创建 | ⭐⭐⭐⭐ | P0 | | 应用管理 | 应用列表 + 创建 | ⭐⭐⭐⭐ | P0 | | 企业工作台 | 企业首页/概览 | ⭐⭐⭐ | P0 | | 企业应用 | 应用列表 + 详情 | ⭐⭐⭐⭐ | P0 | ### Phase 2:核心功能 ⭐ 必须上线 **目标**:完成核心业务闭环 | 模块 | 页面 | 工作量 | 优先级 | |------|------|--------|--------| | API Key | 生成/查看/禁用 | ⭐⭐⭐ | P0 | | 项目成员 | 邀请/移除/角色 | ⭐⭐⭐ | P0 | | 应用发布 | 版本管理/发布 | ⭐⭐⭐ | P0 | | 企业成员 | 列表/邀请/角色 | ⭐⭐⭐⭐ | P0 | | 订单管理 | 列表/详情 | ⭐⭐⭐ | P0 | | 账单查看 | 消费明细 | ⭐⭐⭐ | P0 | ### Phase 3:增强功能 🔄 后续迭代 | 模块 | 页面 | 工作量 | 优先级 | |------|------|--------|--------| | 开发者申请 | 申请流程/审核 | ⭐⭐⭐ | P1 | | 权限审批 | 权限申请/审批 | ⭐⭐⭐ | P1 | | 市场浏览 | 模板/插件市场 | ⭐⭐⭐⭐ | P1 | | 运营监控 | 数据看板 | ⭐⭐⭐⭐ | P1 | | 开发者文档 | API文档/SDK | ⭐⭐⭐⭐ | P1 | | 消息通知 | 通知中心 | ⭐⭐⭐ | P1 | ### Phase 4:高级功能 🔄 后续迭代 | 模块 | 页面 | 工作量 | 优先级 | |------|------|--------|--------| | CI/CD | 流水线管理 | ⭐⭐⭐⭐⭐ | P2 | | 部署管理 | 一键部署 | ⭐⭐⭐⭐ | P2 | | 数据分析 | 高级统计 | ⭐⭐⭐⭐ | P2 | | 工单系统 | 技术支持 | ⭐⭐⭐ | P2 | | 发票管理 | 电子发票 | ⭐⭐⭐ | P2 | | SSO | 单点登录 | ⭐⭐⭐⭐⭐ | P2 | --- ## 五、与现有模块的关系 ### 5.1 独立开发,不依赖现有模块 | 新建模块 | 说明 | |---------|------| | developer/ | 开发者中心全套功能 | | enterprise/ | 企业控制台全套功能 | ### 5.2 共享基础设施 | 共享内容 | 说明 | |---------|------| | 用户认证 | 复用 passport 模块的登录体系 | | 用户状态 | 复用 globalData/storage 中的用户信息 | | 消息通知 | 可复用 notification 组件 | | 基础 UI | 复用组件库样式 | ### 5.3 不复用模块 - ❌ 不复用 shop/ (商城) - 独立的企业应用体系 - ❌ 不复用 dealer/ (分销) - 独立的开发者体系 - ❌ 不复用 user/order (用户订单) - 使用新的企业订单体系 --- ## 六、技术实现建议 ### 6.1 目录结构 ``` src/ ├── developer/ # 🛠️ 开发者模块 │ ├── index.tsx # 开发者入口 │ ├── project/ # 项目管理 │ ├── app/ # 应用管理 │ ├── market/ # 市场 │ └── docs/ # 文档 │ ├── enterprise/ # 🏢 企业模块 │ ├── index.tsx # 企业入口 │ ├── apps/ # 企业应用 │ ├── members/ # 成员管理 │ ├── orders/ # 订单账单 │ ├── billing/ # 费用中心 │ └── settings/ # 企业设置 │ └── shared/ # 共享 ├── components/ # 共享组件 ├── types/ # 类型定义 └── api/ # API 接口 ``` ### 6.2 路由配置 ```typescript // app.config.ts export default { subpackages: [ { root: "developer", pages: [ "index", "project/index", "project/create", "project/[id]/index", "project/[id]/settings", "app/index", "app/create", "app/[id]/index", // ... ] }, { root: "enterprise", pages: [ "index", "apps/index", "apps/[id]/index", "members/index", "members/invite", "orders/index", "orders/detail", // ... ] } ] } ``` --- ## 七、API 接口设计建议 ### 7.1 项目相关 | 接口 | 方法 | 说明 | |------|------|------| | /api/project/list | GET | 项目列表 | | /api/project/create | POST | 创建项目 | | /api/project/:id | GET/PUT/DELETE | 项目 CRUD | | /api/project/:id/members | GET/POST/DELETE | 项目成员 | | /api/project/:id/keys | GET/POST/DELETE | API Key | ### 7.2 应用相关 | 接口 | 方法 | 说明 | |------|------|------| | /api/app/list | GET | 应用列表 | | /api/app/create | POST | 创建应用 | | /api/app/:id | GET/PUT/DELETE | 应用 CRUD | | /api/app/:id/version | POST | 发布版本 | ### 7.3 企业相关 | 接口 | 方法 | 说明 | |------|------|------| | /api/enterprise/info | GET | 企业信息 | | /api/enterprise/members | GET/POST | 成员管理 | | /api/enterprise/roles | GET/POST | 角色管理 | | /api/enterprise/orders | GET | 订单列表 | | /api/enterprise/bills | GET | 账单明细 | --- ## 八、下一步行动 ### 立即开始 (Phase 1) 1. ✅ 创建 developer/ 和 enterprise/ 目录结构 2. ✅ 设计 API 接口文档 (与后端对齐) 3. ✅ 开发首页入口组件 4. ✅ 开发工作台基础页面 ### 需要确认 - [ ] 后端 API 是否已准备好? - [ ] 数据库表结构是否已设计? - [ ] 是否需要支持微信小程序码扫码登录? --- **文档版本**:v1.0 **最后更新**:2026-04-12