CREATE TABLE FORM_BO_ATTR
(
   ID_                  VARCHAR(64) NOT NULL,
   NAME_                VARCHAR(64) NOT NULL COMMENT '属性名称',
   DESC_                VARCHAR(255) DEFAULT NULL COMMENT '属性描述',
   ENT_ID_              VARCHAR(64) DEFAULT NULL COMMENT '实体ID',
   DATA_TYPE_           VARCHAR(40) DEFAULT NULL COMMENT '数据类型。string=字符串；number=数值；datetime=日期（长日期，通过显示格式来限制）',
   DEFAULT_VALUE_       VARCHAR(1024) DEFAULT NULL COMMENT '基本默认值',
   FORMAT_              VARCHAR(255) DEFAULT NULL COMMENT '基本类型显示格式',
   IS_REQUIRED_         INT(11) NOT NULL COMMENT '是否必填',
   ATTR_LENGTH_         INT(11) DEFAULT NULL COMMENT '属性长度',
   DECIMAL_LEN_         INT(11) DEFAULT NULL COMMENT '浮点长度',
   FIELD_NAME_          VARCHAR(50) DEFAULT NULL COMMENT '字段名',
   SN_                  SMALLINT(6) DEFAULT NULL,
   STATUS_              VARCHAR(20) DEFAULT NULL COMMENT '状态 show：显示，hide：隐藏',
   INDEX_               INT(11) DEFAULT NULL COMMENT '排序',
   TENANT_ID_           VARCHAR(64) DEFAULT NULL,
   PRIMARY KEY (ID_)
);

ALTER TABLE FORM_BO_ATTR COMMENT '业务实体定义属性';

CREATE TABLE FORM_BO_DATA_RELATION
(
   ID_                  VARCHAR(50) NOT NULL,
   PK_                  VARCHAR(50) DEFAULT NULL COMMENT '主表PK数据',
   FK_                  VARCHAR(50) DEFAULT NULL COMMENT '外键ID数据',
   PK_NUM_              DECIMAL(20, 0) DEFAULT NULL COMMENT '主键值',
   FK_NUM_              DECIMAL(20, 0) DEFAULT NULL COMMENT '外键数字',
   SUB_BO_NAME          VARCHAR(50) DEFAULT NULL COMMENT '子实体名称',
   TENANT_ID_           VARCHAR(64) DEFAULT NULL,
   PRIMARY KEY (ID_)
);

ALTER TABLE FORM_BO_DATA_RELATION COMMENT '多对多业务数据关联表';

CREATE TABLE FORM_BO_DEF
(
   ID_                  VARCHAR(50) NOT NULL,
   CATEGORY_ID_         VARCHAR(50) DEFAULT NULL COMMENT '分类ID',
   CATEGORY_NAME_       VARCHAR(255) DEFAULT NULL COMMENT '分类名称',
   ALIAS_               VARCHAR(50) DEFAULT NULL COMMENT '别名',
   DESCRIPTION_         VARCHAR(100) DEFAULT NULL COMMENT '表单定义描述',
   SUPPORT_DB_          SMALLINT(6) DEFAULT NULL COMMENT 'BO支持数据库，相关的BO实体生成物理表',
   DEPLOYED_            SMALLINT(6) DEFAULT NULL COMMENT '是否发布',
   STATUS_              VARCHAR(20) DEFAULT NULL COMMENT 'BO状态(normal,正常,forbidden 禁用)',
   CREATE_BY_           VARCHAR(50) DEFAULT NULL COMMENT '创建人ID',
   CREATE_TIME_         DATETIME,
   CREATE_ORG_ID_       VARCHAR(64) DEFAULT NULL,
   REV_                 INT(11) NOT NULL DEFAULT 1 COMMENT '关联锁',
   UPDATE_BY_           VARCHAR(64) DEFAULT NULL,
   UPDATE_TIME_         DATETIME,
   TENANT_ID_           VARCHAR(64) DEFAULT NULL,
   PRIMARY KEY (ID_)
);

ALTER TABLE FORM_BO_DEF COMMENT 'BO定义';

CREATE TABLE FORM_BO_ENT
(
   ID_                  VARCHAR(64) NOT NULL,
   PACKAGE_ID_          VARCHAR(50) DEFAULT NULL COMMENT '分类ID',
   NAME_                VARCHAR(64) NOT NULL COMMENT '对象名称(需要唯一约束)',
   DESC_                VARCHAR(255) DEFAULT NULL COMMENT '对象描述',
   STATUS_              VARCHAR(40) NOT NULL COMMENT '状态。inactive=未激活；actived=激活；forbidden=禁用',
   IS_CREATE_TABLE_     SMALLINT(6) NOT NULL COMMENT '是否生成表',
   TABLE_NAME_          VARCHAR(50) DEFAULT NULL COMMENT '表名',
   DS_NAME_             VARCHAR(50) DEFAULT NULL COMMENT '数据源名称',
   PK_TYPE_             VARCHAR(20) DEFAULT NULL COMMENT '主键类型',
   IS_EXTERNAL_         SMALLINT(6) DEFAULT NULL COMMENT '是否外部表',
   PK_                  VARCHAR(50) DEFAULT NULL COMMENT '主键字段名称',
   FK_                  VARCHAR(50) DEFAULT NULL COMMENT '外键字段名称',
   TENANT_ID_           VARCHAR(64) DEFAULT NULL,
   PRIMARY KEY (ID_)
);

ALTER TABLE FORM_BO_ENT COMMENT '业务实体定义';

