1711 lines
117 KiB
SQL
1711 lines
117 KiB
SQL
-- ========================================
|
||
-- 蹇冪悊娴嬭瘎绯荤粺瀹屾暣SQL鑴氭湰
|
||
-- 鍒涘缓鏃堕棿: 2025-11-04 09:09:05
|
||
-- 璇存槑锛氭暣鍚堟墍鏈夊績鐞嗘祴璇勭郴缁熺浉鍏崇殑SQL鑴氭湰
|
||
-- ========================================
|
||
|
||
SET NAMES utf8mb4;
|
||
SET FOREIGN_KEY_CHECKS = 0;
|
||
|
||
|
||
-- ========================================
|
||
-- 鏉ユ簮鏂囦欢: psy_assessment_system.sql
|
||
-- ========================================
|
||
|
||
-- ----------------------------
|
||
-- 1、心理量表基本信息表
|
||
-- ----------------------------
|
||
DROP TABLE IF EXISTS `psy_scale`;
|
||
CREATE TABLE `psy_scale` (
|
||
`scale_id` bigint NOT NULL AUTO_INCREMENT COMMENT '量表ID',
|
||
`scale_code` varchar(50) NOT NULL COMMENT '量表编码(唯一标识)',
|
||
`scale_name` varchar(100) NOT NULL COMMENT '量表名称',
|
||
`scale_en_name` varchar(200) DEFAULT NULL COMMENT '量表英文名称',
|
||
`scale_type` varchar(50) DEFAULT NULL COMMENT '量表类型(如:人格量表、情绪量表、认知量表等)',
|
||
`scale_version` varchar(20) DEFAULT '1.0' COMMENT '量表版本',
|
||
`scale_intro` text COMMENT '量表简介',
|
||
`scale_description` text COMMENT '量表详细描述',
|
||
`item_count` int DEFAULT 0 COMMENT '题目数量',
|
||
`estimated_time` int DEFAULT NULL COMMENT '预计完成时间(分钟)',
|
||
`target_population` varchar(200) DEFAULT NULL COMMENT '适用人群',
|
||
`author` varchar(100) DEFAULT NULL COMMENT '量表作者',
|
||
`source` varchar(200) DEFAULT NULL COMMENT '量表来源(权威机构或文献)',
|
||
`reference` text COMMENT '参考文献',
|
||
`status` char(1) DEFAULT '0' COMMENT '状态(0正常 1停用)',
|
||
`sort_order` int DEFAULT 0 COMMENT '排序顺序',
|
||
`create_by` varchar(64) DEFAULT '' COMMENT '创建者',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT '' COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
PRIMARY KEY (`scale_id`),
|
||
UNIQUE KEY `uk_scale_code` (`scale_code`),
|
||
KEY `idx_scale_type` (`scale_type`),
|
||
KEY `idx_status` (`status`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='心理量表基本信息表';
|
||
|
||
-- ----------------------------
|
||
-- 2、量表题目表
|
||
-- ----------------------------
|
||
DROP TABLE IF EXISTS `psy_scale_item`;
|
||
CREATE TABLE `psy_scale_item` (
|
||
`item_id` bigint NOT NULL AUTO_INCREMENT COMMENT '题目ID',
|
||
`scale_id` bigint NOT NULL COMMENT '量表ID',
|
||
`item_number` int NOT NULL COMMENT '题目序号',
|
||
`item_content` text NOT NULL COMMENT '题目内容',
|
||
`item_type` varchar(20) DEFAULT 'single' COMMENT '题目类型(single单选 multiple多选 matrix矩阵)',
|
||
`required` char(1) DEFAULT '1' COMMENT '是否必填(0否 1是)',
|
||
`reverse_score` char(1) DEFAULT '0' COMMENT '是否反向计分(0否 1是)',
|
||
`sort_order` int DEFAULT 0 COMMENT '排序顺序',
|
||
`create_by` varchar(64) DEFAULT '' COMMENT '创建者',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT '' COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
PRIMARY KEY (`item_id`),
|
||
KEY `idx_scale_id` (`scale_id`),
|
||
KEY `idx_item_number` (`scale_id`, `item_number`),
|
||
CONSTRAINT `fk_item_scale` FOREIGN KEY (`scale_id`) REFERENCES `psy_scale` (`scale_id`) ON DELETE CASCADE
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='量表题目表';
|
||
|
||
-- ----------------------------
|
||
-- 3、题目选项表
|
||
-- ----------------------------
|
||
DROP TABLE IF EXISTS `psy_scale_option`;
|
||
CREATE TABLE `psy_scale_option` (
|
||
`option_id` bigint NOT NULL AUTO_INCREMENT COMMENT '选项ID',
|
||
`item_id` bigint NOT NULL COMMENT '题目ID',
|
||
`option_code` varchar(20) DEFAULT NULL COMMENT '选项编码(如A、B、C或1、2、3)',
|
||
`option_content` varchar(500) NOT NULL COMMENT '选项内容',
|
||
`option_score` decimal(10,2) DEFAULT 0.00 COMMENT '选项分值',
|
||
`sort_order` int DEFAULT 0 COMMENT '排序顺序',
|
||
`create_by` varchar(64) DEFAULT '' COMMENT '创建者',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT '' COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
PRIMARY KEY (`option_id`),
|
||
KEY `idx_item_id` (`item_id`),
|
||
CONSTRAINT `fk_option_item` FOREIGN KEY (`item_id`) REFERENCES `psy_scale_item` (`item_id`) ON DELETE CASCADE
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='题目选项表';
|
||
|
||
-- ----------------------------
|
||
-- 4、量表因子(维度)表
|
||
-- ----------------------------
|
||
DROP TABLE IF EXISTS `psy_factor`;
|
||
CREATE TABLE `psy_factor` (
|
||
`factor_id` bigint NOT NULL AUTO_INCREMENT COMMENT '因子ID',
|
||
`scale_id` bigint NOT NULL COMMENT '量表ID',
|
||
`factor_code` varchar(50) NOT NULL COMMENT '因子编码',
|
||
`factor_name` varchar(100) NOT NULL COMMENT '因子名称',
|
||
`factor_en_name` varchar(200) DEFAULT NULL COMMENT '因子英文名称',
|
||
`factor_description` text COMMENT '因子描述',
|
||
`factor_order` int DEFAULT 0 COMMENT '因子顺序',
|
||
`create_by` varchar(64) DEFAULT '' COMMENT '创建者',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT '' COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
PRIMARY KEY (`factor_id`),
|
||
KEY `idx_scale_id` (`scale_id`),
|
||
KEY `idx_factor_code` (`scale_id`, `factor_code`),
|
||
CONSTRAINT `fk_factor_scale` FOREIGN KEY (`scale_id`) REFERENCES `psy_scale` (`scale_id`) ON DELETE CASCADE
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='量表因子(维度)表';
|
||
|
||
-- ----------------------------
|
||
-- 5、因子计分规则表(定义哪些题目属于哪个因子,以及计分方式)
|
||
-- ----------------------------
|
||
DROP TABLE IF EXISTS `psy_factor_rule`;
|
||
CREATE TABLE `psy_factor_rule` (
|
||
`rule_id` bigint NOT NULL AUTO_INCREMENT COMMENT '规则ID',
|
||
`factor_id` bigint NOT NULL COMMENT '因子ID',
|
||
`item_id` bigint NOT NULL COMMENT '题目ID',
|
||
`option_ids` varchar(500) DEFAULT NULL COMMENT '参与计分的选项ID(多个用逗号分隔,为空表示该题的所有选项)',
|
||
`weight` decimal(5,2) DEFAULT 1.00 COMMENT '权重(默认1.0)',
|
||
`calculation_type` varchar(50) DEFAULT 'sum' COMMENT '计算方式(sum求和 average平均 max最大 min最小)',
|
||
`create_by` varchar(64) DEFAULT '' COMMENT '创建者',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
PRIMARY KEY (`rule_id`),
|
||
UNIQUE KEY `uk_factor_item` (`factor_id`, `item_id`),
|
||
KEY `idx_factor_id` (`factor_id`),
|
||
KEY `idx_item_id` (`item_id`),
|
||
CONSTRAINT `fk_rule_factor` FOREIGN KEY (`factor_id`) REFERENCES `psy_factor` (`factor_id`) ON DELETE CASCADE,
|
||
CONSTRAINT `fk_rule_item` FOREIGN KEY (`item_id`) REFERENCES `psy_scale_item` (`item_id`) ON DELETE CASCADE
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='因子计分规则表';
|
||
|
||
-- ----------------------------
|
||
-- 6、测评记录表
|
||
-- ----------------------------
|
||
DROP TABLE IF EXISTS `psy_assessment`;
|
||
CREATE TABLE `psy_assessment` (
|
||
`assessment_id` bigint NOT NULL AUTO_INCREMENT COMMENT '测评ID',
|
||
`scale_id` bigint NOT NULL COMMENT '量表ID',
|
||
`user_id` bigint DEFAULT NULL COMMENT '用户ID(关联sys_user,可为空表示匿名测评)',
|
||
`assessee_name` varchar(50) DEFAULT NULL COMMENT '被测评人姓名(匿名测评时使用)',
|
||
`assessee_gender` char(1) DEFAULT NULL COMMENT '被测评人性别(0男 1女 2未知)',
|
||
`assessee_age` int DEFAULT NULL COMMENT '被测评人年龄',
|
||
`assessee_id_card` varchar(18) DEFAULT NULL COMMENT '被测评人身份证号(可选)',
|
||
`assessee_phone` varchar(11) DEFAULT NULL COMMENT '被测评人手机号',
|
||
`assessee_email` varchar(100) DEFAULT NULL COMMENT '被测评人邮箱',
|
||
`start_time` datetime DEFAULT NULL COMMENT '开始时间',
|
||
`submit_time` datetime DEFAULT NULL COMMENT '提交时间',
|
||
`complete_time` int DEFAULT NULL COMMENT '完成耗时(秒)',
|
||
`total_score` decimal(10,2) DEFAULT NULL COMMENT '总分',
|
||
`status` char(1) DEFAULT '0' COMMENT '状态(0进行中 1已完成 2已作废)',
|
||
`ip_address` varchar(128) DEFAULT '' COMMENT 'IP地址',
|
||
`user_agent` varchar(500) DEFAULT NULL COMMENT '用户代理',
|
||
`create_by` varchar(64) DEFAULT '' COMMENT '创建者',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT '' COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
PRIMARY KEY (`assessment_id`),
|
||
KEY `idx_scale_id` (`scale_id`),
|
||
KEY `idx_user_id` (`user_id`),
|
||
KEY `idx_status` (`status`),
|
||
KEY `idx_submit_time` (`submit_time`),
|
||
CONSTRAINT `fk_assessment_scale` FOREIGN KEY (`scale_id`) REFERENCES `psy_scale` (`scale_id`),
|
||
CONSTRAINT `fk_assessment_user` FOREIGN KEY (`user_id`) REFERENCES `sys_user` (`user_id`) ON DELETE SET NULL
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='测评记录表';
|
||
|
||
-- ----------------------------
|
||
-- 7、测评答案表
|
||
-- ----------------------------
|
||
DROP TABLE IF EXISTS `psy_assessment_answer`;
|
||
CREATE TABLE `psy_assessment_answer` (
|
||
`answer_id` bigint NOT NULL AUTO_INCREMENT COMMENT '答案ID',
|
||
`assessment_id` bigint NOT NULL COMMENT '测评ID',
|
||
`item_id` bigint NOT NULL COMMENT '题目ID',
|
||
`option_id` bigint DEFAULT NULL COMMENT '选项ID(单选时使用)',
|
||
`option_ids` varchar(500) DEFAULT NULL COMMENT '选项ID列表(多选时使用,多个用逗号分隔)',
|
||
`answer_score` decimal(10,2) DEFAULT 0.00 COMMENT '答案得分',
|
||
`answer_text` text COMMENT '文本答案(适用于开放题)',
|
||
`create_time` datetime DEFAULT NULL COMMENT '答题时间',
|
||
PRIMARY KEY (`answer_id`),
|
||
UNIQUE KEY `uk_assessment_item` (`assessment_id`, `item_id`),
|
||
KEY `idx_assessment_id` (`assessment_id`),
|
||
KEY `idx_item_id` (`item_id`),
|
||
KEY `idx_option_id` (`option_id`),
|
||
CONSTRAINT `fk_answer_assessment` FOREIGN KEY (`assessment_id`) REFERENCES `psy_assessment` (`assessment_id`) ON DELETE CASCADE,
|
||
CONSTRAINT `fk_answer_item` FOREIGN KEY (`item_id`) REFERENCES `psy_scale_item` (`item_id`),
|
||
CONSTRAINT `fk_answer_option` FOREIGN KEY (`option_id`) REFERENCES `psy_scale_option` (`option_id`) ON DELETE SET NULL
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='测评答案表';
|
||
|
||
-- ----------------------------
|
||
-- 8、因子得分表(存储每个因子的得分)
|
||
-- ----------------------------
|
||
DROP TABLE IF EXISTS `psy_factor_score`;
|
||
CREATE TABLE `psy_factor_score` (
|
||
`score_id` bigint NOT NULL AUTO_INCREMENT COMMENT '得分ID',
|
||
`assessment_id` bigint NOT NULL COMMENT '测评ID',
|
||
`factor_id` bigint NOT NULL COMMENT '因子ID',
|
||
`factor_score` decimal(10,2) NOT NULL COMMENT '因子得分',
|
||
`standard_score` decimal(10,2) DEFAULT NULL COMMENT '标准分(T分、Z分等)',
|
||
`percentile` decimal(5,2) DEFAULT NULL COMMENT '百分位',
|
||
`create_time` datetime DEFAULT NULL COMMENT '计算时间',
|
||
PRIMARY KEY (`score_id`),
|
||
UNIQUE KEY `uk_assessment_factor` (`assessment_id`, `factor_id`),
|
||
KEY `idx_assessment_id` (`assessment_id`),
|
||
KEY `idx_factor_id` (`factor_id`),
|
||
CONSTRAINT `fk_score_assessment` FOREIGN KEY (`assessment_id`) REFERENCES `psy_assessment` (`assessment_id`) ON DELETE CASCADE,
|
||
CONSTRAINT `fk_score_factor` FOREIGN KEY (`factor_id`) REFERENCES `psy_factor` (`factor_id`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='因子得分表';
|
||
|
||
-- ----------------------------
|
||
-- 9、结果解释标准表
|
||
-- ----------------------------
|
||
DROP TABLE IF EXISTS `psy_result_interpretation`;
|
||
CREATE TABLE `psy_result_interpretation` (
|
||
`interpretation_id` bigint NOT NULL AUTO_INCREMENT COMMENT '解释ID',
|
||
`scale_id` bigint DEFAULT NULL COMMENT '量表ID(为空表示通用解释)',
|
||
`factor_id` bigint DEFAULT NULL COMMENT '因子ID(为空表示总体解释)',
|
||
`score_range_min` decimal(10,2) DEFAULT NULL COMMENT '分数范围最小值',
|
||
`score_range_max` decimal(10,2) DEFAULT NULL COMMENT '分数范围最大值',
|
||
`level` varchar(50) DEFAULT NULL COMMENT '等级(如:低、中、高)',
|
||
`level_name` varchar(100) DEFAULT NULL COMMENT '等级名称(如:轻度、中度、重度)',
|
||
`interpretation_title` varchar(200) DEFAULT NULL COMMENT '解释标题',
|
||
`interpretation_content` text COMMENT '解释内容',
|
||
`suggestions` text COMMENT '建议或指导',
|
||
`sort_order` int DEFAULT 0 COMMENT '排序顺序',
|
||
`create_by` varchar(64) DEFAULT '' COMMENT '创建者',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT '' COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
PRIMARY KEY (`interpretation_id`),
|
||
KEY `idx_scale_id` (`scale_id`),
|
||
KEY `idx_factor_id` (`factor_id`),
|
||
KEY `idx_score_range` (`score_range_min`, `score_range_max`),
|
||
CONSTRAINT `fk_interpretation_scale` FOREIGN KEY (`scale_id`) REFERENCES `psy_scale` (`scale_id`) ON DELETE CASCADE,
|
||
CONSTRAINT `fk_interpretation_factor` FOREIGN KEY (`factor_id`) REFERENCES `psy_factor` (`factor_id`) ON DELETE CASCADE
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='结果解释标准表';
|
||
|
||
-- ----------------------------
|
||
-- 10、测评报告表
|
||
-- ----------------------------
|
||
DROP TABLE IF EXISTS `psy_assessment_report`;
|
||
CREATE TABLE `psy_assessment_report` (
|
||
`report_id` bigint NOT NULL AUTO_INCREMENT COMMENT '报告ID',
|
||
`assessment_id` bigint NOT NULL COMMENT '测评ID',
|
||
`report_type` varchar(50) DEFAULT 'standard' COMMENT '报告类型(standard标准 detailed详细 brief简要)',
|
||
`report_title` varchar(200) DEFAULT NULL COMMENT '报告标题',
|
||
`report_content` longtext COMMENT '报告内容(HTML格式)',
|
||
`summary` text COMMENT '报告摘要',
|
||
`chart_data` text COMMENT '图表数据(JSON格式)',
|
||
`pdf_path` varchar(500) DEFAULT NULL COMMENT 'PDF文件路径',
|
||
`is_generated` char(1) DEFAULT '0' COMMENT '是否已生成(0否 1是)',
|
||
`generate_time` datetime DEFAULT NULL COMMENT '生成时间',
|
||
`create_by` varchar(64) DEFAULT '' COMMENT '创建者',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT '' COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
PRIMARY KEY (`report_id`),
|
||
UNIQUE KEY `uk_assessment_report` (`assessment_id`),
|
||
CONSTRAINT `fk_report_assessment` FOREIGN KEY (`assessment_id`) REFERENCES `psy_assessment` (`assessment_id`) ON DELETE CASCADE
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='测评报告表';
|
||
|
||
-- ----------------------------
|
||
-- 11、测评模板表(用于快速创建相似量表)
|
||
-- ----------------------------
|
||
DROP TABLE IF EXISTS `psy_scale_template`;
|
||
CREATE TABLE `psy_scale_template` (
|
||
`template_id` bigint NOT NULL AUTO_INCREMENT COMMENT '模板ID',
|
||
`template_name` varchar(100) NOT NULL COMMENT '模板名称',
|
||
`template_description` text COMMENT '模板描述',
|
||
`scale_config` longtext COMMENT '量表配置(JSON格式,包含题目、选项、因子等完整配置)',
|
||
`status` char(1) DEFAULT '0' COMMENT '状态(0正常 1停用)',
|
||
`create_by` varchar(64) DEFAULT '' COMMENT '创建者',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT '' COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
PRIMARY KEY (`template_id`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='测评模板表';
|
||
|
||
-- ----------------------------
|
||
-- 初始化数据字典(心理测评相关)
|
||
-- ----------------------------
|
||
|
||
-- 量表状态字典
|
||
INSERT IGNORE INTO `sys_dict_type` (`dict_name`, `dict_type`, `status`, `create_by`, `create_time`, `remark`)
|
||
VALUES ('量表状态', 'psy_scale_status', '0', 'admin', sysdate(), '心理量表状态列表');
|
||
|
||
INSERT IGNORE INTO `sys_dict_data` (`dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `remark`)
|
||
VALUES (1, '正常', '0', 'psy_scale_status', '', 'primary', 'Y', '0', 'admin', sysdate(), '正常状态'),
|
||
(2, '停用', '1', 'psy_scale_status', '', 'danger', 'N', '0', 'admin', sysdate(), '停用状态');
|
||
|
||
-- 测评状态字典
|
||
INSERT IGNORE INTO `sys_dict_type` (`dict_name`, `dict_type`, `status`, `create_by`, `create_time`, `remark`)
|
||
VALUES ('测评状态', 'psy_assessment_status', '0', 'admin', sysdate(), '心理测评状态列表');
|
||
|
||
INSERT IGNORE INTO `sys_dict_data` (`dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `remark`)
|
||
VALUES (1, '进行中', '0', 'psy_assessment_status', '', 'warning', 'Y', '0', 'admin', sysdate(), '进行中'),
|
||
(2, '已完成', '1', 'psy_assessment_status', '', 'success', 'N', '0', 'admin', sysdate(), '已完成'),
|
||
(3, '已作废', '2', 'psy_assessment_status', '', 'danger', 'N', '0', 'admin', sysdate(), '已作废');
|
||
|
||
-- 题目类型字典
|
||
INSERT IGNORE INTO `sys_dict_type` (`dict_name`, `dict_type`, `status`, `create_by`, `create_time`, `remark`)
|
||
VALUES ('题目类型', 'psy_item_type', '0', 'admin', sysdate(), '心理测评题目类型');
|
||
|
||
INSERT IGNORE INTO `sys_dict_data` (`dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `remark`)
|
||
VALUES (1, '单选题', 'single', 'psy_item_type', '', 'primary', 'Y', '0', 'admin', sysdate(), '单选题'),
|
||
(2, '多选题', 'multiple', 'psy_item_type', '', 'success', 'N', '0', 'admin', sysdate(), '多选题'),
|
||
(3, '矩阵题', 'matrix', 'psy_item_type', '', 'info', 'N', '0', 'admin', sysdate(), '矩阵题');
|
||
|
||
-- 量表类型字典
|
||
INSERT IGNORE INTO `sys_dict_type` (`dict_name`, `dict_type`, `status`, `create_by`, `create_time`, `remark`)
|
||
VALUES ('量表类型', 'psy_scale_type', '0', 'admin', sysdate(), '心理量表类型');
|
||
|
||
INSERT IGNORE INTO `sys_dict_data` (`dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `remark`)
|
||
VALUES (1, '人格量表', 'personality', 'psy_scale_type', '', 'primary', 'Y', '0', 'admin', sysdate(), '人格量表'),
|
||
(2, '情绪量表', 'emotion', 'psy_scale_type', '', 'success', 'N', '0', 'admin', sysdate(), '情绪量表'),
|
||
(3, '认知量表', 'cognitive', 'psy_scale_type', '', 'info', 'N', '0', 'admin', sysdate(), '认知量表'),
|
||
(4, '行为量表', 'behavior', 'psy_scale_type', '', 'warning', 'N', '0', 'admin', sysdate(), '行为量表'),
|
||
(5, '其他', 'other', 'psy_scale_type', '', 'default', 'N', '0', 'admin', sysdate(), '其他类型');
|
||
|
||
|
||
-- ========================================
|
||
-- 鏉ユ簮鏂囦欢: psy_assessment_system_extension.sql
|
||
-- ========================================
|
||
|
||
-- ----------------------------
|
||
-- 1、用户档案扩展表
|
||
-- ----------------------------
|
||
DROP TABLE IF EXISTS `psy_user_profile`;
|
||
CREATE TABLE `psy_user_profile` (
|
||
`profile_id` bigint NOT NULL AUTO_INCREMENT COMMENT '档案ID',
|
||
`user_id` bigint NOT NULL COMMENT '用户ID(关联sys_user)',
|
||
`profile_type` varchar(50) DEFAULT 'standard' COMMENT '档案类型(如:standard标准 child儿童 adult成人 senior老年)',
|
||
`profile_data` longtext COMMENT '档案数据(JSON格式,支持自定义字段)',
|
||
`avatar` varchar(500) DEFAULT NULL COMMENT '头像',
|
||
`id_card` varchar(18) DEFAULT NULL COMMENT '身份证号',
|
||
`birthday` date DEFAULT NULL COMMENT '生日',
|
||
`education` varchar(50) DEFAULT NULL COMMENT '学历',
|
||
`occupation` varchar(100) DEFAULT NULL COMMENT '职业',
|
||
`address` varchar(500) DEFAULT NULL COMMENT '地址',
|
||
`emergency_contact` varchar(50) DEFAULT NULL COMMENT '紧急联系人',
|
||
`emergency_phone` varchar(11) DEFAULT NULL COMMENT '紧急联系电话',
|
||
`medical_history` text COMMENT '病史',
|
||
`create_by` varchar(64) DEFAULT '' COMMENT '创建者',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT '' COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
PRIMARY KEY (`profile_id`),
|
||
UNIQUE KEY `uk_user_id` (`user_id`),
|
||
KEY `idx_profile_type` (`profile_type`),
|
||
CONSTRAINT `fk_profile_user` FOREIGN KEY (`user_id`) REFERENCES `sys_user` (`user_id`) ON DELETE CASCADE
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='用户档案扩展表';
|
||
|
||
-- ----------------------------
|
||
-- 2、量表权限表
|
||
-- ----------------------------
|
||
DROP TABLE IF EXISTS `psy_scale_permission`;
|
||
CREATE TABLE `psy_scale_permission` (
|
||
`permission_id` bigint NOT NULL AUTO_INCREMENT COMMENT '权限ID',
|
||
`scale_id` bigint NOT NULL COMMENT '量表ID',
|
||
`dept_id` bigint DEFAULT NULL COMMENT '部门ID(关联sys_dept,为空表示所有部门)',
|
||
`role_id` bigint DEFAULT NULL COMMENT '角色ID(关联sys_role,为空表示所有角色)',
|
||
`user_id` bigint DEFAULT NULL COMMENT '用户ID(关联sys_user,为空表示所有用户)',
|
||
`class_name` varchar(100) DEFAULT NULL COMMENT '班级名称(特殊字段,用于罪犯管理)',
|
||
`start_time` datetime DEFAULT NULL COMMENT '开始时间',
|
||
`end_time` datetime DEFAULT NULL COMMENT '结束时间',
|
||
`status` char(1) DEFAULT '0' COMMENT '状态(0有效 1无效)',
|
||
`create_by` varchar(64) DEFAULT '' COMMENT '创建者',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT '' COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
PRIMARY KEY (`permission_id`),
|
||
KEY `idx_scale_id` (`scale_id`),
|
||
KEY `idx_dept_id` (`dept_id`),
|
||
KEY `idx_role_id` (`role_id`),
|
||
KEY `idx_user_id` (`user_id`),
|
||
KEY `idx_status` (`status`),
|
||
CONSTRAINT `fk_permission_scale` FOREIGN KEY (`scale_id`) REFERENCES `psy_scale` (`scale_id`) ON DELETE CASCADE,
|
||
CONSTRAINT `fk_permission_dept` FOREIGN KEY (`dept_id`) REFERENCES `sys_dept` (`dept_id`) ON DELETE CASCADE,
|
||
CONSTRAINT `fk_permission_role` FOREIGN KEY (`role_id`) REFERENCES `sys_role` (`role_id`) ON DELETE CASCADE,
|
||
CONSTRAINT `fk_permission_user` FOREIGN KEY (`user_id`) REFERENCES `sys_user` (`user_id`) ON DELETE CASCADE
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='量表权限表';
|
||
|
||
-- ----------------------------
|
||
-- 3、自定义问卷表
|
||
-- ----------------------------
|
||
DROP TABLE IF EXISTS `psy_questionnaire`;
|
||
CREATE TABLE `psy_questionnaire` (
|
||
`questionnaire_id` bigint NOT NULL AUTO_INCREMENT COMMENT '问卷ID',
|
||
`questionnaire_code` varchar(50) NOT NULL COMMENT '问卷编码',
|
||
`questionnaire_name` varchar(100) NOT NULL COMMENT '问卷名称',
|
||
`questionnaire_type` varchar(50) DEFAULT 'custom' COMMENT '问卷类型(custom自定义 exam考试 practice练习)',
|
||
`paper_type` varchar(50) DEFAULT 'manual' COMMENT '组卷方式(manual手动 random随机 mixed混合)',
|
||
`item_count` int DEFAULT 0 COMMENT '题目数量',
|
||
`total_score` decimal(10,2) DEFAULT 0.00 COMMENT '总分',
|
||
`pass_score` decimal(10,2) DEFAULT NULL COMMENT '及格分数',
|
||
`estimated_time` int DEFAULT NULL COMMENT '预计完成时间(分钟)',
|
||
`description` text COMMENT '问卷描述',
|
||
`status` char(1) DEFAULT '0' COMMENT '状态(0正常 1停用)',
|
||
`sort_order` int DEFAULT 0 COMMENT '排序顺序',
|
||
`create_by` varchar(64) DEFAULT '' COMMENT '创建者',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT '' COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
PRIMARY KEY (`questionnaire_id`),
|
||
UNIQUE KEY `uk_questionnaire_code` (`questionnaire_code`),
|
||
KEY `idx_questionnaire_type` (`questionnaire_type`),
|
||
KEY `idx_status` (`status`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='自定义问卷表';
|
||
|
||
-- ----------------------------
|
||
-- 4、问卷题目表(支持多种题型)
|
||
-- ----------------------------
|
||
DROP TABLE IF EXISTS `psy_questionnaire_item`;
|
||
CREATE TABLE `psy_questionnaire_item` (
|
||
`item_id` bigint NOT NULL AUTO_INCREMENT COMMENT '题目ID',
|
||
`questionnaire_id` bigint NOT NULL COMMENT '问卷ID',
|
||
`item_number` int NOT NULL COMMENT '题目序号',
|
||
`item_content` text NOT NULL COMMENT '题目内容',
|
||
`item_type` varchar(20) NOT NULL COMMENT '题目类型(radio单选 checkbox多选 boolean判断 input填空 sort排序 calculate计算 text简答 textarea问答 essay作文)',
|
||
`is_required` char(1) DEFAULT '1' COMMENT '是否必填(0否 1是)',
|
||
`score` decimal(10,2) DEFAULT 0.00 COMMENT '题目分值',
|
||
`sort_order` int DEFAULT 0 COMMENT '排序顺序',
|
||
`create_by` varchar(64) DEFAULT '' COMMENT '创建者',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT '' COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
PRIMARY KEY (`item_id`),
|
||
KEY `idx_questionnaire_id` (`questionnaire_id`),
|
||
KEY `idx_item_number` (`questionnaire_id`, `item_number`),
|
||
CONSTRAINT `fk_q_item_questionnaire` FOREIGN KEY (`questionnaire_id`) REFERENCES `psy_questionnaire` (`questionnaire_id`) ON DELETE CASCADE
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='问卷题目表';
|
||
|
||
-- ----------------------------
|
||
-- 5、问卷选项表
|
||
-- ----------------------------
|
||
DROP TABLE IF EXISTS `psy_questionnaire_option`;
|
||
CREATE TABLE `psy_questionnaire_option` (
|
||
`option_id` bigint NOT NULL AUTO_INCREMENT COMMENT '选项ID',
|
||
`item_id` bigint NOT NULL COMMENT '题目ID',
|
||
`option_code` varchar(20) DEFAULT NULL COMMENT '选项编码(如A、B、C或1、2、3)',
|
||
`option_content` varchar(500) NOT NULL COMMENT '选项内容',
|
||
`option_score` decimal(10,2) DEFAULT 0.00 COMMENT '选项分值',
|
||
`is_correct` char(1) DEFAULT '0' COMMENT '是否正确答案(0否 1是)',
|
||
`sort_order` int DEFAULT 0 COMMENT '排序顺序',
|
||
`create_by` varchar(64) DEFAULT '' COMMENT '创建者',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT '' COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
PRIMARY KEY (`option_id`),
|
||
KEY `idx_item_id` (`item_id`),
|
||
CONSTRAINT `fk_q_option_item` FOREIGN KEY (`item_id`) REFERENCES `psy_questionnaire_item` (`item_id`) ON DELETE CASCADE
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='问卷选项表';
|
||
|
||
-- ----------------------------
|
||
-- 6、问卷答题记录表
|
||
-- ----------------------------
|
||
DROP TABLE IF EXISTS `psy_questionnaire_answer`;
|
||
CREATE TABLE `psy_questionnaire_answer` (
|
||
`answer_id` bigint NOT NULL AUTO_INCREMENT COMMENT '答案ID',
|
||
`questionnaire_id` bigint NOT NULL COMMENT '问卷ID',
|
||
`user_id` bigint DEFAULT NULL COMMENT '用户ID(关联sys_user)',
|
||
`respondent_name` varchar(50) DEFAULT NULL COMMENT '答题人姓名',
|
||
`start_time` datetime DEFAULT NULL COMMENT '开始时间',
|
||
`submit_time` datetime DEFAULT NULL COMMENT '提交时间',
|
||
`total_score` decimal(10,2) DEFAULT 0.00 COMMENT '总得分',
|
||
`is_pass` char(1) DEFAULT '0' COMMENT '是否及格(0否 1是)',
|
||
`rank` int DEFAULT NULL COMMENT '排名',
|
||
`status` char(1) DEFAULT '0' COMMENT '状态(0进行中 1已完成 2已作废)',
|
||
`create_by` varchar(64) DEFAULT '' COMMENT '创建者',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT '' COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
PRIMARY KEY (`answer_id`),
|
||
KEY `idx_questionnaire_id` (`questionnaire_id`),
|
||
KEY `idx_user_id` (`user_id`),
|
||
KEY `idx_status` (`status`),
|
||
CONSTRAINT `fk_q_answer_questionnaire` FOREIGN KEY (`questionnaire_id`) REFERENCES `psy_questionnaire` (`questionnaire_id`),
|
||
CONSTRAINT `fk_q_answer_user` FOREIGN KEY (`user_id`) REFERENCES `sys_user` (`user_id`) ON DELETE SET NULL
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='问卷答题记录表';
|
||
|
||
-- ----------------------------
|
||
-- 7、语音读题配置表
|
||
-- ----------------------------
|
||
DROP TABLE IF EXISTS `psy_voice_config`;
|
||
CREATE TABLE `psy_voice_config` (
|
||
`config_id` bigint NOT NULL AUTO_INCREMENT COMMENT '配置ID',
|
||
`item_id` bigint DEFAULT NULL COMMENT '题目ID(为空表示全局配置)',
|
||
`voice_type` varchar(50) DEFAULT 'tts' COMMENT '语音类型(tts合成 human真人录音)',
|
||
`voice_url` varchar(500) DEFAULT NULL COMMENT '语音文件URL',
|
||
`voice_provider` varchar(50) DEFAULT NULL COMMENT 'TTS提供商(aliyun tencent baidu local)',
|
||
`voice_speed` decimal(3,2) DEFAULT 1.00 COMMENT '语速(0.5-2.0)',
|
||
`voice_pitch` decimal(3,2) DEFAULT 1.00 COMMENT '音调(0.5-2.0)',
|
||
`status` char(1) DEFAULT '0' COMMENT '状态(0正常 1停用)',
|
||
`create_by` varchar(64) DEFAULT '' COMMENT '创建者',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT '' COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
PRIMARY KEY (`config_id`),
|
||
KEY `idx_item_id` (`item_id`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='语音读题配置表';
|
||
|
||
-- ----------------------------
|
||
-- 8、危机预警表
|
||
-- ----------------------------
|
||
DROP TABLE IF EXISTS `psy_warning`;
|
||
CREATE TABLE `psy_warning` (
|
||
`warning_id` bigint NOT NULL AUTO_INCREMENT COMMENT '预警ID',
|
||
`assessment_id` bigint NOT NULL COMMENT '测评ID',
|
||
`user_id` bigint DEFAULT NULL COMMENT '用户ID',
|
||
`scale_id` bigint NOT NULL COMMENT '量表ID',
|
||
`factor_id` bigint DEFAULT NULL COMMENT '因子ID(为空表示整体预警)',
|
||
`warning_type` varchar(50) DEFAULT 'score' COMMENT '预警类型(score分数 risk风险)',
|
||
`warning_level` varchar(50) DEFAULT 'medium' COMMENT '预警级别(low低 medium中 high高 critical严重)',
|
||
`warning_score` decimal(10,2) DEFAULT NULL COMMENT '预警分值',
|
||
`warning_reason` text COMMENT '预警原因',
|
||
`status` char(1) DEFAULT '0' COMMENT '状态(0待处理 1处理中 2已解除 3已归档)',
|
||
`handler_id` bigint DEFAULT NULL COMMENT '处理人ID',
|
||
`handle_time` datetime DEFAULT NULL COMMENT '处理时间',
|
||
`handle_result` text COMMENT '处理结果',
|
||
`relief_time` datetime DEFAULT NULL COMMENT '解除时间',
|
||
`relief_reason` text COMMENT '解除原因',
|
||
`notification_sent` char(1) DEFAULT '0' COMMENT '是否已通知(0否 1是)',
|
||
`create_by` varchar(64) DEFAULT '' COMMENT '创建者',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT '' COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
PRIMARY KEY (`warning_id`),
|
||
KEY `idx_assessment_id` (`assessment_id`),
|
||
KEY `idx_user_id` (`user_id`),
|
||
KEY `idx_status` (`status`),
|
||
KEY `idx_warning_level` (`warning_level`),
|
||
CONSTRAINT `fk_warning_assessment` FOREIGN KEY (`assessment_id`) REFERENCES `psy_assessment` (`assessment_id`),
|
||
CONSTRAINT `fk_warning_user` FOREIGN KEY (`user_id`) REFERENCES `sys_user` (`user_id`) ON DELETE SET NULL,
|
||
CONSTRAINT `fk_warning_scale` FOREIGN KEY (`scale_id`) REFERENCES `psy_scale` (`scale_id`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='危机预警表';
|
||
|
||
-- ----------------------------
|
||
-- 9、预警规则配置表
|
||
-- ----------------------------
|
||
DROP TABLE IF EXISTS `psy_warning_rule`;
|
||
CREATE TABLE `psy_warning_rule` (
|
||
`rule_id` bigint NOT NULL AUTO_INCREMENT COMMENT '规则ID',
|
||
`scale_id` bigint NOT NULL COMMENT '量表ID',
|
||
`factor_id` bigint DEFAULT NULL COMMENT '因子ID(为空表示整体规则)',
|
||
`rule_name` varchar(100) NOT NULL COMMENT '规则名称',
|
||
`warning_level` varchar(50) DEFAULT 'medium' COMMENT '预警级别',
|
||
`score_min` decimal(10,2) DEFAULT NULL COMMENT '分值最小值',
|
||
`score_max` decimal(10,2) DEFAULT NULL COMMENT '分值最大值',
|
||
`percentile_min` decimal(5,2) DEFAULT NULL COMMENT '百分位最小值',
|
||
`percentile_max` decimal(5,2) DEFAULT NULL COMMENT '百分位最大值',
|
||
`auto_relief` char(1) DEFAULT '0' COMMENT '是否自动解除(0否 1是)',
|
||
`relief_condition` text COMMENT '解除条件(JSON格式)',
|
||
`status` char(1) DEFAULT '0' COMMENT '状态(0启用 1禁用)',
|
||
`create_by` varchar(64) DEFAULT '' COMMENT '创建者',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT '' COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
PRIMARY KEY (`rule_id`),
|
||
KEY `idx_scale_id` (`scale_id`),
|
||
KEY `idx_factor_id` (`factor_id`),
|
||
KEY `idx_status` (`status`),
|
||
CONSTRAINT `fk_warning_rule_scale` FOREIGN KEY (`scale_id`) REFERENCES `psy_scale` (`scale_id`) ON DELETE CASCADE,
|
||
CONSTRAINT `fk_warning_rule_factor` FOREIGN KEY (`factor_id`) REFERENCES `psy_factor` (`factor_id`) ON DELETE CASCADE
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='预警规则配置表';
|
||
|
||
-- ----------------------------
|
||
-- 10、二维码管理表
|
||
-- ----------------------------
|
||
DROP TABLE IF EXISTS `psy_qrcode`;
|
||
CREATE TABLE `psy_qrcode` (
|
||
`qrcode_id` bigint NOT NULL AUTO_INCREMENT COMMENT '二维码ID',
|
||
`qrcode_code` varchar(50) NOT NULL COMMENT '二维码编号',
|
||
`qrcode_type` varchar(50) NOT NULL COMMENT '二维码类型(test测评 view_report查看报告 register注册 login登录)',
|
||
`target_type` varchar(50) DEFAULT NULL COMMENT '目标类型(scale量表 assessment测评 report报告)',
|
||
`target_id` bigint DEFAULT NULL COMMENT '目标ID',
|
||
`short_url` varchar(200) DEFAULT NULL COMMENT '短链接',
|
||
`qrcode_url` varchar(500) DEFAULT NULL COMMENT '二维码图片URL',
|
||
`scan_count` int DEFAULT 0 COMMENT '扫码次数',
|
||
`expire_time` datetime DEFAULT NULL COMMENT '过期时间',
|
||
`status` char(1) DEFAULT '0' COMMENT '状态(0有效 1无效 2已过期)',
|
||
`create_by` varchar(64) DEFAULT '' COMMENT '创建者',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT '' COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
PRIMARY KEY (`qrcode_id`),
|
||
UNIQUE KEY `uk_qrcode_code` (`qrcode_code`),
|
||
KEY `idx_qrcode_type` (`qrcode_type`),
|
||
KEY `idx_status` (`status`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='二维码管理表';
|
||
|
||
-- ----------------------------
|
||
-- 11、二维码扫码记录表
|
||
-- ----------------------------
|
||
DROP TABLE IF EXISTS `psy_qrcode_log`;
|
||
CREATE TABLE `psy_qrcode_log` (
|
||
`log_id` bigint NOT NULL AUTO_INCREMENT COMMENT '记录ID',
|
||
`qrcode_id` bigint NOT NULL COMMENT '二维码ID',
|
||
`user_id` bigint DEFAULT NULL COMMENT '扫码用户ID',
|
||
`ip_address` varchar(128) DEFAULT '' COMMENT 'IP地址',
|
||
`user_agent` varchar(500) DEFAULT NULL COMMENT '用户代理',
|
||
`scan_time` datetime DEFAULT NULL COMMENT '扫码时间',
|
||
PRIMARY KEY (`log_id`),
|
||
KEY `idx_qrcode_id` (`qrcode_id`),
|
||
KEY `idx_scan_time` (`scan_time`),
|
||
CONSTRAINT `fk_qrcode_log_qrcode` FOREIGN KEY (`qrcode_id`) REFERENCES `psy_qrcode` (`qrcode_id`) ON DELETE CASCADE
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='二维码扫码记录表';
|
||
|
||
-- ----------------------------
|
||
-- 12、数据备份表
|
||
-- ----------------------------
|
||
DROP TABLE IF EXISTS `sys_backup`;
|
||
CREATE TABLE `sys_backup` (
|
||
`backup_id` bigint NOT NULL AUTO_INCREMENT COMMENT '备份ID',
|
||
`backup_name` varchar(200) NOT NULL COMMENT '备份名称',
|
||
`backup_type` varchar(50) DEFAULT 'full' COMMENT '备份类型(full全量 incremental增量)',
|
||
`backup_path` varchar(500) NOT NULL COMMENT '备份路径',
|
||
`file_size` bigint DEFAULT NULL COMMENT '文件大小(字节)',
|
||
`backup_status` char(1) DEFAULT '0' COMMENT '备份状态(0备份中 1成功 2失败)',
|
||
`backup_time` datetime DEFAULT NULL COMMENT '备份时间',
|
||
`backup_duration` int DEFAULT NULL COMMENT '备份耗时(秒)',
|
||
`create_by` varchar(64) DEFAULT '' COMMENT '创建者',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
PRIMARY KEY (`backup_id`),
|
||
KEY `idx_backup_time` (`backup_time`),
|
||
KEY `idx_backup_status` (`backup_status`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='数据备份表';
|
||
|
||
-- ----------------------------
|
||
-- 13、心理网站内容表
|
||
-- ----------------------------
|
||
DROP TABLE IF EXISTS `psy_website_content`;
|
||
CREATE TABLE `psy_website_content` (
|
||
`content_id` bigint NOT NULL AUTO_INCREMENT COMMENT '内容ID',
|
||
`content_type` varchar(50) NOT NULL COMMENT '内容类型(article文章 notice公告 banner横幅 link链接)',
|
||
`category_id` bigint DEFAULT NULL COMMENT '分类ID',
|
||
`title` varchar(200) NOT NULL COMMENT '标题',
|
||
`subtitle` varchar(200) DEFAULT NULL COMMENT '副标题',
|
||
`summary` varchar(500) DEFAULT NULL COMMENT '摘要',
|
||
`content` longtext COMMENT '正文内容',
|
||
`cover_image` varchar(500) DEFAULT NULL COMMENT '封面图片',
|
||
`author` varchar(100) DEFAULT NULL COMMENT '作者',
|
||
`source` varchar(200) DEFAULT NULL COMMENT '来源',
|
||
`click_count` int DEFAULT 0 COMMENT '点击量',
|
||
`like_count` int DEFAULT 0 COMMENT '点赞数',
|
||
`is_top` char(1) DEFAULT '0' COMMENT '是否置顶(0否 1是)',
|
||
`is_recommend` char(1) DEFAULT '0' COMMENT '是否推荐(0否 1是)',
|
||
`publish_time` datetime DEFAULT NULL COMMENT '发布时间',
|
||
`sort_order` int DEFAULT 0 COMMENT '排序顺序',
|
||
`status` char(1) DEFAULT '0' COMMENT '状态(0草稿 1已发布 2已下架)',
|
||
`create_by` varchar(64) DEFAULT '' COMMENT '创建者',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT '' COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
PRIMARY KEY (`content_id`),
|
||
KEY `idx_content_type` (`content_type`),
|
||
KEY `idx_status` (`status`),
|
||
KEY `idx_publish_time` (`publish_time`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='心理网站内容表';
|
||
|
||
-- ----------------------------
|
||
-- 14、心理网站配置表
|
||
-- ----------------------------
|
||
DROP TABLE IF EXISTS `psy_website_config`;
|
||
CREATE TABLE `psy_website_config` (
|
||
`config_id` bigint NOT NULL AUTO_INCREMENT COMMENT '配置ID',
|
||
`config_key` varchar(100) NOT NULL COMMENT '配置键',
|
||
`config_value` text COMMENT '配置值',
|
||
`config_type` varchar(50) DEFAULT 'text' COMMENT '配置类型(text文本 number数字 jsonJSON image图片)',
|
||
`config_description` varchar(500) DEFAULT NULL COMMENT '配置描述',
|
||
`create_by` varchar(64) DEFAULT '' COMMENT '创建者',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT '' COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
PRIMARY KEY (`config_id`),
|
||
UNIQUE KEY `uk_config_key` (`config_key`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='心理网站配置表';
|
||
|
||
-- ----------------------------
|
||
-- 15、开放式API配置表
|
||
-- ----------------------------
|
||
DROP TABLE IF EXISTS `sys_api_config`;
|
||
CREATE TABLE `sys_api_config` (
|
||
`config_id` bigint NOT NULL AUTO_INCREMENT COMMENT '配置ID',
|
||
`api_name` varchar(100) NOT NULL COMMENT 'API名称',
|
||
`api_key` varchar(64) NOT NULL COMMENT 'API密钥',
|
||
`api_secret` varchar(64) DEFAULT NULL COMMENT 'API密文',
|
||
`client_id` varchar(100) DEFAULT NULL COMMENT '客户端ID',
|
||
`allowed_ips` varchar(1000) DEFAULT NULL COMMENT '允许的IP地址(多个用逗号分隔)',
|
||
`rate_limit` int DEFAULT 100 COMMENT '限流(每分钟请求数)',
|
||
`status` char(1) DEFAULT '0' COMMENT '状态(0启用 1禁用)',
|
||
`expire_time` datetime DEFAULT NULL COMMENT '过期时间',
|
||
`last_use_time` datetime DEFAULT NULL COMMENT '最后使用时间',
|
||
`create_by` varchar(64) DEFAULT '' COMMENT '创建者',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT '' COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
PRIMARY KEY (`config_id`),
|
||
UNIQUE KEY `uk_api_key` (`api_key`),
|
||
KEY `idx_status` (`status`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='开放式API配置表';
|
||
|
||
-- ----------------------------
|
||
-- 16、API调用日志表
|
||
-- ----------------------------
|
||
DROP TABLE IF EXISTS `sys_api_log`;
|
||
CREATE TABLE `sys_api_log` (
|
||
`log_id` bigint NOT NULL AUTO_INCREMENT COMMENT '日志ID',
|
||
`api_key` varchar(64) NOT NULL COMMENT 'API密钥',
|
||
`api_path` varchar(200) NOT NULL COMMENT 'API路径',
|
||
`request_method` varchar(20) DEFAULT NULL COMMENT '请求方法',
|
||
`request_params` text COMMENT '请求参数',
|
||
`response_code` varchar(10) DEFAULT NULL COMMENT '响应码',
|
||
`response_time` int DEFAULT NULL COMMENT '响应时间(毫秒)',
|
||
`ip_address` varchar(128) DEFAULT '' COMMENT 'IP地址',
|
||
`user_agent` varchar(500) DEFAULT NULL COMMENT '用户代理',
|
||
`create_time` datetime DEFAULT NULL COMMENT '调用时间',
|
||
PRIMARY KEY (`log_id`),
|
||
KEY `idx_api_key` (`api_key`),
|
||
KEY `idx_create_time` (`create_time`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='API调用日志表';
|
||
|
||
-- ----------------------------
|
||
-- 初始化扩展数据字典
|
||
-- ----------------------------
|
||
|
||
-- 档案类型字典
|
||
INSERT IGNORE INTO `sys_dict_type` (`dict_name`, `dict_type`, `status`, `create_by`, `create_time`, `remark`)
|
||
VALUES ('档案类型', 'psy_profile_type', '0', 'admin', NOW(), '用户档案类型列表');
|
||
|
||
INSERT IGNORE INTO `sys_dict_data` (`dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `remark`)
|
||
VALUES (1, '标准档案', 'standard', 'psy_profile_type', '', 'primary', 'Y', '0', 'admin', NOW(), '标准档案'),
|
||
(2, '儿童档案', 'child', 'psy_profile_type', '', 'success', 'N', '0', 'admin', NOW(), '儿童档案'),
|
||
(3, '成人档案', 'adult', 'psy_profile_type', '', 'info', 'N', '0', 'admin', NOW(), '成人档案'),
|
||
(4, '老年档案', 'senior', 'psy_profile_type', '', 'warning', 'N', '0', 'admin', NOW(), '老年档案');
|
||
|
||
-- 问卷类型字典
|
||
INSERT IGNORE INTO `sys_dict_type` (`dict_name`, `dict_type`, `status`, `create_by`, `create_time`, `remark`)
|
||
VALUES ('问卷类型', 'psy_questionnaire_type', '0', 'admin', NOW(), '自定义问卷类型');
|
||
|
||
INSERT IGNORE INTO `sys_dict_data` (`dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `remark`)
|
||
VALUES (1, '自定义', 'custom', 'psy_questionnaire_type', '', 'primary', 'Y', '0', 'admin', NOW(), '自定义问卷'),
|
||
(2, '考试', 'exam', 'psy_questionnaire_type', '', 'warning', 'N', '0', 'admin', NOW(), '考试问卷'),
|
||
(3, '练习', 'practice', 'psy_questionnaire_type', '', 'success', 'N', '0', 'admin', NOW(), '练习问卷');
|
||
|
||
-- 组卷方式字典
|
||
INSERT IGNORE INTO `sys_dict_type` (`dict_name`, `dict_type`, `status`, `create_by`, `create_time`, `remark`)
|
||
VALUES ('组卷方式', 'psy_paper_type', '0', 'admin', NOW(), '问卷组卷方式');
|
||
|
||
INSERT IGNORE INTO `sys_dict_data` (`dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `remark`)
|
||
VALUES (1, '手动', 'manual', 'psy_paper_type', '', 'primary', 'Y', '0', 'admin', NOW(), '手动组卷'),
|
||
(2, '随机', 'random', 'psy_paper_type', '', 'success', 'N', '0', 'admin', NOW(), '随机组卷'),
|
||
(3, '混合', 'mixed', 'psy_paper_type', '', 'info', 'N', '0', 'admin', NOW(), '手动+随机');
|
||
|
||
-- 扩展题目类型字典
|
||
INSERT IGNORE INTO `sys_dict_data` (`dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `remark`)
|
||
VALUES (4, '判断题', 'boolean', 'psy_item_type', '', 'info', 'N', '0', 'admin', NOW(), '判断题'),
|
||
(5, '填空题', 'input', 'psy_item_type', '', 'warning', 'N', '0', 'admin', NOW(), '填空题'),
|
||
(6, '排序题', 'sort', 'psy_item_type', '', 'info', 'N', '0', 'admin', NOW(), '排序题'),
|
||
(7, '计算题', 'calculate', 'psy_item_type', '', 'warning', 'N', '0', 'admin', NOW(), '计算题'),
|
||
(8, '简答题', 'text', 'psy_item_type', '', 'info', 'N', '0', 'admin', NOW(), '简答题'),
|
||
(9, '问答题', 'textarea', 'psy_item_type', '', 'warning', 'N', '0', 'admin', NOW(), '问答题'),
|
||
(10, '作文题', 'essay', 'psy_item_type', '', 'success', 'N', '0', 'admin', NOW(), '作文题');
|
||
|
||
-- 预警级别字典
|
||
INSERT IGNORE INTO `sys_dict_type` (`dict_name`, `dict_type`, `status`, `create_by`, `create_time`, `remark`)
|
||
VALUES ('预警级别', 'psy_warning_level', '0', 'admin', NOW(), '危机预警级别');
|
||
|
||
INSERT IGNORE INTO `sys_dict_data` (`dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `remark`)
|
||
VALUES (1, '低', 'low', 'psy_warning_level', '', 'info', 'N', '0', 'admin', NOW(), '低风险'),
|
||
(2, '中', 'medium', 'psy_warning_level', '', 'warning', 'Y', '0', 'admin', NOW(), '中风险'),
|
||
(3, '高', 'high', 'psy_warning_level', '', 'danger', 'N', '0', 'admin', NOW(), '高风险'),
|
||
(4, '严重', 'critical', 'psy_warning_level', '', 'danger', 'N', '0', 'admin', NOW(), '严重风险');
|
||
|
||
-- 预警状态字典
|
||
INSERT IGNORE INTO `sys_dict_type` (`dict_name`, `dict_type`, `status`, `create_by`, `create_time`, `remark`)
|
||
VALUES ('预警状态', 'psy_warning_status', '0', 'admin', NOW(), '危机预警状态');
|
||
|
||
INSERT IGNORE INTO `sys_dict_data` (`dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `remark`)
|
||
VALUES (1, '待处理', '0', 'psy_warning_status', '', 'warning', 'Y', '0', 'admin', NOW(), '待处理'),
|
||
(2, '处理中', '1', 'psy_warning_status', '', 'info', 'N', '0', 'admin', NOW(), '处理中'),
|
||
(3, '已解除', '2', 'psy_warning_status', '', 'success', 'N', '0', 'admin', NOW(), '已解除'),
|
||
(4, '已归档', '3', 'psy_warning_status', '', 'default', 'N', '0', 'admin', NOW(), '已归档');
|
||
|
||
-- 二维码类型字典
|
||
INSERT IGNORE INTO `sys_dict_type` (`dict_name`, `dict_type`, `status`, `create_by`, `create_time`, `remark`)
|
||
VALUES ('二维码类型', 'psy_qrcode_type', '0', 'admin', NOW(), '二维码类型列表');
|
||
|
||
INSERT IGNORE INTO `sys_dict_data` (`dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `remark`)
|
||
VALUES (1, '测评', 'test', 'psy_qrcode_type', '', 'primary', 'Y', '0', 'admin', NOW(), '扫码测评'),
|
||
(2, '查看报告', 'view_report', 'psy_qrcode_type', '', 'success', 'N', '0', 'admin', NOW(), '扫码查看报告'),
|
||
(3, '注册', 'register', 'psy_qrcode_type', '', 'info', 'N', '0', 'admin', NOW(), '扫码注册'),
|
||
(4, '登录', 'login', 'psy_qrcode_type', '', 'warning', 'N', '0', 'admin', NOW(), '扫码登录');
|
||
|
||
-- 备份类型字典
|
||
INSERT IGNORE INTO `sys_dict_type` (`dict_name`, `dict_type`, `status`, `create_by`, `create_time`, `remark`)
|
||
VALUES ('备份类型', 'sys_backup_type', '0', 'admin', NOW(), '数据备份类型');
|
||
|
||
INSERT IGNORE INTO `sys_dict_data` (`dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `remark`)
|
||
VALUES (1, '全量备份', 'full', 'sys_backup_type', '', 'primary', 'Y', '0', 'admin', NOW(), '全量备份'),
|
||
(2, '增量备份', 'incremental', 'sys_backup_type', '', 'success', 'N', '0', 'admin', NOW(), '增量备份');
|
||
|
||
-- 网站内容类型字典
|
||
INSERT IGNORE INTO `sys_dict_type` (`dict_name`, `dict_type`, `status`, `create_by`, `create_time`, `remark`)
|
||
VALUES ('网站内容类型', 'psy_content_type', '0', 'admin', NOW(), '心理网站内容类型');
|
||
|
||
INSERT IGNORE INTO `sys_dict_data` (`dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `remark`)
|
||
VALUES (1, '文章', 'article', 'psy_content_type', '', 'primary', 'Y', '0', 'admin', NOW(), '文章内容'),
|
||
(2, '公告', 'notice', 'psy_content_type', '', 'warning', 'N', '0', 'admin', NOW(), '公告内容'),
|
||
(3, '横幅', 'banner', 'psy_content_type', '', 'info', 'N', '0', 'admin', NOW(), '横幅图片'),
|
||
(4, '链接', 'link', 'psy_content_type', '', 'success', 'N', '0', 'admin', NOW(), '外链内容');
|
||
|
||
|
||
-- ========================================
|
||
-- 鏉ユ簮鏂囦欢: psy_assessment_system_patch.sql
|
||
-- ========================================
|
||
|
||
-- ----------------------------
|
||
-- 修改测评表status字段注释,增加暂停状态
|
||
-- ----------------------------
|
||
ALTER TABLE `psy_assessment`
|
||
MODIFY COLUMN `status` char(1) DEFAULT '0' COMMENT '状态(0进行中 1已完成 2已作废 3已暂停)';
|
||
|
||
-- ----------------------------
|
||
-- 修改测评状态字典,增加暂停状态
|
||
-- ----------------------------
|
||
INSERT IGNORE INTO `sys_dict_data` (`dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `remark`)
|
||
VALUES (4, '已暂停', '3', 'psy_assessment_status', '', 'info', 'N', '0', 'admin', NOW(), '已暂停');
|
||
|
||
-- ----------------------------
|
||
-- 添加暂停相关字段到测评表
|
||
-- ----------------------------
|
||
ALTER TABLE `psy_assessment`
|
||
ADD COLUMN `pause_time` datetime DEFAULT NULL COMMENT '暂停时间' AFTER `start_time`,
|
||
ADD COLUMN `resume_time` datetime DEFAULT NULL COMMENT '恢复时间' AFTER `pause_time`,
|
||
ADD COLUMN `pause_count` int DEFAULT 0 COMMENT '暂停次数' AFTER `resume_time`;
|
||
|
||
|
||
-- ========================================
|
||
-- 鏉ユ簮鏂囦欢: psy_website_supplement.sql
|
||
-- ========================================
|
||
|
||
-- ----------------------------
|
||
-- 1、网站栏目表
|
||
-- ----------------------------
|
||
DROP TABLE IF EXISTS `psy_website_category`;
|
||
CREATE TABLE `psy_website_category` (
|
||
`category_id` bigint NOT NULL AUTO_INCREMENT COMMENT '栏目ID',
|
||
`category_name` varchar(100) NOT NULL COMMENT '栏目名称',
|
||
`category_code` varchar(50) DEFAULT NULL COMMENT '栏目编码',
|
||
`parent_id` bigint DEFAULT 0 COMMENT '父栏目ID(0表示顶级栏目)',
|
||
`category_type` varchar(50) DEFAULT 'article' COMMENT '栏目类型(article文章 notice公告 banner横幅)',
|
||
`icon` varchar(100) DEFAULT NULL COMMENT '栏目图标',
|
||
`description` varchar(500) DEFAULT NULL COMMENT '栏目描述',
|
||
`sort_order` int DEFAULT 0 COMMENT '排序顺序',
|
||
`status` char(1) DEFAULT '0' COMMENT '状态(0正常 1停用)',
|
||
`create_by` varchar(64) DEFAULT '' COMMENT '创建者',
|
||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||
`update_by` varchar(64) DEFAULT '' COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
PRIMARY KEY (`category_id`),
|
||
KEY `idx_parent_id` (`parent_id`),
|
||
KEY `idx_category_type` (`category_type`),
|
||
KEY `idx_status` (`status`)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='心理网站栏目表';
|
||
|
||
-- ----------------------------
|
||
-- 2、网站评论表
|
||
-- ----------------------------
|
||
DROP TABLE IF EXISTS `psy_website_comment`;
|
||
CREATE TABLE `psy_website_comment` (
|
||
`comment_id` bigint NOT NULL AUTO_INCREMENT COMMENT '评论ID',
|
||
`content_id` bigint NOT NULL COMMENT '内容ID(关联psy_website_content)',
|
||
`parent_id` bigint DEFAULT 0 COMMENT '父评论ID(0表示顶级评论)',
|
||
`user_id` bigint DEFAULT NULL COMMENT '评论用户ID(关联sys_user,可为空表示匿名)',
|
||
`nickname` varchar(50) DEFAULT NULL COMMENT '昵称(匿名评论时使用)',
|
||
`email` varchar(100) DEFAULT NULL COMMENT '邮箱(匿名评论时使用)',
|
||
`comment_content` text NOT NULL COMMENT '评论内容',
|
||
`ip_address` varchar(128) DEFAULT '' COMMENT 'IP地址',
|
||
`like_count` int DEFAULT 0 COMMENT '点赞数',
|
||
`status` char(1) DEFAULT '0' COMMENT '状态(0待审核 1已发布 2已删除)',
|
||
`create_time` datetime DEFAULT NULL COMMENT '评论时间',
|
||
`create_by` varchar(64) DEFAULT '' COMMENT '创建者',
|
||
`update_by` varchar(64) DEFAULT '' COMMENT '更新者',
|
||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||
PRIMARY KEY (`comment_id`),
|
||
KEY `idx_content_id` (`content_id`),
|
||
KEY `idx_user_id` (`user_id`),
|
||
KEY `idx_parent_id` (`parent_id`),
|
||
KEY `idx_status` (`status`),
|
||
KEY `idx_create_time` (`create_time`),
|
||
CONSTRAINT `fk_comment_content` FOREIGN KEY (`content_id`) REFERENCES `psy_website_content` (`content_id`) ON DELETE CASCADE
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='心理网站评论表';
|
||
|
||
-- ----------------------------
|
||
-- 更新psy_website_content表,添加外键约束
|
||
-- ----------------------------
|
||
-- 注意:如果表中已有数据,需要先清理不符合外键约束的数据
|
||
-- ALTER TABLE `psy_website_content`
|
||
-- ADD CONSTRAINT `fk_content_category` FOREIGN KEY (`category_id`) REFERENCES `psy_website_category` (`category_id`) ON DELETE SET NULL;
|
||
|
||
-- ----------------------------
|
||
-- 初始化字典数据
|
||
-- ----------------------------
|
||
|
||
-- 栏目类型字典(如果不存在)
|
||
INSERT IGNORE INTO `sys_dict_type` (`dict_name`, `dict_type`, `status`, `create_by`, `create_time`, `remark`)
|
||
SELECT '栏目类型', 'psy_category_type', '0', 'admin', NOW(), '心理网站栏目类型'
|
||
WHERE NOT EXISTS (SELECT 1 FROM `sys_dict_type` WHERE `dict_type` = 'psy_category_type');
|
||
|
||
INSERT IGNORE INTO `sys_dict_data` (`dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `remark`)
|
||
SELECT 1, '文章', 'article', 'psy_category_type', '', 'primary', 'Y', '0', 'admin', NOW(), '文章栏目'
|
||
WHERE NOT EXISTS (SELECT 1 FROM `sys_dict_data` WHERE `dict_type` = 'psy_category_type' AND `dict_value` = 'article')
|
||
UNION ALL
|
||
SELECT 2, '公告', 'notice', 'psy_category_type', '', 'warning', 'N', '0', 'admin', NOW(), '公告栏目'
|
||
WHERE NOT EXISTS (SELECT 1 FROM `sys_dict_data` WHERE `dict_type` = 'psy_category_type' AND `dict_value` = 'notice')
|
||
UNION ALL
|
||
SELECT 3, '横幅', 'banner', 'psy_category_type', '', 'info', 'N', '0', 'admin', NOW(), '横幅栏目'
|
||
WHERE NOT EXISTS (SELECT 1 FROM `sys_dict_data` WHERE `dict_type` = 'psy_category_type' AND `dict_value` = 'banner');
|
||
|
||
-- 内容状态字典(如果不存在)
|
||
INSERT IGNORE INTO `sys_dict_type` (`dict_name`, `dict_type`, `status`, `create_by`, `create_time`, `remark`)
|
||
SELECT '内容状态', 'psy_content_status', '0', 'admin', NOW(), '心理网站内容状态'
|
||
WHERE NOT EXISTS (SELECT 1 FROM `sys_dict_type` WHERE `dict_type` = 'psy_content_status');
|
||
|
||
INSERT IGNORE INTO `sys_dict_data` (`dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `remark`)
|
||
SELECT 1, '草稿', '0', 'psy_content_status', '', 'info', 'Y', '0', 'admin', NOW(), '草稿状态'
|
||
WHERE NOT EXISTS (SELECT 1 FROM `sys_dict_data` WHERE `dict_type` = 'psy_content_status' AND `dict_value` = '0')
|
||
UNION ALL
|
||
SELECT 2, '已发布', '1', 'psy_content_status', '', 'success', 'N', '0', 'admin', NOW(), '已发布状态'
|
||
WHERE NOT EXISTS (SELECT 1 FROM `sys_dict_data` WHERE `dict_type` = 'psy_content_status' AND `dict_value` = '1')
|
||
UNION ALL
|
||
SELECT 3, '已下架', '2', 'psy_content_status', '', 'warning', 'N', '0', 'admin', NOW(), '已下架状态'
|
||
WHERE NOT EXISTS (SELECT 1 FROM `sys_dict_data` WHERE `dict_type` = 'psy_content_status' AND `dict_value` = '2');
|
||
|
||
-- 评论状态字典(如果不存在)
|
||
INSERT IGNORE INTO `sys_dict_type` (`dict_name`, `dict_type`, `status`, `create_by`, `create_time`, `remark`)
|
||
SELECT '评论状态', 'psy_comment_status', '0', 'admin', NOW(), '心理网站评论状态'
|
||
WHERE NOT EXISTS (SELECT 1 FROM `sys_dict_type` WHERE `dict_type` = 'psy_comment_status');
|
||
|
||
INSERT IGNORE INTO `sys_dict_data` (`dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `remark`)
|
||
SELECT 1, '待审核', '0', 'psy_comment_status', '', 'warning', 'Y', '0', 'admin', NOW(), '待审核状态'
|
||
WHERE NOT EXISTS (SELECT 1 FROM `sys_dict_data` WHERE `dict_type` = 'psy_comment_status' AND `dict_value` = '0')
|
||
UNION ALL
|
||
SELECT 2, '已发布', '1', 'psy_comment_status', '', 'success', 'N', '0', 'admin', NOW(), '已发布状态'
|
||
WHERE NOT EXISTS (SELECT 1 FROM `sys_dict_data` WHERE `dict_type` = 'psy_comment_status' AND `dict_value` = '1')
|
||
UNION ALL
|
||
SELECT 3, '已删除', '2', 'psy_comment_status', '', 'danger', 'N', '0', 'admin', NOW(), '已删除状态'
|
||
WHERE NOT EXISTS (SELECT 1 FROM `sys_dict_data` WHERE `dict_type` = 'psy_comment_status' AND `dict_value` = '2');
|
||
|
||
SET FOREIGN_KEY_CHECKS = 1;
|
||
|
||
-- 验证表创建
|
||
SELECT '表创建完成!' AS result;
|
||
SELECT COUNT(*) AS 栏目表记录数 FROM `psy_website_category`;
|
||
SELECT COUNT(*) AS 评论表记录数 FROM `psy_website_comment`;
|
||
|
||
-- ========================================
|
||
-- 鏉ユ簮鏂囦欢: psy_scale_init_data.sql
|
||
-- ========================================
|
||
|
||
-- ========================================
|
||
-- 第一部分:罪犯心理测评量表(COPA系列)
|
||
-- ========================================
|
||
|
||
-- ----------------------------
|
||
-- COPA-SAI 罪犯社会适应状况分测验
|
||
-- ----------------------------
|
||
INSERT INTO `psy_scale` (`scale_code`, `scale_name`, `scale_en_name`, `scale_type`, `scale_version`, `scale_intro`, `scale_description`, `item_count`, `estimated_time`, `target_population`, `author`, `source`, `status`, `sort_order`, `create_by`, `create_time`, `remark`)
|
||
VALUES
|
||
('COPA_SAI', '罪犯社会适应状况分测验', 'Criminal Social Adaptation Inventory', 'behavior', '1.0',
|
||
'用于评估罪犯的社会适应状况,包括社会认知、社会行为和社会情感等方面。',
|
||
'该测验从多个维度评估罪犯的社会适应能力,包括:环境适应、人际适应、生活适应等。适用于对服刑人员进行心理健康筛查和风险评估。',
|
||
40, 20, '服刑人员', '中国心理学会', '司法部监狱管理局', '0', 1, 'admin', NOW(), 'COPA系列量表之一');
|
||
|
||
-- 获取刚才插入的COPA-SAI量表ID
|
||
SET @scale_id_sai = LAST_INSERT_ID();
|
||
|
||
-- 插入COPA-SAI因子
|
||
INSERT INTO `psy_factor` (`scale_id`, `factor_code`, `factor_name`, `factor_en_name`, `factor_description`, `factor_order`, `create_by`, `create_time`)
|
||
VALUES
|
||
(@scale_id_sai, 'ENVIRONMENTAL', '环境适应', 'Environmental Adaptation', '对社会环境的适应能力', 1, 'admin', NOW()),
|
||
(@scale_id_sai, 'INTERPERSONAL', '人际适应', 'Interpersonal Adaptation', '与他人相处的能力', 2, 'admin', NOW()),
|
||
(@scale_id_sai, 'LIFE_SKILLS', '生活适应', 'Life Skills Adaptation', '日常生活技能的适应', 3, 'admin', NOW()),
|
||
(@scale_id_sai, 'EMOTIONAL', '情感适应', 'Emotional Adaptation', '情绪情感调节能力', 4, 'admin', NOW());
|
||
|
||
-- 插入COPA-SAI题目(示例题目)
|
||
INSERT INTO `psy_scale_item` (`scale_id`, `item_number`, `item_content`, `item_type`, `required`, `reverse_score`, `sort_order`, `create_by`, `create_time`)
|
||
VALUES
|
||
(@scale_id_sai, 1, '我能够很快适应新的环境', 'single', '1', '0', 1, 'admin', NOW()),
|
||
(@scale_id_sai, 2, '对于生活环境的改变,我感到很不适应', 'single', '1', '1', 2, 'admin', NOW()),
|
||
(@scale_id_sai, 3, '我能够很好地融入集体生活', 'single', '1', '0', 3, 'admin', NOW()),
|
||
(@scale_id_sai, 4, '我感觉自己很难与他人建立良好关系', 'single', '1', '1', 4, 'admin', NOW()),
|
||
(@scale_id_sai, 5, '我能够管理好自己的日常生活', 'single', '1', '0', 5, 'admin', NOW());
|
||
|
||
-- 为每个题目添加选项(统一使用1-4分李克特量表)
|
||
SET @item_id = (SELECT item_id FROM psy_scale_item WHERE scale_id = @scale_id_sai AND item_number = 1);
|
||
INSERT INTO `psy_scale_option` (`item_id`, `option_code`, `option_content`, `option_score`, `sort_order`, `create_by`, `create_time`)
|
||
VALUES
|
||
(@item_id, 'A', '完全符合', 1, 1, 'admin', NOW()),
|
||
(@item_id, 'B', '比较符合', 2, 2, 'admin', NOW()),
|
||
(@item_id, 'C', '不太符合', 3, 3, 'admin', NOW()),
|
||
(@item_id, 'D', '完全不符合', 4, 4, 'admin', NOW());
|
||
|
||
SET @item_id = (SELECT item_id FROM psy_scale_item WHERE scale_id = @scale_id_sai AND item_number = 2);
|
||
INSERT INTO `psy_scale_option` (`item_id`, `option_code`, `option_content`, `option_score`, `sort_order`, `create_by`, `create_time`)
|
||
VALUES
|
||
(@item_id, 'A', '完全符合', 1, 1, 'admin', NOW()),
|
||
(@item_id, 'B', '比较符合', 2, 2, 'admin', NOW()),
|
||
(@item_id, 'C', '不太符合', 3, 3, 'admin', NOW()),
|
||
(@item_id, 'D', '完全不符合', 4, 4, 'admin', NOW());
|
||
|
||
SET @item_id = (SELECT item_id FROM psy_scale_item WHERE scale_id = @scale_id_sai AND item_number = 3);
|
||
INSERT INTO `psy_scale_option` (`item_id`, `option_code`, `option_content`, `option_score`, `sort_order`, `create_by`, `create_time`)
|
||
VALUES
|
||
(@item_id, 'A', '完全符合', 1, 1, 'admin', NOW()),
|
||
(@item_id, 'B', '比较符合', 2, 2, 'admin', NOW()),
|
||
(@item_id, 'C', '不太符合', 3, 3, 'admin', NOW()),
|
||
(@item_id, 'D', '完全不符合', 4, 4, 'admin', NOW());
|
||
|
||
SET @item_id = (SELECT item_id FROM psy_scale_item WHERE scale_id = @scale_id_sai AND item_number = 4);
|
||
INSERT INTO `psy_scale_option` (`item_id`, `option_code`, `option_content`, `option_score`, `sort_order`, `create_by`, `create_time`)
|
||
VALUES
|
||
(@item_id, 'A', '完全符合', 1, 1, 'admin', NOW()),
|
||
(@item_id, 'B', '比较符合', 2, 2, 'admin', NOW()),
|
||
(@item_id, 'C', '不太符合', 3, 3, 'admin', NOW()),
|
||
(@item_id, 'D', '完全不符合', 4, 4, 'admin', NOW());
|
||
|
||
SET @item_id = (SELECT item_id FROM psy_scale_item WHERE scale_id = @scale_id_sai AND item_number = 5);
|
||
INSERT INTO `psy_scale_option` (`item_id`, `option_code`, `option_content`, `option_score`, `sort_order`, `create_by`, `create_time`)
|
||
VALUES
|
||
(@item_id, 'A', '完全符合', 1, 1, 'admin', NOW()),
|
||
(@item_id, 'B', '比较符合', 2, 2, 'admin', NOW()),
|
||
(@item_id, 'C', '不太符合', 3, 3, 'admin', NOW()),
|
||
(@item_id, 'D', '完全不符合', 4, 4, 'admin', NOW());
|
||
|
||
-- ----------------------------
|
||
-- 插入因子计分规则(示例,需要根据实际量表完善)
|
||
-- ----------------------------
|
||
-- 环境适应因子包含题目1,2
|
||
SET @factor_id_env = (SELECT factor_id FROM psy_factor WHERE scale_id = @scale_id_sai AND factor_code = 'ENVIRONMENTAL');
|
||
SET @item_id_1 = (SELECT item_id FROM psy_scale_item WHERE scale_id = @scale_id_sai AND item_number = 1);
|
||
SET @item_id_2 = (SELECT item_id FROM psy_scale_item WHERE scale_id = @scale_id_sai AND item_number = 2);
|
||
|
||
INSERT INTO `psy_factor_rule` (`factor_id`, `item_id`, `weight`, `calculation_type`, `create_by`, `create_time`)
|
||
VALUES
|
||
(@factor_id_env, @item_id_1, 1.00, 'sum', 'admin', NOW()),
|
||
(@factor_id_env, @item_id_2, 1.00, 'sum', 'admin', NOW());
|
||
|
||
-- ----------------------------
|
||
-- 插入结果解释标准(示例)
|
||
-- ----------------------------
|
||
INSERT INTO `psy_result_interpretation` (`scale_id`, `factor_id`, `score_range_min`, `score_range_max`, `level`, `level_name`, `interpretation_title`, `interpretation_content`, `suggestions`, `sort_order`, `create_by`, `create_time`)
|
||
VALUES
|
||
(@scale_id_sai, @factor_id_env, 8.00, 10.00, 'high', '适应良好', '环境适应良好',
|
||
'您的环境适应能力较好,能够较快适应新的社会环境。',
|
||
'继续保持良好的适应状态,多参与集体活动,提升适应能力。', 1, 'admin', NOW()),
|
||
(@scale_id_sai, @factor_id_env, 4.00, 7.00, 'medium', '适应一般', '环境适应一般',
|
||
'您的环境适应能力一般,在适应新环境时可能需要较长时间。',
|
||
'建议主动参与环境适应训练,多与他人交流,逐步改善。', 2, 'admin', NOW()),
|
||
(@scale_id_sai, @factor_id_env, 2.00, 3.00, 'low', '适应较差', '环境适应较差',
|
||
'您的环境适应能力较差,可能需要更多的支持和帮助。',
|
||
'建议寻求专业心理帮助,参加环境适应辅导,改善适应状况。', 3, 'admin', NOW());
|
||
|
||
-- ========================================
|
||
-- 第二部分:经典心理量表(示例)
|
||
-- ========================================
|
||
|
||
-- ----------------------------
|
||
-- SCL-90 心理健康临床症状自评量表
|
||
-- ----------------------------
|
||
INSERT INTO `psy_scale` (`scale_code`, `scale_name`, `scale_en_name`, `scale_type`, `scale_version`, `scale_intro`, `scale_description`, `item_count`, `estimated_time`, `target_population`, `author`, `source`, `status`, `sort_order`, `create_by`, `create_time`, `remark`)
|
||
VALUES
|
||
('SCL_90', '心理健康临床症状自评量表', 'Symptom Checklist 90', 'emotion', '1.0',
|
||
'SCL-90是世界上最著名的心理健康测试量表之一,可用于检查心理健康水平。',
|
||
'该量表包含90个题目,从9个维度评估心理健康状况:躯体化、强迫症状、人际关系敏感、抑郁、焦虑、敌对、恐怖、偏执、精神病性。适用于一般人群心理健康筛查。',
|
||
90, 30, '一般人群', 'L.R.Derogatis', '心理学量表专业机构', '0', 10, 'admin', NOW(), '国际通用心理健康量表');
|
||
|
||
-- ----------------------------
|
||
-- SAS 焦虑自评量表
|
||
-- ----------------------------
|
||
INSERT INTO `psy_scale` (`scale_code`, `scale_name`, `scale_en_name`, `scale_type`, `scale_version`, `scale_intro`, `scale_description`, `item_count`, `estimated_time`, `target_population`, `author`, `source`, `status`, `sort_order`, `create_by`, `create_time`, `remark`)
|
||
VALUES
|
||
('SAS', '焦虑自评量表', 'Self-Rating Anxiety Scale', 'emotion', '1.0',
|
||
'用于评定焦虑情绪的主观感受。',
|
||
'该量表包含20个题目,采用4级评分,用于评估个体的焦虑程度。标准分≥50分为焦虑,分数越高焦虑程度越重。',
|
||
20, 10, '一般人群', 'Zung', '心理学量表专业机构', '0', 11, 'admin', NOW(), '国际通用焦虑量表');
|
||
|
||
-- ----------------------------
|
||
-- SDS 抑郁自评量表
|
||
-- ----------------------------
|
||
INSERT INTO `psy_scale` (`scale_code`, `scale_name`, `scale_en_name`, `scale_type`, `scale_version`, `scale_intro`, `scale_description`, `item_count`, `estimated_time`, `target_population`, `author`, `source`, `status`, `sort_order`, `create_by`, `create_time`, `remark`)
|
||
VALUES
|
||
('SDS', '抑郁自评量表', 'Self-Rating Depression Scale', 'emotion', '1.0',
|
||
'用于评定抑郁情绪的主观感受。',
|
||
'该量表包含20个题目,采用4级评分,用于评估个体的抑郁程度。标准分≥53分为抑郁,分数越高抑郁程度越重。',
|
||
20, 10, '一般人群', 'Zung', '心理学量表专业机构', '0', 12, 'admin', NOW(), '国际通用抑郁量表');
|
||
|
||
-- ========================================
|
||
-- 第三部分:其他必填量表(暂时只创建量表基本信息)
|
||
-- ========================================
|
||
|
||
-- COPA-PI 罪犯个性分测验
|
||
INSERT INTO `psy_scale` (`scale_code`, `scale_name`, `scale_en_name`, `scale_type`, `scale_version`, `item_count`, `estimated_time`, `target_population`, `status`, `sort_order`, `create_by`, `create_time`)
|
||
VALUES ('COPA_PI', '罪犯个性分测验', 'Criminal Personality Inventory', 'personality', '1.0', 300, 40, '服刑人员', '0', 2, 'admin', NOW());
|
||
|
||
-- COPA-TCMI 罪犯犯罪心理结构变化状况分测验
|
||
INSERT INTO `psy_scale` (`scale_code`, `scale_name`, `scale_en_name`, `scale_type`, `scale_version`, `item_count`, `estimated_time`, `target_population`, `status`, `sort_order`, `create_by`, `create_time`)
|
||
VALUES ('COPA_TCMI', '罪犯犯罪心理结构变化状况分测验', 'Criminal Mind Structure Change', 'behavior', '1.0', 200, 30, '服刑人员', '0', 3, 'admin', NOW());
|
||
|
||
-- COPA-SCMI 罪犯心理结构状况分测验
|
||
INSERT INTO `psy_scale` (`scale_code`, `scale_name`, `scale_en_name`, `scale_type`, `scale_version`, `item_count`, `estimated_time`, `target_population`, `status`, `sort_order`, `create_by`, `create_time`)
|
||
VALUES ('COPA_SCMI', '罪犯心理结构状况分测验', 'Criminal Psychology Structure', 'personality', '1.0', 250, 35, '服刑人员', '0', 4, 'admin', NOW());
|
||
|
||
-- COPA-MPI 罪犯刑罚心理状况分测验
|
||
INSERT INTO `psy_scale` (`scale_code`, `scale_name`, `scale_en_name`, `scale_type`, `scale_version`, `item_count`, `estimated_time`, `target_population`, `status`, `sort_order`, `create_by`, `create_time`)
|
||
VALUES ('COPA_MPI', '罪犯刑罚心理状况分测验', 'Criminal Penalty Psychology', 'emotion', '1.0', 180, 25, '服刑人员', '0', 5, 'admin', NOW());
|
||
|
||
-- 罪犯暴力倾向量表
|
||
INSERT INTO `psy_scale` (`scale_code`, `scale_name`, `scale_en_name`, `scale_type`, `scale_version`, `item_count`, `estimated_time`, `target_population`, `status`, `sort_order`, `create_by`, `create_time`)
|
||
VALUES ('VIOLENT_TENDENCY', '罪犯暴力倾向量表', 'Violent Tendency Scale', 'behavior', '1.0', 50, 15, '服刑人员', '0', 6, 'admin', NOW());
|
||
|
||
-- 罪犯自杀倾向量表
|
||
INSERT INTO `psy_scale` (`scale_code`, `scale_name`, `scale_en_name`, `scale_type`, `scale_version`, `item_count`, `estimated_time`, `target_population`, `status`, `sort_order`, `create_by`, `create_time`)
|
||
VALUES ('SUICIDE_TENDENCY', '罪犯自杀倾向量表', 'Suicide Tendency Scale', 'emotion', '1.0', 40, 15, '服刑人员', '0', 7, 'admin', NOW());
|
||
|
||
-- MMPI 明尼苏达多相个性测查表
|
||
INSERT INTO `psy_scale` (`scale_code`, `scale_name`, `scale_en_name`, `scale_type`, `scale_version`, `item_count`, `estimated_time`, `target_population`, `status`, `sort_order`, `create_by`, `create_time`)
|
||
VALUES ('MMPI', '明尼苏达多相个性测查表', 'Minnesota Multiphasic Personality Inventory', 'personality', '1.0', 566, 60, '一般人群', '0', 8, 'admin', NOW());
|
||
|
||
-- 16PF 卡特尔十六种人格因素测验
|
||
INSERT INTO `psy_scale` (`scale_code`, `scale_name`, `scale_en_name`, `scale_type`, `scale_version`, `item_count`, `estimated_time`, `target_population`, `status`, `sort_order`, `create_by`, `create_time`)
|
||
VALUES ('16PF', '卡特尔十六种人格因素测验', '16 Personality Factors', 'personality', '1.0', 187, 45, '一般人群', '0', 9, 'admin', NOW());
|
||
|
||
|
||
SET FOREIGN_KEY_CHECKS = 1;
|
||
-- ========================================
|
||
-- 心理网站管理菜单配置
|
||
-- ========================================
|
||
|
||
-- 心理网站管理目录(如果还没有的话)
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
VALUES ('心理网站管理', 0, 5, 'psychology-website', NULL, 1, 0, 'M', '0', '0', '', 'guide', 'admin', NOW(), '心理网站管理目录');
|
||
|
||
-- 网站内容管理菜单
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '网站内容管理', menu_id, 1, 'content', 'psychology/website/content/index', 1, 0, 'C', '0', '0', 'psychology:website:content:list', 'documentation', 'admin', NOW(), '心理网站内容管理菜单'
|
||
FROM sys_menu WHERE menu_name = '心理网站管理' AND parent_id = 0 LIMIT 1;
|
||
|
||
-- 网站栏目管理菜单
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '网站栏目管理', menu_id, 2, 'category', 'psychology/website/category/index', 1, 0, 'C', '0', '0', 'psychology:website:category:list', 'tree', 'admin', NOW(), '心理网站栏目管理菜单'
|
||
FROM sys_menu WHERE menu_name = '心理网站管理' AND parent_id = 0 LIMIT 1;
|
||
|
||
-- 网站评论管理菜单
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '网站评论管理', menu_id, 3, 'comment', 'psychology/website/comment/index', 1, 0, 'C', '0', '0', 'psychology:website:comment:list', 'message', 'admin', NOW(), '心理网站评论管理菜单'
|
||
FROM sys_menu WHERE menu_name = '心理网站管理' AND parent_id = 0 LIMIT 1;
|
||
|
||
-- 网站内容管理按钮权限
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '内容查询', menu_id, 1, '', '', 1, 0, 'F', '0', '0', 'psychology:website:content:query', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '网站内容管理' LIMIT 1;
|
||
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '内容新增', menu_id, 2, '', '', 1, 0, 'F', '0', '0', 'psychology:website:content:add', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '网站内容管理' LIMIT 1;
|
||
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '内容修改', menu_id, 3, '', '', 1, 0, 'F', '0', '0', 'psychology:website:content:edit', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '网站内容管理' LIMIT 1;
|
||
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '内容删除', menu_id, 4, '', '', 1, 0, 'F', '0', '0', 'psychology:website:content:remove', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '网站内容管理' LIMIT 1;
|
||
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '内容导出', menu_id, 5, '', '', 1, 0, 'F', '0', '0', 'psychology:website:content:export', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '网站内容管理' LIMIT 1;
|
||
|
||
-- 为管理员角色分配权限(假设管理员角色ID为1)
|
||
INSERT IGNORE INTO `sys_role_menu` (`role_id`, `menu_id`)
|
||
SELECT 1, menu_id FROM sys_menu WHERE (menu_name LIKE '%网站%' OR menu_name LIKE '%心理网站%') AND menu_name != '心理网站管理';
|
||
|
||
|
||
-- ========================================
|
||
-- 绗簩閮ㄥ垎锛氳彍鍗曢厤缃甡n-- ========================================
|
||
|
||
-- ========================================
|
||
-- 心理测评系统菜单完整配置SQL
|
||
-- ========================================
|
||
USE ry_news;
|
||
SET NAMES utf8mb4;
|
||
|
||
-- ========================================
|
||
-- 1. 心理测评管理目录
|
||
-- ========================================
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
VALUES ('心理测评管理', 0, 10, 'psychology', NULL, 1, 0, 'M', '0', '0', '', 'chart', 'admin', NOW(), '心理测评管理目录');
|
||
|
||
-- ========================================
|
||
-- 2. 量表管理
|
||
-- ========================================
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '量表管理', menu_id, 1, 'scale', 'psychology/scale/index', 1, 0, 'C', '0', '0', 'psychology:scale:list', 'table', 'admin', NOW(), '量表管理菜单'
|
||
FROM sys_menu WHERE menu_name = '心理测评管理' AND parent_id = 0 LIMIT 1;
|
||
|
||
-- 量表管理按钮权限
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '量表查询', menu_id, 1, '', '', 1, 0, 'F', '0', '0', 'psychology:scale:query', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '量表管理' LIMIT 1;
|
||
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '量表新增', menu_id, 2, '', '', 1, 0, 'F', '0', '0', 'psychology:scale:add', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '量表管理' LIMIT 1;
|
||
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '量表修改', menu_id, 3, '', '', 1, 0, 'F', '0', '0', 'psychology:scale:edit', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '量表管理' LIMIT 1;
|
||
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '量表删除', menu_id, 4, '', '', 1, 0, 'F', '0', '0', 'psychology:scale:remove', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '量表管理' LIMIT 1;
|
||
|
||
-- ========================================
|
||
-- 3. 题目管理(隐藏菜单,通过量表管理页面进入)
|
||
-- ========================================
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '题目管理', menu_id, 2, 'scale/item', 'psychology/scale/item', 1, 0, 'C', '1', '0', 'psychology:scale:item', 'form', 'admin', NOW(), '题目管理菜单(隐藏)'
|
||
FROM sys_menu WHERE menu_name = '心理测评管理' AND parent_id = 0 LIMIT 1;
|
||
|
||
-- 题目管理按钮权限
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '题目查询', menu_id, 1, '', '', 1, 0, 'F', '1', '0', 'psychology:scale:item:query', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '题目管理' LIMIT 1;
|
||
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '题目新增', menu_id, 2, '', '', 1, 0, 'F', '1', '0', 'psychology:scale:item:add', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '题目管理' LIMIT 1;
|
||
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '题目修改', menu_id, 3, '', '', 1, 0, 'F', '1', '0', 'psychology:scale:item:edit', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '题目管理' LIMIT 1;
|
||
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '题目删除', menu_id, 4, '', '', 1, 0, 'F', '1', '0', 'psychology:scale:item:remove', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '题目管理' LIMIT 1;
|
||
|
||
-- ========================================
|
||
-- 4. 因子管理(隐藏菜单,通过量表管理页面进入)
|
||
-- ========================================
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '因子管理', menu_id, 3, 'scale/factor', 'psychology/scale/factor', 1, 0, 'C', '1', '0', 'psychology:scale:factor', 'list', 'admin', NOW(), '因子管理菜单(隐藏)'
|
||
FROM sys_menu WHERE menu_name = '心理测评管理' AND parent_id = 0 LIMIT 1;
|
||
|
||
-- 因子管理按钮权限
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '因子查询', menu_id, 1, '', '', 1, 0, 'F', '1', '0', 'psychology:scale:factor:query', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '因子管理' LIMIT 1;
|
||
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '因子新增', menu_id, 2, '', '', 1, 0, 'F', '1', '0', 'psychology:scale:factor:add', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '因子管理' LIMIT 1;
|
||
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '因子修改', menu_id, 3, '', '', 1, 0, 'F', '1', '0', 'psychology:scale:factor:edit', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '因子管理' LIMIT 1;
|
||
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '因子删除', menu_id, 4, '', '', 1, 0, 'F', '1', '0', 'psychology:scale:factor:remove', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '因子管理' LIMIT 1;
|
||
|
||
-- ========================================
|
||
-- 5. 测评管理
|
||
-- ========================================
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '测评管理', menu_id, 4, 'assessment', 'psychology/assessment/index', 1, 0, 'C', '0', '0', 'psychology:assessment:list', 'edit', 'admin', NOW(), '测评管理菜单'
|
||
FROM sys_menu WHERE menu_name = '心理测评管理' AND parent_id = 0 LIMIT 1;
|
||
|
||
-- 测评管理按钮权限
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '测评查询', menu_id, 1, '', '', 1, 0, 'F', '0', '0', 'psychology:assessment:query', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '测评管理' LIMIT 1;
|
||
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '开始测评', menu_id, 2, '', '', 1, 0, 'F', '0', '0', 'psychology:assessment:start', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '测评管理' LIMIT 1;
|
||
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '删除测评', menu_id, 3, '', '', 1, 0, 'F', '0', '0', 'psychology:assessment:remove', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '测评管理' LIMIT 1;
|
||
|
||
-- ========================================
|
||
-- 6. 报告管理
|
||
-- ========================================
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '报告管理', menu_id, 5, 'report', 'psychology/report/index', 1, 0, 'C', '0', '0', 'psychology:report:list', 'document', 'admin', NOW(), '报告管理菜单'
|
||
FROM sys_menu WHERE menu_name = '心理测评管理' AND parent_id = 0 LIMIT 1;
|
||
|
||
-- 报告管理按钮权限
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '报告查询', menu_id, 1, '', '', 1, 0, 'F', '0', '0', 'psychology:report:query', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '报告管理' LIMIT 1;
|
||
|
||
-- ========================================
|
||
-- 7. 解释配置
|
||
-- ========================================
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '解释配置', menu_id, 6, 'interpretation', 'psychology/interpretation/index', 1, 0, 'C', '0', '0', 'psychology:interpretation:list', 'config', 'admin', NOW(), '解释配置菜单'
|
||
FROM sys_menu WHERE menu_name = '心理测评管理' AND parent_id = 0 LIMIT 1;
|
||
|
||
-- 解释配置按钮权限
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '解释查询', menu_id, 1, '', '', 1, 0, 'F', '0', '0', 'psychology:interpretation:query', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '解释配置' LIMIT 1;
|
||
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '解释新增', menu_id, 2, '', '', 1, 0, 'F', '0', '0', 'psychology:interpretation:add', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '解释配置' LIMIT 1;
|
||
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '解释修改', menu_id, 3, '', '', 1, 0, 'F', '0', '0', 'psychology:interpretation:edit', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '解释配置' LIMIT 1;
|
||
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '解释删除', menu_id, 4, '', '', 1, 0, 'F', '0', '0', 'psychology:interpretation:remove', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '解释配置' LIMIT 1;
|
||
|
||
-- ========================================
|
||
-- 8. 用户档案管理
|
||
-- ========================================
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '用户档案', menu_id, 7, 'profile', 'psychology/profile/index', 1, 0, 'C', '0', '0', 'psychology:profile:list', 'user', 'admin', NOW(), '用户档案菜单'
|
||
FROM sys_menu WHERE menu_name = '心理测评管理' AND parent_id = 0 LIMIT 1;
|
||
|
||
-- 用户档案管理按钮权限
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '档案查询', menu_id, 1, '', '', 1, 0, 'F', '0', '0', 'psychology:profile:query', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '用户档案' LIMIT 1;
|
||
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '档案新增', menu_id, 2, '', '', 1, 0, 'F', '0', '0', 'psychology:profile:add', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '用户档案' LIMIT 1;
|
||
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '档案修改', menu_id, 3, '', '', 1, 0, 'F', '0', '0', 'psychology:profile:edit', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '用户档案' LIMIT 1;
|
||
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '档案删除', menu_id, 4, '', '', 1, 0, 'F', '0', '0', 'psychology:profile:remove', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '用户档案' LIMIT 1;
|
||
|
||
-- ========================================
|
||
-- 9. 自定义问卷管理
|
||
-- ========================================
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '问卷管理', menu_id, 8, 'questionnaire', 'psychology/questionnaire/index', 1, 0, 'C', '0', '0', 'psychology:questionnaire:list', 'copy', 'admin', NOW(), '问卷管理菜单'
|
||
FROM sys_menu WHERE menu_name = '心理测评管理' AND parent_id = 0 LIMIT 1;
|
||
|
||
-- 问卷管理按钮权限
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '问卷查询', menu_id, 1, '', '', 1, 0, 'F', '0', '0', 'psychology:questionnaire:query', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '问卷管理' LIMIT 1;
|
||
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '问卷新增', menu_id, 2, '', '', 1, 0, 'F', '0', '0', 'psychology:questionnaire:add', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '问卷管理' LIMIT 1;
|
||
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '问卷修改', menu_id, 3, '', '', 1, 0, 'F', '0', '0', 'psychology:questionnaire:edit', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '问卷管理' LIMIT 1;
|
||
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '问卷删除', menu_id, 4, '', '', 1, 0, 'F', '0', '0', 'psychology:questionnaire:remove', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '问卷管理' LIMIT 1;
|
||
|
||
-- ========================================
|
||
-- 10. 危机预警管理
|
||
-- ========================================
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '危机预警管理', menu_id, 9, 'warning', 'psychology/warning/index', 1, 0, 'C', '0', '0', 'psychology:warning:list', 'message', 'admin', NOW(), '危机预警管理菜单'
|
||
FROM sys_menu WHERE menu_name = '心理测评管理' AND parent_id = 0 LIMIT 1;
|
||
|
||
-- 危机预警管理按钮权限
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '预警查询', menu_id, 1, '', '', 1, 0, 'F', '0', '0', 'psychology:warning:query', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '危机预警管理' LIMIT 1;
|
||
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '预警处理', menu_id, 2, '', '', 1, 0, 'F', '0', '0', 'psychology:warning:handle', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '危机预警管理' LIMIT 1;
|
||
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '预警解除', menu_id, 3, '', '', 1, 0, 'F', '0', '0', 'psychology:warning:relieve', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '危机预警管理' LIMIT 1;
|
||
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '预警删除', menu_id, 4, '', '', 1, 0, 'F', '0', '0', 'psychology:warning:remove', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '危机预警管理' LIMIT 1;
|
||
|
||
-- ========================================
|
||
-- 11. 预警规则配置
|
||
-- ========================================
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '预警规则配置', menu_id, 10, 'warning/rule', 'psychology/warning/rule', 1, 0, 'C', '0', '0', 'psychology:warningRule:list', 'list', 'admin', NOW(), '预警规则配置菜单'
|
||
FROM sys_menu WHERE menu_name = '心理测评管理' AND parent_id = 0 LIMIT 1;
|
||
|
||
-- 预警规则配置按钮权限
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '规则查询', menu_id, 1, '', '', 1, 0, 'F', '0', '0', 'psychology:warningRule:query', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '预警规则配置' LIMIT 1;
|
||
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '规则新增', menu_id, 2, '', '', 1, 0, 'F', '0', '0', 'psychology:warningRule:add', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '预警规则配置' LIMIT 1;
|
||
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '规则修改', menu_id, 3, '', '', 1, 0, 'F', '0', '0', 'psychology:warningRule:edit', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '预警规则配置' LIMIT 1;
|
||
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '规则删除', menu_id, 4, '', '', 1, 0, 'F', '0', '0', 'psychology:warningRule:remove', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '预警规则配置' LIMIT 1;
|
||
|
||
-- ========================================
|
||
-- 12. 为管理员角色分配权限
|
||
-- ========================================
|
||
INSERT IGNORE INTO `sys_role_menu` (`role_id`, `menu_id`)
|
||
SELECT 1, menu_id FROM sys_menu WHERE (menu_name LIKE '%心理测评%' OR menu_name LIKE '%量表%' OR menu_name LIKE '%题目%' OR menu_name LIKE '%因子%' OR menu_name LIKE '%测评%' OR menu_name LIKE '%报告%' OR menu_name LIKE '%解释%' OR menu_name LIKE '%档案%' OR menu_name LIKE '%问卷%' OR menu_name LIKE '%预警%' OR menu_name LIKE '%预警规则%') AND menu_name != '心理测评管理';
|
||
|
||
-- ========================================
|
||
-- 验证配置
|
||
-- ========================================
|
||
SELECT '心理测评系统菜单配置完成!' AS result;
|
||
SELECT COUNT(*) AS menu_count FROM sys_menu WHERE menu_name LIKE '%心理测评%' OR menu_name LIKE '%量表%' OR menu_name LIKE '%题目%' OR menu_name LIKE '%因子%' OR menu_name LIKE '%测评%' OR menu_name LIKE '%报告%' OR menu_name LIKE '%解释%' OR menu_name LIKE '%档案%' OR menu_name LIKE '%问卷%' OR menu_name LIKE '%预警%' OR menu_name LIKE '%预警规则%';
|
||
|
||
|
||
-- ========================================
|
||
-- 绗笁閮ㄥ垎锛氬垵濮嬪寲鏁版嵁锛堥噺琛ㄩ鐩拰閫夐」锛塦n-- ========================================
|
||
|
||
|
||
|
||
-- ========================================
|
||
-- 鑿滃崟閰嶇疆锛堜粠 psy_menu_complete_config.sql 鏁村悎锛塦n-- ========================================
|
||
USE ry_news;
|
||
SET NAMES utf8mb4;
|
||
|
||
-- ========================================
|
||
-- 心理测评系统菜单完整配置SQL
|
||
-- ========================================
|
||
USE ry_news;
|
||
SET NAMES utf8mb4;
|
||
|
||
-- ========================================
|
||
-- 1. 心理测评管理目录
|
||
-- ========================================
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
VALUES ('心理测评管理', 0, 10, 'psychology', NULL, 1, 0, 'M', '0', '0', '', 'chart', 'admin', NOW(), '心理测评管理目录');
|
||
|
||
-- ========================================
|
||
-- 2. 量表管理
|
||
-- ========================================
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '量表管理', menu_id, 1, 'scale', 'psychology/scale/index', 1, 0, 'C', '0', '0', 'psychology:scale:list', 'table', 'admin', NOW(), '量表管理菜单'
|
||
FROM sys_menu WHERE menu_name = '心理测评管理' AND parent_id = 0 LIMIT 1;
|
||
|
||
-- 量表管理按钮权限
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '量表查询', menu_id, 1, '', '', 1, 0, 'F', '0', '0', 'psychology:scale:query', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '量表管理' LIMIT 1;
|
||
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '量表新增', menu_id, 2, '', '', 1, 0, 'F', '0', '0', 'psychology:scale:add', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '量表管理' LIMIT 1;
|
||
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '量表修改', menu_id, 3, '', '', 1, 0, 'F', '0', '0', 'psychology:scale:edit', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '量表管理' LIMIT 1;
|
||
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '量表删除', menu_id, 4, '', '', 1, 0, 'F', '0', '0', 'psychology:scale:remove', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '量表管理' LIMIT 1;
|
||
|
||
-- ========================================
|
||
-- 3. 题目管理(隐藏菜单,通过量表管理页面进入)
|
||
-- ========================================
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '题目管理', menu_id, 2, 'scale/item', 'psychology/scale/item', 1, 0, 'C', '1', '0', 'psychology:scale:item', 'form', 'admin', NOW(), '题目管理菜单(隐藏)'
|
||
FROM sys_menu WHERE menu_name = '心理测评管理' AND parent_id = 0 LIMIT 1;
|
||
|
||
-- 题目管理按钮权限
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '题目查询', menu_id, 1, '', '', 1, 0, 'F', '1', '0', 'psychology:scale:item:query', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '题目管理' LIMIT 1;
|
||
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '题目新增', menu_id, 2, '', '', 1, 0, 'F', '1', '0', 'psychology:scale:item:add', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '题目管理' LIMIT 1;
|
||
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '题目修改', menu_id, 3, '', '', 1, 0, 'F', '1', '0', 'psychology:scale:item:edit', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '题目管理' LIMIT 1;
|
||
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '题目删除', menu_id, 4, '', '', 1, 0, 'F', '1', '0', 'psychology:scale:item:remove', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '题目管理' LIMIT 1;
|
||
|
||
-- ========================================
|
||
-- 4. 因子管理(隐藏菜单,通过量表管理页面进入)
|
||
-- ========================================
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '因子管理', menu_id, 3, 'scale/factor', 'psychology/scale/factor', 1, 0, 'C', '1', '0', 'psychology:scale:factor', 'list', 'admin', NOW(), '因子管理菜单(隐藏)'
|
||
FROM sys_menu WHERE menu_name = '心理测评管理' AND parent_id = 0 LIMIT 1;
|
||
|
||
-- 因子管理按钮权限
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '因子查询', menu_id, 1, '', '', 1, 0, 'F', '1', '0', 'psychology:scale:factor:query', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '因子管理' LIMIT 1;
|
||
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '因子新增', menu_id, 2, '', '', 1, 0, 'F', '1', '0', 'psychology:scale:factor:add', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '因子管理' LIMIT 1;
|
||
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '因子修改', menu_id, 3, '', '', 1, 0, 'F', '1', '0', 'psychology:scale:factor:edit', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '因子管理' LIMIT 1;
|
||
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '因子删除', menu_id, 4, '', '', 1, 0, 'F', '1', '0', 'psychology:scale:factor:remove', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '因子管理' LIMIT 1;
|
||
|
||
-- ========================================
|
||
-- 5. 测评管理
|
||
-- ========================================
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '测评管理', menu_id, 4, 'assessment', 'psychology/assessment/index', 1, 0, 'C', '0', '0', 'psychology:assessment:list', 'edit', 'admin', NOW(), '测评管理菜单'
|
||
FROM sys_menu WHERE menu_name = '心理测评管理' AND parent_id = 0 LIMIT 1;
|
||
|
||
-- 测评管理按钮权限
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '测评查询', menu_id, 1, '', '', 1, 0, 'F', '0', '0', 'psychology:assessment:query', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '测评管理' LIMIT 1;
|
||
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '开始测评', menu_id, 2, '', '', 1, 0, 'F', '0', '0', 'psychology:assessment:start', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '测评管理' LIMIT 1;
|
||
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '删除测评', menu_id, 3, '', '', 1, 0, 'F', '0', '0', 'psychology:assessment:remove', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '测评管理' LIMIT 1;
|
||
|
||
-- ========================================
|
||
-- 6. 报告管理
|
||
-- ========================================
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '报告管理', menu_id, 5, 'report', 'psychology/report/index', 1, 0, 'C', '0', '0', 'psychology:report:list', 'document', 'admin', NOW(), '报告管理菜单'
|
||
FROM sys_menu WHERE menu_name = '心理测评管理' AND parent_id = 0 LIMIT 1;
|
||
|
||
-- 报告管理按钮权限
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '报告查询', menu_id, 1, '', '', 1, 0, 'F', '0', '0', 'psychology:report:query', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '报告管理' LIMIT 1;
|
||
|
||
-- ========================================
|
||
-- 7. 解释配置
|
||
-- ========================================
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '解释配置', menu_id, 6, 'interpretation', 'psychology/interpretation/index', 1, 0, 'C', '0', '0', 'psychology:interpretation:list', 'config', 'admin', NOW(), '解释配置菜单'
|
||
FROM sys_menu WHERE menu_name = '心理测评管理' AND parent_id = 0 LIMIT 1;
|
||
|
||
-- 解释配置按钮权限
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '解释查询', menu_id, 1, '', '', 1, 0, 'F', '0', '0', 'psychology:interpretation:query', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '解释配置' LIMIT 1;
|
||
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '解释新增', menu_id, 2, '', '', 1, 0, 'F', '0', '0', 'psychology:interpretation:add', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '解释配置' LIMIT 1;
|
||
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '解释修改', menu_id, 3, '', '', 1, 0, 'F', '0', '0', 'psychology:interpretation:edit', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '解释配置' LIMIT 1;
|
||
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '解释删除', menu_id, 4, '', '', 1, 0, 'F', '0', '0', 'psychology:interpretation:remove', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '解释配置' LIMIT 1;
|
||
|
||
-- ========================================
|
||
-- 8. 用户档案管理
|
||
-- ========================================
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '用户档案', menu_id, 7, 'profile', 'psychology/profile/index', 1, 0, 'C', '0', '0', 'psychology:profile:list', 'user', 'admin', NOW(), '用户档案菜单'
|
||
FROM sys_menu WHERE menu_name = '心理测评管理' AND parent_id = 0 LIMIT 1;
|
||
|
||
-- 用户档案管理按钮权限
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '档案查询', menu_id, 1, '', '', 1, 0, 'F', '0', '0', 'psychology:profile:query', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '用户档案' LIMIT 1;
|
||
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '档案新增', menu_id, 2, '', '', 1, 0, 'F', '0', '0', 'psychology:profile:add', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '用户档案' LIMIT 1;
|
||
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '档案修改', menu_id, 3, '', '', 1, 0, 'F', '0', '0', 'psychology:profile:edit', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '用户档案' LIMIT 1;
|
||
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '档案删除', menu_id, 4, '', '', 1, 0, 'F', '0', '0', 'psychology:profile:remove', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '用户档案' LIMIT 1;
|
||
|
||
-- ========================================
|
||
-- 9. 自定义问卷管理
|
||
-- ========================================
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '问卷管理', menu_id, 8, 'questionnaire', 'psychology/questionnaire/index', 1, 0, 'C', '0', '0', 'psychology:questionnaire:list', 'copy', 'admin', NOW(), '问卷管理菜单'
|
||
FROM sys_menu WHERE menu_name = '心理测评管理' AND parent_id = 0 LIMIT 1;
|
||
|
||
-- 问卷管理按钮权限
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '问卷查询', menu_id, 1, '', '', 1, 0, 'F', '0', '0', 'psychology:questionnaire:query', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '问卷管理' LIMIT 1;
|
||
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '问卷新增', menu_id, 2, '', '', 1, 0, 'F', '0', '0', 'psychology:questionnaire:add', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '问卷管理' LIMIT 1;
|
||
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '问卷修改', menu_id, 3, '', '', 1, 0, 'F', '0', '0', 'psychology:questionnaire:edit', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '问卷管理' LIMIT 1;
|
||
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '问卷删除', menu_id, 4, '', '', 1, 0, 'F', '0', '0', 'psychology:questionnaire:remove', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '问卷管理' LIMIT 1;
|
||
|
||
-- ========================================
|
||
-- 10. 危机预警管理
|
||
-- ========================================
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '危机预警管理', menu_id, 9, 'warning', 'psychology/warning/index', 1, 0, 'C', '0', '0', 'psychology:warning:list', 'message', 'admin', NOW(), '危机预警管理菜单'
|
||
FROM sys_menu WHERE menu_name = '心理测评管理' AND parent_id = 0 LIMIT 1;
|
||
|
||
-- 危机预警管理按钮权限
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '预警查询', menu_id, 1, '', '', 1, 0, 'F', '0', '0', 'psychology:warning:query', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '危机预警管理' LIMIT 1;
|
||
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '预警处理', menu_id, 2, '', '', 1, 0, 'F', '0', '0', 'psychology:warning:handle', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '危机预警管理' LIMIT 1;
|
||
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '预警解除', menu_id, 3, '', '', 1, 0, 'F', '0', '0', 'psychology:warning:relieve', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '危机预警管理' LIMIT 1;
|
||
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '预警删除', menu_id, 4, '', '', 1, 0, 'F', '0', '0', 'psychology:warning:remove', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '危机预警管理' LIMIT 1;
|
||
|
||
-- ========================================
|
||
-- 11. 预警规则配置
|
||
-- ========================================
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '预警规则配置', menu_id, 10, 'warning/rule', 'psychology/warning/rule', 1, 0, 'C', '0', '0', 'psychology:warningRule:list', 'list', 'admin', NOW(), '预警规则配置菜单'
|
||
FROM sys_menu WHERE menu_name = '心理测评管理' AND parent_id = 0 LIMIT 1;
|
||
|
||
-- 预警规则配置按钮权限
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '规则查询', menu_id, 1, '', '', 1, 0, 'F', '0', '0', 'psychology:warningRule:query', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '预警规则配置' LIMIT 1;
|
||
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '规则新增', menu_id, 2, '', '', 1, 0, 'F', '0', '0', 'psychology:warningRule:add', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '预警规则配置' LIMIT 1;
|
||
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '规则修改', menu_id, 3, '', '', 1, 0, 'F', '0', '0', 'psychology:warningRule:edit', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '预警规则配置' LIMIT 1;
|
||
|
||
INSERT IGNORE INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `remark`)
|
||
SELECT '规则删除', menu_id, 4, '', '', 1, 0, 'F', '0', '0', 'psychology:warningRule:remove', '#', 'admin', NOW(), ''
|
||
FROM sys_menu WHERE menu_name = '预警规则配置' LIMIT 1;
|
||
|
||
-- ========================================
|
||
-- 12. 为管理员角色分配权限
|
||
-- ========================================
|
||
INSERT IGNORE INTO `sys_role_menu` (`role_id`, `menu_id`)
|
||
SELECT 1, menu_id FROM sys_menu WHERE (menu_name LIKE '%心理测评%' OR menu_name LIKE '%量表%' OR menu_name LIKE '%题目%' OR menu_name LIKE '%因子%' OR menu_name LIKE '%测评%' OR menu_name LIKE '%报告%' OR menu_name LIKE '%解释%' OR menu_name LIKE '%档案%' OR menu_name LIKE '%问卷%' OR menu_name LIKE '%预警%' OR menu_name LIKE '%预警规则%') AND menu_name != '心理测评管理';
|
||
|
||
-- ========================================
|
||
-- 验证配置
|
||
-- ========================================
|
||
SELECT '心理测评系统菜单配置完成!' AS result;
|
||
SELECT COUNT(*) AS menu_count FROM sys_menu WHERE menu_name LIKE '%心理测评%' OR menu_name LIKE '%量表%' OR menu_name LIKE '%题目%' OR menu_name LIKE '%因子%' OR menu_name LIKE '%测评%' OR menu_name LIKE '%报告%' OR menu_name LIKE '%解释%' OR menu_name LIKE '%档案%' OR menu_name LIKE '%问卷%' OR menu_name LIKE '%预警%' OR menu_name LIKE '%预警规则%';
|