-- 表:wms_stock_adjustment_item -- 用途:库存调整明细。调整的数量桶与变化量。 -- 约定:InnoDB / utf8mb4 / 无外键,表间按业务编码关联。详见 docs/database/00-conventions.md -- 说明:草稿阶段不写 qty_before/qty_after。完成时以当时余额为准回填,并受非负约束。 CREATE TABLE `wms_stock_adjustment_item` ( `id` BIGINT UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '内部主键', `tenant_code` VARCHAR(32) NOT NULL COMMENT '租户编码', `adjustment_no` VARCHAR(64) NOT NULL COMMENT '调整单号', `line_no` INT UNSIGNED NOT NULL COMMENT '行号', `customer_code` VARCHAR(32) NOT NULL COMMENT '货主编码', `location_code` VARCHAR(64) NOT NULL COMMENT '库位编码', `sku_code` VARCHAR(64) NOT NULL COMMENT 'SKU 编码', `batch_no` VARCHAR(64) NOT NULL DEFAULT '' COMMENT '批次号,可空', `bucket` VARCHAR(32) NOT NULL COMMENT '被调整的数量桶,取值同 wms_stock_log.bucket', `qty_change` DECIMAL(16,4) NOT NULL DEFAULT 0.0000 COMMENT '变化量,可正可负', `qty_before` DECIMAL(16,4) NULL COMMENT '完成时回填的变化前数量', `qty_after` DECIMAL(16,4) NULL COMMENT '完成时回填的变化后数量', `created_at` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间', `updated_at` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON UPDATE CURRENT_TIMESTAMP(3) COMMENT '更新时间', PRIMARY KEY (`id`), UNIQUE KEY `uk_tenant_adjustment_line` (`tenant_code`, `adjustment_no`, `line_no`), KEY `idx_tenant_sku` (`tenant_code`, `sku_code`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='库存调整明细';