en la carpeta drive se hizo la función mkDirInsideOtherDir y scriptCambioDeCarpeta, para guardar los documentos en el nuevo drive, de los usuarios con status 1,2,3,4,5,7,8,9
This commit is contained in:
@@ -10,6 +10,9 @@ const jwtClient = new google.auth.JWT(
|
||||
['https://www.googleapis.com/auth/drive']
|
||||
);
|
||||
|
||||
const Servicio = require(`../db/tablas/Servicio`);
|
||||
const Usuario = require(`../db/tablas/Usuario`);
|
||||
|
||||
const list = (pageToken) => {
|
||||
return new Promise((resolve, reject) => {
|
||||
jwtClient.authorize((err, tokens) => {
|
||||
@@ -175,6 +178,75 @@ const findAll = async () => {
|
||||
return { folders, pdfs };
|
||||
};
|
||||
|
||||
const mkDirInsideOtherDir = (name, ruta) => {
|
||||
return new Promise((resolve, reject) => {
|
||||
const requestBody = {
|
||||
name,
|
||||
mimeType: 'application/vnd.google-apps.folder',
|
||||
parents: [ruta],
|
||||
};
|
||||
|
||||
jwtClient.authorize((err, tokens) => {
|
||||
if (err) reject('Error de autorización: ' + err);
|
||||
drive.files.create(
|
||||
{
|
||||
fields: 'id',
|
||||
auth: jwtClient,
|
||||
requestBody,
|
||||
},
|
||||
(err, res) => {
|
||||
if (err) reject(err);
|
||||
resolve(res.data.id);
|
||||
}
|
||||
);
|
||||
});
|
||||
});
|
||||
};
|
||||
|
||||
const scriptCambioDeCarpeta = async () => {
|
||||
console.log('Entrando a scriptCambioDeCarpeta');
|
||||
|
||||
const servicios = await Servicio.findAll({
|
||||
where: { idStatus: [1, 2, 3, 4, 5, 7, 8, 9] },
|
||||
});
|
||||
|
||||
const idUsuarios = servicios.map((servicio) => servicio.idUsuario); //aqui se traen todos los idUsuario de los servicios entre 1-5
|
||||
|
||||
const usuarios = await Usuario.findAll({
|
||||
where: { idUsuario: idUsuarios },
|
||||
});
|
||||
|
||||
const parentFolderId = await mkDir('Servicios [1 - 5]'); //se crea la carpeta donde se van a guardar los alumnos y se guarda el id de la carpeta
|
||||
|
||||
for (let i = 0; i < usuarios.length; i++) {
|
||||
//por cada cuenta
|
||||
const carpetaCreada = await mkDirInsideOtherDir(
|
||||
`${usuarios[i].usuario}`,
|
||||
parentFolderId
|
||||
); //se crea una crapeta dentro de la carpeta cuyo id guardamos antes y guardamos el id de la carpeta creada
|
||||
|
||||
await Servicio.update(
|
||||
{ carpeta: carpetaCreada },
|
||||
{ where: { idUsuario: usuarios[i].idUsuario } }
|
||||
); // se actualiza el id de la carpeta por la que se acaba de crear
|
||||
console.log(
|
||||
i,
|
||||
' - ',
|
||||
'[',
|
||||
usuarios[i].idUsuario,
|
||||
']',
|
||||
'[',
|
||||
usuarios[i].usuario,
|
||||
'] : [',
|
||||
carpetaCreada,
|
||||
']'
|
||||
);
|
||||
}
|
||||
console.log('Saliendo de scriptCambioDeCarpeta');
|
||||
};
|
||||
|
||||
//scriptCambioDeCarpeta();
|
||||
|
||||
module.exports = {
|
||||
folder,
|
||||
uploadFile,
|
||||
|
||||
Reference in New Issue
Block a user