소스 검색

跟新多余代码

CrazyIter 5 년 전
부모
커밋
2bbfa61896

+ 0 - 25
TEAMModelOS.Service/Models/Evaluation/Dtos/Own/ExerciseDto.cs

@@ -1,25 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Text;
-using TEAMModelOS.Service.Models.Core;
-
-namespace TEAMModelOS.Service.Models.Evaluation.Dtos.Own
-{
-    public class ExerciseDto
-    {
-        public ExerciseDto()
-        {
-            Children = new List<ExerciseDto>();
-            Option = new List<CodeValue>();
-            Answer = new List<string>();
-        }
-        public string ShaCode { get; set; }
-        public string Question { get; set; }
-        public List<CodeValue> Option { get; set; }
-        public List<string> Answer { get; set; }
-        public string Explain { get; set; }
-        public string Type { get; set; }
-        public string PShaCode { get; set; }
-        public List<ExerciseDto> Children { get; set; }
-    }
-}

+ 0 - 12
TEAMModelOS.Service/Models/Evaluation/Models/CosmosModels/OptionInfo.cs

@@ -1,12 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Text;
-
-namespace TEAMModelOS.Service.Models.Evaluation.Models.CosmosModels
-{
-    public class OptionInfo
-    {
-        public string code { get; set; }
-        public string value { get; set; }
-    }
-}

+ 1 - 1
TEAMModelOS.Service/Models/Evaluation/Models/CosmosModels/ExamPaper.cs

@@ -4,7 +4,7 @@ using System.Collections.Generic;
 using System.Text;
 using TEAMModelOS.SDK.Context.Attributes.Azure;
 
