chore(db): add product brand/alias and brand-level inventory schema
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
1 parent
a79dd9f61d
commit
265a4ff4f7
2 files changed
+193
-1
No files matched your search
+104
-1
@@ -1029,6 +1029,9 @@ CREATE TABLE `crm_contract_product` (
|
||||
`contract_id` varchar(64) NOT NULL COMMENT '合同ID',
|
||||
`product_id` varchar(64) NOT NULL COMMENT '产品ID',
|
||||
`product_name` varchar(200) NOT NULL COMMENT '产品名称',
|
||||
`brand_mode` varchar(20) DEFAULT NULL COMMENT 'required/any',
|
||||
`brand_id` varchar(64) DEFAULT NULL COMMENT '指定品牌ID',
|
||||
`brand_name` varchar(100) DEFAULT NULL COMMENT '品牌名快照',
|
||||
`product_no` varchar(50) DEFAULT NULL COMMENT '产品编号',
|
||||
`category_id` varchar(64) DEFAULT NULL COMMENT '产品分类ID',
|
||||
`category_name` varchar(100) DEFAULT NULL COMMENT '产品分类名称',
|
||||
@@ -2015,6 +2018,63 @@ INSERT INTO `crm_product` (`id`, `product_no`, `product_name`, `category_id`, `c
|
||||
INSERT INTO `crm_product` (`id`, `product_no`, `product_name`, `category_id`, `category_name`, `model`, `unit`, `barcode`, `price`, `cost_price`, `stock`, `low_stock`, `tax_rate`, `is_toxic`, `is_explosive`, `status`, `description`, `images`, `sale_count`, `tenant_no`, `order_num`, `remark`, `create_by`, `create_dept_id`, `create_time`, `update_by`, `update_time`, `del_flag`) VALUES ('C9B4E76409104D9DB1B2FA25D7635F3D', 'SXWL007319', '测试产品编号', '1975766458781167617', '无机原料', NULL, NULL, '20260712000004', NULL, NULL, 0, 10, 13.00, 0, 0, 'on', NULL, NULL, 0, 'shanxia2.0', NULL, NULL, 'd3000000000000000000000000000001', '', '2026-07-12 09:43:36', NULL, '2026-07-12 09:43:36', 0);
|
||||
COMMIT;
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for crm_product_alias
|
||||
-- ----------------------------
|
||||
DROP TABLE IF EXISTS `crm_product_alias`;
|
||||
CREATE TABLE `crm_product_alias` (
|
||||
`id` varchar(64) NOT NULL COMMENT '主键ID',
|
||||
`product_id` varchar(64) NOT NULL COMMENT '产品ID',
|
||||
`alias_name` varchar(200) NOT NULL COMMENT '别名',
|
||||
`tenant_no` varchar(64) NOT NULL DEFAULT 'shanxia2.0',
|
||||
`order_num` int(11) DEFAULT NULL,
|
||||
`remark` varchar(512) DEFAULT NULL,
|
||||
`create_by` varchar(64) DEFAULT NULL,
|
||||
`create_dept_id` varchar(64) NOT NULL DEFAULT '',
|
||||
`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
`update_by` varchar(64) DEFAULT NULL,
|
||||
`update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
`del_flag` smallint(6) NOT NULL DEFAULT '0',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_product_id` (`product_id`),
|
||||
KEY `idx_tenant` (`tenant_no`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='CRM-产品别名';
|
||||
|
||||
-- ----------------------------
|
||||
-- Records of crm_product_alias
|
||||
-- ----------------------------
|
||||
BEGIN;
|
||||
COMMIT;
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for crm_product_brand
|
||||
-- ----------------------------
|
||||
DROP TABLE IF EXISTS `crm_product_brand`;
|
||||
CREATE TABLE `crm_product_brand` (
|
||||
`id` varchar(64) NOT NULL COMMENT '主键ID',
|
||||
`product_id` varchar(64) NOT NULL COMMENT '产品ID',
|
||||
`brand_name` varchar(100) NOT NULL COMMENT '品牌名称',
|
||||
`status` char(3) NOT NULL DEFAULT 'on' COMMENT '状态 on/off',
|
||||
`tenant_no` varchar(64) NOT NULL DEFAULT 'shanxia2.0' COMMENT '租户编号',
|
||||
`order_num` int(11) DEFAULT NULL COMMENT '排序号',
|
||||
`remark` varchar(512) DEFAULT NULL COMMENT '备注',
|
||||
`create_by` varchar(64) DEFAULT NULL,
|
||||
`create_dept_id` varchar(64) NOT NULL DEFAULT '',
|
||||
`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
`update_by` varchar(64) DEFAULT NULL,
|
||||
`update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
`del_flag` smallint(6) NOT NULL DEFAULT '0',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_product_id` (`product_id`),
|
||||
KEY `idx_tenant` (`tenant_no`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='CRM-产品品牌';
|
||||
|
||||
-- ----------------------------
|
||||
-- Records of crm_product_brand
|
||||
-- ----------------------------
|
||||
BEGIN;
|
||||
COMMIT;
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for crm_product_category
|
||||
-- ----------------------------
|
||||
@@ -2197,6 +2257,9 @@ CREATE TABLE `crm_quote_product` (
|
||||
`quote_id` varchar(64) NOT NULL COMMENT '报价单ID',
|
||||
`product_id` varchar(64) NOT NULL COMMENT '产品ID',
|
||||
`product_name` varchar(200) NOT NULL COMMENT '产品名称',
|
||||
`brand_mode` varchar(20) DEFAULT NULL COMMENT 'required/any',
|
||||
`brand_id` varchar(64) DEFAULT NULL COMMENT '指定品牌ID',
|
||||
`brand_name` varchar(100) DEFAULT NULL COMMENT '品牌名快照',
|
||||
`product_no` varchar(50) DEFAULT NULL COMMENT '产品编号',
|
||||
`category_id` varchar(64) DEFAULT NULL COMMENT '产品分类ID',
|
||||
`category_name` varchar(100) DEFAULT NULL COMMENT '产品分类名称',
|
||||
@@ -3066,6 +3129,8 @@ DROP TABLE IF EXISTS `pl_inventory`;
|
||||
CREATE TABLE `pl_inventory` (
|
||||
`id` varchar(64) NOT NULL COMMENT '主键ID',
|
||||
`product_id` varchar(64) NOT NULL COMMENT '产品ID',
|
||||
`brand_id` varchar(64) NOT NULL DEFAULT '' COMMENT '品牌ID,无品牌为空串',
|
||||
`brand_name` varchar(100) DEFAULT NULL COMMENT '品牌名称',
|
||||
`product_no` varchar(50) NOT NULL COMMENT '产品编号',
|
||||
`product_name` varchar(200) NOT NULL COMMENT '产品名称',
|
||||
`model` varchar(100) DEFAULT NULL COMMENT '规格型号',
|
||||
@@ -3084,7 +3149,7 @@ CREATE TABLE `pl_inventory` (
|
||||
`update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
||||
`del_flag` smallint(6) NOT NULL DEFAULT '0' COMMENT '删除标记:0-正常 1-已删除',
|
||||
PRIMARY KEY (`id`),
|
||||
UNIQUE KEY `uk_product_id` (`product_id`),
|
||||
UNIQUE KEY `uk_product_brand` (`tenant_no`,`product_id`,`brand_id`,`del_flag`),
|
||||
KEY `idx_tenant` (`tenant_no`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='库存表';
|
||||
|
||||
@@ -3101,6 +3166,8 @@ DROP TABLE IF EXISTS `pl_inventory_transaction`;
|
||||
CREATE TABLE `pl_inventory_transaction` (
|
||||
`id` varchar(64) NOT NULL COMMENT '主键ID',
|
||||
`product_id` varchar(64) NOT NULL COMMENT '产品ID',
|
||||
`brand_id` varchar(64) NOT NULL DEFAULT '',
|
||||
`brand_name` varchar(100) DEFAULT NULL,
|
||||
`product_name` varchar(200) NOT NULL COMMENT '产品名称',
|
||||
`transaction_type` varchar(20) NOT NULL COMMENT '事务类型 inbound-入库 outbound-出库',
|
||||
`plan_id` varchar(64) DEFAULT NULL COMMENT '计划ID',
|
||||
@@ -3139,6 +3206,8 @@ DROP TABLE IF EXISTS `pl_inventory_warning`;
|
||||
CREATE TABLE `pl_inventory_warning` (
|
||||
`id` varchar(64) NOT NULL COMMENT '主键ID',
|
||||
`product_id` varchar(64) NOT NULL COMMENT '产品ID',
|
||||
`brand_id` varchar(64) NOT NULL DEFAULT '' COMMENT '品牌ID,无品牌为空串',
|
||||
`brand_name` varchar(100) DEFAULT NULL COMMENT '品牌名称',
|
||||
`product_name` varchar(200) NOT NULL COMMENT '产品名称',
|
||||
`warning_type` varchar(20) NOT NULL COMMENT '预警类型 low-低于最低 high-高于最高',
|
||||
`current_qty` decimal(15,3) NOT NULL COMMENT '当前库存',
|
||||
@@ -3536,6 +3605,9 @@ CREATE TABLE `pl_plan_product` (
|
||||
`product_id` varchar(64) NOT NULL COMMENT '产品ID',
|
||||
`product_no` varchar(50) NOT NULL COMMENT '产品编号',
|
||||
`product_name` varchar(200) NOT NULL COMMENT '产品名称',
|
||||
`brand_mode` varchar(20) DEFAULT NULL COMMENT 'required/any',
|
||||
`brand_id` varchar(64) DEFAULT NULL COMMENT '指定品牌ID',
|
||||
`brand_name` varchar(100) DEFAULT NULL COMMENT '品牌名快照',
|
||||
`model` varchar(100) DEFAULT NULL COMMENT '规格型号',
|
||||
`unit` varchar(20) NOT NULL DEFAULT '吨' COMMENT '单位',
|
||||
`category_name` varchar(200) DEFAULT NULL COMMENT '产品分类',
|
||||
@@ -3671,6 +3743,37 @@ INSERT INTO `pl_plan_product` (`id`, `plan_id`, `product_id`, `product_no`, `pro
|
||||
INSERT INTO `pl_plan_product` (`id`, `plan_id`, `product_id`, `product_no`, `product_name`, `model`, `unit`, `category_name`, `package_spec`, `delivery_method`, `quantity`, `actual_qty`, `tax_price`, `tax_amount`, `tax_subtotal`, `is_explosive`, `is_toxic`, `purchase_cert_url`, `transport_cert_url`, `legal_use_cert_url`, `inbound_estimate_qty`, `inbound_qty`, `inbound_price`, `inbound_amount`, `outbound_estimate_qty`, `outbound_qty`, `outbound_price`, `outbound_amount`, `tenant_no`, `order_num`, `remark`, `create_by`, `create_dept_id`, `create_time`, `update_by`, `update_time`, `del_flag`) VALUES ('FF6353D6EDE44A2391A1D30B35129B08', 'CC2853CC9F7744E7BF34B13D57CC1B42', '2059116006488109057', '2059116006488109057', '98% 工业硫酸', 'AR', 'dun', '其他', '槽罐车', '一票制送到', 20.000, 0.000, 2000.0000, 4601.77, 40000.00, 0, 1, 'pl/plan-cert/202607/05/b16ef57360da45c9bbd6998e08b7c213.pdf', 'pl/plan-cert/202607/11/25888b95be064f45a73acfe46bf16d0d.pdf', NULL, 20.000, NULL, 2000.0000, 40000.00, 20.000, NULL, 2000.0000, 40000.00, 'shanxia2.0', 0, '备注1', 'd3000000000000000000000000000001', 'b13c2be2-4e71-11f1-9f47-00163e3bdd96', '2026-07-05 23:48:36', 'd3000000000000000000000000000001', '2026-07-11 19:29:41', 0);
|
||||
COMMIT;
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for pl_plan_product_brand_qty
|
||||
-- ----------------------------
|
||||
DROP TABLE IF EXISTS `pl_plan_product_brand_qty`;
|
||||
CREATE TABLE `pl_plan_product_brand_qty` (
|
||||
`id` varchar(64) NOT NULL,
|
||||
`plan_id` varchar(64) NOT NULL,
|
||||
`plan_product_id` varchar(64) NOT NULL,
|
||||
`brand_id` varchar(64) NOT NULL DEFAULT '' COMMENT '空串=无品牌键',
|
||||
`brand_name` varchar(100) DEFAULT NULL,
|
||||
`qty` decimal(15,3) NOT NULL DEFAULT '0.000' COMMENT '本品牌归档实际数量',
|
||||
`tenant_no` varchar(64) NOT NULL DEFAULT 'shanxia2.0',
|
||||
`order_num` int(11) DEFAULT NULL,
|
||||
`remark` varchar(512) DEFAULT NULL,
|
||||
`create_by` varchar(64) DEFAULT NULL,
|
||||
`create_dept_id` varchar(64) NOT NULL DEFAULT '',
|
||||
`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
`update_by` varchar(64) DEFAULT NULL,
|
||||
`update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
`del_flag` smallint(6) NOT NULL DEFAULT '0',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_plan_product` (`plan_product_id`),
|
||||
KEY `idx_plan` (`plan_id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='计划产品归档品牌数量';
|
||||
|
||||
-- ----------------------------
|
||||
-- Records of pl_plan_product_brand_qty
|
||||
-- ----------------------------
|
||||
BEGIN;
|
||||
COMMIT;
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for pl_plan_transport
|
||||
-- ----------------------------
|
||||
|
||||
Reference in new issue
Block a user