-- 商品出库 -- 依据:doc/店铺后台/库存管理/商品出库/商品出库技术方案.md v1.0 -- 说明:biz_stock_log 已在 sql/biz_stock_inbound.sql 定义,本脚本仅建出库单表 -- 出库单主表 CREATE TABLE IF NOT EXISTS `biz_stock_outbound` ( `outbound_id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '出库单ID', `outbound_no` varchar(32) NOT NULL COMMENT '出库单号(OUT+yyyyMMdd+6位)', `shop_id` bigint(20) NOT NULL COMMENT '店铺ID', `outbound_type` char(1) NOT NULL COMMENT '0下单扣减 1删除产品规格 2订单出库 3过期出库 4其他出库', `ref_order_no` varchar(32) DEFAULT NULL COMMENT '关联C端订单号(type=0必填)', `remark` varchar(200) DEFAULT NULL COMMENT '备注', `operator_id` bigint(20) NOT NULL DEFAULT '0' COMMENT '经办人用户ID;系统单可为0', `operator_name` varchar(64) NOT NULL DEFAULT '' COMMENT '经办人登录名快照;系统单可为「系统」', `outbound_time` datetime NOT NULL COMMENT '出库确认时间', `create_by` varchar(64) DEFAULT '' COMMENT '创建者', `create_time` datetime DEFAULT NULL COMMENT '创建时间', PRIMARY KEY (`outbound_id`), UNIQUE KEY `uk_outbound_no` (`outbound_no`), UNIQUE KEY `uk_ref_order_no` (`ref_order_no`), KEY `idx_shop_time` (`shop_id`, `outbound_time`), KEY `idx_shop_type` (`shop_id`, `outbound_type`, `outbound_time`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='商品出库单'; -- 出库单明细 CREATE TABLE IF NOT EXISTS `biz_stock_outbound_item` ( `item_id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '明细ID', `outbound_id` bigint(20) NOT NULL COMMENT '出库单ID', `goods_id` bigint(20) NOT NULL COMMENT '商品ID', `sku_id` bigint(20) DEFAULT NULL COMMENT 'SKU ID(多规格预留)', `goods_name` varchar(200) NOT NULL COMMENT '商品名称快照', `main_pic` varchar(512) NOT NULL DEFAULT '' COMMENT '主图快照', `spec_text` varchar(256) DEFAULT NULL COMMENT '规格展示文案', `quantity` int(11) NOT NULL COMMENT '出库数量(展示用;删除规格可为0)', `stock_before` int(11) NOT NULL COMMENT '变化前库存', `stock_after` int(11) NOT NULL COMMENT '变化后库存', PRIMARY KEY (`item_id`), KEY `idx_outbound_id` (`outbound_id`), KEY `idx_goods_id` (`goods_id`, `outbound_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='商品出库单明细';