帮助文档

自有数据库说明

使用须知

由你提供主机/端口/数据库/用户名/密码,我们将你账号下的数据实时推送到这个数据库。

这种推送方式会在你的数据库下自动建表,需要你的数据库开放公网访问权限

  • 数据表是全量覆盖更新,不支持同一个表中部分数据是用户自己新增的。
  • 不要在数据库中 新增与草料相同的名称数据表,会被识别为草料数据表,数据会全量覆盖。
  • 数据库类型为:Mysql 5.7
  • 会实时同步所有的码信息、表单记录、状态明细、计划完成明细等数据。
  • 只创建批量模板和表单,没有填写数据,是不会创建数据表的。
  • 有防火墙等访问限制时,需添加下IP白名单

Mysql 5.7 数据库的下载地址

数据表说明

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 码的状态表

现在不会推送在开通之前的码状态数据,如需要这部分数据,可以联系在线客服,由技术手动帮你同步。

字段名 类型 说明 示例
code_id int 码的唯一标识 54349863
member_id int 成员唯一标识 2091263
auth_id int 填表人唯一标识 12789054
更新时间 datetime 状态更新时间 2020-11-20 15:00:00
例:设备运行状态_720 string 状态组名称,后面的数字是为了防重复 正常
...... string 账号下的所有状态组都会列在这里 异常

3. code_state_log 码的状态的更新日志

字段名 类型 说明 示例
id int 自增长ID,一个序号从1开始递增 1
code_id int 码的唯一标识 54349863
member_id int 成员唯一标识 2091263
auth_id int 填表人唯一标识 12789054
更新时间 datetime 状态更新时间 2020-11-20 15:00:00
状态组 string 状态组的名称 设备运行状态
状态值 string 该状态组的本次的状态 正常

4. table_dXX 表单数据表

说明:表单数据表是以"table_"开头的一批表,一个表单一个表 d104是表单编号(早期的表单数据表,后面跟着的是数字,表单的唯一编号,如:table_D45)

file

字段名 类型 说明 示例
record_id int 表单数据唯一标识 record_id
code_id int 码的唯一标识 54349863
tpl_code_id int 批量模板的唯一标识 54349863
填写人 string 填表人姓名 李四
码名称 string 码的名称 1号设备
tpl_id int 表单的唯一标识 1231
表单名称 string 表单名称 设备巡检
记录时间 datetime 添加表单数据时间 2020-11-20 15:20:00
member_id int 协作成员唯一标识 2091263
auth_id int 填表人唯一标识 12789054
记录编号 string 表单数据的编号 L1234
处理状态 string 表单数据的处理状态 可选值:
待处理/已完成/无需处理/暂不标记状态
例:设备名称 string 表单的组件名称 1号机
...... string 表单的组件名称会全部展示

5. base_table_data

说明:这是一张所有表单记录的概要表,上面有各表单记录中共有的字段信息,比如码名称、记录人、记录单名称等。
应用场景:比如有出入两个表单,可以通过这个表拿到所有出入数据,而不需要将出入两个数据表做聚合处理。

字段名

类型

说明

示例

record_id

int

表单数据唯一标识

877665

code_id

int

码的唯一标识

5439876

tlp_id

int

表单的唯一标识

231

码名称

string

码名称

灭火器-L01

记录单名称

string

表单名称

日常巡检表

记录时间

datatime

记录时间

2020-11-20 12:01:02

记录人

string

记录人

李四

状态

string

这条记录是否被删除

选项有正常/删除

记录编号

string

记录编号

L9876

6. template_codeinfo_XXX 批量模板创建的码信息

说明:该数据表为批量子码可变内容,命名方式为template开头,后面是批量模板的识别编号,该编号规则有两个历史版本。
6.1 命名规则:

  • 方式一:后缀为dXX,d后面的数字为批量模板编号数字
    比如后台的批量模板编号为M312,对应的数据表名为 template_codeinfo_D312

file

  • 方式二 ::后缀为内部的批量模板ID,XXXXXX
    编辑批量模板,从网址中获取ID,见下图

file

6.2 数据字段说明:

字段名

类型

说明

示例

code_id

int

码的唯一标识

54349863

tpl_code_id

int

批量模板的唯一标识

54349862

...

string

以下字段是在批量模板中的可变内容

7. codeinfo_XXXXX 旧版批量子码的信息

说明:以codeinfo开头的一批表,后面的数字是tpl_code_id,该批量子码的表格信息会存入这张表

字段名 类型 说明 示例
code_id int 码的唯一标识 54349862
二维码名称 string 该子码名称 1号设备
..... string 以下字段,是在子码中设置的表格项名称

8.record_review_data

说明:动态数据备注和表单数据后续动态

字段名

类型

说明

示例

review_id

int

备注信息的唯一编号

9726448

record_id

