import { get, post, put, del } from '../utils/request'

/**
 * 获取教师列表
 * @param {Object} params - 查询参数
 * @returns {Promise}
 */
export function getTeachers(params) {
  return get('/teachers', params)
}

/**
 * 获取教师详情
 * @param {string|number} id - 教师ID
 * @returns {Promise}
 */
export function getTeacherDetail(id) {
  return get(`/teachers/${id}`)
}

/**
 * 创建教师
 * @param {Object} data - 教师数据
 * @returns {Promise}
 */
export function createTeacher(data) {
  return post('/teachers', data)
}

/**
 * 更新教师信息
 * @param {string|number} id - 教师ID
 * @param {Object} data - 更新数据
 * @returns {Promise}
 */
export function updateTeacher(id, data) {
  return put(`/teachers/${id}`, data)
}

/**
 * 删除教师
 * @param {string|number} id - 教师ID
 * @returns {Promise}
 */
export function deleteTeacher(id) {
  return del(`/teachers/${id}`)
}

/**
 * 获取教师的课程列表
 * @param {string|number} teacherId - 教师ID
 * @param {Object} params - 查询参数
 * @returns {Promise}
 */
export function getTeacherCourses(teacherId, params) {
  return get(`/teachers/${teacherId}/courses`, params)
}

/**
 * 分配课程给教师
 * @param {string|number} teacherId - 教师ID
 * @param {Array} courseIds - 课程ID数组
 * @returns {Promise}
 */
export function assignCourses(teacherId, courseIds) {
  return post(`/teachers/${teacherId}/courses`, { courseIds })
} 