# CloudCC CRM 二开开发设计模板

> 用途：用于 CloudCC 平台二次开发项目的方案设计、评审与交付。
> 说明：将文中 `[待填写]` 替换为实际内容；不适用项可标注 `N/A`。

---

## 1. 文档信息

| 项目 | 内容 |
| :--- | :--- |
| 项目名称 | [待填写] |
| 需求/任务编号 | [待填写] |
| 文档版本 | v0.1 / v1.0 |
| 编写人 | [待填写] |
| 评审人 | [待填写] |
| 创建日期 | [待填写] |
| 最后更新 | [待填写] |

---

## 2. 背景与目标

### 2.1 业务背景

- 现状问题：[待填写]
- 触发原因（政策、流程、效率、合规等）：[待填写]
- 影响范围（部门、角色、对象）：[待填写]

### 2.2 建设目标

- 业务目标：[待填写]
- 技术目标：[待填写]
- 不在本期范围（Out of Scope）：[待填写]

### 2.3 成功标准（KPI）

- 指标 1：[待填写]
- 指标 2：[待填写]
- 指标 3：[待填写]

---

## 3. 需求拆解

### 3.1 需求清单

| 编号 | 需求描述 | 优先级 | 来源 | 验收标准 |
| :--- | :--- | :--- | :--- | :--- |
| R1 | [待填写] | P0/P1/P2 | [待填写] | [待填写] |
| R2 | [待填写] | P0/P1/P2 | [待填写] | [待填写] |

### 3.2 用户与权限

- 角色清单：[待填写]
- 每个角色可见/可编辑范围：[待填写]
- 数据权限/组织权限策略：[待填写]

---

## 4. CloudCC 模块设计（按指定顺序）

> 模块顺序固定为：自定义对象、自定义字段、自定义触发器、自定义类、自定义组件、自定义页面、自定义应用程序、自定义对象菜单、自定义页面菜单

### 4.1 自定义对象（Object）

参考命令：

```bash
cc doc object introduction
```

| 对象 API 名 | 对象名称 | 类型 | 说明 | 是否新增 |
| :--- | :--- | :--- | :--- | :--- |
| [待填写] | [待填写] | 主对象/明细对象/其他 | [待填写] | 是/否 |

对象与字段设计关系说明：

- 自定义对象是一级，自定义字段是二级。
- 每个对象必须单独提供完整字段列表（不能只给关键字段）。
- 字段清单至少覆盖：基础信息字段、业务字段、状态字段、关联字段、审计字段（如适用）。

### 4.2 自定义字段（Fields）

参考命令：

```bash
cc doc fields introduction
```

按对象逐一设计完整字段列表（一个对象一张表）：

#### 对象 A：[对象 API 名 / 对象名称]

| 序号 | 字段 API 名 | 字段名称 | 类型 | 长度/精度 | 必填 | 默认值 | 唯一 | 索引 | 字段说明 |
| :--- | :--- | :--- | :--- | :--- | :--- | :--- | :--- | :--- | :--- |
| 1 | [待填写] | [待填写] | 文本/数字/日期/选项等 | [待填写] | 是/否 | [待填写] | 是/否 | 是/否 | [待填写] |
| 2 | [待填写] | [待填写] | [待填写] | [待填写] | 是/否 | [待填写] | 是/否 | 是/否 | [待填写] |

#### 对象 B：[对象 API 名 / 对象名称]

| 序号 | 字段 API 名 | 字段名称 | 类型 | 长度/精度 | 必填 | 默认值 | 唯一 | 索引 | 字段说明 |
| :--- | :--- | :--- | :--- | :--- | :--- | :--- | :--- | :--- | :--- |
| 1 | [待填写] | [待填写] | 文本/数字/日期/选项等 | [待填写] | 是/否 | [待填写] | 是/否 | 是/否 | [待填写] |
| 2 | [待填写] | [待填写] | [待填写] | [待填写] | 是/否 | [待填写] | 是/否 | 是/否 | [待填写] |

字段完整性检查（每个对象都要检查）：

- 是否覆盖该对象全部业务必需字段
- 是否补齐状态/流程驱动字段
- 是否包含必要的关联关系字段
- 是否明确唯一约束、索引与默认值策略

### 4.3 自定义触发器（Triggers）

参考命令：

```bash
cc doc triggers introduction
```

- 触发对象：[待填写]
- 触发时机（before/after + 事件）：[待填写]
- 触发逻辑说明：[待填写]
- 失败处理与回滚策略：[待填写]

### 4.4 自定义类（Classes）

参考命令：

```bash
cc doc classes introduction
```

| 类名 | 用途 | 输入 | 输出 | 异常处理 |
| :--- | :--- | :--- | :--- | :--- |
| [待填写] | [待填写] | [待填写] | [待填写] | [待填写] |

### 4.5 自定义组件（Plugin）

参考命令：

```bash
cc doc plugin introduction
```

| 组件名 | 挂载位置 | 交互说明 | 依赖资源 |
| :--- | :--- | :--- | :--- |
| [待填写] | [待填写] | [待填写] | [待填写] |

### 4.6 自定义页面（CustomPage）

参考命令：

```bash
cc doc customPage introduction
```

| 页面名 | 入口位置 | 页面说明 | 数据交互 |
| :--- | :--- | :--- | :--- |
| [待填写] | [待填写] | [待填写] | [待填写] |

### 4.7 自定义应用程序（Application）

参考命令：

```bash
cc doc application introduction
```

- 应用名称/API 名：[待填写]
- 应用内导航结构：[待填写]
- 关联菜单与页面：[待填写]

### 4.8 自定义对象菜单（Menu - Object）

参考命令：

```bash
cc doc menu introduction
```

- 菜单名称/API 名：[待填写]
- 关联对象与列表入口：[待填写]
- 可见角色与权限限制：[待填写]

### 4.9 自定义页面菜单（Menu - Page）

参考命令：

```bash
cc doc menu introduction
```

- 菜单名称/API 名：[待填写]
- 关联页面与入口位置：[待填写]
- 可见角色与权限限制：[待填写]

---

## 5. 技术方案细节

### 5.1 架构与流程

- 总体架构说明：[待填写]
- 关键流程（可附流程图）：[待填写]
- 异常流程（失败重试、降级、告警）：[待填写]

### 5.2 数据与接口

- 关键数据实体关系：[待填写]
- 接口清单（入参/出参/错误码）：[待填写]
- 数据迁移/初始化策略：[待填写]

### 5.3 安全与合规

- 密钥/令牌管理：[待填写]
- 数据脱敏与审计：[待填写]
- 权限最小化原则落地方式：[待填写]

---
