Browse Source

新增教培1.7表结构

denny 1 year ago
parent
commit
a18cf93db3

+ 1 - 1
Tools/Flyinsono.DBCopy.Tool/AutoMapperProfile.cs

@@ -27,7 +27,7 @@ namespace Flyinsono.DBCopy.Tool
             CreateMap<ReportInfoResultsBak, ReportInfoResults>().ReverseMap();
             CreateMap<ReportInfoResults, ReportInfoResultsBak>().ReverseMap();
 
-            CreateMap<ExamTemplate, ExamTemplateView>().ReverseMap();
+            CreateMap<ExamTemplates, ExamTemplateView>().ReverseMap();
             CreateMap<SubjectInfo, SubjectInfoView>().ReverseMap();
             CreateMap<VideoInfo, VideoInfoView>().ReverseMap();
             CreateMap<SubjectItem, SubjectItemView>().ReverseMap();

+ 172 - 0
Tools/Flyinsono.DBCopy.Tool/Entities/AnswerSheets.cs

@@ -0,0 +1,172 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace Flyinsono.DBCopy.Tool.Entities
+{
+    internal class AnswerSheets
+    {
+        public bool IsDeleted { get; set; }
+
+        public string Id { get; private set; }
+
+        public DateTime CreateTime { get; private set; }
+
+        public DateTime UpdateTime { get; set; }
+
+        /// <summary>
+        /// 学生ID
+        /// </summary>
+        public string StudetnId { get; set; }
+        /// <summary>
+        /// 班级ID
+        /// </summary>
+        public string ClassId { get; set; }
+        /// <summary>
+        /// 课程ID
+        /// </summary>
+        public string CourseId { get; set; }
+        /// <summary>
+        /// 教师Id
+        /// </summary>
+        public string TeacherId { get; set; }
+        /// <summary>
+        /// 分配ID
+        /// </summary>
+        public string DistributionId { get; set; }
+        /// <summary>
+        /// 考卷Name
+        /// </summary>
+        public string ExamName { get; set; }
+
+        /// <summary>
+        /// 开始时间
+        /// </summary>
+        public DateTime StartTime { get; set; }
+
+        /// <summary>
+        /// 结束时间
+        /// </summary>
+        public DateTime EndTime { get; set; }
+
+        /// <summary>
+        /// 图像存储地址
+        /// </summary>
+        public string ImageToken { get; set; }
+
+        /// <summary>
+        /// 答案列表
+        /// </summary>
+        public List<AnswerDetail> AnswerDetails { get; set; }
+        /// <summary>
+        /// 老师评价者
+        /// </summary>
+        public Evaluator TeacherEvaluator { get; set; }
+        /// <summary>
+        /// 学生评价者
+        /// </summary>
+        public List<Evaluator> StudentEvaluators { get; set; }
+        /// <summary>
+        /// 总分
+        /// </summary>
+        public int Score { get; set; }
+        /// <summary>
+        /// 是否已提交
+        /// </summary>
+        public bool IsSubmitted { get; set; }
+        /// <summary>
+        /// 提交时间
+        /// </summary>
+        public DateTime SubmittedTime { get; set; }
+        /// <summary>
+        /// 是否已经分发成绩
+        /// </summary>
+        public bool IsDistributed { get; set; }
+        /// <summary>
+        /// 是否是练习题
+        /// </summary>
+        public bool IsExercises { get; set; }
+        /// <summary>
+        /// 开启互评
+        /// </summary>
+        public bool IsMutualEvaluation { get; set; }
+    }
+
+    /// <summary>
+    /// 评分者
+    /// </summary>
+    class Evaluator
+    {
+        /// <summary>
+        /// 评分人ID
+        /// </summary>
+        public string EvaluatorId { get; set; }
+        /// <summary>
+        /// 评分能力
+        /// </summary>
+        public double EvaluateAbility { get; set; }
+        /// <summary>
+        /// 批阅结束
+        /// </summary>
+        public bool IsMarkingEnd { get; set; }
+        /// <summary>
+        /// 评语
+        /// </summary>
+        public string Comment { get; set; }
+        /// <summary>
+        /// 评审项
+        /// </summary>
+        public List<EvaluationItem> EvaluationItems { get; set; }
+    }
+    class EvaluationItem
+    {
+        /// <summary>
+        /// 题目ID
+        /// </summary>
+        public string SubjectId { get; set; }
+        /// <summary>
+        /// 得分项ID
+        /// </summary>
+        public string ItemId { get; set; }
+        /// <summary>
+        /// 评分结果
+        /// </summary>
+        public QualifiedState IsQualified { get; set; }
+    }
+
+
+    /// <summary>
+    /// 答案详情
+    /// </summary>
+    class AnswerDetail
+    {
+        public string SubjectId { get; set; }
+        /// <summary>
+        /// 题目
+        /// </summary>
+        public string Subject { get; set; }
+
+        /// <summary>
+        /// 标注插入的时间点
+        /// </summary>
+        public int TargetTime { get; set; }
+
+        /// <summary>
+        /// 评分项列表
+        /// </summary>
+        public List<ScoreItem> ScroeItems { get; set; }
+    }
+
+    class ScoreItem
+    {
+        public string ItemId { get; set; }
+        /// <summary>
+        /// 评分项名称
+        /// </summary>
+        public string Name { get; set; }
+        public int Score { get; set; }
+
+    }
+}

