Files
KCGL/stock_adjustment.sql

26 lines
1.6 KiB
MySQL
Raw Normal View History

-- 盘盈盘亏调整表
-- 用于记录财务/主管手动发起的库存修正
CREATE TABLE IF NOT EXISTS `stock_adjustment` (
`id` INT NOT NULL AUTO_INCREMENT COMMENT '主键',
`order_no` VARCHAR(50) NOT NULL COMMENT '单号,如 ADJ-YYYYMMDD-XXXX',
`base_id` INT DEFAULT NULL COMMENT '关联物料基础表',
`stock_id` INT DEFAULT NULL COMMENT '关联具体库存行ID',
`source_table` VARCHAR(50) DEFAULT NULL COMMENT '库存类型 (stock_buy/stock_semi/stock_product)',
`sku` VARCHAR(100) DEFAULT NULL COMMENT '物料SKU',
`material_name` VARCHAR(255) DEFAULT NULL COMMENT '物料名称',
`spec_model` VARCHAR(255) DEFAULT NULL COMMENT '规格型号',
`warehouse_location` VARCHAR(100) DEFAULT NULL COMMENT '库位',
`adjust_type` VARCHAR(20) NOT NULL COMMENT '调整类型:profit 盘盈 / loss 盘亏',
`adjust_quantity` DECIMAL(19,4) NOT NULL COMMENT '调整数量(绝对值)',
`reason` VARCHAR(500) NOT NULL COMMENT '原因说明(必填)',
`status` VARCHAR(20) DEFAULT 'pending' COMMENT '状态:pending 待处理 / completed 已完成 / cancelled 已取消',
`operator` VARCHAR(100) DEFAULT NULL COMMENT '操作人/经办人',
`create_time` DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`update_time` DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
PRIMARY KEY (`id`),
UNIQUE KEY `uk_order_no` (`order_no`),
KEY `idx_create_time` (`create_time`),
KEY `idx_adjust_type` (`adjust_type`),
KEY `idx_status` (`status`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='盘盈盘亏调整表';