浏览代码

Merge branch 'PL/develop-BI' into develop

Li 2 年之前
父节点
当前提交
72fdcd31be

+ 2 - 1
TEAMModelBI/Controllers/BISchool/BatchSchoolController.cs

@@ -514,6 +514,7 @@ namespace TEAMModelBI.Controllers.BISchool
             try
             {
                 jsonElement.TryGetProperty("tmdId", out JsonElement tmdId);
+                jsonElement.TryGetProperty("role", out JsonElement role);
                 jsonElement.TryGetProperty("scId", out JsonElement scId);
                 jsonElement.TryGetProperty("name", out JsonElement name);
                 jsonElement.TryGetProperty("order", out JsonElement order);
@@ -550,7 +551,7 @@ namespace TEAMModelBI.Controllers.BISchool
 
                 if (!string.IsNullOrEmpty($"{tmdId}"))
                 {
-                    schoolIds = await CommonFind.FindSchoolIds(cosmosClient, $"{tmdId}");
+                    schoolIds = await CommonFind.FindSchoolIds(cosmosClient, $"{tmdId}", $"{role}");
                     string scsSql = BICommonWay.ManyScSql("c.id", schoolIds);
                     scCntSql.Append($" where {scsSql}");
                 }

+ 2 - 1
TEAMModelBI/Controllers/BISchool/SchoolController.cs

@@ -604,6 +604,7 @@ namespace TEAMModelBI.Controllers.BISchool
                 if (!jsonElement.TryGetProperty("partitionKey", out JsonElement parKey)) return BadRequest();
                 jsonElement.TryGetProperty("userId", out JsonElement userId);
                 jsonElement.TryGetProperty("tmdId", out JsonElement tmdId);
+                jsonElement.TryGetProperty("role", out JsonElement role);
                 if (!jsonElement.TryGetProperty("schoolIds", out JsonElement jsSchoolIds)) return BadRequest();
                 if (!jsonElement.TryGetProperty("busy", out JsonElement busy)) return BadRequest();
                 //jsonElement.TryGetProperty("site", out JsonElement site);//分开部署,就不需要,一站多用时,取消注释
@@ -666,7 +667,7 @@ namespace TEAMModelBI.Controllers.BISchool
                                 //}
                                 //else return Ok(new { state = 404, msg = "依据钉钉手机号未找到醍摩豆账号!" });
                             }
-                            List<string> noSchool = await SchoolWay.SchoolAdviser(cosmosClient, ddInfo, schoolIds, $"{busy}");
+                            List<string> noSchool = await SchoolWay.SchoolAdviser(cosmosClient, ddInfo, schoolIds, $"{role}", $"{busy}");
                             if (noSchool.Count > 0)
                             {
                                 noSchools.Add(ddInfo.tmdId, noSchool);

+ 14 - 8
TEAMModelBI/Tool/CosmosBank/SchoolWay.cs

@@ -43,13 +43,19 @@ namespace TEAMModelBI.Tool.CosmosBank
         /// <param name="schoolIds"></param>
         /// <param name="busy"></param>
         /// <returns></returns>
-        public async static Task<List<string>> SchoolAdviser(CosmosClient cosmosClient, DingDingUserInfo ddUserInfo,List<string> schoolIds ,string busy) 
+        public async static Task<List<string>> SchoolAdviser(CosmosClient cosmosClient, DingDingUserInfo ddUserInfo,List<string> schoolIds ,string role,string busy) 
         {
             Teacher teacher = null;
             bool isReadTec = false;
             bool isAddUpd = false;
             List<string> noSchool = new();
-             var tecResponse = await cosmosClient.GetContainer("TEAMModelOS", "Teacher").ReadItemStreamAsync(ddUserInfo.tmdId, new PartitionKey($"Base"));
+            string joinStatus = "";
+            if (role.Equals("assist"))
+                joinStatus = "顾问";
+            if (role.Equals("sales"))
+                joinStatus = "销售";
+
+            var tecResponse = await cosmosClient.GetContainer("TEAMModelOS", "Teacher").ReadItemStreamAsync(ddUserInfo.tmdId, new PartitionKey($"Base"));
             if (tecResponse.Status == 200)
             {
                 JsonDocument jsonDocument = JsonDocument.Parse(tecResponse.Content);
@@ -89,9 +95,9 @@ namespace TEAMModelBI.Tool.CosmosBank
 
                     if ($"{busy}".Equals("add"))
                     {
-                        if (!schoolTeacher.roles.Contains("assist"))
+                        if (!schoolTeacher.roles.Contains($"{role}"))
                         {
-                            schoolTeacher.roles.Add("assist");
+                            schoolTeacher.roles.Add($"{role}");
                             addSchoolTeache.Add(cosmosClient.GetContainer("TEAMModelOS", "School").ReplaceItemAsync<SchoolTeacher>(schoolTeacher, schoolTeacher.id, new PartitionKey($"Teacher-{schoolId}")));
                         }
                         else
@@ -99,9 +105,9 @@ namespace TEAMModelBI.Tool.CosmosBank
                     }
                     if ($"{busy}".Equals("del"))
                     {
-                        if (schoolTeacher.roles.Contains("assist"))
+                        if (schoolTeacher.roles.Contains($"{role}"))
                         {
-                            schoolTeacher.roles.Remove("assist");
+                            schoolTeacher.roles.Remove($"{role}");
                             teacher.schools.Remove(teacher.schools.Find(x => x.schoolId == schoolId));
                             updSchoolTeache.Add(cosmosClient.GetContainer("TEAMModelOS", "School").ReplaceItemAsync<SchoolTeacher>(schoolTeacher, schoolTeacher.id, new PartitionKey($"Teacher-{schoolId}")));
                         }
@@ -116,9 +122,9 @@ namespace TEAMModelBI.Tool.CosmosBank
                         id = ddUserInfo.tmdId,
                         name = ddUserInfo.tmdName,
                         picture = ddUserInfo.picture,
-                        job = "顾问",
+                        job = joinStatus,
                         subjectIds = new List<string>(),
-                        roles = new List<string> { "assist" },
+                        roles = new List<string> { $"{role}" },
                         permissions = new List<string>(),
                         status = "join",
                         code = $"Teacher-{schoolId}",