Refactor AllTimeReportsInProject component to use API for fetching weekly reports
This commit is contained in:
		
							parent
							
								
									863a14c316
								
							
						
					
					
						commit
						b5d3ab7cb7
					
				
					 1 changed files with 16 additions and 59 deletions
				
			
		|  | @ -1,68 +1,25 @@ | |||
| import React, { useEffect, useState } from "react"; | ||||
| import { NewWeeklyReport } from "../Types/goTypes"; | ||||
| import { WeeklyReport } from "../Types/goTypes"; | ||||
| import { Link, useParams } from "react-router-dom"; | ||||
| import { api } from "../API/API"; | ||||
| 
 | ||||
| function AllTimeReportsInProject(): JSX.Element { | ||||
|   const { projectName } = useParams(); | ||||
|   const [weeklyReports, setWeeklyReports] = useState<NewWeeklyReport[]>([]); | ||||
| 
 | ||||
|   /*   const getWeeklyReports = async (): Promise<void> => { | ||||
|     const token = localStorage.getItem("accessToken") ?? ""; | ||||
|     const response = await api.getWeeklyReports(token); | ||||
|     console.log(response); | ||||
|     if (response.success) { | ||||
|         setWeeklyReports(response.data ?? []); | ||||
|     } else { | ||||
|         console.error(response.message); | ||||
|     } | ||||
| }; */ | ||||
|   const [weeklyReports, setWeeklyReports] = useState<WeeklyReport[]>([]); | ||||
| 
 | ||||
|   const getWeeklyReports = async (): Promise<void> => { | ||||
|     const report: NewWeeklyReport[] = [ | ||||
|       { | ||||
|         projectName: projectName ?? "", | ||||
|         week: 10, | ||||
|         developmentTime: 1, | ||||
|         meetingTime: 1, | ||||
|         adminTime: 1, | ||||
|         ownWorkTime: 1, | ||||
|         studyTime: 1, | ||||
|         testingTime: 1, | ||||
|       }, | ||||
|       { | ||||
|         projectName: projectName ?? "", | ||||
|         week: 11, | ||||
|         developmentTime: 1, | ||||
|         meetingTime: 1, | ||||
|         adminTime: 1, | ||||
|         ownWorkTime: 100, | ||||
|         studyTime: 1, | ||||
|         testingTime: 1, | ||||
|       }, | ||||
|       { | ||||
|         projectName: projectName ?? "", | ||||
|         week: 12, | ||||
|         developmentTime: 1, | ||||
|         meetingTime: 1, | ||||
|         adminTime: 1, | ||||
|         ownWorkTime: 1, | ||||
|         studyTime: 1, | ||||
|         testingTime: 1000, | ||||
|       }, | ||||
|       { | ||||
|         projectName: projectName ?? "", | ||||
|         week: 20, | ||||
|         developmentTime: 1, | ||||
|         meetingTime: 1, | ||||
|         adminTime: 1, | ||||
|         ownWorkTime: 1, | ||||
|         studyTime: 1, | ||||
|         testingTime: 10000, | ||||
|       }, | ||||
|       // Add more reports as needed
 | ||||
|     ]; | ||||
|     setWeeklyReports(report); | ||||
|     await Promise.resolve(); | ||||
|     const token = localStorage.getItem("accessToken") ?? ""; | ||||
|     const response = await api.getWeeklyReportsForProject( | ||||
|       localStorage.getItem("username") ?? "", | ||||
|       projectName ?? "", | ||||
|       token, | ||||
|     ); | ||||
|     console.log(response); | ||||
|     if (response.success) { | ||||
|       setWeeklyReports(response.data ?? []); | ||||
|     } else { | ||||
|       console.error(response.message); | ||||
|     } | ||||
|   }; | ||||
| 
 | ||||
|   // Call getProjects when the component mounts
 | ||||
|  | @ -96,7 +53,7 @@ function AllTimeReportsInProject(): JSX.Element { | |||
|               </h1> | ||||
|               <h1> | ||||
|                 <span className="font-bold">{"Signed: "}</span> | ||||
|                 YES | ||||
|                 {newWeeklyReport.signedBy ? "YES" : "NO"} | ||||
|               </h1> | ||||
|             </div> | ||||
|           </Link> | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Davenludd
						Davenludd