1 配置说明

  • 天舟云只需要配置必要的配置,多个服务公用一个即可,如有项目独有的,可以自定义个namespace配置即可
    `yaml

    数据库配置,必须配置成自己的

    spring.datasource.url = jdbc:postgresql://t-dbsec-postgres.gz.cvte.cn:11000/pguat_scm
    spring.datasource.username = scm
    spring.datasource.password = XXXXXX
    spring.datasource.driver-class-name = org.postgresql.Driver
    #Redis连接,建议配置成自己的
    spring.redis.host = redis-fat001.gz.cvte.cn
    spring.redis.password = XXXXX
    spring.redis.port = 6379
    spring.redis.database = 9

    IAC配置,必须配置成自己的

    csb.iac.appId = 15d22276-a397-4f24-bcea-XXXXXX
    csb.iac.appSecret = d96deb81-358e-481b-XXXXXX
    csb.iac.systemId = 1206b5b9-1c37-45c6-8ed0-XXXXX
    csb.iac.tenantId = 93caaf4e-478e-4026-a87d-XXXXXXX

    服务名,必须配置成自己的

    lcp.hub.application.name = scm-lcp-hub
    lcp.app.application.name = scm-lcp-app
    lcp.data.application.name = scm-lcp-data
    csb.legox.application.name = scm-bsm

    流水号使用公共的,建议使用自己的

    csb.serial.feignName = csb-legox/legox

    队列,使用低代码的MQ使用不同的队列

    itemtoes.queue.name = scm-lcpSearchPushItemToEsQueue

#域名配置,域名转发必须一致,都是/hub /app /data,域名改成自己的
lcp.core.url = https://scm-buat-api.gz.cvte.cn/app
lcp.data.url = https://scm-buat-api.gz.cvte.cn/data
lcp.hub.url = https://scm-buat-api.gz.cvte.cn/hub

bsm csb legox后台访问地址

service.csb.url = https://scm-buat-api.gz.cvte.cn
service.csb.gw.url = https://csbuat-gw.gz.cvte.cn

#流水号地址,如果需要使用自己的需要修改,多租户版本使用https://csbsit-admin.gz.cvte.cn/legox,单租户使用
service.csno.url = https://csbsit-admin.gz.cvte.cn/legox 或者 https://csbsit-api.gz.cvte.cn/csno

产品线标识,改成自己的

lcp.log.prodLine = scm



## 2 鲸云配置
此处展示的是鲸云环境变量配置,项目部署完整请参考V1.6.0的文档
![](https://itapis.cvte.com/cfile/c518f53d-b405-4111-afe1-5c082b284971/v1/download/effd5ebde4204b52a6b4edb19fd4cc47)
```yaml
JAVA_OPTS = -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/app/heapdump.hprof -Denv=PRO
app.id = 1234
apollo.app.namespaces = application
lcp.log.enabled = true
lcp.log.sender.type = web

3 数据库脚本

此处为业务数据库执行的,不是配置数据库的脚本,在系统中自己增加的数据源才需要,而且是需要使用【对象】【变更】等功能时候才需要,否则不需要执行

DROP TABLE IF EXISTS obj_version;
CREATE TABLE obj_version(
                            ID VARCHAR(32) NOT NULL,
                            OBJ_ID VARCHAR(32),
                            CHANGE_ID VARCHAR(32),
                            CHANGE_TYPE VARCHAR(64),
                            IS_RELEASED VARCHAR(1),
                            IS_LATEST VARCHAR(1) NOT NULL,
                            VERSION_NO VARCHAR(128),
                            PRE_VERSION_NO VARCHAR(128),
                            RELEASE_TIME TIMESTAMP,
                            SORT_NO INTEGER,
                            IS_ENABLED VARCHAR(1),
                            IS_DELETED VARCHAR(1),
                            CRT_USER VARCHAR(32),
                            CRT_NAME VARCHAR(64),
                            CRT_TIME TIMESTAMP,
                            CRT_HOST VARCHAR(64),
                            UPD_USER VARCHAR(32),
                            UPD_NAME VARCHAR(64),
                            UPD_TIME TIMESTAMP,
                            UPD_HOST VARCHAR(64),
                            PRIMARY KEY (ID)
);

