zhouj1203@hotmail.com 3 年 前
コミット
c15d2d8a47
1 ファイル変更4 行追加4 行削除
  1. 4 4
      TEAMModelOS/Controllers/Common/ExamController.cs

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

@@ -577,7 +577,7 @@ namespace TEAMModelOS.Controllers
             if (!request.TryGetProperty("answer", out JsonElement answer)) return BadRequest();
             if (!request.TryGetProperty("studentId", out JsonElement studentId)) return BadRequest();
             if (!request.TryGetProperty("subjectId", out JsonElement subjectId)) return BadRequest();
-            if (!request.TryGetProperty("classId", out JsonElement classId)) return BadRequest();
+            //if (!request.TryGetProperty("classId", out JsonElement classId)) return BadRequest();
             if (!request.TryGetProperty("multipleRule", out JsonElement multipleRule)) return BadRequest();
             //if (!request.TryGetProperty("answers ", out JsonElement tandardAnswer)) return BadRequest();
             if (!request.TryGetProperty("paperId", out JsonElement paperId)) return BadRequest();
@@ -586,12 +586,12 @@ namespace TEAMModelOS.Controllers
             if (!request.TryGetProperty("scode", out JsonElement scode)) return BadRequest();
             try
             {
-                List<string> ids = new List<string>();
-                ids = classId.ToObject<List<string>>();
+                //List<string> ids = new List<string>();
+                //ids = classId.ToObject<List<string>>();
                 var client = _azureCosmos.GetCosmosClient();
                 List<ExamClassResult> examClassResults = new List<ExamClassResult>();
                 await foreach (var item in client.GetContainer("TEAMModelOS", "Common").GetItemQueryStreamIterator(
-                    queryText: $"select value(c) from c where c.examId = '{id}' and c.subjectId = '{subjectId}' and c.info.id in ({string.Join(",", ids.Select(o => $"'{o}'"))})",
+                    queryText: $"select value(c) from c where c.examId = '{id}' and c.subjectId = '{subjectId}' and array_contains(c.studentIds,'{studentId}')",
                     requestOptions: new QueryRequestOptions() { PartitionKey = new PartitionKey($"ExamClassResult-{school}") }))
                 {
                     using var json = await JsonDocument.ParseAsync(item.ContentStream);