Explorar o código

调整StuActivity

CrazyIter_Bin hai 1 ano
pai
achega
444b7fb09c

+ 1 - 1
TEAMModelOS.FunctionV4/CosmosDB/TriggerArt.cs

@@ -42,7 +42,7 @@ namespace TEAMModelOS.FunctionV4.CosmosDB
                     ActivityList data = input.ToObject<ActivityList>();
                     //删除blob 相关资料
                     await _azureStorage.GetBlobServiceClient().DeleteBlobs(_dingDing, tdata.school, new List<string> { $"art/{tdata.id}" });
-                    await IESActivityService.DeleteActivity(_coreAPIHttpService, client, _dingDing, data);
+                   // await IESActivityService.DeleteActivity(_coreAPIHttpService, client, _dingDing, data);
                     var table_cancel = _azureStorage.GetCloudTableClient().GetTableReference("ChangeRecord");
                     List<ChangeRecord> records = await table_cancel.FindListByDict<ChangeRecord>(new Dictionary<string, object>() { { "RowKey", tdata.id } });
                     foreach (var record in records)

+ 1 - 1
TEAMModelOS.FunctionV4/CosmosDB/TriggerCorrect.cs

@@ -27,7 +27,7 @@ namespace TEAMModelOS.FunctionV4
             {
                 await client.GetContainer(Constant.TEAMModelOS, "Common").DeleteItemStreamAsync(tdata.id, new PartitionKey(tdata.code));
                 ActivityList data = input.ToObject<ActivityList>();
-                await IESActivityService.DeleteActivity(_coreAPIHttpService, client, _dingDing, data);
+                //await IESActivityService.DeleteActivity(_coreAPIHttpService, client, _dingDing, data);
                 var table_cancel = _azureStorage.GetCloudTableClient().GetTableReference("ChangeRecord");
                 List<ChangeRecord> records = await table_cancel.FindListByDict<ChangeRecord>(new Dictionary<string, object>() { { "RowKey", tdata.id } });
                 foreach (var record in records)

+ 1 - 1
TEAMModelOS.FunctionV4/CosmosDB/TriggerExam.cs

@@ -54,7 +54,7 @@ namespace TEAMModelOS.FunctionV4
                 {
                     await client.GetContainer(Constant.TEAMModelOS, "Common").DeleteItemStreamAsync(data.id, new PartitionKey(data.code));
                     ActivityList activity = input.ToObject<ActivityList>();
-                    await IESActivityService.DeleteActivity(_coreAPIHttpService, client, _dingDing, activity);
+                    //await IESActivityService.DeleteActivity(_coreAPIHttpService, client, _dingDing, activity);
                     var table_cancel = _azureStorage.GetCloudTableClient().GetTableReference("ChangeRecord");
                     List<ChangeRecord> records = await table_cancel.FindListByDict<ChangeRecord>(new Dictionary<string, object>() { { "RowKey", data.id } });
                     foreach (var record in records)

+ 1 - 1
TEAMModelOS.FunctionV4/CosmosDB/TriggerExamLite.cs

@@ -29,7 +29,7 @@ namespace TEAMModelOS.FunctionV4
                 {
                     await client.GetContainer(Constant.TEAMModelOS, "Common").DeleteItemStreamAsync(tdata.id, new PartitionKey(tdata.code));
                     ActivityList data = input.ToObject<ActivityList>();
-                    await IESActivityService.DeleteActivity(_coreAPIHttpService, client, _dingDing, data);
+                   // await IESActivityService.DeleteActivity(_coreAPIHttpService, client, _dingDing, data);
                     var table_cancel = _azureStorage.GetCloudTableClient().GetTableReference("ChangeRecord");
                     List<ChangeRecord> records = await table_cancel.FindListByDict<ChangeRecord>(new Dictionary<string, object>() { { "RowKey", tdata.id } });
                     foreach (var record in records)

+ 12 - 11
TEAMModelOS.FunctionV4/CosmosDB/TriggerHomework.cs

@@ -30,7 +30,7 @@ namespace TEAMModelOS.FunctionV4
                 {
                     await client.GetContainer(Constant.TEAMModelOS, "Common").DeleteItemStreamAsync(tdata.id, new PartitionKey(tdata.code));
                     ActivityList data = input.ToObject<ActivityList>();
-                    await IESActivityService.DeleteActivity(_coreAPIHttpService, client, _dingDing, data);
+                    //await IESActivityService.DeleteActivity(_coreAPIHttpService, client, _dingDing, data);
                     var table_cancel = _azureStorage.GetCloudTableClient().GetTableReference("ChangeRecord");
                     List<ChangeRecord> records = await table_cancel.FindListByDict<ChangeRecord>(new Dictionary<string, object>() { { "RowKey", tdata.id } });
                     foreach (var record in records)
@@ -191,14 +191,13 @@ namespace TEAMModelOS.FunctionV4
             (List<RMember> tmdids, List<RGroupList> classLists) = await GroupListService.GetMemberByListids(_coreAPIHttpService, client, _dingDing, classes, work.school, ps);
             var addStudentsCls = tmdids.FindAll(x => x.type == 2);
             var addTmdidsCls = tmdids.FindAll(x => x.type == 1);
-            List<StuActivity> stuActivities = new();
-            List<StuActivity> tmdActivities = new();
-            List<StuActivity> tchActivities = new();
-
+            //List<StuActivity> stuActivities = new();
+            //List<StuActivity> tmdActivities = new();
+            //List<StuActivity> tchActivities = new();
+            //List<StuActivity> tac = new();
             List<string> tIds = addStudentsCls.Select(x => x.id).ToList();
-            List<StuActivity> tac = new();
-
-            await foreach (var item in client.GetContainer(Constant.TEAMModelOS, "Student").GetItemQueryIterator<StuActivity>(queryText: $"select value(c) from c where c.id ='{work.id}' and c.type = 'Homework'"))
+            /*
+                         await foreach (var item in client.GetContainer(Constant.TEAMModelOS, "Student").GetItemQueryIterator<StuActivity>(queryText: $"select value(c) from c where c.id ='{work.id}' and c.type = 'Homework'"))
             {
                 tac.Add(item);
 
@@ -319,6 +318,7 @@ namespace TEAMModelOS.FunctionV4
                     });
                 });
             }
+             */
             (List<RMember> tchList, List<RGroupList> classInfos) = await GroupListService.GetMemberByListids(_coreAPIHttpService, client, _dingDing, work.tchLists, work.school, ps);
             (string standard, List<string> tmdids, string school, List<string> update, int statistics) list = (null, null, null, new List<string> { StatisticsService.OfflineRecord }, 0);
             if (tchList.IsNotEmpty())
@@ -331,7 +331,8 @@ namespace TEAMModelOS.FunctionV4
                     list.school = school.id;
                     list.standard = school.standard;
                 }
-                tchList.ForEach(x =>
+                /*
+                 tchList.ForEach(x =>
                 {
                     HashSet<string> classIds = new();
                     classInfos.ForEach(z =>
@@ -375,9 +376,9 @@ namespace TEAMModelOS.FunctionV4
                     });
 
                 });
-
+                 */
             }
-            await IESActivityService.SaveStuActivity(client, _dingDing, stuActivities, tmdActivities, tchActivities);
+            //await IESActivityService.SaveStuActivity(client, _dingDing, stuActivities, tmdActivities, tchActivities);
             await StatisticsService.SendServiceBus(list, _configuration, _serviceBus, client);
 
         }

+ 8 - 7
TEAMModelOS.FunctionV4/CosmosDB/TriggerStudy.cs

@@ -35,7 +35,7 @@ namespace TEAMModelOS.FunctionV4
                 {
                     await client.GetContainer(Constant.TEAMModelOS, "Common").DeleteItemStreamAsync(tdata.id, new PartitionKey(tdata.code));
                     ActivityList data = input.ToObject<ActivityList>();
-                    await IESActivityService.DeleteActivity(_coreAPIHttpService, client, _dingDing, data);
+                    //await IESActivityService.DeleteActivity(_coreAPIHttpService, client, _dingDing, data);
                     var table_cancel = _azureStorage.GetCloudTableClient().GetTableReference("ChangeRecord");
                     List<ChangeRecord> records = await table_cancel.FindListByDict<ChangeRecord>(new Dictionary<string, object>() { { "RowKey", tdata.id } });
                     foreach (var record in records)
@@ -121,7 +121,7 @@ namespace TEAMModelOS.FunctionV4
                                     }
                                 }
                                 (List<RMember> tchList, List<RGroupList> classInfos) = await GroupListService.GetMemberByListids(_coreAPIHttpService, client, _dingDing, study.tchLists, study.school, ps);
-                                List<StuActivity> tchActivities = new List<StuActivity>();
+                                //List<StuActivity> tchActivities = new List<StuActivity>();
                                 (string standard, List<string> tmdids, string school, List<string> update, int statistics) list = (null, null, null, new List<string> { StatisticsService.OfflineRecord }, 0);
                                 if (tchList.IsNotEmpty())
                                 {                                  
@@ -150,9 +150,9 @@ namespace TEAMModelOS.FunctionV4
                                             }
                                         }
                                     }
