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.
text/src/service/impl/TeacherServiceImpl.java

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 层方法更新教师信息
}
}