/* Navicat Premium Dump SQL Source Server : 121.43.228.102 hn02le.34lkdLKD Source Server Type : MySQL Source Server Version : 50736 (5.7.36) Source Host : 121.43.228.102:3306 Source Schema : sx Target Server Type : MySQL Target Server Version : 50736 (5.7.36) File Encoding : 65001 Date: 30/05/2026 13:56:15 */ SET NAMES utf8mb4; SET FOREIGN_KEY_CHECKS = 0; -- ---------------------------- -- Table structure for bx_advance_apply -- ---------------------------- DROP TABLE IF EXISTS `bx_advance_apply`; CREATE TABLE `bx_advance_apply` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID', `apply_code` varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '申请单号(如 BYJ20260424001)', `applicant_id` bigint(20) NOT NULL COMMENT '申请人用户ID', `applicant_name` varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '申请人姓名(冗余)', `reason` varchar(1024) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '申请原因', `purpose` varchar(1024) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '申请目的', `expense_item_id` bigint(20) DEFAULT NULL COMMENT '费用项目ID', `amount` decimal(14,2) NOT NULL COMMENT '申请金额', `status` varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'draft' COMMENT '状态:draft-草稿 pending-待审批 approved-审批通过 rejected-审批驳回 issued-已发放', `current_node` varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '当前审批节点名称', `wf_id` bigint(20) DEFAULT NULL COMMENT '关联工作流定义ID', `issue_status` varchar(32) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '发放状态:unissued-未发放 issued-已发放', `issue_time` datetime DEFAULT NULL COMMENT '发放时间', `issue_user_id` bigint(20) DEFAULT NULL COMMENT '发放操作人ID', `issue_user_name` varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '发放操作人姓名', `issue_remark` varchar(512) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '发放备注', `actual_amount` decimal(14,2) DEFAULT NULL COMMENT '实际发放金额', `remark` varchar(512) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '备注', `create_by` varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '创建人', `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `update_by` varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '更新人', `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `del_flag` tinyint(4) NOT NULL DEFAULT '0' COMMENT '删除标记:0-正常 1-已删除', PRIMARY KEY (`id`) USING BTREE, UNIQUE KEY `uk_apply_code` (`apply_code`) USING BTREE, KEY `idx_applicant_id` (`applicant_id`) USING BTREE, KEY `idx_status` (`status`) USING BTREE ) ENGINE=InnoDB AUTO_INCREMENT=26 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='备用金申请单'; -- ---------------------------- -- Table structure for bx_advance_approval -- ---------------------------- DROP TABLE IF EXISTS `bx_advance_approval`; CREATE TABLE `bx_advance_approval` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID', `apply_id` bigint(20) NOT NULL COMMENT '备用金申请单ID', `node_order` int(11) NOT NULL COMMENT '节点顺序', `node_name` varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '节点名称', `approver_id` bigint(20) NOT NULL COMMENT '审批人用户ID', `approver_name` varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '审批人姓名', `approval_status` varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '审批结果:approved-通过 rejected-驳回', `approval_opinion` varchar(1024) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '审批意见', `approval_time` datetime NOT NULL COMMENT '审批时间', PRIMARY KEY (`id`) USING BTREE, KEY `idx_apply_id` (`apply_id`) USING BTREE ) ENGINE=InnoDB AUTO_INCREMENT=37 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='备用金审批记录表'; -- ---------------------------- -- Table structure for bx_attachment -- ---------------------------- DROP TABLE IF EXISTS `bx_attachment`; CREATE TABLE `bx_attachment` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID', `biz_type` varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '业务类型:advance-备用金 reimburse-报销 advance_issue-备用金发放', `biz_id` bigint(20) NOT NULL COMMENT '业务单据ID', `file_name` varchar(256) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '文件名', `file_path` varchar(512) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '文件存储路径', `file_type` varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL, `file_size` bigint(20) DEFAULT NULL COMMENT '文件大小(字节)', `attach_type` varchar(32) COLLATE utf8mb4_unicode_ci DEFAULT 'attachment' COMMENT '附件类型:invoice-发票 attachment-普通附件 issue_proof-发放截图', `sort_order` int(11) NOT NULL DEFAULT '0' COMMENT '排序号', `create_by` varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '创建人', `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `del_flag` tinyint(4) NOT NULL DEFAULT '0' COMMENT '删除标记:0-正常 1-已删除', PRIMARY KEY (`id`) USING BTREE, KEY `idx_biz` (`biz_type`,`biz_id`) USING BTREE ) ENGINE=InnoDB AUTO_INCREMENT=150 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='附件表'; -- ---------------------------- -- Table structure for bx_expense_item -- ---------------------------- DROP TABLE IF EXISTS `bx_expense_item`; CREATE TABLE `bx_expense_item` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID', `parent_id` bigint(20) NOT NULL DEFAULT '0' COMMENT '父级项目ID(0为一级项目)', `item_name` varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '项目名称', `item_code` varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '项目编码', `level` tinyint(4) NOT NULL DEFAULT '1' COMMENT '层级:1-一级 2-二级', `sort_order` int(11) NOT NULL DEFAULT '0' COMMENT '排序号', `status` tinyint(4) NOT NULL DEFAULT '1' COMMENT '状态:1-启用 0-禁用', `remark` varchar(512) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '备注', `create_by` varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '创建人', `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `update_by` varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '更新人', `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `del_flag` tinyint(4) NOT NULL DEFAULT '0' COMMENT '删除标记:0-正常 1-已删除', PRIMARY KEY (`id`) USING BTREE, KEY `idx_parent_id` (`parent_id`) USING BTREE ) ENGINE=InnoDB AUTO_INCREMENT=55 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='费用项目表'; -- ---------------------------- -- Table structure for bx_menu -- ---------------------------- DROP TABLE IF EXISTS `bx_menu`; CREATE TABLE `bx_menu` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID', `parent_id` bigint(20) NOT NULL DEFAULT '0' COMMENT '父级菜单ID(0为顶级)', `menu_name` varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '菜单名称', `menu_code` varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '菜单编码(前端路由标识)', `menu_type` tinyint(4) NOT NULL COMMENT '菜单类型:1-目录 2-菜单页 3-按钮/操作', `path` varchar(256) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '路由路径', `icon` varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '菜单图标', `sort_order` int(11) NOT NULL DEFAULT '0' COMMENT '排序号', `visible` tinyint(4) NOT NULL DEFAULT '1' COMMENT '是否可见:1-可见 0-隐藏', `status` tinyint(4) NOT NULL DEFAULT '1' COMMENT '状态:1-启用 0-禁用', `remark` varchar(512) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '备注', `create_by` varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '创建人', `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `update_by` varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '更新人', `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `del_flag` tinyint(4) NOT NULL DEFAULT '0' COMMENT '删除标记:0-正常 1-已删除', PRIMARY KEY (`id`) USING BTREE, KEY `idx_parent_id` (`parent_id`) USING BTREE ) ENGINE=InnoDB AUTO_INCREMENT=405 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='报销系统菜单表'; -- ---------------------------- -- Table structure for bx_menu_role -- ---------------------------- DROP TABLE IF EXISTS `bx_menu_role`; CREATE TABLE `bx_menu_role` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID', `menu_id` bigint(20) NOT NULL COMMENT '菜单ID', `role_id` bigint(20) NOT NULL COMMENT '角色ID', `create_by` varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '创建人', `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', PRIMARY KEY (`id`) USING BTREE, UNIQUE KEY `uk_menu_role` (`menu_id`,`role_id`) USING BTREE, KEY `idx_role_id` (`role_id`) USING BTREE ) ENGINE=InnoDB AUTO_INCREMENT=108 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='菜单-角色关联表'; -- ---------------------------- -- Table structure for bx_reimburse_apply -- ---------------------------- DROP TABLE IF EXISTS `bx_reimburse_apply`; CREATE TABLE `bx_reimburse_apply` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID', `apply_code` varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '报销单号(如 BX20260424001)', `title` varchar(256) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '报销标题', `applicant_id` bigint(20) NOT NULL COMMENT '申请人用户ID', `applicant_name` varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '申请人姓名(冗余)', `expense_id` bigint(20) NOT NULL COMMENT '费用项目ID(二级项目)', `expense_name` varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '费用项目名称(冗余)', `amount` decimal(14,2) NOT NULL COMMENT '报销金额', `invoice_count` int(11) NOT NULL DEFAULT '0' COMMENT '发票数量', `attach_count` int(11) NOT NULL DEFAULT '0' COMMENT '附件数量', `status` varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'draft' COMMENT '状态:draft-草稿 pending-待审批 approved-审批通过 rejected-审批驳回 paid-已发放 offset-已冲抵', `current_node` varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '当前审批节点名称', `wf_id` bigint(20) DEFAULT NULL COMMENT '关联工作流定义ID', `pay_status` varchar(32) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '支付状态:unpaid-未支付 paid-已发放 offset-已冲抵', `pay_time` datetime DEFAULT NULL COMMENT '支付时间', `pay_user_id` bigint(20) DEFAULT NULL COMMENT '支付操作人ID', `pay_user_name` varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '支付操作人姓名', `actual_amount` decimal(14,2) DEFAULT NULL COMMENT '实际发放金额', `offset_advance_id` bigint(20) DEFAULT NULL COMMENT '冲抵关联的备用金单ID', `offset_amount` decimal(14,2) DEFAULT NULL COMMENT '冲抵金额', `remark` varchar(512) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '备注说明', `create_by` varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '创建人', `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `update_by` varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '更新人', `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `del_flag` tinyint(4) NOT NULL DEFAULT '0' COMMENT '删除标记:0-正常 1-已删除', PRIMARY KEY (`id`) USING BTREE, UNIQUE KEY `uk_apply_code` (`apply_code`) USING BTREE, KEY `idx_applicant_id` (`applicant_id`) USING BTREE, KEY `idx_status` (`status`) USING BTREE, KEY `idx_expense_id` (`expense_id`) USING BTREE ) ENGINE=InnoDB AUTO_INCREMENT=29 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='报销申请单'; -- ---------------------------- -- Table structure for bx_reimburse_approval -- ---------------------------- DROP TABLE IF EXISTS `bx_reimburse_approval`; CREATE TABLE `bx_reimburse_approval` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID', `apply_id` bigint(20) NOT NULL COMMENT '报销申请单ID', `node_order` int(11) NOT NULL COMMENT '节点顺序', `node_name` varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '节点名称', `approver_id` bigint(20) NOT NULL COMMENT '审批人用户ID', `approver_name` varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '审批人姓名', `approval_status` varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '审批结果:approved-通过 rejected-驳回', `approval_opinion` varchar(1024) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '审批意见', `approval_time` datetime NOT NULL COMMENT '审批时间', PRIMARY KEY (`id`) USING BTREE, KEY `idx_apply_id` (`apply_id`) USING BTREE ) ENGINE=InnoDB AUTO_INCREMENT=41 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='报销审批记录表'; -- ---------------------------- -- Table structure for bx_reimburse_detail -- ---------------------------- DROP TABLE IF EXISTS `bx_reimburse_detail`; CREATE TABLE `bx_reimburse_detail` ( `id` bigint(20) NOT NULL AUTO_INCREMENT, `reimburse_id` bigint(20) NOT NULL COMMENT '报销单ID', `expense_id` bigint(20) NOT NULL COMMENT '费用项目ID', `expense_name` varchar(128) NOT NULL COMMENT '费用项目名称', `amount` decimal(14,2) NOT NULL COMMENT '报销金额', `remark` varchar(512) DEFAULT NULL COMMENT '备注', `del_flag` smallint(6) NOT NULL DEFAULT '0', `create_by` varchar(64) DEFAULT NULL, `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, PRIMARY KEY (`id`) USING BTREE, KEY `idx_reimburse_id` (`reimburse_id`) USING BTREE ) ENGINE=InnoDB AUTO_INCREMENT=53 DEFAULT CHARSET=utf8mb4 COMMENT='报销明细'; -- ---------------------------- -- Table structure for bx_reimburse_offset -- ---------------------------- DROP TABLE IF EXISTS `bx_reimburse_offset`; CREATE TABLE `bx_reimburse_offset` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID', `reimburse_id` bigint(20) NOT NULL COMMENT '报销申请单ID', `advance_id` bigint(20) NOT NULL COMMENT '备用金申请单ID', `offset_amount` decimal(14,2) NOT NULL COMMENT '冲抵金额', `remark` varchar(512) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '备注', `create_by` varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '创建人', `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', PRIMARY KEY (`id`) USING BTREE, KEY `idx_reimburse_id` (`reimburse_id`) USING BTREE, KEY `idx_advance_id` (`advance_id`) USING BTREE ) ENGINE=InnoDB AUTO_INCREMENT=10 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='报销单-备用金冲抵关联表'; -- ---------------------------- -- Table structure for bx_role -- ---------------------------- DROP TABLE IF EXISTS `bx_role`; CREATE TABLE `bx_role` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID', `role_name` varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '角色名称', `role_code` varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '角色编码(如 ADMIN、FINANCE、EMPLOYEE)', `sort_order` int(11) NOT NULL DEFAULT '0' COMMENT '排序号', `status` tinyint(4) NOT NULL DEFAULT '1' COMMENT '状态:1-启用 0-禁用', `remark` varchar(512) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '备注', `create_by` varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '创建人', `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `update_by` varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '更新人', `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `del_flag` tinyint(4) NOT NULL DEFAULT '0' COMMENT '删除标记:0-正常 1-已删除', PRIMARY KEY (`id`) USING BTREE, UNIQUE KEY `uk_role_code` (`role_code`) USING BTREE ) ENGINE=InnoDB AUTO_INCREMENT=9 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='角色表'; -- ---------------------------- -- Table structure for bx_role_user -- ---------------------------- DROP TABLE IF EXISTS `bx_role_user`; CREATE TABLE `bx_role_user` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID', `role_id` bigint(20) NOT NULL COMMENT '角色ID', `user_id` bigint(20) NOT NULL COMMENT '用户ID', `create_by` varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '创建人', `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', PRIMARY KEY (`id`) USING BTREE, UNIQUE KEY `uk_role_user` (`role_id`,`user_id`) USING BTREE, KEY `idx_user_id` (`user_id`) USING BTREE ) ENGINE=InnoDB AUTO_INCREMENT=62 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='角色-用户关联表'; -- ---------------------------- -- Table structure for bx_user -- ---------------------------- DROP TABLE IF EXISTS `bx_user`; CREATE TABLE `bx_user` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID', `username` varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '用户名(登录账号)', `password` varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '密码(加密存储)', `real_name` varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '真实姓名', `phone` varchar(20) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '手机号', `email` varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '邮箱', `avatar` varchar(256) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '头像URL', `status` tinyint(4) NOT NULL DEFAULT '1' COMMENT '状态:1-启用 0-禁用', `remark` varchar(512) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '备注', `create_by` varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '创建人', `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `update_by` varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '更新人', `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `del_flag` tinyint(4) NOT NULL DEFAULT '0' COMMENT '删除标记:0-正常 1-已删除', PRIMARY KEY (`id`) USING BTREE, UNIQUE KEY `uk_username` (`username`) USING BTREE ) ENGINE=InnoDB AUTO_INCREMENT=38 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='用户表'; -- ---------------------------- -- Table structure for bx_workflow_def -- ---------------------------- DROP TABLE IF EXISTS `bx_workflow_def`; CREATE TABLE `bx_workflow_def` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID', `biz_type` varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '业务类型:advance-备用金 reimburse-报销单', `wf_name` varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '工作流名称', `status` tinyint(4) NOT NULL DEFAULT '1' COMMENT '状态:1-启用 0-禁用', `remark` varchar(512) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '备注', `create_by` varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '创建人', `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `update_by` varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '更新人', `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `del_flag` tinyint(4) NOT NULL DEFAULT '0' COMMENT '删除标记:0-正常 1-已删除', PRIMARY KEY (`id`) USING BTREE, KEY `idx_biz_type` (`biz_type`) USING BTREE ) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='工作流定义表'; -- ---------------------------- -- Table structure for bx_workflow_node -- ---------------------------- DROP TABLE IF EXISTS `bx_workflow_node`; CREATE TABLE `bx_workflow_node` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID', `wf_id` bigint(20) NOT NULL COMMENT '工作流定义ID', `node_name` varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '节点名称(如:主管审批、财务复核)', `node_order` int(11) NOT NULL DEFAULT '0' COMMENT '节点顺序(从小到大执行)', `approver_id` bigint(20) DEFAULT NULL COMMENT '审批人用户ID', `approver_name` varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '审批人姓名(冗余)', `create_by` varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '创建人', `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `update_by` varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '更新人', `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', PRIMARY KEY (`id`) USING BTREE, KEY `idx_wf_id` (`wf_id`) USING BTREE ) ENGINE=InnoDB AUTO_INCREMENT=92 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='工作流节点表'; -- ---------------------------- -- Table structure for crm_clue -- ---------------------------- DROP TABLE IF EXISTS `crm_clue`; CREATE TABLE `crm_clue` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID', `clue_name` varchar(100) NOT NULL COMMENT '线索姓名', `mobile` varchar(20) NOT NULL COMMENT '手机号', `company` varchar(200) DEFAULT NULL COMMENT '公司名称', `customer_type` varchar(20) DEFAULT NULL COMMENT '客户类型(company-企业/person-个人)', `telephone` varchar(30) DEFAULT NULL COMMENT '固定电话', `email` varchar(100) DEFAULT NULL COMMENT '邮箱', `title` varchar(10) DEFAULT NULL COMMENT '称呼(先生/女士/其他)', `position` varchar(50) DEFAULT NULL COMMENT '职位', `source` varchar(20) NOT NULL COMMENT '线索来源(网站留言/电话咨询/展会/市场活动/老客户推荐/广告投放/社交媒体/其他)', `level` varchar(10) DEFAULT 'unrated' COMMENT '线索等级(A/B/C/unrated)', `industry` varchar(50) DEFAULT NULL COMMENT '所属行业', `park_area` varchar(100) DEFAULT NULL COMMENT '所在园区', `province` varchar(50) DEFAULT NULL COMMENT '省', `city` varchar(50) DEFAULT NULL COMMENT '市', `district` varchar(50) DEFAULT NULL COMMENT '区', `address` varchar(255) DEFAULT NULL COMMENT '详细地址', `website` varchar(500) DEFAULT NULL COMMENT '客户网站', `intent_products` varchar(500) DEFAULT NULL COMMENT '意向产品(多个用逗号分隔)', `expect_time` date DEFAULT NULL COMMENT '预计购买时间', `budget` varchar(20) DEFAULT NULL COMMENT '预算范围(1万以下/1-5万/5-10万/10-50万/50万以上/未知)', `requirement` text COMMENT '需求描述', `status` varchar(20) DEFAULT 'new' COMMENT '线索状态(new-新线索/follow-跟进中/invalid-无效/converted-已转化)', `owner_user_id` bigint(20) DEFAULT NULL COMMENT '负责人ID', `owner_user_name` varchar(50) DEFAULT NULL COMMENT '负责人姓名(冗余字段)', `last_time` datetime DEFAULT NULL COMMENT '最后跟进时间', `next_time` datetime DEFAULT NULL COMMENT '下次联系时间', `follow_count` int(11) DEFAULT '0' COMMENT '跟进次数', `is_converted` tinyint(1) DEFAULT '0' COMMENT '是否已转化(0-否 1-是)', `converted_time` datetime DEFAULT NULL COMMENT '转化时间', `customer_id` bigint(20) DEFAULT NULL COMMENT '转化的客户ID', `converted_by` bigint(20) DEFAULT NULL COMMENT '转化操作人', `assign_time` datetime DEFAULT NULL COMMENT '分配时间', `assign_by` bigint(20) DEFAULT NULL COMMENT '分配人', `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `del_flag` tinyint(1) DEFAULT '0' COMMENT '删除标志(0存在 1删除)', `version` int(11) DEFAULT '0' COMMENT '版本号', `remark` varchar(500) DEFAULT NULL COMMENT '备注', PRIMARY KEY (`id`) USING BTREE, KEY `idx_mobile` (`mobile`) USING BTREE, KEY `idx_owner` (`owner_user_id`) USING BTREE, KEY `idx_status` (`status`) USING BTREE, KEY `idx_level` (`level`) USING BTREE, KEY `idx_source` (`source`) USING BTREE, KEY `idx_create_time` (`create_time`) USING BTREE, KEY `idx_next_time` (`next_time`) USING BTREE, KEY `idx_tenant` (`tenant_id`) USING BTREE, KEY `idx_park_area` (`park_area`) USING BTREE ) ENGINE=InnoDB AUTO_INCREMENT=13 DEFAULT CHARSET=utf8mb4 COMMENT='CRM-线索主表'; -- ---------------------------- -- Table structure for crm_clue_follow -- ---------------------------- DROP TABLE IF EXISTS `crm_clue_follow`; CREATE TABLE `crm_clue_follow` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID', `clue_id` bigint(20) NOT NULL COMMENT '线索ID', `clue_name` varchar(100) DEFAULT NULL COMMENT '线索姓名(冗余)', `follow_type` varchar(20) NOT NULL COMMENT '跟进方式(电话/微信/邮件/拜访/其他)', `follow_content` text NOT NULL COMMENT '跟进内容', `next_time` datetime DEFAULT NULL COMMENT '下次联系时间', `attachments` varchar(1000) DEFAULT NULL COMMENT '附件(多个用逗号分隔)', `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者(跟进人)', `create_by_name` varchar(50) DEFAULT NULL COMMENT '跟进人姓名(冗余)', `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间(跟进时间)', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `del_flag` tinyint(1) DEFAULT '0' COMMENT '删除标志(0存在 1删除)', `version` int(11) DEFAULT '0' COMMENT '版本号', `remark` varchar(500) DEFAULT NULL COMMENT '备注', PRIMARY KEY (`id`) USING BTREE, KEY `idx_clue_id` (`clue_id`) USING BTREE, KEY `idx_create_by` (`create_by`) USING BTREE, KEY `idx_create_time` (`create_time`) USING BTREE, KEY `idx_next_time` (`next_time`) USING BTREE, KEY `idx_tenant` (`tenant_id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='CRM-线索跟进记录表'; -- ---------------------------- -- Table structure for crm_contact -- ---------------------------- DROP TABLE IF EXISTS `crm_contact`; CREATE TABLE `crm_contact` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID', `customer_id` bigint(20) NOT NULL COMMENT '客户ID', `customer_name` varchar(200) DEFAULT NULL COMMENT '客户名称(冗余)', `contact_name` varchar(100) NOT NULL COMMENT '联系人姓名', `gender` varchar(10) DEFAULT NULL COMMENT '性别(male-男/female-女)', `mobile` varchar(20) DEFAULT NULL COMMENT '手机号', `telephone` varchar(30) DEFAULT NULL COMMENT '固定电话', `email` varchar(100) DEFAULT NULL COMMENT '邮箱', `wechat` varchar(100) DEFAULT NULL COMMENT '微信号', `qq` varchar(20) DEFAULT NULL COMMENT 'QQ号', `department` varchar(100) DEFAULT NULL COMMENT '部门', `position` varchar(50) DEFAULT NULL COMMENT '职位', `role` varchar(20) DEFAULT NULL COMMENT '角色(decision-决策人/manager-管理者/user-使用者/other-其他)', `birthday` date DEFAULT NULL COMMENT '生日', `address` varchar(255) DEFAULT NULL COMMENT '住址', `is_key` tinyint(1) DEFAULT '0' COMMENT '是否关键决策人(0-否 1-是)', `is_primary` tinyint(1) DEFAULT '0' COMMENT '是否主要联系人(0-否 1-是)', `status` varchar(20) DEFAULT 'active' COMMENT '状态(active-在职/leave-离职)', `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `del_flag` tinyint(1) DEFAULT '0' COMMENT '删除标志(0存在 1删除)', `version` int(11) DEFAULT '0' COMMENT '版本号', `remark` varchar(500) DEFAULT NULL COMMENT '备注', PRIMARY KEY (`id`) USING BTREE, KEY `idx_customer_id` (`customer_id`) USING BTREE, KEY `idx_mobile` (`mobile`) USING BTREE, KEY `idx_is_key` (`is_key`) USING BTREE, KEY `idx_tenant` (`tenant_id`) USING BTREE ) ENGINE=InnoDB AUTO_INCREMENT=2060210419503165443 DEFAULT CHARSET=utf8mb4 COMMENT='CRM-联系人表'; -- ---------------------------- -- Table structure for crm_contract -- ---------------------------- DROP TABLE IF EXISTS `crm_contract`; CREATE TABLE `crm_contract` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID', `contract_no` varchar(50) NOT NULL COMMENT '合同编号(CON+yyyyMMdd+4位流水号)', `contract_name` varchar(200) NOT NULL COMMENT '合同名称', `customer_id` bigint(20) NOT NULL COMMENT '客户ID', `customer_name` varchar(200) DEFAULT NULL COMMENT '客户名称(冗余字段)', `opportunity_id` bigint(20) DEFAULT NULL COMMENT '商机ID', `quote_id` bigint(20) DEFAULT NULL COMMENT '报价单ID', `parent_contract_id` bigint(20) DEFAULT NULL COMMENT '原合同ID(续签时关联)', `renewal_count` int(11) DEFAULT '0' COMMENT '续签次数', `template_id` bigint(20) DEFAULT NULL COMMENT '合同模板ID', `contract_template` varchar(50) DEFAULT 'shanxia' COMMENT '合同模版(shanxia-山峡模版/customer-客户模版)', `contact_id` bigint(20) DEFAULT NULL COMMENT '联系人ID', `contact_name` varchar(50) DEFAULT NULL COMMENT '联系人姓名(冗余字段)', `contact_mobile` varchar(20) DEFAULT NULL COMMENT '联系人手机(冗余字段)', `contract_type` varchar(20) NOT NULL DEFAULT 'sale' COMMENT '合同类型(sale-销售合同/service-服务合同/lease-租赁合同/other-其他)', `contract_nature` varchar(20) DEFAULT 'new' COMMENT '合同性质(new-新签/renewal-续签/change-变更)', `amount` decimal(15,2) NOT NULL DEFAULT '0.00' COMMENT '合同金额', `currency` varchar(10) DEFAULT 'CNY' COMMENT '币种(CNY-人民币/USD-美元/EUR-欧元)', `tax_rate` decimal(5,2) DEFAULT '6.00' COMMENT '税率(%)', `amount_with_tax` decimal(15,2) DEFAULT '0.00' COMMENT '含税金额', `sign_date` date DEFAULT NULL COMMENT '签订日期', `actual_sign_date` date DEFAULT NULL COMMENT '实际签订日期', `start_date` date DEFAULT NULL COMMENT '开始日期', `end_date` date DEFAULT NULL COMMENT '结束日期', `contract_period` int(11) DEFAULT NULL COMMENT '合同期限(月)', `status` varchar(20) NOT NULL DEFAULT 'draft' COMMENT '合同状态(draft-草稿/approving-审批中/approved-已审批/executing-执行中/finished-已完成/invalid-已作废)', `performance_status` varchar(20) DEFAULT 'normal' COMMENT '履约状态(normal-正常/delayed-延期/abnormal-异常/completed-已完成)', `performance_rate` decimal(5,2) DEFAULT '0.00' COMMENT '履约完成度(%)', `customer_satisfaction` int(11) DEFAULT NULL COMMENT '客户满意度(1-5星)', `approval_status` varchar(20) DEFAULT NULL COMMENT '审批状态(pending-待审批/approved-已通过/rejected-已驳回)', `approval_flow_id` bigint(20) DEFAULT NULL COMMENT '审批流程ID(关联工作流)', `contract_file` varchar(500) DEFAULT NULL COMMENT '合同文件路径(扫描件或电子版)', `attachment_files` varchar(1000) DEFAULT NULL COMMENT '附件文件(多个文件用逗号分隔)', `owner_user_id` bigint(20) NOT NULL COMMENT '负责人ID', `owner_user_name` varchar(50) DEFAULT NULL COMMENT '负责人姓名(冗余字段)', `received_amount` decimal(15,2) DEFAULT '0.00' COMMENT '已回款金额', `unreceived_amount` decimal(15,2) DEFAULT '0.00' COMMENT '未回款金额', `invoice_amount` decimal(15,2) DEFAULT '0.00' COMMENT '已开票金额', `uninvoice_amount` decimal(15,2) DEFAULT '0.00' COMMENT '未开票金额', `party_a` varchar(200) DEFAULT NULL COMMENT '甲方(客户方)', `party_a_address` varchar(255) DEFAULT NULL COMMENT '甲方地址', `party_a_contact` varchar(50) DEFAULT NULL COMMENT '甲方联系人', `party_a_mobile` varchar(20) DEFAULT NULL COMMENT '甲方联系电话', `party_a_legal_person` varchar(50) DEFAULT NULL COMMENT '甲方法定代表人', `party_a_agent` varchar(50) DEFAULT NULL COMMENT '甲方代理人', `party_a_phone_fax` varchar(50) DEFAULT NULL COMMENT '甲方电话/传真', `party_a_bank` varchar(100) DEFAULT NULL COMMENT '甲方开户银行', `party_a_account` varchar(50) DEFAULT NULL COMMENT '甲方银行账号', `party_b` varchar(200) DEFAULT NULL COMMENT '乙方(我方)', `party_b_address` varchar(255) DEFAULT NULL COMMENT '乙方地址', `party_b_contact` varchar(50) DEFAULT NULL COMMENT '乙方联系人', `party_b_mobile` varchar(20) DEFAULT NULL COMMENT '乙方联系电话', `party_b_legal_person` varchar(100) DEFAULT NULL COMMENT '乙方法定代表人', `party_b_agent` varchar(100) DEFAULT NULL COMMENT '乙方代理人', `party_b_phone_fax` varchar(100) DEFAULT NULL COMMENT '乙方电话/传真', `party_b_bank` varchar(200) DEFAULT NULL COMMENT '乙方开户银行', `party_b_account` varchar(100) DEFAULT NULL COMMENT '乙方银行账号', `payment_terms` text COMMENT '付款条款', `delivery_terms` text COMMENT '交付条款', `contract_terms` text COMMENT '合同条款', `invalid_reason` varchar(500) DEFAULT NULL COMMENT '作废原因', `invalid_time` datetime DEFAULT NULL COMMENT '作废时间', `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `del_flag` tinyint(1) DEFAULT '0' COMMENT '删除标志(0存在 1删除)', `version` int(11) DEFAULT '0' COMMENT '版本号(乐观锁)', `remark` varchar(500) DEFAULT NULL COMMENT '备注', `template_content` longtext COMMENT '合同模板内容(富文本HTML)', `settlement_clause_drafts` longtext COMMENT '第五条结算方式草稿(按结算方式区分的JSON)', `supplier_id` bigint(20) DEFAULT NULL COMMENT '供方主体ID(关联crm_supplier_info表)', `settlement_method` varchar(50) DEFAULT NULL COMMENT '结算方式(arrive_payment-货到付款,advance_payment-款到发货)', PRIMARY KEY (`id`) USING BTREE, UNIQUE KEY `uk_contract_no_del_flag` (`contract_no`,`del_flag`) USING BTREE, KEY `idx_customer_id` (`customer_id`) USING BTREE, KEY `idx_opportunity_id` (`opportunity_id`) USING BTREE, KEY `idx_quote_id` (`quote_id`) USING BTREE, KEY `idx_owner_user_id` (`owner_user_id`) USING BTREE, KEY `idx_status` (`status`) USING BTREE, KEY `idx_approval_status` (`approval_status`) USING BTREE, KEY `idx_sign_date` (`sign_date`) USING BTREE, KEY `idx_end_date` (`end_date`) USING BTREE, KEY `idx_tenant_id` (`tenant_id`) USING BTREE, KEY `idx_create_time` (`create_time`) USING BTREE, KEY `idx_contract_nature` (`contract_nature`) USING BTREE, KEY `idx_parent_contract_id` (`parent_contract_id`) USING BTREE, KEY `idx_performance_status` (`performance_status`) USING BTREE, KEY `idx_supplier_id` (`supplier_id`) ) ENGINE=InnoDB AUTO_INCREMENT=2060286352016764930 DEFAULT CHARSET=utf8mb4 COMMENT='CRM-合同主表'; -- ---------------------------- -- Table structure for crm_contract_approval -- ---------------------------- DROP TABLE IF EXISTS `crm_contract_approval`; CREATE TABLE `crm_contract_approval` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID', `contract_id` bigint(20) NOT NULL COMMENT '合同ID', `flow_id` bigint(20) DEFAULT NULL COMMENT '审批流程ID(关联工作流)', `step` int(11) NOT NULL DEFAULT '1' COMMENT '审批步骤(第几步)', `step_name` varchar(100) DEFAULT NULL COMMENT '步骤名称', `approver_id` bigint(20) NOT NULL COMMENT '审批人ID', `approver_name` varchar(50) DEFAULT NULL COMMENT '审批人姓名', `approver_dept` varchar(100) DEFAULT NULL COMMENT '审批人部门', `approval_result` varchar(20) DEFAULT 'pending' COMMENT '审批结果(pending-待审批/approved-已通过/rejected-已驳回)', `approval_opinion` text COMMENT '审批意见', `approval_time` datetime DEFAULT NULL COMMENT '审批时间', `approval_duration` int(11) DEFAULT NULL COMMENT '审批耗时(小时)', `attachments` varchar(1000) DEFAULT NULL COMMENT '附件', `is_current` tinyint(1) DEFAULT '1' COMMENT '是否当前步骤(0否 1是)', `sort` int(11) DEFAULT '0' COMMENT '排序号', `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `del_flag` tinyint(1) DEFAULT '0' COMMENT '删除标志(0存在 1删除)', `version` int(11) DEFAULT '0' COMMENT '版本号(乐观锁)', `remark` varchar(500) DEFAULT NULL COMMENT '备注', PRIMARY KEY (`id`) USING BTREE, KEY `idx_contract_id` (`contract_id`) USING BTREE, KEY `idx_approver_id` (`approver_id`) USING BTREE, KEY `idx_approval_result` (`approval_result`) USING BTREE, KEY `idx_is_current` (`is_current`) USING BTREE, KEY `idx_tenant_id` (`tenant_id`) USING BTREE ) ENGINE=InnoDB AUTO_INCREMENT=2056245436624879618 DEFAULT CHARSET=utf8mb4 COMMENT='CRM-合同审批记录表'; -- ---------------------------- -- Table structure for crm_contract_change -- ---------------------------- DROP TABLE IF EXISTS `crm_contract_change`; CREATE TABLE `crm_contract_change` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID', `contract_id` bigint(20) NOT NULL COMMENT '合同ID', `contract_no` varchar(50) DEFAULT NULL COMMENT '合同编号(冗余)', `change_type` varchar(50) NOT NULL COMMENT '变更类型(amount-金额变更/period-期限变更/product-产品变更/terms-条款变更/other-其他)', `change_reason` varchar(500) NOT NULL COMMENT '变更原因', `change_content` text COMMENT '变更内容描述', `old_value` text COMMENT '变更前值(JSON格式)', `new_value` text COMMENT '变更后值(JSON格式)', `change_amount` decimal(15,2) DEFAULT NULL COMMENT '变更金额(用于金额变更)', `approval_status` varchar(20) DEFAULT 'pending' COMMENT '审批状态(pending-待审批/approved-已通过/rejected-已驳回)', `approver_id` bigint(20) DEFAULT NULL COMMENT '审批人ID', `approver_name` varchar(50) DEFAULT NULL COMMENT '审批人姓名', `approval_time` datetime DEFAULT NULL COMMENT '审批时间', `approval_opinion` varchar(500) DEFAULT NULL COMMENT '审批意见', `attachment_files` varchar(1000) DEFAULT NULL COMMENT '附件文件(变更协议等)', `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `del_flag` tinyint(1) DEFAULT '0' COMMENT '删除标志(0存在 1删除)', `remark` varchar(500) DEFAULT NULL COMMENT '备注', PRIMARY KEY (`id`) USING BTREE, KEY `idx_contract_id` (`contract_id`) USING BTREE, KEY `idx_change_type` (`change_type`) USING BTREE, KEY `idx_approval_status` (`approval_status`) USING BTREE, KEY `idx_tenant_id` (`tenant_id`) USING BTREE, KEY `idx_create_time` (`create_time`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='CRM-合同变更记录表'; -- ---------------------------- -- Table structure for crm_contract_product -- ---------------------------- DROP TABLE IF EXISTS `crm_contract_product`; CREATE TABLE `crm_contract_product` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID', `contract_id` bigint(20) NOT NULL COMMENT '合同ID', `product_id` bigint(20) NOT NULL COMMENT '产品ID', `product_name` varchar(200) NOT NULL COMMENT '产品名称', `product_no` varchar(50) DEFAULT NULL COMMENT '产品编号', `category_id` bigint(20) DEFAULT NULL COMMENT '产品分类ID', `category_name` varchar(100) DEFAULT NULL COMMENT '产品分类名称', `model` varchar(100) DEFAULT NULL COMMENT '规格型号', `unit` varchar(20) DEFAULT '件' COMMENT '单位', `quantity` decimal(20,4) NOT NULL COMMENT '数量', `price` decimal(15,2) NOT NULL DEFAULT '0.00' COMMENT '单价', `discount` decimal(5,2) DEFAULT '0.00' COMMENT '折扣(百分比)', `tax_rate` decimal(5,2) DEFAULT '6.00' COMMENT '税率(%)', `tax_amount` decimal(15,2) DEFAULT '0.00' COMMENT '税费金额', `subtotal` decimal(15,2) NOT NULL DEFAULT '0.00' COMMENT '小计金额', `delivery_date` date DEFAULT NULL COMMENT '交付日期', `delivery_status` varchar(20) DEFAULT 'pending' COMMENT '交付状态(pending-待交付/partial-部分交付/delivered-已交付)', `delivered_quantity` decimal(20,4) DEFAULT '0.0000' COMMENT '已交付数量', `description` varchar(1000) DEFAULT NULL COMMENT '产品描述', `package_spec` varchar(200) DEFAULT NULL COMMENT '包装规格', `delivery_method` varchar(100) DEFAULT NULL COMMENT '送货方式', `sort` int(11) DEFAULT '0' COMMENT '排序号', `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `del_flag` tinyint(1) DEFAULT '0' COMMENT '删除标志(0存在 1删除)', `version` int(11) DEFAULT '0' COMMENT '版本号(乐观锁)', `remark` varchar(500) DEFAULT NULL COMMENT '备注', PRIMARY KEY (`id`) USING BTREE, KEY `idx_contract_id` (`contract_id`) USING BTREE, KEY `idx_product_id` (`product_id`) USING BTREE, KEY `idx_delivery_status` (`delivery_status`) USING BTREE, KEY `idx_tenant_id` (`tenant_id`) USING BTREE ) ENGINE=InnoDB AUTO_INCREMENT=2060288831366328322 DEFAULT CHARSET=utf8mb4 COMMENT='CRM-合同产品明细表'; -- ---------------------------- -- Table structure for crm_contract_product_price_tier -- ---------------------------- DROP TABLE IF EXISTS `crm_contract_product_price_tier`; CREATE TABLE `crm_contract_product_price_tier` ( `id` bigint(20) NOT NULL COMMENT '主键ID', `contract_id` bigint(20) NOT NULL COMMENT '合同ID', `contract_product_id` bigint(20) NOT NULL COMMENT '合同产品明细ID', `start_date` date NOT NULL COMMENT '区间开始日期', `end_date` date NOT NULL COMMENT '区间结束日期', `price` decimal(15,2) NOT NULL COMMENT '含税单价', `letter_oss_ids` varchar(4000) DEFAULT NULL COMMENT '调价函OSS ID列表(JSON字符串数组,如["id1","id2"])', `letter_oss_id` bigint(20) DEFAULT NULL COMMENT '调价函单附件OSS ID(废弃,请使用 letter_oss_ids)', `sort` int(11) DEFAULT '0' COMMENT '排序号', `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `del_flag` tinyint(1) DEFAULT '0' COMMENT '删除标志(0存在 1删除)', PRIMARY KEY (`id`), KEY `idx_contract_id` (`contract_id`), KEY `idx_contract_product_id` (`contract_product_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='CRM-框架合同产品调价区间'; -- ---------------------------- -- Table structure for crm_contract_template -- ---------------------------- DROP TABLE IF EXISTS `crm_contract_template`; CREATE TABLE `crm_contract_template` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID', `template_no` varchar(50) NOT NULL COMMENT '模板编号', `template_name` varchar(200) NOT NULL COMMENT '模板名称', `contract_type` varchar(20) DEFAULT NULL COMMENT '适用合同类型(sale-销售/service-服务等)', `template_content` text COMMENT '模板内容(富文本)', `payment_terms` text COMMENT '付款条款模板', `delivery_terms` text COMMENT '交付条款模板', `contract_terms` text COMMENT '合同条款模板', `party_b` varchar(200) DEFAULT NULL COMMENT '乙方(我方)默认名称', `party_b_address` varchar(255) DEFAULT NULL COMMENT '乙方地址', `party_b_contact` varchar(50) DEFAULT NULL COMMENT '乙方联系人', `party_b_mobile` varchar(20) DEFAULT NULL COMMENT '乙方联系电话', `default_currency` varchar(10) DEFAULT 'CNY' COMMENT '默认币种', `default_tax_rate` decimal(5,2) DEFAULT '6.00' COMMENT '默认税率(%)', `default_period` int(11) DEFAULT '12' COMMENT '默认合同期限(月)', `is_active` tinyint(1) DEFAULT '1' COMMENT '是否启用(0-停用 1-启用)', `usage_count` int(11) DEFAULT '0' COMMENT '使用次数', `sort` int(11) DEFAULT '0' COMMENT '排序号', `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `del_flag` tinyint(1) DEFAULT '0' COMMENT '删除标志(0存在 1删除)', `remark` varchar(500) DEFAULT NULL COMMENT '备注', PRIMARY KEY (`id`) USING BTREE, UNIQUE KEY `uk_template_no` (`template_no`) USING BTREE, KEY `idx_contract_type` (`contract_type`) USING BTREE, KEY `idx_is_active` (`is_active`) USING BTREE, KEY `idx_tenant_id` (`tenant_id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='CRM-合同模板表'; -- ---------------------------- -- Table structure for crm_customer -- ---------------------------- DROP TABLE IF EXISTS `crm_customer`; CREATE TABLE `crm_customer` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID', `customer_no` varchar(50) NOT NULL COMMENT '客户编号(唯一)', `customer_name` varchar(200) NOT NULL COMMENT '客户名称', `short_name` varchar(100) DEFAULT NULL COMMENT '客户简称', `customer_type` varchar(20) DEFAULT 'company' COMMENT '客户类型(company-企业/person-个人)', `mobile` varchar(20) DEFAULT NULL COMMENT '手机号', `telephone` varchar(30) DEFAULT NULL COMMENT '固定电话', `email` varchar(100) DEFAULT NULL COMMENT '邮箱', `website` varchar(500) DEFAULT NULL COMMENT '客户网站', `level` varchar(20) DEFAULT 'normal' COMMENT '客户级别(key-重点/normal-普通/potential-潜在)', `source` varchar(20) DEFAULT NULL COMMENT '客户来源', `industry` varchar(50) DEFAULT NULL COMMENT '所属行业', `park_area` varchar(100) DEFAULT NULL COMMENT '所在园区', `payment_terms` varchar(500) DEFAULT NULL COMMENT '收付款条件(如:预付30%、账期30天等)', `scale` varchar(20) DEFAULT NULL COMMENT '企业规模(1-50人/50-200人/200-500人/500人以上)', `province` varchar(50) DEFAULT NULL COMMENT '省', `city` varchar(50) DEFAULT NULL COMMENT '市', `district` varchar(50) DEFAULT NULL COMMENT '区', `address` varchar(255) DEFAULT NULL COMMENT '详细地址', `status` varchar(20) DEFAULT 'normal' COMMENT '客户状态(normal-正常/pool-公海/invalid-无效)', `deal_status` varchar(20) DEFAULT 'not_deal' COMMENT '成交状态(not_deal-未成交/dealed-已成交/lost-已流失)', `owner_user_id` bigint(20) DEFAULT NULL COMMENT '负责人ID', `owner_user_name` varchar(50) DEFAULT NULL COMMENT '负责人姓名(冗余)', `last_time` datetime DEFAULT NULL COMMENT '最后跟进时间', `next_time` datetime DEFAULT NULL COMMENT '下次联系时间', `follow_count` int(11) DEFAULT '0' COMMENT '跟进次数', `deal_time` datetime DEFAULT NULL COMMENT '成交时间', `deal_amount` decimal(15,2) DEFAULT '0.00' COMMENT '累计成交金额', `contact_count` int(11) DEFAULT '0' COMMENT '联系人数量', `opportunity_count` int(11) DEFAULT '0' COMMENT '商机数量', `contract_count` int(11) DEFAULT '0' COMMENT '合同数量', `into_pool_time` datetime DEFAULT NULL COMMENT '进入公海时间', `into_pool_by` bigint(20) DEFAULT NULL COMMENT '进入公海操作人ID', `into_pool_reason` varchar(500) DEFAULT NULL COMMENT '进入公海原因', `claim_time` datetime DEFAULT NULL COMMENT '领取时间', `assign_time` datetime DEFAULT NULL COMMENT '分配时间', `assign_by` bigint(20) DEFAULT NULL COMMENT '分配人ID', `protect_time` datetime DEFAULT NULL COMMENT '保护到期时间', `clue_id` bigint(20) DEFAULT NULL COMMENT '关联线索ID(从线索转化)', `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `del_flag` tinyint(1) DEFAULT '0' COMMENT '删除标志(0存在 1删除)', `version` int(11) DEFAULT '0' COMMENT '版本号', `remark` varchar(500) DEFAULT NULL COMMENT '备注', `business_license_images` varchar(1000) DEFAULT NULL COMMENT '营业执照图片OSS ID(多个用逗号分隔)', `business_permit_images` varchar(1000) DEFAULT NULL COMMENT '经营许可证图片OSS ID(多个用逗号分隔)', `other_cert_images` varchar(1000) DEFAULT NULL COMMENT '其他证件图片OSS ID(多个用逗号分隔)', PRIMARY KEY (`id`) USING BTREE, UNIQUE KEY `uk_customer_no_del_flag` (`customer_no`,`del_flag`) USING BTREE, KEY `idx_mobile` (`mobile`) USING BTREE, KEY `idx_owner` (`owner_user_id`) USING BTREE, KEY `idx_status` (`status`) USING BTREE, KEY `idx_level` (`level`) USING BTREE, KEY `idx_deal_status` (`deal_status`) USING BTREE, KEY `idx_source` (`source`) USING BTREE, KEY `idx_create_time` (`create_time`) USING BTREE, KEY `idx_next_time` (`next_time`) USING BTREE, KEY `idx_clue` (`clue_id`) USING BTREE, KEY `idx_tenant` (`tenant_id`) USING BTREE, KEY `idx_park_area` (`park_area`) USING BTREE ) ENGINE=InnoDB AUTO_INCREMENT=2060210343636594690 DEFAULT CHARSET=utf8mb4 COMMENT='CRM-客户主表'; -- ---------------------------- -- Table structure for crm_customer_follow -- ---------------------------- DROP TABLE IF EXISTS `crm_customer_follow`; CREATE TABLE `crm_customer_follow` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID', `customer_id` bigint(20) NOT NULL COMMENT '客户ID', `customer_name` varchar(200) DEFAULT NULL COMMENT '客户名称(冗余)', `contact_id` bigint(20) DEFAULT NULL COMMENT '联系人ID', `contact_name` varchar(100) DEFAULT NULL COMMENT '联系人姓名(冗余)', `follow_type` varchar(20) NOT NULL COMMENT '跟进方式(电话/微信/邮件/拜访/其他)', `follow_content` text NOT NULL COMMENT '跟进内容', `next_time` datetime DEFAULT NULL COMMENT '下次联系时间', `attachments` varchar(1000) DEFAULT NULL COMMENT '附件(多个用逗号分隔)', `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者(跟进人)', `create_by_name` varchar(50) DEFAULT NULL COMMENT '跟进人姓名(冗余)', `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间(跟进时间)', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `del_flag` tinyint(1) DEFAULT '0' COMMENT '删除标志(0存在 1删除)', `version` int(11) DEFAULT '0' COMMENT '版本号', `remark` varchar(500) DEFAULT NULL COMMENT '备注', PRIMARY KEY (`id`) USING BTREE, KEY `idx_customer_id` (`customer_id`) USING BTREE, KEY `idx_contact_id` (`contact_id`) USING BTREE, KEY `idx_create_by` (`create_by`) USING BTREE, KEY `idx_create_time` (`create_time`) USING BTREE, KEY `idx_next_time` (`next_time`) USING BTREE, KEY `idx_tenant` (`tenant_id`) USING BTREE ) ENGINE=InnoDB AUTO_INCREMENT=1985641912854016003 DEFAULT CHARSET=utf8mb4 COMMENT='CRM-客户跟进记录表'; -- ---------------------------- -- Table structure for crm_customer_pool -- ---------------------------- DROP TABLE IF EXISTS `crm_customer_pool`; CREATE TABLE `crm_customer_pool` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID', `customer_id` bigint(20) NOT NULL COMMENT '客户ID', `customer_name` varchar(200) DEFAULT NULL COMMENT '客户名称(冗余)', `operation_type` varchar(20) NOT NULL COMMENT '操作类型(into-进入公海/claim-领取/assign-分配/recycle-回收)', `from_user_id` bigint(20) DEFAULT NULL COMMENT '原负责人ID', `from_user_name` varchar(50) DEFAULT NULL COMMENT '原负责人姓名(冗余)', `to_user_id` bigint(20) DEFAULT NULL COMMENT '新负责人ID', `to_user_name` varchar(50) DEFAULT NULL COMMENT '新负责人姓名(冗余)', `reason` varchar(500) DEFAULT NULL COMMENT '操作原因', `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者(操作人)', `create_by_name` varchar(50) DEFAULT NULL COMMENT '操作人姓名(冗余)', `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间(操作时间)', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `del_flag` tinyint(1) DEFAULT '0' COMMENT '删除标志(0存在 1删除)', `version` int(11) DEFAULT '0' COMMENT '版本号', `remark` varchar(500) DEFAULT NULL COMMENT '备注', PRIMARY KEY (`id`) USING BTREE, KEY `idx_customer_id` (`customer_id`) USING BTREE, KEY `idx_operation_type` (`operation_type`) USING BTREE, KEY `idx_from_user` (`from_user_id`) USING BTREE, KEY `idx_to_user` (`to_user_id`) USING BTREE, KEY `idx_create_time` (`create_time`) USING BTREE, KEY `idx_tenant` (`tenant_id`) USING BTREE ) ENGINE=InnoDB AUTO_INCREMENT=1991718802157080578 DEFAULT CHARSET=utf8mb4 COMMENT='CRM-客户公海池记录表'; -- ---------------------------- -- Table structure for crm_customer_pool_rule -- ---------------------------- DROP TABLE IF EXISTS `crm_customer_pool_rule`; CREATE TABLE `crm_customer_pool_rule` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID', `pool_name` varchar(100) NOT NULL COMMENT '规则名称', `rule_type` varchar(20) NOT NULL COMMENT '规则类型(no_follow-未跟进/no_deal-未成交)', `timeout_days` int(11) NOT NULL COMMENT '超时天数(多少天未跟进/未成交)', `protect_days` int(11) NOT NULL DEFAULT '0' COMMENT '保护期天数(领取后保护多少天)', `status` varchar(20) DEFAULT 'enable' COMMENT '状态(enable-启用/disable-禁用)', `sort` int(11) DEFAULT '0' COMMENT '排序号', `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `del_flag` tinyint(1) DEFAULT '0' COMMENT '删除标志(0存在 1删除)', `version` int(11) DEFAULT '0' COMMENT '版本号', `remark` varchar(500) DEFAULT NULL COMMENT '备注', PRIMARY KEY (`id`) USING BTREE, KEY `idx_status` (`status`) USING BTREE, KEY `idx_rule_type` (`rule_type`) USING BTREE, KEY `idx_sort` (`sort`) USING BTREE, KEY `idx_tenant` (`tenant_id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='CRM-客户公海池规则表'; -- ---------------------------- -- Table structure for crm_customer_tag -- ---------------------------- DROP TABLE IF EXISTS `crm_customer_tag`; CREATE TABLE `crm_customer_tag` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID', `tag_name` varchar(50) NOT NULL COMMENT '标签名称', `tag_color` varchar(20) DEFAULT '#409EFF' COMMENT '标签颜色(十六进制颜色值)', `tag_type` varchar(20) DEFAULT 'custom' COMMENT '标签类型(system-系统预设/custom-自定义)', `sort_order` int(11) DEFAULT '0' COMMENT '排序号', `share_scope` varchar(20) DEFAULT 'private' COMMENT '共享范围(private-个人/dept-部门/company-公司)', `create_user_id` bigint(20) DEFAULT NULL COMMENT '创建人ID', `create_user_name` varchar(50) DEFAULT NULL COMMENT '创建人姓名', `use_count` int(11) DEFAULT '0' COMMENT '使用次数', `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `del_flag` tinyint(1) DEFAULT '0' COMMENT '删除标志(0存在 1删除)', `remark` varchar(500) DEFAULT NULL COMMENT '备注', PRIMARY KEY (`id`) USING BTREE, UNIQUE KEY `uk_tag_name` (`tag_name`,`tenant_id`,`del_flag`) USING BTREE, KEY `idx_tag_type` (`tag_type`) USING BTREE, KEY `idx_share_scope` (`share_scope`) USING BTREE, KEY `idx_create_user` (`create_user_id`) USING BTREE, KEY `idx_tenant` (`tenant_id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='CRM-客户标签表'; -- ---------------------------- -- Table structure for crm_customer_tag_relation -- ---------------------------- DROP TABLE IF EXISTS `crm_customer_tag_relation`; CREATE TABLE `crm_customer_tag_relation` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID', `customer_id` bigint(20) NOT NULL COMMENT '客户ID', `customer_name` varchar(200) DEFAULT NULL COMMENT '客户名称(冗余)', `tag_id` bigint(20) NOT NULL COMMENT '标签ID', `tag_name` varchar(50) DEFAULT NULL COMMENT '标签名称(冗余)', `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者(打标签的人)', `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `del_flag` tinyint(1) DEFAULT '0' COMMENT '删除标志(0存在 1删除)', PRIMARY KEY (`id`) USING BTREE, UNIQUE KEY `uk_customer_tag` (`customer_id`,`tag_id`,`del_flag`) USING BTREE, KEY `idx_customer_id` (`customer_id`) USING BTREE, KEY `idx_tag_id` (`tag_id`) USING BTREE, KEY `idx_tenant` (`tenant_id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='CRM-客户标签关联表'; -- ---------------------------- -- Table structure for crm_invoice -- ---------------------------- DROP TABLE IF EXISTS `crm_invoice`; CREATE TABLE `crm_invoice` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID', `invoice_no` varchar(50) NOT NULL COMMENT '发票编号(INV+yyyyMMdd+4位流水号)', `invoice_code` varchar(50) DEFAULT NULL COMMENT '发票代码(税务发票代码)', `invoice_number` varchar(50) DEFAULT NULL COMMENT '发票号码(税务发票号码)', `contract_id` bigint(20) NOT NULL COMMENT '合同ID', `contract_no` varchar(50) DEFAULT NULL COMMENT '合同编号(冗余字段)', `customer_id` bigint(20) NOT NULL COMMENT '客户ID', `customer_name` varchar(200) DEFAULT NULL COMMENT '客户名称(冗余字段)', `payment_id` bigint(20) DEFAULT NULL COMMENT '回款ID', `payment_no` varchar(50) DEFAULT NULL COMMENT '回款编号(冗余字段)', `invoice_type` varchar(20) NOT NULL DEFAULT 'special' COMMENT '发票类型(special-增值税专用发票/normal-增值税普通发票/electronic-电子发票)', `invoice_title` varchar(200) NOT NULL COMMENT '发票抬头', `tax_no` varchar(50) NOT NULL COMMENT '纳税人识别号', `company_address` varchar(255) DEFAULT NULL COMMENT '企业地址', `company_phone` varchar(50) DEFAULT NULL COMMENT '企业电话', `bank_name` varchar(100) DEFAULT NULL COMMENT '开户银行', `bank_account` varchar(100) DEFAULT NULL COMMENT '银行账号', `amount` decimal(15,2) NOT NULL DEFAULT '0.00' COMMENT '开票金额(不含税)', `tax_rate` decimal(5,2) NOT NULL DEFAULT '6.00' COMMENT '税率(百分比,如6.00表示6%)', `is_tax_included` tinyint(1) DEFAULT '0' COMMENT '是否含税: 0-不含税 1-含税', `tax_amount` decimal(15,2) NOT NULL DEFAULT '0.00' COMMENT '税额', `total_amount` decimal(15,2) NOT NULL DEFAULT '0.00' COMMENT '价税合计', `invoice_content` varchar(200) DEFAULT NULL COMMENT '开票内容', `invoice_date` date DEFAULT NULL COMMENT '开票日期', `status` varchar(20) NOT NULL DEFAULT 'applying' COMMENT '发票状态(applying-申请中/approved-已审批/invoiced-已开票/delivered-已寄出/received-已签收/rejected-已驳回/invalid-已作废)', `reject_reason` varchar(500) DEFAULT NULL COMMENT '驳回原因', `invalid_reason` varchar(500) DEFAULT NULL COMMENT '作废原因', `invalid_time` datetime DEFAULT NULL COMMENT '作废时间', `invoice_file` varchar(500) DEFAULT NULL COMMENT '发票PDF文件', `invoice_image` varchar(500) DEFAULT NULL COMMENT '发票图片(扫描件)', `express_company` varchar(50) DEFAULT NULL COMMENT '快递公司', `express_no` varchar(100) DEFAULT NULL COMMENT '快递单号', `express_status` varchar(20) DEFAULT 'no' COMMENT '快递状态(no-未寄出/sent-已寄出/received-已签收)', `express_time` datetime DEFAULT NULL COMMENT '寄出时间', `receive_time` datetime DEFAULT NULL COMMENT '签收时间', `mail_address` varchar(255) DEFAULT NULL COMMENT '邮寄地址', `mail_contact` varchar(50) DEFAULT NULL COMMENT '收件人', `mail_mobile` varchar(20) DEFAULT NULL COMMENT '收件电话', `owner_user_id` bigint(20) NOT NULL COMMENT '负责人ID', `owner_user_name` varchar(50) DEFAULT NULL COMMENT '负责人姓名(冗余字段)', `apply_by` bigint(20) DEFAULT NULL COMMENT '申请人ID', `apply_by_name` varchar(50) DEFAULT NULL COMMENT '申请人姓名', `apply_time` datetime DEFAULT NULL COMMENT '申请时间', `approve_by` bigint(20) DEFAULT NULL COMMENT '审批人ID', `approve_by_name` varchar(50) DEFAULT NULL COMMENT '审批人姓名', `approve_time` datetime DEFAULT NULL COMMENT '审批时间', `invoice_by` bigint(20) DEFAULT NULL COMMENT '开票人ID', `invoice_by_name` varchar(50) DEFAULT NULL COMMENT '开票人姓名', `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `del_flag` tinyint(1) DEFAULT '0' COMMENT '删除标志(0存在 1删除)', `version` int(11) DEFAULT '0' COMMENT '版本号(乐观锁)', `remark` varchar(500) DEFAULT NULL COMMENT '备注', PRIMARY KEY (`id`) USING BTREE, UNIQUE KEY `uk_invoice_no_del_flag` (`invoice_no`,`del_flag`) USING BTREE, KEY `uk_invoice_number` (`invoice_number`) USING BTREE, KEY `idx_contract_id` (`contract_id`) USING BTREE, KEY `idx_customer_id` (`customer_id`) USING BTREE, KEY `idx_payment_id` (`payment_id`) USING BTREE, KEY `idx_owner_user_id` (`owner_user_id`) USING BTREE, KEY `idx_status` (`status`) USING BTREE, KEY `idx_invoice_date` (`invoice_date`) USING BTREE, KEY `idx_express_status` (`express_status`) USING BTREE, KEY `idx_tenant_id` (`tenant_id`) USING BTREE, KEY `idx_create_time` (`create_time`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='CRM-发票主表'; -- ---------------------------- -- Table structure for crm_invoice_info -- ---------------------------- DROP TABLE IF EXISTS `crm_invoice_info`; CREATE TABLE `crm_invoice_info` ( `id` bigint(20) NOT NULL COMMENT '主键ID', `customer_id` bigint(20) NOT NULL COMMENT '客户ID', `company_name` varchar(200) DEFAULT NULL COMMENT '单位名称(章)', `company_address` varchar(500) DEFAULT NULL COMMENT '单位地址', `legal_representative` varchar(100) DEFAULT NULL COMMENT '法定代表人', `agent` varchar(100) DEFAULT NULL COMMENT '代理人', `phone_fax` varchar(100) DEFAULT NULL COMMENT '电话/传真', `bank_name` varchar(200) DEFAULT NULL COMMENT '开户银行', `bank_account` varchar(100) DEFAULT NULL COMMENT '账号', `is_default` char(1) DEFAULT '0' COMMENT '是否默认(0否 1是)', `remark` varchar(500) DEFAULT NULL COMMENT '备注', `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `del_flag` int(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)', PRIMARY KEY (`id`) USING BTREE, KEY `idx_customer_id` (`customer_id`) USING BTREE, KEY `idx_tenant_id` (`tenant_id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='客户开票信息表'; -- ---------------------------- -- Table structure for crm_invoice_item -- ---------------------------- DROP TABLE IF EXISTS `crm_invoice_item`; CREATE TABLE `crm_invoice_item` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID', `invoice_id` bigint(20) NOT NULL COMMENT '发票ID', `item_name` varchar(200) NOT NULL COMMENT '项目名称', `spec` varchar(100) DEFAULT NULL COMMENT '规格型号', `unit` varchar(50) DEFAULT NULL COMMENT '单位', `quantity` decimal(15,2) DEFAULT '0.00' COMMENT '数量', `unit_price` decimal(15,2) DEFAULT '0.00' COMMENT '单价', `amount` decimal(15,2) DEFAULT '0.00' COMMENT '金额', `tax_rate` decimal(5,2) DEFAULT '0.00' COMMENT '税率(百分比)', `tax_amount` decimal(15,2) DEFAULT '0.00' COMMENT '税额', `total_amount` decimal(15,2) DEFAULT '0.00' COMMENT '价税合计', `sort` int(11) DEFAULT '0' COMMENT '排序', `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `del_flag` tinyint(1) DEFAULT '0' COMMENT '删除标志(0存在 1删除)', `remark` varchar(500) DEFAULT NULL COMMENT '备注', PRIMARY KEY (`id`) USING BTREE, KEY `idx_invoice_id` (`invoice_id`) USING BTREE, KEY `idx_tenant_id` (`tenant_id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='CRM-发票明细表'; -- ---------------------------- -- Table structure for crm_opportunity -- ---------------------------- DROP TABLE IF EXISTS `crm_opportunity`; CREATE TABLE `crm_opportunity` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID', `opportunity_no` varchar(50) NOT NULL COMMENT '商机编号(OPP+yyyyMMdd+4位流水号)', `opportunity_name` varchar(200) NOT NULL COMMENT '商机名称', `customer_id` bigint(20) NOT NULL COMMENT '客户ID', `customer_name` varchar(200) DEFAULT NULL COMMENT '客户名称(冗余字段)', `contact_id` bigint(20) DEFAULT NULL COMMENT '联系人ID', `contact_name` varchar(50) DEFAULT NULL COMMENT '联系人姓名(冗余字段)', `amount` decimal(15,2) NOT NULL DEFAULT '0.00' COMMENT '商机金额', `stage` varchar(20) NOT NULL DEFAULT 'initial' COMMENT '商机阶段(initial-初步接触/requirement-需求分析/solution-方案制定/quote-报价/negotiate-谈判审核/contract-合同签订/won-赢单)', `stage_percent` int(11) DEFAULT '10' COMMENT '阶段进度百分比(10/20/40/60/80/90/100)', `status` varchar(20) NOT NULL DEFAULT 'following' COMMENT '商机状态(following-跟进中/won-赢单/lost-输单/invalid-无效)', `win_rate` decimal(5,2) DEFAULT '50.00' COMMENT '赢单率(百分比,如50.00表示50%)', `expect_deal_date` date DEFAULT NULL COMMENT '预计成交日期', `actual_deal_date` date DEFAULT NULL COMMENT '实际成交日期', `lost_reason` varchar(500) DEFAULT NULL COMMENT '输单原因', `owner_user_id` bigint(20) NOT NULL COMMENT '负责人ID(销售人员)', `owner_user_name` varchar(50) DEFAULT NULL COMMENT '负责人姓名(冗余字段)', `product_count` int(11) DEFAULT '0' COMMENT '产品数量(冗余字段)', `last_time` datetime DEFAULT NULL COMMENT '最后跟进时间', `next_time` datetime DEFAULT NULL COMMENT '下次联系时间', `follow_count` int(11) DEFAULT '0' COMMENT '跟进次数(冗余字段)', `contract_id` bigint(20) DEFAULT NULL COMMENT '关联合同ID(赢单后生成)', `source` varchar(20) DEFAULT NULL COMMENT '商机来源(同线索来源)', `type` varchar(20) DEFAULT NULL COMMENT '商机类型(new_customer-新客户新业务/renewal-老客户续约/upgrade-老客户升级)', `description` text COMMENT '商机描述(详细说明商机背景、客户需求等)', `competitors` varchar(500) DEFAULT NULL COMMENT '竞争对手(多个竞争对手用逗号分隔)', `key_factors` varchar(500) DEFAULT NULL COMMENT '关键决策因素(客户关注的核心要素)', `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `del_flag` tinyint(1) DEFAULT '0' COMMENT '删除标志(0存在 1删除)', `version` int(11) DEFAULT '0' COMMENT '版本号(乐观锁)', `remark` varchar(500) DEFAULT NULL COMMENT '备注', PRIMARY KEY (`id`) USING BTREE, UNIQUE KEY `uk_opportunity_no_del_flag` (`opportunity_no`,`del_flag`) USING BTREE, KEY `idx_customer_id` (`customer_id`) USING BTREE, KEY `idx_owner_user_id` (`owner_user_id`) USING BTREE, KEY `idx_stage` (`stage`) USING BTREE, KEY `idx_status` (`status`) USING BTREE, KEY `idx_expect_deal_date` (`expect_deal_date`) USING BTREE, KEY `idx_next_time` (`next_time`) USING BTREE, KEY `idx_tenant_id` (`tenant_id`) USING BTREE, KEY `idx_create_time` (`create_time`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='CRM-商机主表'; -- ---------------------------- -- Table structure for crm_opportunity_follow -- ---------------------------- DROP TABLE IF EXISTS `crm_opportunity_follow`; CREATE TABLE `crm_opportunity_follow` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID', `opportunity_id` bigint(20) NOT NULL COMMENT '商机ID', `follow_type` varchar(20) NOT NULL COMMENT '跟进方式(phone-电话/wechat-微信/email-邮件/visit-拜访/meeting-会议/other-其他)', `follow_content` text NOT NULL COMMENT '跟进内容', `follow_time` datetime DEFAULT NULL COMMENT '跟进时间', `stage` varchar(20) DEFAULT NULL COMMENT '当前商机阶段', `stage_percent` int(11) DEFAULT NULL COMMENT '阶段进度百分比', `next_time` datetime DEFAULT NULL COMMENT '下次联系时间', `next_content` varchar(500) DEFAULT NULL COMMENT '下次联系计划', `attachments` varchar(1000) DEFAULT NULL COMMENT '附件(多个文件用逗号分隔)', `contact_id` bigint(20) DEFAULT NULL COMMENT '联系人ID', `contact_name` varchar(50) DEFAULT NULL COMMENT '联系人姓名', `location` varchar(200) DEFAULT NULL COMMENT '跟进地点(拜访时填写)', `duration` int(11) DEFAULT NULL COMMENT '跟进时长(分钟)', `follow_by` bigint(20) DEFAULT NULL COMMENT '跟进人ID', `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者(跟进人)', `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间(跟进时间)', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `del_flag` tinyint(1) DEFAULT '0' COMMENT '删除标志(0存在 1删除)', `version` int(11) DEFAULT '0' COMMENT '版本号(乐观锁)', `remark` varchar(500) DEFAULT NULL COMMENT '备注', PRIMARY KEY (`id`) USING BTREE, KEY `idx_opportunity_id` (`opportunity_id`) USING BTREE, KEY `idx_create_by` (`create_by`) USING BTREE, KEY `idx_create_time` (`create_time`) USING BTREE, KEY `idx_next_time` (`next_time`) USING BTREE, KEY `idx_tenant_id` (`tenant_id`) USING BTREE, KEY `idx_follow_time` (`follow_time`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='CRM-商机跟进记录表'; -- ---------------------------- -- Table structure for crm_opportunity_product -- ---------------------------- DROP TABLE IF EXISTS `crm_opportunity_product`; CREATE TABLE `crm_opportunity_product` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID', `opportunity_id` bigint(20) NOT NULL COMMENT '商机ID', `product_id` bigint(20) NOT NULL COMMENT '产品ID', `product_name` varchar(200) DEFAULT NULL COMMENT '产品名称(冗余字段)', `product_no` varchar(50) DEFAULT NULL COMMENT '产品编号(冗余字段)', `category_id` bigint(20) DEFAULT NULL COMMENT '产品分类ID', `category_name` varchar(100) DEFAULT NULL COMMENT '产品分类名称(冗余字段)', `model` varchar(100) DEFAULT NULL COMMENT '规格型号', `unit` varchar(20) DEFAULT '件' COMMENT '单位', `quantity` decimal(20,4) NOT NULL COMMENT '数量', `price` decimal(15,2) NOT NULL DEFAULT '0.00' COMMENT '单价', `discount` decimal(5,2) DEFAULT '0.00' COMMENT '折扣(百分比,如10.00表示9折)', `subtotal` decimal(15,2) NOT NULL DEFAULT '0.00' COMMENT '小计金额(数量*单价*折扣后)', `sort` int(11) DEFAULT '0' COMMENT '排序号', `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `del_flag` tinyint(1) DEFAULT '0' COMMENT '删除标志(0存在 1删除)', `version` int(11) DEFAULT '0' COMMENT '版本号(乐观锁)', `remark` varchar(500) DEFAULT NULL COMMENT '备注', PRIMARY KEY (`id`) USING BTREE, KEY `idx_opportunity_id` (`opportunity_id`) USING BTREE, KEY `idx_product_id` (`product_id`) USING BTREE, KEY `idx_tenant_id` (`tenant_id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='CRM-商机产品关联表'; -- ---------------------------- -- Table structure for crm_opportunity_stage_log -- ---------------------------- DROP TABLE IF EXISTS `crm_opportunity_stage_log`; CREATE TABLE `crm_opportunity_stage_log` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID', `opportunity_id` bigint(20) NOT NULL COMMENT '商机ID', `from_stage` varchar(20) DEFAULT NULL COMMENT '原阶段', `from_stage_name` varchar(50) DEFAULT NULL COMMENT '原阶段名称', `from_percent` int(11) DEFAULT NULL COMMENT '原进度百分比', `to_stage` varchar(20) NOT NULL COMMENT '新阶段', `to_stage_name` varchar(50) DEFAULT NULL COMMENT '新阶段名称', `to_percent` int(11) DEFAULT NULL COMMENT '新进度百分比', `change_type` varchar(20) DEFAULT 'forward' COMMENT '变更类型(forward-推进/backward-后退)', `change_reason` varchar(500) DEFAULT NULL COMMENT '变更原因', `change_amount` decimal(15,2) DEFAULT NULL COMMENT '变更时的商机金额', `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者(变更人)', `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间(变更时间)', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `del_flag` tinyint(1) DEFAULT '0' COMMENT '删除标志(0存在 1删除)', `version` int(11) DEFAULT '0' COMMENT '版本号(乐观锁)', `remark` varchar(500) DEFAULT NULL COMMENT '备注', `lost_detail` varchar(2000) DEFAULT NULL COMMENT '输单详细说明', `competitor_info` varchar(1000) DEFAULT NULL COMMENT '竞争对手信息', `improvement` varchar(1000) DEFAULT NULL COMMENT '改进建议', `won_remark` varchar(2000) DEFAULT NULL COMMENT '赢单说明', PRIMARY KEY (`id`) USING BTREE, KEY `idx_opportunity_id` (`opportunity_id`) USING BTREE, KEY `idx_create_time` (`create_time`) USING BTREE, KEY `idx_tenant_id` (`tenant_id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='CRM-商机阶段变更日志表'; -- ---------------------------- -- Table structure for crm_payment -- ---------------------------- DROP TABLE IF EXISTS `crm_payment`; CREATE TABLE `crm_payment` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID', `payment_no` varchar(50) NOT NULL COMMENT '回款编号(PAY+yyyyMMdd+4位流水号)', `contract_id` bigint(20) NOT NULL COMMENT '合同ID', `contract_no` varchar(50) DEFAULT NULL COMMENT '合同编号(冗余字段)', `customer_id` bigint(20) NOT NULL COMMENT '客户ID', `customer_name` varchar(200) DEFAULT NULL COMMENT '客户名称(冗余字段)', `plan_id` bigint(20) DEFAULT NULL COMMENT '回款计划ID', `plan_no` varchar(50) DEFAULT NULL COMMENT '计划编号(冗余字段)', `period` int(11) DEFAULT NULL COMMENT '期数(冗余字段)', `amount` decimal(15,2) NOT NULL DEFAULT '0.00' COMMENT '回款金额', `payment_date` date NOT NULL COMMENT '回款日期', `payment_method` varchar(20) DEFAULT 'bank' COMMENT '付款方式(bank-银行转账/cash-现金/check-支票/alipay-支付宝/wechat-微信/other-其他)', `payment_account` varchar(100) DEFAULT NULL COMMENT '付款账户', `voucher_no` varchar(100) DEFAULT NULL COMMENT '凭证号(流水号)', `voucher_file` varchar(500) DEFAULT NULL COMMENT '凭证文件(回款凭证扫描件)', `status` varchar(20) NOT NULL DEFAULT 'pending' COMMENT '回款状态(pending-待确认/confirmed-已确认/invalid-已作废)', `confirm_by` bigint(20) DEFAULT NULL COMMENT '确认人ID', `confirm_by_name` varchar(50) DEFAULT NULL COMMENT '确认人姓名', `confirm_time` datetime DEFAULT NULL COMMENT '确认时间', `invalid_reason` varchar(500) DEFAULT NULL COMMENT '作废原因', `invalid_time` datetime DEFAULT NULL COMMENT '作废时间', `owner_user_id` bigint(20) NOT NULL COMMENT '负责人ID(录入人)', `owner_user_name` varchar(50) DEFAULT NULL COMMENT '负责人姓名(冗余字段)', `bank_name` varchar(100) DEFAULT NULL COMMENT '收款银行', `bank_account` varchar(100) DEFAULT NULL COMMENT '收款账号', `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `del_flag` tinyint(1) DEFAULT '0' COMMENT '删除标志(0存在 1删除)', `version` int(11) DEFAULT '0' COMMENT '版本号(乐观锁)', `remark` varchar(500) DEFAULT NULL COMMENT '备注', PRIMARY KEY (`id`) USING BTREE, UNIQUE KEY `uk_payment_no_del_flag` (`payment_no`,`del_flag`) USING BTREE, KEY `idx_contract_id` (`contract_id`) USING BTREE, KEY `idx_customer_id` (`customer_id`) USING BTREE, KEY `idx_plan_id` (`plan_id`) USING BTREE, KEY `idx_owner_user_id` (`owner_user_id`) USING BTREE, KEY `idx_status` (`status`) USING BTREE, KEY `idx_payment_date` (`payment_date`) USING BTREE, KEY `idx_confirm_by` (`confirm_by`) USING BTREE, KEY `idx_tenant_id` (`tenant_id`) USING BTREE, KEY `idx_create_time` (`create_time`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='CRM-回款记录表'; -- ---------------------------- -- Table structure for crm_payment_collection -- ---------------------------- DROP TABLE IF EXISTS `crm_payment_collection`; CREATE TABLE `crm_payment_collection` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID', `plan_id` bigint(20) NOT NULL COMMENT '回款计划ID', `contract_id` bigint(20) NOT NULL COMMENT '合同ID', `contract_no` varchar(50) DEFAULT NULL COMMENT '合同编号(冗余)', `customer_id` bigint(20) NOT NULL COMMENT '客户ID', `customer_name` varchar(200) DEFAULT NULL COMMENT '客户名称(冗余)', `collection_date` datetime NOT NULL COMMENT '催收日期时间', `collection_method` varchar(20) NOT NULL COMMENT '催收方式(phone/email/message/visit/legal/other)', `contact_person` varchar(100) DEFAULT NULL COMMENT '联系人姓名', `contact_phone` varchar(20) DEFAULT NULL COMMENT '联系电话', `collection_content` text NOT NULL COMMENT '催收内容(最少20字)', `customer_feedback` varchar(20) NOT NULL COMMENT '客户反馈类型(promise/processing/difficulty/refuse/no_contact/other)', `feedback_detail` varchar(500) DEFAULT NULL COMMENT '反馈详情', `promise_date` date DEFAULT NULL COMMENT '承诺付款日期', `collector_user_id` bigint(20) NOT NULL COMMENT '催收人ID', `collector_user_name` varchar(50) DEFAULT NULL COMMENT '催收人姓名(冗余)', `attachment` varchar(500) DEFAULT NULL COMMENT '附件(催收邮件截图等)', `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `del_flag` tinyint(1) DEFAULT '0' COMMENT '删除标志(0存在 1删除)', `remark` varchar(500) DEFAULT NULL COMMENT '备注', PRIMARY KEY (`id`) USING BTREE, KEY `idx_plan_id` (`plan_id`) USING BTREE, KEY `idx_contract_id` (`contract_id`) USING BTREE, KEY `idx_customer_id` (`customer_id`) USING BTREE, KEY `idx_collection_date` (`collection_date`) USING BTREE, KEY `idx_collector_user_id` (`collector_user_id`) USING BTREE, KEY `idx_tenant_id` (`tenant_id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='CRM-催收记录表'; -- ---------------------------- -- Table structure for crm_payment_plan -- ---------------------------- DROP TABLE IF EXISTS `crm_payment_plan`; CREATE TABLE `crm_payment_plan` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID', `plan_no` varchar(50) NOT NULL COMMENT '计划编号(PLAN+yyyyMMdd+4位流水号)', `contract_id` bigint(20) NOT NULL COMMENT '合同ID', `contract_no` varchar(50) DEFAULT NULL COMMENT '合同编号(冗余字段)', `customer_id` bigint(20) NOT NULL COMMENT '客户ID', `customer_name` varchar(200) DEFAULT NULL COMMENT '客户名称(冗余字段)', `period` int(11) NOT NULL DEFAULT '1' COMMENT '期数(第几期)', `plan_amount` decimal(15,2) NOT NULL DEFAULT '0.00' COMMENT '计划回款金额', `plan_date` date NOT NULL COMMENT '计划回款日期', `plan_percent` decimal(5,2) DEFAULT NULL COMMENT '计划比例(占合同总金额的百分比)', `received_amount` decimal(15,2) DEFAULT '0.00' COMMENT '已回款金额', `unreceived_amount` decimal(15,2) DEFAULT '0.00' COMMENT '未回款金额', `status` varchar(20) NOT NULL DEFAULT 'pending' COMMENT '状态(pending-待回款/partial-部分回款/finished-已完成/overdue-已逾期)', `is_overdue` tinyint(1) DEFAULT '0' COMMENT '是否逾期(0否 1是)', `overdue_days` int(11) DEFAULT '0' COMMENT '逾期天数', `remind_days` int(11) DEFAULT '7' COMMENT '提前提醒天数(默认7天)', `remind_status` varchar(20) DEFAULT 'no' COMMENT '提醒状态(no-未提醒/reminded-已提醒)', `last_remind_time` datetime DEFAULT NULL COMMENT '最后提醒时间', `owner_user_id` bigint(20) NOT NULL COMMENT '负责人ID', `owner_user_name` varchar(50) DEFAULT NULL COMMENT '负责人姓名(冗余字段)', `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `del_flag` tinyint(1) DEFAULT '0' COMMENT '删除标志(0存在 1删除)', `version` int(11) DEFAULT '0' COMMENT '版本号(乐观锁)', `remark` varchar(500) DEFAULT NULL COMMENT '备注', PRIMARY KEY (`id`) USING BTREE, UNIQUE KEY `uk_plan_no_del_flag` (`plan_no`,`del_flag`) USING BTREE, KEY `idx_contract_id` (`contract_id`) USING BTREE, KEY `idx_customer_id` (`customer_id`) USING BTREE, KEY `idx_owner_user_id` (`owner_user_id`) USING BTREE, KEY `idx_status` (`status`) USING BTREE, KEY `idx_plan_date` (`plan_date`) USING BTREE, KEY `idx_is_overdue` (`is_overdue`) USING BTREE, KEY `idx_tenant_id` (`tenant_id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='CRM-回款计划表'; -- ---------------------------- -- Table structure for crm_product -- ---------------------------- DROP TABLE IF EXISTS `crm_product`; CREATE TABLE `crm_product` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID', `product_no` varchar(50) NOT NULL COMMENT '产品编号(唯一)', `product_name` varchar(200) NOT NULL COMMENT '产品名称', `category_id` bigint(20) DEFAULT NULL COMMENT '分类ID', `category_name` varchar(100) DEFAULT NULL COMMENT '分类名称(冗余)', `model` varchar(100) DEFAULT NULL COMMENT '型号/规格', `unit` varchar(20) DEFAULT '个' COMMENT '单位', `barcode` varchar(100) DEFAULT NULL COMMENT '条码', `price` decimal(15,2) DEFAULT '0.00' COMMENT '标准价格', `cost` decimal(15,2) DEFAULT '0.00' COMMENT '成本价', `min_price` decimal(15,2) DEFAULT NULL COMMENT '最低价格', `stock` int(11) DEFAULT '0' COMMENT '库存数量', `low_stock` int(11) DEFAULT '10' COMMENT '库存预警值', `status` varchar(20) DEFAULT 'on' COMMENT '状态(on-上架/off-下架)', `tax_rate` decimal(5,2) NOT NULL DEFAULT '13.00' COMMENT '税率(百分比)', `description` text COMMENT '产品描述', `images` varchar(1000) DEFAULT NULL COMMENT '产品图片(多个用逗号分隔)', `sale_count` int(11) DEFAULT '0' COMMENT '销售次数', `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `del_flag` tinyint(1) DEFAULT '0' COMMENT '删除标志(0存在 1删除)', `version` int(11) DEFAULT '0' COMMENT '版本号', `remark` varchar(500) DEFAULT NULL COMMENT '备注', PRIMARY KEY (`id`) USING BTREE, UNIQUE KEY `uk_product_no_del_flag` (`product_no`,`del_flag`) USING BTREE, KEY `idx_category` (`category_id`) USING BTREE, KEY `idx_status` (`status`) USING BTREE, KEY `idx_tenant` (`tenant_id`) USING BTREE ) ENGINE=InnoDB AUTO_INCREMENT=2060282814905675778 DEFAULT CHARSET=utf8mb4 COMMENT='CRM-产品主表'; -- ---------------------------- -- Table structure for crm_product_attachment -- ---------------------------- DROP TABLE IF EXISTS `crm_product_attachment`; CREATE TABLE `crm_product_attachment` ( `id` bigint(20) NOT NULL COMMENT '主键ID', `product_id` bigint(20) NOT NULL COMMENT '产品ID', `file_name` varchar(200) NOT NULL COMMENT '文件名称', `file_path` varchar(500) NOT NULL COMMENT '文件路径', `file_type` varchar(50) DEFAULT NULL COMMENT '文件类型(pdf/doc/xls/ppt/jpg等)', `file_size` bigint(20) DEFAULT NULL COMMENT '文件大小(字节)', `attachment_type` varchar(50) DEFAULT 'other' COMMENT '资料类型(manual-产品手册/whitepaper-技术白皮书/guide-用户指南/demo-演示PPT/case-案例资料/video-视频教程/other-其他)', `download_count` int(11) DEFAULT '0' COMMENT '下载次数', `sort` int(11) DEFAULT '0' COMMENT '显示顺序', `remark` varchar(500) DEFAULT NULL COMMENT '备注', `del_flag` int(11) DEFAULT '0' COMMENT '逻辑删除标志(0存在 1删除)', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号', PRIMARY KEY (`id`) USING BTREE, KEY `idx_product_id` (`product_id`) USING BTREE, KEY `idx_attachment_type` (`attachment_type`) USING BTREE, KEY `idx_tenant_id` (`tenant_id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='产品附件表'; -- ---------------------------- -- Table structure for crm_product_category -- ---------------------------- DROP TABLE IF EXISTS `crm_product_category`; CREATE TABLE `crm_product_category` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID', `category_name` varchar(100) NOT NULL COMMENT '分类名称', `parent_id` bigint(20) DEFAULT '0' COMMENT '父级ID(0为顶级)', `ancestors` varchar(500) DEFAULT NULL COMMENT '祖级列表(如: 0,1,2)', `sort` int(11) DEFAULT '0' COMMENT '显示顺序', `status` varchar(10) DEFAULT '0' COMMENT '状态(0-正常 1-停用)', `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `del_flag` tinyint(1) DEFAULT '0' COMMENT '删除标志(0存在 1删除)', `version` int(11) DEFAULT '0' COMMENT '版本号', `remark` varchar(500) DEFAULT NULL COMMENT '备注', PRIMARY KEY (`id`) USING BTREE, KEY `idx_parent_id` (`parent_id`) USING BTREE, KEY `idx_tenant` (`tenant_id`) USING BTREE ) ENGINE=InnoDB AUTO_INCREMENT=1975766650771238914 DEFAULT CHARSET=utf8mb4 COMMENT='CRM-产品分类表'; -- ---------------------------- -- Table structure for crm_product_price -- ---------------------------- DROP TABLE IF EXISTS `crm_product_price`; CREATE TABLE `crm_product_price` ( `id` bigint(20) NOT NULL COMMENT '主键ID', `product_id` bigint(20) NOT NULL COMMENT '产品ID', `price_type` varchar(20) NOT NULL COMMENT '价格类型(standard/cost/minimum/vip/wholesale/promotion)', `price` decimal(12,2) NOT NULL DEFAULT '0.00' COMMENT '价格', `start_date` datetime DEFAULT NULL COMMENT '生效日期', `end_date` datetime DEFAULT NULL COMMENT '失效日期', `status` varchar(10) DEFAULT 'active' COMMENT '状态(active-生效中/inactive-已失效)', `remark` varchar(500) DEFAULT NULL COMMENT '备注', `del_flag` int(11) DEFAULT '0' COMMENT '逻辑删除标志(0存在 1删除)', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号', PRIMARY KEY (`id`) USING BTREE, KEY `idx_product_id` (`product_id`) USING BTREE, KEY `idx_price_type` (`price_type`) USING BTREE, KEY `idx_status` (`status`) USING BTREE, KEY `idx_tenant_id` (`tenant_id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='产品价格表'; -- ---------------------------- -- Table structure for crm_product_price_history -- ---------------------------- DROP TABLE IF EXISTS `crm_product_price_history`; CREATE TABLE `crm_product_price_history` ( `id` bigint(20) NOT NULL COMMENT '主键ID', `product_id` bigint(20) NOT NULL COMMENT '产品ID', `price_type` varchar(20) NOT NULL COMMENT '价格类型', `old_price` decimal(12,2) NOT NULL DEFAULT '0.00' COMMENT '调整前价格', `new_price` decimal(12,2) NOT NULL DEFAULT '0.00' COMMENT '调整后价格', `price_change` decimal(12,2) DEFAULT '0.00' COMMENT '调整金额', `change_percent` decimal(5,2) DEFAULT '0.00' COMMENT '调整百分比', `adjust_reason` varchar(500) DEFAULT NULL COMMENT '调价原因', `effective_date` datetime DEFAULT NULL COMMENT '生效日期', `create_by` bigint(20) DEFAULT NULL COMMENT '操作人', `create_time` datetime DEFAULT NULL COMMENT '操作时间', `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号', PRIMARY KEY (`id`) USING BTREE, KEY `idx_product_id` (`product_id`) USING BTREE, KEY `idx_create_time` (`create_time`) USING BTREE, KEY `idx_tenant_id` (`tenant_id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='产品价格历史表'; -- ---------------------------- -- Table structure for crm_product_stock_log -- ---------------------------- DROP TABLE IF EXISTS `crm_product_stock_log`; CREATE TABLE `crm_product_stock_log` ( `id` bigint(20) NOT NULL COMMENT '主键ID', `product_id` bigint(20) NOT NULL COMMENT '产品ID', `operation_type` varchar(20) NOT NULL COMMENT '操作类型(in-入库/out-出库/adjust-调整/check-盘点)', `quantity` int(11) NOT NULL DEFAULT '0' COMMENT '变动数量(正数-增加/负数-减少)', `before_stock` int(11) NOT NULL DEFAULT '0' COMMENT '变动前库存', `after_stock` int(11) NOT NULL DEFAULT '0' COMMENT '变动后库存', `unit_price` decimal(12,2) DEFAULT NULL COMMENT '单价', `total_amount` decimal(12,2) DEFAULT NULL COMMENT '总金额', `related_no` varchar(100) DEFAULT NULL COMMENT '关联单号(入库单/出库单/合同编号等)', `related_type` varchar(50) DEFAULT NULL COMMENT '关联类型(purchase-采购/sale-销售/sample-样品/other-其他)', `supplier` varchar(200) DEFAULT NULL COMMENT '供应商(入库时)', `operator` varchar(100) DEFAULT NULL COMMENT '操作人', `operation_date` datetime DEFAULT NULL COMMENT '操作日期', `remark` varchar(500) DEFAULT NULL COMMENT '备注', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号', PRIMARY KEY (`id`) USING BTREE, KEY `idx_product_id` (`product_id`) USING BTREE, KEY `idx_operation_type` (`operation_type`) USING BTREE, KEY `idx_operation_date` (`operation_date`) USING BTREE, KEY `idx_tenant_id` (`tenant_id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='产品库存记录表'; -- ---------------------------- -- Table structure for crm_product_tag -- ---------------------------- DROP TABLE IF EXISTS `crm_product_tag`; CREATE TABLE `crm_product_tag` ( `id` bigint(20) NOT NULL COMMENT '主键ID', `tag_name` varchar(50) NOT NULL COMMENT '标签名称', `tag_color` varchar(20) DEFAULT NULL COMMENT '标签颜色', `sort` int(11) DEFAULT '0' COMMENT '显示顺序', `status` char(1) DEFAULT '0' COMMENT '状态(0正常 1停用)', `remark` varchar(500) DEFAULT NULL COMMENT '备注', `del_flag` int(11) DEFAULT '0' COMMENT '逻辑删除标志(0存在 1删除)', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号', PRIMARY KEY (`id`) USING BTREE, UNIQUE KEY `uk_tag_name` (`tag_name`,`tenant_id`) USING BTREE, KEY `idx_tenant_id` (`tenant_id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='产品标签表'; -- ---------------------------- -- Table structure for crm_product_tag_relation -- ---------------------------- DROP TABLE IF EXISTS `crm_product_tag_relation`; CREATE TABLE `crm_product_tag_relation` ( `id` bigint(20) NOT NULL COMMENT '主键ID', `product_id` bigint(20) NOT NULL COMMENT '产品ID', `tag_id` bigint(20) NOT NULL COMMENT '标签ID', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号', PRIMARY KEY (`id`) USING BTREE, UNIQUE KEY `uk_product_tag` (`product_id`,`tag_id`,`tenant_id`) USING BTREE, KEY `idx_product_id` (`product_id`) USING BTREE, KEY `idx_tag_id` (`tag_id`) USING BTREE, KEY `idx_tenant_id` (`tenant_id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='产品标签关联表'; -- ---------------------------- -- Table structure for crm_quote -- ---------------------------- DROP TABLE IF EXISTS `crm_quote`; CREATE TABLE `crm_quote` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID', `quote_no` varchar(50) NOT NULL COMMENT '报价单编号(QUO+yyyyMMdd+4位流水号)', `quote_title` varchar(200) NOT NULL COMMENT '报价单标题', `quote_type` varchar(20) NOT NULL DEFAULT 'sales' COMMENT '报价单类型(sales-销售/purchase-采购)', `customer_id` bigint(20) NOT NULL COMMENT '客户ID', `customer_name` varchar(200) DEFAULT NULL COMMENT '客户名称(冗余字段)', `opportunity_id` bigint(20) DEFAULT NULL COMMENT '商机ID', `contact_id` bigint(20) DEFAULT NULL COMMENT '联系人ID', `contact_name` varchar(50) DEFAULT NULL COMMENT '联系人姓名(冗余字段)', `contact_mobile` varchar(20) DEFAULT NULL COMMENT '联系人手机(冗余字段)', `contact_email` varchar(100) DEFAULT NULL COMMENT '联系人邮箱(冗余字段)', `version` varchar(20) DEFAULT 'V1.0' COMMENT '版本号(如V1.0,V1.1,V2.0)', `parent_id` bigint(20) DEFAULT NULL COMMENT '父版本ID(版本管理,0表示首版)', `is_latest` tinyint(1) DEFAULT '1' COMMENT '是否最新版本(0否 1是)', `total_amount` decimal(15,2) NOT NULL DEFAULT '0.00' COMMENT '总金额(未折扣前)', `discount_rate` decimal(5,2) DEFAULT '0.00' COMMENT '整单折扣率(百分比)', `discount_amount` decimal(15,2) DEFAULT '0.00' COMMENT '折扣金额', `final_amount` decimal(15,2) NOT NULL DEFAULT '0.00' COMMENT '最终金额(折扣后)', `validity_days` int(11) DEFAULT '30' COMMENT '有效期(天数)', `quote_date` date DEFAULT NULL COMMENT '报价日期', `expire_date` date DEFAULT NULL COMMENT '到期日期', `status` varchar(20) NOT NULL DEFAULT 'draft' COMMENT '状态(draft-草稿/submitted-已提交/accepted-已接受/rejected-已拒绝/expired-已过期/contract-已转合同)', `reject_reason` varchar(500) DEFAULT NULL COMMENT '拒绝原因', `pdf_url` varchar(500) DEFAULT NULL COMMENT 'PDF文件路径', `pdf_generated` tinyint(1) DEFAULT '0' COMMENT 'PDF是否已生成(0否 1是)', `share_link` varchar(500) DEFAULT NULL COMMENT '分享链接', `share_code` varchar(50) DEFAULT NULL COMMENT '分享码', `share_password` varchar(100) DEFAULT NULL COMMENT '分享密码(可选)', `share_expire_time` datetime DEFAULT NULL COMMENT '分享链接过期时间', `view_count` int(11) DEFAULT '0' COMMENT '查看次数', `last_view_time` datetime DEFAULT NULL COMMENT '最后查看时间', `owner_user_id` bigint(20) NOT NULL COMMENT '负责人ID', `owner_user_name` varchar(50) DEFAULT NULL COMMENT '负责人姓名(冗余字段)', `supplier_id` bigint(20) DEFAULT NULL COMMENT '报价主体ID(关联crm_supplier_info表)', `supplier_name` varchar(200) DEFAULT NULL COMMENT '报价主体名称(冗余字段)', `contract_id` bigint(20) DEFAULT NULL COMMENT '关联合同ID(转合同后)', `payment_terms` varchar(500) DEFAULT NULL COMMENT '付款条款', `delivery_terms` varchar(500) DEFAULT NULL COMMENT '交付条款', `freight` decimal(18,2) NOT NULL DEFAULT '0.00' COMMENT '运费(元)', `attachments` varchar(1000) DEFAULT NULL COMMENT '附件(多个用逗号分隔)', `template_content` longtext COMMENT '报价单模板内容(富文本HTML)', `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `del_flag` tinyint(1) DEFAULT '0' COMMENT '删除标志(0存在 1删除)', `version_no` int(11) DEFAULT '0' COMMENT '版本号(乐观锁)', `remark` varchar(500) DEFAULT NULL COMMENT '备注', PRIMARY KEY (`id`) USING BTREE, KEY `idx_customer_id` (`customer_id`) USING BTREE, KEY `idx_opportunity_id` (`opportunity_id`) USING BTREE, KEY `idx_owner_user_id` (`owner_user_id`) USING BTREE, KEY `idx_status` (`status`) USING BTREE, KEY `idx_parent_id` (`parent_id`) USING BTREE, KEY `idx_expire_date` (`expire_date`) USING BTREE, KEY `idx_tenant_id` (`tenant_id`) USING BTREE, KEY `idx_create_time` (`create_time`) USING BTREE, KEY `idx_share_code` (`share_code`) USING BTREE, KEY `idx_supplier_id` (`supplier_id`) ) ENGINE=InnoDB AUTO_INCREMENT=2060201834769510402 DEFAULT CHARSET=utf8mb4 COMMENT='CRM-报价单主表'; -- ---------------------------- -- Table structure for crm_quote_approval -- ---------------------------- DROP TABLE IF EXISTS `crm_quote_approval`; CREATE TABLE `crm_quote_approval` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID', `quote_id` bigint(20) NOT NULL COMMENT '报价单ID', `quote_no` varchar(50) DEFAULT NULL COMMENT '报价单编号(冗余)', `step` int(11) NOT NULL COMMENT '审批步骤(1/2/3...)', `approver_id` bigint(20) NOT NULL COMMENT '审批人ID', `approver_name` varchar(50) DEFAULT NULL COMMENT '审批人姓名(冗余)', `approval_result` varchar(20) DEFAULT 'pending' COMMENT '审批结果(pending-待审批/approved-通过/rejected-拒绝)', `approval_opinion` text COMMENT '审批意见', `approval_time` datetime DEFAULT NULL COMMENT '审批时间', `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `del_flag` tinyint(1) DEFAULT '0' COMMENT '删除标志(0存在 1删除)', `version` int(11) DEFAULT '0' COMMENT '版本号(乐观锁)', `remark` varchar(500) DEFAULT NULL COMMENT '备注', PRIMARY KEY (`id`) USING BTREE, KEY `idx_quote_id` (`quote_id`) USING BTREE, KEY `idx_approver_id` (`approver_id`) USING BTREE, KEY `idx_approval_time` (`approval_time`) USING BTREE, KEY `idx_tenant_id` (`tenant_id`) USING BTREE, KEY `idx_approval_result` (`approval_result`) USING BTREE ) ENGINE=InnoDB AUTO_INCREMENT=2060201835247661059 DEFAULT CHARSET=utf8mb4 COMMENT='CRM-报价单审批记录表'; -- ---------------------------- -- Table structure for crm_quote_product -- ---------------------------- DROP TABLE IF EXISTS `crm_quote_product`; CREATE TABLE `crm_quote_product` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID', `quote_id` bigint(20) NOT NULL COMMENT '报价单ID', `product_id` bigint(20) NOT NULL COMMENT '产品ID', `product_name` varchar(200) NOT NULL COMMENT '产品名称', `product_no` varchar(50) DEFAULT NULL COMMENT '产品编号', `category_id` bigint(20) DEFAULT NULL COMMENT '产品分类ID', `category_name` varchar(100) DEFAULT NULL COMMENT '产品分类名称', `model` varchar(100) DEFAULT NULL COMMENT '规格型号', `unit` varchar(20) DEFAULT '件' COMMENT '单位', `quantity` decimal(20,4) NOT NULL COMMENT '数量', `price` decimal(15,2) NOT NULL DEFAULT '0.00' COMMENT '含税单价/元', `discount` decimal(5,2) DEFAULT '0.00' COMMENT '折扣(百分比)', `subtotal` decimal(15,2) NOT NULL DEFAULT '0.00' COMMENT '含税总价/元', `tax_amount` decimal(15,2) DEFAULT '0.00' COMMENT '税费/元', `tax_rate` decimal(5,2) DEFAULT '13.00' COMMENT '税率(%)', `package_spec` varchar(200) DEFAULT NULL COMMENT '包装规格', `delivery_method` varchar(200) DEFAULT NULL COMMENT '送货方式', `description` varchar(1000) DEFAULT NULL COMMENT '产品描述', `sort` int(11) DEFAULT '0' COMMENT '排序号', `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `del_flag` tinyint(1) DEFAULT '0' COMMENT '删除标志(0存在 1删除)', `version` int(11) DEFAULT '0' COMMENT '版本号(乐观锁)', `remark` varchar(500) DEFAULT NULL COMMENT '备注', PRIMARY KEY (`id`) USING BTREE, KEY `idx_quote_id` (`quote_id`) USING BTREE, KEY `idx_product_id` (`product_id`) USING BTREE, KEY `idx_tenant_id` (`tenant_id`) USING BTREE ) ENGINE=InnoDB AUTO_INCREMENT=2060201834803064834 DEFAULT CHARSET=utf8mb4 COMMENT='CRM-报价单产品明细表'; -- ---------------------------- -- Table structure for crm_quote_share_log -- ---------------------------- DROP TABLE IF EXISTS `crm_quote_share_log`; CREATE TABLE `crm_quote_share_log` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID', `quote_id` bigint(20) NOT NULL COMMENT '报价单ID', `share_code` varchar(50) NOT NULL COMMENT '分享码', `visit_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '访问时间', `ip_address` varchar(50) DEFAULT NULL COMMENT 'IP地址', `location` varchar(200) DEFAULT NULL COMMENT '地理位置(省市)', `device_type` varchar(50) DEFAULT NULL COMMENT '设备类型(PC/Mobile/Tablet)', `browser` varchar(100) DEFAULT NULL COMMENT '浏览器信息', `stay_duration` int(11) DEFAULT '0' COMMENT '停留时长(秒)', `page_views` int(11) DEFAULT '1' COMMENT '浏览页数', `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号', `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', PRIMARY KEY (`id`) USING BTREE, KEY `idx_quote_id` (`quote_id`) USING BTREE, KEY `idx_share_code` (`share_code`) USING BTREE, KEY `idx_visit_time` (`visit_time`) USING BTREE, KEY `idx_tenant_id` (`tenant_id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='CRM-报价单分享访问日志表'; -- ---------------------------- -- Table structure for crm_supplier_info -- ---------------------------- DROP TABLE IF EXISTS `crm_supplier_info`; CREATE TABLE `crm_supplier_info` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID', `supplier_name` varchar(200) NOT NULL COMMENT '供方名称(章)', `short_name` varchar(100) DEFAULT NULL COMMENT '简称', `supplier_code` varchar(50) DEFAULT NULL COMMENT '编码', `supplier_address` varchar(500) DEFAULT NULL COMMENT '单位地址', `legal_person` varchar(100) DEFAULT NULL COMMENT '法定代表人', `agent` varchar(100) DEFAULT NULL COMMENT '代理人', `phone_fax` varchar(100) DEFAULT NULL COMMENT '电话/传真', `bank_name` varchar(200) DEFAULT NULL COMMENT '开户银行', `bank_account` varchar(100) DEFAULT NULL COMMENT '账号', `status` char(1) DEFAULT '0' COMMENT '状态(0正常 1停用)', `remark` varchar(500) DEFAULT NULL COMMENT '备注', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号', `del_flag` char(1) DEFAULT '0' COMMENT '逻辑删除标志(0存在 1删除)', PRIMARY KEY (`id`), KEY `idx_tenant_id` (`tenant_id`), KEY `idx_del_flag` (`del_flag`) ) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8mb4 COMMENT='供方信息表'; -- ---------------------------- -- Table structure for crm_visit -- ---------------------------- DROP TABLE IF EXISTS `crm_visit`; CREATE TABLE `crm_visit` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID', `visit_no` varchar(50) NOT NULL COMMENT '回访编号(VIS+yyyyMMdd+4位流水号)', `customer_id` bigint(20) NOT NULL COMMENT '客户ID', `customer_name` varchar(200) DEFAULT NULL COMMENT '客户名称(冗余字段)', `contract_id` bigint(20) DEFAULT NULL COMMENT '合同ID', `contract_no` varchar(50) DEFAULT NULL COMMENT '合同编号(冗余字段)', `contact_id` bigint(20) DEFAULT NULL COMMENT '联系人ID', `contact_name` varchar(50) DEFAULT NULL COMMENT '联系人姓名', `contact_mobile` varchar(20) DEFAULT NULL COMMENT '联系人手机', `visit_type` varchar(20) NOT NULL DEFAULT 'regular' COMMENT '回访类型(contract-合同回访/delivery-交付回访/regular-定期回访/renew-续约回访/complaint-投诉回访/other-其他)', `plan_visit_date` datetime DEFAULT NULL COMMENT '计划回访时间', `visit_date` datetime NOT NULL COMMENT '实际回访时间(执行回访时填写)', `visit_method` varchar(20) NOT NULL DEFAULT 'phone' COMMENT '回访方式(phone-电话/wechat-微信/email-邮件/visit-上门拜访/other-其他)', `visit_purpose` text COMMENT '回访目的(多个用逗号分隔: understand_usage,collect_feedback等)', `visit_script` text COMMENT '回访话术模板', `visit_content` text NOT NULL COMMENT '回访内容', `visit_summary` varchar(1000) DEFAULT NULL COMMENT '回访小结', `satisfaction` varchar(20) DEFAULT NULL COMMENT '满意度(very_satisfied-非常满意/satisfied-满意/general-一般/dissatisfied-不满意/very_dissatisfied-非常不满意)', `satisfaction_score` int(11) DEFAULT NULL COMMENT '满意度评分(1-5分,5分最高)', `usage_status` varchar(20) DEFAULT NULL COMMENT '使用情况(normal-正常/occasional-偶尔/rarely-很少/not_used-未使用)', `dissatisfaction_reason` varchar(500) DEFAULT NULL COMMENT '不满意原因(满意度<3星时必填)', `has_problem` tinyint(1) DEFAULT '0' COMMENT '是否有问题(0否 1是)', `problem_count` int(11) DEFAULT '0' COMMENT '问题数量(冗余字段)', `problem_summary` varchar(500) DEFAULT NULL COMMENT '问题概述', `has_opportunity` tinyint(1) DEFAULT '0' COMMENT '是否有商机(0否 1是)', `opportunity_desc` text COMMENT '商机描述', `opportunity_amount` decimal(15,2) DEFAULT NULL COMMENT '预估商机金额', `next_visit_date` date DEFAULT NULL COMMENT '下次回访日期', `next_visit_content` varchar(500) DEFAULT NULL COMMENT '下次回访计划', `status` varchar(20) NOT NULL DEFAULT 'pending' COMMENT '回访状态(pending-待回访/visiting-回访中/completed-已完成/cancelled-已取消)', `cancel_reason` varchar(500) DEFAULT NULL COMMENT '取消原因', `cancel_time` datetime DEFAULT NULL COMMENT '取消时间', `owner_user_id` bigint(20) NOT NULL COMMENT '负责人ID(回访人)', `owner_user_name` varchar(50) DEFAULT NULL COMMENT '负责人姓名(冗余字段)', `duration` int(11) DEFAULT NULL COMMENT '回访时长(分钟)', `attachments` varchar(1000) DEFAULT NULL COMMENT '附件(多个文件用逗号分隔)', `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `del_flag` tinyint(1) DEFAULT '0' COMMENT '删除标志(0存在 1删除)', `version` int(11) DEFAULT '0' COMMENT '版本号(乐观锁)', `remark` varchar(500) DEFAULT NULL COMMENT '备注', PRIMARY KEY (`id`) USING BTREE, UNIQUE KEY `uk_visit_no_del_flag` (`visit_no`,`del_flag`) USING BTREE, KEY `idx_customer_id` (`customer_id`) USING BTREE, KEY `idx_contract_id` (`contract_id`) USING BTREE, KEY `idx_owner_user_id` (`owner_user_id`) USING BTREE, KEY `idx_visit_type` (`visit_type`) USING BTREE, KEY `idx_status` (`status`) USING BTREE, KEY `idx_visit_date` (`visit_date`) USING BTREE, KEY `idx_satisfaction` (`satisfaction`) USING BTREE, KEY `idx_has_problem` (`has_problem`) USING BTREE, KEY `idx_has_opportunity` (`has_opportunity`) USING BTREE, KEY `idx_tenant_id` (`tenant_id`) USING BTREE, KEY `idx_create_time` (`create_time`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='CRM-回访记录表'; -- ---------------------------- -- Table structure for crm_visit_plan -- ---------------------------- DROP TABLE IF EXISTS `crm_visit_plan`; CREATE TABLE `crm_visit_plan` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID', `rule_name` varchar(200) NOT NULL COMMENT '规则名称', `trigger_type` varchar(20) NOT NULL COMMENT '触发类型(contract_signed-合同签订后/last_visit-上次回访后/product_expire-产品到期前/fixed_period-固定周期)', `delay_days` int(11) NOT NULL DEFAULT '0' COMMENT '延迟天数(合同签订/上次回访后多少天回访)', `visit_type` varchar(20) NOT NULL COMMENT '回访类型(参考crm_visit_type字典)', `visit_method` varchar(20) DEFAULT 'phone' COMMENT '回访方式(参考crm_visit_method字典)', `visit_content_template` text COMMENT '回访内容模板', `status` varchar(20) NOT NULL DEFAULT 'enabled' COMMENT '状态(enabled-启用/disabled-禁用)', `execute_count` int(11) DEFAULT '0' COMMENT '执行次数', `last_execute_time` datetime DEFAULT NULL COMMENT '最后执行时间', `sort` int(11) DEFAULT '0' COMMENT '排序号', `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `del_flag` tinyint(1) DEFAULT '0' COMMENT '删除标志(0存在 1删除)', `remark` varchar(500) DEFAULT NULL COMMENT '备注', PRIMARY KEY (`id`) USING BTREE, KEY `idx_trigger_type` (`trigger_type`) USING BTREE, KEY `idx_status` (`status`) USING BTREE, KEY `idx_tenant_id` (`tenant_id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='CRM-回访计划规则表'; -- ---------------------------- -- Table structure for crm_visit_problem -- ---------------------------- DROP TABLE IF EXISTS `crm_visit_problem`; CREATE TABLE `crm_visit_problem` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID', `visit_id` bigint(20) NOT NULL COMMENT '回访ID', `visit_no` varchar(50) DEFAULT NULL COMMENT '回访编号(冗余字段)', `customer_id` bigint(20) NOT NULL COMMENT '客户ID', `customer_name` varchar(200) DEFAULT NULL COMMENT '客户名称(冗余字段)', `problem_type` varchar(20) NOT NULL DEFAULT 'product' COMMENT '问题类型(product-产品问题/service-服务问题/delivery-交付问题/quality-质量问题/price-价格问题/other-其他)', `problem_desc` text NOT NULL COMMENT '问题描述', `problem_images` varchar(1000) DEFAULT NULL COMMENT '问题图片(多个图片用逗号分隔)', `severity` varchar(20) NOT NULL DEFAULT 'medium' COMMENT '严重程度(low-低/medium-中/high-高/urgent-紧急)', `solution` text COMMENT '解决方案', `status` varchar(20) NOT NULL DEFAULT 'pending' COMMENT '问题状态(pending-待处理/processing-处理中/solved-已解决/closed-已关闭)', `solve_by` bigint(20) DEFAULT NULL COMMENT '处理人ID', `solve_by_name` varchar(50) DEFAULT NULL COMMENT '处理人姓名', `solve_time` datetime DEFAULT NULL COMMENT '处理时间', `solve_duration` int(11) DEFAULT NULL COMMENT '处理耗时(小时)', `close_by` bigint(20) DEFAULT NULL COMMENT '关闭人ID', `close_by_name` varchar(50) DEFAULT NULL COMMENT '关闭人姓名', `close_time` datetime DEFAULT NULL COMMENT '关闭时间', `close_reason` varchar(500) DEFAULT NULL COMMENT '关闭原因', `customer_feedback` text COMMENT '客户反馈', `is_satisfied` tinyint(1) DEFAULT NULL COMMENT '客户是否满意(0否 1是)', `sort` int(11) DEFAULT '0' COMMENT '排序号', `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `del_flag` tinyint(1) DEFAULT '0' COMMENT '删除标志(0存在 1删除)', `version` int(11) DEFAULT '0' COMMENT '版本号(乐观锁)', `remark` varchar(500) DEFAULT NULL COMMENT '备注', PRIMARY KEY (`id`) USING BTREE, KEY `idx_visit_id` (`visit_id`) USING BTREE, KEY `idx_customer_id` (`customer_id`) USING BTREE, KEY `idx_problem_type` (`problem_type`) USING BTREE, KEY `idx_severity` (`severity`) USING BTREE, KEY `idx_status` (`status`) USING BTREE, KEY `idx_solve_by` (`solve_by`) USING BTREE, KEY `idx_tenant_id` (`tenant_id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='CRM-回访问题记录表'; -- ---------------------------- -- Table structure for flow_category -- ---------------------------- DROP TABLE IF EXISTS `flow_category`; CREATE TABLE `flow_category` ( `category_id` bigint(20) NOT NULL COMMENT '流程分类ID', `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号', `parent_id` bigint(20) DEFAULT '0' COMMENT '父流程分类id', `ancestors` varchar(500) DEFAULT '' COMMENT '祖级列表', `category_name` varchar(30) NOT NULL COMMENT '流程分类名称', `order_num` int(4) DEFAULT '0' COMMENT '显示顺序', `del_flag` char(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL COMMENT '更新时间', PRIMARY KEY (`category_id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='流程分类'; -- ---------------------------- -- Table structure for flow_category_bak -- ---------------------------- DROP TABLE IF EXISTS `flow_category_bak`; CREATE TABLE `flow_category_bak` ( `category_id` bigint(20) NOT NULL COMMENT '流程分类ID', `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号', `parent_id` bigint(20) DEFAULT '0' COMMENT '父流程分类id', `ancestors` varchar(500) DEFAULT '' COMMENT '祖级列表', `category_name` varchar(30) NOT NULL COMMENT '流程分类名称', `order_num` int(4) DEFAULT '0' COMMENT '显示顺序', `del_flag` char(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL COMMENT '更新时间', PRIMARY KEY (`category_id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='流程分类'; -- ---------------------------- -- Table structure for flow_definition -- ---------------------------- DROP TABLE IF EXISTS `flow_definition`; CREATE TABLE `flow_definition` ( `id` bigint(20) NOT NULL COMMENT '主键id', `flow_code` varchar(40) NOT NULL COMMENT '流程编码', `flow_name` varchar(100) NOT NULL COMMENT '流程名称', `category` varchar(100) DEFAULT NULL COMMENT '流程类别', `version` varchar(20) NOT NULL COMMENT '流程版本', `is_publish` tinyint(1) NOT NULL DEFAULT '0' COMMENT '是否发布(0未发布 1已发布 9失效)', `form_custom` char(1) DEFAULT 'N' COMMENT '审批表单是否自定义(Y是 N否)', `form_path` varchar(100) DEFAULT NULL COMMENT '审批表单路径', `activity_status` tinyint(1) NOT NULL DEFAULT '1' COMMENT '流程激活状态(0挂起 1激活)', `listener_type` varchar(100) DEFAULT NULL COMMENT '监听器类型', `listener_path` varchar(400) DEFAULT NULL COMMENT '监听器路径', `ext` varchar(500) DEFAULT NULL COMMENT '业务详情 存业务表对象json字符串', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `del_flag` char(1) DEFAULT '0' COMMENT '删除标志', `tenant_id` varchar(40) DEFAULT NULL COMMENT '租户id', PRIMARY KEY (`id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='流程定义表'; -- ---------------------------- -- Table structure for flow_definition_bak -- ---------------------------- DROP TABLE IF EXISTS `flow_definition_bak`; CREATE TABLE `flow_definition_bak` ( `id` bigint(20) NOT NULL COMMENT '主键id', `flow_code` varchar(40) NOT NULL COMMENT '流程编码', `flow_name` varchar(100) NOT NULL COMMENT '流程名称', `category` varchar(100) DEFAULT NULL COMMENT '流程类别', `version` varchar(20) NOT NULL COMMENT '流程版本', `is_publish` tinyint(1) NOT NULL DEFAULT '0' COMMENT '是否发布(0未发布 1已发布 9失效)', `form_custom` char(1) DEFAULT 'N' COMMENT '审批表单是否自定义(Y是 N否)', `form_path` varchar(100) DEFAULT NULL COMMENT '审批表单路径', `activity_status` tinyint(1) NOT NULL DEFAULT '1' COMMENT '流程激活状态(0挂起 1激活)', `listener_type` varchar(100) DEFAULT NULL COMMENT '监听器类型', `listener_path` varchar(400) DEFAULT NULL COMMENT '监听器路径', `ext` varchar(500) DEFAULT NULL COMMENT '业务详情 存业务表对象json字符串', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `del_flag` char(1) DEFAULT '0' COMMENT '删除标志', `tenant_id` varchar(40) DEFAULT NULL COMMENT '租户id', PRIMARY KEY (`id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='流程定义表'; -- ---------------------------- -- Table structure for flow_his_task -- ---------------------------- DROP TABLE IF EXISTS `flow_his_task`; CREATE TABLE `flow_his_task` ( `id` bigint(20) NOT NULL COMMENT '主键id', `definition_id` bigint(20) NOT NULL COMMENT '对应flow_definition表的id', `instance_id` bigint(20) NOT NULL COMMENT '对应flow_instance表的id', `task_id` bigint(20) NOT NULL COMMENT '对应flow_task表的id', `node_code` varchar(100) DEFAULT NULL COMMENT '开始节点编码', `node_name` varchar(100) DEFAULT NULL COMMENT '开始节点名称', `node_type` tinyint(1) DEFAULT NULL COMMENT '开始节点类型(0开始节点 1中间节点 2结束节点 3互斥网关 4并行网关)', `target_node_code` varchar(200) DEFAULT NULL COMMENT '目标节点编码', `target_node_name` varchar(200) DEFAULT NULL COMMENT '结束节点名称', `approver` varchar(40) DEFAULT NULL COMMENT '审批者', `cooperate_type` tinyint(1) NOT NULL DEFAULT '0' COMMENT '协作方式(1审批 2转办 3委派 4会签 5票签 6加签 7减签)', `collaborator` varchar(40) DEFAULT NULL COMMENT '协作人', `skip_type` varchar(10) NOT NULL COMMENT '流转类型(PASS通过 REJECT退回 NONE无动作)', `flow_status` varchar(20) NOT NULL COMMENT '流程状态(0待提交 1审批中 2审批通过 4终止 5作废 6撤销 8已完成 9已退回 10失效 11拿回)', `form_custom` char(1) DEFAULT 'N' COMMENT '审批表单是否自定义(Y是 N否)', `form_path` varchar(100) DEFAULT NULL COMMENT '审批表单路径', `message` varchar(500) DEFAULT NULL COMMENT '审批意见', `variable` text COMMENT '任务变量', `ext` varchar(500) DEFAULT NULL COMMENT '业务详情 存业务表对象json字符串', `create_time` datetime DEFAULT NULL COMMENT '任务开始时间', `update_time` datetime DEFAULT NULL COMMENT '审批完成时间', `del_flag` char(1) DEFAULT '0' COMMENT '删除标志', `tenant_id` varchar(40) DEFAULT NULL COMMENT '租户id', PRIMARY KEY (`id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='历史任务记录表'; -- ---------------------------- -- Table structure for flow_his_task_bak -- ---------------------------- DROP TABLE IF EXISTS `flow_his_task_bak`; CREATE TABLE `flow_his_task_bak` ( `id` bigint(20) NOT NULL COMMENT '主键id', `definition_id` bigint(20) NOT NULL COMMENT '对应flow_definition表的id', `instance_id` bigint(20) NOT NULL COMMENT '对应flow_instance表的id', `task_id` bigint(20) NOT NULL COMMENT '对应flow_task表的id', `node_code` varchar(100) DEFAULT NULL COMMENT '开始节点编码', `node_name` varchar(100) DEFAULT NULL COMMENT '开始节点名称', `node_type` tinyint(1) DEFAULT NULL COMMENT '开始节点类型(0开始节点 1中间节点 2结束节点 3互斥网关 4并行网关)', `target_node_code` varchar(200) DEFAULT NULL COMMENT '目标节点编码', `target_node_name` varchar(200) DEFAULT NULL COMMENT '结束节点名称', `approver` varchar(40) DEFAULT NULL COMMENT '审批者', `cooperate_type` tinyint(1) NOT NULL DEFAULT '0' COMMENT '协作方式(1审批 2转办 3委派 4会签 5票签 6加签 7减签)', `collaborator` varchar(40) DEFAULT NULL COMMENT '协作人', `skip_type` varchar(10) NOT NULL COMMENT '流转类型(PASS通过 REJECT退回 NONE无动作)', `flow_status` varchar(20) NOT NULL COMMENT '流程状态(0待提交 1审批中 2审批通过 4终止 5作废 6撤销 8已完成 9已退回 10失效 11拿回)', `form_custom` char(1) DEFAULT 'N' COMMENT '审批表单是否自定义(Y是 N否)', `form_path` varchar(100) DEFAULT NULL COMMENT '审批表单路径', `message` varchar(500) DEFAULT NULL COMMENT '审批意见', `variable` text COMMENT '任务变量', `ext` varchar(500) DEFAULT NULL COMMENT '业务详情 存业务表对象json字符串', `create_time` datetime DEFAULT NULL COMMENT '任务开始时间', `update_time` datetime DEFAULT NULL COMMENT '审批完成时间', `del_flag` char(1) DEFAULT '0' COMMENT '删除标志', `tenant_id` varchar(40) DEFAULT NULL COMMENT '租户id', PRIMARY KEY (`id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='历史任务记录表'; -- ---------------------------- -- Table structure for flow_instance -- ---------------------------- DROP TABLE IF EXISTS `flow_instance`; CREATE TABLE `flow_instance` ( `id` bigint(20) NOT NULL COMMENT '主键id', `definition_id` bigint(20) NOT NULL COMMENT '对应flow_definition表的id', `business_id` varchar(40) NOT NULL COMMENT '业务id', `node_type` tinyint(1) NOT NULL COMMENT '节点类型(0开始节点 1中间节点 2结束节点 3互斥网关 4并行网关)', `node_code` varchar(40) NOT NULL COMMENT '流程节点编码', `node_name` varchar(100) DEFAULT NULL COMMENT '流程节点名称', `variable` text COMMENT '任务变量', `flow_status` varchar(20) NOT NULL COMMENT '流程状态(0待提交 1审批中 2审批通过 4终止 5作废 6撤销 8已完成 9已退回 10失效 11拿回)', `activity_status` tinyint(1) NOT NULL DEFAULT '1' COMMENT '流程激活状态(0挂起 1激活)', `def_json` text COMMENT '流程定义json', `create_by` varchar(64) DEFAULT '' COMMENT '创建者', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `ext` varchar(500) DEFAULT NULL COMMENT '扩展字段,预留给业务系统使用', `del_flag` char(1) DEFAULT '0' COMMENT '删除标志', `tenant_id` varchar(40) DEFAULT NULL COMMENT '租户id', PRIMARY KEY (`id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='流程实例表'; -- ---------------------------- -- Table structure for flow_instance_bak -- ---------------------------- DROP TABLE IF EXISTS `flow_instance_bak`; CREATE TABLE `flow_instance_bak` ( `id` bigint(20) NOT NULL COMMENT '主键id', `definition_id` bigint(20) NOT NULL COMMENT '对应flow_definition表的id', `business_id` varchar(40) NOT NULL COMMENT '业务id', `node_type` tinyint(1) NOT NULL COMMENT '节点类型(0开始节点 1中间节点 2结束节点 3互斥网关 4并行网关)', `node_code` varchar(40) NOT NULL COMMENT '流程节点编码', `node_name` varchar(100) DEFAULT NULL COMMENT '流程节点名称', `variable` text COMMENT '任务变量', `flow_status` varchar(20) NOT NULL COMMENT '流程状态(0待提交 1审批中 2审批通过 4终止 5作废 6撤销 8已完成 9已退回 10失效 11拿回)', `activity_status` tinyint(1) NOT NULL DEFAULT '1' COMMENT '流程激活状态(0挂起 1激活)', `def_json` text COMMENT '流程定义json', `create_by` varchar(64) DEFAULT '' COMMENT '创建者', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `ext` varchar(500) DEFAULT NULL COMMENT '扩展字段,预留给业务系统使用', `del_flag` char(1) DEFAULT '0' COMMENT '删除标志', `tenant_id` varchar(40) DEFAULT NULL COMMENT '租户id', PRIMARY KEY (`id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='流程实例表'; -- ---------------------------- -- Table structure for flow_node -- ---------------------------- DROP TABLE IF EXISTS `flow_node`; CREATE TABLE `flow_node` ( `id` bigint(20) NOT NULL COMMENT '主键id', `node_type` tinyint(1) NOT NULL COMMENT '节点类型(0开始节点 1中间节点 2结束节点 3互斥网关 4并行网关)', `definition_id` bigint(20) NOT NULL COMMENT '流程定义id', `node_code` varchar(100) NOT NULL COMMENT '流程节点编码', `node_name` varchar(100) DEFAULT NULL COMMENT '流程节点名称', `permission_flag` varchar(200) DEFAULT NULL COMMENT '权限标识(权限类型:权限标识,可以多个,用逗号隔开)', `node_ratio` decimal(6,3) DEFAULT NULL COMMENT '流程签署比例值', `coordinate` varchar(100) DEFAULT NULL COMMENT '坐标', `any_node_skip` varchar(100) DEFAULT NULL COMMENT '任意结点跳转', `listener_type` varchar(100) DEFAULT NULL COMMENT '监听器类型', `listener_path` varchar(400) DEFAULT NULL COMMENT '监听器路径', `handler_type` varchar(100) DEFAULT NULL COMMENT '处理器类型', `handler_path` varchar(400) DEFAULT NULL COMMENT '处理器路径', `form_custom` char(1) DEFAULT 'N' COMMENT '审批表单是否自定义(Y是 N否)', `form_path` varchar(100) DEFAULT NULL COMMENT '审批表单路径', `version` varchar(20) NOT NULL COMMENT '版本', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `ext` text COMMENT '扩展属性', `del_flag` char(1) DEFAULT '0' COMMENT '删除标志', `tenant_id` varchar(40) DEFAULT NULL COMMENT '租户id', PRIMARY KEY (`id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='流程节点表'; -- ---------------------------- -- Table structure for flow_node_bak -- ---------------------------- DROP TABLE IF EXISTS `flow_node_bak`; CREATE TABLE `flow_node_bak` ( `id` bigint(20) NOT NULL COMMENT '主键id', `node_type` tinyint(1) NOT NULL COMMENT '节点类型(0开始节点 1中间节点 2结束节点 3互斥网关 4并行网关)', `definition_id` bigint(20) NOT NULL COMMENT '流程定义id', `node_code` varchar(100) NOT NULL COMMENT '流程节点编码', `node_name` varchar(100) DEFAULT NULL COMMENT '流程节点名称', `permission_flag` varchar(200) DEFAULT NULL COMMENT '权限标识(权限类型:权限标识,可以多个,用逗号隔开)', `node_ratio` decimal(6,3) DEFAULT NULL COMMENT '流程签署比例值', `coordinate` varchar(100) DEFAULT NULL COMMENT '坐标', `any_node_skip` varchar(100) DEFAULT NULL COMMENT '任意结点跳转', `listener_type` varchar(100) DEFAULT NULL COMMENT '监听器类型', `listener_path` varchar(400) DEFAULT NULL COMMENT '监听器路径', `handler_type` varchar(100) DEFAULT NULL COMMENT '处理器类型', `handler_path` varchar(400) DEFAULT NULL COMMENT '处理器路径', `form_custom` char(1) DEFAULT 'N' COMMENT '审批表单是否自定义(Y是 N否)', `form_path` varchar(100) DEFAULT NULL COMMENT '审批表单路径', `version` varchar(20) NOT NULL COMMENT '版本', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `ext` text COMMENT '扩展属性', `del_flag` char(1) DEFAULT '0' COMMENT '删除标志', `tenant_id` varchar(40) DEFAULT NULL COMMENT '租户id', PRIMARY KEY (`id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='流程节点表'; -- ---------------------------- -- Table structure for flow_skip -- ---------------------------- DROP TABLE IF EXISTS `flow_skip`; CREATE TABLE `flow_skip` ( `id` bigint(20) NOT NULL COMMENT '主键id', `definition_id` bigint(20) NOT NULL COMMENT '流程定义id', `now_node_code` varchar(100) NOT NULL COMMENT '当前流程节点的编码', `now_node_type` tinyint(1) DEFAULT NULL COMMENT '当前节点类型(0开始节点 1中间节点 2结束节点 3互斥网关 4并行网关)', `next_node_code` varchar(100) NOT NULL COMMENT '下一个流程节点的编码', `next_node_type` tinyint(1) DEFAULT NULL COMMENT '下一个节点类型(0开始节点 1中间节点 2结束节点 3互斥网关 4并行网关)', `skip_name` varchar(100) DEFAULT NULL COMMENT '跳转名称', `skip_type` varchar(40) DEFAULT NULL COMMENT '跳转类型(PASS审批通过 REJECT退回)', `skip_condition` varchar(200) DEFAULT NULL COMMENT '跳转条件', `coordinate` varchar(100) DEFAULT NULL COMMENT '坐标', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `del_flag` char(1) DEFAULT '0' COMMENT '删除标志', `tenant_id` varchar(40) DEFAULT NULL COMMENT '租户id', PRIMARY KEY (`id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='节点跳转关联表'; -- ---------------------------- -- Table structure for flow_skip_bak -- ---------------------------- DROP TABLE IF EXISTS `flow_skip_bak`; CREATE TABLE `flow_skip_bak` ( `id` bigint(20) NOT NULL COMMENT '主键id', `definition_id` bigint(20) NOT NULL COMMENT '流程定义id', `now_node_code` varchar(100) NOT NULL COMMENT '当前流程节点的编码', `now_node_type` tinyint(1) DEFAULT NULL COMMENT '当前节点类型(0开始节点 1中间节点 2结束节点 3互斥网关 4并行网关)', `next_node_code` varchar(100) NOT NULL COMMENT '下一个流程节点的编码', `next_node_type` tinyint(1) DEFAULT NULL COMMENT '下一个节点类型(0开始节点 1中间节点 2结束节点 3互斥网关 4并行网关)', `skip_name` varchar(100) DEFAULT NULL COMMENT '跳转名称', `skip_type` varchar(40) DEFAULT NULL COMMENT '跳转类型(PASS审批通过 REJECT退回)', `skip_condition` varchar(200) DEFAULT NULL COMMENT '跳转条件', `coordinate` varchar(100) DEFAULT NULL COMMENT '坐标', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `del_flag` char(1) DEFAULT '0' COMMENT '删除标志', `tenant_id` varchar(40) DEFAULT NULL COMMENT '租户id', PRIMARY KEY (`id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='节点跳转关联表'; -- ---------------------------- -- Table structure for flow_task -- ---------------------------- DROP TABLE IF EXISTS `flow_task`; CREATE TABLE `flow_task` ( `id` bigint(20) NOT NULL COMMENT '主键id', `definition_id` bigint(20) NOT NULL COMMENT '对应flow_definition表的id', `instance_id` bigint(20) NOT NULL COMMENT '对应flow_instance表的id', `node_code` varchar(100) NOT NULL COMMENT '节点编码', `node_name` varchar(100) DEFAULT NULL COMMENT '节点名称', `node_type` tinyint(1) NOT NULL COMMENT '节点类型(0开始节点 1中间节点 2结束节点 3互斥网关 4并行网关)', `flow_status` varchar(20) NOT NULL COMMENT '流程状态(0待提交 1审批中 2审批通过 4终止 5作废 6撤销 8已完成 9已退回 10失效 11拿回)', `form_custom` char(1) DEFAULT 'N' COMMENT '审批表单是否自定义(Y是 N否)', `form_path` varchar(100) DEFAULT NULL COMMENT '审批表单路径', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `del_flag` char(1) DEFAULT '0' COMMENT '删除标志', `tenant_id` varchar(40) DEFAULT NULL COMMENT '租户id', PRIMARY KEY (`id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='待办任务表'; -- ---------------------------- -- Table structure for flow_task_bak -- ---------------------------- DROP TABLE IF EXISTS `flow_task_bak`; CREATE TABLE `flow_task_bak` ( `id` bigint(20) NOT NULL COMMENT '主键id', `definition_id` bigint(20) NOT NULL COMMENT '对应flow_definition表的id', `instance_id` bigint(20) NOT NULL COMMENT '对应flow_instance表的id', `node_code` varchar(100) NOT NULL COMMENT '节点编码', `node_name` varchar(100) DEFAULT NULL COMMENT '节点名称', `node_type` tinyint(1) NOT NULL COMMENT '节点类型(0开始节点 1中间节点 2结束节点 3互斥网关 4并行网关)', `flow_status` varchar(20) NOT NULL COMMENT '流程状态(0待提交 1审批中 2审批通过 4终止 5作废 6撤销 8已完成 9已退回 10失效 11拿回)', `form_custom` char(1) DEFAULT 'N' COMMENT '审批表单是否自定义(Y是 N否)', `form_path` varchar(100) DEFAULT NULL COMMENT '审批表单路径', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `del_flag` char(1) DEFAULT '0' COMMENT '删除标志', `tenant_id` varchar(40) DEFAULT NULL COMMENT '租户id', PRIMARY KEY (`id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='待办任务表'; -- ---------------------------- -- Table structure for flow_user -- ---------------------------- DROP TABLE IF EXISTS `flow_user`; CREATE TABLE `flow_user` ( `id` bigint(20) NOT NULL COMMENT '主键id', `type` char(1) NOT NULL COMMENT '人员类型(1待办任务的审批人权限 2待办任务的转办人权限 3待办任务的委托人权限)', `processed_by` varchar(80) DEFAULT NULL COMMENT '权限人', `associated` bigint(20) NOT NULL COMMENT '任务表id', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `create_by` varchar(80) DEFAULT NULL COMMENT '创建人', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `del_flag` char(1) DEFAULT '0' COMMENT '删除标志', `tenant_id` varchar(40) DEFAULT NULL COMMENT '租户id', PRIMARY KEY (`id`) USING BTREE, KEY `user_processed_type` (`processed_by`,`type`) USING BTREE, KEY `user_associated` (`associated`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='流程用户表'; -- ---------------------------- -- Table structure for flow_user_bak -- ---------------------------- DROP TABLE IF EXISTS `flow_user_bak`; CREATE TABLE `flow_user_bak` ( `id` bigint(20) NOT NULL COMMENT '主键id', `type` char(1) NOT NULL COMMENT '人员类型(1待办任务的审批人权限 2待办任务的转办人权限 3待办任务的委托人权限)', `processed_by` varchar(80) DEFAULT NULL COMMENT '权限人', `associated` bigint(20) NOT NULL COMMENT '任务表id', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `create_by` varchar(80) DEFAULT NULL COMMENT '创建人', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `del_flag` char(1) DEFAULT '0' COMMENT '删除标志', `tenant_id` varchar(40) DEFAULT NULL COMMENT '租户id', PRIMARY KEY (`id`) USING BTREE, KEY `user_processed_type` (`processed_by`,`type`) USING BTREE, KEY `user_associated` (`associated`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='流程用户表'; -- ---------------------------- -- Table structure for gen_table -- ---------------------------- DROP TABLE IF EXISTS `gen_table`; CREATE TABLE `gen_table` ( `table_id` bigint(20) NOT NULL COMMENT '编号', `data_name` varchar(200) DEFAULT '' COMMENT '数据源名称', `table_name` varchar(200) DEFAULT '' COMMENT '表名称', `table_comment` varchar(500) DEFAULT '' COMMENT '表描述', `sub_table_name` varchar(64) DEFAULT NULL COMMENT '关联子表的表名', `sub_table_fk_name` varchar(64) DEFAULT NULL COMMENT '子表关联的外键名', `class_name` varchar(100) DEFAULT '' COMMENT '实体类名称', `tpl_category` varchar(200) DEFAULT 'crud' COMMENT '使用的模板(crud单表操作 tree树表操作)', `package_name` varchar(100) DEFAULT NULL COMMENT '生成包路径', `module_name` varchar(30) DEFAULT NULL COMMENT '生成模块名', `business_name` varchar(30) DEFAULT NULL COMMENT '生成业务名', `function_name` varchar(50) DEFAULT NULL COMMENT '生成功能名', `function_author` varchar(50) DEFAULT NULL COMMENT '生成功能作者', `gen_type` char(1) DEFAULT '0' COMMENT '生成代码方式(0zip压缩包 1自定义路径)', `gen_path` varchar(200) DEFAULT '/' COMMENT '生成路径(不填默认项目路径)', `options` varchar(1000) DEFAULT NULL COMMENT '其它生成选项', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `remark` varchar(500) DEFAULT NULL COMMENT '备注', PRIMARY KEY (`table_id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='代码生成业务表'; -- ---------------------------- -- Table structure for gen_table_column -- ---------------------------- DROP TABLE IF EXISTS `gen_table_column`; CREATE TABLE `gen_table_column` ( `column_id` bigint(20) NOT NULL COMMENT '编号', `table_id` bigint(20) DEFAULT NULL COMMENT '归属表编号', `column_name` varchar(200) DEFAULT NULL COMMENT '列名称', `column_comment` varchar(500) DEFAULT NULL COMMENT '列描述', `column_type` varchar(100) DEFAULT NULL COMMENT '列类型', `java_type` varchar(500) DEFAULT NULL COMMENT 'JAVA类型', `java_field` varchar(200) DEFAULT NULL COMMENT 'JAVA字段名', `is_pk` char(1) DEFAULT NULL COMMENT '是否主键(1是)', `is_increment` char(1) DEFAULT NULL COMMENT '是否自增(1是)', `is_required` char(1) DEFAULT NULL COMMENT '是否必填(1是)', `is_insert` char(1) DEFAULT NULL COMMENT '是否为插入字段(1是)', `is_edit` char(1) DEFAULT NULL COMMENT '是否编辑字段(1是)', `is_list` char(1) DEFAULT NULL COMMENT '是否列表字段(1是)', `is_query` char(1) DEFAULT NULL COMMENT '是否查询字段(1是)', `query_type` varchar(200) DEFAULT 'EQ' COMMENT '查询方式(等于、不等于、大于、小于、范围)', `html_type` varchar(200) DEFAULT NULL COMMENT '显示类型(文本框、文本域、下拉框、复选框、单选框、日期控件)', `dict_type` varchar(200) DEFAULT '' COMMENT '字典类型', `sort` int(11) DEFAULT NULL COMMENT '排序', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL COMMENT '更新时间', PRIMARY KEY (`column_id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='代码生成业务表字段'; -- ---------------------------- -- Table structure for sj_distributed_lock -- ---------------------------- DROP TABLE IF EXISTS `sj_distributed_lock`; CREATE TABLE `sj_distributed_lock` ( `name` varchar(64) NOT NULL COMMENT '锁名称', `lock_until` timestamp(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON UPDATE CURRENT_TIMESTAMP(3) COMMENT '锁定时长', `locked_at` timestamp(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '锁定时间', `locked_by` varchar(255) NOT NULL COMMENT '锁定者', `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '修改时间', PRIMARY KEY (`name`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='锁定表'; -- ---------------------------- -- Table structure for sj_group_config -- ---------------------------- DROP TABLE IF EXISTS `sj_group_config`; CREATE TABLE `sj_group_config` ( `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键', `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id', `group_name` varchar(64) NOT NULL DEFAULT '' COMMENT '组名称', `description` varchar(256) NOT NULL DEFAULT '' COMMENT '组描述', `token` varchar(64) NOT NULL DEFAULT 'SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT' COMMENT 'token', `group_status` tinyint(4) NOT NULL DEFAULT '0' COMMENT '组状态 0、未启用 1、启用', `version` int(11) NOT NULL COMMENT '版本号', `group_partition` int(11) NOT NULL COMMENT '分区', `id_generator_mode` tinyint(4) NOT NULL DEFAULT '1' COMMENT '唯一id生成模式 默认号段模式', `init_scene` tinyint(4) NOT NULL DEFAULT '0' COMMENT '是否初始化场景 0:否 1:是', `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间', PRIMARY KEY (`id`) USING BTREE, UNIQUE KEY `uk_namespace_id_group_name` (`namespace_id`,`group_name`) USING BTREE ) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8mb4 COMMENT='组配置'; -- ---------------------------- -- Table structure for sj_job -- ---------------------------- DROP TABLE IF EXISTS `sj_job`; CREATE TABLE `sj_job` ( `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键', `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id', `group_name` varchar(64) NOT NULL COMMENT '组名称', `job_name` varchar(64) NOT NULL COMMENT '名称', `args_str` text COMMENT '执行方法参数', `args_type` tinyint(4) NOT NULL DEFAULT '1' COMMENT '参数类型 ', `next_trigger_at` bigint(13) NOT NULL COMMENT '下次触发时间', `job_status` tinyint(4) NOT NULL DEFAULT '1' COMMENT '任务状态 0、关闭、1、开启', `task_type` tinyint(4) NOT NULL DEFAULT '1' COMMENT '任务类型 1、集群 2、广播 3、切片', `route_key` tinyint(4) NOT NULL DEFAULT '4' COMMENT '路由策略', `executor_type` tinyint(4) NOT NULL DEFAULT '1' COMMENT '执行器类型', `executor_info` varchar(255) DEFAULT NULL COMMENT '执行器名称', `trigger_type` tinyint(4) NOT NULL COMMENT '触发类型 1.CRON 表达式 2. 固定时间', `trigger_interval` varchar(255) NOT NULL COMMENT '间隔时长', `block_strategy` tinyint(4) NOT NULL DEFAULT '1' COMMENT '阻塞策略 1、丢弃 2、覆盖 3、并行 4、恢复', `executor_timeout` int(11) NOT NULL DEFAULT '0' COMMENT '任务执行超时时间,单位秒', `max_retry_times` int(11) NOT NULL DEFAULT '0' COMMENT '最大重试次数', `parallel_num` int(11) NOT NULL DEFAULT '1' COMMENT '并行数', `retry_interval` int(11) NOT NULL DEFAULT '0' COMMENT '重试间隔(s)', `bucket_index` int(11) NOT NULL DEFAULT '0' COMMENT 'bucket', `resident` tinyint(4) NOT NULL DEFAULT '0' COMMENT '是否是常驻任务', `notify_ids` varchar(128) NOT NULL DEFAULT '' COMMENT '通知告警场景配置id列表', `owner_id` bigint(20) DEFAULT NULL COMMENT '负责人id', `description` varchar(256) NOT NULL DEFAULT '' COMMENT '描述', `ext_attrs` varchar(256) DEFAULT '' COMMENT '扩展字段', `deleted` tinyint(4) NOT NULL DEFAULT '0' COMMENT '逻辑删除 1、删除', `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间', PRIMARY KEY (`id`) USING BTREE, KEY `idx_namespace_id_group_name` (`namespace_id`,`group_name`) USING BTREE, KEY `idx_job_status_bucket_index` (`job_status`,`bucket_index`) USING BTREE, KEY `idx_create_dt` (`create_dt`) USING BTREE ) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8mb4 COMMENT='任务信息'; -- ---------------------------- -- Table structure for sj_job_log_message -- ---------------------------- DROP TABLE IF EXISTS `sj_job_log_message`; CREATE TABLE `sj_job_log_message` ( `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键', `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id', `group_name` varchar(64) NOT NULL COMMENT '组名称', `job_id` bigint(20) NOT NULL COMMENT '任务信息id', `task_batch_id` bigint(20) NOT NULL COMMENT '任务批次id', `task_id` bigint(20) NOT NULL COMMENT '调度任务id', `message` longtext NOT NULL COMMENT '调度信息', `log_num` int(11) NOT NULL DEFAULT '1' COMMENT '日志数量', `real_time` bigint(13) NOT NULL DEFAULT '0' COMMENT '上报时间', `ext_attrs` varchar(256) DEFAULT '' COMMENT '扩展字段', `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', PRIMARY KEY (`id`) USING BTREE, KEY `idx_task_batch_id_task_id` (`task_batch_id`,`task_id`) USING BTREE, KEY `idx_create_dt` (`create_dt`) USING BTREE, KEY `idx_namespace_id_group_name` (`namespace_id`,`group_name`) USING BTREE ) ENGINE=InnoDB AUTO_INCREMENT=2574 DEFAULT CHARSET=utf8mb4 COMMENT='调度日志'; -- ---------------------------- -- Table structure for sj_job_summary -- ---------------------------- DROP TABLE IF EXISTS `sj_job_summary`; CREATE TABLE `sj_job_summary` ( `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键', `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id', `group_name` varchar(64) NOT NULL DEFAULT '' COMMENT '组名称', `business_id` bigint(20) NOT NULL COMMENT '业务id (job_id或workflow_id)', `system_task_type` tinyint(4) NOT NULL DEFAULT '3' COMMENT '任务类型 3、JOB任务 4、WORKFLOW任务', `trigger_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '统计时间', `success_num` int(11) NOT NULL DEFAULT '0' COMMENT '执行成功-日志数量', `fail_num` int(11) NOT NULL DEFAULT '0' COMMENT '执行失败-日志数量', `fail_reason` varchar(512) NOT NULL DEFAULT '' COMMENT '失败原因', `stop_num` int(11) NOT NULL DEFAULT '0' COMMENT '执行失败-日志数量', `stop_reason` varchar(512) NOT NULL DEFAULT '' COMMENT '失败原因', `cancel_num` int(11) NOT NULL DEFAULT '0' COMMENT '执行失败-日志数量', `cancel_reason` varchar(512) NOT NULL DEFAULT '' COMMENT '失败原因', `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间', PRIMARY KEY (`id`) USING BTREE, UNIQUE KEY `uk_trigger_at_system_task_type_business_id` (`trigger_at`,`system_task_type`,`business_id`) USING BTREE, KEY `idx_namespace_id_group_name_business_id` (`namespace_id`,`group_name`,`business_id`) USING BTREE ) ENGINE=InnoDB AUTO_INCREMENT=222 DEFAULT CHARSET=utf8mb4 COMMENT='DashBoard_Job'; -- ---------------------------- -- Table structure for sj_job_task -- ---------------------------- DROP TABLE IF EXISTS `sj_job_task`; CREATE TABLE `sj_job_task` ( `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键', `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id', `group_name` varchar(64) NOT NULL COMMENT '组名称', `job_id` bigint(20) NOT NULL COMMENT '任务信息id', `task_batch_id` bigint(20) NOT NULL COMMENT '调度任务id', `parent_id` bigint(20) NOT NULL DEFAULT '0' COMMENT '父执行器id', `task_status` tinyint(4) NOT NULL DEFAULT '0' COMMENT '执行的状态 0、失败 1、成功', `retry_count` int(11) NOT NULL DEFAULT '0' COMMENT '重试次数', `mr_stage` tinyint(4) DEFAULT NULL COMMENT '动态分片所处阶段 1:map 2:reduce 3:mergeReduce', `leaf` tinyint(4) NOT NULL DEFAULT '1' COMMENT '叶子节点', `task_name` varchar(255) NOT NULL DEFAULT '' COMMENT '任务名称', `client_info` varchar(128) DEFAULT NULL COMMENT '客户端地址 clientId#ip:port', `wf_context` text COMMENT '工作流全局上下文', `result_message` text NOT NULL COMMENT '执行结果', `args_str` text COMMENT '执行方法参数', `args_type` tinyint(4) NOT NULL DEFAULT '1' COMMENT '参数类型 ', `ext_attrs` varchar(256) DEFAULT '' COMMENT '扩展字段', `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间', PRIMARY KEY (`id`) USING BTREE, KEY `idx_task_batch_id_task_status` (`task_batch_id`,`task_status`) USING BTREE, KEY `idx_create_dt` (`create_dt`) USING BTREE, KEY `idx_namespace_id_group_name` (`namespace_id`,`group_name`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='任务实例'; -- ---------------------------- -- Table structure for sj_job_task_batch -- ---------------------------- DROP TABLE IF EXISTS `sj_job_task_batch`; CREATE TABLE `sj_job_task_batch` ( `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键', `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id', `group_name` varchar(64) NOT NULL COMMENT '组名称', `job_id` bigint(20) NOT NULL COMMENT '任务id', `workflow_node_id` bigint(20) NOT NULL DEFAULT '0' COMMENT '工作流节点id', `parent_workflow_node_id` bigint(20) NOT NULL DEFAULT '0' COMMENT '工作流任务父批次id', `workflow_task_batch_id` bigint(20) NOT NULL DEFAULT '0' COMMENT '工作流任务批次id', `task_batch_status` tinyint(4) NOT NULL DEFAULT '0' COMMENT '任务批次状态 0、失败 1、成功', `operation_reason` tinyint(4) NOT NULL DEFAULT '0' COMMENT '操作原因', `execution_at` bigint(13) NOT NULL DEFAULT '0' COMMENT '任务执行时间', `system_task_type` tinyint(4) NOT NULL DEFAULT '3' COMMENT '任务类型 3、JOB任务 4、WORKFLOW任务', `parent_id` varchar(64) NOT NULL DEFAULT '' COMMENT '父节点', `ext_attrs` varchar(256) DEFAULT '' COMMENT '扩展字段', `deleted` tinyint(4) NOT NULL DEFAULT '0' COMMENT '逻辑删除 1、删除', `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间', PRIMARY KEY (`id`) USING BTREE, KEY `idx_job_id_task_batch_status` (`job_id`,`task_batch_status`) USING BTREE, KEY `idx_create_dt` (`create_dt`) USING BTREE, KEY `idx_namespace_id_group_name` (`namespace_id`,`group_name`) USING BTREE, KEY `idx_workflow_task_batch_id_workflow_node_id` (`workflow_task_batch_id`,`workflow_node_id`) USING BTREE ) ENGINE=InnoDB AUTO_INCREMENT=103406 DEFAULT CHARSET=utf8mb4 COMMENT='任务批次'; -- ---------------------------- -- Table structure for sj_namespace -- ---------------------------- DROP TABLE IF EXISTS `sj_namespace`; CREATE TABLE `sj_namespace` ( `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键', `name` varchar(64) NOT NULL COMMENT '名称', `unique_id` varchar(64) NOT NULL COMMENT '唯一id', `description` varchar(256) NOT NULL DEFAULT '' COMMENT '描述', `deleted` tinyint(4) NOT NULL DEFAULT '0' COMMENT '逻辑删除 1、删除', `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间', PRIMARY KEY (`id`) USING BTREE, UNIQUE KEY `uk_unique_id` (`unique_id`) USING BTREE, KEY `idx_name` (`name`) USING BTREE ) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8mb4 COMMENT='命名空间'; -- ---------------------------- -- Table structure for sj_notify_config -- ---------------------------- DROP TABLE IF EXISTS `sj_notify_config`; CREATE TABLE `sj_notify_config` ( `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键', `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id', `group_name` varchar(64) NOT NULL COMMENT '组名称', `notify_name` varchar(64) NOT NULL DEFAULT '' COMMENT '通知名称', `system_task_type` tinyint(4) NOT NULL DEFAULT '3' COMMENT '任务类型 1. 重试任务 2. 重试回调 3、JOB任务 4、WORKFLOW任务', `notify_status` tinyint(4) NOT NULL DEFAULT '0' COMMENT '通知状态 0、未启用 1、启用', `recipient_ids` varchar(128) NOT NULL COMMENT '接收人id列表', `notify_threshold` int(11) NOT NULL DEFAULT '0' COMMENT '通知阈值', `notify_scene` tinyint(4) NOT NULL DEFAULT '0' COMMENT '通知场景', `rate_limiter_status` tinyint(4) NOT NULL DEFAULT '0' COMMENT '限流状态 0、未启用 1、启用', `rate_limiter_threshold` int(11) NOT NULL DEFAULT '0' COMMENT '每秒限流阈值', `description` varchar(256) NOT NULL DEFAULT '' COMMENT '描述', `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间', PRIMARY KEY (`id`) USING BTREE, KEY `idx_namespace_id_group_name_scene_name` (`namespace_id`,`group_name`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='通知配置'; -- ---------------------------- -- Table structure for sj_notify_recipient -- ---------------------------- DROP TABLE IF EXISTS `sj_notify_recipient`; CREATE TABLE `sj_notify_recipient` ( `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键', `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id', `recipient_name` varchar(64) NOT NULL COMMENT '接收人名称', `notify_type` tinyint(4) NOT NULL DEFAULT '0' COMMENT '通知类型 1、钉钉 2、邮件 3、企业微信 4 飞书 5 webhook', `notify_attribute` varchar(512) NOT NULL COMMENT '配置属性', `description` varchar(256) NOT NULL DEFAULT '' COMMENT '描述', `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间', PRIMARY KEY (`id`) USING BTREE, KEY `idx_namespace_id` (`namespace_id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='告警通知接收人'; -- ---------------------------- -- Table structure for sj_retry -- ---------------------------- DROP TABLE IF EXISTS `sj_retry`; CREATE TABLE `sj_retry` ( `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键', `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id', `group_name` varchar(64) NOT NULL COMMENT '组名称', `group_id` bigint(20) NOT NULL COMMENT '组Id', `scene_name` varchar(64) NOT NULL COMMENT '场景名称', `scene_id` bigint(20) NOT NULL COMMENT '场景ID', `idempotent_id` varchar(64) NOT NULL COMMENT '幂等id', `biz_no` varchar(64) NOT NULL DEFAULT '' COMMENT '业务编号', `executor_name` varchar(512) NOT NULL DEFAULT '' COMMENT '执行器名称', `args_str` text NOT NULL COMMENT '执行方法参数', `ext_attrs` text NOT NULL COMMENT '扩展字段', `next_trigger_at` bigint(13) NOT NULL COMMENT '下次触发时间', `retry_count` int(11) NOT NULL DEFAULT '0' COMMENT '重试次数', `retry_status` tinyint(4) NOT NULL DEFAULT '0' COMMENT '重试状态 0、重试中 1、成功 2、最大重试次数', `task_type` tinyint(4) NOT NULL DEFAULT '1' COMMENT '任务类型 1、重试数据 2、回调数据', `bucket_index` int(11) NOT NULL DEFAULT '0' COMMENT 'bucket', `parent_id` bigint(20) NOT NULL DEFAULT '0' COMMENT '父节点id', `deleted` bigint(20) NOT NULL DEFAULT '0' COMMENT '逻辑删除', `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间', PRIMARY KEY (`id`) USING BTREE, UNIQUE KEY `uk_scene_tasktype_idempotentid_deleted` (`scene_id`,`task_type`,`idempotent_id`,`deleted`) USING BTREE, KEY `idx_biz_no` (`biz_no`) USING BTREE, KEY `idx_idempotent_id` (`idempotent_id`) USING BTREE, KEY `idx_retry_status_bucket_index` (`retry_status`,`bucket_index`) USING BTREE, KEY `idx_parent_id` (`parent_id`) USING BTREE, KEY `idx_create_dt` (`create_dt`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='重试信息表'; -- ---------------------------- -- Table structure for sj_retry_dead_letter -- ---------------------------- DROP TABLE IF EXISTS `sj_retry_dead_letter`; CREATE TABLE `sj_retry_dead_letter` ( `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键', `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id', `group_name` varchar(64) NOT NULL COMMENT '组名称', `group_id` bigint(20) NOT NULL COMMENT '组Id', `scene_name` varchar(64) NOT NULL COMMENT '场景名称', `scene_id` bigint(20) NOT NULL COMMENT '场景ID', `idempotent_id` varchar(64) NOT NULL COMMENT '幂等id', `biz_no` varchar(64) NOT NULL DEFAULT '' COMMENT '业务编号', `executor_name` varchar(512) NOT NULL DEFAULT '' COMMENT '执行器名称', `args_str` text NOT NULL COMMENT '执行方法参数', `ext_attrs` text NOT NULL COMMENT '扩展字段', `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', PRIMARY KEY (`id`) USING BTREE, KEY `idx_namespace_id_group_name_scene_name` (`namespace_id`,`group_name`,`scene_name`) USING BTREE, KEY `idx_idempotent_id` (`idempotent_id`) USING BTREE, KEY `idx_biz_no` (`biz_no`) USING BTREE, KEY `idx_create_dt` (`create_dt`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='死信队列表'; -- ---------------------------- -- Table structure for sj_retry_scene_config -- ---------------------------- DROP TABLE IF EXISTS `sj_retry_scene_config`; CREATE TABLE `sj_retry_scene_config` ( `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键', `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id', `scene_name` varchar(64) NOT NULL COMMENT '场景名称', `group_name` varchar(64) NOT NULL COMMENT '组名称', `scene_status` tinyint(4) NOT NULL DEFAULT '0' COMMENT '组状态 0、未启用 1、启用', `max_retry_count` int(11) NOT NULL DEFAULT '5' COMMENT '最大重试次数', `back_off` tinyint(4) NOT NULL DEFAULT '1' COMMENT '1、默认等级 2、固定间隔时间 3、CRON 表达式', `trigger_interval` varchar(16) NOT NULL DEFAULT '' COMMENT '间隔时长', `notify_ids` varchar(128) NOT NULL DEFAULT '' COMMENT '通知告警场景配置id列表', `deadline_request` bigint(20) unsigned NOT NULL DEFAULT '60000' COMMENT 'Deadline Request 调用链超时 单位毫秒', `executor_timeout` int(11) unsigned NOT NULL DEFAULT '5' COMMENT '任务执行超时时间,单位秒', `route_key` tinyint(4) NOT NULL DEFAULT '4' COMMENT '路由策略', `block_strategy` tinyint(4) NOT NULL DEFAULT '1' COMMENT '阻塞策略 1、丢弃 2、覆盖 3、并行', `cb_status` tinyint(4) NOT NULL DEFAULT '0' COMMENT '回调状态 0、不开启 1、开启', `cb_trigger_type` tinyint(4) NOT NULL DEFAULT '1' COMMENT '1、默认等级 2、固定间隔时间 3、CRON 表达式', `cb_max_count` int(11) NOT NULL DEFAULT '16' COMMENT '回调的最大执行次数', `cb_trigger_interval` varchar(16) NOT NULL DEFAULT '' COMMENT '回调的最大执行次数', `description` varchar(256) NOT NULL DEFAULT '' COMMENT '描述', `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间', PRIMARY KEY (`id`) USING BTREE, UNIQUE KEY `uk_namespace_id_group_name_scene_name` (`namespace_id`,`group_name`,`scene_name`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='场景配置'; -- ---------------------------- -- Table structure for sj_retry_summary -- ---------------------------- DROP TABLE IF EXISTS `sj_retry_summary`; CREATE TABLE `sj_retry_summary` ( `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键', `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id', `group_name` varchar(64) NOT NULL DEFAULT '' COMMENT '组名称', `scene_name` varchar(50) NOT NULL DEFAULT '' COMMENT '场景名称', `trigger_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '统计时间', `running_num` int(11) NOT NULL DEFAULT '0' COMMENT '重试中-日志数量', `finish_num` int(11) NOT NULL DEFAULT '0' COMMENT '重试完成-日志数量', `max_count_num` int(11) NOT NULL DEFAULT '0' COMMENT '重试到达最大次数-日志数量', `suspend_num` int(11) NOT NULL DEFAULT '0' COMMENT '暂停重试-日志数量', `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间', PRIMARY KEY (`id`) USING BTREE, UNIQUE KEY `uk_scene_name_trigger_at` (`namespace_id`,`group_name`,`scene_name`,`trigger_at`) USING BTREE, KEY `idx_trigger_at` (`trigger_at`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='DashBoard_Retry'; -- ---------------------------- -- Table structure for sj_retry_task -- ---------------------------- DROP TABLE IF EXISTS `sj_retry_task`; CREATE TABLE `sj_retry_task` ( `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键', `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id', `group_name` varchar(64) NOT NULL COMMENT '组名称', `scene_name` varchar(64) NOT NULL COMMENT '场景名称', `retry_id` bigint(20) NOT NULL COMMENT '重试信息Id', `ext_attrs` text NOT NULL COMMENT '扩展字段', `task_status` tinyint(4) NOT NULL DEFAULT '1' COMMENT '重试状态', `task_type` tinyint(4) NOT NULL DEFAULT '1' COMMENT '任务类型 1、重试数据 2、回调数据', `operation_reason` tinyint(4) NOT NULL DEFAULT '0' COMMENT '操作原因', `client_info` varchar(128) DEFAULT NULL COMMENT '客户端地址 clientId#ip:port', `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间', PRIMARY KEY (`id`) USING BTREE, KEY `idx_group_name_scene_name` (`namespace_id`,`group_name`,`scene_name`) USING BTREE, KEY `task_status` (`task_status`) USING BTREE, KEY `idx_create_dt` (`create_dt`) USING BTREE, KEY `idx_retry_id` (`retry_id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='重试任务表'; -- ---------------------------- -- Table structure for sj_retry_task_log_message -- ---------------------------- DROP TABLE IF EXISTS `sj_retry_task_log_message`; CREATE TABLE `sj_retry_task_log_message` ( `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键', `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id', `group_name` varchar(64) NOT NULL COMMENT '组名称', `retry_id` bigint(20) NOT NULL COMMENT '重试信息Id', `retry_task_id` bigint(20) NOT NULL COMMENT '重试任务Id', `message` longtext NOT NULL COMMENT '异常信息', `log_num` int(11) NOT NULL DEFAULT '1' COMMENT '日志数量', `real_time` bigint(13) NOT NULL DEFAULT '0' COMMENT '上报时间', `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', PRIMARY KEY (`id`) USING BTREE, KEY `idx_namespace_id_group_name_retry_task_id` (`namespace_id`,`group_name`,`retry_task_id`) USING BTREE, KEY `idx_create_dt` (`create_dt`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='任务调度日志信息记录表'; -- ---------------------------- -- Table structure for sj_sequence_alloc -- ---------------------------- DROP TABLE IF EXISTS `sj_sequence_alloc`; CREATE TABLE `sj_sequence_alloc` ( `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键', `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id', `group_name` varchar(64) NOT NULL DEFAULT '' COMMENT '组名称', `max_id` bigint(20) NOT NULL DEFAULT '1' COMMENT '最大id', `step` int(11) NOT NULL DEFAULT '100' COMMENT '步长', `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', PRIMARY KEY (`id`) USING BTREE, UNIQUE KEY `uk_namespace_id_group_name` (`namespace_id`,`group_name`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='号段模式序号ID分配表'; -- ---------------------------- -- Table structure for sj_server_node -- ---------------------------- DROP TABLE IF EXISTS `sj_server_node`; CREATE TABLE `sj_server_node` ( `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键', `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id', `group_name` varchar(64) NOT NULL COMMENT '组名称', `host_id` varchar(64) NOT NULL COMMENT '主机id', `host_ip` varchar(64) NOT NULL COMMENT '机器ip', `host_port` int(16) NOT NULL COMMENT '机器端口', `expire_at` datetime NOT NULL COMMENT '过期时间', `node_type` tinyint(4) NOT NULL COMMENT '节点类型 1、客户端 2、是服务端', `ext_attrs` varchar(256) DEFAULT '' COMMENT '扩展字段', `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间', PRIMARY KEY (`id`) USING BTREE, UNIQUE KEY `uk_host_id_host_ip` (`host_id`,`host_ip`) USING BTREE, KEY `idx_namespace_id_group_name` (`namespace_id`,`group_name`) USING BTREE, KEY `idx_expire_at_node_type` (`expire_at`,`node_type`) USING BTREE ) ENGINE=InnoDB AUTO_INCREMENT=805 DEFAULT CHARSET=utf8mb4 COMMENT='服务器节点'; -- ---------------------------- -- Table structure for sj_system_user -- ---------------------------- DROP TABLE IF EXISTS `sj_system_user`; CREATE TABLE `sj_system_user` ( `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键', `username` varchar(64) NOT NULL COMMENT '账号', `password` varchar(128) NOT NULL COMMENT '密码', `role` tinyint(4) NOT NULL DEFAULT '0' COMMENT '角色:1-普通用户、2-管理员', `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间', PRIMARY KEY (`id`) USING BTREE, UNIQUE KEY `uk_username` (`username`) USING BTREE ) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4 COMMENT='系统用户表'; -- ---------------------------- -- Table structure for sj_system_user_permission -- ---------------------------- DROP TABLE IF EXISTS `sj_system_user_permission`; CREATE TABLE `sj_system_user_permission` ( `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键', `group_name` varchar(64) NOT NULL COMMENT '组名称', `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id', `system_user_id` bigint(20) NOT NULL COMMENT '系统用户id', `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间', PRIMARY KEY (`id`) USING BTREE, UNIQUE KEY `uk_namespace_id_group_name_system_user_id` (`namespace_id`,`group_name`,`system_user_id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='系统用户权限表'; -- ---------------------------- -- Table structure for sj_workflow -- ---------------------------- DROP TABLE IF EXISTS `sj_workflow`; CREATE TABLE `sj_workflow` ( `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键', `workflow_name` varchar(64) NOT NULL COMMENT '工作流名称', `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id', `group_name` varchar(64) NOT NULL COMMENT '组名称', `workflow_status` tinyint(4) NOT NULL DEFAULT '1' COMMENT '工作流状态 0、关闭、1、开启', `trigger_type` tinyint(4) NOT NULL COMMENT '触发类型 1.CRON 表达式 2. 固定时间', `trigger_interval` varchar(255) NOT NULL COMMENT '间隔时长', `next_trigger_at` bigint(20) NOT NULL COMMENT '下次触发时间', `block_strategy` tinyint(4) NOT NULL DEFAULT '1' COMMENT '阻塞策略 1、丢弃 2、覆盖 3、并行', `executor_timeout` int(11) NOT NULL DEFAULT '0' COMMENT '任务执行超时时间,单位秒', `description` varchar(256) NOT NULL DEFAULT '' COMMENT '描述', `flow_info` text COMMENT '流程信息', `wf_context` text COMMENT '上下文', `notify_ids` varchar(128) NOT NULL DEFAULT '' COMMENT '通知告警场景配置id列表', `bucket_index` int(11) NOT NULL DEFAULT '0' COMMENT 'bucket', `version` int(11) NOT NULL COMMENT '版本号', `ext_attrs` varchar(256) DEFAULT '' COMMENT '扩展字段', `deleted` tinyint(4) NOT NULL DEFAULT '0' COMMENT '逻辑删除 1、删除', `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间', PRIMARY KEY (`id`) USING BTREE, KEY `idx_create_dt` (`create_dt`) USING BTREE, KEY `idx_namespace_id_group_name` (`namespace_id`,`group_name`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='工作流'; -- ---------------------------- -- Table structure for sj_workflow_node -- ---------------------------- DROP TABLE IF EXISTS `sj_workflow_node`; CREATE TABLE `sj_workflow_node` ( `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键', `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id', `node_name` varchar(64) NOT NULL COMMENT '节点名称', `group_name` varchar(64) NOT NULL COMMENT '组名称', `job_id` bigint(20) NOT NULL COMMENT '任务信息id', `workflow_id` bigint(20) NOT NULL COMMENT '工作流ID', `node_type` tinyint(4) NOT NULL DEFAULT '1' COMMENT '1、任务节点 2、条件节点', `expression_type` tinyint(4) NOT NULL DEFAULT '0' COMMENT '1、SpEl、2、Aviator 3、QL', `fail_strategy` tinyint(4) NOT NULL DEFAULT '1' COMMENT '失败策略 1、跳过 2、阻塞', `workflow_node_status` tinyint(4) NOT NULL DEFAULT '1' COMMENT '工作流节点状态 0、关闭、1、开启', `priority_level` int(11) NOT NULL DEFAULT '1' COMMENT '优先级', `node_info` text COMMENT '节点信息 ', `version` int(11) NOT NULL COMMENT '版本号', `ext_attrs` varchar(256) DEFAULT '' COMMENT '扩展字段', `deleted` tinyint(4) NOT NULL DEFAULT '0' COMMENT '逻辑删除 1、删除', `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间', PRIMARY KEY (`id`) USING BTREE, KEY `idx_create_dt` (`create_dt`) USING BTREE, KEY `idx_namespace_id_group_name` (`namespace_id`,`group_name`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='工作流节点'; -- ---------------------------- -- Table structure for sj_workflow_task_batch -- ---------------------------- DROP TABLE IF EXISTS `sj_workflow_task_batch`; CREATE TABLE `sj_workflow_task_batch` ( `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键', `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id', `group_name` varchar(64) NOT NULL COMMENT '组名称', `workflow_id` bigint(20) NOT NULL COMMENT '工作流任务id', `task_batch_status` tinyint(4) NOT NULL DEFAULT '0' COMMENT '任务批次状态 0、失败 1、成功', `operation_reason` tinyint(4) NOT NULL DEFAULT '0' COMMENT '操作原因', `flow_info` text COMMENT '流程信息', `wf_context` text COMMENT '全局上下文', `execution_at` bigint(13) NOT NULL DEFAULT '0' COMMENT '任务执行时间', `ext_attrs` varchar(256) DEFAULT '' COMMENT '扩展字段', `version` int(11) NOT NULL DEFAULT '1' COMMENT '版本号', `deleted` tinyint(4) NOT NULL DEFAULT '0' COMMENT '逻辑删除 1、删除', `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间', PRIMARY KEY (`id`) USING BTREE, KEY `idx_job_id_task_batch_status` (`workflow_id`,`task_batch_status`) USING BTREE, KEY `idx_create_dt` (`create_dt`) USING BTREE, KEY `idx_namespace_id_group_name` (`namespace_id`,`group_name`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='工作流批次'; -- ---------------------------- -- Table structure for sys_bucket_access_password -- ---------------------------- DROP TABLE IF EXISTS `sys_bucket_access_password`; CREATE TABLE `sys_bucket_access_password` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID', `bucket_name` varchar(100) NOT NULL COMMENT 'bucket名称', `access_password` varchar(255) NOT NULL COMMENT '访问密码(加密存储)', `password_salt` varchar(100) NOT NULL COMMENT '密码盐值', `is_active` tinyint(4) DEFAULT '1' COMMENT '是否启用(1启用 0禁用)', `expire_time` datetime DEFAULT NULL COMMENT '密码过期时间', `max_access_count` int(11) DEFAULT '0' COMMENT '最大访问次数(0表示无限制)', `current_access_count` int(11) DEFAULT '0' COMMENT '当前访问次数', `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `deleted` tinyint(4) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)', `tenant_id` bigint(20) DEFAULT '0' COMMENT '租户编号', PRIMARY KEY (`id`) USING BTREE, UNIQUE KEY `uk_bucket_name` (`bucket_name`) USING BTREE, KEY `idx_bucket_access_password_bucket_name` (`bucket_name`) USING BTREE ) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4 COMMENT='bucket访问密码表'; -- ---------------------------- -- Table structure for sys_bucket_access_record -- ---------------------------- DROP TABLE IF EXISTS `sys_bucket_access_record`; CREATE TABLE `sys_bucket_access_record` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID', `bucket_name` varchar(100) NOT NULL COMMENT 'bucket名称', `access_password_id` bigint(20) NOT NULL COMMENT '访问密码ID', `access_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '访问时间', `access_ip` varchar(50) DEFAULT NULL COMMENT '访问IP', `access_user_agent` varchar(500) DEFAULT NULL COMMENT '用户代理', `access_result` tinyint(4) DEFAULT '1' COMMENT '访问结果(1成功 0失败)', `fail_reason` varchar(500) DEFAULT NULL COMMENT '失败原因', `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', PRIMARY KEY (`id`) USING BTREE, KEY `idx_bucket_access_record_bucket_name` (`bucket_name`) USING BTREE, KEY `idx_bucket_access_record_access_time` (`access_time`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='bucket访问记录表'; -- ---------------------------- -- Table structure for sys_client -- ---------------------------- DROP TABLE IF EXISTS `sys_client`; CREATE TABLE `sys_client` ( `id` bigint(20) NOT NULL COMMENT 'id', `client_id` varchar(64) DEFAULT NULL COMMENT '客户端id', `client_key` varchar(32) DEFAULT NULL COMMENT '客户端key', `client_secret` varchar(255) DEFAULT NULL COMMENT '客户端秘钥', `grant_type` varchar(255) DEFAULT NULL COMMENT '授权类型', `device_type` varchar(32) DEFAULT NULL COMMENT '设备类型', `active_timeout` int(11) DEFAULT '1800' COMMENT 'token活跃超时时间', `timeout` int(11) DEFAULT '604800' COMMENT 'token固定超时', `status` char(1) DEFAULT '0' COMMENT '状态(0正常 1停用)', `del_flag` char(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL COMMENT '更新时间', PRIMARY KEY (`id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='系统授权表'; -- ---------------------------- -- Table structure for sys_config -- ---------------------------- DROP TABLE IF EXISTS `sys_config`; CREATE TABLE `sys_config` ( `config_id` bigint(20) NOT NULL COMMENT '参数主键', `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号', `config_name` varchar(100) DEFAULT '' COMMENT '参数名称', `config_key` varchar(100) DEFAULT '' COMMENT '参数键名', `config_value` varchar(500) DEFAULT '' COMMENT '参数键值', `config_type` char(1) DEFAULT 'N' COMMENT '系统内置(Y是 N否)', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `remark` varchar(500) DEFAULT NULL COMMENT '备注', PRIMARY KEY (`config_id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='参数配置表'; -- ---------------------------- -- Table structure for sys_dept -- ---------------------------- DROP TABLE IF EXISTS `sys_dept`; CREATE TABLE `sys_dept` ( `dept_id` bigint(20) NOT NULL COMMENT '部门id', `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号', `parent_id` bigint(20) DEFAULT '0' COMMENT '父部门id', `ancestors` varchar(500) DEFAULT '' COMMENT '祖级列表', `dept_name` varchar(30) DEFAULT '' COMMENT '部门名称', `dept_category` varchar(100) DEFAULT NULL COMMENT '部门类别编码', `order_num` int(4) DEFAULT '0' COMMENT '显示顺序', `leader` bigint(20) DEFAULT NULL COMMENT '负责人', `phone` varchar(11) DEFAULT NULL COMMENT '联系电话', `email` varchar(50) DEFAULT NULL COMMENT '邮箱', `status` char(1) DEFAULT '0' COMMENT '部门状态(0正常 1停用)', `del_flag` char(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL COMMENT '更新时间', PRIMARY KEY (`dept_id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='部门表'; -- ---------------------------- -- Table structure for sys_dict_data -- ---------------------------- DROP TABLE IF EXISTS `sys_dict_data`; CREATE TABLE `sys_dict_data` ( `dict_code` bigint(20) NOT NULL COMMENT '字典编码', `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号', `dict_sort` int(4) DEFAULT '0' COMMENT '字典排序', `dict_label` varchar(100) DEFAULT '' COMMENT '字典标签', `dict_value` varchar(100) DEFAULT '' COMMENT '字典键值', `dict_type` varchar(100) DEFAULT '' COMMENT '字典类型', `css_class` varchar(100) DEFAULT NULL COMMENT '样式属性(其他样式扩展)', `list_class` varchar(100) DEFAULT NULL COMMENT '表格回显样式', `is_default` char(1) DEFAULT 'N' COMMENT '是否默认(Y是 N否)', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `remark` varchar(500) DEFAULT NULL COMMENT '备注', PRIMARY KEY (`dict_code`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='字典数据表'; -- ---------------------------- -- Table structure for sys_dict_type -- ---------------------------- DROP TABLE IF EXISTS `sys_dict_type`; CREATE TABLE `sys_dict_type` ( `dict_id` bigint(20) NOT NULL COMMENT '字典主键', `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号', `dict_name` varchar(100) DEFAULT '' COMMENT '字典名称', `dict_type` varchar(100) DEFAULT '' COMMENT '字典类型', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `remark` varchar(500) DEFAULT NULL COMMENT '备注', PRIMARY KEY (`dict_id`) USING BTREE, UNIQUE KEY `tenant_id` (`tenant_id`,`dict_type`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='字典类型表'; -- ---------------------------- -- Table structure for sys_file_access_log -- ---------------------------- DROP TABLE IF EXISTS `sys_file_access_log`; CREATE TABLE `sys_file_access_log` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID', `oss_id` bigint(20) NOT NULL COMMENT '文件ID', `user_id` bigint(20) NOT NULL COMMENT '访问用户ID', `access_type` varchar(20) NOT NULL COMMENT '访问类型:DOWNLOAD, PREVIEW', `access_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '访问时间', `ip_address` varchar(50) DEFAULT NULL COMMENT '访问IP', `user_agent` varchar(500) DEFAULT NULL COMMENT '用户代理', `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', PRIMARY KEY (`id`) USING BTREE, KEY `idx_file_access_log_oss_id` (`oss_id`) USING BTREE, KEY `idx_file_access_log_user_id` (`user_id`) USING BTREE, KEY `idx_file_access_log_access_time` (`access_time`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='文件访问日志表'; -- ---------------------------- -- Table structure for sys_file_permission -- ---------------------------- DROP TABLE IF EXISTS `sys_file_permission`; CREATE TABLE `sys_file_permission` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID', `oss_id` bigint(20) NOT NULL COMMENT '文件ID', `user_id` bigint(20) DEFAULT NULL COMMENT '用户ID(为空表示角色权限)', `role_id` bigint(20) DEFAULT NULL COMMENT '角色ID(为空表示用户权限)', `permission_type` varchar(20) NOT NULL COMMENT '权限类型:READ, WRITE, DELETE', `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `deleted` tinyint(4) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)', `tenant_id` bigint(20) DEFAULT '0' COMMENT '租户编号', PRIMARY KEY (`id`) USING BTREE, KEY `idx_file_permission_oss_id` (`oss_id`) USING BTREE, KEY `idx_file_permission_user_id` (`user_id`) USING BTREE, KEY `idx_file_permission_role_id` (`role_id`) USING BTREE ) ENGINE=InnoDB AUTO_INCREMENT=108 DEFAULT CHARSET=utf8mb4 COMMENT='文件权限表'; -- ---------------------------- -- Table structure for sys_logininfor -- ---------------------------- DROP TABLE IF EXISTS `sys_logininfor`; CREATE TABLE `sys_logininfor` ( `info_id` bigint(20) NOT NULL COMMENT '访问ID', `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号', `user_name` varchar(50) DEFAULT '' COMMENT '用户账号', `client_key` varchar(32) DEFAULT '' COMMENT '客户端', `device_type` varchar(32) DEFAULT '' COMMENT '设备类型', `ipaddr` varchar(128) DEFAULT '' COMMENT '登录IP地址', `login_location` varchar(255) DEFAULT '' COMMENT '登录地点', `browser` varchar(50) DEFAULT '' COMMENT '浏览器类型', `os` varchar(50) DEFAULT '' COMMENT '操作系统', `status` char(1) DEFAULT '0' COMMENT '登录状态(0成功 1失败)', `msg` varchar(255) DEFAULT '' COMMENT '提示消息', `login_time` datetime DEFAULT NULL COMMENT '访问时间', PRIMARY KEY (`info_id`) USING BTREE, KEY `idx_sys_logininfor_s` (`status`) USING BTREE, KEY `idx_sys_logininfor_lt` (`login_time`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='系统访问记录'; -- ---------------------------- -- Table structure for sys_menu -- ---------------------------- DROP TABLE IF EXISTS `sys_menu`; CREATE TABLE `sys_menu` ( `menu_id` bigint(20) NOT NULL COMMENT '菜单ID', `menu_name` varchar(50) NOT NULL COMMENT '菜单名称', `parent_id` bigint(20) DEFAULT '0' COMMENT '父菜单ID', `order_num` int(4) DEFAULT '0' COMMENT '显示顺序', `path` varchar(200) DEFAULT '' COMMENT '路由地址', `component` varchar(255) DEFAULT NULL COMMENT '组件路径', `query_param` varchar(255) DEFAULT NULL COMMENT '路由参数', `is_frame` int(1) DEFAULT '1' COMMENT '是否为外链(0是 1否)', `is_cache` int(1) DEFAULT '0' COMMENT '是否缓存(0缓存 1不缓存)', `menu_type` char(1) DEFAULT '' COMMENT '菜单类型(M目录 C菜单 F按钮)', `visible` char(1) DEFAULT '0' COMMENT '显示状态(0显示 1隐藏)', `status` char(1) DEFAULT '0' COMMENT '菜单状态(0正常 1停用)', `perms` varchar(100) DEFAULT NULL COMMENT '权限标识', `icon` varchar(100) DEFAULT '#' COMMENT '菜单图标', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `remark` varchar(500) DEFAULT '' COMMENT '备注', PRIMARY KEY (`menu_id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='菜单权限表'; -- ---------------------------- -- Table structure for sys_menu_20251004 -- ---------------------------- DROP TABLE IF EXISTS `sys_menu_20251004`; CREATE TABLE `sys_menu_20251004` ( `menu_id` bigint(20) NOT NULL COMMENT '菜单ID', `menu_name` varchar(50) NOT NULL COMMENT '菜单名称', `parent_id` bigint(20) DEFAULT '0' COMMENT '父菜单ID', `order_num` int(4) DEFAULT '0' COMMENT '显示顺序', `path` varchar(200) DEFAULT '' COMMENT '路由地址', `component` varchar(255) DEFAULT NULL COMMENT '组件路径', `query_param` varchar(255) DEFAULT NULL COMMENT '路由参数', `is_frame` int(1) DEFAULT '1' COMMENT '是否为外链(0是 1否)', `is_cache` int(1) DEFAULT '0' COMMENT '是否缓存(0缓存 1不缓存)', `menu_type` char(1) DEFAULT '' COMMENT '菜单类型(M目录 C菜单 F按钮)', `visible` char(1) DEFAULT '0' COMMENT '显示状态(0显示 1隐藏)', `status` char(1) DEFAULT '0' COMMENT '菜单状态(0正常 1停用)', `perms` varchar(100) DEFAULT NULL COMMENT '权限标识', `icon` varchar(100) DEFAULT '#' COMMENT '菜单图标', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `remark` varchar(500) DEFAULT '' COMMENT '备注', PRIMARY KEY (`menu_id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='菜单权限表'; -- ---------------------------- -- Table structure for sys_menu_linshi -- ---------------------------- DROP TABLE IF EXISTS `sys_menu_linshi`; CREATE TABLE `sys_menu_linshi` ( `menu_id` bigint(20) NOT NULL COMMENT '菜单ID', `menu_name` varchar(50) NOT NULL COMMENT '菜单名称', `parent_id` bigint(20) DEFAULT '0' COMMENT '父菜单ID', `order_num` int(4) DEFAULT '0' COMMENT '显示顺序', `path` varchar(200) DEFAULT '' COMMENT '路由地址', `component` varchar(255) DEFAULT NULL COMMENT '组件路径', `query_param` varchar(255) DEFAULT NULL COMMENT '路由参数', `is_frame` int(1) DEFAULT '1' COMMENT '是否为外链(0是 1否)', `is_cache` int(1) DEFAULT '0' COMMENT '是否缓存(0缓存 1不缓存)', `menu_type` char(1) DEFAULT '' COMMENT '菜单类型(M目录 C菜单 F按钮)', `visible` char(1) DEFAULT '0' COMMENT '显示状态(0显示 1隐藏)', `status` char(1) DEFAULT '0' COMMENT '菜单状态(0正常 1停用)', `perms` varchar(100) DEFAULT NULL COMMENT '权限标识', `icon` varchar(100) DEFAULT '#' COMMENT '菜单图标', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `remark` varchar(500) DEFAULT '' COMMENT '备注', PRIMARY KEY (`menu_id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='菜单权限表'; -- ---------------------------- -- Table structure for sys_notice -- ---------------------------- DROP TABLE IF EXISTS `sys_notice`; CREATE TABLE `sys_notice` ( `notice_id` bigint(20) NOT NULL COMMENT '公告ID', `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号', `notice_title` varchar(50) NOT NULL COMMENT '公告标题', `notice_type` char(1) NOT NULL COMMENT '公告类型(1通知 2公告)', `notice_content` longblob COMMENT '公告内容', `status` char(1) DEFAULT '0' COMMENT '公告状态(0正常 1关闭)', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `remark` varchar(255) DEFAULT NULL COMMENT '备注', PRIMARY KEY (`notice_id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='通知公告表'; -- ---------------------------- -- Table structure for sys_oper_log -- ---------------------------- DROP TABLE IF EXISTS `sys_oper_log`; CREATE TABLE `sys_oper_log` ( `oper_id` bigint(20) NOT NULL COMMENT '日志主键', `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号', `title` varchar(50) DEFAULT '' COMMENT '模块标题', `business_type` int(2) DEFAULT '0' COMMENT '业务类型(0其它 1新增 2修改 3删除)', `method` varchar(100) DEFAULT '' COMMENT '方法名称', `request_method` varchar(10) DEFAULT '' COMMENT '请求方式', `operator_type` int(1) DEFAULT '0' COMMENT '操作类别(0其它 1后台用户 2手机端用户)', `oper_name` varchar(50) DEFAULT '' COMMENT '操作人员', `dept_name` varchar(50) DEFAULT '' COMMENT '部门名称', `oper_url` varchar(255) DEFAULT '' COMMENT '请求URL', `oper_ip` varchar(128) DEFAULT '' COMMENT '主机地址', `oper_location` varchar(255) DEFAULT '' COMMENT '操作地点', `oper_param` varchar(4000) DEFAULT '' COMMENT '请求参数', `json_result` varchar(4000) DEFAULT '' COMMENT '返回参数', `status` int(1) DEFAULT '0' COMMENT '操作状态(0正常 1异常)', `error_msg` varchar(4000) DEFAULT '' COMMENT '错误消息', `oper_time` datetime DEFAULT NULL COMMENT '操作时间', `cost_time` bigint(20) DEFAULT '0' COMMENT '消耗时间', PRIMARY KEY (`oper_id`) USING BTREE, KEY `idx_sys_oper_log_bt` (`business_type`) USING BTREE, KEY `idx_sys_oper_log_s` (`status`) USING BTREE, KEY `idx_sys_oper_log_ot` (`oper_time`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='操作日志记录'; -- ---------------------------- -- Table structure for sys_oss -- ---------------------------- DROP TABLE IF EXISTS `sys_oss`; CREATE TABLE `sys_oss` ( `oss_id` bigint(20) NOT NULL COMMENT '对象存储主键', `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号', `file_name` varchar(255) NOT NULL DEFAULT '' COMMENT '文件名', `original_name` varchar(255) NOT NULL DEFAULT '' COMMENT '原名', `file_suffix` varchar(10) NOT NULL DEFAULT '' COMMENT '文件后缀名', `url` varchar(500) NOT NULL COMMENT 'URL地址', `ext1` text COMMENT '扩展字段', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `create_by` bigint(20) DEFAULT NULL COMMENT '上传人', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新人', `service` varchar(20) NOT NULL DEFAULT 'minio' COMMENT '服务商', PRIMARY KEY (`oss_id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='OSS对象存储表'; -- ---------------------------- -- Table structure for sys_oss_config -- ---------------------------- DROP TABLE IF EXISTS `sys_oss_config`; CREATE TABLE `sys_oss_config` ( `oss_config_id` bigint(20) NOT NULL COMMENT '主键', `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号', `config_key` varchar(20) NOT NULL DEFAULT '' COMMENT '配置key', `access_key` varchar(255) DEFAULT '' COMMENT 'accessKey', `secret_key` varchar(255) DEFAULT '' COMMENT '秘钥', `bucket_name` varchar(255) DEFAULT '' COMMENT '桶名称', `prefix` varchar(255) DEFAULT '' COMMENT '前缀', `endpoint` varchar(255) DEFAULT '' COMMENT '访问站点', `domain` varchar(255) DEFAULT '' COMMENT '自定义域名', `is_https` char(1) DEFAULT 'N' COMMENT '是否https(Y=是,N=否)', `region` varchar(255) DEFAULT '' COMMENT '域', `access_policy` char(1) NOT NULL DEFAULT '1' COMMENT '桶权限类型(0=private 1=public 2=custom)', `status` char(1) DEFAULT '1' COMMENT '是否默认(0=是,1=否)', `ext1` varchar(255) DEFAULT '' COMMENT '扩展字段', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `remark` varchar(500) DEFAULT NULL COMMENT '备注', PRIMARY KEY (`oss_config_id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='对象存储配置表'; -- ---------------------------- -- Table structure for sys_post -- ---------------------------- DROP TABLE IF EXISTS `sys_post`; CREATE TABLE `sys_post` ( `post_id` bigint(20) NOT NULL COMMENT '岗位ID', `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号', `dept_id` bigint(20) NOT NULL COMMENT '部门id', `post_code` varchar(64) NOT NULL COMMENT '岗位编码', `post_category` varchar(100) DEFAULT NULL COMMENT '岗位类别编码', `post_name` varchar(50) NOT NULL COMMENT '岗位名称', `post_sort` int(4) NOT NULL COMMENT '显示顺序', `status` char(1) NOT NULL COMMENT '状态(0正常 1停用)', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `remark` varchar(500) DEFAULT NULL COMMENT '备注', PRIMARY KEY (`post_id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='岗位信息表'; -- ---------------------------- -- Table structure for sys_region -- ---------------------------- DROP TABLE IF EXISTS `sys_region`; CREATE TABLE `sys_region` ( `id` bigint(20) NOT NULL COMMENT '主键ID', `code` varchar(20) NOT NULL COMMENT '行政区划编码', `name` varchar(50) NOT NULL COMMENT '行政区划名称', `short_name` varchar(30) DEFAULT NULL COMMENT '行政区划简称', `parent_code` bigint(20) DEFAULT '0' COMMENT '父级行政区划编码,顶级为0', `level` tinyint(1) NOT NULL COMMENT '层级(1:省,2:市,3:区/县,4:街道/镇)', `sort` int(11) DEFAULT '0' COMMENT '排序', `status` char(1) DEFAULT '0' COMMENT '状态(0正常 1停用)', `remark` varchar(500) DEFAULT NULL COMMENT '备注', `longitude` decimal(10,7) DEFAULT NULL COMMENT '经度', `latitude` decimal(10,7) DEFAULT NULL COMMENT '纬度', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `deleted` tinyint(1) DEFAULT '0' COMMENT '逻辑删除标识(0未删除 1已删除)', `tenant_id` bigint(20) DEFAULT NULL COMMENT '租户ID', PRIMARY KEY (`id`) USING BTREE, UNIQUE KEY `idx_region_code` (`code`,`deleted`,`tenant_id`) USING BTREE, KEY `idx_region_parent_code` (`parent_code`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='行政区划表'; -- ---------------------------- -- Table structure for sys_role -- ---------------------------- DROP TABLE IF EXISTS `sys_role`; CREATE TABLE `sys_role` ( `role_id` bigint(20) NOT NULL COMMENT '角色ID', `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号', `role_name` varchar(30) NOT NULL COMMENT '角色名称', `role_key` varchar(100) NOT NULL COMMENT '角色权限字符串', `role_sort` int(4) NOT NULL COMMENT '显示顺序', `data_scope` char(1) DEFAULT '1' COMMENT '数据范围(1:全部数据权限 2:自定数据权限 3:本部门数据权限 4:本部门及以下数据权限 5:仅本人数据权限 6:部门及以下或本人数据权限)', `menu_check_strictly` tinyint(1) DEFAULT '1' COMMENT '菜单树选择项是否关联显示', `dept_check_strictly` tinyint(1) DEFAULT '1' COMMENT '部门树选择项是否关联显示', `status` char(1) NOT NULL COMMENT '角色状态(0正常 1停用)', `del_flag` char(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `remark` varchar(500) DEFAULT NULL COMMENT '备注', PRIMARY KEY (`role_id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='角色信息表'; -- ---------------------------- -- Table structure for sys_role_dept -- ---------------------------- DROP TABLE IF EXISTS `sys_role_dept`; CREATE TABLE `sys_role_dept` ( `role_id` bigint(20) NOT NULL COMMENT '角色ID', `dept_id` bigint(20) NOT NULL COMMENT '部门ID', PRIMARY KEY (`role_id`,`dept_id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='角色和部门关联表'; -- ---------------------------- -- Table structure for sys_role_menu -- ---------------------------- DROP TABLE IF EXISTS `sys_role_menu`; CREATE TABLE `sys_role_menu` ( `role_id` bigint(20) NOT NULL COMMENT '角色ID', `menu_id` bigint(20) NOT NULL COMMENT '菜单ID', PRIMARY KEY (`role_id`,`menu_id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='角色和菜单关联表'; -- ---------------------------- -- Table structure for sys_social -- ---------------------------- DROP TABLE IF EXISTS `sys_social`; CREATE TABLE `sys_social` ( `id` bigint(20) NOT NULL COMMENT '主键', `user_id` bigint(20) NOT NULL COMMENT '用户ID', `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户id', `auth_id` varchar(255) NOT NULL COMMENT '平台+平台唯一id', `source` varchar(255) NOT NULL COMMENT '用户来源', `open_id` varchar(255) DEFAULT NULL COMMENT '平台编号唯一id', `user_name` varchar(30) NOT NULL COMMENT '登录账号', `nick_name` varchar(30) DEFAULT '' COMMENT '用户昵称', `email` varchar(255) DEFAULT '' COMMENT '用户邮箱', `avatar` varchar(500) DEFAULT '' COMMENT '头像地址', `access_token` varchar(2000) NOT NULL COMMENT '用户的授权令牌', `expire_in` int(11) DEFAULT NULL COMMENT '用户的授权令牌的有效期,部分平台可能没有', `refresh_token` varchar(255) DEFAULT NULL COMMENT '刷新令牌,部分平台可能没有', `access_code` varchar(2000) DEFAULT NULL COMMENT '平台的授权信息,部分平台可能没有', `union_id` varchar(255) DEFAULT NULL COMMENT '用户的 unionid', `scope` varchar(255) DEFAULT NULL COMMENT '授予的权限,部分平台可能没有', `token_type` varchar(255) DEFAULT NULL COMMENT '个别平台的授权信息,部分平台可能没有', `id_token` varchar(2000) DEFAULT NULL COMMENT 'id token,部分平台可能没有', `mac_algorithm` varchar(255) DEFAULT NULL COMMENT '小米平台用户的附带属性,部分平台可能没有', `mac_key` varchar(255) DEFAULT NULL COMMENT '小米平台用户的附带属性,部分平台可能没有', `code` varchar(255) DEFAULT NULL COMMENT '用户的授权code,部分平台可能没有', `oauth_token` varchar(255) DEFAULT NULL COMMENT 'Twitter平台用户的附带属性,部分平台可能没有', `oauth_token_secret` varchar(255) DEFAULT NULL COMMENT 'Twitter平台用户的附带属性,部分平台可能没有', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `del_flag` char(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)', PRIMARY KEY (`id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='社会化关系表'; -- ---------------------------- -- Table structure for sys_tenant -- ---------------------------- DROP TABLE IF EXISTS `sys_tenant`; CREATE TABLE `sys_tenant` ( `id` bigint(20) NOT NULL COMMENT 'id', `tenant_id` varchar(20) NOT NULL COMMENT '租户编号', `contact_user_name` varchar(20) DEFAULT NULL COMMENT '联系人', `contact_phone` varchar(20) DEFAULT NULL COMMENT '联系电话', `company_name` varchar(30) DEFAULT NULL COMMENT '企业名称', `license_number` varchar(30) DEFAULT NULL COMMENT '统一社会信用代码', `address` varchar(200) DEFAULT NULL COMMENT '地址', `intro` varchar(200) DEFAULT NULL COMMENT '企业简介', `domain` varchar(200) DEFAULT NULL COMMENT '域名', `remark` varchar(200) DEFAULT NULL COMMENT '备注', `package_id` bigint(20) DEFAULT NULL COMMENT '租户套餐编号', `expire_time` datetime DEFAULT NULL COMMENT '过期时间', `account_count` int(11) DEFAULT '-1' COMMENT '用户数量(-1不限制)', `status` char(1) DEFAULT '0' COMMENT '租户状态(0正常 1停用)', `del_flag` char(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL COMMENT '更新时间', PRIMARY KEY (`id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='租户表'; -- ---------------------------- -- Table structure for sys_tenant_package -- ---------------------------- DROP TABLE IF EXISTS `sys_tenant_package`; CREATE TABLE `sys_tenant_package` ( `package_id` bigint(20) NOT NULL COMMENT '租户套餐id', `package_name` varchar(20) DEFAULT NULL COMMENT '套餐名称', `menu_ids` varchar(3000) DEFAULT NULL COMMENT '关联菜单id', `remark` varchar(200) DEFAULT NULL COMMENT '备注', `menu_check_strictly` tinyint(1) DEFAULT '1' COMMENT '菜单树选择项是否关联显示', `status` char(1) DEFAULT '0' COMMENT '状态(0正常 1停用)', `del_flag` char(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL COMMENT '更新时间', PRIMARY KEY (`package_id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='租户套餐表'; -- ---------------------------- -- Table structure for sys_user -- ---------------------------- DROP TABLE IF EXISTS `sys_user`; CREATE TABLE `sys_user` ( `user_id` bigint(20) NOT NULL COMMENT '用户ID', `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号', `dept_id` bigint(20) DEFAULT NULL COMMENT '部门ID', `user_name` varchar(30) NOT NULL COMMENT '用户账号', `nick_name` varchar(30) NOT NULL COMMENT '用户昵称', `user_type` varchar(10) DEFAULT 'sys_user' COMMENT '用户类型(sys_user系统用户)', `email` varchar(50) DEFAULT '' COMMENT '用户邮箱', `phonenumber` varchar(11) DEFAULT '' COMMENT '手机号码', `sex` char(1) DEFAULT '0' COMMENT '用户性别(0男 1女 2未知)', `avatar` bigint(20) DEFAULT NULL COMMENT '头像地址', `password` varchar(100) DEFAULT '' COMMENT '密码', `status` char(1) DEFAULT '0' COMMENT '帐号状态(0正常 1停用)', `del_flag` char(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)', `login_ip` varchar(128) DEFAULT '' COMMENT '最后登录IP', `login_date` datetime DEFAULT NULL COMMENT '最后登录时间', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `remark` varchar(500) DEFAULT NULL COMMENT '备注', `account_type` varchar(255) DEFAULT '1' COMMENT '账户类型 1 - 教职工 2- 学生', PRIMARY KEY (`user_id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='用户信息表'; -- ---------------------------- -- Table structure for sys_user_post -- ---------------------------- DROP TABLE IF EXISTS `sys_user_post`; CREATE TABLE `sys_user_post` ( `user_id` bigint(20) NOT NULL COMMENT '用户ID', `post_id` bigint(20) NOT NULL COMMENT '岗位ID', PRIMARY KEY (`user_id`,`post_id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='用户与岗位关联表'; -- ---------------------------- -- Table structure for sys_user_role -- ---------------------------- DROP TABLE IF EXISTS `sys_user_role`; CREATE TABLE `sys_user_role` ( `user_id` bigint(20) NOT NULL COMMENT '用户ID', `role_id` bigint(20) NOT NULL COMMENT '角色ID', PRIMARY KEY (`user_id`,`role_id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='用户和角色关联表'; -- ---------------------------- -- Table structure for sys_wechat_config -- ---------------------------- DROP TABLE IF EXISTS `sys_wechat_config`; CREATE TABLE `sys_wechat_config` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '参数主键', `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号', `config_name` varchar(100) DEFAULT '' COMMENT '参数名称', `config_key` varchar(100) DEFAULT '' COMMENT '参数键名', `config_value` varchar(500) DEFAULT '' COMMENT '参数键值', `config_type` char(1) DEFAULT 'N' COMMENT '系统内置(Y是 N否)', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `remark` varchar(500) DEFAULT NULL COMMENT '备注', PRIMARY KEY (`id`) USING BTREE ) ENGINE=InnoDB AUTO_INCREMENT=8 DEFAULT CHARSET=utf8mb4 COMMENT='参数配置表'; -- ---------------------------- -- Table structure for test_demo -- ---------------------------- DROP TABLE IF EXISTS `test_demo`; CREATE TABLE `test_demo` ( `id` bigint(20) NOT NULL COMMENT '主键', `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号', `dept_id` bigint(20) DEFAULT NULL COMMENT '部门id', `user_id` bigint(20) DEFAULT NULL COMMENT '用户id', `order_num` int(11) DEFAULT '0' COMMENT '排序号', `test_key` varchar(255) DEFAULT NULL COMMENT 'key键', `value` varchar(255) DEFAULT NULL COMMENT '值', `version` int(11) DEFAULT '0' COMMENT '版本', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `create_by` bigint(20) DEFAULT NULL COMMENT '创建人', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新人', `del_flag` int(11) DEFAULT '0' COMMENT '删除标志', PRIMARY KEY (`id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='测试单表'; -- ---------------------------- -- Table structure for test_leave -- ---------------------------- DROP TABLE IF EXISTS `test_leave`; CREATE TABLE `test_leave` ( `id` bigint(20) NOT NULL COMMENT 'id', `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号', `leave_type` varchar(255) NOT NULL COMMENT '请假类型', `start_date` datetime NOT NULL COMMENT '开始时间', `end_date` datetime NOT NULL COMMENT '结束时间', `leave_days` int(10) NOT NULL COMMENT '请假天数', `remark` varchar(255) DEFAULT NULL COMMENT '请假原因', `status` varchar(255) DEFAULT NULL COMMENT '状态', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL COMMENT '更新时间', PRIMARY KEY (`id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='请假申请表'; -- ---------------------------- -- Table structure for test_tree -- ---------------------------- DROP TABLE IF EXISTS `test_tree`; CREATE TABLE `test_tree` ( `id` bigint(20) NOT NULL COMMENT '主键', `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号', `parent_id` bigint(20) DEFAULT '0' COMMENT '父id', `dept_id` bigint(20) DEFAULT NULL COMMENT '部门id', `user_id` bigint(20) DEFAULT NULL COMMENT '用户id', `tree_name` varchar(255) DEFAULT NULL COMMENT '值', `version` int(11) DEFAULT '0' COMMENT '版本', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `create_by` bigint(20) DEFAULT NULL COMMENT '创建人', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新人', `del_flag` int(11) DEFAULT '0' COMMENT '删除标志', PRIMARY KEY (`id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='测试树表'; -- ---------------------------- -- Table structure for xg_class_msg -- ---------------------------- DROP TABLE IF EXISTS `xg_class_msg`; CREATE TABLE `xg_class_msg` ( `id` bigint(20) NOT NULL COMMENT '主键ID(雪花ID)', `tenant_id` varchar(20) NOT NULL DEFAULT '000000' COMMENT '租户编号', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)', `college_id` bigint(20) DEFAULT NULL COMMENT '学院代码', `college_name` varchar(100) DEFAULT NULL COMMENT '学院名称', `major_id` bigint(20) DEFAULT NULL COMMENT '专业代码', `major_name` varchar(100) DEFAULT NULL COMMENT '专业名称', `class_code` varchar(32) NOT NULL COMMENT '班级代码', `class_name` varchar(100) NOT NULL COMMENT '班级名称', `class_type` varchar(20) DEFAULT '1' COMMENT '班级类型:1-中级工 2-高级工 3-预备技师 4-技师 5-中高职一体', `grade` varchar(10) NOT NULL COMMENT '年级', `enrollment_year` int(4) NOT NULL COMMENT '入学年份', `graduation_year` int(4) DEFAULT NULL COMMENT '毕业年份', `training_type` varchar(20) DEFAULT NULL COMMENT '培养方式:全日制,在职,函授,夜大等', `degree_type` varchar(20) DEFAULT NULL COMMENT '学位类型:学士,硕士,博士,专科', `counselor_id` bigint(20) DEFAULT NULL COMMENT '辅导员ID', `counselor_name` varchar(50) DEFAULT NULL COMMENT '辅导员姓名', `class_teacher_id` bigint(20) DEFAULT NULL COMMENT '班主任ID', `class_teacher_name` varchar(50) DEFAULT NULL COMMENT '班主任姓名', `class_advisor_id` bigint(20) DEFAULT NULL COMMENT '班级导师ID', `class_advisor_name` varchar(50) DEFAULT NULL COMMENT '班级导师姓名', `class_monitor_id` bigint(20) DEFAULT NULL COMMENT '班长ID', `class_monitor_name` varchar(50) DEFAULT NULL COMMENT '班长姓名', `deputy_monitor_id` bigint(20) DEFAULT NULL COMMENT '副班长ID', `deputy_monitor_name` varchar(50) DEFAULT NULL COMMENT '副班长姓名', `class_status` char(1) DEFAULT '1' COMMENT '班级状态:1-正常,2-暂停,3-毕业,4-解散', `is_graduation` tinyint(1) DEFAULT '0' COMMENT '是否已毕业:0-未毕业,1-已毕业', `graduation_date` date DEFAULT NULL COMMENT '毕业日期', `planned_capacity` int(11) DEFAULT '50' COMMENT '计划容量', `current_student_count` int(11) DEFAULT '0' COMMENT '当前学生人数', `max_student_count` int(11) DEFAULT '50' COMMENT '最大学生人数', `male_count` int(11) DEFAULT '0' COMMENT '男生人数', `female_count` int(11) DEFAULT '0' COMMENT '女生人数', `active_count` int(11) DEFAULT '0' COMMENT '在籍人数', `transfer_in_count` int(11) DEFAULT '0' COMMENT '转入人数', `transfer_out_count` int(11) DEFAULT '0' COMMENT '转出人数', `dropout_count` int(11) DEFAULT '0' COMMENT '退学人数', `graduate_count` int(11) DEFAULT '0' COMMENT '毕业人数', `office_location` varchar(200) DEFAULT NULL COMMENT '班级办公室位置', `class_location` varchar(100) DEFAULT NULL COMMENT '班级教室位置', `contact_phone` varchar(20) DEFAULT NULL COMMENT '联系电话', `qq_group` varchar(20) DEFAULT NULL COMMENT 'QQ群号', `wechat_group` varchar(100) DEFAULT NULL COMMENT '微信群', `email` varchar(100) DEFAULT NULL COMMENT '班级邮箱', `class_schedule` text COMMENT '课程安排(JSON格式)', `class_culture` text COMMENT '班级文化建设', `class_rules` text COMMENT '班级规章制度', `class_description` varchar(500) DEFAULT NULL COMMENT '班级描述', `last_count_update` datetime DEFAULT NULL COMMENT '最后统计更新时间', `ext_field1` varchar(200) DEFAULT NULL COMMENT '扩展字段1', `ext_field2` varchar(200) DEFAULT NULL COMMENT '扩展字段2', `ext_field3` varchar(200) DEFAULT NULL COMMENT '扩展字段3', `remark` varchar(500) DEFAULT NULL COMMENT '备注信息', `school_system` int(11) DEFAULT '4' COMMENT '学制(年)', PRIMARY KEY (`id`) USING BTREE, KEY `uk_class_code_tenant` (`class_code`,`tenant_id`) USING BTREE, KEY `idx_tenant_id` (`tenant_id`) USING BTREE, KEY `idx_deleted` (`deleted`) USING BTREE, KEY `idx_college_id` (`college_id`) USING BTREE, KEY `idx_enrollment_year` (`enrollment_year`) USING BTREE, KEY `idx_grade` (`grade`) USING BTREE, KEY `idx_major_id` (`major_id`) USING BTREE, KEY `idx_counselor_id` (`counselor_id`) USING BTREE, KEY `idx_class_teacher_id` (`class_teacher_id`) USING BTREE, KEY `idx_class_status` (`class_status`) USING BTREE, KEY `idx_college_grade` (`college_id`,`grade`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='班级信息表-新版'; -- ---------------------------- -- Table structure for xg_class_pos_dict -- ---------------------------- DROP TABLE IF EXISTS `xg_class_pos_dict`; CREATE TABLE `xg_class_pos_dict` ( `id` bigint(20) NOT NULL COMMENT '主键ID(雪花ID)', `tenant_id` varchar(20) NOT NULL DEFAULT '000000' COMMENT '租户编号', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)', `position_code` varchar(20) NOT NULL COMMENT '职务编码', `position_name` varchar(50) NOT NULL COMMENT '职务名称', `position_category` varchar(20) DEFAULT 'class' COMMENT '学生职务类别:class-班级干部,party-党团干部,other-其他', `position_level` tinyint(1) NOT NULL DEFAULT '9' COMMENT '学生职务级别:1-班长,2-副班长,3-委员,9-普通成员', `position_type` varchar(20) DEFAULT 'regular' COMMENT '学生职务类型:regular-常规职务,special-特殊职务,temporary-临时职务', `responsibilities` text COMMENT '职责描述', `status` char(1) DEFAULT '1' COMMENT '状态:0-启用,1-停用', `sort_order` int(11) DEFAULT '0' COMMENT '排序顺序', `remark` varchar(500) DEFAULT NULL COMMENT '备注信息', PRIMARY KEY (`id`) USING BTREE, KEY `idx_tenant_id` (`tenant_id`) USING BTREE, KEY `idx_deleted` (`deleted`) USING BTREE, KEY `idx_position_level` (`position_level`) USING BTREE, KEY `idx_position_category` (`position_category`) USING BTREE, KEY `idx_dict_status` (`status`) USING BTREE, KEY `idx_sort_order` (`sort_order`) USING BTREE, KEY `idx_position_type` (`position_type`) USING BTREE, KEY `uk_position_code_tenant` (`position_code`,`tenant_id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='班级干部职务字典表'; -- ---------------------------- -- Table structure for xg_class_pos_msg -- ---------------------------- DROP TABLE IF EXISTS `xg_class_pos_msg`; CREATE TABLE `xg_class_pos_msg` ( `id` bigint(20) NOT NULL COMMENT '主键ID(雪花ID)', `tenant_id` varchar(20) NOT NULL DEFAULT '000000' COMMENT '租户编号', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)', `class_id` bigint(20) NOT NULL COMMENT '班级ID,关联xg_class_msg.id', `student_id` bigint(20) NOT NULL COMMENT '学生ID,关联xg_student_msg.id', `student_no` varchar(32) NOT NULL COMMENT '学号', `student_name` varchar(50) NOT NULL COMMENT '学生姓名(冗余字段)', `position_id` bigint(20) NOT NULL COMMENT '职务编码,关联xg_class_pos_dict.id', `position_code` varchar(20) NOT NULL COMMENT '职务编码,关联xg_class_pos_dict.position_code', `appointment_date` date NOT NULL COMMENT '任职日期', `term_start_date` date NOT NULL COMMENT '任期开始日期', `term_end_date` date DEFAULT NULL COMMENT '任期结束日期', `term_duration` int(11) DEFAULT '12' COMMENT '任期时长(月)', `is_current` tinyint(1) DEFAULT '1' COMMENT '是否现任:0-否,1-是', `cadre_status` char(1) DEFAULT '1' COMMENT '学生职务任职状态:1-在任,2-到期,3-辞职,4-免职,5-调任,6-休学', `appointment_reason` varchar(200) DEFAULT NULL COMMENT '任命原因', `appointment_method` varchar(20) DEFAULT 'appointment' COMMENT '学生职务任命方式:appointment-任命,election-选举,recommendation-推荐', `dismissal_date` date DEFAULT NULL COMMENT '离任日期', `dismissal_reason` varchar(200) DEFAULT NULL COMMENT '离任原因', `remark` varchar(500) DEFAULT NULL COMMENT '备注信息', PRIMARY KEY (`id`) USING BTREE, KEY `idx_tenant_id` (`tenant_id`) USING BTREE, KEY `idx_deleted` (`deleted`) USING BTREE, KEY `idx_class_id` (`class_id`) USING BTREE, KEY `idx_student_id` (`student_id`) USING BTREE, KEY `idx_position_code` (`position_code`) USING BTREE, KEY `idx_cadre_status` (`cadre_status`) USING BTREE, KEY `idx_is_current` (`is_current`) USING BTREE, KEY `idx_appointment_date` (`appointment_date`) USING BTREE, KEY `idx_term_dates` (`term_start_date`,`term_end_date`) USING BTREE, KEY `idx_class_position` (`class_id`,`position_code`,`is_current`) USING BTREE, KEY `idx_student_cadre` (`student_id`,`is_current`,`cadre_status`) USING BTREE, KEY `uk_class_student_position` (`class_id`,`student_id`,`position_code`,`tenant_id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='班级干部信息表'; -- ---------------------------- -- Table structure for xg_class_teacher_counselor_rel -- ---------------------------- DROP TABLE IF EXISTS `xg_class_teacher_counselor_rel`; CREATE TABLE `xg_class_teacher_counselor_rel` ( `id` bigint(20) NOT NULL COMMENT '主键ID(雪花ID)', `tenant_id` varchar(20) NOT NULL DEFAULT '000000' COMMENT '租户编号', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)', `class_id` bigint(20) NOT NULL COMMENT '班级ID,关联xg_class_msg.id', `class_name` varchar(100) DEFAULT NULL COMMENT '班级名称', `teacher_id` bigint(20) NOT NULL COMMENT '教师ID,关联sys_user.user_id', `teacher_name` varchar(50) DEFAULT NULL COMMENT '教师姓名', `teacher_type` varchar(20) NOT NULL COMMENT '教师类型:class_teacher-班主任,counselor-辅导员,advisor-导师', `start_date` datetime NOT NULL COMMENT '开始日期', `end_date` datetime DEFAULT NULL COMMENT '结束日期', `remark` varchar(500) DEFAULT NULL COMMENT '备注信息', PRIMARY KEY (`id`) USING BTREE, KEY `idx_tenant_id` (`tenant_id`) USING BTREE, KEY `idx_deleted` (`deleted`) USING BTREE, KEY `idx_class_id` (`class_id`) USING BTREE, KEY `idx_teacher_id` (`teacher_id`) USING BTREE, KEY `idx_teacher_type` (`teacher_type`) USING BTREE, KEY `idx_start_date` (`start_date`) USING BTREE, KEY `idx_end_date` (`end_date`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='班级班主任辅导员关联表'; -- ---------------------------- -- Table structure for xg_dorm_application -- ---------------------------- DROP TABLE IF EXISTS `xg_dorm_application`; CREATE TABLE `xg_dorm_application` ( `id` bigint(20) NOT NULL COMMENT '主键ID(雪花ID)', `application_name` varchar(50) NOT NULL COMMENT '申请名称', `application_type` char(1) NOT NULL COMMENT '申请类型(1:调宿申请 2:退宿申请)', `application_status` char(20) DEFAULT 'waiting' COMMENT '审批状态:cancel-已撤销 , draft-草稿, waiting-待审核, finish-已完成, invalid-已作废, back-已退回, termination-已终止"', `student_id` bigint(20) NOT NULL COMMENT '申请学生ID', `student_no` varchar(20) NOT NULL COMMENT '学号', `student_name` varchar(50) NOT NULL COMMENT '学生姓名', `student_phone` varchar(20) DEFAULT NULL COMMENT '学生联系电话', `college_id` bigint(20) NOT NULL COMMENT '学院ID', `college_name` varchar(100) DEFAULT NULL COMMENT '学院名称', `major_id` bigint(20) DEFAULT NULL COMMENT '专业ID', `major_name` varchar(100) DEFAULT NULL COMMENT '专业名称', `class_id` bigint(20) DEFAULT NULL COMMENT '班级ID', `class_name` varchar(100) DEFAULT NULL COMMENT '班级名称', `current_campus_id` bigint(20) DEFAULT NULL COMMENT '当前校区ID', `current_campus_name` varchar(100) DEFAULT NULL COMMENT '当前校区名称', `current_building_id` bigint(20) DEFAULT NULL COMMENT '当前宿舍楼ID', `current_building_name` varchar(100) DEFAULT NULL COMMENT '当前宿舍楼名称', `current_room_id` bigint(20) DEFAULT NULL COMMENT '当前房间ID', `current_room_no` varchar(20) DEFAULT NULL COMMENT '当前房间号', `current_bed_id` bigint(20) DEFAULT NULL COMMENT '当前床位ID', `current_bed_no` varchar(10) DEFAULT NULL COMMENT '当前床位号', `target_campus_id` bigint(20) DEFAULT NULL COMMENT '目标校区ID', `target_campus_name` varchar(100) DEFAULT NULL COMMENT '目标校区名称', `target_building_id` bigint(20) DEFAULT NULL COMMENT '目标宿舍楼ID', `target_building_name` varchar(100) DEFAULT NULL COMMENT '目标宿舍楼名称', `target_room_id` bigint(20) DEFAULT NULL COMMENT '目标房间ID', `target_room_no` varchar(20) DEFAULT NULL COMMENT '目标房间号', `target_bed_id` bigint(20) DEFAULT NULL COMMENT '目标床位ID', `target_bed_no` varchar(10) DEFAULT NULL COMMENT '目标床位号', `reason_detail` text COMMENT '详细原因说明', `apply_time` datetime NOT NULL COMMENT '申请时间', `attachment_oss_ids` varchar(1000) DEFAULT NULL COMMENT '附件OSS文件ID,多个用逗号分隔', `remark` varchar(500) DEFAULT NULL COMMENT '备注信息', `ext_field1` varchar(200) DEFAULT NULL COMMENT '扩展字段1', `ext_field2` varchar(200) DEFAULT NULL COMMENT '扩展字段2', `ext_field3` varchar(500) DEFAULT NULL COMMENT '扩展字段3', `deleted` char(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)', `tenant_id` bigint(20) DEFAULT '0' COMMENT '租户编号', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL COMMENT '更新时间', PRIMARY KEY (`id`) USING BTREE, KEY `idx_tenant_id` (`tenant_id`) USING BTREE, KEY `idx_deleted` (`deleted`) USING BTREE, KEY `idx_student_id` (`student_id`) USING BTREE, KEY `idx_student_no` (`student_no`) USING BTREE, KEY `idx_application_type` (`application_type`) USING BTREE, KEY `idx_application_status` (`application_status`) USING BTREE, KEY `idx_apply_time` (`apply_time`) USING BTREE, KEY `idx_college_id` (`college_id`) USING BTREE, KEY `idx_current_building_id` (`current_building_id`) USING BTREE, KEY `idx_target_building_id` (`target_building_id`) USING BTREE, KEY `idx_tenant_deleted_status` (`tenant_id`,`deleted`,`application_status`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='学生宿舍申请单表(调宿+退宿)'; -- ---------------------------- -- Table structure for xg_dorm_area -- ---------------------------- DROP TABLE IF EXISTS `xg_dorm_area`; CREATE TABLE `xg_dorm_area` ( `id` bigint(20) NOT NULL COMMENT '主键ID', `area_code` varchar(50) NOT NULL COMMENT '宿舍区编码', `area_name` varchar(100) NOT NULL COMMENT '宿舍区名称', `campus_id` bigint(20) NOT NULL COMMENT '所属校区ID', `area_description` varchar(500) DEFAULT NULL COMMENT '宿舍区描述', `sort_order` int(11) DEFAULT '0' COMMENT '排序号', `deleted` char(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)', `tenant_id` bigint(20) DEFAULT '0' COMMENT '租户编号', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `remark` varchar(500) DEFAULT NULL COMMENT '备注', PRIMARY KEY (`id`) USING BTREE, UNIQUE KEY `uk_area_code` (`area_code`) USING BTREE, KEY `idx_campus_id` (`campus_id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='宿舍区信息表'; -- ---------------------------- -- Table structure for xg_dorm_bed -- ---------------------------- DROP TABLE IF EXISTS `xg_dorm_bed`; CREATE TABLE `xg_dorm_bed` ( `id` bigint(20) NOT NULL COMMENT '主键ID', `bed_code` varchar(50) NOT NULL COMMENT '床位编号', `bed_name` varchar(100) NOT NULL COMMENT '床位名称', `room_id` bigint(20) NOT NULL COMMENT '所属房间ID', `bed_type` char(1) DEFAULT '1' COMMENT '床位类型(1下铺 2上铺 3中铺 4独立床)', `bed_status` char(1) DEFAULT '0' COMMENT '床位状态(0空闲 1已分配 2维修中)', `deleted` char(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)', `tenant_id` bigint(20) DEFAULT '0' COMMENT '租户编号', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `remark` varchar(500) DEFAULT NULL COMMENT '备注', PRIMARY KEY (`id`) USING BTREE, KEY `idx_room_id` (`room_id`) USING BTREE, KEY `uk_bed_code` (`bed_code`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='宿舍床位信息表'; -- ---------------------------- -- Table structure for xg_dorm_bed_student -- ---------------------------- DROP TABLE IF EXISTS `xg_dorm_bed_student`; CREATE TABLE `xg_dorm_bed_student` ( `id` bigint(20) NOT NULL COMMENT '主键ID', `college_id` bigint(20) NOT NULL COMMENT '分配学院ID', `major_id` bigint(20) DEFAULT NULL COMMENT '分配专业ID', `class_id` bigint(20) DEFAULT NULL COMMENT '分配班级ID', `student_id` bigint(20) DEFAULT NULL COMMENT '分配学生ID', `bed_id` bigint(20) NOT NULL COMMENT '床位ID', `room_id` bigint(20) NOT NULL COMMENT '房间ID', `building_id` bigint(20) NOT NULL COMMENT '宿舍楼ID', `area_id` bigint(20) DEFAULT NULL COMMENT '宿舍区ID', `campus_id` bigint(20) NOT NULL COMMENT '校区ID', `status` char(1) DEFAULT '0' COMMENT '状态(0正常 1已退宿)', `assign_time` datetime NOT NULL COMMENT '分配时间', `checkout_time` datetime DEFAULT NULL COMMENT '退宿时间', `deleted` char(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)', `tenant_id` bigint(20) DEFAULT '0' COMMENT '租户编号', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `remark` varchar(500) DEFAULT NULL COMMENT '备注', PRIMARY KEY (`id`) USING BTREE, KEY `uk_student_bed` (`student_id`,`bed_id`) USING BTREE, KEY `idx_college_id` (`college_id`) USING BTREE, KEY `idx_student_id` (`student_id`) USING BTREE, KEY `idx_bed_id` (`bed_id`) USING BTREE, KEY `idx_room_id` (`room_id`) USING BTREE, KEY `idx_building_id` (`building_id`) USING BTREE, KEY `idx_area_id` (`area_id`) USING BTREE, KEY `idx_campus_id` (`campus_id`) USING BTREE, KEY `idx_assign_time` (`assign_time`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='床位学生分配关系表'; -- ---------------------------- -- Table structure for xg_dorm_building -- ---------------------------- DROP TABLE IF EXISTS `xg_dorm_building`; CREATE TABLE `xg_dorm_building` ( `id` bigint(20) NOT NULL COMMENT '主键ID', `building_code` varchar(50) NOT NULL COMMENT '宿舍楼编码', `building_name` varchar(100) NOT NULL COMMENT '宿舍楼名称', `area_id` bigint(20) DEFAULT NULL COMMENT '所属宿舍区ID', `campus_id` bigint(20) NOT NULL COMMENT '所属校区ID', `floors` int(11) NOT NULL DEFAULT '6' COMMENT '总楼层数', `building_type` char(1) DEFAULT '1' COMMENT '宿舍楼类型(1男生楼 2女生楼 3混合楼)', `building_description` varchar(500) DEFAULT NULL COMMENT '宿舍楼描述', `sort_order` int(11) DEFAULT '0' COMMENT '排序号', `deleted` char(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)', `tenant_id` bigint(20) DEFAULT '0' COMMENT '租户编号', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `remark` varchar(500) DEFAULT NULL COMMENT '备注', PRIMARY KEY (`id`) USING BTREE, UNIQUE KEY `uk_building_code` (`building_code`) USING BTREE, KEY `idx_area_id` (`area_id`) USING BTREE, KEY `idx_campus_id` (`campus_id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='宿舍楼信息表'; -- ---------------------------- -- Table structure for xg_dorm_campus -- ---------------------------- DROP TABLE IF EXISTS `xg_dorm_campus`; CREATE TABLE `xg_dorm_campus` ( `id` bigint(20) NOT NULL COMMENT '主键ID', `campus_code` varchar(50) NOT NULL COMMENT '校区编码', `campus_name` varchar(100) NOT NULL COMMENT '校区名称', `campus_description` varchar(500) DEFAULT NULL COMMENT '校区描述', `sort_order` int(11) DEFAULT '0' COMMENT '排序号', `deleted` char(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)', `tenant_id` bigint(20) DEFAULT '0' COMMENT '租户编号', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `remark` varchar(500) DEFAULT NULL COMMENT '备注', PRIMARY KEY (`id`) USING BTREE, UNIQUE KEY `uk_campus_code` (`campus_code`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='校区信息表'; -- ---------------------------- -- Table structure for xg_dorm_college_bed -- ---------------------------- DROP TABLE IF EXISTS `xg_dorm_college_bed`; CREATE TABLE `xg_dorm_college_bed` ( `id` bigint(20) NOT NULL COMMENT '主键ID', `college_id` bigint(20) NOT NULL COMMENT '学院ID', `bed_id` bigint(20) NOT NULL COMMENT '床位ID', `building_id` bigint(20) NOT NULL COMMENT '宿舍楼ID', `room_id` bigint(20) NOT NULL COMMENT '房间ID', `status` char(1) DEFAULT '0' COMMENT '状态(0正常 1已解除)', `assign_time` datetime DEFAULT NULL COMMENT '分配时间', `release_time` datetime DEFAULT NULL COMMENT '到期解除时间', `deleted` char(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)', `tenant_id` bigint(20) DEFAULT '0' COMMENT '租户编号', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `remark` varchar(500) DEFAULT NULL COMMENT '备注', PRIMARY KEY (`id`) USING BTREE, UNIQUE KEY `uk_college_bed` (`college_id`,`bed_id`) USING BTREE, KEY `idx_college_id` (`college_id`) USING BTREE, KEY `idx_bed_id` (`bed_id`) USING BTREE, KEY `idx_building_id` (`building_id`) USING BTREE, KEY `idx_room_id` (`room_id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='二级学院床位绑定关系表'; -- ---------------------------- -- Table structure for xg_dorm_hygiene_check -- ---------------------------- DROP TABLE IF EXISTS `xg_dorm_hygiene_check`; CREATE TABLE `xg_dorm_hygiene_check` ( `id` bigint(20) NOT NULL COMMENT '主键ID', `tenant_id` varchar(20) NOT NULL DEFAULT '000000' COMMENT '租户编号', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)', `check_title` varchar(200) NOT NULL COMMENT '检查标题', `check_date` datetime NOT NULL COMMENT '检查日期', `checker_id` bigint(20) NOT NULL COMMENT '检查员ID,关联sys_user.id', `checker_name` varchar(50) NOT NULL COMMENT '检查员姓名', `check_type` char(1) DEFAULT '1' COMMENT '检查类型(1日常检查 2专项检查 3突击检查 4复查)', `check_level` char(1) DEFAULT '1' COMMENT '检查级别(1宿管员 2学院 3学校)', `room_id` bigint(20) NOT NULL COMMENT '宿舍房间ID,关联xg_dorm_room.id', `room_code` varchar(50) NOT NULL COMMENT '房间编号', `room_name` varchar(100) NOT NULL COMMENT '房间名称', `building_id` bigint(20) NOT NULL COMMENT '宿舍楼ID,关联xg_dorm_building.id', `building_name` varchar(100) NOT NULL COMMENT '宿舍楼名称', `area_id` bigint(20) DEFAULT NULL COMMENT '宿舍区ID,关联xg_dorm_area.id', `area_name` varchar(100) DEFAULT NULL COMMENT '宿舍区名称', `campus_id` bigint(20) DEFAULT NULL COMMENT '校区ID,关联xg_dorm_campus.id', `campus_name` varchar(100) DEFAULT NULL COMMENT '校区名称', `total_score` decimal(5,2) DEFAULT NULL COMMENT '宿舍扣分(0-100分)', `hygiene_grade` char(1) DEFAULT NULL COMMENT '卫生等级(A优秀 B良好 C合格 D不合格)', `attachment_ids` text COMMENT '附件OSS ID列表,逗号分隔', `check_summary` text COMMENT '检查总结', `improvement_suggestions` text COMMENT '整改建议', `check_remarks` varchar(500) DEFAULT NULL COMMENT '检查备注', `discipline_type_id` bigint(20) DEFAULT NULL COMMENT '违纪类型ID,关联xskh_discipline_type.id', `discipline_type_name` varchar(255) DEFAULT NULL COMMENT '违纪类型名称', PRIMARY KEY (`id`) USING BTREE, KEY `idx_tenant_id` (`tenant_id`) USING BTREE, KEY `idx_deleted` (`deleted`) USING BTREE, KEY `idx_check_date` (`check_date`) USING BTREE, KEY `idx_checker_id` (`checker_id`) USING BTREE, KEY `idx_room_id` (`room_id`) USING BTREE, KEY `idx_building_id` (`building_id`) USING BTREE, KEY `idx_area_id` (`area_id`) USING BTREE, KEY `idx_campus_id` (`campus_id`) USING BTREE, KEY `idx_hygiene_grade` (`hygiene_grade`) USING BTREE, KEY `idx_check_type` (`check_type`) USING BTREE, KEY `idx_create_time` (`create_time`) USING BTREE, KEY `idx_tenant_deleted` (`tenant_id`,`deleted`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='宿舍卫生检查表'; -- ---------------------------- -- Table structure for xg_dorm_hygiene_student_score -- ---------------------------- DROP TABLE IF EXISTS `xg_dorm_hygiene_student_score`; CREATE TABLE `xg_dorm_hygiene_student_score` ( `id` bigint(20) NOT NULL COMMENT '主键ID', `tenant_id` varchar(20) NOT NULL DEFAULT '000000' COMMENT '租户编号', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)', `hygiene_check_id` bigint(20) NOT NULL COMMENT '卫生检查ID,关联xg_dorm_hygiene_check.id', `student_id` bigint(20) NOT NULL COMMENT '学生ID,关联xg_student_msg.id', `student_no` varchar(32) NOT NULL COMMENT '学号', `student_name` varchar(50) NOT NULL COMMENT '学生姓名', `class_id` bigint(20) DEFAULT NULL COMMENT '班级ID', `class_name` varchar(100) DEFAULT NULL COMMENT '班级名称', `major_id` bigint(20) DEFAULT NULL COMMENT '专业ID', `major_name` varchar(100) DEFAULT NULL COMMENT '专业名称', `college_id` bigint(20) DEFAULT NULL COMMENT '学院ID', `college_name` varchar(100) DEFAULT NULL COMMENT '学院名称', `bed_id` bigint(20) DEFAULT NULL COMMENT '床位ID,关联xg_dorm_bed.id', `bed_code` varchar(50) DEFAULT NULL COMMENT '床位编号', `student_score` decimal(5,2) DEFAULT NULL COMMENT '学生个人扣分(0-100分)', `attendance_status` char(1) DEFAULT '1' COMMENT '出勤状态(1在寝 2外出 3请假 4其他)', `student_grade` char(1) DEFAULT NULL COMMENT '学生评级(A优秀 B良好 C合格 D不合格)', `is_responsible_person` tinyint(1) DEFAULT '0' COMMENT '是否为寝室长(0否 1是)', `score_remarks` varchar(500) DEFAULT NULL COMMENT '评分备注', `improvement_notes` varchar(500) DEFAULT NULL COMMENT '改进意见', PRIMARY KEY (`id`) USING BTREE, KEY `idx_tenant_id` (`tenant_id`) USING BTREE, KEY `idx_deleted` (`deleted`) USING BTREE, KEY `idx_hygiene_check_id` (`hygiene_check_id`) USING BTREE, KEY `idx_student_id` (`student_id`) USING BTREE, KEY `idx_student_no` (`student_no`) USING BTREE, KEY `idx_class_id` (`class_id`) USING BTREE, KEY `idx_major_id` (`major_id`) USING BTREE, KEY `idx_college_id` (`college_id`) USING BTREE, KEY `idx_bed_id` (`bed_id`) USING BTREE, KEY `idx_attendance_status` (`attendance_status`) USING BTREE, KEY `idx_student_grade` (`student_grade`) USING BTREE, KEY `idx_create_time` (`create_time`) USING BTREE, KEY `idx_tenant_deleted` (`tenant_id`,`deleted`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='宿舍卫生检查学生评分表'; -- ---------------------------- -- Table structure for xg_dorm_manager -- ---------------------------- DROP TABLE IF EXISTS `xg_dorm_manager`; CREATE TABLE `xg_dorm_manager` ( `id` bigint(20) NOT NULL COMMENT '主键ID', `manager_name` varchar(100) NOT NULL COMMENT '管理员姓名', `manager_type` char(1) NOT NULL COMMENT '管理员类型(1全校管理员 2校区管理员 3宿舍区管理员 4宿舍楼管理员)', `manager_level` int(11) DEFAULT '1' COMMENT '管理级别(1-5,1为最高)', `user_id` bigint(20) DEFAULT NULL COMMENT '关联用户ID', `phone` varchar(20) DEFAULT NULL COMMENT '联系电话', `gender` char(1) DEFAULT '0' COMMENT '性别(0男 1女 2未知)', `status` char(1) DEFAULT '0' COMMENT '状态(0正常 1停用)', `deleted` char(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)', `tenant_id` bigint(20) DEFAULT '0' COMMENT '租户编号', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `remark` varchar(500) DEFAULT NULL COMMENT '备注', PRIMARY KEY (`id`) USING BTREE, KEY `idx_user_id` (`user_id`) USING BTREE, KEY `idx_manager_type` (`manager_type`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='宿舍管理员信息表'; -- ---------------------------- -- Table structure for xg_dorm_manager_source -- ---------------------------- DROP TABLE IF EXISTS `xg_dorm_manager_source`; CREATE TABLE `xg_dorm_manager_source` ( `id` bigint(20) NOT NULL COMMENT '主键ID', `manager_id` bigint(20) NOT NULL COMMENT '管理员ID', `permission_type` char(1) DEFAULT '1' COMMENT '权限类型(1查看 2编辑 3完全管理)', `auth_type` char(1) NOT NULL COMMENT '授权类型(1全校级 2校区级 3宿舍区级 4楼栋级)', `auth_source` bigint(20) DEFAULT NULL COMMENT '授权来源ID(对应校区ID或宿舍区ID或楼栋ID)', `status` char(1) DEFAULT '0' COMMENT '状态(0有效 1已撤销)', `deleted` char(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)', `tenant_id` bigint(20) DEFAULT '0' COMMENT '租户编号', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `remark` varchar(500) DEFAULT NULL COMMENT '备注', PRIMARY KEY (`id`) USING BTREE, KEY `idx_manager_id` (`manager_id`) USING BTREE, KEY `idx_auth_source` (`auth_source`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='管理员授权关系表'; -- ---------------------------- -- Table structure for xg_dorm_room -- ---------------------------- DROP TABLE IF EXISTS `xg_dorm_room`; CREATE TABLE `xg_dorm_room` ( `id` bigint(20) NOT NULL COMMENT '主键ID', `room_code` varchar(50) NOT NULL COMMENT '房间编号', `room_name` varchar(100) NOT NULL COMMENT '房间名称', `building_id` bigint(20) NOT NULL COMMENT '所属宿舍楼ID', `floor_num` int(11) NOT NULL COMMENT '楼层', `room_type` char(1) DEFAULT '1' COMMENT '房间类型(1标准间 2 单人间 3 套间)', `actual_beds` int(11) DEFAULT '4' COMMENT '实际床位数', `room_area` decimal(10,2) DEFAULT NULL COMMENT '房间面积(平方米)', `room_status` char(1) DEFAULT '0' COMMENT '房间状态(0可用 1维修中 2停用)', `sort` int(11) DEFAULT '0' COMMENT '排序号', `deleted` char(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)', `tenant_id` bigint(20) DEFAULT '0' COMMENT '租户编号', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `remark` varchar(500) DEFAULT NULL COMMENT '备注', PRIMARY KEY (`id`) USING BTREE, KEY `idx_building_id` (`building_id`) USING BTREE, KEY `idx_floor_num` (`floor_num`) USING BTREE, KEY `uk_room_code` (`room_code`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='宿舍房间信息表'; -- ---------------------------- -- Table structure for xg_dorm_violation -- ---------------------------- DROP TABLE IF EXISTS `xg_dorm_violation`; CREATE TABLE `xg_dorm_violation` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '违纪记录ID(主键)', `student_id` bigint(20) NOT NULL COMMENT '学生ID', `student_name` varchar(100) NOT NULL COMMENT '学生姓名', `student_no` varchar(50) NOT NULL COMMENT '学号', `college_id` bigint(20) DEFAULT NULL COMMENT '学院ID', `college_name` varchar(100) DEFAULT NULL COMMENT '学院名称', `major_id` bigint(20) DEFAULT NULL COMMENT '专业ID', `major_name` varchar(100) DEFAULT NULL COMMENT '专业名称', `class_id` bigint(20) DEFAULT NULL COMMENT '班级ID', `class_name` varchar(100) DEFAULT NULL COMMENT '班级名称', `campus_id` bigint(20) DEFAULT NULL COMMENT '校区ID', `campus_name` varchar(100) DEFAULT NULL COMMENT '校区名称', `area_id` bigint(20) DEFAULT NULL COMMENT '宿舍区域ID', `area_name` varchar(100) DEFAULT NULL COMMENT '宿舍区域名称', `building_id` bigint(20) NOT NULL COMMENT '宿舍楼ID', `building_name` varchar(100) NOT NULL COMMENT '宿舍楼名称', `room_id` bigint(20) NOT NULL COMMENT '宿舍房间ID', `room_name` varchar(50) NOT NULL COMMENT '房间名称', `bed_id` bigint(20) DEFAULT NULL COMMENT '床位ID', `bed_name` varchar(20) DEFAULT NULL COMMENT '床位名称', `violation_type` varchar(50) NOT NULL COMMENT '违纪类型', `violation_level` char(1) NOT NULL COMMENT '违纪等级:1轻微 2一般 3严重 4特别严重', `violation_time` datetime NOT NULL COMMENT '违纪发生时间', `violation_description` text NOT NULL COMMENT '违纪行为描述', `involved_students` text COMMENT '涉及其他学生信息(JSON格式)', `attachment_oss_ids` text COMMENT '附件OSS ID列表(逗号分隔)', `deleted` char(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)', `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `remark` varchar(500) DEFAULT NULL COMMENT '备注', PRIMARY KEY (`id`) USING BTREE, KEY `idx_student_id` (`student_id`) USING BTREE, KEY `idx_student_no` (`student_no`) USING BTREE, KEY `idx_college_id` (`college_id`) USING BTREE, KEY `idx_building_id` (`building_id`) USING BTREE, KEY `idx_room_id` (`room_id`) USING BTREE, KEY `idx_violation_type` (`violation_type`) USING BTREE, KEY `idx_violation_time` (`violation_time`) USING BTREE, KEY `idx_violation_level` (`violation_level`) USING BTREE, KEY `idx_tenant_id` (`tenant_id`) USING BTREE, KEY `idx_deleted` (`deleted`) USING BTREE, KEY `idx_college_time` (`college_id`,`violation_time`) USING BTREE, KEY `idx_building_level` (`building_id`,`violation_level`) USING BTREE, KEY `idx_student_time` (`student_id`,`violation_time`) USING BTREE, KEY `idx_type_level` (`violation_type`,`violation_level`) USING BTREE ) ENGINE=InnoDB AUTO_INCREMENT=1958884987826626562 DEFAULT CHARSET=utf8mb4 COMMENT='宿舍违纪记录表'; -- ---------------------------- -- Table structure for xg_holiday_stay -- ---------------------------- DROP TABLE IF EXISTS `xg_holiday_stay`; CREATE TABLE `xg_holiday_stay` ( `id` bigint(20) NOT NULL COMMENT '主键ID', `tenant_id` varchar(20) NOT NULL DEFAULT '000000' COMMENT '租户编号', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)', `student_id` bigint(20) NOT NULL COMMENT '学生ID,关联xg_student_msg.id', `student_name` varchar(50) NOT NULL COMMENT '学生姓名', `student_no` varchar(20) NOT NULL COMMENT '学号', `class_id` bigint(20) DEFAULT NULL COMMENT '班级ID', `class_name` varchar(100) DEFAULT NULL COMMENT '班级名称', `major_id` bigint(20) DEFAULT NULL COMMENT '专业ID', `major_name` varchar(100) DEFAULT NULL COMMENT '专业名称', `college_id` bigint(20) DEFAULT NULL COMMENT '学院ID', `college_name` varchar(100) DEFAULT NULL COMMENT '学院名称', `campus_id` bigint(20) DEFAULT NULL COMMENT '校区ID,关联xg_dorm_campus.id', `campus_name` varchar(100) DEFAULT NULL COMMENT '校区名称', `area_id` bigint(20) DEFAULT NULL COMMENT '宿舍区ID,关联xg_dorm_area.id', `area_name` varchar(100) DEFAULT NULL COMMENT '宿舍区名称', `building_id` bigint(20) DEFAULT NULL COMMENT '宿舍楼ID,关联xg_dorm_building.id', `building_name` varchar(100) DEFAULT NULL COMMENT '宿舍楼名称', `room_id` bigint(20) DEFAULT NULL COMMENT '房间ID,关联xg_dorm_room.id', `room_name` varchar(100) DEFAULT NULL COMMENT '房间名称', `bed_id` bigint(20) DEFAULT NULL COMMENT '床位ID,关联xg_dorm_bed.id', `bed_name` varchar(100) DEFAULT NULL COMMENT '床位名称', `holiday_type` varchar(50) NOT NULL COMMENT '假期类型(寒假、暑假、春节假期、国庆假期等)', `apply_start_date` datetime NOT NULL COMMENT '申请留宿开始日期', `apply_end_date` datetime NOT NULL COMMENT '申请留宿结束日期', `stay_reason` text NOT NULL COMMENT '留宿原因(必填)', `stay_reason_type` varchar(20) DEFAULT NULL COMMENT '留宿原因类型(学习、实习、家庭困难、其他)', `student_phone` varchar(20) NOT NULL COMMENT '学生联系电话', `emergency_contact` varchar(50) NOT NULL COMMENT '紧急联系人姓名', `emergency_phone` varchar(20) NOT NULL COMMENT '紧急联系人电话', `parent_consent` char(1) NOT NULL DEFAULT '1' COMMENT '家长同意(0否 1是)', `attachment_oss_ids` varchar(1000) DEFAULT NULL COMMENT '附件OSS文件ID,多个用逗号分隔(申请材料、证明文件等)', `ext_field1` varchar(200) DEFAULT NULL COMMENT '扩展字段1', `ext_field2` varchar(200) DEFAULT NULL COMMENT '扩展字段2', `ext_field3` varchar(500) DEFAULT NULL COMMENT '扩展字段3', `remark` varchar(500) DEFAULT NULL COMMENT '备注信息', PRIMARY KEY (`id`) USING BTREE, KEY `idx_tenant_id` (`tenant_id`) USING BTREE, KEY `idx_deleted` (`deleted`) USING BTREE, KEY `idx_create_time` (`create_time`) USING BTREE, KEY `idx_tenant_deleted` (`tenant_id`,`deleted`) USING BTREE, KEY `idx_student_id` (`student_id`) USING BTREE, KEY `idx_student_no` (`student_no`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='假期留宿管理表'; -- ---------------------------- -- Table structure for xg_hygiene_check_violation -- ---------------------------- DROP TABLE IF EXISTS `xg_hygiene_check_violation`; CREATE TABLE `xg_hygiene_check_violation` ( `id` bigint(20) NOT NULL COMMENT '主键ID', `tenant_id` varchar(20) NOT NULL DEFAULT '000000' COMMENT '租户编号', `hygiene_check_id` bigint(20) NOT NULL COMMENT '宿舍卫生检查ID,关联xg_dorm_hygiene_check.id', `discipline_record_id` bigint(20) NOT NULL COMMENT '违纪记录ID,关联xskh_discipline_record.id', `student_id` bigint(20) NOT NULL COMMENT '学生ID,关联xg_student_msg.id', `student_no` varchar(20) NOT NULL COMMENT '学号', `student_name` varchar(50) NOT NULL COMMENT '学生姓名', `discipline_type_id` bigint(20) NOT NULL COMMENT '违纪类型ID,关联xskh_discipline_type.id', `discipline_type_name` varchar(100) NOT NULL COMMENT '违纪类型名称', `violation_source` char(1) DEFAULT '1' COMMENT '违纪来源(1宿舍卫生检查 2其他)', `status` char(1) DEFAULT '1' COMMENT '状态(1生效 2已撤销)', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0-未删除 1-已删除)', PRIMARY KEY (`id`) USING BTREE, KEY `idx_tenant_id` (`tenant_id`) USING BTREE, KEY `idx_hygiene_check_id` (`hygiene_check_id`) USING BTREE, KEY `idx_discipline_record_id` (`discipline_record_id`) USING BTREE, KEY `idx_student_id` (`student_id`) USING BTREE, KEY `idx_student_no` (`student_no`) USING BTREE, KEY `idx_discipline_type_id` (`discipline_type_id`) USING BTREE, KEY `idx_violation_source` (`violation_source`) USING BTREE, KEY `idx_status` (`status`) USING BTREE, KEY `idx_deleted` (`deleted`) USING BTREE, KEY `idx_tenant_deleted` (`tenant_id`,`deleted`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='宿舍卫生检查违纪关联表'; -- ---------------------------- -- Table structure for xg_leave_type_config -- ---------------------------- DROP TABLE IF EXISTS `xg_leave_type_config`; CREATE TABLE `xg_leave_type_config` ( `id` bigint(20) NOT NULL COMMENT '主键ID(雪花ID)', `tenant_id` varchar(20) NOT NULL DEFAULT '000000' COMMENT '租户编号', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)', `leave_type_name` varchar(50) NOT NULL COMMENT '请假类型名称', `leave_type_code` varchar(20) NOT NULL COMMENT '请假类型编码', `leave_type_desc` varchar(500) DEFAULT NULL COMMENT '请假类型描述', `sort_order` int(4) DEFAULT '0' COMMENT '排序号', `need_location_on_apply` char(1) NOT NULL DEFAULT '0' COMMENT '请假是否需要上传地理位置:0-否,1-是', `need_photo_on_cancel` char(1) NOT NULL DEFAULT '0' COMMENT '销假是否必须上传照片:0-否,1-是', `need_location_on_cancel` char(1) NOT NULL DEFAULT '0' COMMENT '销假是否需要上传地理位置:0-否,1-是', `need_cancel_for_non_leave` char(1) NOT NULL DEFAULT '0' COMMENT '非离校请假是否需要销假:0-否,1-是', `can_apply_in_advance` char(1) NOT NULL DEFAULT '0' COMMENT '是否可以提前请假:0-否,1-是', `is_enabled` char(1) NOT NULL DEFAULT '1' COMMENT '是否开启:0-关闭,1-开启', `max_apply_duration` decimal(5,2) DEFAULT NULL COMMENT '请假最大申请时长(天)', `cancel_overdue_reminder` decimal(5,2) DEFAULT NULL COMMENT '销假逾期多少时长给予提醒(天)', PRIMARY KEY (`id`) USING BTREE, UNIQUE KEY `uk_leave_type_code` (`leave_type_code`,`tenant_id`) USING BTREE COMMENT '请假类型编码唯一索引', KEY `idx_tenant_id` (`tenant_id`) USING BTREE COMMENT '租户索引', KEY `idx_is_enabled` (`is_enabled`) USING BTREE COMMENT '启用状态索引', KEY `idx_sort_order` (`sort_order`) USING BTREE COMMENT '排序索引' ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='学生请假类型配置表'; -- ---------------------------- -- Table structure for xg_stu_col_batch -- ---------------------------- DROP TABLE IF EXISTS `xg_stu_col_batch`; CREATE TABLE `xg_stu_col_batch` ( `id` bigint(20) NOT NULL COMMENT '批次ID', `batch_name` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '批次名称', `description` text COLLATE utf8mb4_unicode_ci COMMENT '批次描述', `start_time` datetime NOT NULL COMMENT '开始时间', `end_time` datetime NOT NULL COMMENT '结束时间', `status` char(1) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '0' COMMENT '状态(0正常 1停用)', `collection_type` varchar(50) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '收集类型 1 - 新学期收集 2 - 其他', `remark` varchar(500) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '备注', `tenant_id` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '000000' COMMENT '租户编号', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)', PRIMARY KEY (`id`) USING BTREE, KEY `idx_status` (`status`) USING BTREE, KEY `idx_start_time` (`start_time`) USING BTREE, KEY `idx_end_time` (`end_time`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='学生信息收集批次表'; -- ---------------------------- -- Table structure for xg_stu_col_batch_class -- ---------------------------- DROP TABLE IF EXISTS `xg_stu_col_batch_class`; CREATE TABLE `xg_stu_col_batch_class` ( `id` bigint(20) NOT NULL COMMENT '主键ID', `batch_id` bigint(20) NOT NULL COMMENT '批次ID', `class_id` bigint(20) NOT NULL COMMENT '班级ID', `class_name` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '班级名称', `major_id` bigint(20) DEFAULT NULL COMMENT '专业ID', `major_name` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '专业名称', `college_id` bigint(20) DEFAULT NULL COMMENT '院系ID', `college_name` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '院系名称', `remark` varchar(500) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '备注', `tenant_id` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '000000' COMMENT '租户编号', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)', PRIMARY KEY (`id`) USING BTREE, KEY `idx_batch_id` (`batch_id`) USING BTREE, KEY `idx_class_id` (`class_id`) USING BTREE, KEY `idx_grade_id` (`major_id`) USING BTREE, KEY `idx_department_id` (`college_id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='学生信息收集批次班级权限表'; -- ---------------------------- -- Table structure for xg_student_cancel_leave -- ---------------------------- DROP TABLE IF EXISTS `xg_student_cancel_leave`; CREATE TABLE `xg_student_cancel_leave` ( `id` bigint(20) NOT NULL COMMENT '主键ID(雪花ID)', `tenant_id` varchar(20) NOT NULL DEFAULT '000000' COMMENT '租户编号', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)', `student_id` bigint(20) NOT NULL COMMENT '学生ID', `student_name` varchar(50) NOT NULL COMMENT '学生姓名', `student_no` varchar(20) NOT NULL COMMENT '学号', `class_id` bigint(20) DEFAULT NULL COMMENT '班级ID', `class_name` varchar(100) DEFAULT NULL COMMENT '班级名称', `major_id` bigint(20) DEFAULT NULL COMMENT '专业ID', `major_name` varchar(100) DEFAULT NULL COMMENT '专业名称', `college_id` bigint(20) DEFAULT NULL COMMENT '学院ID', `college_name` varchar(100) DEFAULT NULL COMMENT '学院名称', `leave_type_code` varchar(20) NOT NULL COMMENT '请假类型编码', `leave_type_name` varchar(50) NOT NULL COMMENT '请假类型名称', `start_time` datetime NOT NULL COMMENT '开始时间(年月日时分秒)', `end_time` datetime NOT NULL COMMENT '结束时间(年月日时分秒)', `leave_duration` decimal(5,2) NOT NULL COMMENT '请假时长(天)', `is_leave_school` char(1) NOT NULL DEFAULT '0' COMMENT '是否离校:0-否,1-是', `need_cancel` char(1) NOT NULL DEFAULT '1' COMMENT '是否需要销假:0-否,1-是', `emergency_contact` varchar(50) DEFAULT NULL COMMENT '紧急联系人', `emergency_phone` varchar(20) DEFAULT NULL COMMENT '紧急联系电话', `leave_reason` text NOT NULL COMMENT '请假原因', `leave_location` varchar(500) DEFAULT NULL COMMENT '请假时地理位置', `attachment_oss_ids` text COMMENT '附件OSS文件ID(逗号分隔)', `approval_status` char(100) NOT NULL DEFAULT '0' COMMENT '审批状态:"cancel", "已撤销" "draft", "草稿" "waiting", "待审核" "finish", "已完成" "invalid", "已作废" "back", "已退回" "termination", "已终止"', `approval_opinion` varchar(500) DEFAULT NULL COMMENT '审批意见', `approval_time` datetime DEFAULT NULL COMMENT '审批时间', `approval_by` bigint(20) DEFAULT NULL COMMENT '审批人ID', `approval_by_name` varchar(50) DEFAULT NULL COMMENT '审批人姓名', `cancel_status` char(100) DEFAULT '0' COMMENT '销假状态:0-未销假,1-已销假,2-逾期未销假 3 - 无需销假 "cancel", "已撤销" "draft", "草稿" "waiting", "待审核" "finish", "已完成" "invalid", "已作废" "back", "已退回" "termination", "已终止"', `cancel_time` datetime DEFAULT NULL COMMENT '销假时间', `cancel_location` varchar(500) DEFAULT NULL COMMENT '销假地理位置', `cancel_photo_oss_ids` text COMMENT '销假照片OSS文件ID(逗号分隔)', `cancel_remark` varchar(500) DEFAULT NULL COMMENT '销假备注', `leave_id` bigint(20) NOT NULL COMMENT '学生请假表id', PRIMARY KEY (`id`) USING BTREE, KEY `idx_tenant_id` (`tenant_id`) USING BTREE COMMENT '租户索引', KEY `idx_student_id` (`student_id`) USING BTREE COMMENT '学生索引', KEY `idx_student_no` (`student_no`) USING BTREE COMMENT '学号索引', KEY `idx_class_id` (`class_id`) USING BTREE COMMENT '班级索引', KEY `idx_college_id` (`college_id`) USING BTREE COMMENT '学院索引', KEY `idx_leave_type_code` (`leave_type_code`) USING BTREE COMMENT '请假类型索引', KEY `idx_start_time` (`start_time`) USING BTREE COMMENT '开始时间索引', KEY `idx_end_time` (`end_time`) USING BTREE COMMENT '结束时间索引', KEY `idx_approval_status` (`approval_status`) USING BTREE COMMENT '审批状态索引', KEY `idx_cancel_status` (`cancel_status`) USING BTREE COMMENT '销假状态索引', KEY `idx_create_time` (`create_time`) USING BTREE COMMENT '创建时间索引', KEY `idx_is_leave_school` (`is_leave_school`) USING BTREE COMMENT '离校状态索引', KEY `idx_need_cancel` (`need_cancel`) USING BTREE COMMENT '是否需要销假索引', KEY `idx_student_time_range` (`student_id`,`start_time`,`end_time`) USING BTREE, KEY `idx_class_approval_status` (`class_id`,`approval_status`) USING BTREE, KEY `idx_college_leave_type` (`college_id`,`leave_type_code`) USING BTREE, KEY `idx_time_approval_status` (`start_time`,`end_time`,`approval_status`) USING BTREE, KEY `idx_need_cancel_status` (`need_cancel`,`cancel_status`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='学生销假表'; -- ---------------------------- -- Table structure for xg_student_leave -- ---------------------------- DROP TABLE IF EXISTS `xg_student_leave`; CREATE TABLE `xg_student_leave` ( `id` bigint(20) NOT NULL COMMENT '主键ID(雪花ID)', `tenant_id` varchar(20) NOT NULL DEFAULT '000000' COMMENT '租户编号', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)', `student_id` bigint(20) NOT NULL COMMENT '学生ID', `student_name` varchar(50) NOT NULL COMMENT '学生姓名', `student_no` varchar(20) NOT NULL COMMENT '学号', `class_id` bigint(20) DEFAULT NULL COMMENT '班级ID', `class_name` varchar(100) DEFAULT NULL COMMENT '班级名称', `major_id` bigint(20) DEFAULT NULL COMMENT '专业ID', `major_name` varchar(100) DEFAULT NULL COMMENT '专业名称', `college_id` bigint(20) DEFAULT NULL COMMENT '学院ID', `college_name` varchar(100) DEFAULT NULL COMMENT '学院名称', `leave_type_code` varchar(20) NOT NULL COMMENT '请假类型编码', `leave_type_name` varchar(50) NOT NULL COMMENT '请假类型名称', `start_time` datetime NOT NULL COMMENT '开始时间(年月日时分秒)', `end_time` datetime NOT NULL COMMENT '结束时间(年月日时分秒)', `leave_duration` decimal(5,2) NOT NULL COMMENT '请假时长(天)', `is_leave_school` char(1) NOT NULL DEFAULT '0' COMMENT '是否离校:0-否,1-是', `need_cancel` char(1) NOT NULL DEFAULT '1' COMMENT '是否需要销假:0-否,1-是', `emergency_contact` varchar(50) DEFAULT NULL COMMENT '紧急联系人', `emergency_phone` varchar(20) DEFAULT NULL COMMENT '紧急联系电话', `leave_reason` text NOT NULL COMMENT '请假原因', `leave_location` varchar(500) DEFAULT NULL COMMENT '请假时地理位置', `attachment_oss_ids` text COMMENT '附件OSS文件ID(逗号分隔)', `approval_status` char(100) NOT NULL DEFAULT '0' COMMENT '审批状态:"cancel", "已撤销" "draft", "草稿" "waiting", "待审核" "finish", "已完成" "invalid", "已作废" "back", "已退回" "termination", "已终止"', `approval_opinion` varchar(500) DEFAULT NULL COMMENT '审批意见', `approval_time` datetime DEFAULT NULL COMMENT '审批时间', `approval_by` bigint(20) DEFAULT NULL COMMENT '审批人ID', `approval_by_name` varchar(50) DEFAULT NULL COMMENT '审批人姓名', `cancel_status` char(100) DEFAULT '0' COMMENT '销假状态:0-未销假,1-已销假,2-逾期未销假 3 - 无需销假 "cancel", "已撤销" "draft", "草稿" "waiting", "待审核" "finish", "已完成" "invalid", "已作废" "back", "已退回" "termination", "已终止"', `cancel_time` datetime DEFAULT NULL COMMENT '销假时间', `cancel_location` varchar(500) DEFAULT NULL COMMENT '销假地理位置', `cancel_photo_oss_ids` text COMMENT '销假照片OSS文件ID(逗号分隔)', `cancel_remark` varchar(500) DEFAULT NULL COMMENT '销假备注', PRIMARY KEY (`id`) USING BTREE, KEY `idx_tenant_id` (`tenant_id`) USING BTREE COMMENT '租户索引', KEY `idx_student_id` (`student_id`) USING BTREE COMMENT '学生索引', KEY `idx_student_no` (`student_no`) USING BTREE COMMENT '学号索引', KEY `idx_class_id` (`class_id`) USING BTREE COMMENT '班级索引', KEY `idx_college_id` (`college_id`) USING BTREE COMMENT '学院索引', KEY `idx_leave_type_code` (`leave_type_code`) USING BTREE COMMENT '请假类型索引', KEY `idx_start_time` (`start_time`) USING BTREE COMMENT '开始时间索引', KEY `idx_end_time` (`end_time`) USING BTREE COMMENT '结束时间索引', KEY `idx_approval_status` (`approval_status`) USING BTREE COMMENT '审批状态索引', KEY `idx_cancel_status` (`cancel_status`) USING BTREE COMMENT '销假状态索引', KEY `idx_create_time` (`create_time`) USING BTREE COMMENT '创建时间索引', KEY `idx_is_leave_school` (`is_leave_school`) USING BTREE COMMENT '离校状态索引', KEY `idx_need_cancel` (`need_cancel`) USING BTREE COMMENT '是否需要销假索引', KEY `idx_student_time_range` (`student_id`,`start_time`,`end_time`) USING BTREE, KEY `idx_class_approval_status` (`class_id`,`approval_status`) USING BTREE, KEY `idx_college_leave_type` (`college_id`,`leave_type_code`) USING BTREE, KEY `idx_time_approval_status` (`start_time`,`end_time`,`approval_status`) USING BTREE, KEY `idx_need_cancel_status` (`need_cancel`,`cancel_status`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='学生请假表 - 记录学生的请假申请、审批和销假信息'; -- ---------------------------- -- Table structure for xg_student_manager -- ---------------------------- DROP TABLE IF EXISTS `xg_student_manager`; CREATE TABLE `xg_student_manager` ( `id` bigint(20) NOT NULL COMMENT '主键ID', `manager_name` varchar(100) NOT NULL COMMENT '管理员姓名', `manager_type` char(1) NOT NULL COMMENT '管理员类型(1 全校管理员 2 自定义管理员 3 班主任)', `manager_level` int(11) DEFAULT '1' COMMENT '管理级别(1-3,1为最高)', `user_id` bigint(20) DEFAULT NULL COMMENT '关联用户ID', `phone` varchar(20) DEFAULT NULL COMMENT '联系电话', `gender` char(1) DEFAULT '0' COMMENT '性别(0男 1女 2未知)', `status` char(1) DEFAULT '0' COMMENT '状态(0正常 1停用)', `deleted` char(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)', `tenant_id` bigint(20) DEFAULT '0' COMMENT '租户编号', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `remark` varchar(500) DEFAULT NULL COMMENT '备注', PRIMARY KEY (`id`) USING BTREE, KEY `idx_user_id` (`user_id`) USING BTREE, KEY `idx_manager_type` (`manager_type`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='学生管理员信息表'; -- ---------------------------- -- Table structure for xg_student_manager_source -- ---------------------------- DROP TABLE IF EXISTS `xg_student_manager_source`; CREATE TABLE `xg_student_manager_source` ( `id` bigint(20) NOT NULL COMMENT '主键ID', `manager_id` bigint(20) NOT NULL COMMENT '管理员ID', `permission_type` char(1) DEFAULT '1' COMMENT '权限类型(1查看 2编辑 3完全管理)', `auth_type` char(1) NOT NULL COMMENT '授权类型(1全校级 2自定义 3班主任)', `auth_source` bigint(20) DEFAULT NULL COMMENT '授权来源ID(对应班级id)', `status` char(1) DEFAULT '0' COMMENT '状态(0有效 1已撤销)', `deleted` char(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)', `tenant_id` bigint(20) DEFAULT '0' COMMENT '租户编号', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `remark` varchar(500) DEFAULT NULL COMMENT '备注', PRIMARY KEY (`id`) USING BTREE, KEY `idx_manager_id` (`manager_id`) USING BTREE, KEY `idx_auth_source` (`auth_source`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='学生管理员授权关系表'; -- ---------------------------- -- Table structure for xg_student_msg -- ---------------------------- DROP TABLE IF EXISTS `xg_student_msg`; CREATE TABLE `xg_student_msg` ( `id` bigint(20) NOT NULL COMMENT '主键ID(雪花ID)', `tenant_id` varchar(20) NOT NULL DEFAULT '000000' COMMENT '租户编号', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)', `student_no` varchar(32) NOT NULL COMMENT '学号', `id_card` varchar(18) DEFAULT NULL COMMENT '身份证号', `name` varchar(50) NOT NULL COMMENT '姓名', `name_english` varchar(100) DEFAULT NULL COMMENT '英文姓名', `former_name` varchar(50) DEFAULT NULL COMMENT '曾用名', `gender` char(1) NOT NULL COMMENT '性别:0-男,1-女', `birth_date` date DEFAULT NULL COMMENT '出生日期', `nationality` varchar(20) DEFAULT NULL COMMENT '民族 ', `native_place` varchar(20) DEFAULT NULL COMMENT '籍贯', `political_status` varchar(20) DEFAULT NULL COMMENT '政治面貌', `hukou_location` varchar(1000) DEFAULT NULL COMMENT '户籍所在地', `home_address` varchar(1000) DEFAULT NULL COMMENT '家庭地址', `current_address` varchar(1000) DEFAULT NULL COMMENT '现住址', `postal_code` varchar(10) DEFAULT NULL COMMENT '邮政编码', `photo_url` varchar(500) DEFAULT NULL COMMENT '照片URL', `photo_path` varchar(500) DEFAULT NULL COMMENT '学生照片存储路径', `phone` varchar(20) DEFAULT NULL COMMENT '手机号码', `is_boarder` tinyint(1) DEFAULT '0' COMMENT '是否住校:0-否,1-是', `education_level` varchar(20) DEFAULT NULL COMMENT '文化程度', `household_register_type` varchar(20) DEFAULT NULL COMMENT '户口类型:农业、非农业', `religion` varchar(200) DEFAULT NULL COMMENT '宗教信仰', `source_region` varchar(100) DEFAULT NULL COMMENT '生源地区(省市县)', `graduate_school` varchar(100) DEFAULT NULL COMMENT '毕业院校', `email` varchar(100) DEFAULT NULL COMMENT '电子邮箱', `qq` varchar(20) DEFAULT NULL COMMENT 'QQ号码', `wechat` varchar(50) DEFAULT NULL COMMENT '微信号', `marital_status` varchar(10) DEFAULT NULL COMMENT '婚姻状况:1 未婚、2 已婚、3 离异、4 丧偶 ', `emergency_contact_name` varchar(50) DEFAULT NULL COMMENT '紧急联系人姓名', `emergency_contact_phone` varchar(20) DEFAULT NULL COMMENT '紧急联系人电话', `emergency_contact_relation` varchar(100) DEFAULT NULL COMMENT '紧急联系人关系', `is_poor_student` tinyint(1) DEFAULT '0' COMMENT '是否贫困生:0-否,1-是', `is_minority` tinyint(1) DEFAULT '0' COMMENT '是否少数民族:0-否,1-是', `is_disabled` tinyint(1) DEFAULT '0' COMMENT '是否残疾:0-否,1-是', `is_orphan` tinyint(1) DEFAULT '0' COMMENT '是否孤儿:0-否,1-是', `is_left_behind_child` tinyint(1) DEFAULT '0' COMMENT '是否留守儿童:0-否,1-是', `is_single_child` tinyint(1) DEFAULT '0' COMMENT '是否独生子女:0-否,1-是', `is_low_income` tinyint(1) DEFAULT '0' COMMENT '是否低保:0-否,1-是', `has_loan` tinyint(1) DEFAULT '0' COMMENT '是否有助学贷款:0-否,1-是', `loan_amount` decimal(10,2) DEFAULT NULL COMMENT '助学贷款金额', `specialties` text COMMENT '特长爱好', `awards` text COMMENT '获奖情况', `violations` text COMMENT '违纪记录', `social_activities` text COMMENT '社会活动', `father_name` varchar(50) DEFAULT NULL COMMENT '父亲姓名', `father_phone` varchar(20) DEFAULT NULL COMMENT '父亲电话', `father_work_unit` varchar(1000) DEFAULT NULL COMMENT '父亲工作单位', `mother_name` varchar(50) DEFAULT NULL COMMENT '母亲姓名', `mother_phone` varchar(20) DEFAULT NULL COMMENT '母亲电话', `mother_work_unit` varchar(1000) DEFAULT NULL COMMENT '母亲工作单位', `guardian_name` varchar(50) DEFAULT NULL COMMENT '监护人姓名', `guardian_phone` varchar(20) DEFAULT NULL COMMENT '监护人电话', `guardian_relation` varchar(20) DEFAULT NULL COMMENT '监护人关系', `family_income` decimal(12,2) DEFAULT NULL COMMENT '家庭年收入', `per_capita_income` decimal(12,2) DEFAULT NULL COMMENT '人均收入', `income_source` varchar(100) DEFAULT NULL COMMENT '收入来源', `family_economic_status` varchar(20) DEFAULT NULL COMMENT '家庭经济状况:富裕、一般、困难、特困', `family_members` tinyint(2) DEFAULT NULL COMMENT '家庭成员数量', `height` decimal(10,2) DEFAULT NULL COMMENT '身高(cm)', `weight` decimal(10,2) DEFAULT NULL COMMENT '体重(kg)', `blood_type` varchar(10) DEFAULT NULL COMMENT '血型', `health_status` varchar(1000) DEFAULT NULL COMMENT '健康状况', `special_condition` varchar(1000) DEFAULT NULL COMMENT '特殊体质或疾病', `medical_history` varchar(1000) DEFAULT NULL COMMENT '病史', `allergies` varchar(1000) DEFAULT NULL COMMENT '过敏史', `disability_type` varchar(50) DEFAULT NULL COMMENT '残疾类型 1 - 视力残疾 2 - 听力残疾 3 - 智力残疾 9 - 其他残疾', `disability_level` varchar(20) DEFAULT NULL COMMENT '残疾等级', `admission_category` varchar(20) DEFAULT NULL COMMENT '录取类别:统招、自主招生、专项计划等', `student_status` char(1) DEFAULT '1' COMMENT '学籍状态:1-在籍,2-休学,3-复学,4-退学,5-毕业', `enrollment_year` int(4) DEFAULT NULL COMMENT '入学年份', `enrollment_date` date DEFAULT NULL COMMENT '入学日期', `bank_card_no` varchar(30) DEFAULT NULL COMMENT '银行卡号', `bank_name` varchar(100) DEFAULT NULL COMMENT '开户银行', `bank_branch` varchar(100) DEFAULT NULL COMMENT '开户支行', `card_holder_name` varchar(50) DEFAULT NULL COMMENT '持卡人姓名', `info_status` char(1) DEFAULT '1' COMMENT '信息状态:1-正常,2-待审核,3-审核中,4-已驳回,5-已锁定', `data_source` varchar(20) DEFAULT 'manual' COMMENT '数据来源:manual-手工录入,import-批量导入,sync-系统同步', `last_batch_id` bigint(20) DEFAULT NULL COMMENT '最后修改批次ID', `last_audit_time` datetime DEFAULT NULL COMMENT '最后审核时间', `is_complete` tinyint(1) DEFAULT '0' COMMENT '信息是否完整:0-不完整,1-完整', `completion_rate` decimal(10,2) DEFAULT '0.00' COMMENT '完整度百分比', `school_system` int(2) DEFAULT '4' COMMENT '学制(年)- 预留,数据从班级表关联', `academic_level` varchar(20) DEFAULT NULL COMMENT '学历层次 - 预留,数据从班级表关联', `training_type` varchar(20) DEFAULT NULL COMMENT '培养方式:全日制、在职、函授、夜大等 - 预留,数据从班级表关联', `major_id` varchar(100) DEFAULT NULL COMMENT '专业id - 预留,数据从班级表关联', `major_name` varchar(100) DEFAULT NULL COMMENT '专业名称 - 预留,数据从班级表关联', `class_id` varchar(100) DEFAULT NULL COMMENT '班级id - 预留,数据从班级表关联', `class_name` varchar(100) DEFAULT NULL COMMENT '班级名称 - 预留,数据从班级表关联', `grade` varchar(10) DEFAULT NULL COMMENT '年级 - 预留,数据从班级表关联', `college_id` varchar(100) DEFAULT NULL COMMENT '学院id - 预留,数据从班级表关联', `college_name` varchar(100) DEFAULT NULL COMMENT '学院名称 - 预留,数据从班级表关联', `counselor_id` bigint(20) DEFAULT NULL COMMENT '辅导员ID - 预留,数据从班级表关联', `counselor_name` varchar(50) DEFAULT NULL COMMENT '辅导员姓名 - 预留,数据从班级表关联', `class_teacher_id` bigint(20) DEFAULT NULL COMMENT '班主任ID - 预留,数据从班级表关联', `class_teacher_name` varchar(50) DEFAULT NULL COMMENT '班主任姓名 - 预留,数据从班级表关联', `dormitory_building` varchar(100) DEFAULT NULL COMMENT '宿舍楼栋 - 预留,数据从班级表关联 楼栋id', `dormitory_room` varchar(100) DEFAULT NULL COMMENT '宿舍房间号 - 预留,数据从班级表关联 房间id', `ext_field1` varchar(200) DEFAULT NULL COMMENT '扩展字段1 - 床位id', `ext_field2` varchar(200) DEFAULT NULL COMMENT '扩展字段2', `ext_field3` varchar(200) DEFAULT NULL COMMENT '扩展字段3', `ext_field4` varchar(200) DEFAULT NULL COMMENT '扩展字段4', `ext_field5` varchar(500) DEFAULT NULL COMMENT '扩展字段5', `remark` varchar(500) DEFAULT NULL COMMENT '备注信息', PRIMARY KEY (`id`) USING BTREE, KEY `idx_tenant_id` (`tenant_id`) USING BTREE, KEY `idx_deleted` (`deleted`) USING BTREE, KEY `idx_name` (`name`) USING BTREE, KEY `idx_student_status` (`student_status`) USING BTREE, KEY `idx_info_status` (`info_status`) USING BTREE, KEY `idx_enrollment_year` (`enrollment_year`) USING BTREE, KEY `idx_last_batch_id` (`last_batch_id`) USING BTREE, KEY `idx_phone` (`phone`) USING BTREE, KEY `idx_create_time` (`create_time`) USING BTREE, KEY `idx_status_filter` (`tenant_id`,`student_status`,`info_status`,`deleted`) USING BTREE, KEY `uk_student_no_tenant` (`student_no`,`tenant_id`) USING BTREE, KEY `uk_id_card_tenant` (`id_card`,`tenant_id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='学生信息表'; -- ---------------------------- -- Table structure for xg_student_msg_batch -- ---------------------------- DROP TABLE IF EXISTS `xg_student_msg_batch`; CREATE TABLE `xg_student_msg_batch` ( `id` bigint(20) NOT NULL COMMENT '主键ID(雪花ID)', `tenant_id` varchar(20) NOT NULL DEFAULT '000000' COMMENT '租户编号', `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门', `create_by` bigint(20) DEFAULT NULL COMMENT '创建者', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_by` bigint(20) DEFAULT NULL COMMENT '更新者', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)', `student_no` varchar(32) NOT NULL COMMENT '学号', `id_card` varchar(18) DEFAULT NULL COMMENT '身份证号', `name` varchar(50) NOT NULL COMMENT '姓名', `name_english` varchar(100) DEFAULT NULL COMMENT '英文姓名', `former_name` varchar(50) DEFAULT NULL COMMENT '曾用名', `gender` char(1) NOT NULL COMMENT '性别:0-男,1-女', `birth_date` date DEFAULT NULL COMMENT '出生日期', `nationality` varchar(20) DEFAULT NULL COMMENT '民族 ', `native_place` varchar(20) DEFAULT NULL COMMENT '籍贯', `political_status` varchar(20) DEFAULT NULL COMMENT '政治面貌', `hukou_location` varchar(1000) DEFAULT NULL COMMENT '户籍所在地', `home_address` varchar(1000) DEFAULT NULL COMMENT '家庭地址', `current_address` varchar(1000) DEFAULT NULL COMMENT '现住址', `postal_code` varchar(10) DEFAULT NULL COMMENT '邮政编码', `photo_url` varchar(500) DEFAULT NULL COMMENT '照片URL', `photo_path` varchar(500) DEFAULT NULL COMMENT '学生照片存储路径', `phone` varchar(20) DEFAULT NULL COMMENT '手机号码', `is_boarder` tinyint(1) DEFAULT '0' COMMENT '是否住校:0-否,1-是', `education_level` varchar(20) DEFAULT NULL COMMENT '文化程度', `household_register_type` varchar(20) DEFAULT NULL COMMENT '户口类型:农业、非农业', `religion` varchar(200) DEFAULT NULL COMMENT '宗教信仰', `source_region` varchar(100) DEFAULT NULL COMMENT '生源地区(省市县)', `graduate_school` varchar(100) DEFAULT NULL COMMENT '毕业院校', `email` varchar(100) DEFAULT NULL COMMENT '电子邮箱', `qq` varchar(20) DEFAULT NULL COMMENT 'QQ号码', `wechat` varchar(50) DEFAULT NULL COMMENT '微信号', `marital_status` varchar(10) DEFAULT NULL COMMENT '婚姻状况:1 未婚、2 已婚、3 离异、4 丧偶 ', `emergency_contact_name` varchar(50) DEFAULT NULL COMMENT '紧急联系人姓名', `emergency_contact_phone` varchar(20) DEFAULT NULL COMMENT '紧急联系人电话', `emergency_contact_relation` varchar(100) DEFAULT NULL COMMENT '紧急联系人关系', `is_poor_student` tinyint(1) DEFAULT '0' COMMENT '是否贫困生:0-否,1-是', `is_minority` tinyint(1) DEFAULT '0' COMMENT '是否少数民族:0-否,1-是', `is_disabled` tinyint(1) DEFAULT '0' COMMENT '是否残疾:0-否,1-是', `is_orphan` tinyint(1) DEFAULT '0' COMMENT '是否孤儿:0-否,1-是', `is_left_behind_child` tinyint(1) DEFAULT '0' COMMENT '是否留守儿童:0-否,1-是', `is_single_child` tinyint(1) DEFAULT '0' COMMENT '是否独生子女:0-否,1-是', `is_low_income` tinyint(1) DEFAULT '0' COMMENT '是否低保:0-否,1-是', `has_loan` tinyint(1) DEFAULT '0' COMMENT '是否有助学贷款:0-否,1-是', `loan_amount` decimal(10,2) DEFAULT NULL COMMENT '助学贷款金额', `specialties` text COMMENT '特长爱好', `awards` text COMMENT '获奖情况', `violations` text COMMENT '违纪记录', `social_activities` text COMMENT '社会活动', `father_name` varchar(50) DEFAULT NULL COMMENT '父亲姓名', `father_phone` varchar(20) DEFAULT NULL COMMENT '父亲电话', `father_work_unit` varchar(1000) DEFAULT NULL COMMENT '父亲工作单位', `mother_name` varchar(50) DEFAULT NULL COMMENT '母亲姓名', `mother_phone` varchar(20) DEFAULT NULL COMMENT '母亲电话', `mother_work_unit` varchar(1000) DEFAULT NULL COMMENT '母亲工作单位', `guardian_name` varchar(50) DEFAULT NULL COMMENT '监护人姓名', `guardian_phone` varchar(20) DEFAULT NULL COMMENT '监护人电话', `guardian_relation` varchar(20) DEFAULT NULL COMMENT '监护人关系', `family_income` decimal(12,2) DEFAULT NULL COMMENT '家庭年收入', `per_capita_income` decimal(12,2) DEFAULT NULL COMMENT '人均收入', `income_source` varchar(100) DEFAULT NULL COMMENT '收入来源', `family_economic_status` varchar(20) DEFAULT NULL COMMENT '家庭经济状况:富裕、一般、困难、特困', `family_members` tinyint(2) DEFAULT NULL COMMENT '家庭成员数量', `height` decimal(10,2) DEFAULT NULL COMMENT '身高(cm)', `weight` decimal(10,2) DEFAULT NULL COMMENT '体重(kg)', `blood_type` varchar(10) DEFAULT NULL COMMENT '血型', `health_status` varchar(1000) DEFAULT NULL COMMENT '健康状况', `special_condition` varchar(1000) DEFAULT NULL COMMENT '特殊体质或疾病', `medical_history` varchar(1000) DEFAULT NULL COMMENT '病史', `allergies` varchar(1000) DEFAULT NULL COMMENT '过敏史', `disability_type` varchar(50) DEFAULT NULL COMMENT '残疾类型 1 - 视力残疾 2 - 听力残疾 3 - 智力残疾 9 - 其他残疾', `disability_level` varchar(20) DEFAULT NULL COMMENT '残疾等级', `admission_category` varchar(20) DEFAULT NULL COMMENT '录取类别:统招、自主招生、专项计划等', `student_status` char(1) DEFAULT '1' COMMENT '学籍状态:1-在籍,2-休学,3-复学,4-退学,5-毕业', `enrollment_year` int(4) DEFAULT NULL COMMENT '入学年份', `enrollment_date` date DEFAULT NULL COMMENT '入学日期', `bank_card_no` varchar(30) DEFAULT NULL COMMENT '银行卡号', `bank_name` varchar(100) DEFAULT NULL COMMENT '开户银行', `bank_branch` varchar(100) DEFAULT NULL COMMENT '开户支行', `card_holder_name` varchar(50) DEFAULT NULL COMMENT '持卡人姓名', `info_status` char(1) DEFAULT '1' COMMENT '信息状态:1-正常,2-待审核,3-审核中,4-已驳回,5-已锁定', `data_source` varchar(20) DEFAULT 'manual' COMMENT '数据来源:manual-手工录入,import-批量导入,sync-系统同步', `last_batch_id` bigint(20) DEFAULT NULL COMMENT '最后修改批次ID', `last_audit_time` datetime DEFAULT NULL COMMENT '最后审核时间', `is_complete` tinyint(1) DEFAULT '0' COMMENT '信息是否完整:0-不完整,1-完整', `completion_rate` decimal(10,2) DEFAULT '0.00' COMMENT '完整度百分比', `school_system` int(2) DEFAULT '4' COMMENT '学制(年)- 预留,数据从班级表关联', `academic_level` varchar(20) DEFAULT NULL COMMENT '学历层次 - 预留,数据从班级表关联', `training_type` varchar(20) DEFAULT NULL COMMENT '培养方式:全日制、在职、函授、夜大等 - 预留,数据从班级表关联', `major_id` varchar(100) DEFAULT NULL COMMENT '专业id - 预留,数据从班级表关联', `major_name` varchar(100) DEFAULT NULL COMMENT '专业名称 - 预留,数据从班级表关联', `class_id` varchar(100) DEFAULT NULL COMMENT '班级id - 预留,数据从班级表关联', `class_name` varchar(100) DEFAULT NULL COMMENT '班级名称 - 预留,数据从班级表关联', `grade` varchar(10) DEFAULT NULL COMMENT '年级 - 预留,数据从班级表关联', `college_id` varchar(100) DEFAULT NULL COMMENT '学院id - 预留,数据从班级表关联', `college_name` varchar(100) DEFAULT NULL COMMENT '学院名称 - 预留,数据从班级表关联', `counselor_id` bigint(20) DEFAULT NULL COMMENT '辅导员ID - 预留,数据从班级表关联', `counselor_name` varchar(50) DEFAULT NULL COMMENT '辅导员姓名 - 预留,数据从班级表关联', `class_teacher_id` bigint(20) DEFAULT NULL COMMENT '班主任ID - 预留,数据从班级表关联', `class_teacher_name` varchar(50) DEFAULT NULL COMMENT '班主任姓名 - 预留,数据从班级表关联', `dormitory_building` varchar(100) DEFAULT NULL COMMENT '宿舍楼栋 - 预留,数据从班级表关联 楼栋id', `dormitory_room` varchar(100) DEFAULT NULL COMMENT '宿舍房间号 - 预留,数据从班级表关联 房间id', `ext_field1` varchar(200) DEFAULT NULL COMMENT '扩展字段1 - 床位id', `ext_field2` varchar(200) DEFAULT NULL COMMENT '扩展字段2', `ext_field3` varchar(200) DEFAULT NULL COMMENT '扩展字段3', `ext_field4` varchar(200) DEFAULT NULL COMMENT '扩展字段4', `ext_field5` varchar(500) DEFAULT NULL COMMENT '扩展字段5', `remark` varchar(500) DEFAULT NULL COMMENT '备注信息', `batch_id` bigint(20) NOT NULL COMMENT '正在进行中的批次id', KEY `idx_tenant_id` (`tenant_id`) USING BTREE, KEY `idx_deleted` (`deleted`) USING BTREE, KEY `idx_name` (`name`) USING BTREE, KEY `idx_student_status` (`student_status`) USING BTREE, KEY `idx_info_status` (`info_status`) USING BTREE, KEY `idx_enrollment_year` (`enrollment_year`) USING BTREE, KEY `idx_last_batch_id` (`last_batch_id`) USING BTREE, KEY `idx_phone` (`phone`) USING BTREE, KEY `idx_create_time` (`create_time`) USING BTREE, KEY `idx_status_filter` (`tenant_id`,`student_status`,`info_status`,`deleted`) USING BTREE, KEY `uk_student_no_tenant` (`student_no`,`tenant_id`) USING BTREE, KEY `uk_id_card_tenant` (`id_card`,`tenant_id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='学生信息批次收集表'; SET FOREIGN_KEY_CHECKS = 1;