ENCOA-96: License Distribuition system from Master Corporate to Corporate
This commit is contained in:
@@ -49,6 +49,7 @@ import {createColumnHelper} from "@tanstack/react-table";
|
||||
import Checkbox from "@/components/Low/Checkbox";
|
||||
import List from "@/components/List";
|
||||
import {getUserCompanyName} from "@/resources/user";
|
||||
import useUserBalance from "@/hooks/useUserBalance";
|
||||
|
||||
interface Props {
|
||||
user: CorporateUser;
|
||||
@@ -159,13 +160,13 @@ export default function CorporateDashboard({user}: Props) {
|
||||
const [corporateUserToShow, setCorporateUserToShow] = useState<CorporateUser>();
|
||||
const [selectedAssignment, setSelectedAssignment] = useState<Assignment>();
|
||||
const [isCreatingAssignment, setIsCreatingAssignment] = useState(false);
|
||||
const [userBalance, setUserBalance] = useState(0);
|
||||
|
||||
const {stats} = useStats();
|
||||
const {users, reload, isLoading} = useUsers();
|
||||
const {codes} = useCodes(user.id);
|
||||
const {groups} = useGroups({admin: user.id});
|
||||
const {assignments, isLoading: isAssignmentsLoading, reload: reloadAssignments} = useAssignments({corporate: user.id});
|
||||
const {balance} = useUserBalance();
|
||||
|
||||
const appendUserFilters = useFilterStore((state) => state.appendUserFilter);
|
||||
const router = useRouter();
|
||||
@@ -174,14 +175,6 @@ export default function CorporateDashboard({user}: Props) {
|
||||
setShowModal(!!selectedUser && page === "");
|
||||
}, [selectedUser, page]);
|
||||
|
||||
useEffect(() => {
|
||||
const relatedGroups = groups.filter((x) => x.name === "Students" || x.name === "Teachers" || x.name === "Corporate");
|
||||
const usersInGroups = relatedGroups.map((x) => x.participants).flat();
|
||||
const filteredCodes = codes.filter((x) => !x.userId || !usersInGroups.includes(x.userId));
|
||||
|
||||
setUserBalance(usersInGroups.length + filteredCodes.length);
|
||||
}, [codes, groups]);
|
||||
|
||||
useEffect(() => {
|
||||
// in this case it fetches the master corporate account
|
||||
getUserCorporate(user.id).then(setCorporateUserToShow);
|
||||
@@ -496,7 +489,7 @@ export default function CorporateDashboard({user}: Props) {
|
||||
<IconCard
|
||||
Icon={BsPersonCheck}
|
||||
label="User Balance"
|
||||
value={`${userBalance}/${user.corporateInformation?.companyInformation?.userAmount || 0}`}
|
||||
value={`${balance}/${user.corporateInformation?.companyInformation?.userAmount || 0}`}
|
||||
color="purple"
|
||||
/>
|
||||
<IconCard
|
||||
|
||||
Reference in New Issue
Block a user