Survey.cs 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118
  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. namespace TEAMModelOS.SDK.Models
  7. {
  8. /// <summary>
  9. /// 问卷调查
  10. /// </summary>
  11. public class Survey : CosmosEntity
  12. {
  13. public Survey() {
  14. pk = "Survey";
  15. // questions = new List<Question>();
  16. classes = new List<string>();
  17. tmdids = new List<string>();
  18. }
  19. /// <summary>
  20. ///发布层级 类型 school teacher
  21. /// </summary>
  22. public string owner { get; set; }
  23. /// <summary>
  24. /// 学校编码或教室tmdid
  25. /// </summary>
  26. [Required(ErrorMessage = "owner 必须设置")]
  27. public string school { get; set; }
  28. /// <summary>
  29. /// 问卷名称
  30. /// </summary>
  31. [Required(ErrorMessage = "name 必须设置")]
  32. public string name { get; set; }
  33. /// <summary>
  34. /// 问卷描述
  35. /// </summary>
  36. public string description { get; set; }
  37. //public string type { get; set; } //normal', // 问卷类型
  38. /// <summary>
  39. /// 创建者的id
  40. /// </summary>
  41. [Required(ErrorMessage = "creatorId 必须设置")]
  42. public string creatorId { get; set; }
  43. // public int year { get; set; }
  44. /// <summary>
  45. /// pending 待发布|going 已发布|finish 已结束
  46. /// </summary>
  47. //[Required(ErrorMessage = "progress 必须设置")]
  48. public string progress { get; set; }
  49. public string scope { get; set; }
  50. public List<string> tmdids { get; set; }
  51. public List<string> classes { get; set; }
  52. /// <summary>
  53. /// 开始时间
  54. /// </summary>
  55. public long startTime { get; set; }
  56. /// <summary>
  57. /// 结束时间
  58. /// </summary>
  59. public long endTime { get; set; }
  60. public long createTime { get; set; } // 问卷发布时间
  61. /// <summary>
  62. /// 更新时间
  63. /// </summary>
  64. public long updateTime { get; set; }
  65. //将问题放入Blob hbcn/survey/问卷调查id.json 存放内容 Question的数组
  66. public string blob { get; set; }
  67. // public List<Question> questions { get; set; }
  68. /// <summary>
  69. /// 学生作答记录/ 状态为finish时进行结算
  70. /// </summary>
  71. public string recordUrl { get; set; }
  72. /// <summary>
  73. /// 如果本题不是客观题 则为[]空数组
  74. /// 客观题所有选项[["A","B","C","D"],["A","B"],[],["A","B"]]
  75. /// </summary>
  76. public List<List<string>> answers { get; set; }
  77. /// <summary>
  78. /// TTL删除改变状态使用
  79. /// </summary>
  80. public int? status { get; set; } = 0;
  81. }
  82. /// <summary>
  83. ///问卷题目
  84. /// </summary>
  85. //public class Question {
  86. // /// <summary>
  87. // /// 题目id
  88. // /// </summary>
  89. // public string qid { get; set; }
  90. // /// <summary>
  91. // /// 问卷题目
  92. // /// </summary>
  93. // public string question { get; set; }
  94. // /// <summary>
  95. // /// 问卷题目的描述
  96. // /// </summary>
  97. // public string description { get; set; }
  98. // /// <summary>
  99. // /// 问卷选项
  100. // /// </summary>
  101. // public List<CodeValue> options { get; set; }
  102. // /// <summary>
  103. // /// 判断judge 多选multiple 单选single
  104. // /// </summary>
  105. // public string type { get; set; }
  106. // /// <summary>
  107. // /// 是否必需作答
  108. // /// </summary>
  109. // public bool required { get; set; }
  110. //}
  111. }