Browse Source

优化Function代码

zhouj1203@hotmail.com 4 years ago
parent
commit
7cc8f6db92
1 changed files with 43 additions and 37 deletions
  1. 43 37
      TEAMModelFunction/TriggerExam.cs

+ 43 - 37
TEAMModelFunction/TriggerExam.cs

@@ -559,32 +559,36 @@ namespace TEAMModelFunction
                                     foreach (string id in classResult.studentIds)
                                     {
                                         int index = classResult.studentIds.IndexOf(id);
-                                        if (classResult.studentScores[index].Count > 0)
+                                        if (classResult.studentScores.Count > 0)
                                         {
-                                            score += classResult.studentScores[index][n] == -1 ? 0 : classResult.studentScores[index][n];
-                                            if (classResult.studentScores[index].Sum() >= rhw && phcount < rhwCount)
+                                            if (classResult.studentScores[index].Count > 0)
                                             {
-                                                if (classResult.studentScores[index][n] <= 0)
+                                                score += classResult.studentScores[index][n] == -1 ? 0 : classResult.studentScores[index][n];
+                                                if (classResult.studentScores[index].Sum() >= rhw && phcount < rhwCount)
                                                 {
-                                                    phCount++;
+                                                    if (classResult.studentScores[index][n] <= 0)
+                                                    {
+                                                        phCount++;
+                                                    }
+                                                    phcount++;
+                                                    continue;
+                                                }
+                                                if (classResult.studentScores[index].Sum() <= rhl && plcount < (info.stuCount - rhlCount))
+                                                {
+                                                    if (classResult.studentScores[index][n] <= 0)
+                                                    {
+                                                        plCount++;
+                                                    }
+                                                    plcount++;
+                                                    continue;
                                                 }
-                                                phcount++;
-                                                continue;
-                                            }
-                                            if (classResult.studentScores[index].Sum() <= rhl && plcount < (info.stuCount - rhlCount))
-                                            {
                                                 if (classResult.studentScores[index][n] <= 0)
                                                 {
-                                                    plCount++;
+                                                    pCount++;
                                                 }
-                                                plcount++;
-                                                continue;
-                                            }
-                                            if (classResult.studentScores[index][n] <= 0)
-                                            {
-                                                pCount++;
                                             }
                                         }
+                                            
                                     }
                                 }
                                 n++;
@@ -651,32 +655,34 @@ namespace TEAMModelFunction
                                     foreach (string id in classResult.studentIds)
                                     {
                                         int index = classResult.studentIds.IndexOf(id);
-                                        if (classResult.studentScores[index].Count > 0)
-                                        {
-                                            score += classResult.studentScores[index][n] == -1 ? 0 : classResult.studentScores[index][n];
-                                            if (classResult.studentScores[index].Sum() >= rhw && phcount < rhwCount)
+                                        if (classResult.studentScores.Count > 0) {
+                                            if (classResult.studentScores[index].Count > 0)
                                             {
-                                                if (classResult.studentScores[index][n] <= 0)
+                                                score += classResult.studentScores[index][n] == -1 ? 0 : classResult.studentScores[index][n];
+                                                if (classResult.studentScores[index].Sum() >= rhw && phcount < rhwCount)
                                                 {
-                                                    phCount++;
+                                                    if (classResult.studentScores[index][n] <= 0)
+                                                    {
+                                                        phCount++;
+                                                    }
+                                                    phcount++;
+                                                    continue;
+                                                }
+                                                if (classResult.studentScores[index].Sum() <= rhl && plcount < (info.stuCount - rhlCount))
+                                                {
+                                                    if (classResult.studentScores[index][n] <= 0)
+                                                    {
+                                                        plCount++;
+                                                    }
+                                                    plcount++;
+                                                    continue;
                                                 }
-                                                phcount++;
-                                                continue;
-                                            }
-                                            if (classResult.studentScores[index].Sum() <= rhl && plcount < (info.stuCount - rhlCount))
-                                            {
                                                 if (classResult.studentScores[index][n] <= 0)
                                                 {
-                                                    plCount++;
+                                                    pCount++;
                                                 }
-                                                plcount++;
-                                                continue;
                                             }
-                                            if (classResult.studentScores[index][n] <= 0)
-                                            {
-                                                pCount++;
-                                            }
-                                        }
+                                        }                                        
                                     }
                                 }
                                 n++;
@@ -818,7 +824,7 @@ namespace TEAMModelFunction
                     {
                         result.studentIds.Add(id);
                     }
-                    csRate.Add(result.studentIds.Count > 0 ? Math.Round(classSrate * 1.0 / classResult.studentIds.Count, 2) : 0 / allScore);
+                    csRate.Add(classResult.studentIds.Count > 0 ? Math.Round(classSrate * 1.0 / classResult.studentIds.Count, 2) : 0 / allScore);
                     //powSum += Math.Pow(classSrate - result.average, 2);
                     //处理选项计数内容
                 }