Преглед изворни кода

显示没交作业的学员名单

visuddhinanda пре 1 година
родитељ
комит
52d699e1a5
1 измењених фајлова са 30 додато и 1 уклоњено
  1. 30 1
      dashboard/src/components/template/SentEdit/SentWbw.tsx

+ 30 - 1
dashboard/src/components/template/SentEdit/SentWbw.tsx

@@ -1,4 +1,4 @@
-import { List, message } from "antd";
+import { List, Space, message } from "antd";
 import { useEffect, useState } from "react";
 
 import { get } from "../../../request";
@@ -7,6 +7,7 @@ import { IWidgetSentEditInner, SentEditInner } from "../SentEdit";
 import { useAppSelector } from "../../../hooks";
 import { courseInfo, memberInfo } from "../../../reducers/current-course";
 import { courseUser } from "../../../reducers/course-user";
+import User, { IUser } from "../../auth/User";
 
 interface IWidget {
   book: number;
@@ -75,10 +76,28 @@ const SentWbwWidget = ({
         }
       });
   };
+
   useEffect(() => {
     load();
   }, []);
 
+  //没交作业的人
+
+  let nonWbwUser: IUser[] = [];
+  if (myCourse && course && myCourse.role !== "student" && courseMember) {
+    const hasWbwUsers = sentData.map((item) =>
+      item.translation ? item.translation[0].studio : undefined
+    );
+    courseMember
+      .filter((value) => value.role === "student")
+      .forEach((value) => {
+        const curr = hasWbwUsers.find((value1) => value1?.id === value.user_id);
+        if (!curr && value.user) {
+          nonWbwUser.push(value.user);
+        }
+      });
+  }
+  console.debug("没交作业", courseMember, sentData, nonWbwUser);
   return (
     <>
       <List
@@ -92,6 +111,16 @@ const SentWbwWidget = ({
           </List.Item>
         )}
       />
+      <div>
+        {nonWbwUser.length > 0 ? (
+          <Space>
+            {"没交作业:"}
+            {nonWbwUser.map((item, id) => {
+              return <User {...item} />;
+            })}
+          </Space>
+        ) : undefined}
+      </div>
     </>
   );
 };