fixed NewWeeklyReport

This commit is contained in:
al8763be 2024-03-19 02:11:47 +01:00
parent 77a24421e9
commit 8081f289b5
2 changed files with 20 additions and 18 deletions

View file

@ -1,17 +1,17 @@
import { useState } from "react"; import { useState } from "react";
import { NewWeeklyReport } from "../Types/goTypes"; import type { NewWeeklyReport } from "../Types/goTypes";
import { api } from "../API/API"; import { api } from "../API/API";
import { useNavigate, useParams } from "react-router-dom"; import { useNavigate, useParams } from "react-router-dom";
import Button from "./Button"; import Button from "./Button";
export default function NewWeeklyReport(): JSX.Element { export default function NewWeeklyReport(): JSX.Element {
const [week, setWeek] = useState(0); const [week, setWeek] = useState<number>();
const [developmentTime, setDevelopmentTime] = useState(0); const [developmentTime, setDevelopmentTime] = useState<number>();
const [meetingTime, setMeetingTime] = useState(0); const [meetingTime, setMeetingTime] = useState<number>();
const [adminTime, setAdminTime] = useState(0); const [adminTime, setAdminTime] = useState<number>();
const [ownWorkTime, setOwnWorkTime] = useState(0); const [ownWorkTime, setOwnWorkTime] = useState<number>();
const [studyTime, setStudyTime] = useState(0); const [studyTime, setStudyTime] = useState<number>();
const [testingTime, setTestingTime] = useState(0); const [testingTime, setTestingTime] = useState<number>();
const { projectName } = useParams(); const { projectName } = useParams();
const token = localStorage.getItem("accessToken") ?? ""; const token = localStorage.getItem("accessToken") ?? "";
@ -19,13 +19,13 @@ export default function NewWeeklyReport(): JSX.Element {
const handleNewWeeklyReport = async (): Promise<void> => { const handleNewWeeklyReport = async (): Promise<void> => {
const newWeeklyReport: NewWeeklyReport = { const newWeeklyReport: NewWeeklyReport = {
projectName: projectName ?? "", projectName: projectName ?? "",
week, week: week ?? 0,
developmentTime, developmentTime: developmentTime ?? 0,
meetingTime, meetingTime: meetingTime ?? 0,
adminTime, adminTime: adminTime ?? 0,
ownWorkTime, ownWorkTime: ownWorkTime ?? 0,
studyTime, studyTime: studyTime ?? 0,
testingTime, testingTime: testingTime ?? 0,
}; };
await api.submitWeeklyReport(newWeeklyReport, token); await api.submitWeeklyReport(newWeeklyReport, token);
@ -45,7 +45,7 @@ export default function NewWeeklyReport(): JSX.Element {
} }
e.preventDefault(); e.preventDefault();
void handleNewWeeklyReport(); void handleNewWeeklyReport();
navigate(-1); navigate("/project");
}} }}
> >
<div className="flex flex-col items-center"> <div className="flex flex-col items-center">
@ -58,6 +58,8 @@ export default function NewWeeklyReport(): JSX.Element {
setWeek(weekNumber); setWeek(weekNumber);
}} }}
onKeyDown={(event) => { onKeyDown={(event) => {
const keyValue = event.key;
if (!/\d/.test(keyValue) && keyValue !== "Backspace")
event.preventDefault(); event.preventDefault();
}} }}
onPaste={(event) => { onPaste={(event) => {

View file

@ -22,7 +22,7 @@ function UserProjectPage(): JSX.Element {
}; };
// Call getProjects when the component mounts // Call getProjects when the component mounts
useEffect(() => { useEffect(() => {
getProjects(); void getProjects();
}, []); }, []);
const handleProjectClick = (projectName: string): void => { const handleProjectClick = (projectName: string): void => {