更新 database_manager.py
parent
5d66d17fe2
commit
0557cd15c8
|
|
@ -1,4 +1,3 @@
|
||||||
import pymysql
|
|
||||||
from db.connection import MySQLPool
|
from db.connection import MySQLPool
|
||||||
import bcrypt
|
import bcrypt
|
||||||
|
|
||||||
|
|
@ -57,12 +56,12 @@ class DatabaseManager:
|
||||||
# 使用bcrypt进行密码验证
|
# 使用bcrypt进行密码验证
|
||||||
if bcrypt.checkpw(password_attempt.encode('utf-8'), stored_hash.encode('utf-8')):
|
if bcrypt.checkpw(password_attempt.encode('utf-8'), stored_hash.encode('utf-8')):
|
||||||
# 密码匹配,返回登录成功,身份和状态
|
# 密码匹配,返回登录成功,身份和状态
|
||||||
return {'valid': True, 'identity': identity, 'status': status,'nickname': nickname}
|
return {'valid': True, 'identity': identity, 'status': status, 'nickname': nickname}
|
||||||
|
|
||||||
# 密码不匹配或用户不存在,返回登录失败
|
# 密码不匹配或用户不存在,返回登录失败
|
||||||
return {'valid': False}
|
return {'valid': False}
|
||||||
|
|
||||||
def get_meun(self, role):
|
def get_menu(self, role):
|
||||||
sql = "SELECT menu_name,path FROM menu_items WHERE role=%s ORDER BY `order`"
|
sql = "SELECT menu_name,path FROM menu_items WHERE role=%s ORDER BY `order`"
|
||||||
result = self.fetch(sql, (role,))
|
result = self.fetch(sql, (role,))
|
||||||
return result
|
return result
|
||||||
|
|
@ -71,3 +70,28 @@ class DatabaseManager:
|
||||||
sql = "SELECT course_name, course_code, instructor_name, credits, description FROM courses"
|
sql = "SELECT course_name, course_code, instructor_name, credits, description FROM courses"
|
||||||
result = self.fetch(sql)
|
result = self.fetch(sql)
|
||||||
return result
|
return result
|
||||||
|
|
||||||
|
def get_current_teacher_courses(self, phone_number):
|
||||||
|
# 根据电话号码查询user_id
|
||||||
|
user_sql = "SELECT user_id FROM user WHERE phone_number = %s"
|
||||||
|
user_result = self.fetch(user_sql, (phone_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 []
|
||||||
|
|
||||||
|
|
|
||||||
Reference in New Issue