初始化
This commit is contained in:
@@ -0,0 +1,64 @@
|
||||
-- @SAFE
|
||||
-- ============================================================
|
||||
-- MES2 文件管理工位升级补丁
|
||||
-- 日期:2026-07-12
|
||||
--
|
||||
-- 新增 document_manage 工位:
|
||||
-- - 管理员可以上传/删除文件、打开文件
|
||||
-- - 操作员只能查看和打开文件
|
||||
-- ============================================================
|
||||
|
||||
-- ============================================================
|
||||
-- 第1步:确保 document 表存在
|
||||
-- ============================================================
|
||||
CREATE TABLE IF NOT EXISTS `DGZXY_document` (
|
||||
`id` INT AUTO_INCREMENT PRIMARY KEY,
|
||||
`title` VARCHAR(200) NOT NULL COMMENT '文档标题',
|
||||
`doc_no` VARCHAR(100) DEFAULT NULL COMMENT '文档编号',
|
||||
`category` VARCHAR(100) DEFAULT '' COMMENT '分类',
|
||||
`version` VARCHAR(50) DEFAULT '1.0' COMMENT '版本号',
|
||||
`author` VARCHAR(100) DEFAULT '' COMMENT '作者',
|
||||
`department` VARCHAR(100) DEFAULT '' COMMENT '部门',
|
||||
`status` VARCHAR(50) DEFAULT 'active' COMMENT '状态(active/archived)',
|
||||
`keywords` VARCHAR(500) DEFAULT '' COMMENT '关键词',
|
||||
`description` TEXT COMMENT '描述',
|
||||
`file_name` VARCHAR(255) DEFAULT NULL COMMENT '原始文件名',
|
||||
`file_path` VARCHAR(500) DEFAULT NULL COMMENT '文件存储路径',
|
||||
`file_size` BIGINT DEFAULT 0 COMMENT '文件大小(字节)',
|
||||
`file_type` VARCHAR(20) DEFAULT NULL COMMENT '文件扩展名',
|
||||
`operator` VARCHAR(100) DEFAULT '' COMMENT '上传人',
|
||||
`created_at` DATETIME DEFAULT CURRENT_TIMESTAMP,
|
||||
`updated_at` DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
INDEX `idx_category` (`category`),
|
||||
INDEX `idx_status` (`status`),
|
||||
INDEX `idx_created_at` (`created_at`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='文档管理表';
|
||||
|
||||
-- ============================================================
|
||||
-- 第2步:在 station_definitions 注册 document_manage 工位
|
||||
-- ============================================================
|
||||
INSERT INTO `DGZXY_station_definitions` (`station_type`, `db_table`, `time_column`, `has_product_type`, `has_product_model`, `filter_enabled`, `show_today_count`, `show_total_count`, `extra_config`)
|
||||
VALUES ('document_manage', 'document', 'created_at', 0, 0, 0, 0, 0, '{"is_document_station":true}')
|
||||
ON DUPLICATE KEY UPDATE `db_table`=VALUES(`db_table`), `time_column`=VALUES(`time_column`), `extra_config`=VALUES(`extra_config`);
|
||||
|
||||
-- ============================================================
|
||||
-- 第3步:在 workstation 表注册工位(如果尚未存在)
|
||||
-- ============================================================
|
||||
-- 确保 workstation 表存在
|
||||
CREATE TABLE IF NOT EXISTS `DGZXY_workstation` (
|
||||
`id` INT AUTO_INCREMENT PRIMARY KEY,
|
||||
`station_name` VARCHAR(100) NOT NULL COMMENT '工位名称',
|
||||
`station_code` VARCHAR(50) NOT NULL COMMENT '工位编码',
|
||||
`station_type` VARCHAR(50) NOT NULL UNIQUE COMMENT '工位类型标识',
|
||||
`sort_order` INT DEFAULT 0 COMMENT '排序',
|
||||
`status` TINYINT(1) DEFAULT 1 COMMENT '状态(1启用/0禁用)',
|
||||
`fields_config` TEXT COMMENT '字段配置(JSON)',
|
||||
`created_at` DATETIME DEFAULT CURRENT_TIMESTAMP,
|
||||
`updated_at` DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
INDEX `idx_station_type` (`station_type`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='工位表';
|
||||
|
||||
-- 插入 document_manage 工位
|
||||
INSERT INTO `DGZXY_workstation` (`station_name`, `station_code`, `station_type`, `sort_order`, `status`, `fields_config`)
|
||||
VALUES ('文件管理', 'DOC', 'document_manage', 8, 1, '[]')
|
||||
ON DUPLICATE KEY UPDATE `station_name`=VALUES(`station_name`), `station_code`=VALUES(`station_code`), `sort_order`=VALUES(`sort_order`);
|
||||
@@ -0,0 +1,46 @@
|
||||
-- @SAFE
|
||||
-- ============================================================
|
||||
-- 昂盛达上位机 MES 接口(v1.5)数据表结构补齐迁移
|
||||
-- 适用:mes2 数据库「在线升级 / 数据库升级」功能(Admin -> 数据库升级)
|
||||
--
|
||||
-- 重要说明(务必阅读):
|
||||
-- 1. 首行 '-- @SAFE' 使本文件以「容错模式」执行:
|
||||
-- 每条语句独立执行,列已存在时 ADD COLUMN 报错会被自动跳过,
|
||||
-- 因此本脚本可重复运行(幂等),不会因 "Duplicate column" 而整体失败。
|
||||
-- 2. 不要使用 DELIMITER / 存储过程:在线升级器按 ';' 机械切分 SQL,
|
||||
-- 不识别 DELIMITER,存储过程会被拆坏导致语法错误。
|
||||
-- 3. 不要写 USE <库名>:在线升级已连接到正确的业务库,写死库名反而会因
|
||||
-- "Unknown database" 整文件失败。
|
||||
--
|
||||
-- 字段映射(接口字段名 -> 数据库实际列):
|
||||
-- status -> test_result
|
||||
-- device -> device_code
|
||||
-- test_time -> test_date
|
||||
-- project_name -> product_model
|
||||
-- 其余字段(tester/mo/site/station/work_order/group_name/running_time)
|
||||
-- 为接口新增列,直接补齐。
|
||||
-- ============================================================
|
||||
|
||||
-- ===== 1. DGZXY_asd_test_record 补齐接口字段 =====
|
||||
ALTER TABLE `DGZXY_asd_test_record` ADD COLUMN `tester` varchar(50) NOT NULL DEFAULT '' COMMENT '测试员';
|
||||
ALTER TABLE `DGZXY_asd_test_record` ADD COLUMN `mo` varchar(50) NOT NULL DEFAULT '' COMMENT '制令单';
|
||||
ALTER TABLE `DGZXY_asd_test_record` ADD COLUMN `site` varchar(100) NOT NULL DEFAULT '' COMMENT '工位';
|
||||
ALTER TABLE `DGZXY_asd_test_record` ADD COLUMN `station` varchar(100) NOT NULL DEFAULT '' COMMENT '站点';
|
||||
ALTER TABLE `DGZXY_asd_test_record` ADD COLUMN `work_order` varchar(50) NOT NULL DEFAULT '' COMMENT '工单';
|
||||
ALTER TABLE `DGZXY_asd_test_record` ADD COLUMN `group_name` varchar(100) NOT NULL DEFAULT '' COMMENT '组别';
|
||||
ALTER TABLE `DGZXY_asd_test_record` ADD COLUMN `running_time` varchar(50) NOT NULL DEFAULT '' COMMENT '运行时间';
|
||||
|
||||
-- ===== 2. DGZXY_asd_device 补齐接口字段 =====
|
||||
ALTER TABLE `DGZXY_asd_device` ADD COLUMN `device_code` varchar(100) NOT NULL DEFAULT '' COMMENT '设备编码/序列号';
|
||||
ALTER TABLE `DGZXY_asd_device` ADD COLUMN `group_name` varchar(100) NOT NULL DEFAULT '' COMMENT '组别';
|
||||
ALTER TABLE `DGZXY_asd_device` ADD COLUMN `line_name` varchar(100) NOT NULL DEFAULT '' COMMENT '产线';
|
||||
ALTER TABLE `DGZXY_asd_device` ADD COLUMN `station_code` varchar(100) NOT NULL DEFAULT '' COMMENT '工位编码';
|
||||
ALTER TABLE `DGZXY_asd_device` ADD COLUMN `device_type` varchar(100) NOT NULL DEFAULT '' COMMENT '设备型号';
|
||||
ALTER TABLE `DGZXY_asd_device` ADD COLUMN `remark` varchar(255) NOT NULL DEFAULT '' COMMENT '备注';
|
||||
|
||||
-- ===== 3. 修正 token 列长度(避免 64 位 token 被 char(32) 截断导致校验失败) =====
|
||||
-- MODIFY 幂等:重复执行同一定义不会报错
|
||||
ALTER TABLE `DGZXY_asd_api_token` MODIFY `token` varchar(128) NOT NULL COMMENT 'Token值';
|
||||
|
||||
-- 完成标记(在线升级器会忽略结果集,仅作可读提示)
|
||||
SELECT 'ASD 接口迁移完成(SAFE 模式,已存在的列已自动跳过)' AS result;
|
||||
Reference in New Issue
Block a user