CREATE TABLE FORM_BO_ENT_RELATION
(
   ID_                  VARCHAR(50) NOT NULL,
   BO_DEFID_            VARCHAR(50) DEFAULT NULL COMMENT 'BO定义ID',
   PARENT_ID_           VARCHAR(50) DEFAULT NULL COMMENT '上级ID',
   REF_ENT_ID_          VARCHAR(64) DEFAULT NULL COMMENT '关联实体ID',
   TYPE_                VARCHAR(50) DEFAULT NULL COMMENT '类型 (主表,main, onetoone,onetomany,manytomany)',
   TENANT_ID_           VARCHAR(64) DEFAULT NULL,
   PRIMARY KEY (ID_)
);

ALTER TABLE FORM_BO_ENT_RELATION COMMENT 'BO定义实体关系';

CREATE TABLE FORM_BO_INT
(
   ID_                  VARCHAR(64) NOT NULL,
   DEF_ID_              VARCHAR(64) NOT NULL COMMENT '对象定义ID',
   INST_DATA_           TEXT COMMENT '实例数据',
   CREATE_TIME_         DATETIME,
   TENANT_ID_           VARCHAR(64) DEFAULT NULL,
   PRIMARY KEY (ID_)
);

ALTER TABLE FORM_BO_INT COMMENT '业务对象实例';

CREATE TABLE FORM_BO_RELATION
(
   ID_                  VARCHAR(50) NOT NULL,
   FORM_ID_             VARCHAR(50) DEFAULT NULL COMMENT '表单ID',
   BO_DEF_ID_           VARCHAR(50) DEFAULT NULL COMMENT 'BO定义ID',
   TENANT_ID_           VARCHAR(64) DEFAULT NULL,
   PRIMARY KEY (ID_)
);

ALTER TABLE FORM_BO_RELATION COMMENT '表单和BO的关联';

CREATE TABLE FORM_BUS_SET
(
   ID_                  VARCHAR(50) NOT NULL,
   FORM_KEY_            VARCHAR(50) DEFAULT NULL COMMENT '表单key',
   JS_PRE_SCRIPT        VARCHAR(3000) DEFAULT NULL COMMENT 'JavaScript前置脚本',
   JS_AFTER_SCRIPT      VARCHAR(1000) DEFAULT NULL COMMENT 'JavaScript后置脚本',
   PRE_SCRIPT           VARCHAR(3000) DEFAULT NULL COMMENT '保存前置脚本',
   AFTER_SCRIPT         VARCHAR(3000) DEFAULT NULL COMMENT '保存后置脚本',
   ISTREELIST           SMALLINT(6) DEFAULT NULL COMMENT '是否树形列表',
   TREECONF             VARCHAR(200) DEFAULT NULL COMMENT '树形配置',
   TENANT_ID_           VARCHAR(64) DEFAULT NULL,
   PRIMARY KEY (ID_)
);

ALTER TABLE FORM_BUS_SET COMMENT '业务数据保存配置';

CREATE TABLE FORM_CODEGEN_LOG
(
   ID_                  VARCHAR(64) NOT NULL COMMENT '主键',
   TYPE_                VARCHAR(40) DEFAULT NULL COMMENT '操作类型',
   TABLE_OR_FORM_       VARCHAR(255) DEFAULT NULL COMMENT '表或表单名称',
   OPE_CONTENT_         TEXT COMMENT '操作参数',
   IP_                  VARCHAR(40) DEFAULT NULL COMMENT '操作IP',
   CREATE_BY_           VARCHAR(64) DEFAULT NULL COMMENT '创建人',
   CREATE_ORG_ID_       VARCHAR(64) DEFAULT NULL COMMENT '创建人所属组织',
   CREATE_TIME_         DATETIME,
   UPDATE_BY_           VARCHAR(64) DEFAULT NULL,
   UPDATE_TIME_         DATETIME,
   TENANT_ID_           VARCHAR(64) DEFAULT NULL COMMENT '租户ID',
   PRIMARY KEY (ID_)
);

ALTER TABLE FORM_CODEGEN_LOG COMMENT '代码生成日志';

CREATE TABLE FORM_COMBINATE_DIALOG
(
   ID_                  VARCHAR(50) NOT NULL,
   NAME_                VARCHAR(100) DEFAULT NULL COMMENT '名称',
   ALIAS_               VARCHAR(50) DEFAULT NULL COMMENT '别名',
   WIDTH_               INT(11) DEFAULT NULL COMMENT '宽度',
   HEIGHT_              INT(11) DEFAULT NULL COMMENT '高度',
   TREE_DIALOG_ID_      VARCHAR(50) DEFAULT NULL COMMENT '树形对话框ID',
   TREE_DIALOG_NAME_    VARCHAR(100) DEFAULT NULL COMMENT '树形对话框名称',
   LIST_DIALOG_ID_      VARCHAR(50) DEFAULT NULL COMMENT '列表对话框ID',
   LIST_DIALOG_NAME_    VARCHAR(100) DEFAULT NULL,
   FIELD_               VARCHAR(500) DEFAULT NULL,
   TENANT_ID_           VARCHAR(64) DEFAULT NULL,
   PRIMARY KEY (ID_)
);

ALTER TABLE FORM_COMBINATE_DIALOG COMMENT '组合对话框';

CREATE TABLE FORM_CUSTOM_CHART
(
   ID_                  VARCHAR(64) NOT NULL,
   NAME_                VARCHAR(64) DEFAULT NULL,
   ALIAS_               VARCHAR(64) DEFAULT NULL,
   STYLE_               SMALLINT(6) DEFAULT NULL COMMENT '图表类型：1-折线图，2-饼图，3-柱状图，4-雷达图，5-树形图',
   OBJ_NAME_            VARCHAR(64) DEFAULT NULL,
   DISPLAYFIELD_        TEXT,
   CONDITIONFIELD_      TEXT,
   RESULTFIELD_         TEXT,
   SORTFIELD_           TEXT DEFAULT NULL,
   DSALIAS_             VARCHAR(64) DEFAULT NULL,
   IS_TABLE_            SMALLINT(6) NOT NULL COMMENT '是否数据库表1:表，2.自定义sql',
   DIY_SQL_             TEXT,
   WIDTH_               INT(11) DEFAULT NULL COMMENT '图标宽度',
   HEIGHT_              INT(11) DEFAULT NULL COMMENT '图表宽度',
   XAXIS_FIELD_         VARCHAR(200) DEFAULT NULL,
   YAXIS_UNIT_          VARCHAR(200) DEFAULT NULL,
   CONF_                VARCHAR(510) DEFAULT NULL,
   TENANT_ID_           VARCHAR(64) DEFAULT NULL,
   CREATE_TIME_         DATETIME,
   UPDATE_TIME_         DATETIME,
   CREATE_BY_           VARCHAR(200) DEFAULT NULL,
   UPDATE_BY_           VARCHAR(200) DEFAULT NULL,
   CREATE_ORG_ID_       VARCHAR(64) DEFAULT NULL,
   PRIMARY KEY (ID_)
);

