LearnRecord.cs 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. using Newtonsoft.Json;
  2. using System;
  3. using System.Collections.Generic;
  4. using System.Linq;
  5. using System.Text;
  6. using System.Text.Json;
  7. using System.Threading.Tasks;
  8. namespace TEAMModelOS.SDK.Models.Cosmos.Common
  9. {
  10. /// <summary>
  11. /// 儲存學習記錄blob的格式
  12. /// </summary>
  13. public class LearnRecordItem
  14. {
  15. public LearnRecordItem()
  16. {
  17. Points = new List<string>();
  18. Choices = new List<ChoicesItem>();
  19. }
  20. // EndExam, AnsSingle, AnsMultiple, AnsBuzzin, AnsJudge, AnsComplete, AnsSubjective, SubmitTask, SubmitHomework, PostDiscussion, ReponseDisucss
  21. // 結束課堂, 單選, 複選, 搶權, 是非, 填充, 問答, 交作品, 交作業(IES5), 發起討論IES5討論區), 討論回應(IES5討論區)
  22. public string verb { get; set; }
  23. //時間戳記
  24. public long time { get; set; }
  25. // TMID直接放, 校內帳號用組合的 "Base-hbgl,473891247381"
  26. public string actor { get; set; }
  27. // 唯一碼 (考試ExamID, 題目QID, 任務PageID, 互動題PageID)
  28. public string ID { get; set; }
  29. // 文字標題或描述或題目
  30. public string Desc { get; set; }
  31. // 知識點陣列, 裡面放字串, 相當於關鍵詞
  32. public List<string> Points { get; set; }
  33. //正確答案, 複選可以放多個
  34. public object Correct { get; set; }
  35. //選項內容, 純文字, 沒有就放空的
  36. public List<ChoicesItem> Choices { get; set; }
  37. // 考試卷題數, 若無放 null
  38. public int? ExamQuesQty { get; set; }
  39. // 考試卷總分, 若無放 null
  40. public double? TotalScore { get; set; }
  41. // 單題答對與否, 若無放 null
  42. public bool? Success { get; set; }
  43. }
  44. public class ChoicesItem
  45. {
  46. public ChoicesItem()
  47. {
  48. description = new ItemDesc();
  49. }
  50. public string id { get; set; }
  51. public ItemDesc description { get; set; }
  52. }
  53. public class ItemDesc
  54. {
  55. [JsonProperty("zh-TW")]
  56. public string? zhTW { get; set; }
  57. }
  58. }