teacher.js
6.32 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
/*
* @Date: 2025-06-23 11:46:21
* @LastEditors: hookehuyr hookehuyr@gmail.com
* @LastEditTime: 2025-12-01 14:13:18
* @FilePath: /mlaj/src/api/teacher.js
* @Description: 文件描述
*/
import { fn, fetch } from './fn'
const Api = {
TEACHER_GRADE_CLASS_LIST: '/srv/?a=user&t=teacher_grade_class_group_list',
TEACHER_FIND_SETTINGS: '/srv/?a=task&t=teacher_find_settings',
TEACHER_ADD_TASK: '/srv/?a=task&t=teacher_add',
TEACHER_LIST_TASK: '/srv/?a=task&t=teacher_list',
TEACHER_DETAIL_TASK: '/srv/?a=task&t=teacher_detail',
STUDENT_LIST: '/srv/?a=user&t=student_list',
STUDENT_DETAIL: '/srv/?a=user&t=student_detail',
STUDENT_STAT: '/srv/?a=user&t=student_stat',
STUDENT_CHECKIN_LIST: '/srv/?a=checkin&t=student_checkin_list',
STUDENT_UPLOAD_LIST: '/srv/?a=checkin&t=student_upload_list',
STUDENT_CHECKIN_FEEDBACK_LIST: '/srv/?a=feedback&t=list',
ADD_CHECKIN_FEEDBACK: '/srv/?a=feedback&t=add',
DEL_CHECKIN_FEEDBACK: '/srv/?a=feedback&t=del',
}
/**
* 获取老师的年级、班级、课程列表信息
* @param {*} group_id 课程ID,用来缩小大分组的筛选范围
* @param {*} team_id 大分组ID,用来缩小大分组的筛选范围
* @returns {Object} data { grade_list [{id, grade_name}], class_list [{id, class_name}], group_list [{id, title}], team_list [{id, team_name}], subteam_list [{id, subteam_name}] }
*/
export const getTeacherGradeClassListAPI = (params) => fn(fetch.get(Api.TEACHER_GRADE_CLASS_LIST, params))
/**
* 获取老师查询作业参数
* @returns {Object} data { group_list [{id, title, schedule_list[{id, title}], team_list[{id, team_name, subteam_list[{id, subteam_name}]}]}], task_type, task_frequency }
*/
export const getTeacherFindSettingsAPI = (params) => fn(fetch.get(Api.TEACHER_FIND_SETTINGS, params))
/**
* 老师设置作业
* @param {*} title 作业名称
* @param {*} begin_date 开始日期
* @param {*} end_date 结束日期
* @param {*} target_number 目标总数
* @param {*} class_id 班级ID
* @param {*} group_id 年级ID
* @param {*} lesson_id 课程ID
* @param {*} task_type 任务类型
* @param {*} cycle 作业周期, 0=本周期 30=每月 7=每周 1=每日
* @param {*} frequency 每周期提交数量
* @param {*} attachment_type 提交类型, text=文本 image=图片 video=视频 audio=音频
* @param {*} target_number 目标总数
* @param {*} schedule[{id, begin_date, end_date}] 批量设置课程目录的作业
* @returns {Object} data { id }
*/
export const setTeacherTaskAPI = (params) => fn(fetch.post(Api.TEACHER_ADD_TASK, params))
/**
* 获取老师的作业列表
* @param {*} group_id 课程ID
* @param {*} team_id 大分组ID
* @param {*} subteam_id 小分组ID
* @param {*} limit 条数 100
* @param {*} page 页码 0
* @returns {Object} data {
* id integer 作业id
* title string 作业名称
* cycle string 作业周期 0=本周期 30=每月 7=每周 1=每日
* frequency integer 每周期交作业的次数
* attachment_type array[string] 提交类型 text=文本 image=图片 video=视频 audio=音频
* begin_date string 开始时间
* end_date number 结束时间
* task_type string 任务类型 checkin=签到 file=上传附件
* }
*/
export const getTeacherTaskListAPI = (params) => fn(fetch.get(Api.TEACHER_LIST_TASK, params))
/**
* 获取老师的作业详情
* @param {*} id 作业ID
* @param {*} date 日期。默认是今天 示例值: [""]
* @returns {Object} data {
* id integer 作业id
* begin_date string 开始时间
* end_date string 结束时间
* task_type string 任务类型 checkin=签到 file=上传附件
* title string 作业名称
* cycle string 作业周期 0=本周期 30=每月 7=每周 1=每日
* frequency integer 每周期交作业的次数
* attachment_type array[string] 提交类型 text=文本 image=图片 video=视频 audio=音频
* note string 作业描述
* need_commit_count integer 需要提交次数
* real_commit_count integer 已提交次数
* user_list [{id 用户ID, name 姓名, avatar 头像, is_commit 是否提交了作业}]
* }
*/
export const getTeacherTaskDetailAPI = (params) => fn(fetch.get(Api.TEACHER_DETAIL_TASK, params))
/**
* 获取学员列表
* @param {*} grade_id 年级ID
* @param {*} class_id 班级ID
* @param {*} keyword 搜索
* @param {*} limit
* @param {*} page
* @returns {Object} data { count, user_list[{id, name, avatar, mobile, class_list[{id, class_name}], last_checkin_time, last_checkin_time_desc}] }
*/
export const getStudentListAPI = (params) => fn(fetch.get(Api.STUDENT_LIST, params))
/**
* 获取学员详情
* @param {*} i 学员ID
* @returns {Object} data { id, name, avatar, mobile, grade_list[{id, grade_name, class_list[{id, class_name}]}], lesson_list[{id, title}] }
*/
export const getStudentDetailAPI = (params) => fn(fetch.get(Api.STUDENT_DETAIL, params))
/**
* 获取学员打卡统计
* @param {*} user_id 学员ID
* @param {*} group_id 课程ID
* @param {*} limit 条数
* @param {*} page 页码
* @returns {Object} data { date, time, serial_number, status }
*/
export const getStudentCheckinListAPI = (params) => fn(fetch.get(Api.STUDENT_CHECKIN_LIST, params))
/**
* 获取学员作业记录
* @param {*} user_id 学员ID
* @param {*} group_id 课程ID
* @param {*} limit 条数
* @param {*} page 页码
* @returns {Object} data
*/
export const getStudentUploadListAPI = (params) => fn(fetch.get(Api.STUDENT_UPLOAD_LIST, params))
/**
* 获取老师点评列表
* @param {*} user_id 学员ID
* @param {*} group_id 课程ID
* @param {*} limit 条数
* @param {*} page 页码
* @returns {Object} data
*/
export const getCheckinFeedbackListAPI = (params) => fn(fetch.get(Api.STUDENT_CHECKIN_FEEDBACK_LIST, params))
/**
* 老师点评
* @param {*} checkin_id 打卡ID
* @param {*} note 点评内容
* @param {*} rate 点评分数
* @returns {Object} data { id }
*/
export const addCheckinFeedbackAPI = (params) => fn(fetch.post(Api.ADD_CHECKIN_FEEDBACK, params))
/**
* 老师删除点评
* @param {*} id 点评ID
* @returns {Object} data { id }
*/
export const delCheckinFeedbackAPI = (params) => fn(fetch.post(Api.DEL_CHECKIN_FEEDBACK, params))
/**
* 学员学习数据
* @param {*} i 学员ID
* @param {*} group_id 课程ID
* @returns {Object} data { need_checkin_count, real_checkin_count, need_upload_count, real_upload_count }
*/
export const getStudentStatAPI = (params) => fn(fetch.post(Api.STUDENT_STAT, params))