ALTER TABLE FORM_CUSTOM_CHART COMMENT '自定义对图表';

CREATE TABLE FORM_CUSTOM_DIALOG
(
   ID_                  VARCHAR(64) NOT NULL,
   NAME_                VARCHAR(64) NOT NULL COMMENT '名字',
   ALIAS_               VARCHAR(64) NOT NULL COMMENT '别名',
   STYLE_               SMALLINT(6) DEFAULT NULL COMMENT '显示样式：0-列表，1-树形',
   OBJ_NAME_            VARCHAR(64) DEFAULT NULL COMMENT '对象名称，如果是表就是表名，视图则视图名',
   NEED_PAGE_           SMALLINT(6) DEFAULT NULL COMMENT '是否分页',
   PAGE_SIZE_           INT(11) DEFAULT NULL COMMENT '分页大小',
   DISPLAYFIELD_        TEXT COMMENT '显示字段',
   CONDITIONFIELD_      TEXT COMMENT '条件字段的json',
   RESULTFIELD_         TEXT COMMENT '返回字段json',
   SORTFIELD_           VARCHAR(200) DEFAULT NULL COMMENT '排序字段',
   DSALIAS_             VARCHAR(64) DEFAULT NULL COMMENT '数据源的别名',
   IS_TABLE_            SMALLINT(6) DEFAULT NULL COMMENT '是否数据库表0:视图,1:数据库表',
   DIY_SQL_             TEXT DEFAULT NULL COMMENT '自定义SQL',
   SQL_BUILD_TYPE_      SMALLINT(6) DEFAULT NULL COMMENT 'SQL构建类型',
   WIDTH_               INT(11) DEFAULT NULL COMMENT '弹出框的宽度',
   HEIGHT_              INT(11) DEFAULT NULL COMMENT '弹出框的高度',
   SELECT_NUM_          INT(11) DEFAULT NULL COMMENT '是否单选 -1:多选',
   SYSTEM_              SMALLINT(6) DEFAULT 0 COMMENT '系统默认',
   PARENT_CHECK_        SMALLINT(6) DEFAULT NULL COMMENT '树多选父级级联',
   CHILDREN_CHECK_      SMALLINT(6) DEFAULT NULL COMMENT '树多选子级级联',
   DS_TYPE_             VARCHAR(20) DEFAULT NULL COMMENT '数据源类型',
   URL_                 VARCHAR(255) DEFAULT NULL COMMENT '接口地址',
   REQUEST_TYPE_        VARCHAR(20) DEFAULT NULL COMMENT '接口请求类型（GETPOST）',
   DATA_PARAM_          VARCHAR(2000) DEFAULT NULL COMMENT '接口参数',
   PAGE_KEY_            VARCHAR(20) DEFAULT NULL COMMENT '页号（key）',
   PAGESIZE_KEY_        VARCHAR(20) DEFAULT NULL COMMENT '分页大小(key)',
   TOTAL_KEY_           VARCHAR(20) DEFAULT NULL COMMENT '总条数（key）',
   LIST_KEY_            VARCHAR(20) DEFAULT NULL COMMENT '列表(key)',
   TENANT_ID_           VARCHAR(64) DEFAULT NULL,
   CREATE_BY_           VARCHAR(200) DEFAULT NULL,
   UPDATE_BY_           VARCHAR(200) DEFAULT NULL,
   CREATE_ORG_ID_       VARCHAR(64) DEFAULT NULL,
   CREATE_TIME_         DATETIME,
   UPDATE_TIME_         DATETIME,
   HEADER_              VARCHAR(512) DEFAULT NULL COMMENT '头部信息',
   COMBINATION_RULE_    LONGTEXT,
   PRIMARY KEY (ID_)
);

ALTER TABLE FORM_CUSTOM_DIALOG COMMENT '自定义对话框';

