From 52cc1110989d04acacd3925a4d58145daeb8c1dd Mon Sep 17 00:00:00 2001 From: zhuxu Date: Wed, 18 Dec 2024 15:59:09 +0800 Subject: [PATCH] update some fields --- create.sql | 90 ++++++++++++++++++++++++++++-------------------------- 1 file changed, 46 insertions(+), 44 deletions(-) diff --git a/create.sql b/create.sql index 9284858..603d63b 100644 --- a/create.sql +++ b/create.sql @@ -8,7 +8,7 @@ -- DROP TABLE IF EXISTS operator_right; CREATE TABLE operator_right ( id SERIAL PRIMARY KEY, - name VARCHAR(50) NOT NULL DEFAULT '', + name VARCHAR(64) NOT NULL DEFAULT '', level SMALLINT NOT NULL DEFAULT -1, -- 角色级别:0 超管;1 网;2 区;3 站;4 元;5 点; rights JSONB NOT NULL DEFAULT '[]', -- operator_right.rights -- @@ -28,7 +28,7 @@ COMMENT ON COLUMN operator_right.operate_at IS '操作时间'; -- DROP TABLE IF EXISTS operation_log; CREATE TABLE operation_log ( id BIGSERIAL PRIMARY KEY, - type VARCHAR(50) NOT NULL DEFAULT '', -- 增/删/改:1 增;2 删;3 改; + type VARCHAR(64) NOT NULL DEFAULT '', -- 增/删/改:1 增;2 删;3 改; detail TEXT NOT NULL DEFAULT '', -- 在网/区/站进行增/删/改了什么 @@ -49,14 +49,14 @@ COMMENT ON COLUMN operation_log.operate_at IS '操作时间'; CREATE TABLE event_condition ( id SERIAL PRIMARY KEY, -- how to discribe the condition? json? (condition_windows) - com_type VARCHAR(50) NOT NULL DEFAULT '', -- 元件类型(bus) - phy_type VARCHAR(50) NOT NULL DEFAULT '', -- 物理量类型(v) + com_type VARCHAR(64) NOT NULL DEFAULT '', -- 元件类型(bus) + phy_type VARCHAR(64) NOT NULL DEFAULT '', -- 物理量类型(v) condition JSONB NOT NULL DEFAULT '{}', -- inner fields: threshold_unit,threshold,duration_unit,duration -- 信号量事件的分类如何表达(warn/alarm?) - event_type VARCHAR(50) NOT NULL DEFAULT '', -- 如何分类型(模拟量lower_warn/lower_alarm/upper_warn/upper_alarm) - event_name VARCHAR(100) NOT NULL DEFAULT '', + event_type VARCHAR(64) NOT NULL DEFAULT '', -- 如何分类型(模拟量lower_warn/lower_alarm/upper_warn/upper_alarm) + event_name VARCHAR(64) NOT NULL DEFAULT '', event_level SMALLINT NOT NULL DEFAULT -1, -- 0/1/2... operator_id INTEGER NOT NULL DEFAULT -1, @@ -79,8 +79,8 @@ COMMENT ON COLUMN event_condition.operate_at IS '操作时间'; -- DROP TABLE IF EXISTS events; CREATE TABLE events ( id BIGSERIAL PRIMARY KEY, - type VARCHAR(50) NOT NULL DEFAULT '', -- 如何分类型 - name VARCHAR(100) NOT NULL DEFAULT '', + type VARCHAR(64) NOT NULL DEFAULT '', -- 如何分类型 + name VARCHAR(64) NOT NULL DEFAULT '', level SMALLINT NOT NULL DEFAULT -1, -- 0/1/2... 级别需要定义 refer_data JSONB NOT NULL DEFAULT '{}', -- events.refer_data @@ -102,8 +102,8 @@ COMMENT ON COLUMN events.operate_at IS '操作时间'; -- DROP TABLE IF EXISTS cases; CREATE TABLE cases ( id BIGSERIAL PRIMARY KEY, - type VARCHAR(50) NOT NULL DEFAULT '', -- 如何分类型 - name VARCHAR(100) NOT NULL DEFAULT '', + type VARCHAR(64) NOT NULL DEFAULT '', -- 如何分类型 + name VARCHAR(64) NOT NULL DEFAULT '', level SMALLINT NOT NULL DEFAULT -1, -- 0/1/2... 级别需要定义 refer_data JSONB NOT NULL DEFAULT '{}', -- cases.refer_data @@ -124,9 +124,9 @@ COMMENT ON COLUMN cases.operate_at IS '操作时间'; -- DROP TABLE IF EXISTS grid; CREATE TABLE grid ( id SERIAL PRIMARY KEY, - tag VARCHAR(50) NOT NULL DEFAULT '', -- 是不是最好在tag中保持一个前缀(对象类型)? - name VARCHAR(50) NOT NULL DEFAULT '', - comment VARCHAR(500) NOT NULL DEFAULT '', + tag VARCHAR(64) NOT NULL DEFAULT '', -- 是不是最好在tag中保持一个前缀(对象类型)? + name VARCHAR(64) NOT NULL DEFAULT '', + discription VARCHAR(512) NOT NULL DEFAULT '', operator_id INTEGER NOT NULL DEFAULT -1, operate_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, @@ -137,7 +137,7 @@ COMMENT ON TABLE grid IS '电网'; COMMENT ON COLUMN grid.id IS 'id'; COMMENT ON COLUMN grid.tag IS '标签'; COMMENT ON COLUMN grid.name IS '名称'; -COMMENT ON COLUMN grid.comment IS '注解'; +COMMENT ON COLUMN grid.discription IS '描述'; COMMENT ON COLUMN grid.operator_id IS '操作人id'; COMMENT ON COLUMN grid.operate_at IS '操作时间'; @@ -145,9 +145,9 @@ COMMENT ON COLUMN grid.operate_at IS '操作时间'; -- DROP TABLE IF EXISTS zone; CREATE TABLE zone ( id SERIAL PRIMARY KEY, - tag VARCHAR(50) NOT NULL DEFAULT '', - name VARCHAR(50) NOT NULL DEFAULT '', - comment VARCHAR(500) NOT NULL DEFAULT '', + tag VARCHAR(64) NOT NULL DEFAULT '', + name VARCHAR(64) NOT NULL DEFAULT '', + discription VARCHAR(512) NOT NULL DEFAULT '', grid_id INTEGER NOT NULL DEFAULT -1, @@ -161,7 +161,7 @@ COMMENT ON TABLE zone IS '区域'; COMMENT ON COLUMN zone.id IS 'id'; COMMENT ON COLUMN zone.tag IS '标签'; COMMENT ON COLUMN zone.name IS '名字'; -COMMENT ON COLUMN zone.comment IS '注解'; +COMMENT ON COLUMN zone.discription IS '描述'; COMMENT ON COLUMN zone.grid_id IS '电网id'; COMMENT ON COLUMN zone.operator_id IS '操作人id'; COMMENT ON COLUMN zone.operate_at IS '操作时间'; @@ -170,9 +170,9 @@ COMMENT ON COLUMN zone.operate_at IS '操作时间'; -- DROP TABLE IF EXISTS station; CREATE TABLE station ( id SERIAL PRIMARY KEY, - tag VARCHAR(50) NOT NULL DEFAULT '', - name VARCHAR(50) NOT NULL DEFAULT '', - comment VARCHAR(500) NOT NULL DEFAULT '', + tag VARCHAR(64) NOT NULL DEFAULT '', + name VARCHAR(64) NOT NULL DEFAULT '', + discription VARCHAR(512) NOT NULL DEFAULT '', is_local BOOLEAN NOT NULL DEFAULT FALSE, grid_id INTEGER NOT NULL DEFAULT -1, @@ -189,7 +189,7 @@ COMMENT ON TABLE station IS '场站'; COMMENT ON COLUMN station.id IS 'id'; COMMENT ON COLUMN station.tag IS '标签'; COMMENT ON COLUMN station.name IS '名称'; -COMMENT ON COLUMN station.comment IS '注解'; +COMMENT ON COLUMN station.discription IS '描述'; COMMENT ON COLUMN station.grid_id IS '电网id'; COMMENT ON COLUMN station.zone_id IS '区域id'; COMMENT ON COLUMN station.operator_id IS '操作人id'; @@ -200,9 +200,10 @@ COMMENT ON COLUMN station.operate_at IS '操作时间'; -- DROP TABLE IF EXISTS page; CREATE TABLE page ( id SERIAL PRIMARY KEY, - tag VARCHAR(50) NOT NULL DEFAULT '', -- 如果元件与端子是站内唯一,此列意义不大 - name VARCHAR(50) NOT NULL DEFAULT '', - comment VARCHAR(500) NOT NULL DEFAULT '', + tag VARCHAR(64) NOT NULL DEFAULT '', + label JSONB NOT NULL DEFAULT '{}', -- 用作标识用的标签,可多组 + name VARCHAR(64) NOT NULL DEFAULT '', + discription VARCHAR(512) NOT NULL DEFAULT '', context JSONB NOT NULL DEFAULT '{}', -- 数据格式暂定jsonb,需要存放什么样的UI侧的数据 status SMALLINT NOT NULL DEFAULT -1, @@ -217,7 +218,7 @@ CREATE TABLE page ( COMMENT ON TABLE page IS '组态图'; COMMENT ON COLUMN page.id IS 'id'; COMMENT ON COLUMN page.name IS '组态名'; -COMMENT ON COLUMN page.comment IS '注解'; +COMMENT ON COLUMN page.discription IS '描述'; COMMENT ON COLUMN page.station_id IS '站id'; COMMENT ON COLUMN page.context IS '组态数据'; COMMENT ON COLUMN page.status IS '组态状态'; @@ -230,10 +231,11 @@ COMMENT ON COLUMN page.operate_at IS '操作时间'; CREATE TABLE component ( id SERIAL PRIMARY KEY, global_uuid UUID NOT NULL DEFAULT gen_random_uuid(), - visible_id VARCHAR(50) NOT NULL DEFAULT '', - comment VARCHAR(500) NOT NULL DEFAULT '', - name VARCHAR(50) NOT NULL DEFAULT '', -- 可见字符即可 - type VARCHAR(50) NOT NULL DEFAULT '', + visible_id VARCHAR(64) NOT NULL DEFAULT '', + label JSONB NOT NULL DEFAULT '{}', -- 用作标识用的标签,可多组 + discription VARCHAR(512) NOT NULL DEFAULT '', + name VARCHAR(64) NOT NULL DEFAULT '', -- 可见字符即可 + type VARCHAR(64) NOT NULL DEFAULT '', in_service BOOLEAN NOT NULL DEFAULT FALSE, state SMALLINT NOT NULL DEFAULT -1, -- 具体涉及哪些场景,数据类型是否用数值,用于拓扑分析 connected_bus INTEGER NOT NULL DEFAULT -1, @@ -301,20 +303,20 @@ COMMENT ON COLUMN topologic.operate_at IS '操作时间'; -- DROP TABLE IF EXISTS terminal_mapping; CREATE TABLE terminal_mapping ( id SERIAL PRIMARY KEY, - --terminal_station VARCHAR(50) NOT NULL DEFAULT '', -- tag,是否考虑上面station与terminal_station不同 - component VARCHAR(50) NOT NULL DEFAULT '', -- tag,根据excel关联事件,是否关联component,考虑UI侧会对端子数据附加在component上 - tag VARCHAR(50) NOT NULL DEFAULT '', -- 至少保证站内唯一,是否必须,端子唯一标识的命名动作位于哪个流程 + terminal_station VARCHAR(64) NOT NULL DEFAULT '', -- tag,是否考虑上面station与terminal_station不同 + component VARCHAR(64) NOT NULL DEFAULT '', -- tag,根据excel关联事件,是否关联component,考虑UI侧会对端子数据附加在component上 + tag VARCHAR(64) NOT NULL DEFAULT '', -- 至少保证站内唯一,是否必须,端子唯一标识的命名动作位于哪个流程 --terminal_type VARCHAR(50) NOT NULL DEFAULT '', -- 根据excel关联事件(bus) - name VARCHAR(100) NOT NULL DEFAULT '', -- name和tag是否类同,必要性不强 - unit VARCHAR(10) NOT NULL DEFAULT '', -- type与unit是不是一致的 + name VARCHAR(64) NOT NULL DEFAULT '', -- name和tag是否类同,必要性不强 + unit VARCHAR(16) NOT NULL DEFAULT '', -- type与unit是不是一致的 -- other fields? -- terminal_value DECIMAL(10,2) NOT NULL DEFAULT 0, -- 隐性 - measure VARCHAR(50) NOT NULL DEFAULT '', -- tag(来自报文) - station VARCHAR(50) NOT NULL DEFAULT '', -- tag(来自报文) - device VARCHAR(50) NOT NULL DEFAULT '', -- tag(来自报文,设备和数据共用) - field VARCHAR(50) NOT NULL DEFAULT '', -- tag(来自报文) + measure VARCHAR(64) NOT NULL DEFAULT '', -- tag(来自报文) + station VARCHAR(64) NOT NULL DEFAULT '', -- tag(来自报文) + device VARCHAR(64) NOT NULL DEFAULT '', -- tag(来自报文,设备和数据共用) + field VARCHAR(64) NOT NULL DEFAULT '', -- tag(来自报文) operator_id INTEGER NOT NULL DEFAULT -1, operate_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, @@ -339,9 +341,9 @@ COMMENT ON COLUMN terminal_mapping.operate_at IS '操作时间'; -- DROP TABLE IF EXISTS secondary; CREATE TABLE secondary_lib ( id SERIAL PRIMARY KEY, - type VARCHAR(50) NOT NULL DEFAULT '', -- 如果需要主次类型,可以下划线分割或者增加列 - manufacturer VARCHAR(50) NOT NULL DEFAULT '', - model VARCHAR(50) NOT NULL DEFAULT '', -- 型号 + type VARCHAR(64) NOT NULL DEFAULT '', -- 如果需要主次类型,可以下划线分割或者增加列 + manufacturer VARCHAR(64) NOT NULL DEFAULT '', + model VARCHAR(64) NOT NULL DEFAULT '', -- 型号 args JSONB NOT NULL DEFAULT '{}', -- 二次设备的参数对应于端子测点,是否引出到另一张表 -- operator_id INTEGER NOT NULL DEFAULT -1, @@ -361,8 +363,8 @@ COMMENT ON COLUMN secondary_lib.operate_at IS '操作时间'; -- DROP TABLE IF EXISTS primary_secondary; CREATE TABLE primary_secondary ( id SERIAL PRIMARY KEY, - primary_type VARCHAR(50) NOT NULL DEFAULT '', -- 比如bus/mtr - secondary_type VARCHAR(50) NOT NULL DEFAULT '', -- 用于寻找二次设备库中对应类型设备 + primary_type VARCHAR(64) NOT NULL DEFAULT '', -- 比如bus/mtr + secondary_type VARCHAR(64) NOT NULL DEFAULT '', -- 用于寻找二次设备库中对应类型设备 -- operator_id INTEGER NOT NULL DEFAULT -1, operate_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,