-                                   /* var groupNames =  study.groupLists.FirstOrDefault().Select(x => x.Value).FirstOrDefault();
-                                    var gname = tchList.FirstOrDefault().groupName;*/
-                                    if (ids.Count == 0) {
+
+                                    /*
+                                     if (ids.Count == 0) {
                                         tchList.ForEach(x =>
                                         {
                                             tchActivities.Add(new StuActivity
@@ -176,9 +176,10 @@ namespace TEAMModelOS.FunctionV4
                                                 classIds = study.tchLists
                                             });
                                         });
-                                    }                         
+                                    }  
+                                     */
                                 }
-                                await IESActivityService.SaveStuActivity(client, _dingDing, null, null, tchActivities);
+                                //await IESActivityService.SaveStuActivity(client, _dingDing, null, null, tchActivities);
                                 await StatisticsService.SendServiceBus(list, _configuration, _serviceBus,client);
                                 var messageWorkEnd = new ServiceBusMessage(new { id = tdata.id, progress = "finish", code = tdata.code }.ToJsonString());
                                 messageWorkEnd.ApplicationProperties.Add("name", "Study");

+ 96 - 93
TEAMModelOS.FunctionV4/CosmosDB/TriggerSurvey.cs

@@ -36,7 +36,7 @@ namespace TEAMModelOS.FunctionV4
                 {
                     await client.GetContainer(Constant.TEAMModelOS, "Common").DeleteItemStreamAsync(tdata.id, new PartitionKey(tdata.code));
                     ActivityList data = input.ToObject<ActivityList>();
-                    await IESActivityService.DeleteActivity(_coreAPIHttpService, client, _dingDing, data);
+                    //await IESActivityService.DeleteActivity(_coreAPIHttpService, client, _dingDing, data);
                     _azureRedis.GetRedisClient(8).KeyDelete($"Survey:Record:{tdata.id}");
                     _azureRedis.GetRedisClient(8).KeyDelete($"Survey:Submit:{tdata.id}");
                     var table_cancel = _azureStorage.GetCloudTableClient().GetTableReference("ChangeRecord");
@@ -129,97 +129,98 @@ namespace TEAMModelOS.FunctionV4
 #if DEBUG
                             await _dingDing.SendBotMsg($"{Environment.GetEnvironmentVariable("Option:Location")}问卷调查{tdata.id}写入学生表作为活动列表!", GroupNames.醍摩豆服務運維群組);
 #endif
-                            List<StuActivity> stuActivities = new List<StuActivity>();
-                            List<StuActivity> tmdActivities = new List<StuActivity>();
-                            List<StuActivity> tchActivities = new List<StuActivity>();
+                            /*
+                               List<StuActivity> stuActivities = new List<StuActivity>();
+                              List<StuActivity> tmdActivities = new List<StuActivity>();
+                              List<StuActivity> tchActivities = new List<StuActivity>();
+                              List<string> sub = new();
+                              if (survey.tchLists.Count == 0) {
+                                  if (survey.targets.Count > 0)
+                                  {
+                                      foreach (var course in survey.targets)
+                                      {
+                                          var info = course.ToObject<List<string>>();
+                                          if (info.Count > 1)
+                                          {
+                                              sub.Add(info[0]);
+                                          }
+                                      }
+                                  }
+                              }
 
-                            List<string> sub = new();
-                            if (survey.tchLists.Count == 0) {
-                                if (survey.targets.Count > 0)
-                                {
-                                    foreach (var course in survey.targets)
-                                    {
-                                        var info = course.ToObject<List<string>>();
-                                        if (info.Count > 1)
-                                        {
-                                            sub.Add(info[0]);
-                                        }
-                                    }
-                                }
-                            }
-                                
-                            if (addTmdidsCls.IsNotEmpty())
-                            {
-                                addTmdidsCls.ForEach(x =>
-                                {
-                                    HashSet<string> classIds = new HashSet<string>();
-                                    classLists.ForEach(z => {
-                                        z.members.ForEach(y => {
-                                            if (y.id.Equals(x.id)&& y.type==1) 
-                                            {
-                                                classIds.Add(z.id);
-                                            }
-                                        });
-                                    });
-                                    tmdActivities.Add(new StuActivity
-                                    {
-                                        pk = "Activity",
-                                        id = survey.id,
-                                        code = $"Activity-{x.id}",
-                                        type = "Survey",
-                                        name = survey.name,
-                                        startTime = survey.startTime,
-                                        endTime = survey.endTime,
-                                        scode = survey.code,
-                                        scope = survey.scope,
-                                        school = survey.school,
-                                        creatorId = survey.creatorId,
-                                        subjects = sub,
-                                        blob = survey.blob,
-                                        owner = survey.owner,
-                                        isSub = survey.isSub,
-                                        createTime = DateTimeOffset.UtcNow.ToUnixTimeMilliseconds(),
-                                        taskStatus = -1,
-                                        classIds = classIds.ToList()
-                                    });
-                                });
-                            }
-                            if (addStudentsCls.IsNotEmpty())
-                            {
-                                addStudentsCls.ForEach(x =>
-                                {
-                                    HashSet<string> classIds = new HashSet<string>();
-                                    classLists.ForEach(z => {
-                                        z.members.ForEach(y => {
-                                            if (y.id.Equals(x.id)&& y.code.Equals(survey.school) && y.type == 2)
-                                            {
-                                                classIds.Add(z.id);
-                                            }
-                                        });
-                                    });
-                                    stuActivities.Add(new StuActivity
-                                    {
-                                        pk = "Activity",
-                                        id = survey.id,
-                                        code = $"Activity-{x.code.Replace("Base-", "")}-{x.id}",
-                                        type = "Survey",
-                                        name = survey.name,
-                                        startTime = survey.startTime,
-                                        endTime = survey.endTime,
-                                        scode = survey.code,
-                                        scope = survey.scope,
-                                        school = survey.school,
-                                        creatorId = survey.creatorId,
-                                        subjects = sub,
-                                        blob = survey.blob,
-                                        owner = survey.owner,
-                                        isSub = survey.isSub,
-                                        createTime = DateTimeOffset.UtcNow.ToUnixTimeMilliseconds(),
-                                        taskStatus = -1,
-                                        classIds = classIds.ToList()
-                                    }); 
-                                });
-                            }
+                              if (addTmdidsCls.IsNotEmpty())
+                              {
+                                  addTmdidsCls.ForEach(x =>
+                                  {
+                                      HashSet<string> classIds = new HashSet<string>();
+                                      classLists.ForEach(z => {
+                                          z.members.ForEach(y => {
+                                              if (y.id.Equals(x.id)&& y.type==1) 
+                                              {
+                                                  classIds.Add(z.id);
+                                              }
+                                          });
+                                      });
+                                      tmdActivities.Add(new StuActivity
+                                      {
+                                          pk = "Activity",
+                                          id = survey.id,
+                                          code = $"Activity-{x.id}",
+                                          type = "Survey",
+                                          name = survey.name,
+                                          startTime = survey.startTime,
+                                          endTime = survey.endTime,
+                                          scode = survey.code,
+                                          scope = survey.scope,
+                                          school = survey.school,
+                                          creatorId = survey.creatorId,
+                                          subjects = sub,
+                                          blob = survey.blob,
+                                          owner = survey.owner,
+                                          isSub = survey.isSub,
+                                          createTime = DateTimeOffset.UtcNow.ToUnixTimeMilliseconds(),
+                                          taskStatus = -1,
+                                          classIds = classIds.ToList()
+                                      });
+                                  });
+                              }
+                              if (addStudentsCls.IsNotEmpty())
+                              {
+                                  addStudentsCls.ForEach(x =>
+                                  {
+                                      HashSet<string> classIds = new HashSet<string>();
+                                      classLists.ForEach(z => {
+                                          z.members.ForEach(y => {
+                                              if (y.id.Equals(x.id)&& y.code.Equals(survey.school) && y.type == 2)
+                                              {
+                                                  classIds.Add(z.id);
+                                              }
+                                          });
+                                      });
+                                      stuActivities.Add(new StuActivity
+                                      {
+                                          pk = "Activity",
+                                          id = survey.id,
+                                          code = $"Activity-{x.code.Replace("Base-", "")}-{x.id}",
+                                          type = "Survey",
+                                          name = survey.name,
+                                          startTime = survey.startTime,
+                                          endTime = survey.endTime,
+                                          scode = survey.code,
+                                          scope = survey.scope,
+                                          school = survey.school,
+                                          creatorId = survey.creatorId,
+                                          subjects = sub,
+                                          blob = survey.blob,
+                                          owner = survey.owner,
+                                          isSub = survey.isSub,
+                                          createTime = DateTimeOffset.UtcNow.ToUnixTimeMilliseconds(),
+                                          taskStatus = -1,
+                                          classIds = classIds.ToList()
+                                      }); 
+                                  });
+                              }
+                             */
                             (List<RMember> tchList, List<RGroupList> classInfos) = await GroupListService.GetMemberByListids(_coreAPIHttpService, client, _dingDing, survey.tchLists, survey.school, ps);
                             (string standard, List<string> tmdids, string school, List<string> update, int statistics) list = (null, null, null, new List<string> { StatisticsService.TeacherSurvey }, 0);
                             if (tchList.IsNotEmpty())
@@ -232,7 +233,8 @@ namespace TEAMModelOS.FunctionV4
                                     list.school = school.id;
                                     list.standard = school.standard;
                                 }
