LearnRecord.cs 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel.DataAnnotations;
  4. using System.Text;
  5. using TEAMModelOS.SDK.Context.Attributes.Azure;
  6. using TEAMModelOS.SDK.DI;
  7. namespace TEAMModelOS.Service.Models
  8. { /// <summary>
  9. /// 编序式和学习单元 作答记录
  10. /// </summary>
  11. [CosmosDB(Database = "TEAMModelOS",RU = 400, Name = "Student")]
  12. public class LearnRecord : ID
  13. {
  14. /// <summary>
  15. /// 学生id
  16. /// </summary>
  17. [PartitionKey]
  18. [Required(ErrorMessage = "{0} 必须填写")]
  19. public string code { get; set; }
  20. public string pk { get; set; }
  21. public int? ttl { get; set; }
  22. public LearnRecord() {
  23. steps = new List<RecordStep>();
  24. }
  25. /// <summary>
  26. /// learn学习任务id
  27. /// </summary>
  28. public string id { get; set; }
  29. public List<RecordStep> steps { get; set; }
  30. }
  31. public class RecordStep {
  32. public int index { get; set; }
  33. public int count { get; set; }
  34. public int score { get; set; }
  35. public RecordStep() {
  36. resource = new List<RecordRes>();
  37. }
  38. public List<RecordRes> resource { get; set; }
  39. public List<RecordAns> answer { get; set; }
  40. public long startTime { get; set; }
  41. public long endTime { get; set; }
  42. }
  43. /// <summary>
  44. /// 资源记录
  45. /// </summary>
  46. public class RecordRes
  47. {
  48. public int index { get; set; }
  49. /// <summary>
  50. /// 阅读时长 秒数
  51. /// </summary>
  52. public int costTime { get; set; } = 0;
  53. }
  54. /// <summary>
  55. /// 题目作答记录
  56. /// </summary>
  57. public class RecordAns
  58. {
  59. public RecordAns(){
  60. ans = new List<string>();
  61. }
  62. public int index { get; set; }
  63. List<string> ans { get; set; }
  64. /// <summary>
  65. /// 作答时长
  66. /// </summary>
  67. public int costTime { get; set; } = 0;
  68. }
  69. }