-namespace TEAMModelOS.Service.Models.Evaluation.Models.CosmosModels
+namespace TEAMModelOS.Service.Models.Evaluation.Models
 {
     [CosmosDB(RU = 400, Name = "ExamPaper")]
     public class ExamPaper

+ 0 - 27
TEAMModelOS.Service/Models/Evaluation/Models/ExerciseVerify.cs

@@ -1,27 +0,0 @@
-using Microsoft.WindowsAzure.Storage.Table;
-using System;
-using System.Collections.Generic;
-using System.Text;
-using TEAMModelOS.SDK.Context.Attributes.Azure;
-
-namespace TEAMModelOS.Model.Evaluation.Models
-{
-    [TableSpace(Name = "Core")]
-    public class ExerciseVerify : TableEntity
-    {
-        /// <summary>
-        ///  0 代表题目信息题干 1.选项  2.问答题答案,2代表答案解析  判断题答案 解析等可能有多种
-        /// </summary>
-        public int Type { get; set; }
-        public string Content { get; set; }
-        /// <summary>
-        /// 题干信息编码
-        /// </summary>
-        public string SummaryCode { get; set; }
-        /// <summary>
-        /// 状态 用于勘误
-        /// </summary>
-        public int Status { get; set; }
-        public string TeamModelId { get; set; }
-    }
-}

+ 8 - 4
TEAMModelOS.Service/Models/Evaluation/Models/CosmosModels/ItemInfo.cs

@@ -1,25 +1,29 @@
 using System;
 using System.Collections.Generic;
 using System.Text;
+using TEAMModelOS.Service.Models.Core;
 
-namespace TEAMModelOS.Service.Models.Evaluation.Models.CosmosModels
+namespace TEAMModelOS.Service.Models.Evaluation.Models
 {
     public class ItemInfo
     {
-        public ItemInfo() {
-            option = new List<OptionInfo>();
+        public ItemInfo()
+        {
+            children = new List<ItemInfo>();
+            option = new List<CodeValue>();
             answer = new List<string>();
             points = new List<string>();
         }
         public string shaCode { get; set; }
         public string question { get; set; }
-        public List<OptionInfo> option { get; set; }
+        public List<CodeValue> option { get; set; }
         public List<string> answer { get; set; }
         public string explain { get; set; }
         public string type { get; set; }
         public string pShaCode { get; set; }
         public List<string> points { get; set; }
         public string field { get; set; }
+        public List<ItemInfo> children { get; set; }
 
     }
 }

+ 1 - 1
TEAMModelOS.Service/Models/Evaluation/Models/CosmosModels/SimpleExam.cs

@@ -4,7 +4,7 @@ using System.Collections.Generic;
 using System.Text;
 using TEAMModelOS.SDK.Context.Attributes.Azure;
 
-namespace TEAMModelOS.Model.Evaluation.Models.CosmosModels
+namespace TEAMModelOS.Model.Evaluation.Models
 {
     [CosmosDB(RU = 400, Name = "SimpleExam")]
     public class SimpleExam

+ 1 - 1
TEAMModelOS.Service/Services/Analysis/Implements/AchievementService.cs

@@ -1,7 +1,7 @@
 using System;
 using System.Collections.Generic;
 using System.Linq;
-using TEAMModelOS.Model.Evaluation.Models.CosmosModels;
+using TEAMModelOS.Model.Evaluation.Models;
 using TEAMModelOS.SDK.Helper.Common.CollectionHelper;
 using TEAMModelOS.SDK.Module.AzureCosmosDB.Interfaces;
 using TEAMModelOS.Service.Analysis.Interfaces;

+ 1 - 1
TEAMModelOS.Service/Services/Analysis/Interfaces/IAchievementService.cs

@@ -1,5 +1,5 @@
 using System.Collections.Generic;
-using TEAMModelOS.Model.Evaluation.Models.CosmosModels;
+using TEAMModelOS.Model.Evaluation.Models;
 using TEAMModelOS.SDK.Context.Configuration;
 using TEAMModelOS.Service.Models.Core;
 

+ 83 - 83
TEAMModelOS.Service/Services/Evaluation/Implements/HtmlAnalyzeService.cs

@@ -15,7 +15,7 @@ using TEAMModelOS.SDK.Helper.Common.FileHelper;
 using TEAMModelOS.SDK.Helper.Common.StringHelper;
 using TEAMModelOS.SDK.Helper.Security.ShaHash;
 using TEAMModelOS.Service.Models.Core;
-using TEAMModelOS.Service.Models.Evaluation.Dtos.Own;
+using TEAMModelOS.Service.Models.Evaluation.Models;
 using TEAMModelOS.Service.Services.Evaluation.Interfaces;
 namespace TEAMModelOS.Service.Services.Evaluation.Implements
 {
@@ -35,7 +35,7 @@ namespace TEAMModelOS.Service.Services.Evaluation.Implements
             { "Single", "【单选题】|【结束】" }, { "Multiple", "【多选题】|【结束】" },
             { "Judge", "【判断题】|【结束】" }, { "Complete", "【填空题】|【结束】" },
             { "Subjective", "【问答题】|【结束】" } , { "Compose", "【综合题】|【完结】" }};
-        public List<ExerciseDto> AnalyzeWordAsync(string html, string Lang)
+        public List<ItemInfo> AnalyzeWordAsync(string html, string Lang)
         {
             //去除class 以及span标签"
             string classpattern = "class=\"([^\"]*)\"";
@@ -44,34 +44,34 @@ namespace TEAMModelOS.Service.Services.Evaluation.Implements
             html = Regex.Replace(html, pattern, "");
             html = html.Replace("\t", " ").Replace("<span>", "").Replace("</span>", "").Replace("dir=\"ltr\"", "");
             Dictionary<string, List<string>> TestInType = ConvertTest(html);
-            List<ExerciseDto> tests = new List<ExerciseDto>();
+            List<ItemInfo> tests = new List<ItemInfo>();
             foreach (string key in TestInType.Keys)
             {
                 switch (key)
                 {
                     case "Single":
-                        List<ExerciseDto> exercisesSingle = SingleConvert(key, TestInType[key]);
-                        exercisesSingle.ForEach(x => { x.PShaCode = x.ShaCode; });
+                        List<ItemInfo> exercisesSingle = SingleConvert(key, TestInType[key]);
+                        exercisesSingle.ForEach(x => { x.pShaCode = x.shaCode; });
                         tests.AddRange(exercisesSingle); break;
                     case "Multiple":
-                        List<ExerciseDto> exercisesMultiple = MultipleConvert(key, TestInType[key]);
-                        exercisesMultiple.ForEach(x => { x.PShaCode = x.ShaCode; });
+                        List<ItemInfo> exercisesMultiple = MultipleConvert(key, TestInType[key]);
+                        exercisesMultiple.ForEach(x => { x.pShaCode = x.shaCode; });
                         tests.AddRange(exercisesMultiple); break;
                     case "Judge":
-                        List<ExerciseDto> exercisesJudge = JudgeConvert(key, TestInType[key]);
-                        exercisesJudge.ForEach(x => { x.PShaCode = x.ShaCode; });
+                        List<ItemInfo> exercisesJudge = JudgeConvert(key, TestInType[key]);
+                        exercisesJudge.ForEach(x => { x.pShaCode = x.shaCode; });
                         tests.AddRange(exercisesJudge); break;
                     case "Complete":
-                        List<ExerciseDto> exercisesComplete = CompleteConvert(key, TestInType[key]);
-                        exercisesComplete.ForEach(x => { x.PShaCode = x.ShaCode; });
+                        List<ItemInfo> exercisesComplete = CompleteConvert(key, TestInType[key]);
+                        exercisesComplete.ForEach(x => { x.pShaCode = x.shaCode; });
                         tests.AddRange(exercisesComplete); break;
                     case "Subjective":
-                        List<ExerciseDto> exercisesSubjective = SubjectiveConvert(key, TestInType[key]);
-                        exercisesSubjective.ForEach(x => { x.PShaCode = x.ShaCode; });
+                        List<ItemInfo> exercisesSubjective = SubjectiveConvert(key, TestInType[key]);
+                        exercisesSubjective.ForEach(x => { x.pShaCode = x.shaCode; });
                         tests.AddRange(exercisesSubjective); break;
                     case "Compose":
-                        List<ExerciseDto> exercisesCompose = ComposeConvert(key, TestInType[key], Lang);
-                        exercisesCompose.ForEach(x => { x.PShaCode = x.ShaCode; });
+                        List<ItemInfo> exercisesCompose = ComposeConvert(key, TestInType[key], Lang);
+                        exercisesCompose.ForEach(x => { x.pShaCode = x.shaCode; });
                         tests.AddRange(exercisesCompose);
                         break;
                     default: break;
@@ -80,42 +80,42 @@ namespace TEAMModelOS.Service.Services.Evaluation.Implements
             return tests;
         }
 
-        private List<ExerciseDto> SingleConvert(string TypeKey, List<string> list)
+        private List<ItemInfo> SingleConvert(string TypeKey, List<string> list)
         {
-            List<ExerciseDto> testInfos = OptionProcess(TypeKey, list);
+            List<ItemInfo> testInfos = OptionProcess(TypeKey, list);
             return testInfos;
         }
 
-        private List<ExerciseDto> MultipleConvert(string TypeKey, List<string> list)
+        private List<ItemInfo> MultipleConvert(string TypeKey, List<string> list)
         {
-            List<ExerciseDto> testInfos = OptionProcess(TypeKey, list);
+            List<ItemInfo> testInfos = OptionProcess(TypeKey, list);
             return testInfos;
         }
 
-        private List<ExerciseDto> JudgeConvert(string TypeKey, List<string> list)
+        private List<ItemInfo> JudgeConvert(string TypeKey, List<string> list)
         {
-            List<ExerciseDto> testInfos = OptionProcess(TypeKey, list);
+            List<ItemInfo> testInfos = OptionProcess(TypeKey, list);
             return testInfos;
         }
 
 
-        private List<ExerciseDto> CompleteConvert(string TypeKey, List<string> list)
+        private List<ItemInfo> CompleteConvert(string TypeKey, List<string> list)
         {
-            List<ExerciseDto> testInfos = CompleteProcess(TypeKey, list);
+            List<ItemInfo> testInfos = CompleteProcess(TypeKey, list);
             return testInfos;
         }
-        private List<ExerciseDto> CompleteProcess(string TypeKey, List<string> tests)
+        private List<ItemInfo> CompleteProcess(string TypeKey, List<string> tests)
         {
             //List<string> tests = ConvertTest(testHtml);
-            List<ExerciseDto> testInfos = ConvertTestInfo(tests, TypeKey);
+            List<ItemInfo> testInfos = ConvertTestInfo(tests, TypeKey);
             HtmlDocument doc = new HtmlDocument();
-            foreach (ExerciseDto testInfo in testInfos)
+            foreach (ItemInfo testInfo in testInfos)
             {
                 List<string> ans = new List<string>();
-                testInfo.Question = testInfo.Question.Replace(AnalysisTag, "").Replace(SummaryTag, "").Replace(AnswerTag, "");
+                testInfo.question = testInfo.question.Replace(AnalysisTag, "").Replace(SummaryTag, "").Replace(AnswerTag, "");
                 string regRex = CompleteStart + "([\\s\\S]*?)" + CompleteEnd;
                 List<ReplaceDto> replaces = new List<ReplaceDto>();
-                var m = Regex.Match(testInfo.Question, regRex);
+                var m = Regex.Match(testInfo.question, regRex);
                 int index = 1;
                 while (m.Success)
                 {
@@ -134,35 +134,35 @@ namespace TEAMModelOS.Service.Services.Evaluation.Implements
                     m = m.NextMatch();
                     index++;
                 }
-                string textImg = testInfo.Question;
+                string textImg = testInfo.question;
                 //消除答案
                 foreach (ReplaceDto replace in replaces)
                 {
-                    testInfo.Question = testInfo.Question.Replace(replace.oldstr, replace.newstr);
-                    testInfo.Question = HtmlHelper.DoUselessTag(testInfo.Question);
+                    testInfo.question = testInfo.question.Replace(replace.oldstr, replace.newstr);
+                    testInfo.question = HtmlHelper.DoUselessTag(testInfo.question);
                     //只要题干文字和图片 
                     //不加underline标记
-                    textImg = testInfo.Question.Replace(replace.oldstr, "");
+                    textImg = testInfo.question.Replace(replace.oldstr, "");
 
                 }
                 textImg = HtmlHelper.DoTextImg(textImg);
-                testInfo.ShaCode = ShaHashHelper.GetSHA1(textImg);
+                testInfo.shaCode = ShaHashHelper.GetSHA1(textImg);
                 //处理解析
-                testInfo.Explain = testInfo.Explain.Replace(AnalysisTag, "").Replace(EndedTag, "");
-                testInfo.Explain = HtmlHelper.DoUselessTag(testInfo.Explain);
-                testInfo.Answer.AddRange(ans);
+                testInfo.explain = testInfo.explain.Replace(AnalysisTag, "").Replace(EndedTag, "");
+                testInfo.explain = HtmlHelper.DoUselessTag(testInfo.explain);
+                testInfo.answer.AddRange(ans);
             }
             return testInfos;
         }
 
-        private List<ExerciseDto> OptionProcess(string typeKey, List<string> list)
+        private List<ItemInfo> OptionProcess(string typeKey, List<string> list)
         {
             string[] optionsKeys = Options.Select(s => s.ToString()).ToArray();
-            List<ExerciseDto> testInfos = ConvertTestInfo(list, typeKey);
-            foreach (ExerciseDto testInfo in testInfos)
+            List<ItemInfo> testInfos = ConvertTestInfo(list, typeKey);
+            foreach (ItemInfo testInfo in testInfos)
             {
                 string optsRgex = optionsKeys[0] + "(\\.|\\.|\\、|\\:|\\:)([\\s\\S]*?)" + AnswerTag;
-                string optsHtml = Regex.Match(testInfo.Question, optsRgex).Value;
+                string optsHtml = Regex.Match(testInfo.question, optsRgex).Value;
                 //HtmlDocument doc = new HtmlDocument();
                 //doc.LoadHtml(optsHtml);
                 //optsHtml = doc.DocumentNode.InnerText;
@@ -177,9 +177,9 @@ namespace TEAMModelOS.Service.Services.Evaluation.Implements
                         optHtml = optHtml.Substring(2, optHtml.Length - 4);
                         optHtml = HtmlHelper.DoUselessTag(optHtml);
                         textImg.Append(HtmlHelper.DoTextImg(optHtml));
-                        testInfo.Option.Add(new CodeValue { Code = optionsKeys[i], Value = optHtml });
-                        //testInfo.Option.Add(new Dictionary<string, string> { { "code", optionsKeys[i] },{ "value", optHtml } });
-                        //testInfo.Option.TryAdd(optionsKeys[i], optHtml);
+                        testInfo.option.Add(new CodeValue { Code = optionsKeys[i], Value = optHtml });
+                        //testInfo.option.Add(new Dictionary<string, string> { { "code", optionsKeys[i] },{ "value", optHtml } });
+                        //testInfo.option.TryAdd(optionsKeys[i], optHtml);
                     }
                     else
                     {
@@ -190,18 +190,18 @@ namespace TEAMModelOS.Service.Services.Evaluation.Implements
                             optHtml = optHtml.Substring(2, optHtml.Length - 6);
                             optHtml = HtmlHelper.DoUselessTag(optHtml);
                             textImg.Append(HtmlHelper.DoTextImg(optHtml));
-                            testInfo.Option.Add(new CodeValue { Code = optionsKeys[i], Value = optHtml });
-                            //testInfo.Option.Add(new Dictionary<string, string> { { "code", optionsKeys[i] }, { "value", optHtml } });
-                            //testInfo.Option.TryAdd(optionsKeys[i], optHtml);
+                            testInfo.option.Add(new CodeValue { Code = optionsKeys[i], Value = optHtml });
+                            //testInfo.option.Add(new Dictionary<string, string> { { "code", optionsKeys[i] }, { "value", optHtml } });
+                            //testInfo.option.TryAdd(optionsKeys[i], optHtml);
                         }
                     }
                 }
                 //处理题干
-                testInfo.Question = testInfo.Question.Replace(optsHtml, "").Replace(SummaryTag, "").Replace(AnswerTag, "");
-                testInfo.Question = HtmlHelper.DoUselessTag(testInfo.Question);
-                textImg.Append(HtmlHelper.DoTextImg(testInfo.Question));
-                testInfo.ShaCode = ShaHashHelper.GetSHA1(textImg.ToString());
-                List<string> answers = testInfo.Answer;
+                testInfo.question = testInfo.question.Replace(optsHtml, "").Replace(SummaryTag, "").Replace(AnswerTag, "");
+                testInfo.question = HtmlHelper.DoUselessTag(testInfo.question);
+                textImg.Append(HtmlHelper.DoTextImg(testInfo.question));
+                testInfo.shaCode = ShaHashHelper.GetSHA1(textImg.ToString());
+                List<string> answers = testInfo.answer;
                 HashSet<string> ans = new HashSet<string>();
                 //处理答案
                 for (int i = 0; i < answers.Count; i++)
@@ -212,71 +212,71 @@ namespace TEAMModelOS.Service.Services.Evaluation.Implements
                         ans.Add(x);
                     });
                 }
-                testInfo.Answer = ans.ToList();
+                testInfo.answer = ans.ToList();
                 //处理解析
-                testInfo.Explain = testInfo.Explain.Replace(AnalysisTag, "").Replace(EndedTag, "");
-                testInfo.Explain = HtmlHelper.DoUselessTag(testInfo.Explain);
+                testInfo.explain = testInfo.explain.Replace(AnalysisTag, "").Replace(EndedTag, "");
+                testInfo.explain = HtmlHelper.DoUselessTag(testInfo.explain);
             }
             return testInfos;
         }
 
 
