cargarCredito

This commit is contained in:
Andres2908
2022-05-07 02:26:27 -05:00
parent f892d8bc75
commit b8f19ba6ef
2 changed files with 118 additions and 4 deletions
+38 -3
View File
@@ -37,12 +37,16 @@
</div>
</div>
<div class="has-text-centered pb-2 pt-3">
<p>Tu crédito es de: $0 pesos</p>
</div>
<div class="has-text-centered pb-5 pt-3">
<b-button
:disabled="!(folio && monto && fechaTicket)"
@click="
imprimirWarning(
'¿Los datos para la inscripción a CEDETEC son correctos?',
'¿Los datos para el servicio de impresiones son correctos?',
cargarCredito
)
"
@@ -54,7 +58,16 @@
</template>
<script>
import axios from 'axios'
export default {
props: {
imprimirMensaje: { type: Function, required: true },
imprimirWarning: { type: Function, required: true },
imprimirError: { type: Function, required: true },
updateIsLoading: { type: Function, required: true },
idUsuario: { type: Number, required: true },
},
data() {
const today = new Date()
return {
@@ -64,6 +77,8 @@ export default {
minDate: this.diaMin(today),
maxDate: new Date(),
data: {},
}
},
methods: {
@@ -74,8 +89,28 @@ export default {
today.getDate() - today.getDate() + 1
)
},
cargarCredito() {
console.log('hola')
clear() {
this.folio = ''
this.monto = ''((this.fechaTicket = null))
},
async cargarCredito() {
this.data.idUsuario = this.idUsuario
this.data.folio = this.folio
this.data.monto = this.monto
this.data.fechaTicket = this.fechaTicket
this.updateIsLoading(true)
await axios
.post(`${process.env.api}/Usuario/impresiones`, this.data)
.then((res) => {
this.updateIsLoading(false)
this.imprimirMensaje(res.data.message)
this.clear()
})
.catch((err) => {
this.updateIsLoading(false)
this.imprimirError(err.response.data)
})
},
},
}
+80 -1
View File
@@ -1,6 +1,14 @@
<template>
<div class="container">
<DatosTicket />
<DatosTicket
:imprimirMensaje="imprimirMensaje"
:imprimirWarning="imprimirWarning"
:imprimirError="imprimirError"
:updateIsLoading="updateIsLoading"
:idUsuario="idUsuario"
/>
<b-loading :is-full-page="true" v-model="isLoading" :can-cancel="false" />
</div>
</template>
@@ -11,5 +19,76 @@ export default {
components: {
DatosTicket,
},
data() {
return {
idUsuario: '',
isLoading: false,
}
},
methods: {
updateIsLoading(booleanValue) {
this.isLoading = booleanValue
},
imprimirError(err = {}, title = '¡Hubo un error!', onConfirm = () => {}) {
this.$buefy.dialog.alert({
ariaRole: 'alertdialog',
ariaModal: true,
type: 'is-danger',
title,
message: err.message,
confirmText: 'Entendido',
hasIcon: true,
iconPack: 'mdi',
icon: 'alert-octagon',
onConfirm: () => onConfirm(),
})
if (err.err && err.err === 'token error') {
localStorage.clear()
this.$router.push('/')
}
},
imprimirMensaje(message, title = '¡Felicidades!', onConfirm = () => {}) {
this.$buefy.dialog.alert({
ariaRole: 'alertdialog',
ariaModal: true,
type: 'is-success',
title,
message,
confirmText: 'Ok',
hasIcon: true,
iconPack: 'mdi',
icon: 'check-circle',
onConfirm: () => {
this.$router.push(`/`)
localStorage.clear()
},
})
},
imprimirWarning(
message,
onConfirm = () => {},
title = '¡Espera un minuto!',
onCancel = () => {}
) {
this.$buefy.dialog.alert({
ariaRole: 'alertdialog',
ariaModal: true,
type: 'is-warning',
title,
message,
confirmText: 'Si',
canCancel: true,
cancelText: 'No',
hasIcon: true,
iconPack: 'mdi',
icon: 'help-circle',
onConfirm: () => onConfirm(),
onCancel: () => onCancel(),
})
},
},
created() {
this.idUsuario = Number(localStorage.getItem('idUsuario'))
},
}
</script>