HomeWork.cs 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165
  1. using ProtoBuf;
  2. using System;
  3. using System.Collections.Generic;
  4. using System.ComponentModel.DataAnnotations;
  5. using System.Text;
  6. using TEAMModelOS.SDK.Context.Attributes.Azure;
  7. using TEAMModelOS.SDK.Module.AzureCosmosDBV3;
  8. using TEAMModelOS.Service.Models.Exam.Models;
  9. namespace TEAMModelOS.Service.Models.Learn
  10. {
  11. /// <summary>
  12. /// 作业
  13. /// </summary>
  14. [ProtoContract]
  15. [CosmosDB(RU = 400, Name = "HomeWork")]
  16. public class HomeWork:ID
  17. {
  18. public HomeWork()
  19. {
  20. target = new List<Target>();
  21. resource = new List<ProcessRes>();
  22. }
  23. [ProtoMember(1)]
  24. public string id { get; set; }
  25. [PartitionKey]
  26. [Required(ErrorMessage = "{0} 必须填写")]
  27. [ProtoMember(2)]
  28. public string scopeCode { get; set; }
  29. /// <summary>
  30. /// 作业名称
  31. /// </summary>
  32. [ProtoMember(3)]
  33. public string name { get; set; }
  34. /// <summary>
  35. /// 作业发布对象
  36. /// </summary>
  37. [ProtoMember(4)]
  38. public List<Target> target { get; set; }
  39. /// <summary>
  40. /// 发布模式 0 立即发布 1 定时
  41. /// </summary>
  42. [ProtoMember(5)]
  43. public string publishModel { get; set; }
  44. /// <summary>
  45. /// 开始时间
  46. /// </summary>
  47. [ProtoMember(6)]
  48. public long startTime { get; set; }
  49. /// <summary>
  50. /// 结束时间
  51. /// </summary>
  52. [ProtoMember(7)]
  53. public long endTime { get; set; }
  54. /// <summary>
  55. /// 作业反馈类型
  56. /// </summary>
  57. //public string feedbackType { get; set; }
  58. /// <summary>
  59. /// 题目
  60. /// </summary>
  61. //public List<ExamItem> ExamItem { get; set; }
  62. /// <summary>
  63. /// 作业描述
  64. /// </summary>
  65. [ProtoMember(8)]
  66. public string description { get; set; }
  67. /// <summary>
  68. /// 作业附件
  69. /// </summary>
  70. [ProtoMember(9)]
  71. public List<ProcessRes> resource { get; set; }
  72. /// <summary>
  73. /// 状态
  74. /// </summary>
  75. [ProtoMember(10)]
  76. public int state { get; set; }
  77. //public Subdto subdto { get; set; }
  78. /// <summary>
  79. /// 学生 是否互评 是否可见
  80. /// </summary>
  81. [ProtoMember(11)]
  82. public List<string> other { get; set; }
  83. //public class Subdto {
  84. // /// <summary>
  85. // /// 提交人数
  86. // /// </summary>
  87. // public int submitted { get; set; }
  88. // /// <summary>
  89. // /// 总人数
  90. // /// </summary>
  91. // public int sum { get; set; }
  92. //}
  93. /// <summary>
  94. /// 发布对象
  95. ///// </summary>
  96. //public class Target {
  97. // [Required(ErrorMessage = "{0} 必须填写")]
  98. // public string classroomCode { get; set; }
  99. // [Required(ErrorMessage = "{0} 必须填写")]
  100. // public string scopeCode { get; set; }
  101. // public string classroomName { get; set; }
  102. //}
  103. /// <summary>
  104. /// 作业附件
  105. /// </summary>
  106. //public class ProcessRes
  107. //{
  108. // /// <summary>
  109. // /// 文件名字
  110. // /// </summary>
  111. // public string fileName { get; set; }
  112. // /// <summary>
  113. // ///
  114. // /// </summary>
  115. // public string blobUrl { get; set; }
  116. // /// <summary>
  117. // /// 文件大小
  118. // /// </summary>
  119. // public long size { get; set; }
  120. // /// <summary>
  121. // /// 缩略图链接 图片视频有 文件没有
  122. // /// </summary>
  123. // public string compressUrl { get; set; }
  124. // /// <summary>
  125. // /// 文件类型
  126. // /// </summary>
  127. // public string type { get; set; }
  128. // public int order { get; set; }
  129. //}
  130. }
  131. }