CrazyIter_Bin 2 years ago
parent
commit
00060497af
1 changed files with 14 additions and 1 deletions
  1. 14 1
      TEAMModelOS/Controllers/Both/CourseBaseController.cs

+ 14 - 1
TEAMModelOS/Controllers/Both/CourseBaseController.cs

@@ -100,7 +100,18 @@ namespace TEAMModelOS.Controllers.Both
                             courseBase.creatorId = id;
                             courseBase.code = $"CourseBase-{id}";
                         }
-                        var response = await client.GetContainer(Constant.TEAMModelOS, "School").ReadItemStreamAsync(courseBase.id, new PartitionKey(courseBase.code));
+                        var response = await client.GetContainer(Constant.TEAMModelOS, tbname).ReadItemStreamAsync(courseBase.id, new PartitionKey(courseBase.code));
+                        if (response.Status == 200)
+                        {
+                            await client.GetContainer(Constant.TEAMModelOS, tbname).ReplaceItemAsync(courseBase,courseBase.id, new PartitionKey(courseBase.code));
+                        }
+                        else {
+                            await client.GetContainer(Constant.TEAMModelOS, tbname).CreateItemAsync(courseBase, new PartitionKey(courseBase.code));
+                        }
+                        return Ok(new { course = courseBase });
+                    case bool when $"{option}".Equals("import", StringComparison.OrdinalIgnoreCase) && $"{scope}".Equals("school", StringComparison.OrdinalIgnoreCase):
+                        if (!request.TryGetProperty("courses", out JsonElement _courses)) return BadRequest();
+                        List<CourseBase> courses = _courses.ToObject<List<CourseBase>>();
                         break;
                 }
             } catch (Exception ex) { 
@@ -108,4 +119,6 @@ namespace TEAMModelOS.Controllers.Both
             return Ok();
         }
     }
+    public class CourseBaseImport { 
+    }
 }