plantilla de carga masiva

This commit is contained in:
KIKIN
2020-09-21 18:47:36 -05:00
parent fb777ba18a
commit 188edb0002
2 changed files with 100 additions and 11 deletions
+9 -8
View File
@@ -27,18 +27,19 @@
v-if="!['login'].includes($route.name)"
>
<div class="container d-flex justify-content-between py-1">
<div class="container d-flex justify-content-between py-0 my-2">
<div class="d-flex">
<font-awesome-icon v-if="!['login'].includes($route.name)" icon="home" class="mr-5 my-auto text-white" style="cursor:pointer" @click="$router.push('user')"/>
<font-awesome-icon v-if="!['login'].includes($route.name)" icon="home" class="my-auto text-white" style="cursor:pointer" @click="$router.push('user')"/>
<font-awesome-icon icon="user" v-if="!!setCurrentUser()" class="mr-2 my-auto text-white" />
<span class="text-white mr-3 my-auto mr-md-4" v-text="setCurrentUser()">
</span>
<div class="d-flex align-items-center mx-4">
<font-awesome-icon icon="user" v-if="!!setCurrentUser()" class="my-auto mr-2 text-white" />
<span class="text-white my-auto" v-text="setCurrentUser()">
</span>
</div>
<div v-if="isAdmin()">
<!-- <router-link to="login" class="text-white align-middle">Añadir equipo</router-link> -->
<b-dropdown id="dropdown-left" text="Añadir " variant="info" class="m-2">
<b-dropdown id="dropdown-left" text="Añadir " variant="info" class="">
<b-dropdown-item @click="$router.push('addEquip')">Equipo</b-dropdown-item>
<b-dropdown-item @click="$router.push('addPrinter')">Impresora</b-dropdown-item>
</b-dropdown>
@@ -46,7 +47,7 @@
</div>
<div class="my-auto">
<span
class="badge badge-danger py-2 px-3" style="font-size:14px, font-family: Arial:none; cursor: pointer;"
class="btn btn-danger" style="font-family: Arial:none;"
v-on:click="logout()"
>
Cerrar sesión
+91 -3
View File
@@ -27,8 +27,8 @@
/>
</div>
</div>
</div>
<div v-if="pcView" class="table-responsive table-fixed text-nowrap justify-content-md-center"
style="max-height: 350px;">
<table :class="['table', 'table-sm', 'text-center', { 'table-hover': admin(), 't-hov': admin() }]" style="font-size:14px">
@@ -90,9 +90,45 @@
</div>
</div>
<h4 class="text-left container-fluid mt-4">
Carga masiva de equipos
</h4>
<div
class="d-flex justify-content-start input-group mb-3"
>
<div class="custom-file">
<input
type="file"
class="custom-file-input thob"
id="inputGroupFile04"
aria-describedby="inputGroupFileAddon04"
@change="previewFile"
accept=".csv"
/>
<label
class="custom-file-label"
ref="file"
for="inputGroupFile04"
>
Selecciona el archivo
</label>
</div>
<div class="input-group-append">
<button
class="btn btn-outline-secondary"
type="button"
id="inputGroupFileAddon04"
v-on:click=""
>
Subir
</button>
</div>
</div>
<button
v-on:click="onDescarga(respuesta)"
class="btn btn-lg btn-success mt-3">Descargar</button>
class="btn btn-lg btn-success mt-3">Descargar
</button>
</div>
<div
@@ -127,6 +163,7 @@
<script>
import axios from 'axios';
import config from '../config/config';
import Swal from 'sweetalert2'
/*import strinify from "csv-stringify";
import fs from "file-system";
*/
@@ -245,7 +282,58 @@ export default {
MiXLSX.writeFile(LibroTrabajo, "SalidaFalsa.xlsx");
console.log("Terminado");
return JSON.parse(localStorage.isAdmin);
}
},
previewFile(event) {
this.file = event.target.files[0]
// eslint-disable-next-line
console.log(this.file.name)
this.$refs.file.innerText = this.file.name
},
cargaMasiva() {
Swal.fire({
title: '¿Está seguro de querer subir nuevos equipos?',
icon: 'warning',
showCancelButton: true,
confirmButtonColor: '#3085d6',
cancelButtonColor: '#d33',
confirmButtonText: 'Aceptar',
cancelButtonText: 'Cancelar',
}).then(result => {
if (result.value) {
this.spinner = true
let formData = new FormData()
formData.append('cargaMasiva', this.file)
axios
.post(`${config.api}upload`, formData, {
headers: {
'Content-Type': 'multipart/form-data',
token: window.localStorage.getItem('token'),
},
})
.then(res => {
this.spinner = false
Swal.fire({
title:
'Se cargaron los equipos correctamente',
icon: 'success',
confirmButtonText: 'Aceptar',
})
// eslint-disable-next-line
console.log(res)
})
.catch(err => {
this.spinner = false
Swal.fire({
title: 'Hubo un error al subir los equipos',
icon: 'warning',
confirmButtonText: 'Aceptar',
})
// eslint-disable-next-line
console.log(err)
})
}
})
},
},
}
</script>