COMMENT ON TABLE obj_version IS '对象版本';
COMMENT ON COLUMN obj_version.ID IS '主键';
COMMENT ON COLUMN obj_version.OBJ_ID IS '对象ID';
COMMENT ON COLUMN obj_version.CHANGE_ID IS '变更ID';
COMMENT ON COLUMN obj_version.CHANGE_TYPE IS '变更类型';
COMMENT ON COLUMN obj_version.IS_RELEASED IS '是否已发布';
COMMENT ON COLUMN obj_version.IS_LATEST IS '是否最新已发布版本';
COMMENT ON COLUMN obj_version.VERSION_NO IS '版本号';
COMMENT ON COLUMN obj_version.PRE_VERSION_NO IS '上一个版本';
COMMENT ON COLUMN obj_version.RELEASE_TIME IS '发布时间';
COMMENT ON COLUMN obj_version.SORT_NO IS '排序';
COMMENT ON COLUMN obj_version.IS_ENABLED IS '禁用启用';
COMMENT ON COLUMN obj_version.IS_DELETED IS '是否删除';
COMMENT ON COLUMN obj_version.CRT_USER IS '创建人';
COMMENT ON COLUMN obj_version.CRT_NAME IS '创建人名';
COMMENT ON COLUMN obj_version.CRT_TIME IS '创建时间';
COMMENT ON COLUMN obj_version.CRT_HOST IS '创建地址';
COMMENT ON COLUMN obj_version.UPD_USER IS '更新人';
COMMENT ON COLUMN obj_version.UPD_NAME IS '更新人名';
COMMENT ON COLUMN obj_version.UPD_TIME IS '更新时间';
COMMENT ON COLUMN obj_version.UPD_HOST IS '更新地址';

create index idx_obj_version_n1 on OBJ_VERSION(obj_id);
create index idx_obj_version_n2 on OBJ_VERSION(change_id);

DROP TABLE IF EXISTS obj_attr_value_list;
CREATE TABLE obj_attr_value_list
(
    id         varchar(32) NOT NULL,
    list_id    varchar(32),
    list_type  varchar(32),
    attr_id    varchar(32),
    api_name   varchar(255),
    attr_value varchar(1000),
    upd_user   varchar(32),
    upd_time   TIMESTAMP,
    sort_no    integer,
    PRIMARY KEY (ID)
);

COMMENT ON TABLE obj_attr_value_list IS '列表属性值';
COMMENT ON COLUMN obj_attr_value_list.id IS '主键';
COMMENT ON COLUMN obj_attr_value_list.list_id IS '列表ID';
COMMENT ON COLUMN obj_attr_value_list.list_type IS '列表类型_TagTypeEnum';
COMMENT ON COLUMN obj_attr_value_list.attr_id IS '属性ID';
COMMENT ON COLUMN obj_attr_value_list.api_name IS '属性CODE';
COMMENT ON COLUMN obj_attr_value_list.attr_value IS '属性值';
COMMENT ON COLUMN obj_attr_value_list.upd_user IS '更新人';
COMMENT ON COLUMN obj_attr_value_list.upd_time IS '更新时间';
COMMENT ON COLUMN obj_attr_value_list.sort_no IS '排序号(多选值的排序)';

CREATE INDEX idx_attr_value_list_n1 ON obj_attr_value_list(attr_value, api_name) ;
CREATE INDEX idx_attr_value_list_n2 ON obj_attr_value_list(list_id, api_name, attr_value) ;
CREATE INDEX idx_attr_value_list_n3 ON obj_attr_value_list(attr_id, list_id) ;


DROP TABLE IF EXISTS obj_attr_value_version;
CREATE TABLE obj_attr_value_version(
                                       ID VARCHAR(32) NOT NULL,
                                       VERSION_ID VARCHAR(32),
                                       ATTR_ID VARCHAR(32),
                                       API_NAME VARCHAR(255),
                                       NEW_VALUE VARCHAR(1000),
                                       OLD_VALUE VARCHAR(1000),
                                       ORG_ID VARCHAR(32),
                                       NEW_ONLY_VALUE VARCHAR(32),
                                       OLD_ONLY_VALUE VARCHAR(32),
                                       NEW_ONLY_UNIT VARCHAR(32),
                                       OLD_ONLY_UNIT VARCHAR(32),
                                       UPD_USER VARCHAR(32),
                                       UPD_TIME TIMESTAMP,
                                       SORT_NO INTEGER,
                                       PRIMARY KEY (ID)
);

COMMENT ON TABLE obj_attr_value_version IS '属性值版本';
COMMENT ON COLUMN obj_attr_value_version.ID IS '主键';
COMMENT ON COLUMN obj_attr_value_version.VERSION_ID IS '版本ID';
COMMENT ON COLUMN obj_attr_value_version.ATTR_ID IS '属性ID';
COMMENT ON COLUMN obj_attr_value_version.API_NAME IS '属性编码';
COMMENT ON COLUMN obj_attr_value_version.NEW_VALUE IS '属性新值';
COMMENT ON COLUMN obj_attr_value_version.OLD_VALUE IS '属性旧值';
COMMENT ON COLUMN obj_attr_value_version.ORG_ID IS '组织ID';
COMMENT ON COLUMN obj_attr_value_version.NEW_ONLY_VALUE IS '仅新值';
COMMENT ON COLUMN obj_attr_value_version.OLD_ONLY_VALUE IS '仅旧值';
COMMENT ON COLUMN obj_attr_value_version.NEW_ONLY_UNIT IS '仅新值单位';
COMMENT ON COLUMN obj_attr_value_version.OLD_ONLY_UNIT IS '仅旧值单位';
COMMENT ON COLUMN obj_attr_value_version.UPD_USER IS '更新人';
COMMENT ON COLUMN obj_attr_value_version.UPD_TIME IS '更新时间';
COMMENT ON COLUMN obj_attr_value_version.SORT_NO IS '序号(多选值排序)';