CREATE TABLE FORM_CUSTOM_QUERY
(
   ID_                  VARCHAR(64) NOT NULL,
   NAME_                VARCHAR(64) NOT NULL COMMENT '名字',
   ALIAS_               VARCHAR(64) NOT NULL COMMENT '别名',
   OBJ_NAME_            VARCHAR(64) DEFAULT NULL,
   NEED_PAGE_           SMALLINT(6) DEFAULT NULL COMMENT '是否分页',
   PAGE_SIZE_           INT(11) DEFAULT NULL COMMENT '分页大小',
   CONDITIONFIELD_      TEXT COMMENT '条件字段的json',
   RESULTFIELD_         TEXT COMMENT '返回字段json',
   SORTFIELD_           TEXT COMMENT '排序字段',
   DSALIAS_             VARCHAR(64) DEFAULT NULL COMMENT '数据源的别名',
   IS_TABLE_            SMALLINT(6) DEFAULT NULL COMMENT '是否数据库表0:视图,1:数据库表',
   DIY_SQL_             TEXT DEFAULT NULL COMMENT '自定义SQL',
   SQL_BUILD_TYPE_      SMALLINT(6) DEFAULT NULL COMMENT 'SQL构建类型',
   DS_TYPE_             VARCHAR(20) DEFAULT NULL COMMENT '数据源类型',
   URL_                 VARCHAR(1000) DEFAULT NULL COMMENT '接口地址',
   REQUEST_TYPE_        VARCHAR(20) DEFAULT NULL COMMENT '接口请求类型（GETPOST）',
   DATA_PARAM_          VARCHAR(2000) DEFAULT NULL COMMENT '接口参数',
   PAGE_KEY_            VARCHAR(20) DEFAULT NULL COMMENT '页号（key）',
   PAGESIZE_KEY_        VARCHAR(20) DEFAULT NULL COMMENT '分页大小(key)',
   TOTAL_KEY_           VARCHAR(20) DEFAULT NULL COMMENT '总条数（key）',
   LIST_KEY_            VARCHAR(20) DEFAULT NULL COMMENT '列表(key)',
   TENANT_ID_           VARCHAR(64) DEFAULT NULL,
   CREATE_BY_           VARCHAR(200) DEFAULT NULL,
   UPDATE_BY_           VARCHAR(200) DEFAULT NULL,
   CREATE_ORG_ID_       VARCHAR(64) DEFAULT NULL,
   CREATE_TIME_         DATETIME,
   UPDATE_TIME_         DATETIME,
   HEADER_              VARCHAR(512) DEFAULT NULL COMMENT '头部信息',
   PRIMARY KEY (ID_)
);

ALTER TABLE FORM_CUSTOM_QUERY COMMENT '自定义查询';

CREATE TABLE FORM_DATA_IMPORT_LOG
(
   ID_                  VARCHAR(64) NOT NULL,
   P_ID_                VARCHAR(64) DEFAULT NULL,
   ROW_NUMBER_          INT(11) DEFAULT NULL COMMENT '错误行号',
   COLUMN_NAME_         VARCHAR(64) DEFAULT NULL COMMENT '错误列号',
   ERROR_MSG_           TEXT COMMENT '错误信息',
   BO_ALIAS_            VARCHAR(64) DEFAULT NULL COMMENT 'bo别名',
   TENANT_ID_           VARCHAR(64) DEFAULT NULL,
   PRIMARY KEY (ID_)
);

ALTER TABLE FORM_DATA_IMPORT_LOG COMMENT '数据导入日志';

CREATE TABLE FORM_DATA_TEMPLATE
(
   ID_                  VARCHAR(64) NOT NULL,
   BO_DEF_ID_           VARCHAR(64) DEFAULT NULL COMMENT '业务对象定义id',
   BO_DEF_ALIAS_        VARCHAR(128) DEFAULT NULL COMMENT '业务对象定义别名',
   FORM_KEY_            VARCHAR(126) DEFAULT NULL COMMENT '自定义表单key',
   NAME_                VARCHAR(128) DEFAULT NULL COMMENT '名称',
   ALIAS_               VARCHAR(128) DEFAULT NULL COMMENT '别名',
   STYLE_               SMALLINT(6) DEFAULT NULL COMMENT '样式',
   NEED_PAGE_           SMALLINT(6) DEFAULT 1 COMMENT '是否需要分页 0不分页  1分页',
   PAGE_SIZE_           SMALLINT(6) DEFAULT NULL COMMENT '分页大小',
   TEMPLATE_ALIAS_      VARCHAR(128) DEFAULT NULL COMMENT '数据模板别名',
   TEMPLATE_HTML_       LONGTEXT,
   DISPLAY_FIELD_       LONGTEXT,
   SORT_FIELD_          LONGTEXT,
   CONDITION_FIELD_     LONGTEXT,
   MANAGE_FIELD_        LONGTEXT DEFAULT NULL COMMENT '管理字段',
   FILTER_FIELD_        LONGTEXT,
   VAR_FIELD_           VARCHAR(200) DEFAULT NULL COMMENT '变量字段',
   FILTER_TYPE_         SMALLINT(6) DEFAULT NULL COMMENT '过滤类型（1.建立条件,2.脚本条件）',
   SOURCE_              SMALLINT(6) DEFAULT NULL COMMENT '数据来源',
   DEF_ID_              VARCHAR(64) DEFAULT NULL COMMENT '流程定义ID',
   IS_QUERY_            SMALLINT(6) DEFAULT 1 COMMENT '是否查询',
   IS_FILTER_           SMALLINT(6) DEFAULT 1 COMMENT '是否过滤',
   EXPORT_FIELD_        LONGTEXT,
   PRINT_FIELD_         LONGTEXT,
   SUBJECT_             VARCHAR(255) DEFAULT NULL,
   FORM_FIELD_          LONGTEXT,
   TYPE_ID_             VARCHAR(50) DEFAULT NULL,
   TYPE_NAME_           VARCHAR(100) DEFAULT NULL,
   UPDATE_TIME_         DATETIME,
   MOBILE_FORM_ALIAS_   VARCHAR(255) DEFAULT NULL,
   MOBILE_FORM_NAME_    VARCHAR(255) DEFAULT NULL,
   TREE_FIELD_          LONGTEXT,
   TENANT_ID_           VARCHAR(64) DEFAULT NULL,
   CREATE_BY_           VARCHAR(200) DEFAULT NULL,
   UPDATE_BY_           VARCHAR(200) DEFAULT NULL,
   CREATE_ORG_ID_       VARCHAR(64) DEFAULT NULL,
   CREATE_TIME_         DATETIME,
   FILTERING_FIELD_     LONGTEXT,
   SUMMARY_FIELD_       LONGTEXT DEFAULT NULL,
   BEFORE_SCRIPT_       LONGTEXT COMMENT '前置groovy脚本',
   AFTER_FCRIPT_        LONGTEXT COMMENT '后置groovy脚本',
   SUB_FIELD_           TEXT COMMENT '子表字段',
   ALLOW_SHARE_         SMALLINT(6) DEFAULT 2 COMMENT '是否允许外链。1，允许。2，不允许',
   RESET_TEMP_          SMALLINT COMMENT '是否需要初始化模板 1: 是 0: 否',
   PRIMARY KEY (ID_)
);

