|
@@ -55,8 +55,14 @@ namespace TEAMModelOS.SDK.Models
|
|
|
SchoolTeacher schoolTeacher = await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "School").ReadItemAsync<SchoolTeacher>(teacher.id, new PartitionKey($"Teacher-{school.id}"));
|
|
|
if (schoolTeacher != null)
|
|
|
{
|
|
|
- if (schoolTeacher.roles.IsEmpty() || !schoolTeacher.roles.Contains("teacher"))
|
|
|
+ if (!schoolTeacher.roles.IsEmpty() )
|
|
|
{
|
|
|
+ if (!schoolTeacher.roles.Contains("teacher"))
|
|
|
+ {
|
|
|
+ schoolTeacher.roles.Add("teacher");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ else {
|
|
|
schoolTeacher.roles = new List<string> { "teacher" };
|
|
|
}
|
|
|
schoolTeacher.status = "join";
|
|
@@ -66,7 +72,7 @@ namespace TEAMModelOS.SDK.Models
|
|
|
schoolTeacher.createTime = DateTimeOffset.UtcNow.ToUnixTimeMilliseconds();
|
|
|
schoolTeacher.ttl = -1;
|
|
|
schoolTeacher.permissions = schoolTeacher.permissions.IsNotEmpty() ? schoolTeacher.permissions : new List<string>();
|
|
|
- await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "School").UpsertItemAsync(schoolTeacher);
|
|
|
+ await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "School").UpsertItemAsync(schoolTeacher, new PartitionKey(schoolTeacher.code));
|
|
|
}
|
|
|
}
|
|
|
catch (CosmosException)
|
|
@@ -84,7 +90,7 @@ namespace TEAMModelOS.SDK.Models
|
|
|
createTime = DateTimeOffset.UtcNow.ToUnixTimeMilliseconds(),
|
|
|
ttl = -1
|
|
|
};
|
|
|
- await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "School").UpsertItemAsync(schoolTeacher);
|
|
|
+ await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "School").UpsertItemAsync(schoolTeacher,new PartitionKey(schoolTeacher.code));
|
|
|
}
|
|
|
}
|
|
|
}
|
|
@@ -103,7 +109,7 @@ namespace TEAMModelOS.SDK.Models
|
|
|
status = "join",
|
|
|
createTime = DateTimeOffset.UtcNow.ToUnixTimeMilliseconds()
|
|
|
};
|
|
|
- await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "School").UpsertItemAsync(schoolTeacher);
|
|
|
+ await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "School").UpsertItemAsync(schoolTeacher, new PartitionKey(schoolTeacher.code));
|
|
|
}
|
|
|
await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Teacher").ReplaceItemAsync(teacher, teacher.id, new PartitionKey("Base"));
|
|
|
|