增加CRM模块
This commit is contained in:
@@ -0,0 +1,24 @@
|
||||
CREATE TABLE yz_tenant_crm_contact (
|
||||
id BIGINT NOT NULL AUTO_INCREMENT COMMENT '自增主键ID',
|
||||
tenant_id BIGINT NOT NULL COMMENT '租户ID(关联租户表,隔离数据)',
|
||||
related_type TINYINT NOT NULL COMMENT '关联类型:1=客户,2=供应商(区分联系人归属)',
|
||||
related_id BIGINT NOT NULL COMMENT '关联ID(关联yz_tenant_crm_customer.id或yz_tenant_crm_supplier.id)',
|
||||
contact_name VARCHAR(50) NOT NULL COMMENT '联系人姓名',
|
||||
gender TINYINT DEFAULT 0 COMMENT '性别:0=未知,1=男,2=女',
|
||||
mobile VARCHAR(20) COMMENT '手机号(唯一索引,避免重复)',
|
||||
phone VARCHAR(20) COMMENT '固定电话',
|
||||
email VARCHAR(100) COMMENT '邮箱',
|
||||
position VARCHAR(50) COMMENT '职位(如:项目经理、采购负责人)',
|
||||
department VARCHAR(50) COMMENT '所属部门',
|
||||
is_primary TINYINT DEFAULT 0 COMMENT '是否主联系人:0=否,1=是(一个客户/供应商可设一个主联系人)',
|
||||
remark VARCHAR(500) COMMENT '备注(如:关键决策人、对接优先级等)',
|
||||
create_time DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
update_time DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
||||
create_by BIGINT COMMENT '创建人ID(关联用户表)',
|
||||
update_by BIGINT COMMENT '更新人ID(关联用户表)',
|
||||
is_deleted TINYINT DEFAULT 0 COMMENT '逻辑删除:0=正常,1=删除',
|
||||
PRIMARY KEY (id),
|
||||
UNIQUE KEY uk_tenant_mobile (tenant_id, mobile) COMMENT '同一租户内手机号唯一',
|
||||
KEY idx_tenant_related (tenant_id, related_type, related_id) COMMENT '查询租户下某客户/供应商的所有联系人',
|
||||
KEY idx_contact_name (tenant_id, contact_name) COMMENT '按姓名模糊查询联系人'
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='租户CRM联系人表';
|
||||
@@ -0,0 +1,26 @@
|
||||
-- 客户管理表:yz_tenant_crm_customer(支持租户隔离、软删除、时间追踪)
|
||||
CREATE TABLE `yz_tenant_crm_customer` (
|
||||
`id` varchar(36) NOT NULL COMMENT 'ID',
|
||||
`tenant_id` varchar(64) NOT NULL COMMENT '租户ID',
|
||||
`customer_name` varchar(100) NOT NULL COMMENT '客户名称(企业/个人名称)',
|
||||
`customer_type` varchar(20) NOT NULL COMMENT '客户类型',
|
||||
`contact_person` varchar(50) NOT NULL COMMENT '联系人姓名',
|
||||
`contact_phone` varchar(20) NOT NULL COMMENT '联系人电话',
|
||||
`contact_email` varchar(100) DEFAULT '' COMMENT '联系人邮箱',
|
||||
`customer_level` varchar(20) DEFAULT '3' COMMENT '客户等级(1-核心客户/2-重要客户/3-普通客户/4-潜在客户)',
|
||||
`industry` varchar(50) DEFAULT '' COMMENT '所属行业',
|
||||
`address` varchar(255) DEFAULT '' COMMENT '客户地址',
|
||||
`register_time` date DEFAULT NULL COMMENT '客户注册/合作起始日期',
|
||||
`expire_time` date DEFAULT NULL COMMENT '合作到期日期',
|
||||
`status` varchar(20) NOT NULL DEFAULT '1' COMMENT '客户状态(0-禁用/1-正常/2-冻结/3-已注销)',
|
||||
`remark` text COMMENT '客户备注',
|
||||
`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
`update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
||||
`delete_time` datetime DEFAULT NULL COMMENT '删除时间',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_tenant_id` (`tenant_id`) COMMENT '租户ID索引,优化多租户隔离查询',
|
||||
KEY `idx_customer_name` (`customer_name`) COMMENT '客户名称索引,优化按名称模糊查询',
|
||||
KEY `idx_contact_phone` (`contact_phone`) COMMENT '联系人电话索引,优化按电话精准查询',
|
||||
KEY `idx_status` (`status`) COMMENT '客户状态索引,优化按状态筛选(如:查询正常客户)',
|
||||
KEY `idx_register_time` (`register_time`) COMMENT '注册时间索引,优化按合作时间范围查询'
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='客户管理表(支持租户隔离、软删除、客户全生命周期追踪)';
|
||||
@@ -0,0 +1,26 @@
|
||||
-- 客户管理表:yz_tenant_crm_supplier(支持租户隔离、软删除、时间追踪)
|
||||
CREATE TABLE `yz_tenant_crm_supplier` (
|
||||
`id` varchar(36) NOT NULL COMMENT 'ID',
|
||||
`tenant_id` varchar(64) NOT NULL COMMENT '租户ID',
|
||||
`supplier_name` varchar(100) NOT NULL COMMENT '供应商名称(企业/个人名称)',
|
||||
`supplier_type` varchar(20) NOT NULL COMMENT '供应商类型',
|
||||
`contact_person` varchar(50) NOT NULL COMMENT '联系人姓名',
|
||||
`contact_phone` varchar(20) NOT NULL COMMENT '联系人电话',
|
||||
`contact_email` varchar(100) DEFAULT '' COMMENT '联系人邮箱',
|
||||
`supplier_level` varchar(20) DEFAULT '3' COMMENT '供应商等级(1-核心供应商/2-重要供应商/3-普通供应商/4-潜在供应商)',
|
||||
`industry` varchar(50) DEFAULT '' COMMENT '所属行业',
|
||||
`address` varchar(255) DEFAULT '' COMMENT '供应商地址',
|
||||
`register_time` date DEFAULT NULL COMMENT '供应商注册/合作起始日期',
|
||||
`expire_time` date DEFAULT NULL COMMENT '合作到期日期',
|
||||
`status` varchar(20) NOT NULL DEFAULT '1' COMMENT '供应商状态(0-禁用/1-正常/2-冻结/3-已注销)',
|
||||
`remark` text COMMENT '供应商备注',
|
||||
`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
`update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
||||
`delete_time` datetime DEFAULT NULL COMMENT '删除时间',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_tenant_id` (`tenant_id`) COMMENT '租户ID索引,优化多租户隔离查询',
|
||||
KEY `idx_supplier_name` (`supplier_name`) COMMENT '供应商名称索引,优化按名称模糊查询',
|
||||
KEY `idx_contact_phone` (`contact_phone`) COMMENT '联系人电话索引,优化按电话精准查询',
|
||||
KEY `idx_status` (`status`) COMMENT '供应商状态索引,优化按状态筛选',
|
||||
KEY `idx_register_time` (`register_time`) COMMENT '注册时间索引,优化按合作时间范围查询'
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='供应商管理表';
|
||||
Reference in New Issue
Block a user