Removed ID and improved unknown user handling
This commit is contained in:
@@ -7,14 +7,14 @@ import {
|
|||||||
Text,
|
Text,
|
||||||
Image,
|
Image,
|
||||||
StyleSheet,
|
StyleSheet,
|
||||||
|
Font,
|
||||||
} from "@react-pdf/renderer";
|
} from "@react-pdf/renderer";
|
||||||
import { styles } from "./styles";
|
import { styles } from "./styles";
|
||||||
import TestReportFooter from "./test.report.footer";
|
import TestReportFooter from "./test.report.footer";
|
||||||
import { ModuleScore } from "@/interfaces/module.scores";
|
import { ModuleScore } from "@/interfaces/module.scores";
|
||||||
import ProgressBar from "./progress.bar";
|
import ProgressBar from "./progress.bar";
|
||||||
// import { Font } from "@react-pdf/renderer";
|
|
||||||
|
|
||||||
// Font.registerHyphenationCallback((word) => [word]);
|
Font.registerHyphenationCallback((word) => [word]);
|
||||||
|
|
||||||
interface Props {
|
interface Props {
|
||||||
date: string;
|
date: string;
|
||||||
@@ -220,7 +220,6 @@ const GroupTestReport = ({
|
|||||||
<Text style={customStyles.tableCell}>Date of test</Text>
|
<Text style={customStyles.tableCell}>Date of test</Text>
|
||||||
<Text style={customStyles.tableCell}>Result</Text>
|
<Text style={customStyles.tableCell}>Result</Text>
|
||||||
<Text style={customStyles.tableCell}>Level</Text>
|
<Text style={customStyles.tableCell}>Level</Text>
|
||||||
<Text style={customStyles.tableCell}>ID</Text>
|
|
||||||
</View>
|
</View>
|
||||||
{studentsData.map(
|
{studentsData.map(
|
||||||
({ id, name, email, gender, date, result, level }, index) => (
|
({ id, name, email, gender, date, result, level }, index) => (
|
||||||
@@ -239,7 +238,6 @@ const GroupTestReport = ({
|
|||||||
<Text style={customStyles.tableCell}>{date}</Text>
|
<Text style={customStyles.tableCell}>{date}</Text>
|
||||||
<Text style={customStyles.tableCell}>{result}</Text>
|
<Text style={customStyles.tableCell}>{result}</Text>
|
||||||
<Text style={customStyles.tableCell}>{level}</Text>
|
<Text style={customStyles.tableCell}>{level}</Text>
|
||||||
<Text style={customStyles.tableCell}>{id}</Text>
|
|
||||||
</View>
|
</View>
|
||||||
)
|
)
|
||||||
)}
|
)}
|
||||||
|
|||||||
@@ -223,36 +223,27 @@ async function post(req: NextApiRequest, res: NextApiResponse) {
|
|||||||
|
|
||||||
return data.assignees.map((id) => {
|
return data.assignees.map((id) => {
|
||||||
const user = users.find((u) => u.id === id);
|
const user = users.find((u) => u.id === id);
|
||||||
|
const exams = flattenResults.filter((e) => e.user === id);
|
||||||
if (user) {
|
const date =
|
||||||
const exams = flattenResults.filter((e) => e.user === id);
|
exams.length === 0
|
||||||
return {
|
? "N/A"
|
||||||
id,
|
: new Date(exams[0].date).toLocaleDateString(undefined, {
|
||||||
name: user.name,
|
year: "numeric",
|
||||||
email: user.email,
|
month: "numeric",
|
||||||
gender: user.demographicInformation?.gender,
|
day: "numeric",
|
||||||
date:
|
});
|
||||||
exams.length === 0
|
const result =
|
||||||
? "N/A"
|
exams.length === 0
|
||||||
: new Date(exams[0].date).toLocaleDateString(undefined, {
|
? "N/A"
|
||||||
year: "numeric",
|
: `${exams[0].score.correct}/${exams[0].score.total}`;
|
||||||
month: "numeric",
|
|
||||||
day: "numeric",
|
|
||||||
}),
|
|
||||||
result:
|
|
||||||
exams.length === 0
|
|
||||||
? "N/A"
|
|
||||||
: `${exams[0].score.correct}/${exams[0].score.total}`,
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
||||||
return {
|
return {
|
||||||
id: "N/A",
|
id,
|
||||||
name: "N/A",
|
name: user?.name || "N/A",
|
||||||
email: "N/A",
|
email: user?.email || "N/A",
|
||||||
gender: "N/A",
|
gender: user?.demographicInformation?.gender || "N/A",
|
||||||
date: "N/A",
|
date,
|
||||||
result: "N/A",
|
result,
|
||||||
};
|
};
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|||||||
Reference in New Issue
Block a user