ALTER TABLE FORM_DATA_TEMPLATE COMMENT '数据视图';

CREATE TABLE FORM_DATA_TEMPLATE_DRAFT
(
   ID_                  VARCHAR(64) NOT NULL COMMENT '主键',
   TITLE_               VARCHAR(255) DEFAULT NULL COMMENT '标题',
   TEMP_ALIAS_          VARCHAR(64) DEFAULT NULL COMMENT '数据报表别名',
   DATA_JSON_           TEXT COMMENT '报表数据json',
   CREATE_BY_           VARCHAR(64) DEFAULT NULL COMMENT '创建人',
   CREATE_TIME_         DATETIME,
   UPDATE_BY_           VARCHAR(64) DEFAULT NULL COMMENT '更新人',
   UPDATE_TIME_         DATETIME DEFAULT NULL COMMENT '更新时间',
   TENANT_ID_           VARCHAR(64) DEFAULT NULL COMMENT '租户id',
   PRIMARY KEY (ID_)
);

ALTER TABLE FORM_DATA_TEMPLATE_DRAFT COMMENT '数据报表草稿数据';

CREATE TABLE FORM_DATA_TEMPLATE_EXTEND
(
   ID_                  VARCHAR(64) NOT NULL COMMENT '主键',
   CONTENT_             TEXT COMMENT '提醒内容',
   COUNT_               VARCHAR(64) DEFAULT NULL COMMENT '提醒次数',
   OBJ_ID_              VARCHAR(2000) COMMENT '提醒对象ID',
   TYPE_OBJ_            VARCHAR(64) DEFAULT NULL COMMENT '提醒内型',
   OBJ_NAME_            TEXT COMMENT '提醒对象名称',
   RULE_                TEXT COMMENT '提醒条件',
   TENANT_ID_           VARCHAR(64) DEFAULT NULL COMMENT '租户Id',
   FORM_DATA_TEMPLATE_ID VARCHAR(64) DEFAULT NULL,
   SUBJECT_             VARCHAR(500) COMMENT '提醒主题',
   PRIMARY KEY (ID_)
);

ALTER TABLE FORM_DATA_TEMPLATE_EXTEND COMMENT '业务数据模板扩展';

CREATE TABLE FORM_DEFINITION
(
   ID_                  VARCHAR(50) NOT NULL,
   DEF_ID_              VARCHAR(50) DEFAULT NULL COMMENT '表单元数据定义ID',
   NAME_                VARCHAR(200) DEFAULT NULL COMMENT '表单名称',
   FORM_KEY_            VARCHAR(50) DEFAULT NULL COMMENT '表单key',
   DESC_                VARCHAR(200) DEFAULT NULL COMMENT '描述',
   FORM_HTML_           LONGTEXT COMMENT '表单定义HTML',
   STATUS_              VARCHAR(20) DEFAULT NULL COMMENT '状态 draft=草稿；deploy=发布',
   FORM_TYPE_           VARCHAR(20) DEFAULT NULL COMMENT '表单类型 分为 pc,mobile',
   TYPE_ID_             VARCHAR(50) DEFAULT NULL COMMENT '所属分类ID',
   TYPE_NAME_           VARCHAR(100) DEFAULT NULL COMMENT '分类名称',
   IS_MAIN_             CHAR(1) DEFAULT NULL COMMENT '是否主版本',
   VERSION_             INT(11) DEFAULT NULL COMMENT '版本号',
   CREATE_BY_           VARCHAR(50) DEFAULT NULL COMMENT '创建人',
   CREATE_TIME_         DATETIME,
   CREATE_ORG_ID_       VARCHAR(64) DEFAULT NULL,
   UPDATE_BY_           VARCHAR(50) DEFAULT NULL COMMENT '更新人',
   UPDATE_TIME_         DATETIME,
   FORM_TAB_TITLE_      VARCHAR(200) DEFAULT NULL COMMENT '表单tab标题',
   DIY_JS_              TEXT,
   EXPAND_              LONGTEXT,
   IS_PRINT_            CHAR(1) DEFAULT NULL COMMENT '是否为打印模板（Y：是，N：否）',
   TENANT_ID_           VARCHAR(64) DEFAULT NULL,
   FORM_SETTING_        TEXT COMMENT '表单设置',
   PRIMARY KEY (ID_)
);

ALTER TABLE FORM_DEFINITION COMMENT '表单定义';

CREATE TABLE FORM_DEFINITION_HI
(
   ID_                  VARCHAR(64) NOT NULL,
   FORM_ID_             VARCHAR(64) NOT NULL COMMENT '对应表单ID',
   NAME_                VARCHAR(64) NOT NULL COMMENT '表单名称',
   DESC_                VARCHAR(255) DEFAULT NULL COMMENT '表单描述',
   FORM_HTML_           LONGTEXT COMMENT '表单设计（HTML代码）',
   CREATE_TIME_         DATETIME,
   FORM_KEY_            VARCHAR(64) DEFAULT NULL,
   VERSION_             VARCHAR(20) DEFAULT NULL,
   CREATE_BY_           VARCHAR(64) DEFAULT NULL,
   CREATE_ORG_ID_       VARCHAR(64) DEFAULT NULL,
   UPDATE_BY_           VARCHAR(64) DEFAULT NULL,
   UPDATE_TIME_         DATETIME,
   TENANT_ID_           VARCHAR(64) DEFAULT NULL,
   PRIMARY KEY (ID_)
);

ALTER TABLE FORM_DEFINITION_HI COMMENT '流程表单HTML设计历史记录';

