Compare commits
3 Commits
a934ff1a80
...
72758a4b95
| Author | SHA1 | Date |
|---|---|---|
|
|
72758a4b95 | |
|
|
0fde0df39c | |
|
|
e35abb4009 |
|
|
@ -5,9 +5,12 @@ from db.database_manager import DatabaseManager
|
|||
from models.Student import Student
|
||||
from models.Teacher import Teacher
|
||||
from models.User import User
|
||||
import logging
|
||||
from config import LOGGING_CONFIG
|
||||
|
||||
app = Flask(__name__, static_folder='static')
|
||||
app.secret_key = SECRET_KEY # 从配置文件设置
|
||||
logging.basicConfig(**LOGGING_CONFIG)
|
||||
|
||||
# 一个全局MySQLPool对象,用于管理数据库连接
|
||||
mysql_pool = MySQLPool()
|
||||
|
|
@ -221,7 +224,7 @@ def teacher_attendance():
|
|||
@app.route('/api/get-teacher-attendance-table', methods=['GET'])
|
||||
def get_current_teacher_courses():
|
||||
number = session.get('number')
|
||||
|
||||
logging.info(number)
|
||||
# 获取分页参数
|
||||
page = request.args.get('page', 1, type=int) # 如果没有提供,默认为第一页
|
||||
limit = request.args.get('limit', 10, type=int) # 如果没有提供,默认每页10条
|
||||
|
|
|
|||
|
|
@ -72,29 +72,8 @@ class DatabaseManager:
|
|||
return result
|
||||
|
||||
def get_current_teacher_courses(self, number):
|
||||
# 根据电话号码查询user_id
|
||||
user_sql = "SELECT user_id FROM user WHERE number = %s"
|
||||
user_result = self.fetch(user_sql, (number,))
|
||||
|
||||
if user_result:
|
||||
user_id = user_result[0]['user_id']
|
||||
|
||||
# 使用联合查询获取该老师的所有课程信息及班级信息
|
||||
course_class_sql = """
|
||||
SELECT c.course_name, c.course_code, c.credits, cl.class_name, cl.major
|
||||
FROM class_courses cc
|
||||
JOIN courses c ON cc.course_id = c.course_id
|
||||
JOIN classes cl ON cc.class_id = cl.class_id
|
||||
WHERE cc.user_id = %s
|
||||
"""
|
||||
courses_classes_result = self.fetch(course_class_sql, (user_id,))
|
||||
|
||||
# 组织和返回信息
|
||||
if courses_classes_result:
|
||||
# print(courses_classes_result)
|
||||
return courses_classes_result
|
||||
return []
|
||||
|
||||
sql = ""
|
||||
return None
|
||||
def get_course_type(self):
|
||||
sql = "SELECT course_name, course_type FROM course"
|
||||
result = self.fetch(sql)
|
||||
|
|
|
|||
37
mysql.sql
37
mysql.sql
|
|
@ -88,7 +88,7 @@ CREATE TABLE attendance_records
|
|||
date DATE NOT NULL,
|
||||
status ENUM('present', 'absent', 'late', 'excused'),
|
||||
FOREIGN KEY (course_id) REFERENCES course (course_id),
|
||||
FOREIGN KEY (student_id) REFERENCES students (student_id)
|
||||
FOREIGN KEY (student_id) REFERENCES student (student_id)
|
||||
);
|
||||
|
||||
|
||||
|
|
@ -156,18 +156,39 @@ VALUES ('教师1', 1),
|
|||
('教师3', 3),
|
||||
('教师4', 4);
|
||||
|
||||
CREATE TABLE major_course
|
||||
(
|
||||
id INT AUTO_INCREMENT PRIMARY KEY,
|
||||
major_id VARCHAR(20) NOT NULL,
|
||||
course_id INT NOT NULL,
|
||||
FOREIGN KEY (major_id) REFERENCES major (major_id),
|
||||
FOREIGN KEY (course_id) REFERENCES course (course_id)
|
||||
);
|
||||
|
||||
INSERT INTO major_course (major_id, course_id) VALUES
|
||||
('000',1),
|
||||
('000',2),
|
||||
('000',3),
|
||||
('000',4),
|
||||
('000',5),
|
||||
('000',6),
|
||||
('000',7),
|
||||
('000',8);
|
||||
|
||||
CREATE TABLE teacher_class_course
|
||||
(
|
||||
id INT AUTO_INCREMENT,
|
||||
teacher_id INT,
|
||||
course_id INT,
|
||||
class_id INT,
|
||||
id INT AUTO_INCREMENT,
|
||||
teacher_number VARCHAR(20) NOT NULL,
|
||||
course_id INT NOT NULL,
|
||||
class_name VARCHAR(20) NOT NULL,
|
||||
PRIMARY KEY (id),
|
||||
FOREIGN KEY (teacher_id) REFERENCES teacher (teacher_id),
|
||||
FOREIGN KEY (course_id) REFERENCES course (course_id),
|
||||
FOREIGN KEY (class_id) REFERENCES class (class_id)
|
||||
FOREIGN KEY (teacher_number) REFERENCES teacher (teacher_number),
|
||||
FOREIGN KEY (course_id) REFERENCES course (course_id)
|
||||
);
|
||||
|
||||
INSERT INTO teacher_class_course(teacher_number, course_id, class_name) VALUES
|
||||
('G0000',1,'2023级01班');
|
||||
|
||||
INSERT INTO teacher_class_course(teacher_id, course_id, class_id)
|
||||
VALUES (1, 1, 1),
|
||||
(1, 2, 1),
|
||||
|
|
|
|||
Reference in New Issue