Files
servicio_social_api/server/db/capetasDrive.js
T
2021-01-20 00:57:44 -06:00

74 lines
2.5 KiB
JavaScript

const drive = require('../helper/drive');
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;
};
const borrarCarpetas = async () => {
const { pdf, carpetas } = await drive.archivosFicheros();
console.log('Sa cargo todo el drive correctamente.');
await Usuario.findAll({ where: { idTipoUsuario: 3 } }).then(async (res) => {
console.log(`Hay ${res.length} alumnos.`);
for (let i = 0; i < res.length; i++) {
let carpetasAlumno = buscarCarpetas(carpetas, res[i].usuario);
console.log(`${(100 * (i + 1)) / res.length}%`);
console.log(
`El numero de cuenta ${res[i].usuario} tiene ${
carpetasAlumno.length
} carpeta${carpetasAlumno.length > 1 ? 's' : ''}.`
);
if (carpetasAlumno.length > 0) {
console.log(
`La carpeta ${carpetasAlumno[0].name} con la que nos quedaremos es ${carpetasAlumno[0].id}.`
);
await Servicio.update(
{ carpeta: carpetasAlumno[0].id },
{ where: { idUsuario: res[i].idUsuario } }
);
}
if (carpetasAlumno.length > 1) {
for (let j = 1; j < carpetasAlumno.length; j++) {
let archivosCarpeta = buscarArchivos(pdf, carpetasAlumno[j].id);
console.log(
`La carpeta ${carpetasAlumno[j].id} tiene ${
archivosCarpeta.length
} archivo${archivosCarpeta.length > 1 ? 's' : ''}.`
);
for (let k = 0; k < archivosCarpeta.length; k++) {
await drive.update(
archivosCarpeta[k].id,
carpetasAlumno[0].id,
carpetasAlumno[j].id
);
console.log(
`Se movio el archivo ${archivosCarpeta[k].name} con id ${archivosCarpeta[k].id} de la carpeta ${carpetasAlumno[j].id} a la carpeta ${carpetasAlumno[0].id}.`
);
}
await drive.deleteFile(carpetasAlumno[j].id);
console.log(`Se elimino la carpeta con id ${carpetasAlumno[j].id}`);
}
}
console.log('------------------------------------------------------');
}
});
};
borrarCarpetas();