Survey.cs 5.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel.DataAnnotations;
  4. using System.Text;
  5. using System.Text.Json;
  6. using TEAMModelOS.SDK.Context.Attributes.Azure;
  7. namespace TEAMModelOS.SDK.Models
  8. {
  9. /// <summary>
  10. /// 问卷调查
  11. /// </summary>
  12. public class Survey : CosmosEntity
  13. {
  14. public Survey() {
  15. pk = "Survey";
  16. // questions = new List<Question>();
  17. classes = new List<string>();
  18. stuLists = new List<string>();
  19. tchLists = new List<string>();
  20. }
  21. /// <summary>
  22. ///发布层级 类型 school teacher
  23. /// </summary>
  24. /// <summary>
  25. /// 学校编码或教室tmdid
  26. /// </summary>
  27. [Required(ErrorMessage = "owner 必须设置")]
  28. public string owner { get; set; }
  29. public string school { get; set; }
  30. /// <summary>
  31. /// 问卷名称
  32. /// </summary>
  33. [Required(ErrorMessage = "name 必须设置")]
  34. public string name { get; set; }
  35. /// <summary>
  36. /// 问卷描述
  37. /// </summary>
  38. public string description { get; set; }
  39. //public string type { get; set; } //normal', // 问卷类型
  40. /// <summary>
  41. /// 创建者的id
  42. /// </summary>
  43. [Required(ErrorMessage = "creatorId 必须设置")]
  44. public string creatorId { get; set; }
  45. // public int year { get; set; }
  46. /// <summary>
  47. /// pending 待发布|going 已发布|finish 已结束
  48. /// </summary>
  49. //[Required(ErrorMessage = "progress 必须设置")]
  50. public string progress { get; set; }
  51. public string scope { get; set; }
  52. //public List<string> tmdids { get; set; } = new List<string>();
  53. /// <summary>
  54. /// 行政班
  55. /// </summary>
  56. public List<string> classes { get; set; } = new List<string>();
  57. /// <summary>
  58. /// 学生名单(包含自定义个人学生名单,学校教学班)
  59. /// </summary>
  60. public List<string> stuLists { get; set; } = new List<string>();
  61. /// <summary>
  62. /// 教研组名单
  63. /// </summary>
  64. public List<string> tchLists { get; set; } = new List<string>();
  65. public List<Dictionary<string, List<string>>> groupLists { get; set; } = new List<Dictionary<string, List<string>>>();
  66. /// <summary>
  67. /// student 学生名单类型 research 教研组名单
  68. /// </summary>
  69. public string targetType { get; set; }
  70. /// <summary>
  71. /// 发布对象全部信息。由前端操作,用于前端回显发布对象的格式。
  72. /// </summary>
  73. public List<JsonElement> targets { get; set; } = new List<JsonElement>();
  74. /// <summary>
  75. ///class行政班/teach教学班
  76. /// </summary>
  77. //public string classType { get; set; }
  78. /// <summary>
  79. /// 开始时间
  80. /// </summary>
  81. public long startTime { get; set; }
  82. /// <summary>
  83. /// 结束时间
  84. /// </summary>
  85. public long endTime { get; set; }
  86. public long createTime { get; set; } // 问卷发布时间
  87. /// <summary>
  88. /// 更新时间
  89. /// </summary>
  90. public long updateTime { get; set; }
  91. //将问题放入Blob hbcn/survey/问卷调查id.json 存放内容 Question的数组
  92. public string blob { get; set; }
  93. // public List<Question> questions { get; set; }
  94. /// <summary>
  95. /// 学生作答记录/ 状态为finish时进行结算
  96. /// </summary>
  97. public string recordUrl { get; set; }
  98. /// <summary>
  99. /// 如果本题不是客观题 则为[]空数组
  100. /// 客观题所有选项[["A","B","C","D"],["A","B"],[],["A","B"]]
  101. /// </summary>
  102. public List<List<string>> answers { get; set; }
  103. /// <summary>
  104. /// TTL删除改变状态使用
  105. /// </summary>
  106. public int? status { get; set; } = 0;
  107. public long? size { get; set; } = 0;
  108. public string areaId { get; set; }
  109. public string pId { get; set; }
  110. //发布层级 0校级,1区级
  111. public int? publish { get; set; } = 0;
  112. //结束后账户统计
  113. public List<FMember> staffIds { get; set; } = new List<FMember>();
  114. public int isSub { get; set; } = 0;
  115. }
  116. /// <summary>
  117. ///问卷题目
  118. /// </summary>
  119. //public class Question {
  120. // /// <summary>
  121. // /// 题目id
  122. // /// </summary>
  123. // public string qid { get; set; }
  124. // /// <summary>
  125. // /// 问卷题目
  126. // /// </summary>
  127. // public string question { get; set; }
  128. // /// <summary>
  129. // /// 问卷题目的描述
  130. // /// </summary>
  131. // public string description { get; set; }
  132. // /// <summary>
  133. // /// 问卷选项
  134. // /// </summary>
  135. // public List<CodeValue> options { get; set; }
  136. // /// <summary>
  137. // /// 判断judge 多选multiple 单选single
  138. // /// </summary>
  139. // public string type { get; set; }
  140. // /// <summary>
  141. // /// 是否必需作答
  142. // /// </summary>
  143. // public bool required { get; set; }
  144. //}
  145. }