Skip to content

Commit

Permalink
fix: update titles and tooltips for inhabilitaciones, add habilitar f…
Browse files Browse the repository at this point in the history
…unctionality
  • Loading branch information
yoelmarain committed Dec 8, 2024
1 parent 9b52e87 commit 061ca97
Show file tree
Hide file tree
Showing 7 changed files with 120 additions and 52 deletions.
38 changes: 16 additions & 22 deletions FrontAdmin/src/API/Inhabilitaciones.ts
Original file line number Diff line number Diff line change
Expand Up @@ -46,30 +46,24 @@ export const getAlumnosaInhabilitar = async () => {

};

export const inhabilitarAlumno = async (legajo: number) => {
try {
const token = Cookies.get('tokennn');
const response = await fetch(`http://localhost:8000/api/alumnos/alumno-a-inhabilitar/${legajo}/` , {
method: 'DELETE',
export const alumnosaHabilitar = async () => {
const token = Cookies.get('tokennn');
const response = await fetch('http://localhost:8000/api/alumnos/alumnos-a-habilitar', {
method: 'GET',
headers: {
'Content-Type': 'application/json',
Authorization: `Bearer ${token}`,
},
});
if (response.ok) {
if (response.status === 204) {
// No hay contenido en la respuesta
return {};
} else {
const data = await response.json();
return data;
}
} else {
throw new Error('Error en la respuesta del servidor');
'Content-Type': 'application/json',
'Authorization': `Bearer ${token}`
}
} catch (error) {
throw new Error('Network error: ' + error);
});
if (response.ok) {
const data = await response.json();
return data;
} else {
const errorData = await response.json();
throw new Error(
`Error en la respuesta del servidor: ${errorData.message}`
);
}
}

};

Original file line number Diff line number Diff line change
Expand Up @@ -143,10 +143,10 @@ export default function Listado() {
<Flex>
{loading2 ? <Flex justifyContent={"center"} w={"100%"}> <Spinner size="xl" /> </Flex>:
abonaron.length > 0 ? <Flex direction={"column"} w={"100%"}>
<Flex direction={"row"} w={"100%"} justifyContent={"center"} gap={1} mb={3} >
<Flex direction={"column"} w={"100%"} justifyContent={"center"} gap={1} mb={3} >
<Flex direction={'row'} gap={2}>
<Tag bg="secundaryBg" w={"100%"} size="lg" p={"10px"} fontSize={18} display="flex" justifyContent="center" fontWeight={"bold"} fontFamily={"serif"}> Periodo: {fecha} </Tag>
<Tag bg="secundaryBg" w={"100%"} size="lg" fontSize={18} display="flex" justifyContent="center" fontWeight={"bold"} fontFamily={"serif"}> Total: {totalabonaron}</Tag>
<Tag bg="secundaryBg" w={"100%"} size="lg" fontSize={18} display="flex" justifyContent="center" fontWeight={"bold"} fontFamily={"serif"}> Total Alumnos: {totalabonaron}</Tag>
</Flex>
<Tag bg="secundaryBg" w={"100%"} p={"10px"} size="lg" fontSize={18} display="flex" justifyContent="center" fontWeight={"bold"} fontFamily={"serif"}> Monto Total: { "$ " + new Intl.NumberFormat('es-ES', { notation: "compact", compactDisplay: "short" }).format(MtotalAbonaron)}
<Tooltip label="Sumatoria del monto abonado por cada alumno" fontSize="md">
Expand All @@ -161,7 +161,7 @@ export default function Listado() {
<Input type="text" value={filter} onChange={handleFilterChange} placeholder="Buscar por Apellido y Nombre, Legajo o DNI..." w={"100%"} />
</InputGroup>
<Tabla headers={headersAbonaron} data={abonaron} />
<Box bottom="0" width="100%" bg="white" p="10px" mt={4} boxShadow="md" >
<Box bottom="0" width="100%" bg="white" p="10px" mt={2} boxShadow="md" >
<Flex justifyContent="space-between" alignItems={"center"}>
<Button onClick={handlePreviousPage2} isDisabled={offset2 === 0} color="white" leftIcon={<ArrowLeftIcon/>}>
Anterior
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,89 @@
import { useEffect } from "react";
import { alumnosaHabilitar } from '../../../../../API/Inhabilitaciones';
import { useState } from "react";
import { Box, Button, Flex, Table, Tbody, Td, Th, Thead, Tr, Text, Spinner } from "@chakra-ui/react";
import Tabla from './Tabla';
import { IoEyeOutline } from "react-icons/io5";
import { ArrowLeftIcon, ArrowRightIcon } from "@chakra-ui/icons";

type Alumno = {
user: number,
full_name: string,
estado_financiero: string,
legajo: number,
};




export default function Habilitar() {

const [alumnosHabilitar, setAlumnosHabilitar] = useState<Alumno[]>([]);
const [loading, setLoading] = useState<boolean>(true);
const headers = ['Apellido y Nombre', 'Legajo' , 'DNI'];
const [limit1] = useState(10);
const [offset1, setOffset1] = useState(0);
const [totalInhabilitados, setTotalInhabilitados] = useState<number>(0);

const handleNextPage = () => {
if (offset1 + limit1 < totalInhabilitados) {
setOffset1(offset1 + limit1);
}
};

const handlePreviousPage = () => {
if (offset1 > 0) {
setOffset1(offset1 - limit1);
}
};

const fetchData = async () => {
setLoading(true);
try {
const response2 = await alumnosaHabilitar();
setAlumnosHabilitar(response2.results);
setTotalInhabilitados(response2.count);
setLoading(false);
} catch (error) {
throw error;
}
};


useEffect(() => {
fetchData();
}, []);

return (
<Box
borderRadius={8}
w={"100%"}
>
<Box w={"100%"}>
{loading ? (
<Spinner />
) :
alumnosHabilitar.length > 0 ?
(
<Box justifyContent={"center"} w={"100%"}>
<Tabla headers={headers} data={alumnosHabilitar} />
<Box bottom="0" width="100%" bg="white" p="10px" mt={4} boxShadow="md" >
<Flex justifyContent="space-between" alignItems={"center"}>
<Button onClick={handlePreviousPage} isDisabled={offset1 === 0} color="white" leftIcon={<ArrowLeftIcon/>}>
Anterior
</Button>
<Text textAlign={"center"} mb={0}>Página {Math.ceil(offset1 / limit1) + 1} de {Math.ceil(totalInhabilitados / limit1)}</Text>
<Button onClick={handleNextPage} isDisabled={offset1 + limit1 >= totalInhabilitados} color="white" rightIcon={<ArrowRightIcon/>}>
Siguiente
</Button>
</Flex>
</Box>

</Box>
): <p>No hay datos para mostrar</p>}
</Box>

</Box>

);
}
Original file line number Diff line number Diff line change
Expand Up @@ -103,7 +103,7 @@ export default function AInhabilitar() {
<Th textAlign="center" fontFamily="Helvetica" fontWeight="900">Apellido y Nombre</Th>
<Th textAlign="center" fontFamily="Helvetica" fontWeight="900">DNI</Th>
<Th textAlign="center" fontFamily="Helvetica" fontWeight="900">Legajo</Th>
<Th textAlign="center" fontFamily="Helvetica" fontWeight="900" w={"20%"}>Ver Detalles</Th>
<Th textAlign="center" fontFamily="Helvetica" fontWeight="900" w={"20%"}>Ver Cuotas Vencidas</Th>
</Tr>
</Thead>
<Tbody>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ import React, { useEffect, useState } from 'react';
import {getInhabilitaciones} from '../../../../../API/Inhabilitaciones';
import Tabla from './Tabla';
import AInhabilitar from './Alumnos_a_Inhabilitar';
import Habilitar from './Alumno_a_Habilitar';
import { Box, Button, Flex, Tab, TabList, Text ,TabPanel, TabPanels, Tabs, Tag, Spinner, Input, Tooltip } from "@chakra-ui/react";
import { ArrowLeftIcon, ArrowRightIcon, InfoIcon } from '@chakra-ui/icons';

Expand Down Expand Up @@ -107,23 +108,7 @@ function Inhabilitados() {
<TabPanels>
<TabPanel>
<Flex>
<Box
borderRadius={8}
borderColor={"gray.200"}
borderStyle={"solid"}
borderWidth={1}
p={3}
>
{loading ? (
<Spinner />
) : (
<Box>
<Flex>
<Text fontSize="xl" fontWeight="bold">Habilitar</Text>
</Flex>
</Box>
)}
</Box>
<Habilitar />
</Flex>
</TabPanel>
<TabPanel>
Expand Down
16 changes: 8 additions & 8 deletions FrontAdmin/src/components/Pages/TareasProgramadas/Tareas.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -102,10 +102,10 @@ function Tareas() {

<ul>
<Text ml={5}><li> <strong>Función:</strong> Encargado de imputar los pagos confirmados de cada alumno</li></Text>
<Text ml={5}><li> <strong>Ejecución:</strong> Anual del 1 de Marzo al 31 de Diciembre a las 23:00 hs </li></Text>
<Text ml={5}><li> <strong>Ejecución automática:</strong> Anual del 1 de Marzo al 31 de Diciembre a las 23:00 hs </li></Text>
</ul>
<Flex mt={2} justifyContent={'flex-end'}>
<Button onClick={onOpen} variant={'light'}>{loadingPagos ? <Spinner size="sm" /> : 'Ejecutar'}</Button>
<Button onClick={onOpen} variant={'light'}>{loadingPagos ? <Spinner size="sm" /> : 'Ejecutar ahora'}</Button>
</Flex>
</Box>
<Box
Expand All @@ -116,10 +116,10 @@ function Tareas() {
<Heading fontSize={22} mb={2}>Actualizar Inhabilitaciones</Heading>
<ul>
<Text ml={5}><li> <strong>Función:</strong> Encargado de actualizar las inhabilitaciones registradas de cada alumno</li></Text>
<Text ml={5}><li> <strong>Ejecución:</strong> Anual del 1 de Marzo al 31 de Diciembre a las 00:00 hs </li></Text>
<Text ml={5}><li> <strong>Ejecución automática:</strong> Anual del 1 de Marzo al 31 de Diciembre a las 00:00 hs </li></Text>
</ul>
<Flex mt={2} justifyContent={'flex-end'}>
<Button onClick={onOpen2} variant={'light'}>{loadingInhabilitaciones ? <Spinner size="sm" /> : 'Ejecutar' }</Button>
<Button onClick={onOpen2} variant={'light'}>{loadingInhabilitaciones ? <Spinner size="sm" /> : 'Ejecutar ahora' }</Button>
</Flex>
</Box>
<Box
Expand All @@ -131,11 +131,11 @@ function Tareas() {
<Heading fontSize={22} mb={2}>Actualizar Materias</Heading>
<ul>
<Text ml={5}><li> <strong>Función:</strong> Encargado de actualizar las materiasque cursa actualmente cada alumno</li></Text>
<Text ml={5}><li> <strong>Ejecución:</strong> - 1er cuatrimestre del 12 febreo al 6 de marzo a las 00:00 hs
<Text ml={5}><li> <strong>Ejecución automática:</strong> 1er cuatrimestre del 12 febrero al 6 de marzo a las 00:00 hs
- 2do cuatrimestre del 12 julio al 2 agosto a las 00:00 hs </li></Text>
</ul>
<Flex mt={2} justifyContent={'flex-end'}>
<Button onClick={onOpen3} variant={'light'}>{loadingMaterias ? <Spinner size="sm" /> : 'Ejecutar'}</Button>
<Button onClick={onOpen3} variant={'light'}>{loadingMaterias ? <Spinner size="sm" /> : 'Ejecutar ahora'}</Button>
</Flex>
</Box>
<Box
Expand All @@ -147,10 +147,10 @@ function Tareas() {
<Heading fontSize={22} mb={2}>Actualizar Cuotas</Heading>
<ul>
<Text ml={5}><li> <strong>Función:</strong> Encargado de actualizar el monto de las cuotas según el vencimiento</li></Text>
<Text ml={5}><li> <strong>Ejecución:</strong> Anual del 1 de Marzo al 31 de Diciembre a las 23:59 hs </li></Text>
<Text ml={5}><li> <strong>Ejecución automática:</strong> Anual del 1 de Marzo al 31 de Diciembre a las 23:59 hs </li></Text>
</ul>
<Flex mt={2} justifyContent={'flex-end'}>
<Button onClick={onOpen4} variant={'light'}>{loadingCuotas ? <Spinner size="sm" /> : 'Ejecutar'}</Button>
<Button onClick={onOpen4} variant={'light'}>{loadingCuotas ? <Spinner size="sm" /> : 'Ejecutar ahora'}</Button>
</Flex>
</Box>
</Flex>
Expand Down
2 changes: 1 addition & 1 deletion FrontAdmin/src/components/SubMenu/LinksSubMenu.tsx
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import { title } from "process";

export const ITEMS_SUBMENU = [
{ url: 'inhabilitaciones', title: 'Inhabilitaciones', tooltip: 'Alumnos que se encuentran inhabilitados' },
{ url: 'inhabilitaciones', title: 'Habilitar/Inhabilitar', tooltip: 'Alumnos que se encuentran inhabilitados' },
{ url: 'baja-provisoria', title: 'Baja Provisoria', tooltip: 'Alumnos que solicitaron la baja' },
{ url: 'cuotas', title: 'Cuotas' , tooltip: 'Alumnos que abonaron/adeudan una respectiva cuota' },
{ url: 'matricula', title: 'Matricula', tooltip: 'Alumnos que abonaron la matricula' },
Expand Down

0 comments on commit 061ca97

Please sign in to comment.