-- 版本属性值表
CREATE INDEX IDX_ATTR_VALUE_version_N1 ON OBJ_ATTR_VALUE_version(attr_id, version_id) ;
CREATE INDEX IDX_ATTR_VALUE_version_N2 ON OBJ_ATTR_VALUE_version(version_id, api_name) ;  -- api_name字段需要增加



DROP TABLE IF EXISTS obj_attr_value_org;
CREATE TABLE obj_attr_value_org(
                                   ID VARCHAR(32) NOT NULL,
                                   OBJ_ID VARCHAR(32),
                                   ATTR_ID VARCHAR(32),
                                   API_NAME VARCHAR(255),
                                   ATTR_VALUE VARCHAR(1000),
                                   ONLY_VALUE VARCHAR(32),
                                   ONLY_UNIT VARCHAR(32),
                                   ORG_ID VARCHAR(32),
                                   UPD_USER VARCHAR(32),
                                   UPD_TIME TIMESTAMP,
                                   SORT_NO INTEGER,
                                   PRIMARY KEY (ID)
);

COMMENT ON TABLE obj_attr_value_org IS '分组织管控属性值';
COMMENT ON COLUMN obj_attr_value_org.ID IS '主键';
COMMENT ON COLUMN obj_attr_value_org.OBJ_ID IS '对象ID';
COMMENT ON COLUMN obj_attr_value_org.ATTR_ID IS '属性ID';
COMMENT ON COLUMN obj_attr_value_org.API_NAME IS '属性CODE';
COMMENT ON COLUMN obj_attr_value_org.ATTR_VALUE IS '属性值';
COMMENT ON COLUMN obj_attr_value_org.ONLY_VALUE IS '仅属性值';
COMMENT ON COLUMN obj_attr_value_org.ONLY_UNIT IS '仅属性单位';
COMMENT ON COLUMN obj_attr_value_org.ORG_ID IS '组织ID';
COMMENT ON COLUMN obj_attr_value_org.UPD_USER IS '更新人';
COMMENT ON COLUMN obj_attr_value_org.UPD_TIME IS '更新时间';
COMMENT ON COLUMN obj_attr_value_org.SORT_NO IS '排序号(多选值的排序)';

CREATE INDEX idx_attr_value_org_n1 ON obj_attr_value_org(attr_value, api_name) ;
CREATE INDEX idx_attr_value_org_n2 ON obj_attr_value_org(obj_id, api_name, attr_value) ;
CREATE INDEX idx_attr_value_org_n3 ON obj_attr_value_org(attr_id, obj_id) ;

DROP TABLE IF EXISTS obj_attr_value_ex;
CREATE TABLE obj_attr_value_ex(
                                  ID VARCHAR(32) NOT NULL,
                                  CLOB_VALUE TEXT,
                                  PRIMARY KEY (ID)
);

COMMENT ON TABLE obj_attr_value_ex IS '大文本属性值';
COMMENT ON COLUMN obj_attr_value_ex.ID IS '主键';
COMMENT ON COLUMN obj_attr_value_ex.CLOB_VALUE IS '大文本属性值';

DROP TABLE IF EXISTS obj_attr_value;
CREATE TABLE obj_attr_value(
                               ID VARCHAR(32) NOT NULL,
                               OBJ_ID VARCHAR(32),
                               ATTR_ID VARCHAR(32),
                               API_NAME VARCHAR(255),
                               ATTR_VALUE VARCHAR(1000),
                               ONLY_VALUE VARCHAR(32),
                               ONLY_UNIT VARCHAR(32),
                               UPD_USER VARCHAR(32),
                               UPD_TIME TIMESTAMP,
                               SORT_NO INTEGER,
                               PRIMARY KEY (ID)
);

COMMENT ON TABLE obj_attr_value IS '属性值';
COMMENT ON COLUMN obj_attr_value.ID IS '主键';
COMMENT ON COLUMN obj_attr_value.OBJ_ID IS '对象ID';
COMMENT ON COLUMN obj_attr_value.ATTR_ID IS '属性ID';
COMMENT ON COLUMN obj_attr_value.API_NAME IS '属性CODE';
COMMENT ON COLUMN obj_attr_value.ATTR_VALUE IS '属性值';
COMMENT ON COLUMN obj_attr_value.ONLY_VALUE IS '仅属性值';
COMMENT ON COLUMN obj_attr_value.ONLY_UNIT IS '仅属性单位';
COMMENT ON COLUMN obj_attr_value.UPD_USER IS '更新人';
COMMENT ON COLUMN obj_attr_value.UPD_TIME IS '更新时间';
COMMENT ON COLUMN obj_attr_value.SORT_NO IS '排序号(多选值的排序)';

