79 lines
3.2 KiB
SQL
79 lines
3.2 KiB
SQL
-- 创建检验项目配置表
|
|
CREATE TABLE IF NOT EXISTS inspection_config (
|
|
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
position INTEGER NOT NULL, -- 位置序号 (1-6)
|
|
name VARCHAR(50) NOT NULL, -- 检验项目名称
|
|
display_name VARCHAR(50) NOT NULL, -- 显示名称
|
|
enabled BOOLEAN DEFAULT TRUE, -- 是否启用
|
|
required BOOLEAN DEFAULT FALSE, -- 是否必填
|
|
data_type VARCHAR(20) DEFAULT 'text', -- 数据类型: text, number, enum
|
|
min_value FLOAT, -- 最小值 (用于number类型)
|
|
max_value FLOAT, -- 最大值 (用于number类型)
|
|
enum_values TEXT, -- 枚举值 (用于enum类型, JSON格式存储)
|
|
unit VARCHAR(20), -- 单位
|
|
sort_order INTEGER NOT NULL, -- 排序顺序
|
|
create_time TIMESTAMP NOT NULL,
|
|
create_by VARCHAR(50) NOT NULL,
|
|
update_time TIMESTAMP,
|
|
update_by VARCHAR(50),
|
|
is_deleted BOOLEAN DEFAULT FALSE,
|
|
UNIQUE(position, is_deleted) -- 确保同一位置只有一个激活的配置
|
|
);
|
|
|
|
-- 创建检验数据记录表
|
|
CREATE TABLE IF NOT EXISTS inspection_data (
|
|
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
order_id VARCHAR(50) NOT NULL, -- 关联的工程号
|
|
position INTEGER NOT NULL, -- 位置序号
|
|
config_id INTEGER NOT NULL, -- 关联的配置ID
|
|
value TEXT NOT NULL, -- 检验值 (所有类型都用TEXT存储)
|
|
status VARCHAR(20) DEFAULT 'pass', -- 状态: pass, fail, warning
|
|
remark TEXT, -- 备注
|
|
create_time TIMESTAMP NOT NULL,
|
|
create_by VARCHAR(50) NOT NULL,
|
|
update_time TIMESTAMP,
|
|
update_by VARCHAR(50),
|
|
is_deleted BOOLEAN DEFAULT FALSE,
|
|
FOREIGN KEY(config_id) REFERENCES inspection_config(id)
|
|
);
|
|
|
|
-- 创建默认检验项目数据
|
|
INSERT OR IGNORE INTO inspection_config (
|
|
position, name, display_name, enabled, required, data_type,
|
|
min_value, max_value, unit, sort_order, create_time, create_by
|
|
) VALUES
|
|
(1, 'appearance', '外观', TRUE, TRUE, 'enum', NULL, NULL, '', 1, CURRENT_TIMESTAMP, 'system'),
|
|
(2, 'diameter', '线径', TRUE, TRUE, 'number', 0, 100, 'mm', 2, CURRENT_TIMESTAMP, 'system'),
|
|
(3, 'resistance', '电阻', TRUE, FALSE, 'number', 0, 1000, 'Ω', 3, CURRENT_TIMESTAMP, 'system'),
|
|
(4, 'hardness', '硬度', FALSE, FALSE, 'number', 0, 100, 'HRC', 4, CURRENT_TIMESTAMP, 'system'),
|
|
(5, 'strength', '强度', FALSE, FALSE, 'number', 0, 1000, 'MPa', 5, CURRENT_TIMESTAMP, 'system'),
|
|
(6, 'custom', '自定义', FALSE, FALSE, 'text', NULL, NULL, '', 6, CURRENT_TIMESTAMP, 'system');
|
|
|
|
-- 为外观检验项设置枚举值
|
|
UPDATE inspection_config
|
|
SET enum_values = '["合格", "不合格", "需要重检"]'
|
|
WHERE name = 'appearance';
|
|
|
|
|
|
--包装记录表
|
|
drop table if exists inspection_pack_data;
|
|
create table if not exists inspection_pack_data
|
|
(
|
|
--订单号
|
|
order_id VARCHAR(50),
|
|
--材质
|
|
material VARCHAR(50),
|
|
--规格
|
|
spec VARCHAR(50),
|
|
--包装号
|
|
tray_id VARCHAR(50),
|
|
--轴包装号
|
|
axis_package_id VARCHAR(50),
|
|
create_time TIMESTAMP NOT NULL,
|
|
create_by VARCHAR(50) NOT NULL,
|
|
update_time TIMESTAMP,
|
|
update_by VARCHAR(50),
|
|
is_deleted BOOLEAN
|
|
)
|
|
|