int

备注信息所在的记当编号

4596589

状态

string

是否存在

正常

来源

string

记录方式

变更处理状态

文本描述

string

具体内容

将记录状态标记为 [已完成]

9. base_task 计划基本信息表

说明:计划管理的基本信息

字段名

类型

说明

示例

task_id

int

计划的唯一标识

1

计划名称

string

计划名称

每日巡检

描述

string

计划描述

10. code_task_log 计划执行情况表

说明:计划管理的执行记录,以task_id和开始时间来判定当前这一期的计划执行状态

开通时,只推送当前周期及后续周期的计划数据,历史周期的计划完成情况数据不会推送。 该数据表中没有码名称信息,可以关联 base_codeinfo或template_XXX,扩充码的信息。

字段名 类型 说明 示例
log_id int 当前计划任务的唯一标识 1
task_id int 计划的唯一标识 1
计划名称 string 计划名称 巡检计划
code_id int 码的唯一标识 54349863
开始时间 datetime 计划周期开始时间 2020-12-10 12:00:00
执行时间 datetime 该码在本周期的执行时间 2020-12-10 13:00:00
截止时间 datetime 该码在本周期的结束时间 2020-12-10 18:00:00
状态 string 该周期的执行状态 可选值:
完成/未完成/即将超期/
超期完成/超期未完成
是否过滤 string 根据设置的过滤条件取值 可选值:是/否
变更方式 string 变更状态的方式 记录
来源 int 变更方式为记录时,记录的唯一标识 1342321
来源记录结果 string 变更方式为记录时,记录的记录结果 设备正常

11. code_tags 码的分组

字段名 类型 说明 示例
code_id int 码的唯一标识 54349863
例:电箱 int 分组名称,如果该码在此分组下,则值为1 1
例:设备 int 分组名称 1
...... int 账号下的所有分组都会列在这里

12. base_members 协作成员信息

现在仅同步高级成员,不同步普通成员信息,开通后数据库后,有成员信息变动后才会触发更新

字段名 类型 说明 示例
member_id int 协作成员的唯一标识 2091263
姓名 string 协作成员姓名 张三
手机号 string 协作成员手机号 135xxxx8934

13. base_auth_msg 填表人信息

字段名 类型 说明 示例
auth_id int 填表人的唯一标识 12789054
姓名 string 填表人姓名 李四
手机号 string 填表人手机号 135xxxx8934
工号 string 填表人工号 D234
车牌号 string 填表人车牌 浙A.12342
身份证 string 填表人身份证 343xxxxxxxxxxxxx

常见问题

1. 自有数据库,数据推送不过来

可能的原因是 数据库表编码有问题,要换成utf8mb4。

2. 二维码名称变更后,为什么表单数据表中的二维码没有更新

现在表单中的二维码名称是不更新的,如果你需要取出最新的二维码名称,可以左关联一下 base_codeinfo 这张表,关联的字段为 code_id。

3. 表单中的组件名称修改后,数据表中有两个组件,分别是修改前和修改后的。

这是正常的,修改组件后,会保留原组件字段。

4. 计划中已设置了过滤掉异常状态值码,但在数据表中还存。

数据表中会有所有的计划任务数据,是通过 【是否过滤】这个字段来判识该条计划是否有过滤。(另外,在状态变更后在下个周期过滤才生效)

5. 开通后,发现推送的数据不全

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

6. 为什么我修改表单字段后,数据库中的字段没有更新?

修改表单后不会触发数据库更新,只有当有新增或修改表单数据时,才会触发更新该数据表。所以只需提交一条新记录可以了。

7. 如果服务器是白名单制,需要怎么处理?

可联系技术支持,获取草料IP端。

8. 图片组件中多个图片地址是拼在一起的,如何可以获取到单张图片地址。

图片组件的数据格式为 urls_1,urls_2,...。并且图片的链接数量是不定的。 *提供你一套函数来获取单张图片的地址,这里的 照片_233233换成你自己的数据字段名称。 urls_1: SUBSTRING_INDEX(照片_233233, ',', 1)
urls_2: if( LENGTH(照片_233233) - LENGTH(REPLACE(照片_233233, ',', '')) >= 1, SUBSTRING_INDEX(SUBSTRING_INDEX(照片_233233, ',', 2), ',', -1) ,'')
urls_3: if( LENGTH(照片_233233) - LENGTH(REPLACE(照片_233233, ',', '')) >= 2, SUBSTRING_INDEX(SUBSTRING_INDEX(照片_233233, ',', 3), ',', -1) ,'')
urls_3: if( LENGTH(照片_233233) - LENGTH(REPLACE(照片_233233, ',', '')) >= 3, SUBSTRING_INDEX(SUBSTRING_INDEX(照片_233233, ',', 4), ',', -1) ,'')
后面依次类推。