+ 85 - 0
Tools/Flyinsono.DBCopy.Tool/Entities/DistributionRecords.cs

@@ -0,0 +1,85 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace Flyinsono.DBCopy.Tool.Entities
+{
+    internal class DistributionRecords
+    {
+        public string Id { get; private set; }
+
+        public DateTime CreateTime { get; private set; }
+
+        public DateTime UpdateTime { get; set; }
+        public bool IsDeleted { get; set; }
+        /// <summary>
+        /// 班级ID
+        /// </summary>
+        public string ClassId { get; set; }
+        /// <summary>
+        /// 课程ID
+        /// </summary>
+        public string CourseId { get; set; }
+        /// <summary>
+        /// ID
+        /// </summary>
+        public string QuestionId { get; set; }
+        /// <summary>
+        /// 考卷名称
+        /// </summary>
+        public string QuestionName { get; set; }
+        /// <summary>
+        /// 是否是练习题
+        /// </summary>
+        public bool IsExercises { get; set; }
+        /// <summary>
+        /// 题目列表
+        /// </summary>
+        public IEnumerable<ExamSubject> ExamSubjects { get; set; }
+
+        /// <summary>
+        /// 开始时间
+        /// </summary>
+        public DateTime StartTime { get; set; }
+
+        /// <summary>
+        /// 结束时间
+        /// </summary>
+        public DateTime EndTime { get; set; }
+
+        /// <summary>
+        /// 开启互评
+        /// </summary>
+        public bool IsMutualEvaluation { get; set; }
+
+        /// <summary>
+        /// 创建者ID
+        /// </summary>
+        public string TeacherId { get; set; }
+    } 
+
+    /// <summary>
+    /// 考题
+    /// </summary>
+    internal class ExamSubject
+    {
+        public string Id { get; set; }
+        /// <summary>
+        /// 题目名字
+        /// </summary>
+        public string Subject { get; set; }
+
+        /// <summary>
+        /// 得分项
+        /// </summary>
+        public List<ExamSubjectItem> Items { get; set; }
+    }
+
+    internal class ExamSubjectItem
+    {
+        public string Name { get; set; }
+        public int Score { get; set; }
+    }
+}

+ 2 - 2
Tools/Flyinsono.DBCopy.Tool/Entities/ExaminationPaper.cs

@@ -106,7 +106,7 @@ namespace Flyinsono.DBCopy.Tool.Entities
         /// <summary>
         /// 考试模板
         /// </summary>
-        public ExamTemplate ExamTemplate { get; set; }
+        public ExamTemplates ExamTemplate { get; set; }
 
         /// <summary>
         ///是否考题回顾 显示隐藏正确答案
@@ -114,7 +114,7 @@ namespace Flyinsono.DBCopy.Tool.Entities
         public bool IsDisplayAnswer { get; set; }
     }
 
