feat(学生): 添加学生课程管理功能
- 新增我的课程页面及路由 - 实现课程列表和详情查看功能 - 更新导航链接指向新页面 - 添加成绩详情模态框 - 完善相关后端接口和服务
This commit is contained in:
@@ -12,6 +12,31 @@ class Course {
|
||||
const rows = await db.query('SELECT * FROM courses WHERE id = ?', [id]);
|
||||
return rows[0];
|
||||
}
|
||||
|
||||
static async findDetailsById(id) {
|
||||
const sql = `
|
||||
SELECT c.*, u.name as teacher_name, cl.class_name
|
||||
FROM courses c
|
||||
JOIN users u ON c.teacher_id = u.id
|
||||
JOIN classes cl ON c.class_id = cl.id
|
||||
WHERE c.id = ?
|
||||
`;
|
||||
const rows = await db.query(sql, [id]);
|
||||
return rows[0];
|
||||
}
|
||||
|
||||
static async findByStudentId(studentId) {
|
||||
const sql = `
|
||||
SELECT c.*, u.name as teacher_name
|
||||
FROM courses c
|
||||
JOIN classes cl ON c.class_id = cl.id
|
||||
JOIN students s ON cl.class_name = s.class
|
||||
JOIN users u ON c.teacher_id = u.id
|
||||
WHERE s.id = ?
|
||||
ORDER BY c.course_code
|
||||
`;
|
||||
return await db.query(sql, [studentId]);
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = Course;
|
||||
@@ -22,7 +22,7 @@ class Score {
|
||||
s.usual_score, s.midterm_score, s.final_score, s.total_score as score,
|
||||
s.grade_point, s.grade_level, s.created_at, s.remark,
|
||||
c.course_code, c.course_name, c.credit, c.semester,
|
||||
u.name as teacher_name, u.email as teacher_email,
|
||||
u.name as teacher_name,
|
||||
st.id as student_number, st.class as class_name
|
||||
FROM grades s
|
||||
JOIN courses c ON s.course_id = c.id
|
||||
|
||||
Reference in New Issue
Block a user