select para ver todos los modulos SDI

This commit is contained in:
Andres2908 2022-06-21 11:39:01 -05:00
parent f2cd71c3db
commit 9d5003a66f
4 changed files with 102 additions and 26 deletions

View File

@ -0,0 +1,92 @@
<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>
<TablaModulTodos
:admin="admin"
:data="data"
:imprimirError="imprimirError"
:imprimirWarning="imprimirWarning"
:imprimirMensaje="imprimirMensaje"
:obtenerCatalogoModulo="obtenerCatalogoModulo"
:updateActualizarTabla="updateActualizarTabla"
:actualizarTabla="actualizarTabla"
/>
</div>
</template>
<script>
import axios from 'axios'
import TablaModulTodos from '@/components/operador/TablaModulTodos'
export default {
components: {
TablaModulTodos,
},
props: {
admin: { typeof: Object, require: true },
imprimirMensaje: { type: Function, required: true },
imprimirWarning: { type: Function, required: true },
imprimirError: { type: Function, required: 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`)
.then((res) => {
this.instituciones = res.data
})
.catch((err) => {
this.imprimirError(err)
})
},
obtenerCatalogoModulo(id_institucion) {
axios
.get(
`${process.env.api}/modulo/modulos?id_institucion=${id_institucion}`
)
.then((res) => {
this.data = res.data
console.log('hola')
console.log(res.data)
})
.catch((err) => {
this.imprimirError(err)
})
},
},
watch: {
idInstitucion(value) {
this.obtenerCatalogoModulo(value)
},
},
created() {
this.admin.tipoUsuario.id_tipo_usuario === 2
? this.obtenerCatalogoInstitucion()
: this.obtenerCatalogoModulo(this.admin.institucion.id_institucion)
},
}
</script>

View File

@ -1,5 +1,7 @@
<template>
<div class="box">
<p class="subtitle is-4">Crear un Módulo</p>
<dir class="columns is-align-items-flex-end pl-0 pb-4">
<b-field class="column mb-0 pb-0" label="Nombre del módulo">
<b-input

View File

@ -30,16 +30,17 @@ export default {
},
props: {
admin: { typeof: Object, require: true },
data: { type: Array, required: true },
imprimirMensaje: { type: Function, required: true },
imprimirWarning: { type: Function, required: true },
imprimirError: { type: Function, required: true },
obtenerCatalogoModulo: { type: Function, required: true },
updateActualizarTabla: { type: Function, required: true },
actualizarTabla: { type: Boolean, required: true },
},
data() {
return {
isLoadingTable: false,
data: [],
}
},
methods: {
@ -49,38 +50,20 @@ export default {
axios
.put(`${process.env.api}/modulo`, data)
.then((res) => {
this.obtenerModulos()
this.obtenerCatalogoModulo(this.data[0].institucion.id_institucion)
this.imprimirMensaje(res.data.message)
})
.catch((err) => {
this.imprimirError(err.response.data)
})
},
obtenerModulos() {
axios
.get(
`${process.env.api}/modulo/modulos?id_institucion=${this.admin.institucion.id_institucion}`
)
.then((res) => {
this.data = res.data
console.log(this.data)
})
.catch((err) => {
this.imprimirError(err)
})
},
},
watch: {
actualizarTabla() {
console.log('hola')
if (this.actualizarTabla) {
this.obtenerModulos()
actualizarTabla(value) {
if (value) {
this.updateActualizarTabla(false)
}
},
},
created() {
this.obtenerModulos()
},
}
</script>

View File

@ -2,7 +2,6 @@
<div>
<Title title="Modulos" :operador="admin" />
<p class="subtitle is-4">Crear un Módulo</p>
<CrearModulo
:institucion="admin.institucion"
:imprimirError="imprimirError"
@ -14,7 +13,7 @@
/>
<p class="subtitle is-4">Todos los Módulos</p>
<TablaModulTodos
<SelectInstitucion
:admin="admin"
:imprimirError="imprimirError"
:imprimirWarning="imprimirWarning"
@ -30,13 +29,13 @@
<script>
import Title from '@/components/layouts/Title'
import CrearModulo from '@/components/operador/CrearModulo'
import TablaModulTodos from '@/components/operador/TablaModulTodos'
import SelectInstitucion from '@/components/admin/SelectInstitucion'
export default {
components: {
Title,
CrearModulo,
TablaModulTodos,
SelectInstitucion,
},
data() {
return {