-- 属性值
CREATE INDEX IDX_ATTR_VALUE_ITEM_ATTR_N1 ON OBJ_ATTR_VALUE(ATTR_VALUE, API_NAME) ;
CREATE INDEX IDX_ATTR_VALUE_ITEM_ATTR_N2 ON OBJ_ATTR_VALUE(OBJ_ID, API_NAME, ATTR_VALUE) ;
CREATE INDEX IDX_ATTR_VALUE_ITEM_ATTR_N3 ON OBJ_ATTR_VALUE(ATTR_ID, OBJ_ID) ;


-- -------------------------------------------------------------- 附件相关  --------------------------------------------------------------
-- ALTER TABLE obj_file DROP COLUMN last_view_time;
--  ALTER TABLE obj_file DROP COLUMN last_download_time;
-- ALTER TABLE obj_file DROP COLUMN srm_file_id;

DROP TABLE IF EXISTS obj_file_data;
CREATE TABLE obj_file_data(
                         id VARCHAR(32) NOT NULL,
                         csb_file_id varchar(50),
                         file_name varchar(800),
                         description varchar(500),
                         file_size numeric,
                         file_type varchar(20),
                         check_status VARCHAR(1),
                         checksum VARCHAR(255),
                         is_deleted VARCHAR(1),
                         crt_user VARCHAR(32),
                         crt_name varchar(50),
                         crt_time timestamp,
                         crt_host varchar(50),
                         upd_user VARCHAR(32),
                         upd_name varchar(50),
                         upd_time timestamp,
                         upd_host varchar(50),
                         obj_id varchar(32) NULL,
                         obj_class_id varchar(32) NULL,
                         app_id VARCHAR(64),
                         product_id VARCHAR(64),
                         tenant_id VARCHAR(64),
                         PRIMARY KEY (id)
);

COMMENT ON TABLE obj_file_data IS '附件记录';
COMMENT ON COLUMN obj_file_data.id IS '主键';
COMMENT ON COLUMN obj_file_data.csb_file_id IS '附件服务ID';
COMMENT ON COLUMN obj_file_data.file_name IS '附件名称';
COMMENT ON COLUMN obj_file_data.description IS '描述';
COMMENT ON COLUMN obj_file_data.file_size IS '附件大小';
COMMENT ON COLUMN obj_file_data.file_type IS '附件类型';
COMMENT ON COLUMN obj_file_data.check_status IS '状态';
COMMENT ON COLUMN obj_file_data.checksum IS '文件校验和';
COMMENT ON COLUMN obj_file_data.is_deleted IS '是否删除';
COMMENT ON COLUMN obj_file_data.obj_id IS '表单对象ID';
COMMENT ON COLUMN obj_file_data.obj_class_id IS '表单分类ID';
COMMENT ON COLUMN obj_file_data.app_id IS '应用ID';
COMMENT ON COLUMN obj_file_data.tenant_id IS '应用ID';


DROP TABLE IF EXISTS obj_file_info;
CREATE TABLE obj_file_info(
                              ID VARCHAR(32) NOT NULL,
                              FILE_NAME VARCHAR(2000),
                              DESCRIPTION VARCHAR(4000),
                              FILE_TYPE VARCHAR(32),
                              CHECK_STATUS VARCHAR(1),
                              ATTRIBUTE1 VARCHAR(255),
                              ATTRIBUTE2 VARCHAR(255),
                              IS_ENABLED VARCHAR(1),
                              IS_DELETED VARCHAR(1),
                              CRT_USER VARCHAR(32),
                              CRT_NAME VARCHAR(64),
                              CRT_TIME TIMESTAMP,
                              CRT_HOST VARCHAR(64),
                              UPD_USER VARCHAR(32),
                              UPD_NAME VARCHAR(64),
                              UPD_TIME TIMESTAMP,
                              UPD_HOST VARCHAR(64),
                              APP_ID VARCHAR(64),
                              product_id VARCHAR(64),
                              TENANT_ID VARCHAR(64),
                              PRIMARY KEY (ID)
);

