浏览代码

名单获取方式调整

zhouj1203@hotmail.com 3 年之前
父节点
当前提交
8f50b1ce7d

+ 30 - 19
TEAMModelFunction/ActivityHttpTrigger.cs

@@ -72,8 +72,11 @@ namespace TEAMModelFunction
                     {
                         if (!string.IsNullOrEmpty(sc.stulist))
                         {
-                            (List<TmdInfo> tmdids, List<StuInfo> students, List<ClassListInfo> classLists) = await TriggerStuActivity.GetStuList(client, _dingDing, new List<string>() { sc.stulist }, course.school);
-                            foreach (var addStu in students)
+                            (List<RMember> tchList, List<RGroupList> classLists) = await GroupListService.GetStutmdidListids(client, _dingDing, new List<string>() { sc.stulist }, course.school);
+                            var addStudentsCls = tchList.FindAll(x => x.type == 2);
+                            var addTmdidsCls = tchList.FindAll(x => x.type == 1);
+                            //(List<TmdInfo> tmdids, List<StuInfo> students, List<ClassListInfo> classLists) = await TriggerStuActivity.GetStuList(client, _dingDing, new List<string>() { sc.stulist }, course.school);
+                            foreach (var addStu in addStudentsCls)
                             {
                                 var stuCourse = new StuCourse
                                 {
@@ -89,7 +92,7 @@ namespace TEAMModelFunction
                                 };
                                 await client.GetContainer("TEAMModelOS", "Student").UpsertItemAsync(stuCourse, new PartitionKey(stuCourse.code));
                             }
-                            foreach (var addTmd in tmdids)
+                            foreach (var addTmd in addTmdidsCls)
                             {
                                 var tmdCourse = new StuCourse
                                 {
@@ -153,12 +156,15 @@ namespace TEAMModelFunction
                     {
                         sub.Add(subject.id);
                     }
-                    (List<TmdInfo> tmdids, List<StuInfo> studentss, List<ClassListInfo> classLists) = await TriggerStuActivity.GetStuList(client, _dingDing, classes, info.school);
+                    (List<RMember> tchList, List<RGroupList> classLists) = await GroupListService.GetStutmdidListids(client, _dingDing, classes, info.school);
+                    var addStudentsCls = tchList.FindAll(x => x.type == 2);
+                    var addTmdidsCls = tchList.FindAll(x => x.type == 1);
+                    //(List<TmdInfo> tmdids, List<StuInfo> studentss, List<ClassListInfo> classLists) = await TriggerStuActivity.GetStuList(client, _dingDing, classes, info.school);
                     List<StuActivity> stuActivities = new List<StuActivity>();
                     List<StuActivity> tmdActivities = new List<StuActivity>();
-                    if (tmdids.IsNotEmpty())
+                    if (addTmdidsCls.IsNotEmpty())
                     {
-                        tmdids.ForEach(x => {
+                        addTmdidsCls.ForEach(x => {
                             tmdActivities.Add(new StuActivity
                             {
                                 pk = "Activity",
@@ -182,9 +188,9 @@ namespace TEAMModelFunction
                             });
                         });
                     }
-                    if (studentss.IsNotEmpty())
+                    if (addStudentsCls.IsNotEmpty())
                     {
-                        studentss.ForEach(x => {
+                        addStudentsCls.ForEach(x => {
                             stuActivities.Add(new StuActivity
                             {
                                 pk = "Activity",
@@ -253,13 +259,15 @@ namespace TEAMModelFunction
                     {
                         continue;
                     }
-
-                    (List<TmdInfo> tmdids, List<StuInfo> studentss, List<ClassListInfo> classLists) = await TriggerStuActivity.GetStuList(client, _dingDing, classes, info.school);
+                    (List<RMember> tchList, List<RGroupList> classLists) = await GroupListService.GetStutmdidListids(client, _dingDing, classes, info.school);
+                    var addStudentsCls = tchList.FindAll(x => x.type == 2);
+                    var addTmdidsCls = tchList.FindAll(x => x.type == 1);
+                    //(List<TmdInfo> tmdids, List<StuInfo> studentss, List<ClassListInfo> classLists) = await TriggerStuActivity.GetStuList(client, _dingDing, classes, info.school);
                     List<StuActivity> stuActivities = new List<StuActivity>();
                     List<StuActivity> tmdActivities = new List<StuActivity>();
-                    if (tmdids.IsNotEmpty())
+                    if (addTmdidsCls.IsNotEmpty())
                     {
-                        tmdids.ForEach(x => {
+                        addTmdidsCls.ForEach(x => {
                             tmdActivities.Add(new StuActivity
                             {
                                 pk = "Activity",
@@ -283,9 +291,9 @@ namespace TEAMModelFunction
                             });
                         });
                     }
-                    if (studentss.IsNotEmpty())
+                    if (addStudentsCls.IsNotEmpty())
                     {
-                        studentss.ForEach(x => {
+                        addStudentsCls.ForEach(x => {
                             stuActivities.Add(new StuActivity
                             {
                                 pk = "Activity",
@@ -354,12 +362,15 @@ namespace TEAMModelFunction
                     {
                         continue;
                     }
-                    (List<TmdInfo> tmdids, List<StuInfo> studentss, List<ClassListInfo> classLists) = await TriggerStuActivity.GetStuList(client, _dingDing, classes, info.school);
+                    (List<RMember> tchList, List<RGroupList> classLists) = await GroupListService.GetStutmdidListids(client, _dingDing, classes, info.school);
+                    var addStudentsCls = tchList.FindAll(x => x.type == 2);
+                    var addTmdidsCls = tchList.FindAll(x => x.type == 1);
+                    //(List<TmdInfo> tmdids, List<StuInfo> studentss, List<ClassListInfo> classLists) = await TriggerStuActivity.GetStuList(client, _dingDing, classes, info.school);
                     List<StuActivity> stuActivities = new List<StuActivity>();
                     List<StuActivity> tmdActivities = new List<StuActivity>();
-                    if (tmdids.IsNotEmpty())
+                    if (addTmdidsCls.IsNotEmpty())
                     {
-                        tmdids.ForEach(x => {
+                        addTmdidsCls.ForEach(x => {
                             tmdActivities.Add(new StuActivity
                             {
                                 pk = "Activity",
@@ -383,9 +394,9 @@ namespace TEAMModelFunction
                             });
                         });
                     }
-                    if (studentss.IsNotEmpty())
+                    if (addStudentsCls.IsNotEmpty())
                     {
-                        studentss.ForEach(x => {
+                        addStudentsCls.ForEach(x => {
                             stuActivities.Add(new StuActivity
                             {
                                 pk = "Activity",

+ 14 - 5
TEAMModelFunction/CourseServiceBus.cs

@@ -119,16 +119,19 @@ namespace TEAMModelFunction
 
                 foreach (var list in courseChange.addList)
                 {
-                    (List<TmdInfo> addTmdidsCls, List<StuInfo> addStudentsCls, List<ClassListInfo> classLists) = await TriggerStuActivity.GetStuList(client, _dingDing, new List<string> { list }, courseChange.school);
+                    //(List<TmdInfo> addTmdidsCls, List<StuInfo> addStudentsCls, List<ClassListInfo> classLists) = await TriggerStuActivity.GetStuList(client, _dingDing, new List<string> { list }, courseChange.school);
+                    (List<RMember> tchList, List<RGroupList> classLists) = await GroupListService.GetStutmdidListids(client, _dingDing, new List<string> { list }, courseChange.school);
+                    var addStudentsCls = tchList.FindAll(x => x.type == 2);
+                    var addTmdidsCls = tchList.FindAll(x => x.type == 1);
                     foreach (var stu in addStudentsCls)
                     {
                         try
                         {
-                            ItemResponse<StuCourse> stuCourse = await client.GetContainer(Constant.TEAMModelOS, "Student").ReadItemAsync<StuCourse>(courseChange.id, new PartitionKey($"StuCourse-{stu.schoolId}-{stu.id}"));
+                            ItemResponse<StuCourse> stuCourse = await client.GetContainer(Constant.TEAMModelOS, "Student").ReadItemAsync<StuCourse>(courseChange.id, new PartitionKey($"StuCourse-{stu.code}-{stu.id}"));
                             if (!stuCourse.Value.stulist.Contains(list))
                             {
                                 stuCourse.Value.stulist.Add(list);
-                                await client.GetContainer(Constant.TEAMModelOS, "Student").ReplaceItemAsync<StuCourse>(stuCourse, courseChange.id, new PartitionKey($"StuCourse-{stu.schoolId}-{stu.id}"));
+                                await client.GetContainer(Constant.TEAMModelOS, "Student").ReplaceItemAsync<StuCourse>(stuCourse, courseChange.id, new PartitionKey($"StuCourse-{stu.code}-{stu.id}"));
                             }
                         }
                         catch (CosmosException ex)
@@ -189,7 +192,10 @@ namespace TEAMModelFunction
 
                 foreach (var delCls in courseChange.delClass)
                 {
-                    (List<TmdInfo> delTmdidsCls, List<StuInfo> delStudentsCls, List<ClassListInfo> classLists) = await TriggerStuActivity.GetStuList(client, _dingDing, new List<string> { delCls }, courseChange.school);
+                    //(List<TmdInfo> delTmdidsCls, List<StuInfo> delStudentsCls, List<ClassListInfo> classLists) = await TriggerStuActivity.GetStuList(client, _dingDing, new List<string> { delCls }, courseChange.school);
+                    (List<RMember> tchList, List<RGroupList> classLists) = await GroupListService.GetStutmdidListids(client, _dingDing, new List<string> { delCls }, courseChange.school);
+                    var delStudentsCls = tchList.FindAll(x => x.type == 2);
+                    var delTmdidsCls = tchList.FindAll(x => x.type == 1);
                     foreach (var stu in delStudentsCls)
                     {
                         try
@@ -247,7 +253,10 @@ namespace TEAMModelFunction
                 }
                 foreach (var delList in courseChange.delList)
                 {
-                    (List<TmdInfo> delTmdidsCls, List<StuInfo> delStudentsCls, List<ClassListInfo> classLists) = await TriggerStuActivity.GetStuList(client, _dingDing, new List<string> { delList }, courseChange.school);
+                    //(List<TmdInfo> delTmdidsCls, List<StuInfo> delStudentsCls, List<ClassListInfo> classLists) = await TriggerStuActivity.GetStuList(client, _dingDing, new List<string> { delList }, courseChange.school);
+                    (List<RMember> tchList, List<RGroupList> classLists) = await GroupListService.GetStutmdidListids(client, _dingDing, new List<string> { delList }, courseChange.school);
+                    var delStudentsCls = tchList.FindAll(x => x.type == 2);
+                    var delTmdidsCls = tchList.FindAll(x => x.type == 1);
                     foreach (var stu in delStudentsCls)
                     {
                         try

+ 8 - 5
TEAMModelFunction/TriggerExam.cs

@@ -102,12 +102,15 @@ namespace TEAMModelFunction
                             try
                             {
                                 List<string> classes = ExamService.getClasses(info.classes, info.stuLists);
-                                (List<TmdInfo> tmdids, List<StuInfo> studentss, List<ClassListInfo> classLists) = await TriggerStuActivity.GetStuList(client, _dingDing, classes, info.school);
+                                (List<RMember> tchList, List<RGroupList> classLists) = await GroupListService.GetStutmdidListids(client, _dingDing, classes, info.school);
+                                var addStudentsCls = tchList.FindAll(x => x.type == 2);
+                                var addTmdidsCls = tchList.FindAll(x => x.type == 1);
+                                //(List<TmdInfo> tmdids, List<StuInfo> studentss, List<ClassListInfo> classLists) = await TriggerStuActivity.GetStuList(client, _dingDing, classes, info.school);
                                 List<StuActivity> stuActivities = new List<StuActivity>();
                                 List<StuActivity> tmdActivities = new List<StuActivity>();
-                                if (tmdids.IsNotEmpty())
+                                if (addTmdidsCls.IsNotEmpty())
                                 {
-                                    tmdids.ForEach(x =>
+                                    addTmdidsCls.ForEach(x =>
                                     {
                                         tmdActivities.Add(new StuActivity
                                         {
@@ -133,9 +136,9 @@ namespace TEAMModelFunction
                                         });
                                     });
                                 }
-                                if (studentss.IsNotEmpty())
+                                if (addStudentsCls.IsNotEmpty())
                                 {
-                                    studentss.ForEach(x =>
+                                    addStudentsCls.ForEach(x =>
                                     {
                                         stuActivities.Add(new StuActivity
                                         {

+ 8 - 5
TEAMModelFunction/TriggerHomework.cs

@@ -72,13 +72,16 @@ namespace TEAMModelFunction
                             break;
                         case "going":
                             List<string> classes = ExamService.getClasses(work.classes, work.stuLists);
-                            (List<TmdInfo> tmdids, List<StuInfo> students, List<ClassListInfo> classLists) = await TriggerStuActivity.GetStuList(client, _dingDing, classes, work.school);
+                            //(List<TmdInfo> tmdids, List<StuInfo> students, List<ClassListInfo> classLists) = await TriggerStuActivity.GetStuList(client, _dingDing, classes, work.school);
+                            (List<RMember> tmdids, List<RGroupList> classLists) = await GroupListService.GetStutmdidListids(client, _dingDing, classes, work.school);
+                            var addStudentsCls = tmdids.FindAll(x => x.type == 2);
+                            var addTmdidsCls = tmdids.FindAll(x => x.type == 1);
                             List<StuActivity> stuActivities = new List<StuActivity>();
                             List<StuActivity> tmdActivities = new List<StuActivity>();
                             List<StuActivity> tchActivities = new List<StuActivity>();
-                            if (tmdids.IsNotEmpty())
+                            if (addTmdidsCls.IsNotEmpty())
                             {
-                                tmdids.ForEach(x =>
+                                addTmdidsCls.ForEach(x =>
                                 {
                                     tmdActivities.Add(new StuActivity
                                     {
@@ -102,9 +105,9 @@ namespace TEAMModelFunction
                                     });
                                 });
                             }
-                            if (students.IsNotEmpty())
+                            if (addStudentsCls.IsNotEmpty())
                             {
-                                students.ForEach(x =>
+                                addStudentsCls.ForEach(x =>
                                 {
                                     stuActivities.Add(new StuActivity
                                     {