-                                tchList.ForEach(x =>
+                                /*
+                                 tchList.ForEach(x =>
                                 {
                                     HashSet<string> classIds = new HashSet<string>();
                                     classInfos.ForEach(z => {
@@ -265,9 +267,10 @@ namespace TEAMModelOS.FunctionV4
                                         classIds = classIds.ToList()
                                     });
                                 });
+                                 */
 
                             }
-                            await IESActivityService.SaveStuActivity(client, _dingDing, stuActivities, tmdActivities, tchActivities);
+                           // await IESActivityService.SaveStuActivity(client, _dingDing, stuActivities, tmdActivities, tchActivities);
                             await StatisticsService.SendServiceBus(list, _configuration, _serviceBus, client);
                             //向学生或醍摩豆账号发起通知
                             #region

+ 16 - 11
TEAMModelOS.FunctionV4/CosmosDB/TriggerVote.cs

@@ -35,7 +35,7 @@ namespace TEAMModelOS.FunctionV4
                 {
                     await client.GetContainer(Constant.TEAMModelOS, "Common").DeleteItemStreamAsync(tdata.id, new PartitionKey(tdata.code));
                     ActivityList data = input.ToObject<ActivityList>();
-                    await IESActivityService. DeleteActivity(_coreAPIHttpService, client, _dingDing, data);
+                   // await IESActivityService. DeleteActivity(_coreAPIHttpService, client, _dingDing, data);
                     _azureRedis.GetRedisClient(8).KeyDelete($"Vote:Record:{tdata.id}");
                     _azureRedis.GetRedisClient(8).KeyDelete($"Vote:Count:{tdata.id}");
                     var table_cancel = _azureStorage.GetCloudTableClient().GetTableReference("ChangeRecord");
@@ -132,6 +132,7 @@ namespace TEAMModelOS.FunctionV4
                             {
                                 tmds.AddRange(addTmdidsCls.Select(x => x.id).ToList());
                             }
+                            /*
                             List<StuActivity> stuActivities = new List<StuActivity>();
                             List<StuActivity> tmdActivities = new List<StuActivity>();
                             List<StuActivity> tchActivities = new List<StuActivity>();
@@ -150,14 +151,16 @@ namespace TEAMModelOS.FunctionV4
                                     }
                                 }
                             }
-                                
+
                             if (tmds.IsNotEmpty())
                             {
                                 tmds.ForEach(x =>
                                 {
                                     HashSet<string> classIds = new HashSet<string>();
-                                    classLists.ForEach(z => {
-                                        z.members.ForEach(y => {
+                                    classLists.ForEach(z =>
+                                    {
+                                        z.members.ForEach(y =>
+                                        {
                                             if (y.id.Equals(x) && y.type == 1)
                                             {
                                                 classIds.Add(z.id);
@@ -191,8 +194,10 @@ namespace TEAMModelOS.FunctionV4
                                 addStudentsCls.ForEach(x =>
                                 {
                                     HashSet<string> classIds = new HashSet<string>();
-                                    classLists.ForEach(z => {
-                                        z.members.ForEach(y => {
+                                    classLists.ForEach(z =>
+                                    {
+                                        z.members.ForEach(y =>
+                                        {
                                             if (y.id.Equals(x.id) && y.code.Equals(vote.school) && y.type == 2)
                                             {
                                                 classIds.Add(z.id);
@@ -221,6 +226,7 @@ namespace TEAMModelOS.FunctionV4
                                     });
                                 });
                             }
+                             */
                             (List<RMember> tchList, List<RGroupList> classInfos) = await GroupListService.GetMemberByListids(_coreAPIHttpService, client, _dingDing, vote.tchLists, vote.school, ps);
                             (string standard, List<string> tmdids, string school, List<string> update, int statistics) list = (null, null, null, new List<string> { StatisticsService.TeacherVote }, 0);
                             if (tchList.IsNotEmpty())
@@ -233,7 +239,8 @@ namespace TEAMModelOS.FunctionV4
                                     list.school = school.id;
                                     list.standard = school.standard;
                                 }
-                                tchList.ForEach(x =>
+                                /*
+                                 tchList.ForEach(x =>
                                 {
                                     HashSet<string> classIds = new HashSet<string>();
                                     classInfos.ForEach(z => {
@@ -265,12 +272,10 @@ namespace TEAMModelOS.FunctionV4
                                         classIds = classIds.ToList()
                                     });
                                 });
+                                 */
 
                             }
-                            //await _dingDing.SendBotMsg($"{Environment.GetEnvironmentVariable("Option:Location")}投票活动,:教研组活动:" +
-
-                            //   $"{tchActivities.ToJsonString()}\n", GroupNames.醍摩豆服務運維群組);
-                            await IESActivityService.SaveStuActivity(client, _dingDing, stuActivities, tmdActivities, tchActivities);
+                            // await IESActivityService.SaveStuActivity(client, _dingDing, stuActivities, tmdActivities, tchActivities);
                             await StatisticsService.SendServiceBus(list, _configuration, _serviceBus, client);
                             //向学生或醍摩豆账号发起通知
                             #region

+ 7 - 7
TEAMModelOS.FunctionV4/ServiceBus/ActiveTaskTopic.cs

@@ -499,19 +499,19 @@ namespace TEAMModelOS.FunctionV4.ServiceBus
                 //await StuListService.FixStuCourse(client, stuListChange);
                 //Vote投票 Survey问卷 Exam评测 Learn学习活动 Homework作业活动
                 //名单变动修改学生问卷关联信息
-                await IESActivityService.FixActivity(client, _dingDing, groupChange, "Survey");
+                //await IESActivityService.FixActivity(client, _dingDing, groupChange, "Survey");
                 //名单变动修改学生投票关联信息
-                await IESActivityService.FixActivity(client, _dingDing, groupChange, "Vote");
+                //await IESActivityService.FixActivity(client, _dingDing, groupChange, "Vote");
                 //名单变动修改学生评测关联信息
-                await IESActivityService.FixActivity(client, _dingDing, groupChange, "Exam");
+                //await IESActivityService.FixActivity(client, _dingDing, groupChange, "Exam");
                 //名单变动修改学生研修关联信息
-                await IESActivityService.FixActivity(client, _dingDing, groupChange, "Study");
+                //await IESActivityService.FixActivity(client, _dingDing, groupChange, "Study");
                 //名单变动修改学生简易评测关联信息
-                await IESActivityService.FixActivity(client, _dingDing, groupChange, "ExamLite");
+                //await IESActivityService.FixActivity(client, _dingDing, groupChange, "ExamLite");
                 //名单变动修改学生作业活动信息
-                await IESActivityService.FixActivity(client, _dingDing, groupChange, "Homework");
+                //await IESActivityService.FixActivity(client, _dingDing, groupChange, "Homework");
                 //名单变动修改学生艺术评价活动信息
-                await IESActivityService.FixActivity(client, _dingDing, groupChange, "Art");
+                //await IESActivityService.FixActivity(client, _dingDing, groupChange, "Art");
                 //TODO学习活动
                 //await FixActivity(client, stuListChange, "Learn");
                 if (groupChange.type == null || !groupChange.type.Equals("research") || !groupChange.type.Equals("yxtrain") || !groupChange.type.Equals("activity"))

