Knowledge.cs 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106
  1. using Newtonsoft.Json;
  2. using ProtoBuf;
  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.Module.AzureCosmosDBV3;
  10. namespace TEAMModelOS.Service.Models
  11. {
  12. /// <summary>
  13. ///Teaching materials 教学材料 --- 知识点,知识块
  14. /// </summary>
  15. [CosmosDB(RU = 400, Name = "Common", Cache = true )]
  16. [ProtoContract]
  17. public class Knowledge: ID
  18. {
  19. public Knowledge()
  20. {
  21. points = new List<string>();
  22. }
  23. /// <summary>
  24. /// 学校编码 如果是教师个人知识点为醍摩豆id 否则为学校编码
  25. /// </summary>
  26. [PartitionKey]
  27. [Required(ErrorMessage = "{0} 必须填写")]
  28. public string code { get; set; }
  29. // [PartitionKey(name = "Knowledge")]
  30. public string pk { get; set; }
  31. public int? ttl { get; set; }
  32. [ProtoMember(1)]
  33. public string id { get; set; }
  34. /// <summary>
  35. /// 标记为知识块,0=知识块 ,1 知识点
  36. /// </summary>
  37. [ProtoMember(2)]
  38. [Required(ErrorMessage = "{0} 必须填写")]
  39. public int type { get; set; } = 0;
  40. /// <summary>
  41. /// 名称
  42. /// </summary>
  43. [ProtoMember(3)]
  44. [Required(ErrorMessage = "{0} 必须填写")]
  45. public string name { get; set; }
  46. /// <summary>
  47. /// 描述
  48. /// </summary>
  49. [ProtoMember(4)]
  50. [Required(ErrorMessage = "{0} 必须填写")]
  51. public string alias { get; set; }
  52. /// <summary>
  53. /// 学科
  54. /// </summary>
  55. ///[Required(ErrorMessage = "{0} 必须填写")]
  56. [ProtoMember(5)]
  57. public string subjectCode { get; set; }
  58. [ProtoMember(7)]
  59. [Required(ErrorMessage = "{0} 必须填写")]
  60. public int order { get; set; }
  61. /// <summary>
  62. /// 删除状态0 删除 1 有效
  63. /// </summary>
  64. [ProtoMember(8)]
  65. [Required(ErrorMessage = "{0} 必须填写")]
  66. public int status { get; set; } = 1;
  67. /// <summary>
  68. /// 知识点 id
  69. /// </summary>
  70. [ProtoMember(9)]
  71. [Required(ErrorMessage = "{0} 必须填写")]
  72. public List<string> points { get; set; }
  73. /// <summary>
  74. /// 来自于标准表 Rowkey
  75. /// </summary>
  76. [ProtoMember(10)]
  77. [Required(ErrorMessage = "{0} 必须填写")]
  78. public string knowledgeId { get; set; }
  79. /// <summary>
  80. /// 0 标准,1自建,2.....
  81. /// </summary>
  82. [ProtoMember(11)]
  83. [Required(ErrorMessage = "{0} 必须填写")]
  84. public int source { get; set; }
  85. /// <summary>
  86. /// 学段 私有的没有学段
  87. /// </summary>
  88. ///[Required(ErrorMessage = "{0} 必须填写")]
  89. [ProtoMember(12)]
  90. public string period { get; set; }
  91. public int ownCount { get; set; }
  92. public int openCount { get; set; }
  93. }
  94. }