pcpuma_unam_operador/components/panel_admin/AdminCarrito.vue
2022-07-29 15:40:03 -05:00

98 lines
2.7 KiB
Vue

<template>
<div class="column is-4">
<h3 class="is-size-4 mb-4">Administrador</h3>
<BotonDesactivar
:disabled="
!carrito.id_carrito || operador.tipoUsuario.id_tipo_usuario === 2
"
:activarDesactivar="activarDesactivar"
:row="carrito"
:msjWarning="`¿Estas segur@ de querer ${
carrito.activo ? 'desactivar' : 'activar'
} este carrito?`"
labelDisabled
/>
<!-- <b-field
label="Cambiar nombre del carrito"
v-if="carrito.tipoCarrito.id_tipo_carrito"
>
<b-input
icon="list-status"
v-model="nuevoNombreCarrito"
placeholder="Nuevo nombre del carrito"
rounded
/>
</b-field>
<BotonGuardar
:disabled="dominio || diasMultaRetraso || tiempoPrestamo ? false : true"
:guardar="actualizarDatos"
msjWarning="¿Estas segur@ de querer guardar estos cambios?"
/> -->
</div>
</template>
<script>
import axios from 'axios'
import BotonDesactivar from '@/components/botones/BotonDesactivar'
import BotonGuardar from '@/components/botones/BotonGuardar'
export default {
components: { BotonDesactivar, BotonGuardar },
props: {
buscar: { type: Function, required: true },
updateIsLoading: { type: Function, required: true },
carrito: { type: Object, required: true },
operador: { type: Object, required: true },
},
data() {
return { nuevoNombreCarrito: '' }
},
methods: {
activarDesactivar() {
const data = {
id_carrito: this.carrito.id_carrito,
activo: !this.carrito.activo,
}
this.updateIsLoading(true)
axios
.put(`${process.env.api}/carrito`, data, this.$getToken.token())
.then((res) => {
this.buscar()
this.updateIsLoading(false)
this.$alertsGenericos.imprimirMensaje(this.$buefy, res.data.message)
})
.catch((err) => {
this.updateIsLoading(false)
this.$alertsGenericos.imprimirError(this.$buefy, err.response.data)
})
},
guradar() {
const data = {
id_carrito: this.carrito.id_carrito,
}
this.updateIsLoading(true)
if (this.nuevoNombreCarrito) data.carrito = this.this.nuevoNombreCarrito
axios
.put(`${process.env.api}/carrito`, data, this.$getToken.token())
.then((res) => {
this.this.nuevoNombreCarrito = ''
this.buscar()
this.updateIsLoading(false)
this.$alertsGenericos.imprimirMensaje(this.$buefy, res.data.message)
})
.catch((err) => {
this.updateIsLoading(false)
this.$alertsGenericos.imprimirError(this.$buefy, err.response.data)
})
},
},
}
</script>
<style></style>