+ 37 - 37
TEAMModelOS.SDK/Models/Service/Common/ActivityStudentService.cs

@@ -178,18 +178,18 @@ namespace TEAMModelOS.SDK.Services
                     }
                     try
                     {
-                        if (!string.IsNullOrEmpty(school))
-                        {
-                            StuActivity activity = await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Student").ReadItemAsync<StuActivity>(vote.id, new PartitionKey($"Activity-{school}-{userid}"));
-                            activity.taskStatus = taskStatus;
-                            await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Student").ReplaceItemAsync<StuActivity>(activity, vote.id, new PartitionKey($"Activity-{school}-{userid}"));
-                        }
-                        else
-                        {
-                            StuActivity activity = await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Student").ReadItemAsync<StuActivity>(vote.id, new PartitionKey($"Activity-{userid}"));
-                            activity.taskStatus = taskStatus;
-                            await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Student").ReplaceItemAsync<StuActivity>(activity, vote.id, new PartitionKey($"Activity-{userid}"));
-                        }
+                        //if (!string.IsNullOrEmpty(school))
+                        //{
+                        //    StuActivity activity = await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Student").ReadItemAsync<StuActivity>(vote.id, new PartitionKey($"Activity-{school}-{userid}"));
+                        //    activity.taskStatus = taskStatus;
+                        //    await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Student").ReplaceItemAsync<StuActivity>(activity, vote.id, new PartitionKey($"Activity-{school}-{userid}"));
+                        //}
+                        //else
+                        //{
+                        //    StuActivity activity = await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Student").ReadItemAsync<StuActivity>(vote.id, new PartitionKey($"Activity-{userid}"));
+                        //    activity.taskStatus = taskStatus;
+                        //    await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Student").ReplaceItemAsync<StuActivity>(activity, vote.id, new PartitionKey($"Activity-{userid}"));
+                        //}
 
                     }
                     catch (CosmosException ex)
@@ -198,17 +198,17 @@ namespace TEAMModelOS.SDK.Services
                         {
                             try
                             {
-                                StuActivity activity = await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Student").ReadItemAsync<StuActivity>(vote.id, new PartitionKey($"Activity-{userid}"));
-                                activity.taskStatus = taskStatus;
-                                await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Student").ReplaceItemAsync<StuActivity>(activity, vote.id, new PartitionKey($"Activity-{userid}"));
+                                //StuActivity activity = await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Student").ReadItemAsync<StuActivity>(vote.id, new PartitionKey($"Activity-{userid}"));
+                                //activity.taskStatus = taskStatus;
+                                //await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Student").ReplaceItemAsync<StuActivity>(activity, vote.id, new PartitionKey($"Activity-{userid}"));
                             }
                             catch (CosmosException cex)
                             {
                                 try
                                 {
-                                    StuActivity activity = await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Teacher").ReadItemAsync<StuActivity>(vote.id, new PartitionKey($"Activity-{userid}"));
-                                    activity.taskStatus = taskStatus;
-                                    await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Teacher").ReplaceItemAsync<StuActivity>(activity, vote.id, new PartitionKey($"Activity-{userid}"));
+                                    //StuActivity activity = await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Teacher").ReadItemAsync<StuActivity>(vote.id, new PartitionKey($"Activity-{userid}"));
+                                    //activity.taskStatus = taskStatus;
+                                    //await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Teacher").ReplaceItemAsync<StuActivity>(activity, vote.id, new PartitionKey($"Activity-{userid}"));
                                     if (!string.IsNullOrEmpty(standard) && !string.IsNullOrEmpty(school))
                                     {
                                         await StatisticsService.SendServiceBus(($"{standard}", new List<string> { $"{userid}" }, $"{school}", new List<string> { StatisticsService.TeacherVote }, 0), _configuration, _serviceBus, client);
@@ -815,19 +815,19 @@ namespace TEAMModelOS.SDK.Services
                     }
                     try
                     {
-                        if (!string.IsNullOrEmpty(school))
-                        {
-                            StuActivity activity = await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Student").ReadItemAsync<StuActivity>(survey.id, new PartitionKey($"Activity-{school}-{userid}"));
-                            activity.taskStatus = taskStatus;
-                            await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Student").ReplaceItemAsync<StuActivity>(activity, survey.id, new PartitionKey($"Activity-{school}-{userid}"));
-
-                        }
-                        else
-                        {
-                            StuActivity activity = await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Student").ReadItemAsync<StuActivity>(survey.id, new PartitionKey($"Activity-{userid}"));
-                            activity.taskStatus = taskStatus;
-                            await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Student").ReplaceItemAsync<StuActivity>(activity, survey.id, new PartitionKey($"Activity-{userid}"));
-                        }
+                        //if (!string.IsNullOrEmpty(school))
+                        //{
+                        //    StuActivity activity = await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Student").ReadItemAsync<StuActivity>(survey.id, new PartitionKey($"Activity-{school}-{userid}"));
+                        //    activity.taskStatus = taskStatus;
+                        //    await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Student").ReplaceItemAsync<StuActivity>(activity, survey.id, new PartitionKey($"Activity-{school}-{userid}"));
+
+                        //}
+                        //else
+                        //{
+                        //    StuActivity activity = await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Student").ReadItemAsync<StuActivity>(survey.id, new PartitionKey($"Activity-{userid}"));
+                        //    activity.taskStatus = taskStatus;
+                        //    await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Student").ReplaceItemAsync<StuActivity>(activity, survey.id, new PartitionKey($"Activity-{userid}"));
+                        //}
 
                     }
                     catch (CosmosException ex)
@@ -836,9 +836,9 @@ namespace TEAMModelOS.SDK.Services
                         {
                             try
                             {
-                                StuActivity activity = await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Student").ReadItemAsync<StuActivity>(survey.id, new PartitionKey($"Activity-{userid}"));
-                                activity.taskStatus = taskStatus;
-                                await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Student").ReplaceItemAsync<StuActivity>(activity, survey.id, new PartitionKey($"Activity-{userid}"));
+                            //    StuActivity activity = await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Student").ReadItemAsync<StuActivity>(survey.id, new PartitionKey($"Activity-{userid}"));
+                            //    activity.taskStatus = taskStatus;
+                            //    await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Student").ReplaceItemAsync<StuActivity>(activity, survey.id, new PartitionKey($"Activity-{userid}"));
                             }
                             catch (CosmosException cex)
                             {
@@ -846,9 +846,9 @@ namespace TEAMModelOS.SDK.Services
                                 {
                                     try
                                     {
-                                        StuActivity activity = await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Teacher").ReadItemAsync<StuActivity>(survey.id, new PartitionKey($"Activity-{userid}"));
-                                        activity.taskStatus = taskStatus;
-                                        await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Teacher").ReplaceItemAsync<StuActivity>(activity, survey.id, new PartitionKey($"Activity-{userid}"));
+                                        //StuActivity activity = await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Teacher").ReadItemAsync<StuActivity>(survey.id, new PartitionKey($"Activity-{userid}"));
+                                        //activity.taskStatus = taskStatus;
+                                        //await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Teacher").ReplaceItemAsync<StuActivity>(activity, survey.id, new PartitionKey($"Activity-{userid}"));
                                         if (!string.IsNullOrEmpty(standard) && !string.IsNullOrEmpty(school))
                                         {
                                             await StatisticsService.SendServiceBus(($"{standard}", new List<string> { $"{userid}" }, $"{school}", new List<string> { StatisticsService.TeacherSurvey }, 0), _configuration, _serviceBus, client);

+ 25 - 20
TEAMModelOS.SDK/Models/Service/IESActivityService.cs

@@ -125,7 +125,8 @@ namespace TEAMModelOS.SDK
                         }
                     }
                     //stujoin新加入名单的
-                    foreach (Member member in groupChange.stujoin)
+                    /*
+                     foreach (Member member in groupChange.stujoin)
                     {
                         ExamInfo info =  await updateClassResulte(client, classResults, standerAnswers, member, groupChange,activity);
                         var stucourse = new StuActivity
@@ -152,9 +153,11 @@ namespace TEAMModelOS.SDK
                         };
                         await client.GetContainer(Constant.TEAMModelOS, "Student").UpsertItemAsync(stucourse, new PartitionKey(stucourse.code));
                     }
+                     */
 
                     //tmdjoin新加入的
-                    foreach (Member member in groupChange.tmdjoin)
+                    /*
+                      foreach (Member member in groupChange.tmdjoin)
                     {
                         ExamInfo info =  await updateClassResulte(client, classResults, standerAnswers, member, groupChange,activity);
                         var stucourse = new StuActivity
@@ -181,11 +184,11 @@ namespace TEAMModelOS.SDK
                         };
                         await client.GetContainer(Constant.TEAMModelOS, "Student").UpsertItemAsync(stucourse, new PartitionKey(stucourse.code));
                     }
+                     */
                     //tchjoin新加入的
-                    foreach (Member member in groupChange.tchjoin)
+                    /*
+                     foreach (Member member in groupChange.tchjoin)
                     {
-                        //await updateClassResulte(client, classResults, standerAnswers, member.id);
-
                         var groupNames =  activity.groupLists.FirstOrDefault().Select(x => x.Value).FirstOrDefault();
                         if (groupNames.Count > 0)
                         {
@@ -239,7 +242,11 @@ namespace TEAMModelOS.SDK
                         }
                                         
                     }
-                    foreach (Member member in groupChange.stuleave)
+                     */
+
+
+                    /*
+                     foreach (Member member in groupChange.stuleave)
                     {
                         try
                         {
@@ -259,7 +266,6 @@ namespace TEAMModelOS.SDK
                         catch (CosmosException)
                         {
                             continue;
-                            // 继续执行 删除失败
                         }
                     }
                     foreach (Member member in groupChange.tmdleave)
@@ -281,7 +287,6 @@ namespace TEAMModelOS.SDK
                         catch (CosmosException)
                         {
                             continue;
-                            // 继续执行 删除失败
                         }
                     }
                     foreach (Member member in groupChange.tchleave)
@@ -302,9 +307,9 @@ namespace TEAMModelOS.SDK
                         catch (CosmosException)
                         {
                             continue;
-                            // 继续执行 删除失败
                         }
                     }
+                     */
                 }
             }
             catch (CosmosException e)
@@ -596,16 +601,11 @@ namespace TEAMModelOS.SDK
             }
         }
         */
-        public  static async  Task FixLessonRecord(CosmosClient client, DingDing dingDing, GroupChange groupChange)
-        {
-            if (groupChange.status.Equals("delete")) {
-                string sql = "select value(c) from c where (c.status<>404 or IS_DEFINED(c.status) = false ) and  array_length(c.groupIds)>0  ";
-               
-            }
-          
-        }
 
-        public static async Task<string> SaveStuActivity(CosmosClient client, DingDing _dingDing, List<StuActivity> stuActivities, List<StuActivity> tmdActivities, List<StuActivity> tchActivities)
+
+        /*
+         
+          public static async Task<string> SaveStuActivity(CosmosClient client, DingDing _dingDing, List<StuActivity> stuActivities, List<StuActivity> tmdActivities, List<StuActivity> tchActivities)
         {
             try
             {
@@ -643,6 +643,8 @@ namespace TEAMModelOS.SDK
             }
             return "";
         }
+       
+         
         public static async Task RefreshStuActivity(CoreAPIHttpService _coreAPIHttpService, CosmosClient client, DingDing _dingDing, string id, string code)
         {
             MQActivity activity = null;
@@ -721,6 +723,7 @@ namespace TEAMModelOS.SDK
                 await Task.WhenAll(tasks);
             }
         }
+         */
         public static async Task<ExamInfo> updateClassResulte(CosmosClient client, List<ExamClassResult> classResults, List<PaperSimple> standerAnswers, Member member ,GroupChange change,MQActivity activity)
         {
             ExamInfo info = new();
@@ -818,7 +821,8 @@ namespace TEAMModelOS.SDK
             return info;
 
         }
-        public static async Task DeleteActivity(CoreAPIHttpService _coreAPIHttpService, CosmosClient client, DingDing _dingDing, ActivityList activityList)
+        /*
+           public static async Task DeleteActivity(CoreAPIHttpService _coreAPIHttpService, CosmosClient client, DingDing _dingDing, ActivityList activityList)
         {
             List<(string pId, List<string> gid)> ps = new List<(string pId, List<string> gid)>();
             if (activityList.groupLists.Count > 0)
@@ -924,7 +928,8 @@ namespace TEAMModelOS.SDK
             return "";
         }
 
-      
+         */
+
     }
 
     public class ActivityList

+ 1 - 1
TEAMModelOS/Controllers/Common/CommonController.cs

@@ -173,7 +173,7 @@ namespace TEAMModelOS.Controllers.Common
                 }
                 await client.GetContainer(Constant.TEAMModelOS, "Common").ReplaceItemAsync<Dictionary<string, object>>(dy, dy["id"].ToString(), new Azure.Cosmos.PartitionKey(dy["code"].ToString()));
                 var content = new { id = $"{id}", code = $"{code}" };
