|
@@ -177,7 +177,7 @@ namespace TEAMModelOS.Controllers.Analysis
|
|
|
subjectPaperDatas.Add(subjectData);
|
|
|
classSubjectPaperDatas.Add(classSubjectData);
|
|
|
subjectScatter.Add(DoSubjectScatter(examResult));
|
|
|
- //gpoint = DoKnowledgePoint(examResult,info);
|
|
|
+ gpoint = DoKnowledgePoint(examResult,info);
|
|
|
//获取一张试卷的满分
|
|
|
paperScore.Add(examResult.subjectId, examResult.paper.point.Sum());
|
|
|
List<double> StuSubjectTotals = new List<double>();
|
|
@@ -706,8 +706,39 @@ namespace TEAMModelOS.Controllers.Analysis
|
|
|
List<List<double>> result = new List<List<double>>();
|
|
|
List<ClassRange> classes = new List<ClassRange>();
|
|
|
List<string> ids = new List<string>();
|
|
|
- //定位试卷信息
|
|
|
- int index = 0;
|
|
|
+
|
|
|
+ //求单个知识点所占分数
|
|
|
+ List<string> per = new List<string>();
|
|
|
+ List<string> gper = new List<string>();
|
|
|
+ List<string> knowPer = new List<string>();
|
|
|
+ List<Dictionary<string, double>> eper = new List<Dictionary<string, double>>();
|
|
|
+ Dictionary<string, object> knowledgeALL = new Dictionary<string, object>();
|
|
|
+ Dictionary<string, object> knowledgeMap = new Dictionary<string, object>();
|
|
|
+ Dictionary<string, object> classMap = new Dictionary<string, object>();
|
|
|
+ Dictionary<string, object> wrongMap = new Dictionary<string, object>();
|
|
|
+ HashSet<string> className = new HashSet<string>();
|
|
|
+ List<List<string>> wrongPersent = new List<List<string>>();
|
|
|
+ List<string> key = new List<string>
|
|
|
+ {
|
|
|
+ "id",
|
|
|
+ "className",
|
|
|
+ "seatNO",
|
|
|
+ "point",
|
|
|
+ "anwPoint",
|
|
|
+ "persent"
|
|
|
+ };
|
|
|
+ List<string> keyWrong = new List<string>
|
|
|
+ {
|
|
|
+ "name",
|
|
|
+ "point",
|
|
|
+ "itemNO",
|
|
|
+ "persent",
|
|
|
+ "wrong",
|
|
|
+ "rhw",
|
|
|
+ "rlw"
|
|
|
+ };
|
|
|
+ //定位试卷信息
|
|
|
+ int index = 0;
|
|
|
foreach (ExamSubject subject in info.subjects)
|
|
|
{
|
|
|
if (subject.id.Equals(exam.subjectId))
|
|
@@ -719,6 +750,8 @@ namespace TEAMModelOS.Controllers.Analysis
|
|
|
index++;
|
|
|
}
|
|
|
}
|
|
|
+ if (info.papers[index].knowledge != null && info.papers[index].knowledge.Count > 0)
|
|
|
+ {
|
|
|
info.papers[index].knowledge.ForEach(k =>
|
|
|
{
|
|
|
k.ForEach(e =>
|
|
@@ -726,10 +759,21 @@ namespace TEAMModelOS.Controllers.Analysis
|
|
|
knowledge.Add(e);
|
|
|
});
|
|
|
});
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ return knowledgeALL;
|
|
|
+ }
|
|
|
+ if (info.papers[index].field != null && info.papers[index].field.Count > 0)
|
|
|
+ {
|
|
|
info.papers[index].field.ForEach(f =>
|
|
|
{
|
|
|
area.Add(f.ToString());
|
|
|
});
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ return knowledgeALL;
|
|
|
+ }
|
|
|
+
|
|
|
double Qnum = 0;
|
|
|
point = info.papers[index].point;
|
|
|
result = exam.studentScores;
|
|
@@ -820,36 +864,7 @@ namespace TEAMModelOS.Controllers.Analysis
|
|
|
double fieldPersent = fieldPoint / TotalPoint;
|
|
|
fper.Add(fieldPersent.ToString("0.00"));
|
|
|
}
|
|
|
- //求单个知识点所占分数
|
|
|
- List<string> per = new List<string>();
|
|
|
- List<string> gper = new List<string>();
|
|
|
- List<string> knowPer = new List<string>();
|
|
|
- List<Dictionary<string, double>> eper = new List<Dictionary<string, double>>();
|
|
|
- Dictionary<string, object> knowledgeALL = new Dictionary<string, object>();
|
|
|
- Dictionary<string, object> knowledgeMap = new Dictionary<string, object>();
|
|
|
- Dictionary<string, object> classMap = new Dictionary<string, object>();
|
|
|
- Dictionary<string, object> wrongMap = new Dictionary<string, object>();
|
|
|
- HashSet<string> className = new HashSet<string>();
|
|
|
- List<List<string>> wrongPersent = new List<List<string>>();
|
|
|
- List<string> key = new List<string>
|
|
|
- {
|
|
|
- "id",
|
|
|
- "className",
|
|
|
- "seatNO",
|
|
|
- "point",
|
|
|
- "anwPoint",
|
|
|
- "persent"
|
|
|
- };
|
|
|
- List<string> keyWrong = new List<string>
|
|
|
- {
|
|
|
- "name",
|
|
|
- "point",
|
|
|
- "itemNO",
|
|
|
- "persent",
|
|
|
- "wrong",
|
|
|
- "rhw",
|
|
|
- "rlw"
|
|
|
- };
|
|
|
+
|
|
|
for (int k = 0; k < knowledgeName.Count; k++)
|
|
|
{
|
|
|
List<string> knowledgeClass = new List<string>();
|