Advertisement
Guest User

UploadController

a guest
Jul 13th, 2019
132
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. import { Request, Response, NextFunction } from 'express';
  2. import pool from '../database';
  3. import helper from '../lib/helpers';
  4. import { Estudiante } from '../models/Estudiante';
  5. import { Usuario } from '../models/Usuario';
  6. import passport from 'passport';
  7. const IncomingForm = require('formidable').IncomingForm;
  8. import fs from 'fs-extra';
  9. import xlsx from 'xlsx';
  10.  
  11. class uploadController {
  12.  
  13.   stringPath: string = 'nah';
  14.  
  15.   public insertaPersonas(path: string) {
  16.     console.log('entre');
  17.     const workbook = xlsx.readFile(path);
  18.     const sheet = workbook.SheetNames[0];
  19.     var worksheet = workbook.Sheets[sheet];
  20.  
  21.  
  22.     for (let i = 7; i < 500; i++) {
  23.       var aux = 'A' + i.toString();
  24.       var auxAp1 = 'B' + i.toString();
  25.       var auxAp2 = 'C' + i.toString();
  26.       var auxNom = 'D' + i.toString();
  27.       var auxSec = 'E' + i.toString();
  28.       var auxEsp = 'F' + i.toString();
  29.       var celda = worksheet[aux];
  30.       var celdaNom = worksheet[auxNom];
  31.       var celdaAp1 = worksheet[auxAp1];
  32.       var celdaAp2 = worksheet[auxAp2];
  33.       var celdaSec = worksheet[auxSec];
  34.       var celdaEsp = worksheet[auxEsp];
  35.  
  36.       if (celda == null || celdaNom == null || celdaAp1 == null || celdaAp2 == null ||
  37.         celdaSec == null || celdaEsp == null) {
  38.         console.log('Fin');
  39.         break;
  40.       } else {
  41.         console.log(celda.v + ' ' + celdaNom.v + ' ' +
  42.           celdaAp1.v + ' ' + celdaAp2.v + ' ' + celdaSec.v + ' ' +
  43.           celdaEsp.v);
  44.  
  45.         //var str = celdaNom.v + ' ' + celdaAp1.v + ' ' + celdaAp2.v;
  46.         //console.log(str);
  47.  
  48.         //console.log(secciones(celdaSec.v));
  49.  
  50.         //console.log(especialidad(celdaEsp.v));
  51.  
  52.       }
  53.  
  54.     }
  55.   };
  56.  
  57.   public secciones(seccion: string) {
  58.     var sec = seccion.split('-')[0];
  59.     switch (sec) {
  60.       case "10":
  61.         return "1";
  62.       case "11":
  63.         return "2";
  64.       case "12":
  65.         return "3";
  66.     }
  67.   };
  68.  
  69.   public especialidad(esp: string) {
  70.     var espec = esp.split(" ")[0];
  71.     switch (espec) {
  72.       case "Accounting":
  73.         return "1";
  74.       case "Informática":
  75.         return "2";
  76.       case "Turismo":
  77.         return "3";
  78.       case "Contabilidad":
  79.         return "4";
  80.       case "Secretariado":
  81.         return "5";
  82.       case "Ejecutivo":
  83.         return "6";
  84.       case "Productividad":
  85.         return "7";
  86.     }
  87.   };
  88.  
  89.   public async subirArchivo(req: Request, res: Response) {
  90.     var form = new IncomingForm();
  91.     let readStream;
  92.     let aux;
  93.     form.parse(req);
  94.     form.on('file', async (field: any, file: any) => {
  95.       // Do something with the file
  96.       // e.g. save it to the database
  97.       // you can access it using file.path
  98.       console.log('file', file.name);
  99.       readStream = fs.createReadStream(file.path);
  100.       // console.log(readStream.path);
  101.       await this.insertaPersonas('cahcadj');
  102.     });
  103.     form.on('end', () => {
  104.       res.json();
  105.     });
  106.   }
  107.  
  108. }
  109.  
  110. const uploadControllers = new uploadController();
  111. export default uploadControllers;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement