test_scholarship_basic_data.sql 7.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131
  1. -- =====================================================
  2. -- 奖学金名额分配 - 基础数据检查和测试数据插入
  3. -- 创建时间: 2025-01-27
  4. -- 说明: 检查和创建测试用的基础数据
  5. -- =====================================================
  6. USE hzdyjs_xg;
  7. -- =====================================================
  8. -- 1. 检查现有数据
  9. -- =====================================================
  10. -- 检查奖学金批次数据
  11. SELECT 'jcbt_scholarship_batch' as table_name, COUNT(*) as record_count FROM jcbt_scholarship_batch WHERE deleted = 0;
  12. -- 检查奖学金类型数据
  13. SELECT 'jcbt_scholarship_type' as table_name, COUNT(*) as record_count FROM jcbt_scholarship_type WHERE deleted = 0;
  14. -- 检查名额分配数据
  15. SELECT 'jcbt_scholarship_quota' as table_name, COUNT(*) as record_count FROM jcbt_scholarship_quota WHERE deleted = 0;
  16. -- =====================================================
  17. -- 2. 插入测试批次数据(如果不存在)
  18. -- =====================================================
  19. INSERT IGNORE INTO jcbt_scholarship_batch (
  20. id, batch_code, batch_name, academic_year, semester, batch_type,
  21. start_time, end_time, apply_start_time, apply_end_time,
  22. review_start_time, review_end_time, status, description,
  23. create_by, create_time, update_by, update_time, tenant_id, deleted
  24. ) VALUES
  25. (1890000000000000001, 'BATCH_2024_1', '2024学年第一学期奖学金评定', '2024-2025', 1, 'REGULAR',
  26. '2024-09-01 00:00:00', '2024-12-31 23:59:59', '2024-10-01 00:00:00', '2024-10-31 23:59:59',
  27. '2024-11-01 00:00:00', '2024-11-30 23:59:59', 'ACTIVE', '2024学年第一学期常规奖学金评定批次',
  28. 1, NOW(), 1, NOW(), 1, 0),
  29. (1890000000000000002, 'BATCH_2024_2', '2024学年第二学期奖学金评定', '2024-2025', 2, 'REGULAR',
  30. '2025-02-01 00:00:00', '2025-06-30 23:59:59', '2025-03-01 00:00:00', '2025-03-31 23:59:59',
  31. '2025-04-01 00:00:00', '2025-04-30 23:59:59', 'DRAFT', '2024学年第二学期常规奖学金评定批次',
  32. 1, NOW(), 1, NOW(), 1, 0);
  33. -- =====================================================
  34. -- 3. 插入测试奖学金类型数据(如果不存在)
  35. -- =====================================================
  36. INSERT IGNORE INTO jcbt_scholarship_type (
  37. id, type_code, type_name, type_category, level_type, award_amount,
  38. description, application_guide, application_conditions, evaluation_criteria,
  39. compatibility_type, sort_order, status, is_system,
  40. create_by, create_time, update_by, update_time, tenant_id, deleted
  41. ) VALUES
  42. (1890000000000000101, 'GJZXJ', '国家奖学金', 'NATIONAL', 'FIRST_CLASS', 8000.00,
  43. '国家奖学金是为了激励普通本科高校、高等职业学校和高等专科学校学生勤奋学习、努力进取,在德、智、体、美等方面全面发展,由中央政府出资设立的奖励特别优秀学生的奖学金。',
  44. '学生本人提出申请,按学校规定程序推荐上报。', '品学兼优,学习成绩排名在评选范围内位于前10%',
  45. '学习成绩、综合测评、道德品质等综合评定', 'EXCLUSIVE', 1, 1, 1,
  46. 1, NOW(), 1, NOW(), 1, 0),
  47. (1890000000000000102, 'GJLZJ', '国家励志奖学金', 'NATIONAL', 'SECOND_CLASS', 5000.00,
  48. '国家励志奖学金是为了激励普通本科高校、高等职业学校和高等专科学校的家庭经济困难学生勤奋学习、努力进取,在德、智、体、美等方面全面发展,由中央和地方政府共同出资设立的,奖励资助品学兼优的家庭经济困难学生的奖学金。',
  49. '学生本人提出申请,按学校规定程序推荐上报。', '家庭经济困难且品学兼优,学习成绩排名在评选范围内位于前25%',
  50. '学习成绩、综合测评、家庭经济状况等综合评定', 'EXCLUSIVE', 2, 1, 1,
  51. 1, NOW(), 1, NOW(), 1, 0),
  52. (1890000000000000103, 'XXZXJ1', '校级奖学金一等奖', 'SCHOOL', 'FIRST_CLASS', 3000.00,
  53. '学校设立的奖学金,奖励学习成绩优秀、综合素质突出的学生。',
  54. '学生本人提出申请,班级推荐,学院审核。', '学习成绩排名在专业前5%,综合测评排名在专业前10%',
  55. '学习成绩、综合测评、特长发展等', 'COMPATIBLE', 3, 1, 0,
  56. 1, NOW(), 1, NOW(), 1, 0),
  57. (1890000000000000104, 'XXZXJ2', '校级奖学金二等奖', 'SCHOOL', 'SECOND_CLASS', 2000.00,
  58. '学校设立的奖学金,奖励学习成绩良好、综合素质较好的学生。',
  59. '学生本人提出申请,班级推荐,学院审核。', '学习成绩排名在专业前15%,综合测评排名在专业前20%',
  60. '学习成绩、综合测评、特长发展等', 'COMPATIBLE', 4, 1, 0,
  61. 1, NOW(), 1, NOW(), 1, 0),
  62. (1890000000000000105, 'SZZXJ', '社会专项奖学金', 'ENTERPRISE', 'SPECIAL', 1500.00,
  63. '由社会企业、校友或其他组织设立的专项奖学金。',
  64. '学生本人提出申请,按专项奖学金具体要求推荐。', '符合专项奖学金设立的特定条件和要求',
  65. '按照专项奖学金的评定标准执行', 'CUSTOM', 5, 1, 0,
  66. 1, NOW(), 1, NOW(), 1, 0);
  67. -- =====================================================
  68. -- 4. 插入测试名额分配数据(如果不存在)
  69. -- =====================================================
  70. INSERT IGNORE INTO jcbt_scholarship_quota (
  71. id, batch_id, scholarship_type_id, allocation_level, target_dept_id, parent_quota_id,
  72. total_quota, used_quota, reserved_quota, available_quota,
  73. allocation_rule, allocation_basis, allocation_method, is_adjustable, is_locked, status,
  74. remark, create_by, create_time, update_by, update_time, tenant_id, deleted
  75. ) VALUES
  76. -- 国家奖学金 - 全校级分配
  77. (1890000000000000201, 1890000000000000001, 1890000000000000101, 'UNIVERSITY', NULL, NULL,
  78. 50, 0, 5, 45, '{"type":"university","rule":"total_allocation"}', '根据学校总体规模和历年获奖情况分配',
  79. 'MANUAL', 1, 0, 'ACTIVE', '全校国家奖学金总名额', 1, NOW(), 1, NOW(), 1, 0),
  80. -- 国家励志奖学金 - 全校级分配
  81. (1890000000000000202, 1890000000000000001, 1890000000000000102, 'UNIVERSITY', NULL, NULL,
  82. 200, 0, 20, 180, '{"type":"university","rule":"total_allocation"}', '根据学校困难学生比例和名额分配',
  83. 'MANUAL', 1, 0, 'ACTIVE', '全校国家励志奖学金总名额', 1, NOW(), 1, NOW(), 1, 0),
  84. -- 校级奖学金一等奖 - 全校级分配
  85. (1890000000000000203, 1890000000000000001, 1890000000000000103, 'UNIVERSITY', NULL, NULL,
  86. 100, 0, 10, 90, '{"type":"university","rule":"total_allocation"}', '根据学校各学院学生人数比例分配',
  87. 'MANUAL', 1, 0, 'ACTIVE', '全校校级一等奖学金总名额', 1, NOW(), 1, NOW(), 1, 0),
  88. -- 校级奖学金二等奖 - 全校级分配
  89. (1890000000000000204, 1890000000000000001, 1890000000000000104, 'UNIVERSITY', NULL, NULL,
  90. 300, 0, 30, 270, '{"type":"university","rule":"total_allocation"}', '根据学校各学院学生人数比例分配',
  91. 'MANUAL', 1, 0, 'ACTIVE', '全校校级二等奖学金总名额', 1, NOW(), 1, NOW(), 1, 0);
  92. -- =====================================================
  93. -- 5. 验证插入结果
  94. -- =====================================================
  95. -- 再次检查数据插入结果
  96. SELECT '插入后-jcbt_scholarship_batch' as table_name, COUNT(*) as record_count FROM jcbt_scholarship_batch WHERE deleted = 0;
  97. SELECT '插入后-jcbt_scholarship_type' as table_name, COUNT(*) as record_count FROM jcbt_scholarship_type WHERE deleted = 0;
  98. SELECT '插入后-jcbt_scholarship_quota' as table_name, COUNT(*) as record_count FROM jcbt_scholarship_quota WHERE deleted = 0;
  99. -- 查看详细数据
  100. SELECT
  101. q.id,
  102. b.batch_name,
  103. st.type_name as scholarship_type_name,
  104. q.allocation_level,
  105. q.total_quota,
  106. q.available_quota,
  107. q.status
  108. FROM jcbt_scholarship_quota q
  109. LEFT JOIN jcbt_scholarship_batch b ON q.batch_id = b.id
  110. LEFT JOIN jcbt_scholarship_type st ON q.scholarship_type_id = st.id
  111. WHERE q.deleted = 0
  112. ORDER BY q.id;
  113. -- =====================================================