import request from "@/util/request"; import { ASSIGNMENT_MODULE } from "./_prefix"; /* 代码作业*/ /** * 老师新建代码作业 * @param type * @param name * @param description * @param startAt * @param endAt * @param problem * @param courseId * @returns {Promise<{data:CodeSerializerType}>} */ export const postCodeAssignment = ( { type, name, description, startAt, endAt, problem }, courseId ) => { return request(`${ASSIGNMENT_MODULE}/course/${courseId}/code`, { method: "POST", body: { type: type || null, name: name || null, description: description || null, startAt: startAt || null, endAt: endAt || null, problem: problem || null } }); }; /** * 老师更新代码作业信息 * @param name * @param description * @param startAt * @param endAt * @param codeId * @returns {Promise<{data:CodeSerializerType}>} */ export const putCodeAssignment = ( { name, description, startAt, endAt }, codeId ) => { return request(`${ASSIGNMENT_MODULE}/code/${codeId}`, { method: "PUT", body: { name: name || null, description: description || null, startAt: startAt || null, endAt: endAt || null } }); }; /** * 老师删除代码作业 * @param codeId * @returns {Promise<{}>} */ export const delCodeAssignment = codeId => { return request(`${ASSIGNMENT_MODULE}/code/${codeId}`, { method: "DELETE" }); }; /** * 老师查看代码作业列表 * @param courseId * @returns {Promise<{data:CodeSerializerType[]}>} */ export const getCodeAssignmentListByTeacher = courseId => { return request(`${ASSIGNMENT_MODULE}/teacher/course/${courseId}/code`); }; /** * 老师查看单个代码作业 * @param codeId * @returns {Promise<{data:CodeSerializerType}>} */ export const getCodeAssignmentByTeacher = codeId => { return request(`${ASSIGNMENT_MODULE}/teacher/code/${codeId}`); }; /** * 学生查看代码作业列表 * @param courseId * @returns {Promise<{data:CodeSerializerType[]}>} */ export const getCodeAssignmentListByStu = courseId => { return request(`${ASSIGNMENT_MODULE}/student/course/${courseId}/code`); }; /** * 学生查看单个代码作业 * @param codeId * @returns {Promise<{data:CodeSerializerType}>} */ export const getCodeAssignmentByStu = codeId => { return request(`${ASSIGNMENT_MODULE}/student/code/${codeId}`); }; /** * 学生查看单个代码作业下的成绩 * @param codeId * @returns {Promise<{data:CodeResultSerializerType}>} */ export const getCodeResultByCode = codeId => { return request(`${ASSIGNMENT_MODULE}/student/code/${codeId}/result`); }; /** * 老师查看单个代码作业下所有已提交组的过程统计信息 * @param codeId * @returns {Promise<{data:CodeProcedureSerializerType[]}>} */ export const getCodeProcedureListByCodeId = codeId => { return request( `${ASSIGNMENT_MODULE}/teacher/code/${codeId}/submitted/procedure` ); }; /** * 老师查看单个代码作业下所有未提交组的信息 * @param codeId * @returns {Promise<{data:GroupSerializerType[]}>} */ export const getUnsubmittedCodeGroupsList = codeId => { return request( `${ASSIGNMENT_MODULE}/teacher/code/${codeId}/unsubmitted/groups` ); }; /* 文档作业*/ /** * 老师新建文档作业 * @param type * @param name * @param description * @param startAt * @param endAt * @param problem * @param courseId * @returns {Promise<{data:DocumentSerializerType}>} */ export const postDocAssignment = ( { type, name, description, startAt, endAt, problem }, courseId ) => { return request(`${ASSIGNMENT_MODULE}/course/${courseId}/document`, { method: "POST", body: { type: type || null, name: name || null, description: description || null, startAt: startAt || null, endAt: endAt || null, problem: problem || null } }); }; /** * 老师更新文档作业信息 * @param name * @param description * @param startAt * @param endAt * @param documentId * @returns {Promise<{data:DocumentSerializerType}>} */ export const putDocAssignment = ( { name, description, startAt, endAt }, documentId ) => { return request(`${ASSIGNMENT_MODULE}/document/${documentId}`, { method: "PUT", body: { name: name || null, description: description || null, startAt: startAt || null, endAt: endAt || null } }); }; /** * 老师删除文档作业 * @param documentId * @returns {Promise<{}>} */ export const delDocAssignment = documentId => { return request(`${ASSIGNMENT_MODULE}/document/${documentId}`, { method: "DELETE" }); }; /** * 老师查看文档作业列表 * @param courseId * @returns {Promise<{data:DocumentSerializerType[]}>} */ export const getDocAssignmentListTeacherByCrs = courseId => { return request(`${ASSIGNMENT_MODULE}/teacher/course/${courseId}/document`); }; /** * 老师查看单个文档作业 * @param documentId * @returns {Promise<{data:DocumentSerializerType}>} */ export const getDocAssignmentTeacherByCrs = documentId => { return request(`${ASSIGNMENT_MODULE}/teacher/document/${documentId}`); }; /** * 学生查看文档作业列表 * @param courseId * @returns {Promise<{data:DocumentSerializerType[]}>} */ export const getDocAssignmentListByCrs = courseId => { return request(`${ASSIGNMENT_MODULE}/student/course/${courseId}/document`); }; /** * 学生查看单个文档作业信息 * @param documentId * @returns {Promise<{data:DocumentSerializerType}>} */ export const getDocAssignmentDetailByDocuId = documentId => { return request(`${ASSIGNMENT_MODULE}/student/document/${documentId}`); }; /** * 学生查看单个文档作业下的成绩 * @param documentId * @returns {Promise<{data:DocumentResultSerializerType}>} */ export const getDocResultById = documentId => { return request(`${ASSIGNMENT_MODULE}/student/document/${documentId}/result`); }; /** * 老师查看文档作业的成绩列表(已提交小组) * @param documentId * @returns {Promise<{data:DocumentResultSerializerType[]}>} */ export const getSubmittedDocResultListByDocId = documentId => { return request( `${ASSIGNMENT_MODULE}/teacher/document/${documentId}/submitted/result` ); }; /** * 老师查看未提交文档作业小组列表 * @param documentId * @returns {Promise<{data:GroupSerializerType[]}>} */ export const getUnsubmittedDocGroupsByDocId = documentId => { return request( `${ASSIGNMENT_MODULE}/teacher/document/${documentId}/unsubmitted/groups` ); }; /** * 老师查看小组文档作业的内容 * @param documentId * @return {Promise} */ export const getDocContentByDocId = documentResultId => { return request( `${ASSIGNMENT_MODULE}/teacher/document/result/${documentResultId}/content` ); };