-    internal class ExamTemplate
+    internal class ExamTemplates
     {
         public string Id { get; private set; }
 

+ 39 - 0
Tools/Flyinsono.DBCopy.Tool/Entities/Questionnaires.cs

@@ -0,0 +1,39 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace Flyinsono.DBCopy.Tool.Entities
+{
+    internal class Questionnaires
+    {
+        /// <summary>
+        /// 考卷名称
+        /// </summary>
+        public string Name { get; set; }
+
+        /// <summary>
+        /// 创建者ID,即老师ID
+        /// </summary>
+        public string CreatorId { get; set; }
+
+        /// <summary>
+        /// 题目列表
+        /// </summary>
+        public IEnumerable<ExamSubject> ExamSubjects { get; set; }
+
+        /// <summary>
+        /// 是否是练习题
+        /// </summary>
+        public bool IsExercises { get; set; }
+
+        public bool IsDeleted { get; set; }
+
+        public string Id { get; private set; }
+
+        public DateTime CreateTime { get; private set; }
+
+        public DateTime UpdateTime { get; set; }
+    }
+}

+ 33 - 0
Tools/Flyinsono.DBCopy.Tool/Entities/TeachingTerminalDatas.cs

@@ -0,0 +1,33 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace Flyinsono.DBCopy.Tool.Entities
+{
+    internal class TeachingTerminalDatas
+    {
+
+        public bool IsDeleted { get; set; }
+
+        public string Id { get; private set; }
+
+        public DateTime CreateTime { get; private set; }
+
+        public DateTime UpdateTime { get; set; }
+
+        public VidType DataType { get; set; }
+
+        public string Application { get; set; }
+
+        public string PreviewImageFileToken { get; set; }
+
+        public ICollection<TerminalDataFile> Files { get; set; }
+
+        public string OwnerId { get; set; }
+
+        public bool HasSubmited { get; set; }
+
+    }
+}

+ 20 - 0
Tools/Flyinsono.DBCopy.Tool/Entities/UserLinkVideos.cs

@@ -0,0 +1,20 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace Flyinsono.DBCopy.Tool.Entities
+{
+    internal class UserLinkVideos
+    {
+        public string Id { get; private set; }
+
+        public DateTime CreateTime { get; private set; }
+
+        public DateTime UpdateTime { get; set; }
+        public bool IsDeleted { get; set; }
+        public string UserId { get; private set; }
+        public IList<string> VideoIds { get; private set; }
+    }
+}

+ 14 - 0
Tools/Flyinsono.DBCopy.Tool/Utilities/MongoDbClient.cs

@@ -208,6 +208,14 @@ namespace Flyinsono.DBCopy.Tool.Utilities
         public IMongoCollection<CourseAvailabilityExtensions> CourseAvailabilityExtensions { get; private set; }
         public IMongoCollection<VideoCategories> VideoCategories { get; private set; }
         public IMongoCollection<VideoSecoundCategories> VideoSecoundCategories { get; private set; }
+
+        public IMongoCollection<UserLinkVideos> UserLinkVideos { get; private set; }
+        public IMongoCollection<TeachingTerminalDatas> TeachingTerminalDatas { get; private set; }
+        public IMongoCollection<Questionnaires> Questionnaires { get; private set; }
+        public IMongoCollection<ExamTemplates> ExamTemplates { get; private set; }
+        public IMongoCollection<DistributionRecords> DistributionRecords { get; private set; }
+        public IMongoCollection<AnswerSheets> AnswerSheets { get; private set; }
+
         private void RegisterEntities()
         {
             Admins = GetCollection<Admins>("Admins");
@@ -262,6 +270,12 @@ namespace Flyinsono.DBCopy.Tool.Utilities
             CourseAvailabilityExtensions = GetCollection<CourseAvailabilityExtensions>("CourseAvailabilityExtensions");
             VideoCategories = GetCollection<VideoCategories>("VideoCategories");
             VideoSecoundCategories = GetCollection<VideoSecoundCategories>("VideoSecoundCategories");
+            UserLinkVideos = GetCollection<UserLinkVideos>("UserLinkVideos");
+            TeachingTerminalDatas = GetCollection<TeachingTerminalDatas>("TeachingTerminalDatas");
+            Questionnaires = GetCollection<Questionnaires>("Questionnaires");
+            ExamTemplates = GetCollection<ExamTemplates>("ExamTemplates");
+            DistributionRecords = GetCollection<DistributionRecords>("DistributionRecords");
+            AnswerSheets = GetCollection<AnswerSheets>("AnswerSheets");
         }