pcpuma_unam_operador/components/admin/SelectInstitucion.vue

86 lines
2.2 KiB
Vue
Raw Normal View History

2022-06-21 16:39:01 +00:00
<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>
2022-07-13 16:30:39 +00:00
<TablaModulos :admin="admin" :data="data" />
2022-06-21 16:39:01 +00:00
</div>
</template>
<script>
import axios from 'axios'
2022-07-08 08:19:56 +00:00
import TablaModulos from '@/components/admin/TablaModulos'
2022-06-21 16:39:01 +00:00
export default {
components: {
2022-07-08 08:19:56 +00:00
TablaModulos,
2022-06-21 16:39:01 +00:00
},
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
2022-07-19 16:41:33 +00:00
.get(`${process.env.api}/institucion/activas`, this.$getToken.token())
2022-06-21 16:39:01 +00:00
.then((res) => {
this.instituciones = res.data
})
.catch((err) => {
2022-07-11 14:15:10 +00:00
this.$alertsGenericos.imprimirError(this.$buefy, err.response.data)
2022-06-21 16:39:01 +00:00
})
},
obtenerCatalogoModulo(id_institucion) {
axios
.get(
2022-07-19 16:41:33 +00:00
`${process.env.api}/modulo/modulos?id_institucion=${id_institucion}`,
this.$getToken.token()
2022-06-21 16:39:01 +00:00
)
.then((res) => {
this.data = res.data
})
.catch((err) => {
2022-07-11 14:15:10 +00:00
this.$alertsGenericos.imprimirError(this.$buefy, err.response.data)
2022-06-21 16:39:01 +00:00
})
},
},
watch: {
idInstitucion(value) {
this.obtenerCatalogoModulo(value)
},
2022-06-21 17:20:16 +00:00
actualizarTabla(value) {
if (value) {
this.obtenerCatalogoModulo(this.admin.institucion.id_institucion)
this.updateActualizarTabla(false)
}
},
2022-06-21 16:39:01 +00:00
},
created() {
this.admin.tipoUsuario.id_tipo_usuario === 2
? this.obtenerCatalogoInstitucion()
: this.obtenerCatalogoModulo(this.admin.institucion.id_institucion)
},
}
</script>