From 164be5732b4c022b61d42403019c899f8ecb2fbe Mon Sep 17 00:00:00 2001 From: dhb52 Date: Mon, 16 Oct 2023 23:53:27 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20CRM/=E5=90=88=E5=90=8C=E7=AE=A1?= =?UTF-8?q?=E7=90=86=20-=20SQL?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- sql/mysql/crm.sql | 39 ++++++++++++ sql/mysql/crm_menu.sql | 63 +++++++++++++++++++ .../src/test/resources/sql/clean.sql | 1 + .../src/test/resources/sql/create_tables.sql | 27 ++++++++ 4 files changed, 130 insertions(+) create mode 100644 sql/mysql/crm.sql create mode 100644 sql/mysql/crm_menu.sql create mode 100644 yudao-module-crm/yudao-module-crm-biz/src/test/resources/sql/clean.sql create mode 100644 yudao-module-crm/yudao-module-crm-biz/src/test/resources/sql/create_tables.sql diff --git a/sql/mysql/crm.sql b/sql/mysql/crm.sql new file mode 100644 index 000000000..eeb2d12ac --- /dev/null +++ b/sql/mysql/crm.sql @@ -0,0 +1,39 @@ +SET NAMES utf8mb4; + +-- ---------------------------- +-- 合同表 +-- ---------------------------- +DROP TABLE IF EXISTS `crm_contract`; +CREATE TABLE `crm_contract` +( + `id` bigint NOT NULL AUTO_INCREMENT COMMENT '编号,主键自增', + `name` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '合同名称', + `customer_id` bigint DEFAULT NULL COMMENT '客户编号', + `business_id` bigint DEFAULT NULL COMMENT '商机编号', + `process_instance_id` bigint DEFAULT NULL COMMENT '工作流编号', + `order_date` datetime DEFAULT NULL COMMENT '下单日期', + `owner_user_id` bigint DEFAULT NULL COMMENT '负责人的用户编号', + `no` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '合同编号', + `start_time` datetime DEFAULT NULL COMMENT '开始时间', + `end_time` datetime DEFAULT NULL COMMENT '结束时间', + `price` int DEFAULT NULL COMMENT '合同金额', + `discount_percent` int DEFAULT NULL COMMENT '整单折扣', + `product_price` int DEFAULT NULL COMMENT '产品总金额', + `ro_user_ids` varchar(4096) DEFAULT NULL COMMENT '只读权限的用户编号数组', + `rw_user_ids` varchar(4096) DEFAULT NULL COMMENT '读写权限的用户编号数组', + `contact_id` bigint DEFAULT NULL COMMENT '联系人编号', + `sign_user_id` bigint DEFAULT NULL COMMENT '公司签约人', + `contact_last_time` datetime DEFAULT NULL COMMENT '最后跟进时间', + + -- 通用字段 + `remark` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '备注', + `creator` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT '' COMMENT '创建者', + `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', + `updater` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT '' COMMENT '更新者', + `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', + `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除', + `tenant_id` bigint NOT NULL DEFAULT 0 COMMENT '租户编号', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB + CHARACTER SET = utf8mb4 + COLLATE = utf8mb4_unicode_ci COMMENT ='合同表'; diff --git a/sql/mysql/crm_menu.sql b/sql/mysql/crm_menu.sql new file mode 100644 index 000000000..83e5ae29d --- /dev/null +++ b/sql/mysql/crm_menu.sql @@ -0,0 +1,63 @@ +-- ---------------------------- +-- 合同菜单 +-- ---------------------------- + +-- 菜单 SQL +INSERT INTO system_menu( + name, permission, type, sort, parent_id, + path, icon, component, status, component_name +) +VALUES ( + '合同管理', '', 2, 0, 1254, + 'contract', '', 'crm/contract/index', 0, 'Contract' +); + +-- 按钮父菜单ID +-- 暂时只支持 MySQL。如果你是 Oracle、PostgreSQL、SQLServer 的话,需要手动修改 @parentId 的部分的代码 +SELECT @parentId := LAST_INSERT_ID(); + +-- 按钮 SQL +INSERT INTO system_menu( + name, permission, type, sort, parent_id, + path, icon, component, status +) +VALUES ( + '合同查询', 'crm:contract:query', 3, 1, @parentId, + '', '', '', 0 +); +INSERT INTO system_menu( + name, permission, type, sort, parent_id, + path, icon, component, status +) +VALUES ( + '合同创建', 'crm:contract:create', 3, 2, @parentId, + '', '', '', 0 +); +INSERT INTO system_menu( + name, permission, type, sort, parent_id, + path, icon, component, status +) +VALUES ( + '合同更新', 'crm:contract:update', 3, 3, @parentId, + '', '', '', 0 +); +INSERT INTO system_menu( + name, permission, type, sort, parent_id, + path, icon, component, status +) +VALUES ( + '合同删除', 'crm:contract:delete', 3, 4, @parentId, + '', '', '', 0 +); +INSERT INTO system_menu( + name, permission, type, sort, parent_id, + path, icon, component, status +) +VALUES ( + '合同导出', 'crm:contract:export', 3, 5, @parentId, + '', '', '', 0 +); + +-- ---------------------------- +-- ...菜单 +-- ---------------------------- \ No newline at end of file diff --git a/yudao-module-crm/yudao-module-crm-biz/src/test/resources/sql/clean.sql b/yudao-module-crm/yudao-module-crm-biz/src/test/resources/sql/clean.sql new file mode 100644 index 000000000..c45d2602e --- /dev/null +++ b/yudao-module-crm/yudao-module-crm-biz/src/test/resources/sql/clean.sql @@ -0,0 +1 @@ +DELETE FROM "crm_contract"; diff --git a/yudao-module-crm/yudao-module-crm-biz/src/test/resources/sql/create_tables.sql b/yudao-module-crm/yudao-module-crm-biz/src/test/resources/sql/create_tables.sql new file mode 100644 index 000000000..c25a80e44 --- /dev/null +++ b/yudao-module-crm/yudao-module-crm-biz/src/test/resources/sql/create_tables.sql @@ -0,0 +1,27 @@ +CREATE TABLE IF NOT EXISTS "crm_contract" ( + "id" bigint NOT NULL GENERATED BY DEFAULT AS IDENTITY, + "name" varchar NOT NULL, + "customer_id" bigint, + "business_id" bigint, + "process_instance_id" bigint, + "order_date" varchar, + "owner_user_id" bigint, + "no" varchar, + "start_time" varchar, + "end_time" varchar, + "price" int, + "discount_percent" int, + "product_price" int, + "ro_user_ids" varchar, + "rw_user_ids" varchar, + "contact_id" bigint, + "sign_user_id" bigint, + "contact_last_time" varchar, + "remark" varchar, + "creator" varchar DEFAULT '', + "create_time" datetime NOT NULL DEFAULT CURRENT_TIMESTAMP, + "updater" varchar DEFAULT '', + "update_time" datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + "deleted" bit NOT NULL DEFAULT FALSE, + PRIMARY KEY ("id") + ) COMMENT '合同表'; \ No newline at end of file