Преглед изворни кода

处理知识点 认知层次数据为空的情况

zhouj1203@hotmail.com пре 5 година
родитељ
комит
20e7e0284a
1 измењених фајлова са 6 додато и 6 уклоњено
  1. 6 6
      TEAMModelOS/Controllers/Analysis/AchievementController.cs

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

@@ -1205,7 +1205,7 @@ namespace TEAMModelOS.Controllers.Analysis
                     if (dict.TryGetValue("type", out object Type)) {
                         p.item.ForEach(i =>
                         {
-                            if (i.field.Contains(knowledgeName[k]))
+                            if (i.field != null && i.field.Contains(knowledgeName[k]))
                             {
 
                                 OnePoint += point[n];
@@ -1217,7 +1217,7 @@ namespace TEAMModelOS.Controllers.Analysis
                     } else {
                         p.item.ForEach(i =>
                         {
-                            if (i.points.Contains(knowledgeName[k]))
+                            if (i.points != null && i.points.Contains(knowledgeName[k]))
                             {
 
                                 OnePoint += 1 / Convert.ToDouble(i.points.Count) * point[n];
@@ -1271,7 +1271,7 @@ namespace TEAMModelOS.Controllers.Analysis
                         {
                             if (dict.TryGetValue("type", out object Type))
                             {
-                                if (i.field.Contains(knowledgeName[k]))
+                                if (i.field!= null && i.field.Contains(knowledgeName[k]))
                                 {
 
                                     //Dictionary<string, double> mapkeyItem = new Dictionary<string, double>();
@@ -1301,7 +1301,7 @@ namespace TEAMModelOS.Controllers.Analysis
                                 n++;
                             }
                             else {
-                                if (i.points.Contains(knowledgeName[k]))
+                                if (i.points != null && i.points.Contains(knowledgeName[k]))
                                 {
 
                                     //Dictionary<string, double> mapkeyItem = new Dictionary<string, double>();
@@ -1373,7 +1373,7 @@ namespace TEAMModelOS.Controllers.Analysis
                                 {
                                     if (dict.TryGetValue("type", out object Type))
                                     {
-                                        if (i.field.Contains(knowledgeName[k]))
+                                        if (i.field != null && i.field.Contains(knowledgeName[k]))
                                         {
                                             //当前认知层次在该题占比多少
                                             ePoint = 1;
@@ -1383,7 +1383,7 @@ namespace TEAMModelOS.Controllers.Analysis
                                         x++;
                                     }
                                     else {
-                                        if (i.points.Contains(knowledgeName[k]))
+                                        if (i.points != null && i.points.Contains(knowledgeName[k]))
                                         {
                                             //当前知识点在该题占比多少
                                             ePoint = 1 / Convert.ToDouble(i.points.Count);