index.js 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159
  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. //新建代码作业
  11. router.route("/course/:courseId/code").post((req, res) => {
  12. res.send({
  13. data: CodeSerializer()
  14. });
  15. });
  16. router
  17. .route("/code/:codeId")
  18. //更新代码作业信息
  19. .put((req, res) => {
  20. res.send({
  21. data: CodeSerializer()
  22. });
  23. })
  24. //删除代码作业
  25. .delete((req, res) => {
  26. res.send({
  27. data: {}
  28. });
  29. });
  30. //老师查看代码作业列表
  31. router.route("/teacher/course/:courseId/code").get((req, res) => {
  32. res.send({
  33. data: [CodeSerializer(), CodeSerializer()]
  34. });
  35. });
  36. //学生查看代码作业列表
  37. router.route("/student/course/:courseId/code").get((req, res) => {
  38. res.send({
  39. data: [CodeSerializer(), CodeSerializer()]
  40. });
  41. });
  42. //学生查看单个代码作业
  43. router.route("/student/code/:codeId").get((req, res) => {
  44. res.send({
  45. data: CodeSerializer()
  46. });
  47. });
  48. //学生查看单个代码作业下的项目信息列表
  49. router.route("/student/code/:codeId/project").get((req, res) => {
  50. res.send({
  51. data: [ProjectSerializer(), ProjectSerializer()]
  52. });
  53. });
  54. //老师查看单个代码作业下所有已提交组的过程统计信息
  55. router.route("/teacher/code/:codeId/submitted/procedure").get((req, res) => {
  56. res.send({
  57. data: [codeProcedureSerializer(), codeProcedureSerializer()]
  58. });
  59. });
  60. //老师查看单个代码作业下所有未提交组的信息
  61. router.route("/teacher/code/:codeId/unsubmitted/groups").get((req, res) => {
  62. res.send({
  63. data: [groupSerializer(), groupSerializer()]
  64. });
  65. });
  66. //老师查看单个代码作业的成绩列表(所有组的)
  67. router.route("/teacher/code/:codeId/result").get((req, res) => {
  68. res.send({
  69. data: [CodeResultSerializer, CodeResultSerializer]
  70. });
  71. });
  72. //学生查看单个代码作业的成绩
  73. router.route("/student/code/:codeId/result").get((req, res) => {
  74. res.send({
  75. data: CodeResultSerializer
  76. });
  77. });
  78. // Document
  79. //新建文档作业
  80. router.route("/course/:courseId/document").post((req, res) => {
  81. res.send({
  82. data: DocumentSerializer()
  83. });
  84. });
  85. router
  86. .route("/document/:documentId")
  87. //更新文档作业信息
  88. .put((req, res) => {
  89. res.send({
  90. data: DocumentSerializer()
  91. });
  92. })
  93. //删除文档作业
  94. .delete((req, res) => {
  95. res.send({
  96. data: {}
  97. });
  98. });
  99. //老师查看文档作业列表
  100. router.route("/teacher/course/:courseId/document").get((req, res) => {
  101. res.send({
  102. data: [DocumentSerializer(), DocumentSerializer()]
  103. });
  104. });
  105. //学生查看文档作业列表
  106. router.route("/student/course/:courseId/document").get((req, res) => {
  107. res.send({
  108. data: [DocumentSerializer(), DocumentSerializer()]
  109. });
  110. });
  111. //学生查看单个文档作业信息
  112. router.route("/student/document/:documentId").get((req, res) => {
  113. res.send({
  114. data: DocumentSerializer()
  115. });
  116. });
  117. //老师查看文档作业的成绩列表(已提交小组)
  118. router
  119. .route("/teacher/document/:documentId/submitted/result")
  120. .get((req, res) => {
  121. res.send({
  122. status: "正在互评",
  123. data: [DocumentResultSerializer(), DocumentResultSerializer()]
  124. });
  125. });
  126. //老师查看未提交文档作业小组列表
  127. router
  128. .route("/teacher/document/:documentId/unsubmitted/groups")
  129. .get((req, res) => {
  130. res.send({
  131. data: [groupSerializer(), groupSerializer()]
  132. });
  133. });
  134. //学生查看文档作业的成绩
  135. router.route("/student/document/:documentId/result").get((req, res) => {
  136. res.send({
  137. data: DocumentResultSerializer()
  138. });
  139. });
  140. module.exports = router;