-        private List<ExerciseDto> SubjectiveConvert(string TypeKey, List<string> tests)
+        private List<ItemInfo> SubjectiveConvert(string TypeKey, List<string> tests)
         {
             // List<string> tests = ConvertTest(testHtml);
-            List<ExerciseDto> testInfos = ConvertTestInfo(tests, TypeKey);
+            List<ItemInfo> testInfos = ConvertTestInfo(tests, TypeKey);
 
-            foreach (ExerciseDto testInfo in testInfos)
+            foreach (ItemInfo testInfo in testInfos)
             {
-                testInfo.Question = testInfo.Question.Replace(AnalysisTag, "").Replace(SummaryTag, "").Replace(AnswerTag, "");
-                testInfo.Question = HtmlHelper.DoUselessTag(testInfo.Question);
-                StringBuilder textImg = new StringBuilder(HtmlHelper.DoTextImg(testInfo.Question));
-                testInfo.ShaCode = ShaHashHelper.GetSHA1(textImg.ToString());
-                for (int i = 0; i < testInfo.Answer.Count; i++)
+                testInfo.question = testInfo.question.Replace(AnalysisTag, "").Replace(SummaryTag, "").Replace(AnswerTag, "");
+                testInfo.question = HtmlHelper.DoUselessTag(testInfo.question);
+                StringBuilder textImg = new StringBuilder(HtmlHelper.DoTextImg(testInfo.question));
+                testInfo.shaCode = ShaHashHelper.GetSHA1(textImg.ToString());
+                for (int i = 0; i < testInfo.answer.Count; i++)
                 {
-                    testInfo.Answer[i] = testInfo.Answer[i].Replace(AnswerTag, "").Replace(AnalysisTag, "");
-                    testInfo.Answer[i] = HtmlHelper.DoUselessTag(testInfo.Answer[i]);
+                    testInfo.answer[i] = testInfo.answer[i].Replace(AnswerTag, "").Replace(AnalysisTag, "");
+                    testInfo.answer[i] = HtmlHelper.DoUselessTag(testInfo.answer[i]);
                 }
-                testInfo.Explain = testInfo.Explain.Replace(AnalysisTag, "").Replace(EndedTag, "");
-                testInfo.Explain = HtmlHelper.DoUselessTag(testInfo.Explain);
+                testInfo.explain = testInfo.explain.Replace(AnalysisTag, "").Replace(EndedTag, "");
+                testInfo.explain = HtmlHelper.DoUselessTag(testInfo.explain);
             }
             return testInfos;
         }
 
