浏览代码

Merge branch 'develop3.0' of http://106.12.23.251:10080/TEAMMODEL/TEAMModelOS into develop3.0

jeff 4 年之前
父节点
当前提交
d4649aa56f
共有 1 个文件被更改,包括 13 次插入6 次删除
  1. 13 6
      TEAMModelOS/Controllers/Teacher/InitController.cs

+ 13 - 6
TEAMModelOS/Controllers/Teacher/InitController.cs

@@ -195,13 +195,20 @@ namespace TEAMModelOS.Controllers
             if (response.Status == 200)
             {
                 using var json = await JsonDocument.ParseAsync(response.ContentStream);
-                foreach (var obj in json.RootElement.GetProperty("roles").EnumerateArray())
+
+                if (json.RootElement.TryGetProperty("roles", out JsonElement _roles))
                 {
-                    roles.Add(obj.GetString());
+                    foreach (var obj in _roles.EnumerateArray())
+                    {
+                        roles.Add(obj.GetString());
+                    }
                 }
-                foreach (var obj in json.RootElement.GetProperty("permissions").EnumerateArray())
+                if (json.RootElement.TryGetProperty("permissions", out JsonElement _permissions))
                 {
-                    permissions.Add(obj.GetString());
+                    foreach (var obj in _permissions.EnumerateArray())
+                    {
+                        permissions.Add(obj.GetString());
+                    }
                 }
             }
             if (roles.Count == 0)
@@ -416,8 +423,8 @@ namespace TEAMModelOS.Controllers
                         id = id,
                         name = name.ToString(),
                         picture = picture?.ToString(), //TODO JJ,原本的判断会出现报错,没检查null却又去ToString
-                        permissions = null,
-                        roles = new List<string>(new string[] { "teacher" }),
+                        //permissions = null, 加入學校無須特別設置此字段
+                        roles = new List<string>(){ "teacher" },
                         status = grant_type.GetString()
                     };
                     var response = await client.GetContainer("TEAMModelOS", "School").CreateItemAsync(st, new PartitionKey($"Teacher-{school_code}"));