COMMENT ON TABLE obj_file_info IS '附件信息';
COMMENT ON COLUMN obj_file_info.ID IS '主键';
COMMENT ON COLUMN obj_file_info.FILE_NAME IS '附件名称';
COMMENT ON COLUMN obj_file_info.DESCRIPTION IS '附件描述';
COMMENT ON COLUMN obj_file_info.FILE_TYPE IS '附件类型';
COMMENT ON COLUMN obj_file_info.CHECK_STATUS IS '签入签出状态';
COMMENT ON COLUMN obj_file_info.ATTRIBUTE1 IS '扩展属性1';
COMMENT ON COLUMN obj_file_info.ATTRIBUTE2 IS '扩展属性2';
COMMENT ON COLUMN obj_file_info.IS_ENABLED IS '禁用启用';
COMMENT ON COLUMN obj_file_info.IS_DELETED IS '是否删除';
COMMENT ON COLUMN obj_file_info.CRT_USER IS '创建人';
COMMENT ON COLUMN obj_file_info.CRT_NAME IS '创建人名';
COMMENT ON COLUMN obj_file_info.CRT_TIME IS '创建时间';
COMMENT ON COLUMN obj_file_info.CRT_HOST IS '创建地址';
COMMENT ON COLUMN obj_file_info.UPD_USER IS '更新人';
COMMENT ON COLUMN obj_file_info.UPD_NAME IS '更新人名';
COMMENT ON COLUMN obj_file_info.UPD_TIME IS '更新时间';
COMMENT ON COLUMN obj_file_info.UPD_HOST IS '更新地址';
COMMENT ON COLUMN obj_file_info.APP_ID IS '应用ID';
COMMENT ON COLUMN obj_file_info.TENANT_ID IS '租户号';

DROP TABLE IF EXISTS obj_file_revision;
CREATE TABLE obj_file_revision(
                                  ID VARCHAR(32) NOT NULL,
                                  FILE_INFO_ID VARCHAR(32),
                                  FILE_ID VARCHAR(32),
                                  OBJ_ID VARCHAR(32),
                                  OBJ_TABLE VARCHAR(64),
                                  CHANGE_ID VARCHAR(32),
                                  REVISION_NO VARCHAR(32),
                                  CHECK_IN_TIME TIMESTAMP,
                                  IS_ENABLED VARCHAR(1),
                                  IS_DELETED VARCHAR(1),
                                  CRT_USER VARCHAR(32),
                                  CRT_NAME VARCHAR(64),
                                  CRT_TIME TIMESTAMP,
                                  CRT_HOST VARCHAR(64),
                                  UPD_USER VARCHAR(32),
                                  UPD_NAME VARCHAR(64),
                                  UPD_TIME TIMESTAMP,
                                  UPD_HOST VARCHAR(64),
                                  APP_ID VARCHAR(64),
                                  product_id VARCHAR(64),
                                  TENANT_ID VARCHAR(64),
                                  PRIMARY KEY (ID)
);

COMMENT ON TABLE obj_file_revision IS '对象附件版次';
COMMENT ON COLUMN obj_file_revision.ID IS '主键';
COMMENT ON COLUMN obj_file_revision.FILE_INFO_ID IS '附件信息ID';
COMMENT ON COLUMN obj_file_revision.FILE_ID IS '附件ID';
COMMENT ON COLUMN obj_file_revision.OBJ_ID IS '对象ID';
COMMENT ON COLUMN obj_file_revision.OBJ_TABLE IS '对象表名';
COMMENT ON COLUMN obj_file_revision.CHANGE_ID IS '变更ID';
COMMENT ON COLUMN obj_file_revision.REVISION_NO IS '版次号';
COMMENT ON COLUMN obj_file_revision.CHECK_IN_TIME IS '发布时间(签入时间)';
COMMENT ON COLUMN obj_file_revision.IS_ENABLED IS '禁用启用';
COMMENT ON COLUMN obj_file_revision.IS_DELETED IS '是否删除';
COMMENT ON COLUMN obj_file_revision.CRT_USER IS '创建人';
COMMENT ON COLUMN obj_file_revision.CRT_NAME IS '创建人名';
COMMENT ON COLUMN obj_file_revision.CRT_TIME IS '创建时间(签出时间)';
COMMENT ON COLUMN obj_file_revision.CRT_HOST IS '创建地址';
COMMENT ON COLUMN obj_file_revision.UPD_USER IS '更新人';
COMMENT ON COLUMN obj_file_revision.UPD_NAME IS '更新人名';
COMMENT ON COLUMN obj_file_revision.UPD_TIME IS '更新时间';
COMMENT ON COLUMN obj_file_revision.UPD_HOST IS '更新地址';
COMMENT ON COLUMN obj_file_revision.APP_ID IS '应用ID';
COMMENT ON COLUMN obj_file_revision.TENANT_ID IS '租户号';

DROP TABLE IF EXISTS obj_file_revision_rel;
CREATE TABLE obj_file_revision_rel(
                                      ID VARCHAR(32) NOT NULL,
                                      OBJ_ID VARCHAR(32),
                                      OBJ_TABLE VARCHAR(64),
                                      CHANGE_ID VARCHAR(32),
                                      FILE_INFO_ID VARCHAR(32),
                                      FILE_REVISION_ID VARCHAR(32),
                                      IS_OBJ_MAIN_FILE VARCHAR(1),
                                      OPERATORS VARCHAR(100),
                                      IS_ENABLED VARCHAR(1),
                                      IS_DELETED VARCHAR(1),
                                      CRT_USER VARCHAR(32),
                                      CRT_NAME VARCHAR(64),
                                      CRT_TIME TIMESTAMP,
                                      CRT_HOST VARCHAR(64),
                                      UPD_USER VARCHAR(32),
                                      UPD_NAME VARCHAR(64),
                                      UPD_TIME TIMESTAMP,
                                      UPD_HOST VARCHAR(64),
                                      APP_ID VARCHAR(64),
                                      product_id VARCHAR(64),
                                      TENANT_ID VARCHAR(64),
                                      PRIMARY KEY (ID)
);