-        private List<ExerciseDto> ComposeConvert(string TypeKey, List<string> list, string Lang)
+        private List<ItemInfo> ComposeConvert(string TypeKey, List<string> list, string Lang)
         {
-            List<ExerciseDto> exerciseDtos = new List<ExerciseDto>();
+            List<ItemInfo> exerciseDtos = new List<ItemInfo>();
             foreach (string html in list)
             {
-                ExerciseDto exercise = new ExerciseDto() { Type = TypeKey };
+                ItemInfo exercise = new ItemInfo() { type = TypeKey };
                 string RegexStr = ComposeStart + "([\\s\\S]*?)" + ComposeEnd;
                 Match mt = Regex.Match(html, RegexStr);
-                exercise.Question = HtmlHelper.DoUselessTag(mt.Value.Replace(ComposeStart, "").Replace(ComposeEnd, ""));
+                exercise.question = HtmlHelper.DoUselessTag(mt.Value.Replace(ComposeStart, "").Replace(ComposeEnd, ""));
                 string testinfo = Regex.Replace(html, RegexStr, "").Replace(ComposeTag, CompleteStart);
                 //获取综合题的材料加每个小题的sha1Code
-                string testQs = HtmlHelper.DoTextImg(exercise.Question);
-                List<ExerciseDto> dtos = AnalyzeWordAsync(testinfo, Lang);
+                string testQs = HtmlHelper.DoTextImg(exercise.question);
+                List<ItemInfo> dtos = AnalyzeWordAsync(testinfo, Lang);
                 if (dtos.IsNotEmpty())
                 {
-                    dtos.ForEach(x => { testQs = testQs + x.ShaCode; });
-                    exercise.ShaCode = ShaHashHelper.GetSHA1(testQs);
-                    dtos.ForEach(x => { x.PShaCode = exercise.ShaCode; });
-                    exercise.Children.AddRange(dtos);
+                    dtos.ForEach(x => { testQs = testQs + x.shaCode; });
+                    exercise.shaCode = ShaHashHelper.GetSHA1(testQs);
+                    dtos.ForEach(x => { x.pShaCode = exercise.shaCode; });
+                    exercise.children.AddRange(dtos);
                 }
                 exerciseDtos.Add(exercise);
             }
             return exerciseDtos;
         }
