wuzhen update

This commit is contained in:
wuzhen committed 2025-08-10 00:24:31 +08:00
1 parent bab7b53074
commit a2222f63cb
284 files changed
+48629 -3473

No files matched your search

@@ -0,0 +1,311 @@
-- ============================================================================
-- 贫困生认定申请管理 - 数据库表创建脚本
-- 创建时间: 2024-12-19
-- 描述: 创建贫困生认定申请相关的数据库表、菜单权限和测试数据
-- ============================================================================
-- ============================================================================
-- 1. 创建贫困生认定申请表
-- ============================================================================
CREATE TABLE IF NOT EXISTS `jcbt_poverty_application` (
`id` bigint(20) NOT NULL COMMENT '主键ID',
`application_no` varchar(50) DEFAULT NULL COMMENT '申请编号',
`academic_year` varchar(20) DEFAULT NULL COMMENT '学年',
`term` int(11) DEFAULT NULL COMMENT '学期',
`student_id` bigint(20) DEFAULT NULL COMMENT '学生ID',
`student_no` varchar(50) DEFAULT NULL COMMENT '学号',
`student_name` varchar(100) DEFAULT NULL COMMENT '学生姓名',
`gender` varchar(10) DEFAULT NULL COMMENT '性别',
`college_id` bigint(20) DEFAULT NULL COMMENT '学院ID',
`college_name` varchar(100) DEFAULT NULL COMMENT '学院名称',
`major_id` bigint(20) DEFAULT NULL COMMENT '专业ID',
`major_name` varchar(100) DEFAULT NULL COMMENT '专业名称',
`class_id` bigint(20) DEFAULT NULL COMMENT '班级ID',
`class_name` varchar(100) DEFAULT NULL COMMENT '班级名称',
`recognition_group` varchar(50) DEFAULT NULL COMMENT '认定群体(特殊群体/其他群体)',
`recognition_type_id` bigint(20) DEFAULT NULL COMMENT '认定类型ID',
`recognition_type_code` varchar(50) DEFAULT NULL COMMENT '认定类型编码',
`recognition_type_name` varchar(100) DEFAULT NULL COMMENT '认定类型名称',
`assistance_type_ids` varchar(500) DEFAULT NULL COMMENT '申请自助类型ID数组(多选)',
`assistance_type_names` varchar(500) DEFAULT NULL COMMENT '申请自助类型名称(多个用逗号分隔)',
`family_economy_summary` text COMMENT '家庭经济情况摘要',
`attach_application_form_url` varchar(500) DEFAULT NULL COMMENT '申请表附件URL',
`attach_application_form_id` bigint(20) DEFAULT NULL COMMENT '申请表附件ID',
`attach_survey_form_url` varchar(500) DEFAULT NULL COMMENT '调查表附件URL',
`attach_survey_form_id` bigint(20) DEFAULT NULL COMMENT '调查表附件ID',
`status` varchar(20) DEFAULT 'DRAFT' COMMENT '申请状态(DRAFT-草稿,SUBMITTED-已提交,REVIEWING-审核中,APPROVED-已通过,REJECTED-已拒绝,WITHDRAWN-已撤回)',
`submitter_id` bigint(20) DEFAULT NULL COMMENT '提交人ID',
`submitter_name` varchar(100) DEFAULT NULL COMMENT '提交人姓名',
`submit_time` datetime DEFAULT NULL COMMENT '提交时间',
`auditor_id` bigint(20) DEFAULT NULL COMMENT '审核人ID',
`auditor_name` varchar(100) DEFAULT NULL COMMENT '审核人姓名',
`audit_time` datetime DEFAULT NULL COMMENT '审核时间',
`audit_opinion` text COMMENT '审核意见',
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
`deleted` bigint(20) DEFAULT '0' COMMENT '逻辑删除标记(0-正常,非0-已删除)',
`tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号',
`create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
`update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
PRIMARY KEY (`id`),
KEY `idx_student_no` (`student_no`),
KEY `idx_status` (`status`),
KEY `idx_academic_year` (`academic_year`),
KEY `idx_college_id` (`college_id`),
KEY `idx_tenant_deleted` (`tenant_id`, `deleted`),
KEY `idx_create_time` (`create_time`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='贫困生认定申请表';
-- ============================================================================
-- 2. 插入菜单权限配置
-- ============================================================================
-- 2.1 插入主菜单(贫困生认定申请管理)
INSERT INTO sys_menu VALUES(
'1954043650013946881',
'贫困生认定申请管理',
'1851080776692494337',
'4',
'jcbt:poverty:application:list',
'poverty/Application/index',
'',
'',
'1',
'0',
'C',
'0',
'0',
'jcbt:poverty:application:list',
'education',
'103',
'1',
NOW(),
NULL,
NULL,
''
);
-- 2.2 插入按钮权限
-- 查询按钮
INSERT INTO sys_menu VALUES(
'1954043651013946881',
'贫困生认定申请查询',
'1954043650013946881',
'1',
'jcbt:poverty:application:query',
'',
'',
'',
'1',
'0',
'F',
'0',
'0',
'jcbt:poverty:application:query',
'#',
'103',
'1',
NOW(),
NULL,
NULL,
''
);
-- 新增按钮
INSERT INTO sys_menu VALUES(
'1954043652013946881',
'贫困生认定申请新增',
'1954043650013946881',
'2',
'jcbt:poverty:application:add',
'',
'',
'',
'1',
'0',
'F',
'0',
'0',
'jcbt:poverty:application:add',
'#',
'103',
'1',
NOW(),
NULL,
NULL,
''
);
-- 修改按钮
INSERT INTO sys_menu VALUES(
'1954043653013946881',
'贫困生认定申请修改',
'1954043650013946881',
'3',
'jcbt:poverty:application:edit',
'',
'',
'',
'1',
'0',
'F',
'0',
'0',
'jcbt:poverty:application:edit',
'#',
'103',
'1',
NOW(),
NULL,
NULL,
''
);
-- 删除按钮
INSERT INTO sys_menu VALUES(
'1954043654013946881',
'贫困生认定申请删除',
'1954043650013946881',
'4',
'jcbt:poverty:application:remove',
'',
'',
'',
'1',
'0',
'F',
'0',
'0',
'jcbt:poverty:application:remove',
'#',
'103',
'1',
NOW(),
NULL,
NULL,
''
);
-- 导出按钮
INSERT INTO sys_menu VALUES(
'1954043655013946881',
'贫困生认定申请导出',
'1954043650013946881',
'5',
'jcbt:poverty:application:export',
'',
'',
'',
'1',
'0',
'F',
'0',
'0',
'jcbt:poverty:application:export',
'#',
'103',
'1',
NOW(),
NULL,
NULL,
''
);
-- 审核按钮
INSERT INTO sys_menu VALUES(
'1954043656013946881',
'贫困生认定申请审核',
'1954043650013946881',
'6',
'jcbt:poverty:application:audit',
'',
'',
'',
'1',
'0',
'F',
'0',
'0',
'jcbt:poverty:application:audit',
'#',
'103',
'1',
NOW(),
NULL,
NULL,
''
);
-- ============================================================================
-- 3. 插入字典数据
-- ============================================================================
-- 3.1 申请状态字典
INSERT INTO sys_dict_type VALUES(
(SELECT IFNULL(MAX(dict_id), 0) + 1 FROM sys_dict_type t),
'贫困生申请状态',
'jcbt_poverty_application_status',
'0',
'103',
'1',
NOW(),
NULL,
NULL,
'贫困生认定申请状态选项'
);
-- 获取刚插入的字典类型ID
SET @dict_type_id = (SELECT dict_id FROM sys_dict_type WHERE dict_type = 'jcbt_poverty_application_status');
-- 插入状态字典数据
INSERT INTO sys_dict_data VALUES(@dict_type_id * 10 + 1, 1, '草稿', 'DRAFT', 'jcbt_poverty_application_status', '', 'info', 'N', '0', '103', '1', NOW(), NULL, NULL, '申请草稿状态');
INSERT INTO sys_dict_data VALUES(@dict_type_id * 10 + 2, 2, '已提交', 'SUBMITTED', 'jcbt_poverty_application_status', '', 'primary', 'N', '0', '103', '1', NOW(), NULL, NULL, '申请已提交状态');
INSERT INTO sys_dict_data VALUES(@dict_type_id * 10 + 3, 3, '审核中', 'REVIEWING', 'jcbt_poverty_application_status', '', 'warning', 'N', '0', '103', '1', NOW(), NULL, NULL, '申请审核中状态');
INSERT INTO sys_dict_data VALUES(@dict_type_id * 10 + 4, 4, '已通过', 'APPROVED', 'jcbt_poverty_application_status', '', 'success', 'N', '0', '103', '1', NOW(), NULL, NULL, '申请已通过状态');
INSERT INTO sys_dict_data VALUES(@dict_type_id * 10 + 5, 5, '已拒绝', 'REJECTED', 'jcbt_poverty_application_status', '', 'danger', 'N', '0', '103', '1', NOW(), NULL, NULL, '申请已拒绝状态');
INSERT INTO sys_dict_data VALUES(@dict_type_id * 10 + 6, 6, '已撤回', 'WITHDRAWN', 'jcbt_poverty_application_status', '', 'info', 'N', '0', '103', '1', NOW(), NULL, NULL, '申请已撤回状态');
-- ============================================================================
-- 4. 插入测试数据
-- ============================================================================
INSERT INTO `jcbt_poverty_application` VALUES
(1954048400013946881, 'PK2024001', '2024-2025', 1, 1001, '202401001', '张三', '男', 101, '计算机学院', 10101, '计算机科学与技术', 1010101, '计软2401班', '其他群体', 1, 'TYPE001', '一般困难', '1,2', '学费减免,生活补助', '家庭经济困难,父母务农收入微薄', '', NULL, '', NULL, 'SUBMITTED', 1001, '张三', '2024-12-01 10:00:00', NULL, NULL, NULL, NULL, '因家庭经济困难申请贫困生认定', 0, '000000', 103, '2024-12-01 09:30:00', 103, '2024-12-01 10:00:00'),
(1954048401013946881, 'PK2024002', '2024-2025', 1, 1002, '202401002', '李四', '女', 102, '外国语学院', 10201, '英语', 1020101, '英语2401班', '特殊群体', 2, 'TYPE002', '特别困难', '1,3', '学费减免,勤工助学', '单亲家庭,母亲重病', '', NULL, '', NULL, 'REVIEWING', 1002, '李四', '2024-12-02 14:00:00', 201, '王老师', NULL, NULL, '单亲家庭申请特别困难认定', 0, '000000', 103, '2024-12-02 13:30:00', 201, '2024-12-02 14:00:00'),
(1954048402013946881, 'PK2024003', '2024-2025', 1, 1003, '202401003', '王五', '男', 101, '计算机学院', 10102, '软件工程', 1010201, '软工2401班', '其他群体', 1, 'TYPE001', '一般困难', '2', '生活补助', '家庭收入较低', '', NULL, '', NULL, 'APPROVED', 1003, '王五', '2024-11-28 16:00:00', 201, '王老师', '2024-11-30 10:00:00', '符合认定条件,予以通过', '已通过认定审核', 0, '000000', 103, '2024-11-28 15:30:00', 201, '2024-11-30 10:00:00'),
(1954048403013946881, 'PK2024004', '2024-2025', 1, 1004, '202401004', '赵六', '女', 103, '经济管理学院', 10301, '会计学', 1030101, '会计2401班', '其他群体', 1, 'TYPE001', '一般困难', '1,2,3', '学费减免,生活补助,勤工助学', '家庭经济确实困难', '', NULL, '', NULL, 'DRAFT', NULL, NULL, NULL, NULL, NULL, NULL, NULL, '正在准备申请材料', 0, '000000', 103, '2024-12-05 11:00:00', 103, '2024-12-05 11:00:00'),
(1954048404013946881, 'PK2024005', '2024-2025', 1, 1005, '202401005', '钱七', '男', 104, '机械工程学院', 10401, '机械设计制造及其自动化', 1040101, '机械2401班', '特殊群体', 2, 'TYPE002', '特别困难', '1,2', '学费减免,生活补助', '建档立卡贫困户', '', NULL, '', NULL, 'REJECTED', 1005, '钱七', '2024-11-25 09:00:00', 202, '李老师', '2024-11-27 15:00:00', '材料不够完整,请补充相关证明', '需要补充材料后重新申请', 0, '000000', 103, '2024-11-25 08:30:00', 202, '2024-11-27 15:00:00');
-- ============================================================================
-- 5. 创建索引优化
-- ============================================================================
-- 优化查询性能的复合索引
CREATE INDEX idx_student_status_time ON jcbt_poverty_application(student_id, status, create_time);
CREATE INDEX idx_college_year_status ON jcbt_poverty_application(college_id, academic_year, status);
CREATE INDEX idx_auditor_time ON jcbt_poverty_application(auditor_id, audit_time);
-- ============================================================================
-- 6. 数据统计视图(可选)
-- ============================================================================
-- 创建状态统计视图
CREATE OR REPLACE VIEW v_poverty_application_statistics AS
SELECT
status,
COUNT(*) as count,
academic_year,
college_name
FROM jcbt_poverty_application
WHERE deleted = 0
GROUP BY status, academic_year, college_name;
-- ============================================================================
-- 脚本执行完成
-- ============================================================================
-- 执行完成后请检查:
-- 1. 表结构是否创建成功: SHOW CREATE TABLE jcbt_poverty_application;
-- 2. 菜单权限是否正确: SELECT * FROM sys_menu WHERE menu_name LIKE '%贫困生%';
-- 3. 测试数据是否插入: SELECT COUNT(*) FROM jcbt_poverty_application;
-- ============================================================================