You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
134 lines
4.2 KiB
134 lines
4.2 KiB
package service.impl;
|
|
|
|
import dao.TeacherDao; // 导入 TeacherDao 接口,处理教师数据访问。
|
|
import domain.Course; // 导入 Course 类,表示课程信息。
|
|
import domain.Teacher; // 导入 Teacher 类,表示教师信息。
|
|
import dao.impl.TeacherDaoImpl; // 导入 TeacherDaoImpl 类,实际的教师数据访问实现。
|
|
import service.TeacherService; // 导入 TeacherService 接口,定义教师服务层的业务逻辑。
|
|
|
|
import java.util.List;
|
|
|
|
/**
|
|
* TeacherServiceImpl 类实现了 TeacherService 接口,负责教师相关业务逻辑的处理。
|
|
* 该类通过调用 TeacherDao 实现与数据库的交互,提供了教师登录、信息更新、密码修改、课程管理等功能。
|
|
*/
|
|
public class TeacherServiceImpl implements TeacherService {
|
|
|
|
private TeacherDao dao = new TeacherDaoImpl(); // 实例化 TeacherDaoImpl 对象,用于操作教师数据。
|
|
|
|
/**
|
|
* 教师登录验证。
|
|
*
|
|
* @param teacher 教师对象,包含教师 ID 和密码。
|
|
* @return 如果验证通过,返回教师信息;否则返回 null。
|
|
*/
|
|
@Override
|
|
public Teacher login(Teacher teacher) {
|
|
return dao.findTeacheridAndPassword(teacher.getT_id(), teacher.getT_password()); // 调用 DAO 层方法进行登录验证
|
|
}
|
|
|
|
/**
|
|
* 查询所有教师信息。
|
|
*
|
|
* @return 返回所有教师的列表。
|
|
*/
|
|
@Override
|
|
public List<Teacher> findAll() {
|
|
return dao.findAll(); // 调用 DAO 层的 findAll 方法获取所有教师信息
|
|
}
|
|
|
|
/**
|
|
* 查询教师自己的可选课程。
|
|
*
|
|
* @param T_id 教师 ID。
|
|
* @return 返回该教师教授的所有可选课程信息。
|
|
*/
|
|
@Override
|
|
public List<Course> findMySelfOptionalCourse(String T_id) {
|
|
return dao.findMySelfOptionalCourse(T_id); // 调用 DAO 层方法获取该教师的可选课程
|
|
}
|
|
|
|
/**
|
|
* 根据课程 ID 查询可选课程信息。
|
|
*
|
|
* @param cid 课程 ID。
|
|
* @return 返回指定课程的详细信息。
|
|
*/
|
|
@Override
|
|
public Course findOptionalCourseByCourseId(String cid) {
|
|
return dao.findOptionalCourseByCourseId(cid); // 调用 DAO 层方法根据课程 ID 查询课程信息
|
|
}
|
|
|
|
/**
|
|
* 更新课程信息。
|
|
*
|
|
* @param updateCourse 课程对象,包含更新后的课程信息。
|
|
*/
|
|
@Override
|
|
public void updateCourseInfo(Course updateCourse) {
|
|
dao.updateCourseInfo(updateCourse); // 调用 DAO 层方法更新课程信息
|
|
}
|
|
|
|
/**
|
|
* 删除课程信息。
|
|
*
|
|
* @param cid 课程 ID。
|
|
*/
|
|
@Override
|
|
public void deleteCourseById(String cid) {
|
|
dao.deleteCourseById(cid); // 调用 DAO 层方法删除指定课程
|
|
}
|
|
|
|
/**
|
|
* 更新教师密码。
|
|
*
|
|
* @param teacherid 教师 ID。
|
|
* @param newpassword 新密码。
|
|
*/
|
|
@Override
|
|
public void updatePassword(String teacherid, String newpassword) {
|
|
dao.updatePassword(teacherid, newpassword); // 调用 DAO 层方法更新教师密码
|
|
}
|
|
|
|
/**
|
|
* 根据教师 ID 查询教师信息。
|
|
*
|
|
* @param teacher 教师对象,包含教师 ID。
|
|
* @return 返回指定教师的详细信息。
|
|
*/
|
|
@Override
|
|
public Teacher findTeacherById(Teacher teacher) {
|
|
return dao.findTeacherById(teacher.getT_id()); // 调用 DAO 层方法根据教师 ID 查询教师信息
|
|
}
|
|
|
|
/**
|
|
* 添加教师的完整信息。
|
|
*
|
|
* @param updateTeacher 教师对象,包含完整的教师信息。
|
|
*/
|
|
@Override
|
|
public void addTeacherAllInfo(Teacher updateTeacher) {
|
|
dao.addTeacherAllInfo(updateTeacher); // 调用 DAO 层方法添加教师的完整信息
|
|
}
|
|
|
|
/**
|
|
* 删除教师信息。
|
|
*
|
|
* @param teacherid 教师 ID。
|
|
*/
|
|
@Override
|
|
public void deleteTeacherById(String teacherid) {
|
|
dao.deleteTeacherById(teacherid); // 调用 DAO 层方法删除指定教师
|
|
}
|
|
|
|
/**
|
|
* 更新教师信息。
|
|
*
|
|
* @param updateTeacher 教师对象,包含更新后的教师信息。
|
|
*/
|
|
@Override
|
|
public void updateInfo(Teacher updateTeacher) {
|
|
dao.updateInfo(updateTeacher); // 调用 DAO 层方法更新教师信息
|
|
}
|
|
}
|