ResultstatisticsSerializer.js 1003 B

123456789101112131415161718192021222324252627282930
  1. const makeId = require("../../util/makeId");
  2. const userSerializer = require("../user/UserSerializer");
  3. const nestedScoreSerializer = require("./NestedScoreSerializer");
  4. /**
  5. * @description 作业成绩统计的基本信息
  6. * @typedef {Object} ResultstaticsSerializerType
  7. * @property {number} id 成绩统计id
  8. * @property {UserSerializerType} user 学生信息
  9. * @property {NestedScoreSerializerType[]} documents 作业成绩
  10. * @property {NestedScoreSerializerType[]} reviews 互评作业成绩
  11. * @property {NestedScoreSerializerType[]} codes 代码作业成绩
  12. */
  13. /**
  14. * @description 生成作业成绩基本信息
  15. * @returns {ResultstaticsSerializerType}
  16. */
  17. module.exports = () => {
  18. return {
  19. id: makeId(),
  20. user: userSerializer(),
  21. documents: [
  22. nestedScoreSerializer(),
  23. nestedScoreSerializer(),
  24. nestedScoreSerializer()
  25. ],
  26. reviews: [nestedScoreSerializer(), nestedScoreSerializer()],
  27. codes: [nestedScoreSerializer(), nestedScoreSerializer()]
  28. };
  29. };