Files
hzdyjs/docs/开发文档/API/班级教师关联管理API.md
T
2025-07-23 20:42:31 +08:00

7.6 KiB

班级教师关联管理API文档

文档信息

  • 模块名称: 班级教师关联管理
  • 版本: 1.0.1
  • 最后更新: 2025-07-24
  • 更新人: zlwu

API概览

本文档主要描述班级与教师(班主任/辅导员)关联的相关API接口,提供班主任和辅导员的设置、更新、查询等功能。

基础数据结构

班级教师关联对象 (XgClassTeacherCounselorRelBo)

字段名 类型 必填 描述
id Long 否(新增)/是(修改) 主键ID
classId Long 是 班级ID
teacherId Long 否 班主任ID
teacherName String 否 班主任姓名
counselorId Long 否 辅导员ID
counselorName String 否 辅导员姓名
relationType Integer 是 关联类型: 1-班主任, 2-辅导员
startDate Date 否 开始日期
endDate Date 否 结束日期
remark String 否 备注信息
createTime Date 是 创建时间
createBy Long 是 创建者
updateTime Date 是 更新时间
updateBy Long 是 更新者

接口列表

1. 查询班级教师关联列表

  • 接口URL: /teacherCounselorRel/classTeacherCounselorRel/list
  • 请求方式: GET
  • 权限标识: teacherCounselorRel:classTeacherCounselorRel:list

请求参数

参数名 类型 必填 位置 描述
classId Long 否 query 班级ID
relationType Integer 否 query 关联类型: 1-班主任, 2-辅导员
pageNum Integer 否 query 当前页码, 默认为1
pageSize Integer 否 query 每页数量, 默认为10

响应结果

{
  "total": 100,
  "rows": [
    {
      "id": 1,
      "classId": 1001,
      "teacherId": 2001,
      "teacherName": "张老师",
      "counselorId": 3001,
      "counselorName": "李辅导员",
      "relationType": 1,
      "remark": "高一年级班主任",
      "createTime": "2025-07-01 10:00:00",
      "createBy": 1,
      "updateTime": "2025-07-20 15:30:00",
      "updateBy": 1
    }
  ],
  "code": 200,
  "msg": "查询成功"
}

2. 获取班级教师关联详情

  • 接口URL: /teacherCounselorRel/classTeacherCounselorRel/{id}
  • 请求方式: GET
  • 权限标识: teacherCounselorRel:classTeacherCounselorRel:query

请求参数

参数名 类型 必填 位置 描述
id Long 是 path 关联ID

响应结果

{
  "code": 200,
  "data": {
    "id": 1,
    "classId": 1001,
    "teacherId": 2001,
    "teacherName": "张老师",
    "counselorId": 3001,
    "counselorName": "李辅导员",
    "relationType": 1,
    "remark": "高一年级班主任",
    "createTime": "2025-07-01 10:00:00",
    "createBy": 1,
    "updateTime": "2025-07-20 15:30:00",
    "updateBy": 1
  },
  "msg": "操作成功"
}

3. 新增班级教师关联

  • 接口URL: /teacherCounselorRel/classTeacherCounselorRel
  • 请求方式: POST
  • 权限标识: teacherCounselorRel:classTeacherCounselorRel:add

请求参数

参数名 类型 必填 位置 描述
classId Long 是 body 班级ID
teacherId Long 否 body 班主任ID
teacherName String 否 body 班主任姓名
counselorId Long 否 body 辅导员ID
counselorName String 否 body 辅导员姓名
relationType Integer 是 body 关联类型: 1-班主任, 2-辅导员
remark String 否 body 备注信息

请求示例

{
  "classId": 1001,
  "teacherId": 2001,
  "teacherName": "张老师",
  "relationType": 1,
  "remark": "高一年级班主任"
}

响应结果

{
  "code": 200,
  "msg": "操作成功"
}

4. 修改班级教师关联

  • 接口URL: /teacherCounselorRel/classTeacherCounselorRel
  • 请求方式: PUT
  • 权限标识: teacherCounselorRel:classTeacherCounselorRel:edit

请求参数

参数名 类型 必填 位置 描述
id Long 是 body 关联ID
classId Long 否 body 班级ID
teacherId Long 否 body 班主任ID
teacherName String 否 body 班主任姓名
counselorId Long 否 body 辅导员ID
counselorName String 否 body 辅导员姓名
relationType Integer 否 body 关联类型: 1-班主任, 2-辅导员
remark String 否 body 备注信息

班主任更换机制

当通过此接口更换班主任时(relationType=1),系统会执行以下操作:

  1. 将当前班级的所有未删除的班主任记录标记为已删除(deleted=1)
  2. 设置原班主任记录的结束日期(endDate)为当前日期时间
  3. 创建新的班主任关联记录,设置开始日期(startDate)为当前日期时间
  4. 同步更新班级表中的班主任信息

这样确保了班主任更换记录的完整性,可以通过查看历史记录追踪班级班主任的变更情况。

请求示例

{
  "id": 1,
  "classId": 1001,
  "teacherId": 2002,
  "teacherName": "王老师",
  "relationType": 1,
  "remark": "高一年级新班主任"
}

响应结果

{
  "code": 200,
  "msg": "操作成功"
}

5. 删除班级教师关联

  • 接口URL: /teacherCounselorRel/classTeacherCounselorRel/{ids}
  • 请求方式: DELETE
  • 权限标识: teacherCounselorRel:classTeacherCounselorRel:remove

请求参数

参数名 类型 必填 位置 描述
ids Long[] 是 path 关联ID数组,多个以英文逗号分隔

响应结果

{
  "code": 200,
  "msg": "操作成功"
}

6. 导出班级教师关联数据

  • 接口URL: /teacherCounselorRel/classTeacherCounselorRel/export
  • 请求方式: POST
  • 权限标识: teacherCounselorRel:classTeacherCounselorRel:export
  • 响应类型: application/vnd.ms-excel

请求参数

参数名 类型 必填 位置 描述
classId Long 否 query 班级ID
relationType Integer 否 query 关联类型: 1-班主任, 2-辅导员

前端调用示例

设置班主任

// 导入API
import { addClassTeacherCounselorRel } from '@/api/xg/classTeacherCounselorRel';

// 构造数据
const teacherRelData = {
  classId: classId,
  teacherId: teacherId,
  teacherName: teacherName,
  relationType: 1 // 1表示班主任类型
};

// 调用API
try {
  await addClassTeacherCounselorRel(teacherRelData);
  this.$modal.msgSuccess('班主任设置成功');
} catch (error) {
  this.$modal.msgError('设置失败,请重试');
}

设置辅导员

// 导入API
import { addClassTeacherCounselorRel } from '@/api/xg/classTeacherCounselorRel';

// 构造数据
const counselorRelData = {
  classId: classId,
  counselorId: counselorId,
  counselorName: counselorName,
  relationType: 2 // 2表示辅导员类型
};

// 调用API
try {
  await addClassTeacherCounselorRel(counselorRelData);
  this.$modal.msgSuccess('辅导员设置成功');
} catch (error) {
  this.$modal.msgError('设置失败,请重试');
}

错误码说明

错误码 描述 解决方案
400 请求参数错误 检查请求参数是否正确
401 未授权 检查登录状态和权限
500 服务器内部错误 联系管理员

更新记录

日期 更新人 版本 变更内容
2025-07-24 zlwu 1.0.1 添加班主任更换机制说明,补充开始/结束日期字段
2025-07-24 zlwu 1.0.0 初始版本