listo modulos motivos super admin

This commit is contained in:
lemuel 2023-01-17 11:44:41 -06:00
parent da9ba5c69c
commit fa3aa92bd0
47 changed files with 173 additions and 231 deletions

View File

@ -28,10 +28,7 @@ export default {
idInstitucion: { type: Number, required: true, default: false }, idInstitucion: { type: Number, required: true, default: false },
}, },
data() { data() {
return { return { carrerasProgramas: [], isLoadingTable: false }
carrerasProgramas: [],
isLoadingTable: false,
}
}, },
methods: { methods: {
obtenerCarrerasProgramas() { obtenerCarrerasProgramas() {

View File

@ -18,10 +18,7 @@ export default {
idInstitucion: { type: Number, required: true, default: false }, idInstitucion: { type: Number, required: true, default: false },
}, },
data() { data() {
return { return { dias: [], isLoadingTable: false }
dias: [],
isLoadingTable: false,
}
}, },
methods: { methods: {
obtenerDias() { obtenerDias() {

View File

@ -18,10 +18,7 @@ export default {
idInstitucion: { type: Number, required: true, default: false }, idInstitucion: { type: Number, required: true, default: false },
}, },
data() { data() {
return { return { infracciones: [], isLoadingTable: false }
infracciones: [],
isLoadingTable: false,
}
}, },
methods: { methods: {
obtenerInfracciones() { obtenerInfracciones() {

View File

@ -42,13 +42,11 @@ import BotonIniciarSesion from '@/components/botones/BotonIniciarSesion'
export default { export default {
components: { BotonIniciarSesion }, components: { BotonIniciarSesion },
props: { updateIsLoading: { type: Function, required: true, default: () => {} } }, props: {
updateIsLoading: { type: Function, required: true, default: () => {} },
},
data() { data() {
return { return { error: '', usuario: '', password: '' }
error: '',
usuario: '',
password: '',
}
}, },
methods: { methods: {
async login() { async login() {

View File

@ -30,9 +30,7 @@ export default {
admin: { type: Object, required: true, default: () => ({}) }, admin: { type: Object, required: true, default: () => ({}) },
}, },
data() { data() {
return { return { actualizarTabla: false }
actualizarTabla: false,
}
}, },
methods: { methods: {
updateActualizarTabla(valorBooleano) { updateActualizarTabla(valorBooleano) {

View File

@ -30,9 +30,7 @@ export default {
admin: { type: Object, required: true, default: () => ({}) }, admin: { type: Object, required: true, default: () => ({}) },
}, },
data() { data() {
return { return { actualizarTabla: false }
actualizarTabla: false,
}
}, },
methods: { methods: {
updateActualizarTabla(valorBooleano) { updateActualizarTabla(valorBooleano) {

View File

@ -19,10 +19,7 @@ export default {
idInstitucion: { type: Number, required: true, default: false }, idInstitucion: { type: Number, required: true, default: false },
}, },
data() { data() {
return { return { programas: [], isLoadingTable: false }
programas: [],
isLoadingTable: false,
}
}, },
methods: { methods: {
obtenerProgramas() { obtenerProgramas() {

View File

@ -42,10 +42,7 @@ export default {
institucionDia: { type: Object, required: true, default: () => ({}) }, institucionDia: { type: Object, required: true, default: () => ({}) },
}, },
data() { data() {
return { return { horaInicio: new Date(), horaFin: new Date() }
horaInicio: new Date(),
horaFin: new Date(),
}
}, },
methods: { methods: {
crear() { crear() {

View File

@ -10,11 +10,7 @@
expanded expanded
> >
<section <section
class=" class="section is-flex is-align-items-center is-justify-content-center drag-drop"
section
is-flex is-align-items-center is-justify-content-center
drag-drop
"
> >
<div class="content has-text-centered"> <div class="content has-text-centered">
<p> <p>
@ -58,9 +54,7 @@ export default {
path: { type: String, required: true, default: '' }, path: { type: String, required: true, default: '' },
}, },
data() { data() {
return { return { csv: {} }
csv: {},
}
}, },
methods: { methods: {
validarCsv() { validarCsv() {

View File

@ -22,12 +22,7 @@ export default {
modulo: { type: Object, required: true, default: () => ({}) }, modulo: { type: Object, required: true, default: () => ({}) },
}, },
data() { data() {
return { return { carritos: [], isLoadingTable: false, page: 1, total: 0 }
carritos: [],
isLoadingTable: false,
page: 1,
total: 0,
}
}, },
methods: { methods: {
obtenerCarritos() { obtenerCarritos() {

View File

@ -32,12 +32,7 @@ export default {
modulo: { type: Object, required: true, default: () => ({}) }, modulo: { type: Object, required: true, default: () => ({}) },
}, },
data() { data() {
return { return { motivos: [], page: 1, total: 0, isLoadingTable: false }
motivos: [],
page: 1,
total: 0,
isLoadingTable: false,
}
}, },
methods: { methods: {
obtenerMotivos() { obtenerMotivos() {

View File

@ -19,10 +19,7 @@ export default {
idInstitucion: { type: Number, required: true, default: false }, idInstitucion: { type: Number, required: true, default: false },
}, },
data() { data() {
return { return { tiposCarritos: [], isLoadingTable: false }
tiposCarritos: [],
isLoadingTable: false,
}
}, },
methods: { methods: {
obtenerTiposCarritos() { obtenerTiposCarritos() {

View File

@ -19,10 +19,7 @@ export default {
idInstitucion: { type: Number, required: true, default: false }, idInstitucion: { type: Number, required: true, default: false },
}, },
data() { data() {
return { return { tiposEntradas: [], isLoadingTable: false }
tiposEntradas: [],
isLoadingTable: false,
}
}, },
methods: { methods: {
obtenerTiposEntradas() { obtenerTiposEntradas() {

View File

@ -23,9 +23,6 @@ export default {
updateIsLoading: { type: Function, required: true, default: () => {} }, updateIsLoading: { type: Function, required: true, default: () => {} },
admin: { type: Object, required: true, default: () => ({}) }, admin: { type: Object, required: true, default: () => ({}) },
}, },
data() {
return {}
},
methods: { methods: {
desactivarCuentas() { desactivarCuentas() {
this.updateIsLoading(true) this.updateIsLoading(true)

View File

@ -0,0 +1,56 @@
<template>
<b-field>
<BotonDescargarCatalogo
campo="reporte"
:nombreArchivo="`reporte_motivos_${modulo.modulo}`"
:obtener="obtenerMotivosReporte"
/>
</b-field>
</template>
<script>
import axios from 'axios'
import moment from 'moment'
import BotonDescargarCatalogo from '@/components/botones/BotonDescargarCatalogo'
export default {
components: { BotonDescargarCatalogo },
props: { modulo: { type: Object, required: true, default: () => ({}) } },
data() {
return { motivos: [], page: 1, total: 0, isLoadingTable: false }
},
methods: {
obtenerMotivosReporte() {
return axios
.get(
`${process.env.api}/modulo-motivo/reporte?&id_modulo=${this.modulo.id_modulo}`,
this.$getToken.token()
)
.then((res) => {
const data = []
for (let i = 0; i < res.data.length; i++)
data.push({
id_motivo: res.data[i].id_motivo,
fecha_creacion: moment(res.data[i].fecha_creacion).format(
'DD/MM/YYYY'
),
motivo: res.data[i].motivo,
numero_alumnos: res.data[i].numero_alumnos,
operador: res.data[i].operador.operador,
})
return data
})
.catch((err) => {
this.$alertsGenericos.imprimirError(
this.$buefy,
this.$router,
err.response.data
)
})
},
},
}
</script>
<style></style>

View File

@ -80,12 +80,7 @@ export default {
operador: { type: Object, required: true, default: () => ({}) }, operador: { type: Object, required: true, default: () => ({}) },
}, },
data() { data() {
return { return { carritoParam: null, idCarrito: 0, idInstitucion: 0, idModulo: 0 }
carritoParam: null,
idCarrito: 0,
idInstitucion: 0,
idModulo: 0,
}
}, },
methods: { methods: {
buscar() { buscar() {

View File

@ -53,10 +53,7 @@ export default {
operador: { type: Object, required: true, default: () => ({}) }, operador: { type: Object, required: true, default: () => ({}) },
}, },
data() { data() {
return { return { numeroInventarioParam: null, numeroInventario: '' }
numeroInventarioParam: null,
numeroInventario: '',
}
}, },
methods: { methods: {
buscar() { buscar() {

View File

@ -71,10 +71,7 @@ export default {
institucion: { type: Object, required: true, default: () => ({}) }, institucion: { type: Object, required: true, default: () => ({}) },
}, },
data() { data() {
return { return { institucionParam: null, idInstitucion: 0 }
institucionParam: null,
idInstitucion: 0,
}
}, },
methods: { methods: {
buscar() { buscar() {

View File

@ -69,11 +69,7 @@ export default {
modulo: { type: Object, required: true, default: () => ({}) }, modulo: { type: Object, required: true, default: () => ({}) },
}, },
data() { data() {
return { return { idInstitucion: 0, idModulo: 0, moduloParam: null }
idInstitucion: 0,
idModulo: 0,
moduloParam: null,
}
}, },
methods: { methods: {
buscar() { buscar() {

View File

@ -56,10 +56,7 @@ export default {
operador: { type: Object, required: true, default: () => ({}) }, operador: { type: Object, required: true, default: () => ({}) },
}, },
data() { data() {
return { return { numeroCuentaParam: null, numeroCuenta: '' }
numeroCuentaParam: null,
numeroCuenta: '',
}
}, },
methods: { methods: {
buscar() { buscar() {

View File

@ -69,16 +69,15 @@ import SelectInstitucion from '@/components/selects/SelectInstitucion'
export default { export default {
components: { BotonCrear, SelectInstitucion }, components: { BotonCrear, SelectInstitucion },
props: { props: {
updateActualizarTabla: { type: Function, required: true, default: () => {} }, updateActualizarTabla: {
type: Function,
required: true,
default: () => {},
},
updateIsLoading: { type: Function, required: true, default: () => {} }, updateIsLoading: { type: Function, required: true, default: () => {} },
}, },
data() { data() {
return { return { idInstitucion: 0, admin: '', correo: '', nombre: '' }
idInstitucion: 0,
admin: '',
correo: '',
nombre: '',
}
}, },
methods: { methods: {
crearAdmin() { crearAdmin() {

View File

@ -47,10 +47,7 @@ export default {
idInstitucion: { type: Number, required: true, default: 0 }, idInstitucion: { type: Number, required: true, default: 0 },
}, },
data() { data() {
return { return { idInstitucionCarrera: 0, idPrograma: 0 }
idInstitucionCarrera: 0,
idPrograma: 0,
}
}, },
methods: { methods: {
crearCarreraPrograma() { crearCarreraPrograma() {

View File

@ -63,11 +63,7 @@ export default {
updateIsLoading: { type: Function, required: true, default: () => {} }, updateIsLoading: { type: Function, required: true, default: () => {} },
}, },
data() { data() {
return { return { infracciones: [], activo: false, infraccion: '' }
infracciones: [],
activo: false,
infraccion: '',
}
}, },
methods: { methods: {
obtenerCatalogoInfracciones() { obtenerCatalogoInfracciones() {

View File

@ -58,11 +58,7 @@ export default {
tipo: { type: String, required: true, default: '' }, tipo: { type: String, required: true, default: '' },
}, },
data() { data() {
return { return { activo: false, marcas: [], marca: '' }
activo: false,
marcas: [],
marca: '',
}
}, },
methods: { methods: {
obtenerMarcas() { obtenerMarcas() {

View File

@ -58,11 +58,7 @@ export default {
tipo: { type: String, required: true, default: '' }, tipo: { type: String, required: true, default: '' },
}, },
data() { data() {
return { return { activo: false, modelos: [], modelo: '' }
activo: false,
modelos: [],
modelo: '',
}
}, },
methods: { methods: {
obtenerModelos() { obtenerModelos() {

View File

@ -25,14 +25,16 @@ import BotonCrear from '@/components/botones/BotonCrear'
export default { export default {
components: { BotonCrear, InputModulo }, components: { BotonCrear, InputModulo },
props: { props: {
updateActualizarTabla: { type: Function, required: true, default: () => {} }, updateActualizarTabla: {
type: Function,
required: true,
default: () => {},
},
updateIsLoading: { type: Function, required: true, default: () => {} }, updateIsLoading: { type: Function, required: true, default: () => {} },
idInstitucion: { type: Number, required: true, default: 0 }, idInstitucion: { type: Number, required: true, default: 0 },
}, },
data() { data() {
return { return { modulo: '' }
modulo: '',
}
}, },
methods: { methods: {
crearModulo() { crearModulo() {

View File

@ -55,17 +55,16 @@ import InputOperador from '@/components/inputs/InputOperador'
export default { export default {
components: { BotonCrear, InputCorreo, InputNombre, InputOperador }, components: { BotonCrear, InputCorreo, InputNombre, InputOperador },
props: { props: {
updateActualizarTabla: { type: Function, required: true, default: () => {} }, updateActualizarTabla: {
type: Function,
required: true,
default: () => {},
},
updateIsLoading: { type: Function, required: true, default: () => {} }, updateIsLoading: { type: Function, required: true, default: () => {} },
idInstitucion: { type: Number, required: true, default: 0 }, idInstitucion: { type: Number, required: true, default: 0 },
}, },
data() { data() {
return { return { correo: '', nombre: '', operador: '', password: '' }
correo: '',
nombre: '',
operador: '',
password: '',
}
}, },
methods: { methods: {
crearOperador() { crearOperador() {

View File

@ -76,12 +76,7 @@ export default {
updateIsLoading: { type: Function, required: true, default: () => {} }, updateIsLoading: { type: Function, required: true, default: () => {} },
}, },
data() { data() {
return { return { activo: false, tipoCarritos: [], tipoCarrito: '', letra: '' }
activo: false,
tipoCarritos: [],
tipoCarrito: '',
letra: '',
}
}, },
methods: { methods: {
obtenerCatalogoTipoCarrito() { obtenerCatalogoTipoCarrito() {

View File

@ -63,11 +63,7 @@ export default {
updateIsLoading: { type: Function, required: true, default: () => {} }, updateIsLoading: { type: Function, required: true, default: () => {} },
}, },
data() { data() {
return { return { activo: false, tipoEntradas: [], tipoEntrada: '' }
activo: false,
tipoEntradas: [],
tipoEntrada: '',
}
}, },
methods: { methods: {
obtenerCatalogoTipoEntrada() { obtenerCatalogoTipoEntrada() {

View File

@ -63,11 +63,7 @@ export default {
updateIsLoading: { type: Function, required: true, default: () => {} }, updateIsLoading: { type: Function, required: true, default: () => {} },
}, },
data() { data() {
return { return { activo: false, tipoUsuarios: [], tipoUsuario: '' }
activo: false,
tipoUsuarios: [],
tipoUsuario: '',
}
}, },
methods: { methods: {
obtenerCatalogoTipoUsuario() { obtenerCatalogoTipoUsuario() {

View File

@ -155,10 +155,7 @@
v-if="idTipoUsuario === 3" v-if="idTipoUsuario === 3"
/> />
<b-menu-item <b-menu-item icon="storefront-outline">
icon="storefront-outline"
v-if="idTipoUsuario === 3 || idTipoUsuario === 4"
>
<template #label="props"> <template #label="props">
Modulos Modulos
<b-icon <b-icon
@ -184,6 +181,7 @@
'/admin/administrador/modulos/buscar_modulo/buscar_modulo' '/admin/administrador/modulos/buscar_modulo/buscar_modulo'
) )
" "
v-if="idTipoUsuario === 3"
/> />
<b-menu-item <b-menu-item

View File

@ -31,9 +31,7 @@ export default {
operador: { type: Object, required: true, default: () => ({}) }, operador: { type: Object, required: true, default: () => ({}) },
}, },
data() { data() {
return { return { actualizarTabla: false }
actualizarTabla: false,
}
}, },
methods: { methods: {
updateActualizarTabla(valorBooleano) { updateActualizarTabla(valorBooleano) {

View File

@ -82,11 +82,7 @@ export default {
idModulo: { type: Number, required: true, default: 0 }, idModulo: { type: Number, required: true, default: 0 },
}, },
data() { data() {
return { return { error: '', usuario: '', password: '' }
error: '',
usuario: '',
password: '',
}
}, },
methods: { methods: {
async login() { async login() {

View File

@ -36,9 +36,7 @@ export default {
updateIsLoading: { type: Function, required: true, default: () => {} }, updateIsLoading: { type: Function, required: true, default: () => {} },
}, },
data() { data() {
return { return { numeroInventario: '' }
numeroInventario: '',
}
}, },
methods: { methods: {
revisionMultaNumeroInventario() { revisionMultaNumeroInventario() {

View File

@ -29,12 +29,7 @@ export default {
operador: { type: Object, required: true, default: () => ({}) }, operador: { type: Object, required: true, default: () => ({}) },
}, },
data() { data() {
return { return { prestamos: [], page: 1, total: 0, isLoadingTable: false }
prestamos: [],
page: 1,
total: 0,
isLoadingTable: false,
}
}, },
methods: { methods: {
onPageChange(page) { onPageChange(page) {

View File

@ -33,12 +33,7 @@ export default {
usuario: { type: Object, required: true, default: () => ({}) }, usuario: { type: Object, required: true, default: () => ({}) },
}, },
data() { data() {
return { return { prestamos: [], page: 1, total: 0, isLoadingTable: false }
prestamos: [],
page: 1,
total: 0,
isLoadingTable: false,
}
}, },
methods: { methods: {
onPageChange(page) { onPageChange(page) {

View File

@ -27,9 +27,7 @@ export default {
updateIsLoading: { type: Function, required: true, default: () => {} }, updateIsLoading: { type: Function, required: true, default: () => {} },
}, },
data() { data() {
return { return { usuario: { instituciones: [], tipoUsuario: {} } }
usuario: { instituciones: [], tipoUsuario: {} },
}
}, },
methods: { methods: {
updateUsuario(valorObject) { updateUsuario(valorObject) {

View File

@ -51,10 +51,7 @@ export default {
buscar: { type: Function, required: true, default: () => {} }, buscar: { type: Function, required: true, default: () => {} },
}, },
data() { data() {
return { return { telefono: '', correo: '' }
telefono: '',
correo: '',
}
}, },
methods: { methods: {
actualizarDatos() { actualizarDatos() {

View File

@ -38,11 +38,7 @@ export default {
idInstitucionPadre: { type: Number, required: true, default: 0 }, idInstitucionPadre: { type: Number, required: true, default: 0 },
}, },
data() { data() {
return { return { instituciones: [], isLoadingSelect: false, idInstitucion: 0 }
instituciones: [],
isLoadingSelect: false,
idInstitucion: 0,
}
}, },
methods: { methods: {
obtenerInstituciones() { obtenerInstituciones() {

View File

@ -36,11 +36,7 @@ import TablaInstituciones from '@/components/tablas/TablaInstituciones'
export default { export default {
components: { BotonBuscar, SelectInstitucion, TablaInstituciones }, components: { BotonBuscar, SelectInstitucion, TablaInstituciones },
data() { data() {
return { return { instituciones: [], isLoadingTable: false, idInstitucion: 0 }
instituciones: [],
isLoadingTable: false,
idInstitucion: 0,
}
}, },
methods: { methods: {
obtenerInstituciones() { obtenerInstituciones() {

View File

@ -49,23 +49,12 @@ export default {
admin: { type: Object, required: true, default: () => ({}) }, admin: { type: Object, required: true, default: () => ({}) },
}, },
data() { data() {
return { return { modulos: [], isLoadingTable: false, idInstitucion: 0 }
modulos: [],
isLoadingTable: false,
idInstitucion: 0,
}
}, },
methods: { methods: {
obtenerModulos() { obtenerModulos() {
let data = ''
this.isLoadingTable = true this.isLoadingTable = true
if (this.idInstitucion) data += `?id_institucion=${this.idInstitucion}` return this.chooseEndpoint()
return axios
.get(
`${process.env.api}/modulo/modulos-operador${data}`,
this.$getToken.token()
)
.then((res) => { .then((res) => {
this.modulos = res.data this.modulos = res.data
this.isLoadingTable = false this.isLoadingTable = false
@ -79,6 +68,21 @@ export default {
) )
}) })
}, },
chooseEndpoint() {
let data = ''
if (this.idInstitucion) data += `?id_institucion=${this.idInstitucion}`
if (this.admin.tipoUsuario.id_tipo_usuario === 2)
return axios.get(
`${process.env.api}/modulo/modulos${data}`,
this.$getToken.token()
)
else
return axios.get(
`${process.env.api}/modulo/modulos-operador`,
this.$getToken.token()
)
},
}, },
watch: { watch: {
actualizarTabla() { actualizarTabla() {

View File

@ -20,12 +20,7 @@ export default {
operador: { type: Object, required: true, default: () => ({}) }, operador: { type: Object, required: true, default: () => ({}) },
}, },
data() { data() {
return { return { carritos: [], page: 1, total: 0, isLoadingTable: false }
carritos: [],
page: 1,
total: 0,
isLoadingTable: false,
}
}, },
methods: { methods: {
obtenerCarritos() { obtenerCarritos() {

View File

@ -20,12 +20,7 @@ export default {
operador: { type: Object, required: true, default: () => ({}) }, operador: { type: Object, required: true, default: () => ({}) },
}, },
data() { data() {
return { return { equipos: [], page: 1, total: 0, isLoadingTable: false }
equipos: [],
page: 1,
total: 0,
isLoadingTable: false,
}
}, },
methods: { methods: {
obtenerEquipos(page) { obtenerEquipos(page) {

View File

@ -41,11 +41,7 @@ export default {
updateIsLoading: { type: Function, required: true, default: () => {} }, updateIsLoading: { type: Function, required: true, default: () => {} },
}, },
data() { data() {
return { return { horasExcepcion: [], isLoadingTable: false, mostrar: false }
horasExcepcion: [],
isLoadingTable: false,
mostrar: false,
}
}, },
methods: { methods: {
obtenerHorasExcepcion() { obtenerHorasExcepcion() {

View File

@ -5,7 +5,10 @@
:data="carritos" :data="carritos"
:loading="isLoadingTable" :loading="isLoadingTable"
:per-page="25" :per-page="25"
:row-class="(row, index) => 'pointer'" :row-class="
(row, index) =>
operador.tipoUsuario.id_tipo_usuario > 2 ? 'pointer' : ''
"
:selected.sync="carritoSeleccionado" :selected.sync="carritoSeleccionado"
:total="total" :total="total"
@page-change="onPageChange" @page-change="onPageChange"
@ -69,9 +72,7 @@ export default {
operador: { type: Object, required: true, default: () => ({}) }, operador: { type: Object, required: true, default: () => ({}) },
}, },
data() { data() {
return { return { carritoSeleccionado: {} }
carritoSeleccionado: {},
}
}, },
methods: { methods: {
chooseTag(activo) { chooseTag(activo) {
@ -80,9 +81,10 @@ export default {
}, },
watch: { watch: {
carritoSeleccionado() { carritoSeleccionado() {
this.$router.push( if (this.operador.tipoUsuario.id_tipo_usuario > 2)
`/carritos/buscar_carrito/${this.carritoSeleccionado.id_carrito}` this.$router.push(
) `/carritos/buscar_carrito/${this.carritoSeleccionado.id_carrito}`
)
}, },
}, },
} }

View File

@ -51,11 +51,5 @@ export default {
obtenerInfracciones: { type: Function, required: true, default: () => {} }, obtenerInfracciones: { type: Function, required: true, default: () => {} },
updateIsLoading: { type: Function, required: true, default: () => {} }, updateIsLoading: { type: Function, required: true, default: () => {} },
}, },
data() {
return {}
},
methods: {},
watch: {},
created() {},
} }
</script> </script>

View File

@ -3,13 +3,26 @@
class="pb-6" class="pb-6"
:data="modulos" :data="modulos"
:loading="isLoadingTable" :loading="isLoadingTable"
:row-class="(row, index) => 'pointer'" :row-class="
(row, index) =>
operador.tipoUsuario.id_tipo_usuario > 2 ? 'pointer' : ''
"
:selected.sync="moduloSeleccionado" :selected.sync="moduloSeleccionado"
detailed detailed
hoverable hoverable
show-detail-icon show-detail-icon
striped striped
> >
<b-table-column
field="institucion"
label="Institución"
v-slot="props"
centered
v-if="operador.tipoUsuario.id_tipo_usuario === 2"
>
<p>{{ props.row.institucion.institucion }}</p>
</b-table-column>
<b-table-column field="modulo" label="Módulo" v-slot="props" centered> <b-table-column field="modulo" label="Módulo" v-slot="props" centered>
<p>{{ props.row.modulo }}</p> <p>{{ props.row.modulo }}</p>
</b-table-column> </b-table-column>
@ -23,6 +36,16 @@
</p> </p>
</b-table-column> </b-table-column>
<b-table-column
field="reporte"
label="Descargar reporte de desactivación"
v-slot="props"
centered
v-if="operador.tipoUsuario.id_tipo_usuario === 2"
>
<BotonReporteMotivosModulo :modulo="props.row"/>
</b-table-column>
<template #detail="props"> <template #detail="props">
<CarritosModulo :modulo="props.row" :operador="operador" /> <CarritosModulo :modulo="props.row" :operador="operador" />
</template> </template>
@ -31,9 +54,10 @@
<script> <script>
import CarritosModulo from '@/components/tablas/CarritosModulo' import CarritosModulo from '@/components/tablas/CarritosModulo'
import BotonReporteMotivosModulo from '@/components/botones/BotonReporteMotivosModulo'
export default { export default {
components: { CarritosModulo }, components: { BotonReporteMotivosModulo, CarritosModulo },
props: { props: {
modulos: { type: Array, required: true, default: () => [] }, modulos: { type: Array, required: true, default: () => [] },
isLoadingTable: { type: Boolean, required: true, default: false }, isLoadingTable: { type: Boolean, required: true, default: false },
@ -44,9 +68,10 @@ export default {
}, },
watch: { watch: {
moduloSeleccionado() { moduloSeleccionado() {
this.$router.push( if (this.operador.tipoUsuario.id_tipo_usuario > 2)
`/admin/administrador/modulos/buscar_modulo/${this.moduloSeleccionado.id_modulo}` this.$router.push(
) `/admin/administrador/modulos/buscar_modulo/${this.moduloSeleccionado.id_modulo}`
)
}, },
}, },
} }