Skip to content

Commit

Permalink
Conexion informar pago (#126)
Browse files Browse the repository at this point in the history
  • Loading branch information
yoelmarain authored Sep 25, 2024
2 parents 8cdc35a + 9fa8e5d commit 6eeecd3
Show file tree
Hide file tree
Showing 10 changed files with 468 additions and 289 deletions.
69 changes: 69 additions & 0 deletions FrontAdmin/src/API-Alumnos/Compromiso.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,69 @@
import Cookies from 'js-cookie'

Check warning on line 1 in FrontAdmin/src/API-Alumnos/Compromiso.ts

View workflow job for this annotation

GitHub Actions / Linter de Código

Insert `;`
// los dni son la mama de lo hardcodeado

export const FetchCompromisos = async () => {
try {

Check warning on line 5 in FrontAdmin/src/API-Alumnos/Compromiso.ts

View workflow job for this annotation

GitHub Actions / Linter de Código

Insert `·`
const token = Cookies.get('tokennn');
// const dni = Cookies.get('dni)
const dni = 36562786;
const response = await fetch(`http://localhost:8000/api/firmas/firmas-de-alumno/${dni}/`, {

Check warning on line 9 in FrontAdmin/src/API-Alumnos/Compromiso.ts

View workflow job for this annotation

GitHub Actions / Linter de Código

Replace ``http://localhost:8000/api/firmas/firmas-de-alumno/${dni}/`,·{⏎····` with `⏎······`http://localhost:8000/api/firmas/firmas-de-alumno/${dni}/`,⏎······{⏎`
method: 'GET',
headers: {

Check warning on line 11 in FrontAdmin/src/API-Alumnos/Compromiso.ts

View workflow job for this annotation

GitHub Actions / Linter de Código

Delete `····`
'Content-Type': 'application/json',

Check warning on line 12 in FrontAdmin/src/API-Alumnos/Compromiso.ts

View workflow job for this annotation

GitHub Actions / Linter de Código

Replace `················` with `··········`
Authorization: `Bearer ${token}`,

Check warning on line 13 in FrontAdmin/src/API-Alumnos/Compromiso.ts

View workflow job for this annotation

GitHub Actions / Linter de Código

Delete `······`
},

Check warning on line 14 in FrontAdmin/src/API-Alumnos/Compromiso.ts

View workflow job for this annotation

GitHub Actions / Linter de Código

Replace `····},` with `},⏎······}`
});

Check warning on line 15 in FrontAdmin/src/API-Alumnos/Compromiso.ts

View workflow job for this annotation

GitHub Actions / Linter de Código

Delete `}`
if (response.ok) {
const data = await response.json();

Check warning on line 17 in FrontAdmin/src/API-Alumnos/Compromiso.ts

View workflow job for this annotation

GitHub Actions / Linter de Código

Replace `············` with `······`
return data;

Check warning on line 18 in FrontAdmin/src/API-Alumnos/Compromiso.ts

View workflow job for this annotation

GitHub Actions / Linter de Código

Delete `······`
} else {
throw new Error('Error en la respuesta del servidor');
}
} catch (error) {
throw new Error('Network error: ' + error);
}
};

export const FetchUltimoCompromiso = async () => {
try {
const token = Cookies.get('tokennn');
const response = await fetch(`http://localhost:8000/api/ultimo-compromiso-de-pago/`, {
method: 'GET',
headers: {
'Content-Type': 'application/json',
Authorization: `Bearer ${token}`,
},
});
if (response.ok) {
const data = await response.json();
return data;
} else {
throw new Error('Error en la respuesta del servidor');
}
} catch (error) {
throw new Error('Network error: ' + error);
}
};

export const FirmarCompromiso = async () => {
try {
const token = Cookies.get('tokennn');
// const dni = Cookies.get('dni')
const dni = 36562786;
const response = await fetch(`http://localhost:8000/api/firmas/firmar-compromiso/${dni}/`, {
method: 'POST',
headers: {
'Content-Type': 'application/json',
Authorization: `Bearer ${token}`,
},
});
if (response.ok) {
return;
} else {
throw new Error('Error en la respuesta del servidor');
}
} catch (error) {
throw new Error('Network error: ' + error);
}
};

126 changes: 94 additions & 32 deletions FrontAdmin/src/API-Alumnos/Pagos.ts
Original file line number Diff line number Diff line change
@@ -1,64 +1,126 @@
import Cookies from 'js-cookie';

export const FetchPostPago = async (
cuotas: any,
montoInformado: number,
archivo: File | null, // Archivo a enviar
comentario: string,
nro_transferencia: number
) => {
try {
const token = Cookies.get('tokennn');
//const dni = Cookies.get('dni');
const dni = 36562786; // Puedes obtener esto desde las cookies también

// Crea un nuevo objeto FormData
const formData = new FormData();
formData.append('alumno', dni);
formData.append('cuotas', cuotas);
formData.append('monto_informado', montoInformado);
formData.append('ticket', archivo); // El archivo
formData.append('comentario', comentario);
formData.append('nro_transferencia', nro_transferencia);

console.log('FormData:', formData);
console.log('Archivo:', archivo);
console.log('Cuotas:', cuotas);
console.log('Monto informado:', montoInformado);
console.log('Comentario:', comentario);
console.log('Nro transferencia:', nro_transferencia);

// Realiza la solicitud fetch
const response = await fetch(`http://localhost:8000/api/pagos/alumno/${dni}/`, {
method: 'POST',
headers: {
Authorization: `Bearer ${token}`,
},
body: formData,
});

if (response.ok) {
return await response.json();
} else {
const errorData = await response.json();
throw new Error(`Error en la respuesta del servidor: ${errorData.message}`);
}
} catch (error) {
console.error('Network error:', error);
}
};


export const FetchGetCuotas = async () => {
try {
const token = Cookies.get('tokennn');
//const dni = Cookies.get('dni');
const dni = 36562786;

const response = await fetch(`http://localhost:8000/api/cuotas/alumno/${dni}/?limit=6&offset=0/`, {
method: 'GET',
headers: {
'Content-Type': 'application/json',
Authorization: `Bearer ${token}`,
},
});

if (response.ok) {
const data = await response.json();
return data;
} else {
throw new Error('Error en la respuesta del servidor');
}
} catch (error) {
throw new Error('Network error: ' + error);
}
};

const cuotas = [
{
numero: 0,
monto1erVencimiento: 10000,
monto2doVencimiento: 0,
monto3erVencimiento: 0,
valortotal: 10000,
valorpagado: 10000,
valoradeudado: 0,
montoactual: 0,
fechaVencimiento: '2024-03-10',
valorpagado: 10000,
valorinformado: 0,
estado: "PAGADO",
},
{
numero: 1,
monto1erVencimiento: 10000,
monto2doVencimiento: 15000,
monto3erVencimiento: 20000,
valortotal: 10000,
valorpagado: 0,
valoradeudado: 10000,
montoactual: 10000,
fechaVencimiento: '2024-03-10',
valorpagado: 0,
valorinformado: 5000,
estado: "INFORMADO",
},
{
numero: 2,
monto1erVencimiento: 10000,
monto2doVencimiento: 15000,
monto3erVencimiento: 20000,
valortotal: 10000,
montoactual: 10000,
fechaVencimiento: '2024-04-10',
valorpagado: 0,
valoradeudado: 10000,
valorinformado: 0,
estado: "ADEUDADO",
},
{
numero: 3,
monto1erVencimiento: 10000,
monto2doVencimiento: 15000,
monto3erVencimiento: 20000,
valortotal: 10000,
montoactual: 10000,
fechaVencimiento: '2024-05-10',
valorpagado: 0,
valoradeudado: 10000,
valorinformado: 0,
estado: "ADEUDADO",
},
{
numero: 4,
monto1erVencimiento: 10000,
monto2doVencimiento: 15000,
monto3erVencimiento: 20000,
valortotal: 10000,
montoactual: 10000,
fechaVencimiento: '2024-06-10',
valorpagado: 0,
valoradeudado: 10000,
valorinformado: 0,
estado: "ADEUDADO",
},
{
numero: 5,
monto1erVencimiento: 10000,
monto2doVencimiento: 15000,
monto3erVencimiento: 20000,
valortotal: 10000,
montoactual: 10000,
fechaVencimiento: '2024-07-10',
valorpagado: 0,
valoradeudado: 10000,
valorinformado: 0,
estado: "ADEUDADO",
}
];
Expand Down
3 changes: 2 additions & 1 deletion FrontAdmin/src/API/Login.ts
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ export const FetchLogin = async (password: string, account: string) => {
headers: {
'Content-Type': 'application/json',
},
body: JSON.stringify({ password, account }),
body: JSON.stringify({ email: account ,password }),
});

if (response.ok) {
Expand All @@ -20,6 +20,7 @@ export const FetchLogin = async (password: string, account: string) => {
localStorage.setItem('userRol', JSON.stringify(roles));

Cookies.set('tokennn', data.access);
Cookies.set('dni', data.user.dni);
Cookies.set('refresh_token', data.refresh);
Cookies.set('access_expiration', data.access_expiration);
Cookies.set('refresh_expiration', data.refresh_expiration);
Expand Down
1 change: 1 addition & 0 deletions FrontAdmin/src/Context.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -79,6 +79,7 @@ const AuthProvider = ({ children }: { children: ReactNode }) => {
Cookies.remove('access_expiration');
Cookies.remove('refresh_expiration');
Cookies.remove('username');
Cookies.remove('dni');
localStorage.removeItem('userRol');
console.log('logout');
setIsAuthenticated(false);
Expand Down
Loading

0 comments on commit 6eeecd3

Please sign in to comment.