38 lines
2.6 KiB
SQL
38 lines
2.6 KiB
SQL
-- ============================================================
|
|
-- 库位占用记录功能迁移
|
|
-- 日期: 2026-05-22
|
|
-- ============================================================
|
|
|
|
-- 1. 新增:库位占用记录表
|
|
CREATE TABLE biz_storage_slot_occupancy (
|
|
id VARCHAR(64) NOT NULL COMMENT '主键ID',
|
|
slot_id VARCHAR(64) NOT NULL COMMENT '储物格ID (FK → biz_storage_facility_slot)',
|
|
item_type VARCHAR(32) NOT NULL COMMENT '物品类型: cell_product=细胞产品, other=其他',
|
|
item_id VARCHAR(64) NOT NULL COMMENT '物品ID (指向对应业务表主键)',
|
|
item_code VARCHAR(64) NULL COMMENT '物品编码 (冗余展示)',
|
|
item_name VARCHAR(200) NULL COMMENT '物品名称 (冗余展示)',
|
|
item_source VARCHAR(32) NULL COMMENT '来源: production=生产入库, manual=手动入库, transfer=转移',
|
|
stored_at DATETIME NULL COMMENT '入库时间',
|
|
removed_at DATETIME NULL COMMENT '出库时间 (NULL=当前在库)',
|
|
occupancy_status VARCHAR(16) NOT NULL DEFAULT 'stored' COMMENT 'stored=在库, removed=已出库',
|
|
tenant_no VARCHAR(64) NULL COMMENT '租户编号',
|
|
order_num INT DEFAULT 0 COMMENT '排序',
|
|
remark VARCHAR(500) NULL COMMENT '备注',
|
|
create_by VARCHAR(64) NULL COMMENT '创建者',
|
|
create_dept_id VARCHAR(64) NULL COMMENT '创建部门',
|
|
create_time DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
|
update_by VARCHAR(64) NULL COMMENT '更新者',
|
|
update_time DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
|
del_flag CHAR(1) DEFAULT '0' COMMENT '删除标志(0存在 1删除)',
|
|
PRIMARY KEY (id),
|
|
INDEX idx_sso_slot (slot_id, occupancy_status, del_flag),
|
|
INDEX idx_sso_item (item_type, item_id, del_flag),
|
|
INDEX idx_sso_tenant (tenant_no, del_flag)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='库位占用记录表';
|
|
|
|
-- 2. 增强:biz_storage_facility_slot 增加缓存字段
|
|
ALTER TABLE biz_storage_facility_slot
|
|
ADD COLUMN occupied_count INT DEFAULT 0 COMMENT '当前占用数量',
|
|
ADD COLUMN last_item_type VARCHAR(32) NULL COMMENT '最近存储物品类型',
|
|
ADD COLUMN last_stored_at DATETIME NULL COMMENT '最近入库时间';
|