| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980 |
- -- ============================================================
- -- 生产物料库存管理 - 数据库迁移脚本
- -- 变更: production-material-inventory
- -- ============================================================
- -- 1. biz_consumable 新增库存字段
- ALTER TABLE `biz_consumable`
- ADD COLUMN `stock_qty` DECIMAL(18,4) NOT NULL DEFAULT 0.0000 COMMENT '当前库存量' AFTER `description`,
- ADD COLUMN `warning_qty` DECIMAL(18,4) NOT NULL DEFAULT 0.0000 COMMENT '预警库存量' AFTER `stock_qty`,
- ADD COLUMN `status` CHAR(1) NOT NULL DEFAULT '1' COMMENT '1-启用 0-停用' AFTER `warning_qty`;
- -- 2. biz_reagent 新增库存字段
- ALTER TABLE `biz_reagent`
- ADD COLUMN `stock_qty` DECIMAL(18,4) NOT NULL DEFAULT 0.0000 COMMENT '当前库存量' AFTER `description`,
- ADD COLUMN `warning_qty` DECIMAL(18,4) NOT NULL DEFAULT 0.0000 COMMENT '预警库存量' AFTER `stock_qty`,
- ADD COLUMN `status` CHAR(1) NOT NULL DEFAULT '1' COMMENT '1-启用 0-停用' AFTER `warning_qty`;
- -- 3. 耗材变动记录表
- CREATE TABLE `biz_consumable_stock_log` (
- `id` VARCHAR(64) NOT NULL COMMENT '主键ID',
- `material_id` VARCHAR(64) NOT NULL COMMENT '耗材ID',
- `material_code` VARCHAR(64) DEFAULT NULL COMMENT '耗材编码快照',
- `material_name` VARCHAR(200) DEFAULT NULL COMMENT '耗材名称快照',
- `change_type` VARCHAR(16) NOT NULL COMMENT '变动类型:in入库 / use使用出库',
- `change_qty` DECIMAL(18,4) NOT NULL COMMENT '变动数量(入库正数,出库负数)',
- `stock_before` DECIMAL(18,4) NOT NULL COMMENT '变动前库存',
- `stock_after` DECIMAL(18,4) NOT NULL COMMENT '变动后库存',
- `source_type` VARCHAR(16) NOT NULL COMMENT '来源:manual_in / manual_out / step_save',
- `step_id` VARCHAR(64) DEFAULT NULL COMMENT '生产任务步骤ID(step_save时有值)',
- `task_id` VARCHAR(64) DEFAULT NULL COMMENT '生产任务ID(step_save时有值)',
- `task_no` VARCHAR(32) DEFAULT NULL COMMENT '生产任务编号快照',
- `receiver` VARCHAR(64) DEFAULT NULL COMMENT '领用人(手动出库时)',
- `purpose` VARCHAR(512) DEFAULT NULL COMMENT '用途/事由(手动出库时)',
- `tenant_no` VARCHAR(64) NOT NULL DEFAULT 'zkxw' 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` SMALLINT NOT NULL DEFAULT 0 COMMENT '删除标记',
- PRIMARY KEY (`id`),
- INDEX `idx_csl_material` (`material_id`, `del_flag`),
- INDEX `idx_csl_step` (`step_id`, `del_flag`),
- INDEX `idx_csl_task` (`task_id`, `del_flag`),
- INDEX `idx_csl_tenant_time` (`tenant_no`, `change_type`, `create_time`),
- INDEX `idx_csl_source` (`source_type`, `del_flag`)
- ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='耗材变动记录';
- -- 4. 试剂变动记录表
- CREATE TABLE `biz_reagent_stock_log` (
- `id` VARCHAR(64) NOT NULL COMMENT '主键ID',
- `material_id` VARCHAR(64) NOT NULL COMMENT '试剂ID',
- `material_code` VARCHAR(64) DEFAULT NULL COMMENT '试剂编码快照',
- `material_name` VARCHAR(200) DEFAULT NULL COMMENT '试剂名称快照',
- `change_type` VARCHAR(16) NOT NULL COMMENT '变动类型:in入库 / use使用出库',
- `change_qty` DECIMAL(18,4) NOT NULL COMMENT '变动数量(入库正数,出库负数)',
- `stock_before` DECIMAL(18,4) NOT NULL COMMENT '变动前库存',
- `stock_after` DECIMAL(18,4) NOT NULL COMMENT '变动后库存',
- `source_type` VARCHAR(16) NOT NULL COMMENT '来源:manual_in / manual_out / step_save',
- `step_id` VARCHAR(64) DEFAULT NULL COMMENT '生产任务步骤ID(step_save时有值)',
- `task_id` VARCHAR(64) DEFAULT NULL COMMENT '生产任务ID(step_save时有值)',
- `task_no` VARCHAR(32) DEFAULT NULL COMMENT '生产任务编号快照',
- `receiver` VARCHAR(64) DEFAULT NULL COMMENT '领用人(手动出库时)',
- `purpose` VARCHAR(512) DEFAULT NULL COMMENT '用途/事由(手动出库时)',
- `tenant_no` VARCHAR(64) NOT NULL DEFAULT 'zkxw' 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` SMALLINT NOT NULL DEFAULT 0 COMMENT '删除标记',
- PRIMARY KEY (`id`),
- INDEX `idx_rsl_material` (`material_id`, `del_flag`),
- INDEX `idx_rsl_step` (`step_id`, `del_flag`),
- INDEX `idx_rsl_task` (`task_id`, `del_flag`),
- INDEX `idx_rsl_tenant_time` (`tenant_no`, `change_type`, `create_time`),
- INDEX `idx_rsl_source` (`source_type`, `del_flag`)
- ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='试剂变动记录';
|