-                await IESActivityService.RefreshStuActivity(_coreAPIHttpService, client, _dingDing, $"{id}", $"{code}");
+               // await IESActivityService.RefreshStuActivity(_coreAPIHttpService, client, _dingDing, $"{id}", $"{code}");
                 return Ok(new { code=200, isScore });
             }
             catch (Exception ex)

+ 47 - 55
TEAMModelOS/Controllers/Common/ExamController.cs

@@ -1171,24 +1171,24 @@ namespace TEAMModelOS.Controllers
                     classResult = await client.GetContainer(Constant.TEAMModelOS, "Common").ReplaceItemAsync(result, result.id, new PartitionKey($"{result.code}"));
                     if (isAns)
                     {
-                        if ($"{scope}".Equals(Constant.ScopeStudent))
-                        {
-                            StuActivity activity = await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Student").ReadItemAsync<StuActivity>(id.ToString(), new PartitionKey($"Activity-{school}-{userId}"));
-                            activity.taskStatus = 0;
-                            await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Student").ReplaceItemAsync<StuActivity>(activity, id.ToString(), new PartitionKey($"Activity-{school}-{userId}"));
-                        }
-                        if ($"{scope}".Equals(Constant.ScopeTmdUser))
-                        {
-                            StuActivity activity = await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Student").ReadItemAsync<StuActivity>(id.ToString(), new PartitionKey($"Activity-{userId}"));
-                            activity.taskStatus = 0;
-                            await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Student").ReplaceItemAsync<StuActivity>(activity, id.ToString(), new PartitionKey($"Activity-{userId}"));
-                        }
-                        if ($"{scope}".Equals(Constant.ScopeTeacher))
-                        {
-                            StuActivity activity = await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Teacher").ReadItemAsync<StuActivity>(id.ToString(), new PartitionKey($"Activity-{userId}"));
-                            activity.taskStatus = 0;
-                            await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Teacher").ReplaceItemAsync<StuActivity>(activity, id.ToString(), new PartitionKey($"Activity-{userId}"));
-                        }
+                        //if ($"{scope}".Equals(Constant.ScopeStudent))
+                        //{
+                        //    StuActivity activity = await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Student").ReadItemAsync<StuActivity>(id.ToString(), new PartitionKey($"Activity-{school}-{userId}"));
+                        //    activity.taskStatus = 0;
+                        //    await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Student").ReplaceItemAsync<StuActivity>(activity, id.ToString(), new PartitionKey($"Activity-{school}-{userId}"));
+                        //}
+                        //if ($"{scope}".Equals(Constant.ScopeTmdUser))
+                        //{
+                        //    StuActivity activity = await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Student").ReadItemAsync<StuActivity>(id.ToString(), new PartitionKey($"Activity-{userId}"));
+                        //    activity.taskStatus = 0;
+                        //    await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Student").ReplaceItemAsync<StuActivity>(activity, id.ToString(), new PartitionKey($"Activity-{userId}"));
+                        //}
+                        //if ($"{scope}".Equals(Constant.ScopeTeacher))
+                        //{
+                        //    StuActivity activity = await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Teacher").ReadItemAsync<StuActivity>(id.ToString(), new PartitionKey($"Activity-{userId}"));
+                        //    activity.taskStatus = 0;
+                        //    await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Teacher").ReplaceItemAsync<StuActivity>(activity, id.ToString(), new PartitionKey($"Activity-{userId}"));
+                        //}
                     }
                     else
                     {
@@ -1197,24 +1197,24 @@ namespace TEAMModelOS.Controllers
                             await getArtInfoAsync(client, artId.GetString(), school, result.sum[newIndex], id.GetString(), subjectId.GetString(), quotaId.GetString(), userId, picture, name, userType, ids);
                         };
 