COMMENT ON TABLE obj_file_revision_rel IS '附件版次关系';
COMMENT ON COLUMN obj_file_revision_rel.ID IS '主键';
COMMENT ON COLUMN obj_file_revision_rel.OBJ_ID IS '对象ID';
COMMENT ON COLUMN obj_file_revision_rel.OBJ_TABLE IS '对象表名';
COMMENT ON COLUMN obj_file_revision_rel.CHANGE_ID IS '变更ID';
COMMENT ON COLUMN obj_file_revision_rel.FILE_INFO_ID IS '附件信息ID';
COMMENT ON COLUMN obj_file_revision_rel.FILE_REVISION_ID IS '生效文件版次id';
COMMENT ON COLUMN obj_file_revision_rel.IS_OBJ_MAIN_FILE IS '是否文件对象的主附件';
COMMENT ON COLUMN obj_file_revision_rel.OPERATORS IS '操作类型, 多个逗号隔开';
COMMENT ON COLUMN obj_file_revision_rel.IS_ENABLED IS '禁用启用';
COMMENT ON COLUMN obj_file_revision_rel.IS_DELETED IS '是否删除';
COMMENT ON COLUMN obj_file_revision_rel.CRT_USER IS '创建人';
COMMENT ON COLUMN obj_file_revision_rel.CRT_NAME IS '创建人名';
COMMENT ON COLUMN obj_file_revision_rel.CRT_TIME IS '创建时间';
COMMENT ON COLUMN obj_file_revision_rel.CRT_HOST IS '创建地址';
COMMENT ON COLUMN obj_file_revision_rel.UPD_USER IS '更新人';
COMMENT ON COLUMN obj_file_revision_rel.UPD_NAME IS '更新人名';
COMMENT ON COLUMN obj_file_revision_rel.UPD_TIME IS '更新时间';
COMMENT ON COLUMN obj_file_revision_rel.UPD_HOST IS '更新地址';
COMMENT ON COLUMN obj_file_revision_rel.APP_ID IS '应用ID';
COMMENT ON COLUMN obj_file_revision_rel.TENANT_ID IS '租户号';

DROP TABLE IF EXISTS obj_relation;
-- 对象关联关系2023年08月01日
CREATE TABLE obj_relation
(
    ID                    VARCHAR(32) NOT NULL PRIMARY KEY,
    OBJ_ID                VARCHAR(32),
    OBJ_CLASS_ID          VARCHAR(32),
    OBJ_TABLE             VARCHAR(64),
    RELATION_OBJ_ID       VARCHAR(32),
    RELATION_OBJ_CLASS_ID VARCHAR(32),
    RELATION_OBJ_TABLE    VARCHAR(64),
    SOURCE_ATTR_ID        VARCHAR(36),
    FORBID_DELETE         VARCHAR(1),
    IS_DELETED            VARCHAR(1),
    CRT_USER              VARCHAR(32),
    CRT_NAME              VARCHAR(50),
    CRT_TIME              TIMESTAMP,
    CRT_HOST              VARCHAR(50),
    UPD_USER              VARCHAR(32),
    UPD_NAME              VARCHAR(50),
    UPD_TIME              TIMESTAMP,
    UPD_HOST              VARCHAR(50),
    APP_ID                VARCHAR(64),
    TENANT_ID             VARCHAR(64),
    product_id            varchar(64)
);
COMMENT ON TABLE obj_relation IS '对象关联关系表';
COMMENT ON COLUMN obj_relation.OBJ_ID IS '当前对象ID';
COMMENT ON COLUMN obj_relation.OBJ_CLASS_ID IS '当前对象分类ID';
COMMENT ON COLUMN obj_relation.OBJ_TABLE IS '当前对象表名,来源 obj_class.api_name,如果有变更需要一起调整';
COMMENT ON COLUMN obj_relation.RELATION_OBJ_ID IS '关联对象ID';
COMMENT ON COLUMN obj_relation.RELATION_OBJ_CLASS_ID IS '关联对象分类ID';
COMMENT ON COLUMN obj_relation.RELATION_OBJ_TABLE IS '关联对象表名,来源 obj_class.api_name,如果有变更需要一起调整';
COMMENT ON COLUMN obj_relation.SOURCE_ATTR_ID IS '关联属性ID';
COMMENT ON COLUMN obj_relation.FORBID_DELETE IS '禁删标志, 默认 0';

