hhb 8 miesięcy temu
rodzic
commit
841c7fdd91
1 zmienionych plików z 8 dodań i 8 usunięć
  1. 8 8
      TEAMModelOS/Controllers/Common/ExamController.cs

+ 8 - 8
TEAMModelOS/Controllers/Common/ExamController.cs

@@ -396,7 +396,7 @@ namespace TEAMModelOS.Controllers
                 var client = _azureCosmos.GetCosmosClient();
                 List<string> ids = [];
                 List<string> clds = classId.ToObject<List<string>>().ToList();
-                List<string> clas = classId.ToObject<List<string>>().ToList();
+                //List<string> clas = classId.ToObject<List<string>>().ToList();
                 List<ExamSubject> subs = [];
                 List<PaperSimple> paperSimples = [];
                 List<(string id,string type)> source = [];
@@ -476,21 +476,21 @@ namespace TEAMModelOS.Controllers
 
                 var point = paperSimples.Count > 0 ? paperSimples.FirstOrDefault().point.Sum() : 0;
                 var gradeExamAverageScore = averages.Count >0 ? Math.Round(averages.Select(c => c.score).Sum() / averages.Count,2) : 0;
-                if (clas.Count == 0)
+                if (clds.Count == 1)
                 {
-                    var queryClass = $"select value(c) from c where  c.examId in ({string.Join(",", ids.Select(o => $"'{o}'"))})";
+                    var queryClass = $"select value(c) from c where c.info.id = '{clds[0]}'and c.examId in ({string.Join(",", ids.Select(o => $"'{o}'"))})";
+
                     await foreach (var item in client.GetContainer(Constant.TEAMModelOS, "Common").GetItemQueryIteratorSql<ExamClassResult>(queryText: queryClass, requestOptions: new QueryRequestOptions() { PartitionKey = new PartitionKey($"ExamClassResult-{code}") }))
                     {
-                        results.Add(item);
+                        classResults.Add(item);
                     }
+                   
                 }
-
                 else {
-                    var queryClass = $"select value(c) from c where c.info.id = '{clds[0]}'and c.examId in ({string.Join(",", ids.Select(o => $"'{o}'"))})";
-                    
+                    var queryClass = $"select value(c) from c where  c.examId in ({string.Join(",", ids.Select(o => $"'{o}'"))}) and c.info.id in ({string.Join(",", clds.Select(o => $"'{o}'"))})";
                     await foreach (var item in client.GetContainer(Constant.TEAMModelOS, "Common").GetItemQueryIteratorSql<ExamClassResult>(queryText: queryClass, requestOptions: new QueryRequestOptions() { PartitionKey = new PartitionKey($"ExamClassResult-{code}") }))
                     {
-                        classResults.Add(item);
+                        results.Add(item);
                     }
 
                 }