-                        if ($"{scope}".Equals(Constant.ScopeStudent))
-                        {
-                            StuActivity activity = await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Student").ReadItemAsync<StuActivity>(id.ToString(), new PartitionKey($"Activity-{school}-{userId}"));
-                            activity.taskStatus = 1;
-                            await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Student").ReplaceItemAsync<StuActivity>(activity, id.ToString(), new PartitionKey($"Activity-{school}-{userId}"));
-                        }
-                        if ($"{scope}".Equals(Constant.ScopeTmdUser))
-                        {
-                            StuActivity activity = await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Student").ReadItemAsync<StuActivity>(id.ToString(), new PartitionKey($"Activity-{userId}"));
-                            activity.taskStatus = 1;
-                            await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Student").ReplaceItemAsync<StuActivity>(activity, id.ToString(), new PartitionKey($"Activity-{userId}"));
-                        }
-                        if ($"{scope}".Equals(Constant.ScopeTeacher))
-                        {
-                            StuActivity activity = await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Teacher").ReadItemAsync<StuActivity>(id.ToString(), new PartitionKey($"Activity-{userId}"));
-                            activity.taskStatus = 1;
-                            await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Teacher").ReplaceItemAsync<StuActivity>(activity, id.ToString(), new PartitionKey($"Activity-{userId}"));
-                        }
+                        //if ($"{scope}".Equals(Constant.ScopeStudent))
+                        //{
+                        //    StuActivity activity = await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Student").ReadItemAsync<StuActivity>(id.ToString(), new PartitionKey($"Activity-{school}-{userId}"));
+                        //    activity.taskStatus = 1;
+                        //    await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Student").ReplaceItemAsync<StuActivity>(activity, id.ToString(), new PartitionKey($"Activity-{school}-{userId}"));
+                        //}
+                        //if ($"{scope}".Equals(Constant.ScopeTmdUser))
+                        //{
+                        //    StuActivity activity = await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Student").ReadItemAsync<StuActivity>(id.ToString(), new PartitionKey($"Activity-{userId}"));
+                        //    activity.taskStatus = 1;
+                        //    await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Student").ReplaceItemAsync<StuActivity>(activity, id.ToString(), new PartitionKey($"Activity-{userId}"));
+                        //}
+                        //if ($"{scope}".Equals(Constant.ScopeTeacher))
+                        //{
+                        //    StuActivity activity = await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Teacher").ReadItemAsync<StuActivity>(id.ToString(), new PartitionKey($"Activity-{userId}"));
+                        //    activity.taskStatus = 1;
+                        //    await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Teacher").ReplaceItemAsync<StuActivity>(activity, id.ToString(), new PartitionKey($"Activity-{userId}"));
+                        //}
                     }
                 }
                 //当作答班级数量与实际班级数量一致时才触发结算
@@ -1366,12 +1366,7 @@ namespace TEAMModelOS.Controllers
                 }
 
                 ExamClassResult classResult = new ExamClassResult();
-                List<Task<ItemResponse<StuActivity>>> tasks = new List<Task<ItemResponse<StuActivity>>>();
-                //ExamInfo classResult = await client.GetContainer(Constant.TEAMModelOS, "Common").ReadItemAsync<ExamInfo>(id.ToString(), new PartitionKey($"{code}"));
-                //ExamClassResult classResult = await client.GetContainer(Constant.TEAMModelOS, "Common").ReadItemAsync<ExamClassResult>(id.ToString(), new PartitionKey($"{code}"));
-                /*foreach (double index in ans) {
-                    classResult.studentScores.in
-                }*/
+                //List<Task<ItemResponse<StuActivity>>> tasks = new List<Task<ItemResponse<StuActivity>>>();
                 foreach (ExamClassResult result in examClassResults)
                 {
                     int index_sc = 0;
@@ -1390,9 +1385,9 @@ namespace TEAMModelOS.Controllers
                             {
                                 try
                                 {
-                                    StuActivity activity = await client.GetContainer(Constant.TEAMModelOS, "Student").ReadItemAsync<StuActivity>(id.ToString(), new PartitionKey($"Activity-{s.id}"));
-                                    activity.sStatus = 1;
-                                    tasks.Add(client.GetContainer(Constant.TEAMModelOS, "Student").ReplaceItemAsync(activity, activity.id, new PartitionKey($"{activity.code}")));
+                                    //StuActivity activity = await client.GetContainer(Constant.TEAMModelOS, "Student").ReadItemAsync<StuActivity>(id.ToString(), new PartitionKey($"Activity-{s.id}"));
+                                    //activity.sStatus = 1;
+                                    //tasks.Add(client.GetContainer(Constant.TEAMModelOS, "Student").ReplaceItemAsync(activity, activity.id, new PartitionKey($"{activity.code}")));
                                 }
                                 catch (Exception ex)
                                 {
@@ -1407,9 +1402,9 @@ namespace TEAMModelOS.Controllers
                                     if (response.Status == 200)
                                     {
                                         using var json = await JsonDocument.ParseAsync(response.ContentStream);
-                                        StuActivity activity = json.ToObject<StuActivity>();
-                                        activity.sStatus = 1;
-                                        tasks.Add(client.GetContainer(Constant.TEAMModelOS, "Student").ReplaceItemAsync(activity, activity.id, new PartitionKey($"{activity.code}")));
+                                        //StuActivity activity = json.ToObject<StuActivity>();
+                                        //activity.sStatus = 1;
+                                        //tasks.Add(client.GetContainer(Constant.TEAMModelOS, "Student").ReplaceItemAsync(activity, activity.id, new PartitionKey($"{activity.code}")));
 
                                     }
                                     else
@@ -1430,14 +1425,11 @@ namespace TEAMModelOS.Controllers
                                         }
                                         foreach (var sid in scode)
                                         {
-                                            StuActivity activity = await client.GetContainer(Constant.TEAMModelOS, "Student").ReadItemAsync<StuActivity>(id.ToString(), new PartitionKey($"Activity-{sid}-{s.id}"));
-                                            activity.sStatus = 1;
-                                            tasks.Add(client.GetContainer(Constant.TEAMModelOS, "Student").ReplaceItemAsync(activity, activity.id, new PartitionKey($"{activity.code}")));
+                                            //StuActivity activity = await client.GetContainer(Constant.TEAMModelOS, "Student").ReadItemAsync<StuActivity>(id.ToString(), new PartitionKey($"Activity-{sid}-{s.id}"));
+                                            //activity.sStatus = 1;
+                                            //tasks.Add(client.GetContainer(Constant.TEAMModelOS, "Student").ReplaceItemAsync(activity, activity.id, new PartitionKey($"{activity.code}")));
                                         }
                                     }
-                                    /*StuActivity activity = await client.GetContainer(Constant.TEAMModelOS, "Student").ReadItemAsync<StuActivity>(id.ToString(), new PartitionKey($"Activity-{result.scIds[index]}-{s.id}"));
-                                    activity.sStatus = 1;
-                                    await client.GetContainer(Constant.TEAMModelOS, "Student").ReadItemAsync<StuActivity>(id.ToString(), new PartitionKey($"Activity-{result.scIds[index]}-{s.id}"));*/
 
                                 }
                                 catch (Exception ex)
@@ -1484,7 +1476,7 @@ namespace TEAMModelOS.Controllers
                         await client.GetContainer(Constant.TEAMModelOS, "Common").ReplaceItemAsync(exam, id.ToString(), new PartitionKey($"Exam-{code}"));
                     }
                     classResult = await client.GetContainer(Constant.TEAMModelOS, "Common").ReplaceItemAsync(result, result.id, new PartitionKey($"{result.code}"));
-                    await Task.WhenAll(tasks);
+                   // await Task.WhenAll(tasks);
                 }
                 //检查所有成员是否完成打分
                 List<List<double>> ers = new List<List<double>>();

+ 21 - 21
TEAMModelOS/Controllers/Common/HomeworkController.cs

