LearningAutonomous.cs 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169
  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.Module.AzureCosmosDBV3;
  7. using TEAMModelOS.Service.Models.Exam.Models;
  8. namespace TEAMModelOS.Service.Models.Learn
  9. {
  10. /// <summary>
  11. /// 自主学习
  12. /// </summary>
  13. [CosmosDB(RU = 400, Name = "LearningAutonomous")]
  14. public class LearningAutonomous:ID
  15. {
  16. public int? ttl { get; set; }
  17. public LearningAutonomous()
  18. {
  19. target = new List<Target>();
  20. steps = new List<ProcessStep>();
  21. }
  22. public string id { get; set; }
  23. /// <summary>
  24. /// 活动名称
  25. /// </summary>
  26. public string name { get; set; }
  27. /// <summary>
  28. /// 学科code
  29. /// </summary>
  30. [Required(ErrorMessage = "{0} 必须填写")]
  31. public string subjectCode { get; set; }
  32. /// <summary>
  33. /// 学段code
  34. /// </summary>
  35. [Required(ErrorMessage = "{0} 必须填写")]
  36. public string periodCode { get; set; }
  37. /// <summary>
  38. /// 活动介绍
  39. /// </summary>
  40. [Required(ErrorMessage = "{0} 必须填写")]
  41. public string Introduce { get; set; }
  42. /// <summary>
  43. /// 学习对象
  44. /// </summary>
  45. [Required(ErrorMessage = "{0} 必须填写")]
  46. public List<Target> target { get; set; }
  47. [Required(ErrorMessage = "{0} 必须填写")]
  48. [PartitionKey]
  49. public string scopeCode { get; set; }
  50. /// <summary>
  51. /// 步骤
  52. /// </summary>
  53. public List<ProcessStep> steps { get; set; }
  54. /// <summary>
  55. /// 是否闯关模式 0 或 1 vue组件不支持true false
  56. /// </summary>
  57. [Required(ErrorMessage = "{0} 必须填写")]
  58. public string isOrder { get; set; }
  59. /// <summary>
  60. /// 状态
  61. /// </summary>
  62. public int state { get; set; }
  63. /// <summary>
  64. /// 发布模式 0 立即发布 1 定时
  65. /// </summary>
  66. public string publishModel { get; set; }
  67. /// <summary>
  68. /// 创建时间
  69. /// </summary>
  70. public long createTime { get; set; }
  71. /// <summary>
  72. /// 创建者
  73. /// </summary>
  74. [Required(ErrorMessage = "{0} 必须填写")]
  75. public string creator { get; set; }
  76. /// <summary>
  77. /// 开始时间
  78. /// </summary>
  79. public long startTime { get; set; }
  80. /// <summary>
  81. /// 截至时间 时间戳
  82. /// </summary>
  83. public int endTime { get; set; }
  84. //public class Target
  85. //{
  86. // public string classroomCode { get; set; }
  87. // public string scopeCode { get; set; }
  88. // public string classroomName { get; set; }
  89. //}
  90. public class ProcessStep
  91. {
  92. public ProcessStep()
  93. {
  94. resource = new List<ProcessRes>();
  95. item = new List<ExamItem>();
  96. }
  97. /// <summary>
  98. /// 资源内容
  99. /// [{"name":"","url":"","order":""}]
  100. /// </summary>
  101. public List<ProcessRes> resource { get; set; }
  102. /// <summary>
  103. /// 题目
  104. /// </summary>
  105. public List<ExamItem> item { get; set; }
  106. [Required(ErrorMessage = "{0} 必须填写")]
  107. public string name { get; set; }
  108. }
  109. //public class ProcessRes
  110. //{
  111. // /// <summary>
  112. // /// 文件名字
  113. // /// </summary>
  114. // [Required(ErrorMessage = "{0} 必须填写")]
  115. // public string fileName { get; set; }
  116. // /// <summary>
  117. // ///
  118. // /// </summary>
  119. // [Required(ErrorMessage = "{0} 必须填写")]
  120. // public string blobUrl { get; set; }
  121. // public int order { get; set; }
  122. // /// <summary>
  123. // /// 文件大小
  124. // /// </summary>
  125. // public long size { get; set; }
  126. // /// <summary>
  127. // /// 缩略图链接 图片视频有 文件没有
  128. // /// </summary>
  129. // public string compressUrl { get; set; }
  130. // /// <summary>
  131. // /// 文件类型
  132. // /// </summary>
  133. // public string type { get; set; }
  134. //}
  135. }
  136. }