SyllabusVolume.cs 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102
  1.  using System;
  2. using System.Collections.Generic;
  3. using System.Text;
  4. using TEAMModelOS.SDK.Context.Attributes.Azure;
  5. using System.Text.Json.Serialization;
  6. using System.ComponentModel.DataAnnotations;
  7. using Newtonsoft.Json;
  8. using TEAMModelOS.SDK.Module.AzureCosmosDBV3;
  9. using ProtoBuf;
  10. namespace TEAMModelOS.Service.Models.Syllabus
  11. {
  12. [CosmosDB(RU = 400, Name = "SyllabusVolume",Monitor =true)]
  13. [ProtoContract]
  14. public class SyllabusVolume :ID
  15. {
  16. public int? ttl { get; set; } = -1;
  17. /// <summary>
  18. /// id生成规则
  19. /// </summary>
  20. [ProtoMember(1)]
  21. public string id { get; set; }
  22. /// <summary>
  23. /// 0默认教学课纲的册别 1个人或单独的专题课纲册别 2,系统课纲
  24. /// </summary>
  25. [ProtoMember(2)]
  26. public int type { get; set; }
  27. /// <summary>
  28. /// Type 如果为0 则是学校编码 如果为1 则是seminar 专题/研讨/培训
  29. /// </summary>
  30. [PartitionKey]
  31. [Required(ErrorMessage = "{0} 必须填写")]
  32. [ProtoMember(3)]
  33. public string scopeCode { get; set; }
  34. /// <summary>
  35. /// 学段
  36. /// </summary>
  37. [ProtoMember(4)]
  38. public string periodCode { get; set; }
  39. /// <summary>
  40. /// 学科
  41. /// </summary>
  42. [ProtoMember(5)]
  43. public string subjectCode { get; set; }
  44. /// <summary>
  45. /// 年级
  46. /// </summary>
  47. [ProtoMember(6)]
  48. public string gradeCode { get; set; }
  49. /// <summary>
  50. /// 学期code
  51. /// </summary>
  52. [ProtoMember(7)]
  53. public string semesterCode { get; set; }
  54. /// <summary>
  55. /// 状态
  56. /// </summary>
  57. [ProtoMember(8)]
  58. public int status { get; set; } = 1;
  59. /// <summary>
  60. /// 册别name
  61. /// </summary>
  62. [Required(ErrorMessage = "{0} 必须填写")]
  63. [ProtoMember(9)]
  64. public string volumeName { get; set; }
  65. /// <summary>
  66. /// 册别code
  67. /// </summary>
  68. [ProtoMember(10)]
  69. public string volumeCode { get; set; }
  70. /// <summary>
  71. /// 创建者醍摩豆id
  72. /// </summary>
  73. [JsonPropertyName("TEAMModelId")]
  74. [JsonProperty("TEAMModelId")]
  75. [ProtoMember(11)]
  76. public string TEAMModelId { get; set; }
  77. /// <summary>
  78. /// 共编使用者 的醍摩豆id
  79. /// </summary>
  80. [ProtoMember(12)]
  81. public List<string> editors { get; set; }
  82. }
  83. }