ExamInfo.cs 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120
  1. using DocumentFormat.OpenXml.Bibliography;
  2. using Newtonsoft.Json;
  3. using System;
  4. using System.Collections.Generic;
  5. using System.ComponentModel.DataAnnotations;
  6. using System.Text;
  7. using System.Text.Json.Serialization;
  8. using TEAMModelOS.SDK.Context.Attributes.Azure;
  9. using TEAMModelOS.SDK.DI;
  10. namespace TEAMModelFunction
  11. {
  12. /// <summary>
  13. /// 考试基础信息
  14. /// </summary>
  15. //[CosmosDB(Database = "TEAMModelOS", Name = "School")]
  16. public class ExamInfo : ID
  17. {
  18. [PartitionKey]
  19. [Required(ErrorMessage = "{0} 必须填写")]
  20. public string code { get; set; }
  21. public string pk { get; set; }
  22. public int? ttl { get; set; }
  23. public ExamInfo() {
  24. period = new PeriodSimple();
  25. grades = new List<Grade>();
  26. subjects = new List<Subject>();
  27. papers = new List<PaperSimple>();
  28. targetClassIds = new List<string>();
  29. }
  30. [JsonProperty(PropertyName = "id")]
  31. public string id { get; set; }
  32. public string name { get; set; }
  33. public string school { get; set; }
  34. public string creatorId { get; set; }
  35. public int stuCount { get; set; }
  36. /* //实际考试人数
  37. public int realCount { get; set; }
  38. //平均分
  39. public double piont { get; set; }*/
  40. //指标
  41. //public double index { get; set; }
  42. public long createTime { get; set; }
  43. //public string examCode { get; set; }
  44. /// <summary>
  45. /// 施测起始时间
  46. /// </summary>
  47. public long startTime { get; set; }
  48. /// <summary>
  49. /// 施测结束时间
  50. /// </summary>
  51. public long endTime { get; set; }
  52. /// <summary>
  53. /// 施测对象
  54. /// </summary>
  55. // public List<string> target { get; set; }
  56. /// <summary>
  57. /// 发布
  58. /// </summary>
  59. public string publish { get; set; }
  60. public int status { get; set; }
  61. public int year { get; set; }
  62. public string range { get; set; }
  63. public string source { get; set; }
  64. public List<string> targetClassIds { get; set; }
  65. public List<PaperSimple> papers { get; set; }
  66. ///考试类型 段考 stage 联考 union 平常考 normal 其他 other
  67. /// </summary>
  68. public string type { get; set; }
  69. public PeriodSimple period { get; set; }
  70. public List<Grade> grades { get; set; }
  71. public List<Subject> subjects { get; set; }
  72. public long sequenceNumber { get; set; }
  73. //public Condition conditions { get; set; }
  74. public List<string> blobUrl { get; set; }
  75. public string progress { get; set; }
  76. public string scope { get; set; }
  77. public Custom examType { get; set; }
  78. /// <summary>
  79. /// 所有试卷阅卷状态
  80. /// </summary>
  81. //public List<int> marks { get; set; }
  82. }
  83. public class Custom {
  84. public string id { get; set; }
  85. public string name { get; set; }
  86. }
  87. public class PaperSimple {
  88. public string id { get; set; }
  89. public string code { get; set; }
  90. public string name { get; set; }
  91. public string blob { get; set; }
  92. public string scope { get; set; }
  93. public int multipleRule { get; set; }
  94. //该试卷配分情况
  95. public List<double> point { get; set; }
  96. public List<List<string>> answers { get; set; }
  97. }
  98. public class PeriodSimple
  99. {
  100. public string id { get; set; }
  101. public string name { get; set; }
  102. }
  103. public class Grade
  104. {
  105. public string id { get; set; }
  106. public string name { get; set; }
  107. }
  108. public class Subject
  109. {
  110. public string id { get; set; }
  111. public string name { get; set; }
  112. }
  113. }