85 lines
2.1 KiB
Vue
85 lines
2.1 KiB
Vue
<template>
|
|
<div>
|
|
<b-field
|
|
class="column is-4"
|
|
label="Nombre de la Institución"
|
|
v-if="admin.tipoUsuario.id_tipo_usuario === 2"
|
|
>
|
|
<b-select v-model="idInstitucion" expanded rounded>
|
|
<option value="" disabled>Institución</option>
|
|
<option
|
|
v-for="institucion in instituciones"
|
|
:value="institucion.id_institucion"
|
|
:key="institucion.id_insitucion"
|
|
>
|
|
{{ institucion.institucion }}
|
|
</option>
|
|
</b-select>
|
|
</b-field>
|
|
|
|
<TablaModulos :admin="admin" :data="data" />
|
|
</div>
|
|
</template>
|
|
<script>
|
|
import axios from 'axios'
|
|
import TablaModulos from '@/components/admin/TablaModulos'
|
|
export default {
|
|
components: {
|
|
TablaModulos,
|
|
},
|
|
props: {
|
|
admin: { typeof: Object, require: true },
|
|
updateActualizarTabla: { type: Function, required: true },
|
|
actualizarTabla: { type: Boolean, required: true },
|
|
},
|
|
data() {
|
|
return {
|
|
instituciones: [],
|
|
institucion: {},
|
|
idInstitucion: '',
|
|
data: [],
|
|
}
|
|
},
|
|
methods: {
|
|
obtenerCatalogoInstitucion() {
|
|
axios
|
|
.get(`${process.env.api}/institucion/activas`)
|
|
.then((res) => {
|
|
this.instituciones = res.data
|
|
})
|
|
.catch((err) => {
|
|
this.$alertsGenericos.imprimirError(this.$buefy, err.response.data)
|
|
})
|
|
},
|
|
obtenerCatalogoModulo(id_institucion) {
|
|
axios
|
|
.get(
|
|
`${process.env.api}/modulo/modulos?id_institucion=${id_institucion}`
|
|
)
|
|
.then((res) => {
|
|
this.data = res.data
|
|
})
|
|
.catch((err) => {
|
|
this.$alertsGenericos.imprimirError(this.$buefy, err.response.data)
|
|
})
|
|
},
|
|
},
|
|
watch: {
|
|
idInstitucion(value) {
|
|
this.obtenerCatalogoModulo(value)
|
|
},
|
|
actualizarTabla(value) {
|
|
if (value) {
|
|
this.obtenerCatalogoModulo(this.admin.institucion.id_institucion)
|
|
this.updateActualizarTabla(false)
|
|
}
|
|
},
|
|
},
|
|
created() {
|
|
this.admin.tipoUsuario.id_tipo_usuario === 2
|
|
? this.obtenerCatalogoInstitucion()
|
|
: this.obtenerCatalogoModulo(this.admin.institucion.id_institucion)
|
|
},
|
|
}
|
|
</script>
|