| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263 |
- -- 商品入库 + 库存流水(共享)
- -- 依据:doc/店铺后台/库存管理/商品入库/商品入库技术方案.md v1.0
- -- 入库单主表
- CREATE TABLE IF NOT EXISTS `biz_stock_inbound` (
- `inbound_id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '入库单ID',
- `inbound_no` varchar(32) NOT NULL COMMENT '入库单号(IN+yyyyMMdd+6位)',
- `shop_id` bigint(20) NOT NULL COMMENT '店铺ID',
- `inbound_type` char(1) NOT NULL COMMENT '0新增商品规格 1采购 2退货 3其他',
- `remark` varchar(200) DEFAULT NULL COMMENT '备注',
- `operator_id` bigint(20) NOT NULL COMMENT '经办人用户ID',
- `operator_name` varchar(64) NOT NULL DEFAULT '' COMMENT '经办人登录名快照',
- `inbound_time` datetime NOT NULL COMMENT '入库确认时间',
- `create_by` varchar(64) DEFAULT '' COMMENT '创建者',
- `create_time` datetime DEFAULT NULL COMMENT '创建时间',
- PRIMARY KEY (`inbound_id`),
- UNIQUE KEY `uk_inbound_no` (`inbound_no`),
- KEY `idx_shop_time` (`shop_id`, `inbound_time`),
- KEY `idx_shop_type` (`shop_id`, `inbound_type`, `inbound_time`)
- ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='商品入库单';
- -- 入库单明细
- CREATE TABLE IF NOT EXISTS `biz_stock_inbound_item` (
- `item_id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '明细ID',
- `inbound_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 '入库数量',
- `stock_before` int(11) NOT NULL COMMENT '变化前库存',
- `stock_after` int(11) NOT NULL COMMENT '变化后库存',
- PRIMARY KEY (`item_id`),
- KEY `idx_inbound_id` (`inbound_id`),
- KEY `idx_goods_id` (`goods_id`, `inbound_id`)
- ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='商品入库单明细';
- -- 库存流水(入库/出库/调整/订单共用)
- CREATE TABLE IF NOT EXISTS `biz_stock_log` (
- `log_id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '流水ID',
- `shop_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 '商品名称快照',
- `spec_text` varchar(256) DEFAULT NULL COMMENT '规格展示文案',
- `direction` char(1) NOT NULL COMMENT '1入库 2出库',
- `change_reason` varchar(32) NOT NULL COMMENT '变化原因编码',
- `change_qty` int(11) NOT NULL COMMENT '变化量(正数)',
- `stock_before` int(11) NOT NULL COMMENT '变化前库存',
- `stock_after` int(11) NOT NULL COMMENT '变化后库存',
- `ref_type` varchar(16) NOT NULL COMMENT 'INBOUND/OUTBOUND/ADJUST/ORDER/GOODS',
- `ref_id` bigint(20) DEFAULT NULL COMMENT '关联业务主键',
- `ref_no` varchar(32) DEFAULT NULL COMMENT '关联业务单号',
- `operator_id` bigint(20) DEFAULT NULL COMMENT '操作人ID',
- `operator_name` varchar(64) DEFAULT '' COMMENT '操作人登录名',
- `create_time` datetime NOT NULL COMMENT '操作时间',
- PRIMARY KEY (`log_id`),
- KEY `idx_shop_time` (`shop_id`, `create_time`),
- KEY `idx_goods_time` (`shop_id`, `goods_id`, `create_time`),
- KEY `idx_ref` (`ref_type`, `ref_id`)
- ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='库存流水';
|