ICourseInfosManager.cs 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151
  1. using System;
  2. using WingServerCommon.Log;
  3. using WingServerCommon.Interfaces.OpLog;
  4. namespace WingServerCommon.Interfaces.Cache
  5. {
  6. /// <summary>
  7. /// 课程缓存
  8. /// </summary>
  9. public interface ICourseInfosManager : IBaseCacheManager<CacheCourseInfoDTO>
  10. {
  11. }
  12. /// <summary>
  13. /// 课程缓存
  14. /// </summary>
  15. public class CourseInfosManager : CacheManager<CacheCourseInfoDTO>, ICourseInfosManager
  16. {
  17. public CourseInfosManager() : base()
  18. {
  19. }
  20. }
  21. /// <summary>
  22. /// 课程信息
  23. /// </summary>
  24. public class CacheCourseInfoDTO : ICacheObject
  25. {
  26. /// <summary>
  27. /// 课程编码
  28. /// </summary>
  29. public string Code { get; set; } = string.Empty;
  30. /// <summary>
  31. /// 课程名称
  32. /// </summary>
  33. public string Name { get; set; }
  34. /// <summary>
  35. /// 教师Code
  36. /// </summary>
  37. public string TeacherCode { get; set; }
  38. /// <summary>
  39. ///教师名称
  40. /// </summary>
  41. public string TeacherName { get; set; }
  42. /// <summary>
  43. /// 课程时长【单位分钟】
  44. /// </summary>
  45. public int Duration { get; set; }
  46. /// <summary>
  47. /// 课程状态
  48. /// </summary>
  49. public int Status { get; set; }
  50. /// <summary>
  51. /// 课程价格
  52. /// </summary>
  53. public decimal Price { get; set; }
  54. /// <summary>
  55. /// 面向类型
  56. /// </summary>
  57. public int AudienceType { get; set; }
  58. /// <summary>
  59. /// 封面图,课程海报
  60. /// </summary>
  61. public string Poster { get; set; }
  62. /// <summary>
  63. /// 创建机构code
  64. /// </summary>
  65. public string OrganizationCode { get; set; }
  66. /// <summary>
  67. /// 课程预计开始时间
  68. /// </summary>
  69. public DateTime StartTime { get; set; } = DateTime.UtcNow;
  70. /// <summary>
  71. /// 课程结束签到时间
  72. /// </summary>
  73. public DateTime Deadline { get; set; } = DateTime.UtcNow;
  74. /// <summary>
  75. /// 实际开始时间
  76. /// </summary>
  77. public DateTime ActualStartTime { get; set; } = DateTime.UtcNow;
  78. /// <summary>
  79. /// 实际结束时间
  80. /// </summary>
  81. public DateTime ActualEndTime { get; set; } = DateTime.UtcNow;
  82. /// <summary>
  83. /// 病例标签
  84. /// </summary>
  85. public IList<string> CaseLabelCodes { get; set; }
  86. /// <summary>
  87. /// 课程分类
  88. /// </summary>
  89. public int CourseType { get; set; }
  90. /// <summary>
  91. /// 报名学生列表
  92. /// </summary>
  93. public IList<CacheStudentInfoDTO> Students { get; set; } = new List<CacheStudentInfoDTO>();
  94. /// <summary>
  95. /// 助教列表
  96. /// </summary>
  97. public IList<CacheStudentInfoDTO> Assistants { get; set; } = new List<CacheStudentInfoDTO>();
  98. /// <summary>
  99. /// 参与互动专家
  100. /// </summary>
  101. public IList<CacheStudentInfoDTO> Experts { get; set; } = new List<CacheStudentInfoDTO>();
  102. /// <summary>
  103. /// 教培视频Code列表
  104. /// </summary>
  105. public IList<string> CourseVideoCodes { get; set; }
  106. }
  107. /// <summary>
  108. /// 参与成员对象
  109. /// </summary>
  110. public class CacheStudentInfoDTO
  111. {
  112. /// <summary>
  113. /// 用户code
  114. /// </summary>
  115. public string Code { get; set; }
  116. /// <summary>
  117. /// 是否支付:是-支付;否-未支付
  118. /// </summary>
  119. public bool IsPay { get; set; }
  120. /// <summary>
  121. /// 学生对于课程的状态
  122. /// </summary>
  123. /// <value>0</value>
  124. public int SignCourseStatus { get; set; }
  125. }
  126. }