-        public static List<ExerciseDto> ConvertTestInfo(List<string> tests, string TypeKey)
+        public static List<ItemInfo> ConvertTestInfo(List<string> tests, string TypeKey)
         {
-            List<ExerciseDto> testInfos = new List<ExerciseDto>();
+            List<ItemInfo> testInfos = new List<ItemInfo>();
             foreach (string html in tests)
             {
                 Dictionary<string, string> regex = new Dictionary<string, string>();
                 Dictionary<string, string> question = new Dictionary<string, string> { { "Summary", TestType[TypeKey].Split("|")[0] + "|" + AnswerTag }, { "Answer", AnswerTag + "|" + AnalysisTag }, { "Analysis", AnalysisTag + "|" + EndedTag } };
                 Dictionary<string, string> compquestion = new Dictionary<string, string> { { "Summary", TestType[TypeKey].Split("|")[0] + "|" + AnalysisTag }, { "Analysis", AnalysisTag + "|" + EndedTag } };
-                ExerciseDto test = new ExerciseDto();
-                test.Type = TypeKey;
+                ItemInfo test = new ItemInfo();
+                test.type = TypeKey;
                 List<string> keys = new List<string>();
                 if (TypeKey.Equals("Complete"))
                 {
@@ -296,7 +296,7 @@ namespace TEAMModelOS.Service.Services.Evaluation.Implements
                     switch (key)
                     {
                         case "Summary":
-                            test.Question = mt.Value.Replace(TestType[TypeKey].Split("|")[0], ""); break;
+                            test.question = mt.Value.Replace(TestType[TypeKey].Split("|")[0], ""); break;
                         case "Answer":
                             string Answer = mt.Value;
                             ///单选或多选,判断答案 脱html标签
@@ -306,9 +306,9 @@ namespace TEAMModelOS.Service.Services.Evaluation.Implements
                                 doc.LoadHtml(mt.Value);
                                 Answer = doc.DocumentNode.InnerText;
                             }
-                            test.Answer = new List<string>() { Answer }; break;
+                            test.answer = new List<string>() { Answer }; break;
                         case "Analysis":
-                            test.Explain = mt.Value; break;
+                            test.explain = mt.Value; break;
                         default: break;
                     }
                 }

+ 2 - 2
TEAMModelOS.Service/Services/Evaluation/Interfaces/IHtmlAnalyzeService.cs

@@ -2,12 +2,12 @@
 using System.Collections.Generic;
 using System.Text;
 using TEAMModelOS.SDK.Context.Configuration;
-using TEAMModelOS.Service.Models.Evaluation.Dtos.Own;
+using TEAMModelOS.Service.Models.Evaluation.Models;
 
 namespace TEAMModelOS.Service.Services.Evaluation.Interfaces
 {
     public interface IHtmlAnalyzeService: IBusinessService
     {
-        List<ExerciseDto> AnalyzeWordAsync(string htmlString, string Lang);
+        List<ItemInfo> AnalyzeWordAsync(string htmlString, string Lang);
     }
 }

+ 4 - 0
TEAMModelOS.Service/TEAMModelOS.Service.csproj

@@ -14,4 +14,8 @@
     <ProjectReference Include="..\TEAMModelOS.SDK\TEAMModelOS.SDK.csproj" />
   </ItemGroup>
 
+  <ItemGroup>
+    <Folder Include="Models\Evaluation\Dtos\" />
+  </ItemGroup>
+
 </Project>

+ 2 - 2
TEAMModelOS/Controllers/Analysis/AchievementController.cs

@@ -4,7 +4,7 @@ using System;
 using System.Collections.Generic;
 using System.Linq;
 using System.Threading.Tasks;
-using TEAMModelOS.Model.Evaluation.Models.CosmosModels;
+using TEAMModelOS.Model.Evaluation.Models;
 using TEAMModelOS.SDK.Extension.DataResult.JsonRpcRequest;
 using TEAMModelOS.SDK.Extension.DataResult.JsonRpcResponse;
 using TEAMModelOS.SDK.Helper.Common.CollectionHelper;
@@ -14,7 +14,7 @@ using TEAMModelOS.SDK.Module.AzureTable.Interfaces;
 using TEAMModelOS.Service.Analysis.Interfaces;
 
 using TEAMModelOS.Service.Models.Core;
-using TEAMModelOS.Service.Models.Evaluation.Models.CosmosModels;
+using TEAMModelOS.Service.Models.Evaluation.Models;
 
 namespace TEAMModelOS.Controllers.Analysis
 {

+ 1 - 1
TEAMModelOS/Controllers/Analysis/ChangeController.cs

@@ -5,7 +5,7 @@ using System;
 using System.Collections.Generic;
 using System.Linq;
 using TEAMModelOS.Helper.Common.FileHelper;
-using TEAMModelOS.Model.Evaluation.Models.CosmosModels;
+using TEAMModelOS.Model.Evaluation.Models;
 using TEAMModelOS.SDK.Extension.DataResult.JsonRpcResponse;
 using TEAMModelOS.SDK.Helper.Common.JsonHelper.JsonPath;
 using TEAMModelOS.SDK.Module.AzureCosmosDB.Interfaces;

+ 2 - 2
TEAMModelOS/Controllers/Evaluation/ImportExerciseController.cs

@@ -7,7 +7,7 @@ using System.Threading.Tasks;
 using TEAMModelOS.SDK.Context.Constant.Common;
 using TEAMModelOS.SDK.Extension.DataResult.JsonRpcRequest;
 using TEAMModelOS.SDK.Extension.DataResult.JsonRpcResponse;
-using TEAMModelOS.Service.Models.Evaluation.Dtos.Own;
+using TEAMModelOS.Service.Models.Evaluation.Models;
 using TEAMModelOS.Service.Services.Evaluation.Implements;
 using TEAMModelOS.Service.Services.Evaluation.Interfaces;
 
@@ -58,7 +58,7 @@ namespace TEAMModelOS.Controllers.Evaluation
             bool flag = request.@params.TryGetValue("htmlString", out object htmlString);
             if (flag && htmlString != null && !string.IsNullOrEmpty(htmlString.ToString()))
             {
-                List<ExerciseDto> exercises = htmlAnalyzeService.AnalyzeWordAsync(htmlString.ToString(), request.lang);
+                List<ItemInfo> exercises = htmlAnalyzeService.AnalyzeWordAsync(htmlString.ToString(), request.lang);
                 return builder.Data(exercises).build();
             }
             else