Bladeren bron

Merge branch 'develop-rc' into develop

CrazyIter_Bin 2 jaren geleden
bovenliggende
commit
3e7ee5e563

+ 1 - 1
TEAMModelOS/Controllers/Third/Sc/ScController.cs

@@ -573,7 +573,7 @@ namespace TEAMModelOS.Controllers
                     string enurl = $"status=5&param={HttpUtility.UrlEncode(new { scsso.Pxid, scsso.tid }.ToJsonString(), Encoding.UTF8)}";
                     return Redirect(rurl.Append($"?{enurl}").ToString());
                 }
-                string setsql = $"select  value(c) from c where and c.id ='{scTeachers[0].areaId}' contains(c.accessConfig,'{ scTeachers[0].ProjectID}') and contains(c.accessConfig,'{ scTeachers[0].ProjectItemID}')  and contains(c.accessConfig,'scsyxpt') ";
+                string setsql = $"select  value(c) from c where   c.id ='{scTeachers[0].areaId}' and contains(c.accessConfig,'{ scTeachers[0].ProjectID}') and contains(c.accessConfig,'{ scTeachers[0].ProjectItemID}')  and contains(c.accessConfig,'scsyxpt') ";
                 AreaSetting setting = null;
                 await foreach (var item in _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Normal").GetItemQueryIterator<AreaSetting>(queryText: setsql,
                     requestOptions: new QueryRequestOptions() { PartitionKey = new PartitionKey($"AreaSetting") }))

+ 26 - 1
TEAMModelOS/Controllers/Third/Sc/ScDataInitController.cs

@@ -30,6 +30,7 @@ using static TEAMModelOS.Controllers.FixDataController;
 using static TEAMModelOS.SDK.SchoolService;
 using Microsoft.AspNetCore.Hosting;
 using static TEAMModelOS.Controllers.ScController;
+using OpenXmlPowerTools;
 
 namespace TEAMModelOS.Controllers.Third
 {
@@ -220,10 +221,34 @@ namespace TEAMModelOS.Controllers.Third
             var teachers = json.ToObject<List<ScTeacher>>(new JsonSerializerOptions { PropertyNameCaseInsensitive = false });
             // 处理省平台后补的教师,教师的学校不在当前区的学校列表中。
             teachers.RemoveAll(x => !ScSchools.Select(z => z.schoolid).Contains(x.SchoolID));
+            string json_teachers = teachers.ToJsonString();
             var a = teachers.Select(x => $"{x.TID}").ToList();
-            var s = ScTeachers.Select(y => $"{ y.TID}").ToList();
+            string json_a=a.ToJsonString();
+            var s = ScTeachers.Where(z=>!string.IsNullOrWhiteSpace(z.tmdid)).Select(y => $"{ y.TID}").ToList();
             //未保存在数据库的。
             var asin = a.Except(s).ToList();
+            string json_asin = asin.ToJsonString();
+            var aa =a.Except(asin);
+            if (aa.Any()) {
+                List<ScTeacher> newTeachers = new List<ScTeacher>();
+                var allScteacher = json.ToObject<List<ScTeacher>>(new JsonSerializerOptions { PropertyNameCaseInsensitive = false });
+                aa.ToList().ForEach(a => {
+                    var newTeacher = allScteacher.Find(x => $"{x.TID}".Equals(a));
+                    if (newTeacher != null) {
+                       var schoolInfo = ScSchools.Find(x => x.schoolid == newTeacher.SchoolID);
+                        if (schoolInfo != null) {
+                            newTeacher.status = 1; 
+                            newTeacher.areaId = $"{areaId}";
+                            newTeacher.PartitionKey = "ScTeacher";
+                            newTeacher.tmdid = null;
+                            newTeacher.schoolCode = schoolInfo?.schoolCode;
+                            newTeacher.RowKey = $"{newTeacher.PXID}";
+                            newTeachers.Add(newTeacher);
+                        }
+                    }
+                });
+                 await table.SaveOrUpdateAll(newTeachers);
+            }
             #region 省平台获取到最新的教师,并添加到Table中。
             var adds = teachers.FindAll(x => asin.Contains($"{x.TID}"));