-- -------------------------------------------------------------- BOM 2023年09月06日  --------------------------------------------------------------
DROP TABLE IF EXISTS obj_bom;
/* 1. 创建BOM表 */
CREATE TABLE obj_bom(
                        ID VARCHAR(32) NOT NULL,
                        PARENT_OBJ_ID VARCHAR(32),
                        OBJ_ID VARCHAR(32),
                        OBJ_NUMBER VARCHAR(255),
                        VERSION_IN VARCHAR(32),
                        VERSION_OUT VARCHAR(32),
                        PRIOR_BOM VARCHAR(32),
                        CRT_USER VARCHAR(32),
                        CRT_NAME VARCHAR(64),
                        CRT_TIME TIMESTAMP,
                        CRT_HOST VARCHAR(64),
                        UPD_USER VARCHAR(32),
                        UPD_NAME VARCHAR(64),
                        UPD_TIME TIMESTAMP,
                        UPD_HOST VARCHAR(64),
                        PRIMARY KEY (ID)
);

COMMENT ON TABLE obj_bom IS 'BOM表;';
COMMENT ON COLUMN obj_bom.ID IS '主键';
COMMENT ON COLUMN obj_bom.PARENT_OBJ_ID IS '产品实例ID';
COMMENT ON COLUMN obj_bom.OBJ_ID IS '子物件实例ID';
COMMENT ON COLUMN obj_bom.OBJ_NUMBER IS '子物件实例编号';
COMMENT ON COLUMN obj_bom.VERSION_IN IS '进入版本ID';
COMMENT ON COLUMN obj_bom.VERSION_OUT IS '退出版本ID';
COMMENT ON COLUMN obj_bom.PRIOR_BOM IS '前置bom';
COMMENT ON COLUMN obj_bom.CRT_USER IS '创建人';
COMMENT ON COLUMN obj_bom.CRT_NAME IS '创建人名';
COMMENT ON COLUMN obj_bom.CRT_TIME IS '创建时间';
COMMENT ON COLUMN obj_bom.CRT_HOST IS '创建地址';
COMMENT ON COLUMN obj_bom.UPD_USER IS '更新人';
COMMENT ON COLUMN obj_bom.UPD_NAME IS '更新人名';
COMMENT ON COLUMN obj_bom.UPD_TIME IS '更新时间';
COMMENT ON COLUMN obj_bom.UPD_HOST IS '更新地址';

CREATE INDEX IDX_OBJ_BOM_PARENT_OBJ_ID ON OBJ_BOM(PARENT_OBJ_ID, VERSION_IN);
CREATE INDEX IDX_OBJ_BOM_OBJ_ID ON OBJ_BOM(OBJ_ID);
CREATE INDEX IDX_OBJ_BOM_OBJ_NO ON OBJ_BOM(OBJ_NUMBER);
CREATE INDEX IDX_OBJ_BOM_VER_IN ON OBJ_BOM(VERSION_IN);
CREATE INDEX IDX_OBJ_BOM_VER_OUT ON OBJ_BOM(VERSION_OUT);

DROP TABLE IF EXISTS obj_bom_designator;
/* 2. 创建bom位号表*/
CREATE TABLE obj_bom_designator(
                                   ID VARCHAR(32) NOT NULL,
                                   BOM_ID VARCHAR(32),
                                   LABEL VARCHAR(255),
                                   SORT_NO INTEGER,
                                   IS_ENABLED VARCHAR(1),
                                   IS_DELETED VARCHAR(1),
                                   CRT_USER VARCHAR(32),
                                   CRT_NAME VARCHAR(64),
                                   CRT_TIME TIMESTAMP,
                                   CRT_HOST VARCHAR(64),
                                   PRIMARY KEY (ID)
);

COMMENT ON TABLE obj_bom_designator IS 'bom位号;';
COMMENT ON COLUMN obj_bom_designator.ID IS '主键';
COMMENT ON COLUMN obj_bom_designator.BOM_ID IS 'BOMID';
COMMENT ON COLUMN obj_bom_designator.LABEL IS '位号';
COMMENT ON COLUMN obj_bom_designator.SORT_NO IS '序号';
COMMENT ON COLUMN obj_bom_designator.IS_ENABLED IS '禁用启用';
COMMENT ON COLUMN obj_bom_designator.IS_DELETED IS '是否删除';
COMMENT ON COLUMN obj_bom_designator.CRT_USER IS '创建人';
COMMENT ON COLUMN obj_bom_designator.CRT_NAME IS '创建人名';
COMMENT ON COLUMN obj_bom_designator.CRT_TIME IS '创建时间';
COMMENT ON COLUMN obj_bom_designator.CRT_HOST IS '创建地址';

CREATE INDEX IDX_OBJ_BOM_DESIGNATOR_BOM_ID ON OBJ_BOM_DESIGNATOR(BOM_ID);

