|
@@ -17,6 +17,7 @@ using TEAMModelOS.SDK.Models;
|
|
using TEAMModelOS.SDK.Models.Cosmos.BI;
|
|
using TEAMModelOS.SDK.Models.Cosmos.BI;
|
|
using static TEAMModelOS.SDK.Models.Teacher;
|
|
using static TEAMModelOS.SDK.Models.Teacher;
|
|
using Microsoft.AspNetCore.Hosting; //引用读取文件
|
|
using Microsoft.AspNetCore.Hosting; //引用读取文件
|
|
|
|
+using TEAMModelOS.SDK.Models.Service;
|
|
|
|
|
|
namespace TEAMModeBI.Controllers.BISchool
|
|
namespace TEAMModeBI.Controllers.BISchool
|
|
{
|
|
{
|
|
@@ -231,12 +232,39 @@ namespace TEAMModeBI.Controllers.BISchool
|
|
var cosmosClient = _azureCosmos.GetCosmosClient();
|
|
var cosmosClient = _azureCosmos.GetCosmosClient();
|
|
foreach (BISchool bischool in foundSchools.biSchools)
|
|
foreach (BISchool bischool in foundSchools.biSchools)
|
|
{
|
|
{
|
|
- var schoolStatus = await cosmosClient.GetContainer(Constant.TEAMModelOS, "School").ReadItemStreamAsync($"{bischool.id}", new PartitionKey($"Base"));
|
|
|
|
|
|
+ CreateSchoolInfo createSchoolInfo = new CreateSchoolInfo()
|
|
|
|
+ {
|
|
|
|
+ province = bischool.province,
|
|
|
|
+ id = "",
|
|
|
|
+ name = bischool.name,
|
|
|
|
+ city = bischool.city,
|
|
|
|
+ aname = "",
|
|
|
|
+ createCount = 0,
|
|
|
|
+ };
|
|
|
|
+
|
|
|
|
+ //生成学校ID
|
|
|
|
+ createSchoolInfo = await SchoolCode.GenerateSchoolCode(createSchoolInfo, _dingDing, _environment);
|
|
|
|
+
|
|
|
|
+ var schoolStatus = await cosmosClient.GetContainer(Constant.TEAMModelOS, "School").ReadItemStreamAsync($"{createSchoolInfo.id}", new PartitionKey($"Base"));
|
|
if (schoolStatus.Status == 200)
|
|
if (schoolStatus.Status == 200)
|
|
{
|
|
{
|
|
- schools.Add(bischool);
|
|
|
|
|
|
+ createSchoolInfo.createCount = 1;
|
|
|
|
+ createSchoolInfo = await SchoolCode.GenerateSchoolCode(createSchoolInfo, _dingDing, _environment);
|
|
|
|
+ var schoolStatu1 = await cosmosClient.GetContainer(Constant.TEAMModelOS, "School").ReadItemStreamAsync($"{createSchoolInfo.id}", new PartitionKey($"Base"));
|
|
|
|
+ if (schoolStatu1.Status == 200)
|
|
|
|
+ {
|
|
|
|
+ createSchoolInfo.createCount = 2;
|
|
|
|
+ createSchoolInfo = await SchoolCode.GenerateSchoolCode(createSchoolInfo, _dingDing, _environment);
|
|
|
|
+ var schoolStatu2 = await cosmosClient.GetContainer(Constant.TEAMModelOS, "School").ReadItemStreamAsync($"{createSchoolInfo.id}", new PartitionKey($"Base"));
|
|
|
|
+ if (schoolStatu2.Status == 200)
|
|
|
|
+ {
|
|
|
|
+ createSchoolInfo.createCount = 3;
|
|
|
|
+ createSchoolInfo = await SchoolCode.GenerateSchoolCode(createSchoolInfo, _dingDing, _environment);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
}
|
|
}
|
|
- else
|
|
|
|
|
|
+
|
|
|
|
+ if (createSchoolInfo.id != null)
|
|
{
|
|
{
|
|
List<Period> periods = new List<Period>();
|
|
List<Period> periods = new List<Period>();
|
|
string campusId = Guid.NewGuid().ToString();
|
|
string campusId = Guid.NewGuid().ToString();
|
|
@@ -255,7 +283,7 @@ namespace TEAMModeBI.Controllers.BISchool
|
|
});
|
|
});
|
|
School upSchool = new School
|
|
School upSchool = new School
|
|
{
|
|
{
|
|
- id = bischool.id,
|
|
|
|
|
|
+ id = createSchoolInfo.id,
|
|
name = bischool.name,
|
|
name = bischool.name,
|
|
size = bischool.size,
|
|
size = bischool.size,
|
|
code = "Base",
|
|
code = "Base",
|
|
@@ -267,13 +295,13 @@ namespace TEAMModeBI.Controllers.BISchool
|
|
address = bischool.address,
|
|
address = bischool.address,
|
|
picture = "https://teammodelstorage.blob.core.chinacloudapi.cn/0-public/school/bbf54fb3-3fc8-43ae-a358-107281c174cc.png",
|
|
picture = "https://teammodelstorage.blob.core.chinacloudapi.cn/0-public/school/bbf54fb3-3fc8-43ae-a358-107281c174cc.png",
|
|
timeZone = new TEAMModelOS.SDK.Models.TimeZone { label = "(UTC+08:00) 北京,重庆,香港特别行政区,乌鲁木齐", value = "+08:00" },
|
|
timeZone = new TEAMModelOS.SDK.Models.TimeZone { label = "(UTC+08:00) 北京,重庆,香港特别行政区,乌鲁木齐", value = "+08:00" },
|
|
- type = 2,
|
|
|
|
|
|
+ type = 1,
|
|
pk = "School",
|
|
pk = "School",
|
|
ttl = -1,
|
|
ttl = -1,
|
|
- schoolCode = bischool.id,
|
|
|
|
|
|
+ schoolCode = createSchoolInfo.id,
|
|
period = periods
|
|
period = periods
|
|
};
|
|
};
|
|
- stringBuilder.Append($"创建学校:{upSchool.id}【{upSchool.name}】");
|
|
|
|
|
|
+ stringBuilder.Append($"创建学校:{upSchool.name}【{upSchool.id}】");
|
|
//创建学校
|
|
//创建学校
|
|
await cosmosClient.GetContainer(Constant.TEAMModelOS, "School").CreateItemAsync<School>(upSchool, new PartitionKey(upSchool.code));
|
|
await cosmosClient.GetContainer(Constant.TEAMModelOS, "School").CreateItemAsync<School>(upSchool, new PartitionKey(upSchool.code));
|
|
Teacher teacher = null;
|
|
Teacher teacher = null;
|
|
@@ -288,12 +316,12 @@ namespace TEAMModeBI.Controllers.BISchool
|
|
if (teacher != null)
|
|
if (teacher != null)
|
|
{
|
|
{
|
|
//教师存在,在该教师信息中添加要管理的学校信息
|
|
//教师存在,在该教师信息中添加要管理的学校信息
|
|
- teacher.schools.Add(new Teacher.TeacherSchool { schoolId = bischool.id, name = bischool.name, status = "join", time = DateTimeOffset.UtcNow.ToUnixTimeMilliseconds() });
|
|
|
|
|
|
+ teacher.schools.Add(new Teacher.TeacherSchool { schoolId = createSchoolInfo.id, name = bischool.name, status = "join", time = DateTimeOffset.UtcNow.ToUnixTimeMilliseconds() });
|
|
await cosmosClient.GetContainer(Constant.TEAMModelOS, "Teacher").ReplaceItemAsync<Teacher>(teacher, bischool.admin, new PartitionKey("Base"));
|
|
await cosmosClient.GetContainer(Constant.TEAMModelOS, "Teacher").ReplaceItemAsync<Teacher>(teacher, bischool.admin, new PartitionKey("Base"));
|
|
SchoolTeacher schoolTeacher = new SchoolTeacher
|
|
SchoolTeacher schoolTeacher = new SchoolTeacher
|
|
{
|
|
{
|
|
id = bischool.admin,
|
|
id = bischool.admin,
|
|
- code = $"Teacher-{bischool.id}",
|
|
|
|
|
|
+ code = $"Teacher-{createSchoolInfo.id}",
|
|
roles = new List<string> { "admin", "teacher" },
|
|
roles = new List<string> { "admin", "teacher" },
|
|
job = "管理员",
|
|
job = "管理员",
|
|
name = teacher.name,
|
|
name = teacher.name,
|
|
@@ -319,8 +347,8 @@ namespace TEAMModeBI.Controllers.BISchool
|
|
picture = "",
|
|
picture = "",
|
|
//创建账号并第一次登录IES5则默认赠送1G
|
|
//创建账号并第一次登录IES5则默认赠送1G
|
|
size = 1,
|
|
size = 1,
|
|
- defaultSchool = bischool.id,
|
|
|
|
- schools = new List<Teacher.TeacherSchool>() { new TeacherSchool { schoolId = bischool.id, name = bischool.name, status = "join", time = DateTimeOffset.UtcNow.ToUnixTimeMilliseconds() } }
|
|
|
|
|
|
+ defaultSchool = createSchoolInfo.id,
|
|
|
|
+ schools = new List<Teacher.TeacherSchool>() { new TeacherSchool { schoolId = createSchoolInfo.id, name = bischool.name, status = "join", time = DateTimeOffset.UtcNow.ToUnixTimeMilliseconds() } }
|
|
};
|
|
};
|
|
|
|
|
|
stringBuilder.Append($"没有该教师信息创建的教师信息:{addteacher.name}【{addteacher.id}】");
|
|
stringBuilder.Append($"没有该教师信息创建的教师信息:{addteacher.name}【{addteacher.id}】");
|
|
@@ -328,7 +356,7 @@ namespace TEAMModeBI.Controllers.BISchool
|
|
SchoolTeacher schoolTeacher = new SchoolTeacher
|
|
SchoolTeacher schoolTeacher = new SchoolTeacher
|
|
{
|
|
{
|
|
id = bischool.admin,
|
|
id = bischool.admin,
|
|
- code = $"Teacher-{bischool.id}",
|
|
|
|
|
|
+ code = $"Teacher-{createSchoolInfo.id}",
|
|
roles = new List<string> { "admin", "teacher" },
|
|
roles = new List<string> { "admin", "teacher" },
|
|
job = "管理员",
|
|
job = "管理员",
|
|
name = bischool.admin,
|
|
name = bischool.admin,
|
|
@@ -1200,10 +1228,6 @@ namespace TEAMModeBI.Controllers.BISchool
|
|
/// </summary>
|
|
/// </summary>
|
|
public record BISchool()
|
|
public record BISchool()
|
|
{
|
|
{
|
|
- /// <summary>
|
|
|
|
- /// 学校ID
|
|
|
|
- /// </summary>
|
|
|
|
- public string id { get; set; }
|
|
|
|
/// <summary>
|
|
/// <summary>
|
|
/// 学校名称
|
|
/// 学校名称
|
|
/// </summary>
|
|
/// </summary>
|