CREATE TABLE FORM_FIELD
(
   ID_                  VARCHAR(20) NOT NULL,
   NAME_                VARCHAR(50) DEFAULT NULL COMMENT '字段名',
   DESC_                VARCHAR(100) DEFAULT NULL COMMENT '描述',
   FORM_ID_             VARCHAR(50) DEFAULT NULL COMMENT '表单元数据ID',
   BO_DEF_ID_           VARCHAR(50) DEFAULT NULL COMMENT 'BO定义ID',
   ENT_ID_              VARCHAR(255) DEFAULT NULL COMMENT '实体ID',
   GROUP_ID_            VARCHAR(50) DEFAULT NULL COMMENT '分组ID',
   CALCULATION_         TEXT COMMENT '计算表达式',
   TYPE_                VARCHAR(50) DEFAULT NULL COMMENT '数据类型',
   BO_ATTR_ID_          VARCHAR(50) DEFAULT NULL COMMENT 'BO属性定义',
   CTRL_TYPE_           VARCHAR(50) DEFAULT NULL COMMENT '控件类型',
   VALID_RULE_          TEXT COMMENT '验证规则',
   OPTION_              TEXT COMMENT '表单配置选项',
   SN_                  INT(11) DEFAULT NULL COMMENT '排序',
   TENANT_ID_           VARCHAR(64) DEFAULT NULL,
   PRIMARY KEY (ID_)
);

ALTER TABLE FORM_FIELD COMMENT '表单字段定义';

CREATE TABLE FORM_FIELD_AUTH
(
   ID_                  VARCHAR(64) NOT NULL,
   DS_ALIAS_            VARCHAR(64) DEFAULT NULL COMMENT '数据源别名',
   TABLE_NAME_          VARCHAR(64) DEFAULT NULL COMMENT '表名',
   DESC_                VARCHAR(255) DEFAULT NULL COMMENT '描述',
   ENT_NAME_            VARCHAR(64) DEFAULT NULL COMMENT '实体别名',
   CLASS_NAME_          VARCHAR(64) DEFAULT NULL COMMENT '类名',
   CLASS_PATH_          VARCHAR(300) DEFAULT NULL COMMENT '类路径',
   FIELD_LIST_          TEXT COMMENT '字段列表（权限设置）',
   CREATE_TIME_         DATETIME,
   UPDATE_TIME_         DATETIME,
   CREATE_BY_           VARCHAR(64) DEFAULT NULL COMMENT '创建人',
   UPDATE_BY_           VARCHAR(64) DEFAULT NULL COMMENT '更新人',
   CREATE_ORG_ID_       VARCHAR(64) DEFAULT NULL,
   TENANT_ID_           VARCHAR(64) DEFAULT NULL,
   PRIMARY KEY (ID_)
);

ALTER TABLE FORM_FIELD_AUTH COMMENT '字段授权信息';

CREATE TABLE FORM_HISTORY_RECORD
(
   ID_                  VARCHAR(64) NOT NULL,
   FORM_ID_             VARCHAR(64) DEFAULT NULL,
   FORM_HTML_           LONGTEXT,
   CREATE_BY_           VARCHAR(64) DEFAULT NULL,
   CREATE_TIME_         DATETIME,
   CREATE_ORG_ID_       VARCHAR(64) DEFAULT NULL,
   UPDATE_BY_           VARCHAR(64) DEFAULT NULL,
   UPDATE_TIME_         DATETIME,
   FORM_KEY_            VARCHAR(255) DEFAULT NULL COMMENT '表单key',
   VERSION_             INT(255) DEFAULT NULL COMMENT '版本',
   FORM_EXPAND_         LONGTEXT COMMENT '表单 json 数据',
   TENANT_ID_           VARCHAR(64) DEFAULT NULL,
   PRIMARY KEY (ID_)
);

ALTER TABLE FORM_HISTORY_RECORD COMMENT '表单历史数据';

CREATE TABLE FORM_IMPORT_CHECK_JAR
(
   ID_                  VARCHAR(64) NOT NULL,
   CLASS_PATH_          VARCHAR(255) DEFAULT NULL COMMENT '校验类路径',
   DESC_                VARCHAR(255) DEFAULT NULL COMMENT '描述',
   FILE_PATH_           VARCHAR(512) DEFAULT NULL COMMENT '校验jar包位置',
   PRIMARY KEY (ID_)
);

ALTER TABLE FORM_IMPORT_CHECK_JAR COMMENT '校验包导入表';

CREATE TABLE FORM_META
(
   ID_                  VARCHAR(50) NOT NULL,
   KEY_                 VARCHAR(50) DEFAULT NULL COMMENT '表单key值',
   NAME_                VARCHAR(128) DEFAULT NULL COMMENT '定义名称',
   TYPE_                VARCHAR(50) DEFAULT NULL COMMENT '分类名称',
   TYPE_ID_             VARCHAR(50) DEFAULT NULL COMMENT '分类',
   EXPAND_              LONGTEXT COMMENT '扩展字段',
   OPINION_CONF_        VARCHAR(1000) DEFAULT NULL COMMENT '意见配置',
   CREATE_BY_           VARCHAR(50) DEFAULT NULL COMMENT '创建人ID',
   CREATE_TIME_         DATETIME,
   UPDATE_BY_           VARCHAR(50) DEFAULT NULL COMMENT '最后更新人',
   UPDATE_TIME_         DATETIME,
   CREATE_ORG_ID_       VARCHAR(64) DEFAULT NULL,
   DESC_                VARCHAR(200) DEFAULT NULL COMMENT '描述',
   GANGED_              TEXT COMMENT '联动设置',
   MACROALIAS_          VARCHAR(50) DEFAULT NULL COMMENT '宏模板',
   MAINALIAS_           VARCHAR(50) DEFAULT NULL COMMENT '表单模板',
   SUBENTITY_           VARCHAR(255) DEFAULT NULL COMMENT '子实体模板',
   REV_                 INT(11) NOT NULL DEFAULT 1 COMMENT '关联锁',
   TENANT_ID_           VARCHAR(64) DEFAULT NULL,
   PRIMARY KEY (ID_)
);