@@ -709,9 +709,9 @@ namespace TEAMModelOS.Controllers.Learn
                                         //TODO TODO TODO TODO TODO TODO TODO TODO TODO TODO TODO TODO TODO TODO TODO TODO 写入方便教师查看的作答记录
                                         try
                                         {
-                                            StuActivity activity = await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Teacher").ReadItemAsync<StuActivity>($"{_id}", new PartitionKey($"Activity-{one.id}"));
-                                            activity.taskStatus = taskStatus;
-                                            await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Teacher").ReplaceItemAsync<StuActivity>(activity, $"{_id}", new PartitionKey($"Activity-{one.id}"));
+                                            //StuActivity activity = await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Teacher").ReadItemAsync<StuActivity>($"{_id}", new PartitionKey($"Activity-{one.id}"));
+                                            //activity.taskStatus = taskStatus;
+                                            //await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Teacher").ReplaceItemAsync<StuActivity>(activity, $"{_id}", new PartitionKey($"Activity-{one.id}"));
                                         }
                                         catch (CosmosException ex)
                                         {
@@ -804,24 +804,24 @@ namespace TEAMModelOS.Controllers.Learn
                                 //TODO TODO TODO TODO TODO TODO TODO TODO TODO TODO TODO TODO TODO TODO TODO TODO 写入方便教师查看的作答记录
                                 try
                                 {
-                                    if ($"{_scope}".Equals(Constant.ScopeStudent))
-                                    {
-                                        StuActivity activity = await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Student").ReadItemAsync<StuActivity>($"{_id}", new PartitionKey($"Activity-{school}-{userid}"));
-                                        activity.taskStatus = taskStatus;
-                                        await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Student").ReplaceItemAsync<StuActivity>(activity, $"{_id}", new PartitionKey($"Activity-{school}-{userid}"));
-                                    }
-                                    if ($"{_scope}".Equals(Constant.ScopeTmdUser))
-                                    {
-                                        StuActivity activity = await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Student").ReadItemAsync<StuActivity>($"{_id}", new PartitionKey($"Activity-{userid}"));
-                                        activity.taskStatus = taskStatus;
-                                        await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Student").ReplaceItemAsync<StuActivity>(activity, $"{_id}", new PartitionKey($"Activity-{userid}"));
-                                    }
-                                    if ($"{_scope}".Equals(Constant.ScopeTeacher))
-                                    {
-                                        StuActivity activity = await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Teacher").ReadItemAsync<StuActivity>($"{_id}", new PartitionKey($"Activity-{userid}"));
-                                        activity.taskStatus = taskStatus;
-                                        await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Teacher").ReplaceItemAsync<StuActivity>(activity, $"{_id}", new PartitionKey($"Activity-{userid}"));
-                                    }
+                                    //if ($"{_scope}".Equals(Constant.ScopeStudent))
+                                    //{
+                                    //    StuActivity activity = await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Student").ReadItemAsync<StuActivity>($"{_id}", new PartitionKey($"Activity-{school}-{userid}"));
+                                    //    activity.taskStatus = taskStatus;
+                                    //    await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Student").ReplaceItemAsync<StuActivity>(activity, $"{_id}", new PartitionKey($"Activity-{school}-{userid}"));
+                                    //}
+                                    //if ($"{_scope}".Equals(Constant.ScopeTmdUser))
+                                    //{
+                                    //    StuActivity activity = await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Student").ReadItemAsync<StuActivity>($"{_id}", new PartitionKey($"Activity-{userid}"));
+                                    //    activity.taskStatus = taskStatus;
+                                    //    await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Student").ReplaceItemAsync<StuActivity>(activity, $"{_id}", new PartitionKey($"Activity-{userid}"));
+                                    //}
+                                    //if ($"{_scope}".Equals(Constant.ScopeTeacher))
+                                    //{
+                                    //    StuActivity activity = await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Teacher").ReadItemAsync<StuActivity>($"{_id}", new PartitionKey($"Activity-{userid}"));
+                                    //    activity.taskStatus = taskStatus;
+                                    //    await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Teacher").ReplaceItemAsync<StuActivity>(activity, $"{_id}", new PartitionKey($"Activity-{userid}"));
+                                    //}
                                 }
                                 catch (CosmosException ex)
                                 {

+ 3 - 27
TEAMModelOS/Controllers/Teacher/TeacherCommonController.cs

@@ -380,31 +380,7 @@ namespace TEAMModelOS.Controllers
 
 
 
-        [ProducesDefaultResponseType]
-        [HttpPost("tec-activity")]
-        [Authorize(Roles = "IES")]
-        [AuthToken(Roles = "student,admin,teacher")]
-        public async Task<IActionResult> TecActivity(JsonElement request)
-        {
-            if (!request.TryGetProperty("type", out JsonElement _type)) return BadRequest();
-            var (id, name, pic, school) = HttpContext.GetAuthTokenInfo();
-            List<StuActivity> datas = new List<StuActivity>();
-            var queryc = $"SELECT value(c) from c where c.school = '{school}' and c.type='{_type}' ";
-            await foreach (var item in _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, "Teacher").GetItemQueryIterator<StuActivity>(queryText: queryc, requestOptions: new QueryRequestOptions() { PartitionKey = new PartitionKey($"Activity-{id}") }))
-            {
-                datas.Add(item);
-                /*using var json = await JsonDocument.ParseAsync(item.ContentStream);
-                if (json.RootElement.TryGetProperty("_count", out JsonElement count) && count.GetUInt16() > 0)
-                {
-                    foreach (var obj in json.RootElement.GetProperty("Documents").EnumerateArray())
-                    {
-                        courses.Add(obj.ToObject<object>());
-                    }
-                }*/
-            }
-            //(List<StuActivity> datas, string continuationToken) = await ActivityStudentService.FindActivity(request, id, school, _azureCosmos, _azureRedis);
-            return Ok(new { datas });
-        }
+         
 
         /// <summary>
         /// 
@@ -427,11 +403,11 @@ namespace TEAMModelOS.Controllers
                 {
                     if (role.GetString().Equals("teacher") || role.GetString().Equals("admin"))
                     {
-                        await client.GetContainer(Constant.TEAMModelOS, "Teacher").DeleteItemAsync<StuActivity>($"{id}", new PartitionKey($"{code}"));
+                       // await client.GetContainer(Constant.TEAMModelOS, "Teacher").DeleteItemAsync<StuActivity>($"{id}", new PartitionKey($"{code}"));
                     }
                     else if (role.GetString().Equals("student"))
                     {
-                        await client.GetContainer(Constant.TEAMModelOS, "Teacher").DeleteItemAsync<StuActivity>($"{id}", new PartitionKey($"{code}"));
+                        //await client.GetContainer(Constant.TEAMModelOS, "Teacher").DeleteItemAsync<StuActivity>($"{id}", new PartitionKey($"{code}"));
                     }
                     else
                     {

+ 1 - 25
TEAMModelOS/Controllers/XTest/DataMigrationController.cs

@@ -1181,31 +1181,7 @@ namespace TEAMModelOS.Controllers
             return Ok();
         }
 
-        /// <summary>
-        /// 迁移教师基础信息,并处理历史数据。
-        /// </summary>
-        /// <param name="data"></param>
-        /// <returns></returns>
-        [ProducesDefaultResponseType]
-        //[AuthToken(Roles = "teacher")]
-        [HttpGet("restore-tmd-course&activity")]
-        public async Task<IActionResult> RestoreTmdCourseAndActivity()
-        {
-            var client = _azureCosmos.GetCosmosClient();
-            List<StuActivity> activities = new List<StuActivity>();
-            List<StuCourse> stuCourses = new List<StuCourse>();
-            await foreach (var item in client.GetContainer(Constant.TEAMModelOS, "Teacher").GetItemQueryIterator<StuActivity>(queryText: "select value(c) from c where c.pk='Activity'"))
-            {
-                await client.GetContainer(Constant.TEAMModelOS, "Student").UpsertItemAsync<StuActivity>(item, partitionKey: new PartitionKey(item.code));
-                activities.Add(item);
-            }
-            await foreach (var item in client.GetContainer(Constant.TEAMModelOS, "Teacher").GetItemQueryIterator<StuCourse>(queryText: "select value(c) from c where c.pk='StuCourse'"))
-            {
-                await client.GetContainer(Constant.TEAMModelOS, "Student").UpsertItemAsync<StuCourse>(item, partitionKey: new PartitionKey(item.code));
-                stuCourses.Add(item);
-            }
-            return Ok(new { activities, stuCourses });
-        }
+      
 
         /// <summary>
         /// 迁移教师基础信息,并处理历史数据。

+ 3 - 169
TEAMModelOS/Controllers/XTest/FixDataController.cs

@@ -405,46 +405,6 @@ namespace TEAMModelOS.Controllers
             //await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, Constant.Common).UpsertItemAsync(examImport, new Azure.Cosmos.PartitionKey(examImport.code));
             return Ok(new { code = 200, students });
         }
-
-        [HttpPost("fix-exam-paper")]
-        //[Authorize(Roles = "IES")]
-        //[AuthToken(Roles = "teacher,admin,business")]
-        [RequestSizeLimit(102_400_000_00)] //最大10000m左右
-        public async Task<IActionResult> fixExamPaper(JsonElement json)
-        {
-            var client = _azureCosmos.GetCosmosClient();
-            string stusql = "select * from c where c.pk = 'Art' and c.pId in ('2f74d38e-80c1-4c55-9dd0-de0d8f6fdf6d','306fa576-7ae4-4baa-ac24-0b5ad4dd1bc2')";
-            //string stusql = "select * from c where c.pk = 'Art' and c.pId  = '306fa576-7ae4-4baa-ac24-0b5ad4dd1bc2'";
-            List<ArtEvaluation> art = new List<ArtEvaluation>();
-            await foreach (var item in client.GetContainer(Constant.TEAMModelOS, Constant.Common).GetItemQueryIterator<ArtEvaluation>(queryText: stusql))
-            {
-                art.Add(item);
-            }
-            var examId = art.SelectMany(c => c.settings).Where(z => z.id.Equals("quota_21")).SelectMany(a => a.task).Where(p => p.type == 1 && !string.IsNullOrEmpty(p.acId)).Select(o => o.acId).ToList();
-            string examSQL = $"select * from c where c.pk = 'ExamClassResult' and c.examId in ({string.Join(",", examId.Select(o => $"'{o}'"))})";
-            List<ExamClassResult> classResults = new();
-            await foreach (var item in client.GetContainer(Constant.TEAMModelOS, Constant.Common).GetItemQueryIterator<ExamClassResult>(queryText: examSQL))
-            {
-                classResults.Add(item);
-            }
-            string stuSql = $"select * from c where c.pk = 'Activity' and c.id in ({string.Join(",", examId.Select(o => $"'{o}'"))})";
-            List<StuActivity> stus = new();
-            await foreach (var item in client.GetContainer(Constant.TEAMModelOS, Constant.Student).GetItemQueryIterator<StuActivity>(queryText: stuSql))
-            {
-                stus.Add(item);
-            }
-            List<(string code, string sId)> students = new();
-            
-
-            await foreach (var (school, id) in stuTask(client, stus, classResults))
-            {
-                students.Add((school, id));
-            }
-
-            //await _azureCosmos.GetCosmosClient().GetContainer(Constant.TEAMModelOS, Constant.Common).UpsertItemAsync(examImport, new Azure.Cosmos.PartitionKey(examImport.code));
-            return Ok(new { code = 200, students });
-        }
-
         private async IAsyncEnumerable<(string school,string id)> stuTask(CosmosClient client,List<StudentArtResult> artResults, List<(string code, string stuId, double score)> stus) {
             
             foreach (StudentArtResult result in artResults)
@@ -478,39 +438,7 @@ namespace TEAMModelOS.Controllers
             }
         }
 
