提交
This commit is contained in:
1 parent
fb6d0aa63c
commit
ff1228873c
37 files changed
+11861
-1823
No files matched your search
+14
-93
@@ -111,21 +111,30 @@ BEGIN
|
||||
v_effective_date, p_operator_id, 'system', 1
|
||||
);
|
||||
|
||||
-- 4. 更新学生学籍状态
|
||||
-- 4. 备份原始数据到his表
|
||||
INSERT INTO xg_student_msg_his SELECT * FROM xg_student_msg WHERE id = p_student_id;
|
||||
INSERT INTO sys_user_his SELECT * FROM sys_user WHERE user_id = p_student_id;
|
||||
|
||||
-- 5. 更新学生学籍状态
|
||||
UPDATE xg_student_msg
|
||||
SET student_status = v_new_student_status,
|
||||
update_by = p_operator_id,
|
||||
update_time = v_current_time
|
||||
WHERE id = p_student_id AND deleted = 0;
|
||||
|
||||
-- 5. 处理用户账号状态
|
||||
-- 6. 处理用户账号状态
|
||||
IF v_disable_user_account THEN
|
||||
UPDATE sys_user
|
||||
SET status = '1',
|
||||
update_by = p_operator_id,
|
||||
update_time = v_current_time,
|
||||
remark = CONCAT(COALESCE(remark, ''), ' | ', v_exit_reason, '-', v_current_time)
|
||||
WHERE user_name = p_student_no AND account_type = '2' AND del_flag = '0';
|
||||
update_time = v_current_time
|
||||
WHERE user_id = p_student_id AND account_type = '2' AND del_flag = '0';
|
||||
ELSE
|
||||
UPDATE sys_user
|
||||
SET status = '0',
|
||||
update_by = p_operator_id,
|
||||
update_time = v_current_time
|
||||
WHERE user_id = p_student_id AND account_type = '2' AND del_flag = '0';
|
||||
END IF;
|
||||
|
||||
-- 6. 处理班级干部信息(休学、退学、毕业)
|
||||
@@ -156,59 +165,6 @@ BEGIN
|
||||
WHERE user_id = p_student_id AND status IN (0, 1, 2) AND deleted = 0;
|
||||
END IF;
|
||||
|
||||
-- 8. 处理经济资助 - 奖学金申请
|
||||
IF p_change_type IN ('XIU_XUE', 'TUI_XUE', 'BI_YE') THEN
|
||||
UPDATE jcbt_scholarship_application
|
||||
SET current_status = CASE
|
||||
WHEN p_change_type = 'XIU_XUE' THEN 'WITHDRAWN' -- 休学:撤回
|
||||
WHEN p_change_type = 'TUI_XUE' THEN 'REJECTED' -- 退学:拒绝
|
||||
WHEN p_change_type = 'BI_YE' THEN
|
||||
CASE WHEN current_status = 'APPROVED' THEN 'APPROVED' -- 毕业:保持已通过
|
||||
ELSE 'WITHDRAWN' -- 其他状态撤回
|
||||
END
|
||||
ELSE current_status
|
||||
END,
|
||||
update_by = p_operator_id,
|
||||
update_time = v_current_time
|
||||
WHERE student_id = p_student_id AND current_status NOT IN ('REJECTED') AND deleted = 0;
|
||||
END IF;
|
||||
|
||||
-- 9. 处理经济资助 - 勤工俭学申请
|
||||
IF p_change_type IN ('XIU_XUE', 'TUI_XUE', 'BI_YE') THEN
|
||||
UPDATE jcbt_work_study_application
|
||||
SET status = 'CANCELLED',
|
||||
college_review_status = CASE
|
||||
WHEN college_review_status IS NOT NULL THEN 'REJECTED'
|
||||
ELSE college_review_status
|
||||
END,
|
||||
final_review_status = CASE
|
||||
WHEN final_review_status IS NOT NULL THEN 'REJECTED'
|
||||
ELSE final_review_status
|
||||
END,
|
||||
final_review_time = v_current_time,
|
||||
final_reviewer_id = p_operator_id,
|
||||
final_reviewer_name = '系统',
|
||||
final_review_comment = CONCAT(v_exit_reason, ',岗位申请自动终止'),
|
||||
update_by = p_operator_id,
|
||||
update_time = v_current_time
|
||||
WHERE student_id = p_student_id
|
||||
AND status NOT IN ('CANCELLED', 'COLLEGE_REJECTED', 'FINAL_REJECTED')
|
||||
AND deleted = 0;
|
||||
END IF;
|
||||
|
||||
-- 10. 处理经济资助 - 贫困生认定
|
||||
IF p_change_type IN ('XIU_XUE', 'TUI_XUE', 'BI_YE') THEN
|
||||
UPDATE jcbt_poverty_application
|
||||
SET application_status = CASE
|
||||
WHEN application_status = 'approved' THEN 'revoked' -- 撤销已通过的认定
|
||||
ELSE application_status
|
||||
END,
|
||||
update_by = p_operator_id,
|
||||
update_time = v_current_time
|
||||
WHERE student_id = p_student_id
|
||||
AND application_status NOT IN ('cancel', 'invalid')
|
||||
AND deleted = 0;
|
||||
END IF;
|
||||
|
||||
-- 11. 处理宿舍住宿关系(退学、毕业)
|
||||
IF p_change_type IN ('TUI_XUE', 'BI_YE') THEN
|
||||
@@ -221,41 +177,6 @@ BEGIN
|
||||
WHERE student_id = p_student_id AND status = '0' AND deleted = '0';
|
||||
END IF;
|
||||
|
||||
-- 12. 取消心理咨询预约(休学、退学、毕业)
|
||||
IF p_change_type IN ('XIU_XUE', 'TUI_XUE', 'BI_YE') THEN
|
||||
UPDATE xljk_consultation_appointment
|
||||
SET status = '2',
|
||||
update_by = p_operator_id,
|
||||
update_time = v_current_time
|
||||
WHERE student_id = p_student_id AND status = '0'
|
||||
AND appointment_date >= CURDATE() AND deleted = 0;
|
||||
END IF;
|
||||
|
||||
-- 13. 取消学生活动报名(退学、毕业)
|
||||
IF p_change_type IN ('TUI_XUE', 'BI_YE') THEN
|
||||
UPDATE stgl_activity_registration
|
||||
SET approval_status = '3',
|
||||
approval_time = v_current_time,
|
||||
approval_by = p_operator_id,
|
||||
approval_remark = CONCAT(v_exit_reason, ',活动报名自动取消'),
|
||||
update_by = p_operator_id,
|
||||
update_time = v_current_time
|
||||
WHERE student_no = p_student_no AND approval_status = '1'
|
||||
AND EXISTS (SELECT 1 FROM stgl_activity a
|
||||
WHERE a.id = stgl_activity_registration.activity_id
|
||||
AND a.activity_start_time > v_current_time);
|
||||
END IF;
|
||||
|
||||
-- 14. 终止实习(退学)
|
||||
IF p_change_type = 'TUI_XUE' THEN
|
||||
UPDATE zsjy_internship_info
|
||||
SET internship_status = '3',
|
||||
actual_end_date = CURDATE(),
|
||||
update_by = p_operator_id,
|
||||
update_time = v_current_time,
|
||||
remark = CONCAT(COALESCE(remark, ''), ' | 学生退学,实习中断')
|
||||
WHERE student_id = p_student_id AND internship_status = '1' AND deleted = 0;
|
||||
END IF;
|
||||
|
||||
-- 提交事务
|
||||
COMMIT;
|
||||
|
||||
Reference in new issue
Block a user