ALTER TABLE FORM_META COMMENT '表单元数据定义';

CREATE TABLE FORM_PRINT_TEMPLATE
(
   ID_                  VARCHAR(64) NOT NULL,
   FILE_ID_             VARCHAR(255) DEFAULT NULL COMMENT '附件ID',
   FILE_NAME            VARCHAR(64) DEFAULT NULL COMMENT '打印模板名称',
   FORM_KEY_            VARCHAR(64) DEFAULT NULL COMMENT '表单Key',
   IS_MAIN              VARCHAR(10) DEFAULT NULL COMMENT '是否是主版本',
   CREATE_BY_           VARCHAR(64) DEFAULT NULL COMMENT '创建人ID',
   CREATE_ORG_ID_       VARCHAR(64) DEFAULT NULL COMMENT '创建者所属组织ID',
   CREATE_TIME_         DATETIME,
   UPDATE_BY_           VARCHAR(64) DEFAULT NULL COMMENT '更新人ID',
   UPDATE_TIME_         DATETIME,
   DEF_ID_              VARCHAR(64) DEFAULT NULL COMMENT '表单元数据id',
   FORM_ID_             VARCHAR(64) DEFAULT NULL COMMENT '表单id',
   PRINT_TYPE_          VARCHAR(64) DEFAULT NULL COMMENT '打印类型(word:word套打，form:表单模板)',
   TENANT_ID_           VARCHAR(64) DEFAULT NULL COMMENT '租户id',
   SCRIPT_STR_          TEXT,
   PRIMARY KEY (ID_)
);

ALTER TABLE FORM_PRINT_TEMPLATE COMMENT '打印模板';

CREATE TABLE FORM_QUERY_METAFIELD
(
   ID_                  VARCHAR(50) NOT NULL,
   SQL_ID_              VARCHAR(50) DEFAULT NULL COMMENT 'SQL_ID_',
   NAME_                VARCHAR(100) DEFAULT NULL COMMENT '字段名',
   FIELD_NAME_          VARCHAR(50) DEFAULT NULL COMMENT '实际字段名',
   FIELD_DESC_          VARCHAR(100) DEFAULT NULL COMMENT '字段备注',
   IS_SHOW_             SMALLINT(6) DEFAULT NULL COMMENT '是否可见',
   IS_SEARCH_           SMALLINT(6) DEFAULT NULL COMMENT '是否搜索',
   IS_COMBINE_          SMALLINT(6) DEFAULT NULL COMMENT '是否合并查询',
   CONTROL_TYPE_        VARCHAR(32) DEFAULT NULL COMMENT '控件类型',
   DATA_TYPE_           VARCHAR(32) DEFAULT NULL COMMENT '数据类型',
   IS_VIRTUAL_          SMALLINT(6) DEFAULT NULL COMMENT '是否衍生列',
   VIRTUAL_FROM_        VARCHAR(50) DEFAULT NULL COMMENT '衍生列来自列',
   RESULT_FROM_TYPE_    VARCHAR(16) DEFAULT NULL COMMENT '来自类型',
   RESULT_FROM_         VARCHAR(500) DEFAULT NULL COMMENT '衍生列配置',
   ALARM_SETTING_       VARCHAR(500) DEFAULT NULL COMMENT '报警设定',
   DATE_FORMAT_         VARCHAR(50) DEFAULT NULL COMMENT '日期格式',
   URL_                 VARCHAR(200) DEFAULT NULL COMMENT '连接地址',
   FORMATER_            LONGTEXT,
   CONTROL_CONTENT_     VARCHAR(500) DEFAULT NULL COMMENT '控件内容',
   SN_                  SMALLINT(6) DEFAULT NULL COMMENT '排序',
   WIDTH_               SMALLINT(6) DEFAULT NULL COMMENT '宽度',
   TENANT_ID_           VARCHAR(64) DEFAULT NULL,
   PRIMARY KEY (ID_)
);

ALTER TABLE FORM_QUERY_METAFIELD COMMENT 'SQL 字段元数据';

CREATE TABLE FORM_QUERY_SQLDEF
(
   ID_                  VARCHAR(50) NOT NULL,
   ALIAS_               VARCHAR(50) DEFAULT NULL COMMENT '别名',
   NAME_                VARCHAR(50) DEFAULT NULL COMMENT 'sql定义名称',
   DS_NAME_             VARCHAR(50) DEFAULT NULL COMMENT '数据源名称',
   SQL_                 VARCHAR(1000) DEFAULT NULL COMMENT 'SQL语句',
   CATEGORY_ID_         VARCHAR(50) DEFAULT NULL COMMENT '分类ID',
   SUPPORT_TAB_         SMALLINT(6) DEFAULT NULL COMMENT '是否支持TAB',
   BUTTON_DEF_          VARCHAR(2000) DEFAULT NULL COMMENT '按钮定义',
   TENANT_ID_           VARCHAR(64) DEFAULT NULL,
   PRIMARY KEY (ID_)
);

ALTER TABLE FORM_QUERY_SQLDEF COMMENT '自定义SQL定义';

