Просмотр исходного кода

refactor: 修改部分api的url

ChenSiTong 6 лет назад
Родитель
Сommit
cda7838505
5 измененных файлов с 38 добавлено и 28 удалено
  1. 1 1
      src/config/server-info.js
  2. 8 10
      src/server/course.js
  3. 5 5
      src/server/notice.js
  4. 7 5
      src/server/quiz.js
  5. 17 7
      src/server/slide.js

+ 1 - 1
src/config/server-info.js

@@ -6,7 +6,7 @@ const wsHost = process.env.NODE_ENV === 'development' ? 'ws://localhost:8080' :
 const slideUrl = host + '/api/slide'
 const useSlideServer = postfix => postfix ? slideUrl + postfix : slideUrl
 
-const courseFileUrl = host + '/api/courseFile'
+const courseFileUrl = host + '/api/course-file'
 const useCourseFileServer = postfix => postfix ? courseFileUrl + postfix : courseFileUrl
 
 const courseUrl = host + '/api/course'

+ 8 - 10
src/server/course.js

@@ -17,48 +17,46 @@ export function createCourse({ name, bio, code }) {
 
 export function removeCourse({ courseId }) {
   return axios
-    .delete(useCourseServer('/' + courseId))
+    .delete(useCourseServer(`/${courseId}`))
     .then(res => {})
 }
 
 export function modifyCourse({ id, name, bio, code }) {
   const data = {
-    id,
     name,
     bio,
     code
   }
 
   return axios
-    .put(useCourseServer(), data)
+    .put(useCourseServer(`/${id}`), data)
     .then(res => res.data)
 }
 
 export function chooseCourse({ courseId, code }) {
   const data = {
-    courseId,
     code
   }
 
   return axios
-    .post(useCourseServer('/choose'), data)
+    .post(useCourseServer(`/${courseId}/choose`), data)
     .then(res => {})
 }
 
 export function quitCourse({ courseId }) {
   return axios
-    .post(useCourseServer('/quit/') + courseId)
+    .post(useCourseServer(`/${courseId}/quit`))
 }
 
 export function getCourseCode({ courseId }) {
   return axios
-    .get(useCourseServer() + '/' + courseId + '/code')
+    .get(useCourseServer(`/${courseId}/code`))
     .then(res => res.data)
 }
 
 export function getCourses({ key = '', page = 1, size = 10, sort = '' }) {
   return axios
-    .get(useCourseServer(), {
+    .get(useCourseServer('/all'), {
       params: {
         key,
         page,
@@ -71,7 +69,7 @@ export function getCourses({ key = '', page = 1, size = 10, sort = '' }) {
 
 export function teacherGetCourses({ key = '', page = 1, size = 10, sort = '' }) {
   return axios
-    .get(useCourseServer('/teacher'), {
+    .get(useCourseServer(), {
       params: {
         key,
         page,
@@ -84,7 +82,7 @@ export function teacherGetCourses({ key = '', page = 1, size = 10, sort = '' })
 
 export function studentGetCourses({ key = '', page = 1, size = 10, sort = '' }) {
   return axios
-    .get(useCourseServer('/student'), {
+    .get(useCourseServer(), {
       params: {
         key,
         page,

+ 5 - 5
src/server/notice.js

@@ -16,20 +16,18 @@ export function createNotice ({ courseId, title, content }) {
 
 export function modifyNotice ({ id, courseId, title, content }) {
   const data = {
-    id,
-    courseId,
     title,
     content
   }
 
   return axios
-    .put(useNoticeServer(), data)
+    .put(useNoticeServer(`/${id}`), data)
     .then(res => res.data)
 }
 
 export function deleteNotice ({ noticeId }) {
   return axios
-    .delete(useNoticeServer('/' + noticeId))
+    .delete(useNoticeServer(`/${noticeId}`))
     .then(res => res.data)
 }
 
@@ -37,7 +35,9 @@ export function getNotices ({ courseId, key = '', page = 1, size = 100, sort = '
   const params = generateSearchParams({ key, page, size, sort })
   params.append('courseId', courseId)
   return axios
-    .get(useNoticeServer('/course/' + courseId))
+    .get(useNoticeServer('/course/' + courseId), {
+      params
+    })
     .then(res => res.data)
 }
 

+ 7 - 5
src/server/quiz.js

@@ -5,14 +5,14 @@ import generateSearchParams from '@/server/utils/generate-search-params'
 // 教师获取测试列表
 export function teacherGetQuizzes ({ slideId, key = '', page = 1, size = 200, sort = '' }) {
   const params = generateSearchParams({ key, page, size, sort })
-  return axios.get(useQuizServer('/teacher/slide/' + slideId), { params })
+  return axios.get(useQuizServer('/slide/' + slideId), { params })
     .then(res => res.data)
 }
 
 // 学生获取测试列表
 export function studentGetQuizzes ({ slideId, key = '', page = 1, size = 100, sort = '' }) {
   const params = generateSearchParams({ key, page, size, sort })
-  return axios.get(useQuizServer('/student/slide/' + slideId), { params })
+  return axios.get(useQuizServer('/slide/' + slideId), { params })
     .then(res => res.data)
 }
 
@@ -20,7 +20,7 @@ export function studentGetQuizzes ({ slideId, key = '', page = 1, size = 100, so
 export function studentGetQuizzesByState ({ state, key = '', page = 1, size = 100, sort = '' }) {
   const params = generateSearchParams({ key, page, size, sort })
   params.append('state', state)
-  return axios.get(useQuizServer('/student'), { params })
+  return axios.get(useQuizServer('/state'), { params })
     .then(res => res.data)
 }
 
@@ -42,11 +42,13 @@ export function createQuiz ({ name, type, slideId, questions, maxSubmitTime = '5
 export function updateQuiz ({
   id, // 考试 id
   name, // 测试名
-  quizTime, // 测试时间
+  // quizTime, // 测试时间
   slideId, // 幻灯片 id
+  type,
+  maxSubmitTime,
   questions = [] // 题目 id;
 }) {
-  const data = { id, name, quizTime, slideId, questions }
+  const data = { name, type, maxSubmitTime, slideId, questions }
   return axios
     .put(useQuizServer(`/${id}`), data)
     .then(res => res.data)

+ 17 - 7
src/server/slide.js

@@ -27,27 +27,37 @@ export function removeSlide({ id }) {
 
 export function modifySlide({ id, name }) {
   const data = {
-    id,
     name
   }
   return axios
-    .put(useSlideServer(), data)
+    .put(useSlideServer(`/${id}`), data)
     .then(res => res.data)
 }
 
 export function modifySlideState({ id, state }) {
   const data = {
-    id,
     state
   }
   return axios
-    .put(useSlideServer('/state'), data)
+    .put(useSlideServer(`/${id}/state`), data)
+    .then(res => res.data)
+}
+
+export function modifySlideFile({ id, file }) {
+  let data = new FormData()
+  data.append('file', file)
+  return axios
+    .put(useSlideServer(`/${id}/file`), data, {
+      headers: {
+        'Content-Type': 'multipart/form-data'
+      }
+    })
     .then(res => res.data)
 }
 
 export function teacherGetSlides({ key = '', page = 1, size = 10, sort = '' }) {
   return axios
-    .get(useSlideServer('/teacher'), {
+    .get(useSlideServer(), {
       params: {
         key,
         page,
@@ -60,7 +70,7 @@ export function teacherGetSlides({ key = '', page = 1, size = 10, sort = '' }) {
 
 export function teacherGetSlidesByCourse({ courseId, key = '', page = 1, size = 10, sort = '' }) {
   return axios
-    .get(useSlideServer('/teacher/course/' + courseId), {
+    .get(useSlideServer('/course/' + courseId), {
       params: {
         key,
         page,
@@ -73,7 +83,7 @@ export function teacherGetSlidesByCourse({ courseId, key = '', page = 1, size =
 
 export function studentGetSlidesByCourse({ courseId, key = '', page = 1, size = 10, sort = '' }) {
   return axios
-    .get(useSlideServer('/student/course/' + courseId), {
+    .get(useSlideServer('/course/' + courseId), {
       params: {
         key,
         page,