Files
hzdyjs/backend/sql/test_scholarship_basic_data.sql
T
2025-08-10 00:24:31 +08:00

132 lines
7.7 KiB
SQL

-- =====================================================
-- 奖学金名额分配 - 基础数据检查和测试数据插入
-- 创建时间: 2025-01-27
-- 说明: 检查和创建测试用的基础数据
-- =====================================================
USE hzdyjs_xg;
-- =====================================================
-- 1. 检查现有数据
-- =====================================================
-- 检查奖学金批次数据
SELECT 'jcbt_scholarship_batch' as table_name, COUNT(*) as record_count FROM jcbt_scholarship_batch WHERE deleted = 0;
-- 检查奖学金类型数据
SELECT 'jcbt_scholarship_type' as table_name, COUNT(*) as record_count FROM jcbt_scholarship_type WHERE deleted = 0;
-- 检查名额分配数据
SELECT 'jcbt_scholarship_quota' as table_name, COUNT(*) as record_count FROM jcbt_scholarship_quota WHERE deleted = 0;
-- =====================================================
-- 2. 插入测试批次数据(如果不存在)
-- =====================================================
INSERT IGNORE INTO jcbt_scholarship_batch (
id, batch_code, batch_name, academic_year, semester, batch_type,
start_time, end_time, apply_start_time, apply_end_time,
review_start_time, review_end_time, status, description,
create_by, create_time, update_by, update_time, tenant_id, deleted
) VALUES
(1890000000000000001, 'BATCH_2024_1', '2024学年第一学期奖学金评定', '2024-2025', 1, 'REGULAR',
'2024-09-01 00:00:00', '2024-12-31 23:59:59', '2024-10-01 00:00:00', '2024-10-31 23:59:59',
'2024-11-01 00:00:00', '2024-11-30 23:59:59', 'ACTIVE', '2024学年第一学期常规奖学金评定批次',
1, NOW(), 1, NOW(), 1, 0),
(1890000000000000002, 'BATCH_2024_2', '2024学年第二学期奖学金评定', '2024-2025', 2, 'REGULAR',
'2025-02-01 00:00:00', '2025-06-30 23:59:59', '2025-03-01 00:00:00', '2025-03-31 23:59:59',
'2025-04-01 00:00:00', '2025-04-30 23:59:59', 'DRAFT', '2024学年第二学期常规奖学金评定批次',
1, NOW(), 1, NOW(), 1, 0);
-- =====================================================
-- 3. 插入测试奖学金类型数据(如果不存在)
-- =====================================================
INSERT IGNORE INTO jcbt_scholarship_type (
id, type_code, type_name, type_category, level_type, award_amount,
description, application_guide, application_conditions, evaluation_criteria,
compatibility_type, sort_order, status, is_system,
create_by, create_time, update_by, update_time, tenant_id, deleted
) VALUES
(1890000000000000101, 'GJZXJ', '国家奖学金', 'NATIONAL', 'FIRST_CLASS', 8000.00,
'国家奖学金是为了激励普通本科高校、高等职业学校和高等专科学校学生勤奋学习、努力进取,在德、智、体、美等方面全面发展,由中央政府出资设立的奖励特别优秀学生的奖学金。',
'学生本人提出申请,按学校规定程序推荐上报。', '品学兼优,学习成绩排名在评选范围内位于前10%',
'学习成绩、综合测评、道德品质等综合评定', 'EXCLUSIVE', 1, 1, 1,
1, NOW(), 1, NOW(), 1, 0),
(1890000000000000102, 'GJLZJ', '国家励志奖学金', 'NATIONAL', 'SECOND_CLASS', 5000.00,
'国家励志奖学金是为了激励普通本科高校、高等职业学校和高等专科学校的家庭经济困难学生勤奋学习、努力进取,在德、智、体、美等方面全面发展,由中央和地方政府共同出资设立的,奖励资助品学兼优的家庭经济困难学生的奖学金。',
'学生本人提出申请,按学校规定程序推荐上报。', '家庭经济困难且品学兼优,学习成绩排名在评选范围内位于前25%',
'学习成绩、综合测评、家庭经济状况等综合评定', 'EXCLUSIVE', 2, 1, 1,
1, NOW(), 1, NOW(), 1, 0),
(1890000000000000103, 'XXZXJ1', '校级奖学金一等奖', 'SCHOOL', 'FIRST_CLASS', 3000.00,
'学校设立的奖学金,奖励学习成绩优秀、综合素质突出的学生。',
'学生本人提出申请,班级推荐,学院审核。', '学习成绩排名在专业前5%,综合测评排名在专业前10%',
'学习成绩、综合测评、特长发展等', 'COMPATIBLE', 3, 1, 0,
1, NOW(), 1, NOW(), 1, 0),
(1890000000000000104, 'XXZXJ2', '校级奖学金二等奖', 'SCHOOL', 'SECOND_CLASS', 2000.00,
'学校设立的奖学金,奖励学习成绩良好、综合素质较好的学生。',
'学生本人提出申请,班级推荐,学院审核。', '学习成绩排名在专业前15%,综合测评排名在专业前20%',
'学习成绩、综合测评、特长发展等', 'COMPATIBLE', 4, 1, 0,
1, NOW(), 1, NOW(), 1, 0),
(1890000000000000105, 'SZZXJ', '社会专项奖学金', 'ENTERPRISE', 'SPECIAL', 1500.00,
'由社会企业、校友或其他组织设立的专项奖学金。',
'学生本人提出申请,按专项奖学金具体要求推荐。', '符合专项奖学金设立的特定条件和要求',
'按照专项奖学金的评定标准执行', 'CUSTOM', 5, 1, 0,
1, NOW(), 1, NOW(), 1, 0);
-- =====================================================
-- 4. 插入测试名额分配数据(如果不存在)
-- =====================================================
INSERT IGNORE INTO jcbt_scholarship_quota (
id, batch_id, scholarship_type_id, allocation_level, target_dept_id, parent_quota_id,
total_quota, used_quota, reserved_quota, available_quota,
allocation_rule, allocation_basis, allocation_method, is_adjustable, is_locked, status,
remark, create_by, create_time, update_by, update_time, tenant_id, deleted
) VALUES
-- 国家奖学金 - 全校级分配
(1890000000000000201, 1890000000000000001, 1890000000000000101, 'UNIVERSITY', NULL, NULL,
50, 0, 5, 45, '{"type":"university","rule":"total_allocation"}', '根据学校总体规模和历年获奖情况分配',
'MANUAL', 1, 0, 'ACTIVE', '全校国家奖学金总名额', 1, NOW(), 1, NOW(), 1, 0),
-- 国家励志奖学金 - 全校级分配
(1890000000000000202, 1890000000000000001, 1890000000000000102, 'UNIVERSITY', NULL, NULL,
200, 0, 20, 180, '{"type":"university","rule":"total_allocation"}', '根据学校困难学生比例和名额分配',
'MANUAL', 1, 0, 'ACTIVE', '全校国家励志奖学金总名额', 1, NOW(), 1, NOW(), 1, 0),
-- 校级奖学金一等奖 - 全校级分配
(1890000000000000203, 1890000000000000001, 1890000000000000103, 'UNIVERSITY', NULL, NULL,
100, 0, 10, 90, '{"type":"university","rule":"total_allocation"}', '根据学校各学院学生人数比例分配',
'MANUAL', 1, 0, 'ACTIVE', '全校校级一等奖学金总名额', 1, NOW(), 1, NOW(), 1, 0),
-- 校级奖学金二等奖 - 全校级分配
(1890000000000000204, 1890000000000000001, 1890000000000000104, 'UNIVERSITY', NULL, NULL,
300, 0, 30, 270, '{"type":"university","rule":"total_allocation"}', '根据学校各学院学生人数比例分配',
'MANUAL', 1, 0, 'ACTIVE', '全校校级二等奖学金总名额', 1, NOW(), 1, NOW(), 1, 0);
-- =====================================================
-- 5. 验证插入结果
-- =====================================================
-- 再次检查数据插入结果
SELECT '插入后-jcbt_scholarship_batch' as table_name, COUNT(*) as record_count FROM jcbt_scholarship_batch WHERE deleted = 0;
SELECT '插入后-jcbt_scholarship_type' as table_name, COUNT(*) as record_count FROM jcbt_scholarship_type WHERE deleted = 0;
SELECT '插入后-jcbt_scholarship_quota' as table_name, COUNT(*) as record_count FROM jcbt_scholarship_quota WHERE deleted = 0;
-- 查看详细数据
SELECT
q.id,
b.batch_name,
st.type_name as scholarship_type_name,
q.allocation_level,
q.total_quota,
q.available_quota,
q.status
FROM jcbt_scholarship_quota q
LEFT JOIN jcbt_scholarship_batch b ON q.batch_id = b.id
LEFT JOIN jcbt_scholarship_type st ON q.scholarship_type_id = st.id
WHERE q.deleted = 0
ORDER BY q.id;
-- =====================================================