Parcourir la source

feat: CRM/合同管理 - SQL

dhb52 il y a 1 an
Parent
commit
164be5732b

+ 39 - 0
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 ='合同表';

+ 63 - 0
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
+);
+
+-- ----------------------------
+-- ...菜单
+-- ----------------------------

+ 1 - 0
yudao-module-crm/yudao-module-crm-biz/src/test/resources/sql/clean.sql

@@ -0,0 +1 @@
+DELETE FROM "crm_contract";

+ 27 - 0
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 '合同表';