-        private async IAsyncEnumerable<(string school, string id)> stuTask(CosmosClient client, List<StuActivity> stus, List<ExamClassResult> classResults)
-        {
-
-            foreach (ExamClassResult classResult in classResults)
-            {
-                string value = "";
-                string code = "";
-                try {
-                    //int n = 0;
-                    var activity = stus.Where(c => c.id.Equals(classResult.examId)).ToList();
-                    //List<(string studentId, string blob)> stuBlob = new();
-                    foreach (StuActivity stu in activity) { 
-                        List<string> tas = stu.code.Split('-').ToList();
-                        JsonElement dict = stu.paper;
-                        dict[0].TryGetProperty("blob", out JsonElement element);
-                        string blob = element.ToString();
-                        int index =  classResult.studentIds.IndexOf(tas[2]);
-                        if (index != -1)
-                        {
-                            classResult.paper[index] = blob;
-                        }
-                    }
-                    await client.GetContainer(Constant.TEAMModelOS, Constant.Common).ReplaceItemAsync(classResult, classResult.id, new PartitionKey(classResult.code));
-                } catch (Exception e) {
-                    value = classResult.examId;
-                    code = classResult.school;
-                }
-
-                yield return (code, value);
-
-            }
-        }
-
+       
         [ProducesDefaultResponseType]
         [HttpPost("find-xg-activity")]
         public async Task<IActionResult> findXgActivity(JsonElement element)
@@ -1692,25 +1620,7 @@ namespace TEAMModelOS.Controllers
             return Ok(new { });
         }
 
-        [ProducesDefaultResponseType]
-        //[AuthToken(Roles = "teacher")]
-        [HttpPost("fix-activity-art")]
-        public async Task<IActionResult> FixActivityArt(JsonElement data)
-        {
-
-            var client = _azureCosmos.GetCosmosClient();
-            List<StuActivity> activities = new List<StuActivity>();
-            await foreach (var item in client.GetContainer(Constant.TEAMModelOS, "Student").GetItemQueryIterator<StuActivity>(queryText: "SELECT  value(c) FROM c where c.pk = 'Activity' and c.type = 'Atr'"))
-            {
-                activities.Add(item);
-            }
-            foreach (var activity in activities)
-            {
-                    activity.type = "Art";
-                    await client.GetContainer(Constant.TEAMModelOS, "Student").ReplaceItemAsync<StuActivity>(activity, activity.id,new PartitionKey(activity.code));
-            }
-            return Ok(new { });
-        }
+         
 
         /// <summary>
         /// 修复名单的scope,school,creatorid
@@ -2471,83 +2381,7 @@ namespace TEAMModelOS.Controllers
             return Ok(new { countMore1, countEqual1 , nokey,noreg});
 
         }
-        /// <summary>
-        /// 学生活动中间表ClassIds去重
-        /// </summary>
-        /// <param name="jsonElement"></param>
-        /// <returns></returns>
-        [HttpPost("fix-classIds")]
-        public async Task<IActionResult> CorrectActivityClassIds()
-        {
-            try
-            {
-                var cosmosClient = _azureCosmos.GetCosmosClient();
-                //string sqlTxt = "SELECT select c.id,c.code,c.classIds FROM c  where c.pk='Activity' and c.classIds <> []";
-                string sqlTxt = "select c.id,c.code,c.classIds from c where c.classIds <> []";
-                List<CorrectStu> correctStus = new List<CorrectStu>();
-                await foreach (var item in cosmosClient.GetContainer("TEAMModelOS", "Student").GetItemQueryStreamIterator(queryText: sqlTxt, requestOptions: new QueryRequestOptions() { }))
-                {
-                    using var json = await JsonDocument.ParseAsync(item.ContentStream);
-                    foreach (var obj in json.RootElement.GetProperty("Documents").EnumerateArray())
-                    {
-                        obj.TryGetProperty("id", out JsonElement tempTd);
-                        obj.TryGetProperty("code", out JsonElement code);
-                        obj.TryGetProperty("classIds", out JsonElement _classIds);
-                        List<string> templist = _classIds.ToObject<List<string>>();
-
-                        //List<string> newList = templist.Distinct().ToList(); //Equals实现去重  
-                        //List<string> newLis1 = templist.Where((x, i) => templist.FindIndex(z => z == x) == i).ToList(); //Lambda表达式去重 
-                        HashSet<string> hashSet = new HashSet<string>(templist);//哈希自动去重
-                        if (hashSet.Count != templist.Count)
-                        {
-                            CorrectStu correctList = new CorrectStu() { id = $"{tempTd}", code = $"{code}", classIds = hashSet.ToList() };
-                            correctStus.Add(correctList);
-                        }
-                    }
-                }
-                List<Task<ItemResponse<StuActivity>>> tasks = new List<Task<ItemResponse<StuActivity>>>();
-                if (correctStus.Count > 0)
-                {
-                    foreach (var correct in correctStus)
-                    {
-                        StuActivity stuActivity = await cosmosClient.GetContainer("TEAMModelOS", "Student").ReadItemAsync<StuActivity>(correct.id, new PartitionKey(correct.code));
-                        if (stuActivity != null)
-                        {
-                            stuActivity.classIds = correct.classIds;
-
-                            tasks.Add(cosmosClient.GetContainer("TEAMModelOS", "Student").ReplaceItemAsync<StuActivity>(stuActivity, stuActivity.id, new PartitionKey(stuActivity.code)));
-                        }
-                    }
-                    int pagesize = 1000;
-                    if (tasks.Count <= pagesize)
-                    {
-                        await Task.WhenAll(tasks);
-                    }
-                    else
-                    {
-                        int pages = (tasks.Count + pagesize) / pagesize; //256是批量操作最大值,pages = (total + max -1) / max;
-                        for (int i = 0; i < pages; i++)
-                        {
-                            var listssb = tasks.Skip((i) * pagesize).Take(pagesize).ToList();
-                            await Task.WhenAll(listssb);
-                        }
-                    }
-                    return Ok(new { state = 200, msg = "去重成功" });
-                }
-                else
-                {
-                    return Ok(new { state = 201, msg = "学生活动中间表无重复班级ID" });
-                }
-
-            }
-            catch (Exception ex)
-            {
-                await _dingDing.SendBotMsg($"OS,{_option.Location} /fix-data/fix-classIds \n {ex.Message}\n{ex.StackTrace}", GroupNames.醍摩豆服務運維群組);
-                return Ok(new { state = 401 });
-            }
-        }
-
-
+         
 
         /// <summary>
         /// 所有学校添加国家智慧教育公共服务平台  https://www.smartedu.cn/