2021-01-19 09:39:50 -06:00
const drive = require ( '../helper/drive' );
2021-01-20 00:39:21 -06:00
const Usuario = require ( './tablas/Usuario' );
const Servicio = require ( './tablas/Servicio' );
const buscarCarpetas = ( array , numeroCuenta ) => {
let arrayAux = [];
for ( let i = 0 ; i < array . length ; i ++ )
if ( array [ i ]. name === numeroCuenta ) arrayAux . push ( array [ i ]);
return arrayAux ;
};
const buscarArchivos = ( array , idParent ) => {
let arrayAux = [];
for ( let i = 0 ; i < array . length ; i ++ )
if ( array [ i ]. parents [ 0 ] === idParent ) arrayAux . push ( array [ i ]);
return arrayAux ;
};
2021-01-19 09:39:50 -06:00
const borrarCarpetas = async () => {
2021-01-20 00:39:21 -06:00
const { pdf , carpetas } = await drive . archivosFicheros ();
console . log ( 'Sa cargo todo el drive correctamente.' );
2021-01-19 21:10:49 -06:00
await Usuario . findAll ({ where : { idTipoUsuario : 3 } }). then ( async ( res ) => {
2021-01-20 00:39:21 -06:00
console . log ( `Hay ${ res . length } alumnos.` );
2021-01-19 21:10:49 -06:00
for ( let i = 0 ; i < res . length ; i ++ ) {
2021-01-20 00:39:21 -06:00
let carpetasAlumno = buscarCarpetas ( carpetas , res [ i ]. usuario );
2021-01-19 09:39:50 -06:00
2021-01-20 00:57:44 -06:00
console . log ( ` ${ ( 100 * ( i + 1 )) / res . length } %` );
2021-01-19 21:10:49 -06:00
console . log (
2021-01-20 00:39:21 -06:00
`El numero de cuenta ${ res [ i ]. usuario } tiene ${
carpetasAlumno . length
} carpeta ${ carpetasAlumno . length > 1 ? 's' : '' } .`
2021-01-19 21:48:50 -06:00
);
2021-01-20 00:39:21 -06:00
if ( carpetasAlumno . length > 0 ) {
console . log (
`La carpeta ${ carpetasAlumno [ 0 ]. name } con la que nos quedaremos es ${ carpetasAlumno [ 0 ]. id } .`
);
2021-01-20 00:57:44 -06:00
await Servicio . update (
{ carpeta : carpetasAlumno [ 0 ]. id },
{ where : { idUsuario : res [ i ]. idUsuario } }
);
2021-01-20 00:39:21 -06:00
}
2021-01-19 21:48:50 -06:00
if ( carpetasAlumno . length > 1 ) {
for ( let j = 1 ; j < carpetasAlumno . length ; j ++ ) {
2021-01-20 00:39:21 -06:00
let archivosCarpeta = buscarArchivos ( pdf , carpetasAlumno [ j ]. id );
2021-01-19 09:39:50 -06:00
2021-01-19 21:10:49 -06:00
console . log (
2021-01-20 00:39:21 -06:00
`La carpeta ${ carpetasAlumno [ j ]. id } tiene ${
archivosCarpeta . length
} archivo ${ archivosCarpeta . length > 1 ? 's' : '' } .`
2021-01-19 21:10:49 -06:00
);
2021-01-20 00:39:21 -06:00
for ( let k = 0 ; k < archivosCarpeta . length ; k ++ ) {
2021-01-20 00:57:44 -06:00
await drive . update (
archivosCarpeta [ k ]. id ,
carpetasAlumno [ 0 ]. id ,
carpetasAlumno [ j ]. id
);
2021-01-20 00:39:21 -06:00
console . log (
2021-01-20 00:57:44 -06:00
`Se movio el archivo ${ archivosCarpeta [ k ]. name } con id ${ archivosCarpeta [ k ]. id } de la carpeta ${ carpetasAlumno [ j ]. id } a la carpeta ${ carpetasAlumno [ 0 ]. id } .`
2021-01-20 00:39:21 -06:00
);
2021-01-19 21:10:49 -06:00
}
2021-01-20 00:57:44 -06:00
await drive . deleteFile ( carpetasAlumno [ j ]. id );
2021-01-20 00:44:52 -06:00
console . log ( `Se elimino la carpeta con id ${ carpetasAlumno [ j ]. id } ` );
2021-01-19 21:48:50 -06:00
}
2021-01-19 21:10:49 -06:00
}
2021-01-20 00:39:21 -06:00
console . log ( '------------------------------------------------------' );
2021-01-19 21:10:49 -06:00
}
});
2021-01-19 09:39:50 -06:00
};
borrarCarpetas ();