/* 3. 创建bom替代料表*/
DROP TABLE IF EXISTS obj_bom_substitute;
CREATE TABLE obj_bom_substitute(
                                   ID VARCHAR(32) NOT NULL,
                                   BOM_ID VARCHAR(32),
                                   OBJ_ID VARCHAR(32),
                                   OBJ_NUMBER VARCHAR(255),
                                   IS_ENABLED VARCHAR(1),
                                   IS_DELETED VARCHAR(1),
                                   CRT_USER VARCHAR(32),
                                   CRT_NAME VARCHAR(64),
                                   CRT_TIME TIMESTAMP,
                                   CRT_HOST VARCHAR(64),
                                   UPD_USER VARCHAR(32),
                                   UPD_NAME VARCHAR(64),
                                   UPD_TIME TIMESTAMP,
                                   UPD_HOST VARCHAR(64),
                                   PRIMARY KEY (ID)
);

COMMENT ON TABLE obj_bom_substitute IS 'BOM替代料;';
COMMENT ON COLUMN obj_bom_substitute.ID IS '主键';
COMMENT ON COLUMN obj_bom_substitute.BOM_ID IS 'BOMID';
COMMENT ON COLUMN obj_bom_substitute.OBJ_ID IS '替代料ID';
COMMENT ON COLUMN obj_bom_substitute.OBJ_NUMBER IS '替代料编号';
COMMENT ON COLUMN obj_bom_substitute.IS_ENABLED IS '禁用启用';
COMMENT ON COLUMN obj_bom_substitute.IS_DELETED IS '是否删除';
COMMENT ON COLUMN obj_bom_substitute.CRT_USER IS '创建人';
COMMENT ON COLUMN obj_bom_substitute.CRT_NAME IS '创建人名';
COMMENT ON COLUMN obj_bom_substitute.CRT_TIME IS '创建时间';
COMMENT ON COLUMN obj_bom_substitute.CRT_HOST IS '创建地址';
COMMENT ON COLUMN obj_bom_substitute.UPD_USER IS '更新人';
COMMENT ON COLUMN obj_bom_substitute.UPD_NAME IS '更新人名';
COMMENT ON COLUMN obj_bom_substitute.UPD_TIME IS '更新时间';
COMMENT ON COLUMN obj_bom_substitute.UPD_HOST IS '更新地址';

create index IDX_OBJ_BOM_SUBST_BOM_ID on OBJ_BOM_SUBSTITUTE(BOM_ID);
create index IDX_OBJ_BOM_SUBST_OBJ_ID on OBJ_BOM_SUBSTITUTE(OBJ_ID);
create index IDX_OBJ_BOM_SUBST_OBJ_NUMBER on OBJ_BOM_SUBSTITUTE(OBJ_NUMBER);

/* BOM快照表 */
DROP TABLE IF EXISTS OBJ_BOM_SNAPSHOT;
CREATE TABLE OBJ_BOM_SNAPSHOT(
                                 ID VARCHAR(32) NOT NULL,
                                 OBJ_ID VARCHAR(32),
                                 VERSION_ID VARCHAR(32),
                                 BOM_COUNT INTEGER,
                                 SUB_BOM_INFO TEXT,
                                 CRT_USER VARCHAR(32),
                                 CRT_NAME VARCHAR(64),
                                 CRT_TIME TIMESTAMP,
                                 CRT_HOST VARCHAR(64),
                                 PRIMARY KEY (ID)
);

COMMENT ON TABLE OBJ_BOM_SNAPSHOT IS 'BOM版本快照;';
COMMENT ON COLUMN OBJ_BOM_SNAPSHOT.ID IS '主键';
COMMENT ON COLUMN OBJ_BOM_SNAPSHOT.OBJ_ID IS '对象ID';
COMMENT ON COLUMN OBJ_BOM_SNAPSHOT.VERSION_ID IS '版本ID';
COMMENT ON COLUMN OBJ_BOM_SNAPSHOT.BOM_COUNT IS 'BOM数量';
COMMENT ON COLUMN OBJ_BOM_SNAPSHOT.SUB_BOM_INFO IS '子BOM信息json(版本、数量)';
COMMENT ON COLUMN OBJ_BOM_SNAPSHOT.CRT_USER IS '创建人';
COMMENT ON COLUMN OBJ_BOM_SNAPSHOT.CRT_NAME IS '创建人名';
COMMENT ON COLUMN OBJ_BOM_SNAPSHOT.CRT_TIME IS '创建时间';
COMMENT ON COLUMN OBJ_BOM_SNAPSHOT.CRT_HOST IS '创建地址';

/* 创建索引 */
CREATE INDEX idx_OBJ_BOM_SNAPSHOT_obj_id ON OBJ_BOM_SNAPSHOT(OBJ_ID);
CREATE INDEX idx_OBJ_BOM_SNAPSHOT_version_id ON OBJ_BOM_SNAPSHOT(VERSION_ID);
作者:叶端旺  创建时间:2023-11-07 17:10
最后编辑:叶端旺  更新时间:2024-12-11 10:09