index.js 5.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207
  1. const express = require("express");
  2. const router = express.Router();
  3. const CodeSerializer = require("../../serializers/assignment/CodeSerializer");
  4. const ProjectSerializer = require("../../serializers/assignment/ProjectSerializer");
  5. const CodeResultSerializer = require("../../serializers/assignment/CodeResultSerializer");
  6. const DocumentSerializer = require("../../serializers/assignment/DocumentSerializer");
  7. const DocumentResultSerializer = require("../../serializers/assignment/DocumentResultSerializer");
  8. const codeProcedureSerializer = require("../../serializers/assignment/CodeProcedureSerializer");
  9. const groupSerializer = require("../../serializers/course/GroupSerializer");
  10. const DocumentContentSerializer = require("../../serializers/assignment/DocumentContentSerializer");
  11. //新建代码作业
  12. router.route("/course/:courseId/code").post((req, res) => {
  13. res.send({
  14. code: 0,
  15. data: CodeSerializer()
  16. });
  17. });
  18. router
  19. .route("/code/:codeId")
  20. //更新代码作业信息
  21. .put((req, res) => {
  22. res.send({
  23. code: 0,
  24. data: CodeSerializer()
  25. });
  26. })
  27. //删除代码作业
  28. .delete((req, res) => {
  29. res.send({
  30. code: 0,
  31. data: {}
  32. });
  33. });
  34. //老师查看代码作业列表
  35. router.route("/teacher/course/:courseId/code").get((req, res) => {
  36. res.send({
  37. code: 0,
  38. data: [CodeSerializer(), CodeSerializer()]
  39. });
  40. });
  41. //老师查看单个代码作业
  42. router.route("/teacher/code/:codeId").get((req, res) => {
  43. res.send({
  44. code: 0,
  45. data: CodeSerializer()
  46. });
  47. });
  48. //学生查看代码作业列表
  49. router.route("/student/course/:courseId/code").get((req, res) => {
  50. res.send({
  51. code: 0,
  52. data: [CodeSerializer(), CodeSerializer()]
  53. });
  54. });
  55. //学生查看单个代码作业
  56. router.route("/student/code/:codeId").get((req, res) => {
  57. res.send({
  58. code: 0,
  59. data: CodeSerializer()
  60. });
  61. });
  62. //学生查看单个代码作业下的项目信息列表
  63. router.route("/student/code/:codeId/project").get((req, res) => {
  64. res.send({
  65. code: 0,
  66. data: [ProjectSerializer(), ProjectSerializer()]
  67. });
  68. });
  69. //老师查看单个代码作业下所有已提交组的过程统计信息
  70. router.route("/teacher/code/:codeId/submitted/procedure").get((req, res) => {
  71. res.send({
  72. code: 0,
  73. data: [codeProcedureSerializer(), codeProcedureSerializer()]
  74. });
  75. });
  76. //老师查看单个代码作业下所有未提交组的信息
  77. router.route("/teacher/code/:codeId/unsubmitted/groups").get((req, res) => {
  78. res.send({
  79. code: 0,
  80. data: [groupSerializer(), groupSerializer()]
  81. });
  82. });
  83. //老师查看单个代码作业的成绩列表(所有组的)
  84. router.route("/teacher/code/:codeId/result").get((req, res) => {
  85. res.send({
  86. code: 0,
  87. data: [CodeResultSerializer, CodeResultSerializer]
  88. });
  89. });
  90. //学生查看单个代码作业的成绩
  91. router.route("/student/code/:codeId/result").get((req, res) => {
  92. res.send({
  93. code: 0,
  94. data: CodeResultSerializer
  95. });
  96. });
  97. // Document
  98. //新建文档作业
  99. router.route("/course/:courseId/document").post((req, res) => {
  100. res.send({
  101. code: 0,
  102. data: DocumentSerializer()
  103. });
  104. });
  105. router
  106. .route("/document/:documentId")
  107. //更新文档作业信息
  108. .put((req, res) => {
  109. res.send({
  110. code: 0,
  111. data: DocumentSerializer()
  112. });
  113. })
  114. //删除文档作业
  115. .delete((req, res) => {
  116. res.send({
  117. code: 0,
  118. data: {}
  119. });
  120. });
  121. //老师查看文档作业列表
  122. router.route("/teacher/course/:courseId/document").get((req, res) => {
  123. res.send({
  124. code: 0,
  125. data: [DocumentSerializer(), DocumentSerializer()]
  126. });
  127. });
  128. //老师查看单个文档作业
  129. router.route("/teacher/document/:documentId").get((req, res) => {
  130. res.send({
  131. code: 0,
  132. data: DocumentSerializer()
  133. });
  134. });
  135. //学生查看文档作业列表
  136. router.route("/student/course/:courseId/document").get((req, res) => {
  137. res.send({
  138. code: 0,
  139. data: [DocumentSerializer(), DocumentSerializer()]
  140. });
  141. });
  142. //学生查看单个文档作业信息
  143. router.route("/student/document/:documentId").get((req, res) => {
  144. res.send({
  145. code: 0,
  146. data: DocumentSerializer()
  147. });
  148. });
  149. //老师查看文档作业的成绩列表(已提交小组)
  150. router
  151. .route("/teacher/document/:documentId/submitted/result")
  152. .get((req, res) => {
  153. res.send({
  154. code: 0,
  155. data: {
  156. status: "正在互评",
  157. result: [DocumentResultSerializer(), DocumentResultSerializer()]
  158. }
  159. });
  160. });
  161. //老师查看未提交文档作业小组列表
  162. router
  163. .route("/teacher/document/:documentId/unsubmitted/groups")
  164. .get((req, res) => {
  165. res.send({
  166. code: 0,
  167. data: [groupSerializer(), groupSerializer()]
  168. });
  169. });
  170. //学生查看文档作业的成绩
  171. router.route("/student/document/:documentId/result").get((req, res) => {
  172. res.send({
  173. code: 0,
  174. data: DocumentResultSerializer()
  175. });
  176. });
  177. router
  178. .route("/teacher/document/result/:documentResultId/content")
  179. .get((req, res) => {
  180. res.send({
  181. code: 0,
  182. data: DocumentContentSerializer()
  183. });
  184. });
  185. module.exports = router;