Added initial implementation for master statistical

This commit is contained in:
Joao Ramos
2024-08-15 10:34:31 +01:00
parent 13284eab75
commit fea58a7b40
6 changed files with 722 additions and 450 deletions

View File

@@ -0,0 +1,34 @@
import { Assignment } from "@/interfaces/results";
import axios from "axios";
import { useEffect, useState } from "react";
export default function useAssignmentsCorporates({
corporates,
}: {
corporates: string[];
}) {
const [assignments, setAssignments] = useState<Assignment[]>([]);
const [isLoading, setIsLoading] = useState(false);
const [isError, setIsError] = useState(false);
const getData = () => {
if (corporates.length === 0) {
setAssignments([]);
return;
}
setIsLoading(true);
axios
.get<Assignment[]>(
`/api/assignments/corporate?ids=${corporates.join(",")}`
)
.then(async (response) => {
setAssignments(response.data);
})
.finally(() => setIsLoading(false));
};
useEffect(getData, [corporates]);
return { assignments, isLoading, isError, reload: getData };
}

View File

@@ -10,7 +10,7 @@ export default function useAssignments({assigner, assignees, corporate}: {assign
const getData = () => {
setIsLoading(true);
axios
.get<Assignment[]>(!corporate ? "/api/assignments" : `/api/assignments/corporate?id=${corporate}`)
.get<Assignment[]>(!corporate ? "/api/assignments" : `/api/assignments/corporate/${corporate}`)
.then(async (response) => {
if (assigner) {
setAssignments(response.data.filter((a) => a.assigner === assigner));