only teachers activos
This commit is contained in:
@@ -1,15 +1,19 @@
|
||||
import React, { useEffect, useState } from 'react';
|
||||
import React, { useState } from 'react';
|
||||
import '../../App.css';
|
||||
import CardProfesor from './CardProfesor';
|
||||
import Guard from '../../guards/route.guard';
|
||||
import { useEdificio, useProfesores } from '../../services/auth.services';
|
||||
import { useEdificio, useProfesores, useProfesoresActives } from '../../services/auth.services';
|
||||
|
||||
const Mapeo = ({ filters }) => {
|
||||
const [currentPage, setCurrentPage] = useState(1);
|
||||
const edificios = useEdificio();
|
||||
|
||||
const permissions = Guard();
|
||||
const { profesores, totalPages } = useProfesores(currentPage, filters);
|
||||
|
||||
const profesoresData = useProfesores(currentPage, filters);
|
||||
const profesoresActivesData = useProfesoresActives(currentPage, filters);
|
||||
|
||||
const { profesores, totalPages } = permissions ? profesoresData : profesoresActivesData;
|
||||
|
||||
const handleNextPage = () => {
|
||||
if (currentPage < totalPages) {
|
||||
|
||||
@@ -79,6 +79,41 @@ export const useDeleteProfesor = () => {
|
||||
return { deleteProfesor, loading, error };
|
||||
};
|
||||
|
||||
export const useProfesoresActives = (currentPage, filters) => {
|
||||
const [profesores, setProfesores] = useState([]);
|
||||
const [totalPages, setTotalPages] = useState(1);
|
||||
|
||||
useEffect(() => {
|
||||
const fetchProfesores = () => {
|
||||
const query = new URLSearchParams({
|
||||
page: currentPage,
|
||||
limit: 10,
|
||||
activo:true,
|
||||
...filters
|
||||
}).toString();
|
||||
|
||||
fetch(`http://localhost:3000/profesor/page?${query}`)
|
||||
.then(response => {
|
||||
if (!response.ok) {
|
||||
throw new Error('Network response was not ok');
|
||||
}
|
||||
return response.json();
|
||||
})
|
||||
.then(data => {
|
||||
setProfesores(data.profesores);
|
||||
setTotalPages(data.totalPages);
|
||||
})
|
||||
.catch(error => {
|
||||
console.error('Error fetching the data: ', error);
|
||||
});
|
||||
};
|
||||
|
||||
fetchProfesores();
|
||||
}, [currentPage, filters]);
|
||||
|
||||
return { profesores, totalPages };
|
||||
};
|
||||
|
||||
export const useProfesores = (currentPage, filters) => {
|
||||
const [profesores, setProfesores] = useState([]);
|
||||
const [totalPages, setTotalPages] = useState(1);
|
||||
|
||||
Reference in New Issue
Block a user