CREATE TABLE FORM_QUERY_VIEW
(
   ID_                  VARCHAR(50) NOT NULL,
   SQL_ALIAS_           VARCHAR(50) DEFAULT NULL COMMENT 'sql别名',
   ALIAS_               VARCHAR(50) DEFAULT NULL COMMENT '视图别名',
   NAME_                VARCHAR(50) DEFAULT NULL COMMENT '视图名称',
   CONDITIONS_          TEXT,
   FILTER_TYPE_         SMALLINT(6) DEFAULT NULL COMMENT '过滤器类型',
   FILTER_              LONGTEXT,
   BUTTONS_             VARCHAR(1500) DEFAULT NULL COMMENT '按纽定义',
   INIT_QUERY_          SMALLINT(6) DEFAULT NULL COMMENT '是否初始化查询',
   TEMPLATE_            LONGTEXT,
   SUPPORT_GROUP_       SMALLINT(6) DEFAULT NULL COMMENT '是否支持分组',
   GROUP_SETTING_       VARCHAR(500) DEFAULT NULL COMMENT '分组设定',
   PAGE_SIZE_           SMALLINT(6) DEFAULT NULL COMMENT '分页大小',
   SHOW_ROWS_NUM_       SMALLINT(6) DEFAULT NULL COMMENT '显示行号',
   SN_                  SMALLINT(6) DEFAULT NULL COMMENT '排序',
   NEED_PAGE_           SMALLINT(6) DEFAULT NULL COMMENT '是否分页',
   TEMPLATE_ALIAS_      VARCHAR(50) DEFAULT NULL COMMENT '摸版别名',
   SHOWS_               LONGTEXT,
   TENANT_ID_           VARCHAR(64) DEFAULT NULL,
   SUMMARY_SETTING_     LONGTEXT DEFAULT NULL,
   PRIMARY KEY (ID_)
);

ALTER TABLE FORM_QUERY_VIEW COMMENT 'SQL视图定义';

CREATE TABLE FORM_REMIND_DATA
(
   ID_                  VARCHAR(64) NOT NULL COMMENT '主键',
   CONTENT_             TEXT COMMENT '提醒内容',
   COUNT_               VARCHAR(64) DEFAULT NULL COMMENT '提醒次数',
   OBJ_ID_              VARCHAR(2000) COMMENT '提醒对象ID',
   TYPE_OBJ_            VARCHAR(64) DEFAULT NULL COMMENT '提醒类型',
   OPEM_TYPE            VARCHAR(64) DEFAULT NULL COMMENT '打开类型  数据报表 或者流程实例查看页面',
   OPEM_ID              VARCHAR(64) DEFAULT NULL COMMENT '流程实例Id 或者业务对象Id',
   TENANT_ID_           VARCHAR(64) DEFAULT NULL COMMENT '租户Id',
   SUBJECT_             VARCHAR(500) COMMENT '提醒主题',
   REF_ID_              VARCHAR(64) COMMENT '外键',
   PRIMARY KEY (ID_)
);

ALTER TABLE FORM_REMIND_DATA COMMENT '提醒业务对象';

CREATE TABLE FORM_RIGHT
(
   ID_                  VARCHAR(64) NOT NULL,
   FORM_KEY_            VARCHAR(64) DEFAULT NULL COMMENT '表单KEY',
   FLOW_KEY_            VARCHAR(64) DEFAULT NULL COMMENT '流程定义KEY',
   NODE_ID_             VARCHAR(60) DEFAULT NULL COMMENT '节点ID',
   PARENT_FLOW_KEY_     VARCHAR(64) DEFAULT NULL COMMENT '父流程key',
   PERMISSION_          TEXT COMMENT '权限',
   PERMISSION_TYPE_     INT(11) DEFAULT NULL COMMENT '权限类型 1 流程权限，2 实例权限',
   IS_CHECK_OPINION     VARCHAR(255) DEFAULT NULL COMMENT '是否隐藏审批记录',
   DATA_KEY_            VARCHAR(64) DEFAULT NULL COMMENT '数据报表Key',
   TENANT_ID_           VARCHAR(64) DEFAULT NULL,
   PRIMARY KEY (ID_)
);

ALTER TABLE FORM_RIGHT COMMENT '表单权限';

CREATE TABLE FORM_TEMPLATE
(
   TEMPLATE_ID_         VARCHAR(64) NOT NULL COMMENT '模板id',
   TEMPLATE_NAME_       VARCHAR(200) DEFAULT NULL COMMENT '模板名称',
   TEMPLATE_TYPE_       VARCHAR(20) DEFAULT NULL COMMENT '模板类型',
   MACROTEMPLATE_ALIAS_ VARCHAR(50) DEFAULT NULL COMMENT '模板所向',
   HTML_                TEXT COMMENT '模板内容',
   TEMPLATE_DESC_       VARCHAR(400) DEFAULT NULL COMMENT '模板描述',
   CANEDIT_             INT(11) DEFAULT NULL COMMENT '是否可以编辑',
   ALIAS_               VARCHAR(50) DEFAULT NULL COMMENT '别名',
   SOURCE_              VARCHAR(20) DEFAULT NULL,
   REV_                 INT(11) NOT NULL DEFAULT 1 COMMENT '关联锁',
   IS_DEFAULT_          SMALLINT(6) DEFAULT 0 COMMENT '0：非默认模板 1：默认模板',
   TENANT_ID_           VARCHAR(64) DEFAULT NULL,
   PRIMARY KEY (TEMPLATE_ID_)
);

ALTER TABLE FORM_TEMPLATE COMMENT '表单模版';

CREATE TABLE FORM_VIEW_MANAGE
(
   ID_                  VARCHAR(64) NOT NULL,
   DESC_                VARCHAR(255) DEFAULT NULL,
   VIEW_NAME_           VARCHAR(255) DEFAULT NULL,
   SQL_                 VARCHAR(2000) DEFAULT NULL,
   DS_ALIAS_            VARCHAR(50) DEFAULT NULL,
   STATUS_              INT(1) DEFAULT NULL COMMENT '状态：0未生成视图，1已生成视图',
   TENANT_ID_           VARCHAR(64) DEFAULT NULL,
   PRIMARY KEY (ID_)
);

ALTER TABLE FORM_VIEW_MANAGE COMMENT '视图管理';

