# 官方数据库说明

官方数据库为草料提供独立的云数据库，同步你后台的数据。可以使用数据分析软件连接这个云数据库，制作数据报表；或写程序主动调用数据，对接其他系统。
- 官方数据库为只读数据库，不可编辑
- 数据库类型为Mysql 5.7
- 会实时同步所有的码信息、表单记录、状态明细、计划完成明细等数据。
- 只创建批量模板和表单，没有填写数据，是不会创建数据表的。

## 使用方法
草料后台导航栏【数据管理】>【数据API】，选择【官方数据库】。填写申请信息后，会自动开通该功能，并推送数据。首次推送需要1~3小时，具体看你后台已有的数据量。
![草料后台数据管理界面](https://blogcdnimg.clewm.net/2024/05/image-1714888248608_17148882422787.png)
图片说明：数据管理后台的“数据API”配置页，展示官方数据库连接信息及添加/关闭配置的入口。

### 数据库示例
- 类型：MySQL5.7
- 主机：rm-bp1m4fy8d66u3c6xmbo.mysql.rds.aliyuncs.com
- 端口：3306
- 数据库名：cli_202112111（示例）
- 用户名：cli_202112111（示例）
- 密码：eiadk289djlgj（示例）

## 数据报表示例
可以通过官方数据库将数据推送到多维表格或者BI工具中，自定义制作数据看板。
bi工具有一定的使用门槛，使用难度大于多维表格；
以下工具都为外部应用，需要额外收费，您可按自身的业务需求选择使用。

#### 1. 将数据推送到飞书、wps等多维表格中，制作基础数据看板
- [查看wps示例](/help/integration-and-connection/data-api/data-reports/wps-connection "查看wps示例")
- [查看飞书示例](/help/integration-and-connection/data-api/data-reports/connection "查看飞书示例")
![file](https://blogcdnimg.clewm.net/2025/04/image-1745235584708_17452355850433.png)
图片说明：该图是灭火器管理系统的仪表盘，展示设备总数、巡检次数、异常记录及各维度统计趋势，用于实时监控与运维分析。

#### 2. 将数据推送到百度sugarbi、powerbi等bi工具中，看板内容更加丰富
- [查看bi报表示例](/help/integration-and-connection/data-api/data-reports/api-sugar-bi-data-api)
![file](https://blogcdnimg.clewm.net/2025/04/image-1745235600099_17452356005481.png)
图片说明：设备巡检与任务完成情况仪表盘，含完成率环形图、各类型点检进度占比及未完成任务明细条形图。

更多案例效果： 可视化看板案例合集

## 通用字段解释
说明：这些字段是一些关键信息，主要用于各表之间数据关联
- 字段名：code_id：int：码的唯一标识：54349863
- 字段名：tpl_code_id：int：批量模板的唯一标识如果非模板生码，tpl_code_id与code_id相同：54349863
- 字段名：member_id：int：成员唯一标识：2091263
- 字段名：auth_id：int：填表人唯一标识：12789054
- 字段名：record_id：int：表单数据唯一标识：16759806

## 常用模型
![文件图片](https://blogcdnimg.clewm.net/2021/08/16286805036858_image-1628680503452.png)
图片说明：该图展示代码管理系统的数据库表结构关系图，说明各核心表（如码基础信息、状态、任务日志等）通过关联字段（code_id、auth_id）相互连接的逻辑关系。

### 模型一：设备状态分析
base_codeinfo（码的基本信息表）内关联code_state（码的状态表），得到各设备的状态值与更新时间，分析状态分布。
![码状态图](https://blogcdnimg.clewm.net/2021/08/16295309146147_码状态.png)
图片说明：表关联配置界面，展示“内连接”操作：将 `base_codeinfo` 表与 `code_state` 表通过 `code_id` 字段关联。

### 模型二：计划完成情况
code_task_log（计划执行情况表） 左关联 base_codeinfo（码的基本信息表），得到计划完成情况并与之对应的码信息。
![计划完成情况图](https://blogcdnimg.clewm.net/2021/10/16341927830108_image-1634192782803.png)
图片说明：表关联配置界面，展示对 `code_task_log` 与 `base_codeinfo` 表进行左连接，关联条件为两表的 `code_id` 字段相等。

### 模型三：批量码分析
template_XXXXXX （批量码信息表）左关联 table_dXX（表单数据表）、code_state（码的状态表）。template_XXXXXX可以获取到码的可变内容信息。
![批量码信息表](https://blogcdnimg.clewm.net/2021/08/16295309136986_批量码信息表.png)
图片说明：该图展示数据库表关联配置界面，用于设置“template_codeinfo_61407048”与“table_d12”表的左连接关系，关联字段为code_id。

### 模型四：串联后续表单记录
比如在故障上报的记录里，添加维修记录表单，将这两条记录串联起来得到完整的信息。[添加后续动态功能介绍](/help/forms/form-design/follow-up-process/follow-up-actions "添加后续动态")
使用table_dxx（故障上报表）左关联table_dxx(维修记录表单)，关联条件是 记录编号和来源编号。如果还有更多后续表单，可以再左关联此表单。
![故障维修记录图](https://blogcdnimg.clewm.net/2023/05/image-1684226638865_16842266393130.png)
图片说明：表关联配置界面，展示左连接操作及“记录编号 = 来源编号”的关联条件设置。

## 各数据表字段说明

### 1. base_codeinfo 码的基本信息表
说明：当账号下有二维码信息时会推送该表，包含活码、模板子码
- 字段名：code_id：int：码的唯一标识：67654543
- 字段名：码名称：string：码名称：消火栓01
- 字段名：码类型：string：有活码、模板子码和模板码：模板子码
- 字段名：url：string：二维码链接：http://qr61.cn/o2eikt/q85Q8KL
- 字段名：tpl_code_id：int：子码对应的批量模板ID 非模板子码，内容与code_id相同：56335353
- 字段名：模板名称：string：子码对应的批量模板名称 非模板子码，内容与码名称相同：消火栓
- 字段名：目录：string：码所在的最后一级目录名称，不包含前几级目录信息：消防设备
- 字段名：标签集：string：码的分组集合：消防类,设备

目录信息：为码所在的最后一级目录，不会显示其上几级目录信息。

### 2. code_state 码的状态表
说明：当二维码中有关联的状态时会推送该表。[查看状态功能](/help/status/status-feature "查看状态功能")
现在不会推送在开通之前的码状态数据，如需要这部分数据，可以联系在线客服，由技术手动帮你同步。
- 字段名：code_id：int：码的唯一标识：67654543
- 字段名：member_id：int：成员唯一标识：2091263
- 字段名：auth_id：int：填表人唯一标识：12789054
- 字段名：更新时间：datetime：状态更新时间：2020-11-20 15:00:00
- 字段名：例：设备运行状态_720：string：状态组名称，后面"_720"数字是为了防重复，系统自动生成的标识：正常
- 字段名：......：string：账号下的所有状态组都会列在这里：异常

### 3. code_state_log 码的状态的变更日志表
说明：当二维码中有关联的状态时会推送该表，每次状态变更的记录都会记录在这张表中。首次开通数据库时，不会推送在开通之前的状态变更数据。
- 字段名：code_id：int：码的唯一标识：67654543
- 字段名：member_id：int：成员唯一标识：2091263
- 字段名：auth_id：int：填表人唯一标识：12789054
- 字段名：更新时间：datetime：状态更新时间：2020-11-20 15:00:00
- 字段名：状态组：string：状态组的名称：设备状态
- 字段名：状态值：string：该状态组的本次的状态：正常
- 字段名：变更方式：string：变更状态的方式，包含填表后更新状态和手动编辑状态：记录/编辑
- 字段名：来源：string：变更方式为记录时，对应表单数据的唯一标识：12220988

### 4. table_dXX 表单数据明细表
说明：当账号下有表单数据提交时会推送该表。表单数据表是以"table_"开头的一批表，d后面跟着的是数字，即表单的唯一编号，如：table_d45，一个表单对应一个表。[查看表单功能](/help/forms/form-feature "查看表单功能")
![表单数据明细表截图](https://blogcdnimg.clewm.net/2021/08/16297070832115_image-1629707082987.png)
图片说明：日常巡检记录页面，显示表单编号D45及总记录数、填写人数等统计信息，用于查看巡检任务执行情况。
- 字段名：record_id：int：表单数据唯一标识：12220988
- 字段名：code_id：int：码的唯一标识：67654543
- 字段名：tpl_code_id：int：模板子码：对应的批量模板ID 非模板子码：内容与code_id相同：54349863
- 字段名：码名称：string：码的名称：消火栓01
- 字段名：tpl_id：int：表单的唯一标识：346636
- 字段名：记录单名称：string：表单的名称：消火栓检查
- 字段名：记录时间：datetime：添加表单数据时间：2020-11-20 15:20:00
- 字段名：状态：string：这条记录当前的状态：包含是否删除、是否审核通过：正常/删除/待审核/审核通过/审核不通过
- 字段名：member_id：int：协作成员唯一标识：2091263
- 字段名：auth_id：int：填表人唯一标识：12789054
- 字段名：记录编号：string：表单数据的编号：L1234
- 字段名：处理状态：string：表单数据的处理状态：待处理/已完成/无需处理/暂不标记状态
- 字段名：创建来源：string：包含手机扫码填写，在备注中填写，即后续动态中填写：手机扫码填写/在备注中填写
- 字段名：来源编号：string：当创建来源为在备注中填写时，来源编号为原记录的记录编号：L1235
- 字段名：提交编号：string：草料后台自定义的提交编号：11
- 字段名：处理状态变更时间：datetime：处理进度变更的时间：2020-11-20 15:20:00
- 字段名：例：设备名称：string：表单的组件名称：检查项1
- 字段名：......：string：表单的组件名称会全部展示：

#### 表单组件推送情况说明：
1. 数字组件，推送时不会显示单位。
2. 检查项组件中，不同的值代表的意思为：0=检查项未填写；1=检查项选勾；2=检查项选叉；3=检查项不选；当检查项“√”、“×”自定义名称后，推送时不会显示自定义的名称，仍为0、1、2、3。
3. 检查项组件中备注添加的描述和图片不会推送。
4. 定位组件会推送三个字段，包含定位中文信息、定位纬度、定位经度。
5. 描述组件会推送，字段名称为描述组件对应的标题名称，字段值为描述组件添加的内容。
6. 分组标题组件不会推送。
7. 身份证组件的推送内容为拆分成多个字段展示，会拆分成身份证信息、身份证号、姓名、性别、民族、出生日期、住址，其中身份证信息展示内容为空，其他字段会填充对应的值。
8. 多媒体组件（含图片、文件、视频、音频）都会以连接方式推送，点击链接可查看

### 5. base_table_data 表单数据汇总表
说明：当账号下有表单数据提交时会推送该表。这是一张所有表单记录的概要汇总表，上面有各表单记录中共有的字段信息，比如码名称、记录人、记录单名称等。
应用场景：比如有出入两个表单，可以通过这个表拿到所有出入数据，而不需要将出入两个数据表做聚合处理。
- 字段名：record_id：int：表单数据唯一标识：12220988
- 字段名：code_id：int：码的唯一标识：67654543
- 字段名：tpl_code_id：int：模板子码：对应的批量模板ID 非模板子码：内容与code_id相同：56335353
- 字段名：tpl_id：int：表单的唯一标识：346636

- 字段名：码名称：string：码名称：消火栓01
- 字段名：记录单名称：string：表单名称：消火栓巡检
- 字段名：记录时间：datetime：添加表单数据的时间：2020-11-20 12:01:02
- 字段名：记录人：string：填表人姓名：李四
- 字段名：member_id：int：成员唯一标识：2091263
- 字段名：auth_id：int：填表人唯一标识：12789054
- 字段名：状态：string：这条记录当前的状态：包含是否删除、是否审核通过：正常/删除/待审核/审核通过/审核不通过
- 字段名：记录编号：string：记录编号：L1234

### 6. template_codeinfo_XXX 批量模板创建的子码信息表
说明：当账号下有批量模板生成的子码时会推送该表，该数据表主要展示批量子码的可变内容。[查看批量生码功能](/help/bulk-qr-code/bulk-dynamic-qr-code/dynamic-qr-code-batch "查看批量生码功能")
命名方式为 template 开头，后面是批量模板的识别编号，该编号规则有两个历史版本。

#### 6.1 命名规则：
- 方式一：后缀为dXX，d后面的数字为批量模板编号数字。比如后台的批量模板编号为M312，对应的数据表名为 template_codeinfo_D312
![批量模板编号示例](https://blogcdnimg.clewm.net/2023/11/image-1700448135082_17004481355628.png)
图片说明：展示信息系统的模板管理界面，列出了多个批量模板及其对应的数据表名称、子码数量与操作选项。
- 方式二：后缀为内部的批量模板ID。编辑批量模板，从网址中获取ID，见下图
![批量模板ID示例](https://blogcdnimg.clewm.net/2023/09/image-1695199623808_16951996243010.png)
图片说明：后台模板编辑界面，展示“固定资产标签”模板的字段配置与预览效果，含可变内容、输入标题、资产信息等区域及右侧样式预览。

#### 6.2 数据字段说明：
- 字段名：code_id：int：码的唯一标识：67654543
- 字段名：tpl_code_id：int：批量模板的唯一标识：56335353
- 字段名：状态：string：批量子码是否删除：正常
- 字段名：...：string：以下字段是在批量模板中的可变内容：

### 7. record_review_data 后续动态数据表
说明：当表单记录中有添加后续动态或者标记处理进度后会推送该表。[查看后续动态功能](/help/forms/form-design/follow-up-process/follow-up-actions "查看后续动态功能")
- 字段名：review_id：int：后续动态填写记录的唯一标识：67654543
- 字段名：record_id：int：后续动态填写表单记录的唯一标识：12220988
- 字段名：状态：string：后续动态记录是否删除：正常/删除
- 字段名：来源：string：后续动态记录的添加来源：手动填写/转发了记录/转发给了企业微信同事/变更处理状态/填写表单记录/发送通知/回复评论
- 字段名：文本内容：string：底部评论的具体内容/变更处理进度的记录：将记录更新为【已完成】/@张三/【图片】...
- 字段名：关键内容：string：变更后的处理进度/当填写后续动态中的表单时，关键内容会显示填写对应表单的数据唯一标识：已完成/12220988
- 字段名：附件：string：后续动态提交的图片、录音、手写签名等多媒体文件：
- 字段名：填写人：string：填表人姓名：张三
- 字段名：填写时间：datetime：后续动态记录添加的时间：2020-11-20 15:20:00

### 8. base_task 计划基本信息表
说明：当账号下创建计划，并且开始执行计划后会推送该表。[计划管理功能](/help/plan-feature/plan "计划管理功能")
- 字段名：task_id：int：计划的唯一标识：33886
- 字段名：计划名称：string：计划名称：灭火器每月巡检
- 字段名：描述：string：计划描述：

### 9. code_task_log 计划执行情况表
说明：当账号下创建计划，并且开始执行计划后会推送该表。开通数据库后，该表只推送之后新开始执行的计划周期数据；历史周期、开通时正在执行的当前周期计划数据不会推送。
该数据表中没有码名称信息，可以关联 base_codeinfo或template_XXX，扩充码的信息。
- 字段名：log_id：int：当前计划任务的唯一标识：239168567
- 字段名：task_id：int：计划的唯一标识：33886
- 字段名：计划名称：string：计划名称：灭火器每月巡检
- 字段名：code_id：int：码的唯一标识：67654543
- 字段名：状态：string：该周期的执行状态：可选值：完成/未完成/即将超期/超期完成/超期未完成
- 字段名：开始时间：datetime：计划周期开始时间：2020-12-10 12:00:00
- 字段名：执行时间：datetime：状态变更的时间：2020-12-10 13:00:00
- 字段名：截止时间：datetime：该码在本周期的结束时间：2020-12-10 18:00:00
- 字段名：是否过滤：string：根据是否设置无需检查的条件进行过滤：可选值：是/否
- 字段名：变更方式：string：变更状态的方式：记录
- 字段名：来源：int：变更方式为记录时，对应表单数据的唯一标识：12220988
- 字段名：来源记录结果：string：变更方式为记录时，对应表单数据的记录结果：设备正常

### 10. code_tags 码的分组表
说明：当使用分组功能并且将码加入分组时会推送该表。[查看分组管理功能](/help/qr-code-and-data/qr-code-management/group-management "查看分组管理功能")
- 字段名：code_id：int：码的唯一标识：67654543
- 字段名：例：1号楼灭火器：int：分组名称，如果该码在此分组下，则值为1：1
- 字段名：例：2号楼灭火器：int：分组名称：1
- 字段名：......：int：账号下的所有分组都会列在这里：

### 11. base_members 成员信息表
说明：当账号下有高级成员添加时会推送该表，当前成员信息表仅同步高级成员信息，普通成员信息不会推送。[查看成员功能](/help/member-and-permissions/member-feature "查看成员功能")
- 字段名：member_id：int：协作成员的唯一标识：2091263

- 字段名：姓名：string：协作成员姓名：张三
- 字段名：手机号：string：协作成员手机号：135xxxx8934

### 12. base_auth_msg 填表人信息表
说明：当有表单记录提交或者状态更新记录时，会推送填表人信息表，填表人即填写表单或者变更状态的人员。[查看填表人组件](/help/forms/form-design/form-creation/form-components/special-components/submitter-component "查看填表人组件")
1. 如果未填写表单，则只展示auth_id
2. 如果填写表单但是未使用填表人组件，则只展示auth_id，姓名为微信用户XXXX
3. 如果填写表单并且使用了姓名、手机号、工号、车牌号、身份证等填表人组件后则展示对应字段的数据
- 字段名：auth_id：int：填表人的唯一标识：12789054
- 字段名：姓名：string：填表人姓名：李四
- 字段名：手机号：string：填表人手机号：135xxxx8934
- 字段名：工号：string：填表人工号：D234
- 字段名：车牌号：string：填表人车牌：浙A.12342
- 字段名：身份证：string：填表人身份证：343xxxxxxxxxxxxx

### 13. record_audit_data 记录审批工单表
说明：当提交待审批的记录或者记录被审批后会推送该表。[查看审批功能](/help/forms/form-design/follow-up-process/data-approval/overview "查看审批功能")
- 字段名：auth_id：int：审批工单的唯一标识：9001
- 字段名：record_id：int：审批工单关联记录的唯一标识：1001
- 字段名：状态：string：工单是否审批：待审核/通过/不通过
- 字段名：审核标题：string：多级审核设置的标题，单级审批内容为空：财务审核
- 字段名：指定审核人：string：由填表人或者前一级审核人指定的审核人，不指定时内容为空：张三
- 字段名：审核人：string：实际审核操作人：张三
- 字段名：审核时间：datetime：实际审核时间：2024-09-20 15:20:00
- 字段名：审核签名：string：实际审核人签署的签名图片地址，没有签署时内容为空：https://ncstatic.clewm.net/rsrc/2024/1015/15/c12d5af513b275ba2465f923557a1f7c.png
- 字段名：审核回复：string：实际审核人审批时填写的回复信息，未填写时内容为空：提交的内容不符合要求
- 字段名：创建时间：datetime：审批工单创建时间：2024-09-20 10:20:00

## 事件推送说明
### 1. 活码
- 事件：单码新建：推送：base_codeinfo：base_codeinfo新增一条二维码数据
- 事件：单码新建-有状态关联：推送：base_codeinfo、 code_state、 code_state_log、 table_d[x]、 table_relation、 base_table_data：数据表新增一条数据
- 事件：单码修改：推送：base_codeinfo：base_codeinfo修改了调整的数据，会覆盖原数据
- 事件：单码删除：推送：base_codeinfo：base_codeinfo删除一条二维码数据
- 事件：单码删除-有表单数据：推送：base_codeinfo、 table_d[x]、 base_table_data：数据表删除一条数据
- 事件：单码删除-有状态关联：推送：base_codeinfo、 code_state、 table_d[x]、 code_state_log、 base_table_data：数据表删除一条数据

### 2. 批量模板
- 事件：新建批量模板：不推送：-：-
- 事件：新建批量模板-有状态关联：推送：code_state、 code_state_log：code_state新增一条码模板的状态数据，code_state_log新增初始化状态下的码模板状态变更记录
- 事件：修改批量模板标题：不推送：-：-
- 事件：修改批量模板可变内容-无子码：不推送：-：-
- 事件：修改批量模板可变内容-有子码：不推送：-：-
- 事件：删除批量模板-有子码：推送：base_codeinfo、 template_codeinfo_[x]：数据表删除对应的数据
- 事件：删除批量模板-有子码/表单数据：推送：base_codeinfo、 template_codeinfo_[x]、 base_table_data、 table_d[x]：数据表删除对应的数据
- 事件：删除批量模板-有子码/关联状态：推送：base_codeinfo、 template_codeinfo_[x]、 code_state、 code_state_log：数据表删除对应的数据
- 事件：新建子码：推送：base_codeinfo、 template_codeinfo_[x]：数据表新增对应的数据
- 事件：新建子码-有状态关联：推送：base_codeinfo、 template_codeinfo_[x]、 code_state、 code_state_log：数据表新增对应的数据
- 事件：删除子码：推送：base_codeinfo、 template_codeinfo_[x]：数据表删除对应的数据
- 事件：删除子码-有状态关联：推送：base_codeinfo、 template_codeinfo_[x]、 code_state、 code_state_log：数据表删除对应的数据
- 事件：删除子码-有表单数据：推送：base_codeinfo、 template_codeinfo_[x]、 base_table_data、 table_d[x]：数据表删除对应的数据
- 事件：修改子码：推送：base_codeinfo、 template_codeinfo_[x]：如果是修改子码名称，变更base_codeinfo对应的记录，如果是修改子码可变内容对应的值，变更template_codeinfo_[x]对应的子码记录

### 3. 表单
以下事件都为有表单数据时的情况说明，无表单数据时都不推送
- 事件：删除表单：推送：table_d[x]、 base_table_data：对应的table_d[x]删除所有记录，表结构保留，base_table_data删除对应表单的记录
- 事件：新增表单组件：推送：table_d[x]：table_d[x]新增一个组件字段，值为空
- 事件：编辑表单组件：推送：table_d[x]：table_d[x]中原来的组件字段保留，值为空，并新增编辑后的组件字段
- 事件：删除表单组件：推送：table_d[x]：table_d[x]中原来的组件字段保留，值为空
- 事件：修改表单名称：推送：table_d[x]、 table_relation：table_d[x]中修改表单的名称，table_relation修改对应表单的名称
- 事件：表单数据提交：推送：base_table_data、 table_d[x]、 table_relation、 base_auth_msg：数据表新增对应的数据
- 事件：表单数据待审核：推送：base_table_data、 table_d[x]、 table_relation、 base_auth_msg：数据表新增对应的数据，与单个记录添加的区别是：base_table_data、table_d[x]的字段中多一个审核状态
- 事件：表单数据审核通过或者拒绝：推送：table_d[x]、 base_table_data：table_d[x]、base_table_data中审核状态字段对应的值变更
- 事件：表单数据修改：推送：table_d[x]、 base_table_data：table_d[x]、base_table_data中修改指定的数据内容，覆盖原数据
- 事件：表单数据删除：推送：table_d[x]、 base_table_data：table_d[x]、base_table_data中删除指定的数据内容，表结构保留

### 4. 状态
状态相关数据的同步会延迟60s
- 事件：新增状态组：不推送：-：-
- 事件：修改状态组名称：不推送：-：-
- 事件：修改状态项名称：不推送：-：-
- 事件：新增/删除状态项：不推送：-：-
- 事件：删除状态组：不推送：-：-
- base_auth_msg 如果存在则更新，否则新增：推送：table_d[x]、 table_relation、 base_table_data、 code_state、 code_state_log、 base_auth_msg：code_state 如果有对应码的数据存在，则覆盖原数据，否则新增
- code_state_log 新增状态变更数据：推送：table_d[x]、 table_relation、 base_table_data、 code_state、 code_state_log：code_state 如果有对应码的数据存在，修改前的状态组字段保留，值为空，新增修改后的状态组字段和对应的值
- 事件：状态项修改后，二维码状态变更：推送：table_d[x]、 table_relation、 base_table_data、 code_state、 code_state_log、 base_auth_msg：code_state 更新对应状态项字段的值code_state_log 新增状态变更数据

### 5. 计划管理
计划新增/修改后需要开始执行才会推送数据
- 事件：计划新增：不推送：-：-

- 事件：计划开始：推送：base_task、code_task_log：数据表新增对应的数据
- 事件：计划超时：推送：code_task_log：code_task_log 状态字段的值变更，执行时间字段自动填充状态变更时的时间
- 事件：计划删除：推送：base_task、code_task_log：数据表删除对应的数据
- 修改后的计划执行时，code_task_log对应的数据会更新，并覆盖原数据：推送：base_task、code_task_log：如果计划名称修改，base_task对应的数据更新，覆盖原数据

### 6. 后续动态
- 事件：后续动态功能开启：不推送：-：-
- 事件：后续动态功能关闭：不推送：-：-
- 事件：后续动态填写：推送：record_review_data：record_review_data新增对应记录的数据
- 事件：后续动态【表单】填写：推送：record_review_data、 base_table_data、 table_d[x]、 table_relation、 base_auth_msg：record_review_data新增对应记录的数据，同时再走一遍表单数据提交的逻辑，其中table_d[x]数据中的来源编号字段为被关联表单记录的记录编号
- 事件：后续动态填写后的记录删除：推送：record_review_data：record_review_data对应的数据保留，状态字段变更为删除
- 事件：标记处理进度：推送：record_review_data：record_review_data新增对应数据

### 7. 目录
- 事件：目录重命名：不推送：-：-
- 事件：二维码移动目录：推送：base_codeinfo：base_codeinfo 更新目录字段的值
- 事件：目录删除：推送：base_codeinfo、 template_codeinfo_[x]、 table_d[x]、 base_table_data、 code_state_log、 code_state、 code_task_log：根据目录下的码删除所有的表数据，表字段保留，值为空

### 8. 成员
- 事件：添加普通成员：不推送：-：-
- 事件：添加高级成员：推送：base_members：base_members新增对应的成员数据
- 事件：高级成员姓名修改：推送：base_members：base_members修改对应的成员数据
- 事件：删除高级成员：不推送：-：-

## 常见问题

### 1. 二维码名称变更后，为什么表单数据表中的二维码没有更新
现在表单中的二维码名称是不更新的，如果你需要取出最新的二维码名称，可以左关联一下 base_codeinfo 这张表，关联的字段为 code_id。

### 2. 表单中的组件名称修改后，数据表中有两个组件，分别是修改前和修改后的。
这是正常的，修改组件后，会保留原组件字段。

### 3. 计划中已设置了过滤掉异常状态值码，但在数据表中还存。
数据表中会有所有的计划任务数据，是通过 【是否过滤】这个字段来判识该条计划是否有过滤。（另外，在状态变更后在下个周期过滤才生效）

### 4. 为什么开通后，连接数据库，推送的数据不全
首次开通后，需要将历史数据所有推送过来，大概需要1-3小时，跟账号的数据量有关。如隔一天了，还是推送不全，可以联系在线客服排查问题。

### 5. 为什么我修改表单字段后，数据库中的字段没有更新
修改表单后不会触发数据库更新，只有当有新增或修改表单数据时，才会触发更新该数据表。所以只需提交一条新记录可以了。

### 6. Power BI如何链接我们的数据库
我们的数据库为Mysql，连接时数据库类型选择为Mysql，[查看操作详情](https://zhuanlan.zhihu.com/p/410611306 "查看操作详情")

### 7. 为什么没有动态数据
