105 lines
5.5 KiB
SQL
105 lines
5.5 KiB
SQL
-- ============================================================
|
|
-- 环境检测:主数据 + 登记记录 + 菜单 + 种子数据
|
|
-- 与 docs/superpowers/specs/2026-06-11-env-detect-design.md 对齐
|
|
-- ============================================================
|
|
|
|
-- 1. 环境检测项(主数据)
|
|
DROP TABLE IF EXISTS `biz_env_detect_record`;
|
|
DROP TABLE IF EXISTS `biz_env_detect_item`;
|
|
|
|
CREATE TABLE `biz_env_detect_item` (
|
|
`id` varchar(64) NOT NULL COMMENT '主键ID',
|
|
`item_code` varchar(64) NOT NULL COMMENT '项目编码',
|
|
`item_name` varchar(200) NOT NULL COMMENT '项目名称',
|
|
`status` char(1) NOT NULL DEFAULT '1' COMMENT '1启用 0停用',
|
|
`tenant_no` varchar(64) NOT NULL DEFAULT 'zkxw' COMMENT '租户编号',
|
|
`order_num` int(11) DEFAULT NULL COMMENT '排序号',
|
|
`remark` varchar(512) DEFAULT NULL COMMENT '备注',
|
|
`create_by` varchar(64) DEFAULT NULL COMMENT '创建人id',
|
|
`create_dept_id` varchar(64) NOT NULL DEFAULT '' COMMENT '创建人部门ID',
|
|
`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
|
`update_by` varchar(64) DEFAULT NULL COMMENT '更新人id',
|
|
`update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
|
`del_flag` tinyint(4) NOT NULL DEFAULT '0' COMMENT '删除标记:0-正常 1-已删除',
|
|
PRIMARY KEY (`id`),
|
|
UNIQUE KEY `uk_env_item_tenant_code` (`tenant_no`, `item_code`, `del_flag`),
|
|
KEY `idx_env_item_tenant_status` (`tenant_no`, `status`, `del_flag`)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='环境检测项';
|
|
|
|
-- 2. 环境检测登记
|
|
CREATE TABLE `biz_env_detect_record` (
|
|
`id` varchar(64) NOT NULL COMMENT '主键ID',
|
|
`record_no` varchar(32) NOT NULL COMMENT '登记编号',
|
|
`detect_time` datetime NOT NULL COMMENT '检测时间',
|
|
`inspector_ids` varchar(500) NOT NULL COMMENT '检测人用户ID,逗号分隔',
|
|
`inspector_names` varchar(500) NOT NULL COMMENT '检测人姓名快照,逗号分隔',
|
|
`env_detect_item_id` varchar(64) NOT NULL COMMENT '检测项目ID',
|
|
`item_code` varchar(64) NOT NULL COMMENT '项目编码快照',
|
|
`item_name` varchar(200) NOT NULL COMMENT '项目名称快照',
|
|
`result_desc` varchar(2000) NOT NULL COMMENT '检测结果描述',
|
|
`attachment_urls` varchar(2000) DEFAULT NULL COMMENT '检测附件URL,逗号分隔',
|
|
`tenant_no` varchar(64) NOT NULL DEFAULT 'zkxw' COMMENT '租户编号',
|
|
`order_num` int(11) DEFAULT NULL COMMENT '排序号',
|
|
`remark` varchar(512) DEFAULT NULL COMMENT '备注',
|
|
`create_by` varchar(64) DEFAULT NULL COMMENT '创建人id',
|
|
`create_dept_id` varchar(64) NOT NULL DEFAULT '' COMMENT '创建人部门ID',
|
|
`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
|
`update_by` varchar(64) DEFAULT NULL COMMENT '更新人id',
|
|
`update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
|
`del_flag` tinyint(4) NOT NULL DEFAULT '0' COMMENT '删除标记:0-正常 1-已删除',
|
|
PRIMARY KEY (`id`),
|
|
UNIQUE KEY `uk_env_rec_tenant_no` (`tenant_no`, `record_no`, `del_flag`),
|
|
KEY `idx_env_rec_tenant_time` (`tenant_no`, `detect_time`, `del_flag`),
|
|
KEY `idx_env_rec_tenant_item` (`tenant_no`, `env_detect_item_id`, `del_flag`)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='环境检测登记';
|
|
|
|
-- 3. 种子:6 项初始检测项目(租户 zkxw)
|
|
INSERT INTO `biz_env_detect_item` (
|
|
`id`, `item_code`, `item_name`, `status`, `tenant_no`, `order_num`, `remark`,
|
|
`create_by`, `create_dept_id`, `create_time`, `update_by`, `update_time`, `del_flag`
|
|
) VALUES
|
|
('ENVITEM00000000000000000000000001', 'BMWS', '表面微生物检测', '1', 'zkxw', 1, NULL, NULL, '', NOW(), NULL, NOW(), 0),
|
|
('ENVITEM00000000000000000000000002', 'SYFS', '实验室风速检测', '1', 'zkxw', 2, NULL, NULL, '', NOW(), NULL, NOW(), 0),
|
|
('ENVITEM00000000000000000000000003', 'ZWQD', '紫外灯强度检测', '1', 'zkxw', 3, NULL, NULL, '', NOW(), NULL, NOW(), 0),
|
|
('ENVITEM00000000000000000000000004', 'CJJ', '沉降菌检测', '1', 'zkxw', 4, NULL, NULL, '', NOW(), NULL, NOW(), 0),
|
|
('ENVITEM00000000000000000000000005', 'JJZY', '洁净区噪音检测', '1', 'zkxw', 5, NULL, NULL, '', NOW(), NULL, NOW(), 0),
|
|
('ENVITEM00000000000000000000000006', 'XFZL', '洁净区悬浮粒子检测', '1', 'zkxw', 6, NULL, NULL, '', NOW(), NULL, NOW(), 0)
|
|
ON DUPLICATE KEY UPDATE
|
|
`item_name` = VALUES(`item_name`),
|
|
`status` = VALUES(`status`),
|
|
`order_num` = VALUES(`order_num`),
|
|
`update_time` = NOW(),
|
|
`del_flag` = 0;
|
|
|
|
-- 4. 菜单
|
|
INSERT INTO `sys_menu` (
|
|
`id`, `menu_name`, `parent_id`, `menu_type`, `path`, `component`, `perms`,
|
|
`is_frame`, `visible`, `status`, `tenant_no`, `order_num`, `remark`,
|
|
`create_by`, `create_dept_id`, `create_time`, `update_by`, `update_time`, `del_flag`
|
|
) VALUES
|
|
(
|
|
'71000000000000000000000000000001', '环境检测项维护',
|
|
'QCB00000000000000000000000000001', 'C', 'env-detect-item',
|
|
'/quality-inspection/env-detect-item/index', 'biz:envDetectItem:list',
|
|
1, '1', '1', 'zkxw', 7, NULL,
|
|
NULL, '', NOW(), NULL, NOW(), 0
|
|
),
|
|
(
|
|
'71000000000000000000000000000002', '环境检测管理',
|
|
'QCM00000000000000000000000000001', 'C', 'env-detect-record',
|
|
'/quality-inspection/env-detect-record/index', 'biz:envDetectRecord:list',
|
|
1, '1', '1', 'zkxw', 3, NULL,
|
|
NULL, '', NOW(), NULL, NOW(), 0
|
|
)
|
|
ON DUPLICATE KEY UPDATE
|
|
`menu_name` = VALUES(`menu_name`),
|
|
`parent_id` = VALUES(`parent_id`),
|
|
`path` = VALUES(`path`),
|
|
`component` = VALUES(`component`),
|
|
`perms` = VALUES(`perms`),
|
|
`visible` = '1',
|
|
`status` = '1',
|
|
`order_num` = VALUES(`order_num`),
|
|
`update_time` = NOW(),
|
|
`del_flag` = 0;
|