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 },
},
data() {
return {
carrerasProgramas: [],
isLoadingTable: false,
}
return { carrerasProgramas: [], isLoadingTable: false }
},
methods: {
obtenerCarrerasProgramas() {

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

@ -23,9 +23,6 @@ export default {
updateIsLoading: { type: Function, required: true, default: () => {} },
admin: { type: Object, required: true, default: () => ({}) },
},
data() {
return {}
},
methods: {
desactivarCuentas() {
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: () => ({}) },
},
data() {
return {
carritoParam: null,
idCarrito: 0,
idInstitucion: 0,
idModulo: 0,
}
return { carritoParam: null, idCarrito: 0, idInstitucion: 0, idModulo: 0 }
},
methods: {
buscar() {

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

@ -49,23 +49,12 @@ export default {
admin: { type: Object, required: true, default: () => ({}) },
},
data() {
return {
modulos: [],
isLoadingTable: false,
idInstitucion: 0,
}
return { modulos: [], isLoadingTable: false, idInstitucion: 0 }
},
methods: {
obtenerModulos() {
let data = ''
this.isLoadingTable = true
if (this.idInstitucion) data += `?id_institucion=${this.idInstitucion}`
return axios
.get(
`${process.env.api}/modulo/modulos-operador${data}`,
this.$getToken.token()
)
return this.chooseEndpoint()
.then((res) => {
this.modulos = res.data
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: {
actualizarTabla() {

View File

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

View File

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

View File

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

View File

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

View File

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

View File

@ -3,13 +3,26 @@
class="pb-6"
:data="modulos"
:loading="isLoadingTable"
:row-class="(row, index) => 'pointer'"
:row-class="
(row, index) =>
operador.tipoUsuario.id_tipo_usuario > 2 ? 'pointer' : ''
"
:selected.sync="moduloSeleccionado"
detailed
hoverable
show-detail-icon
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>
<p>{{ props.row.modulo }}</p>
</b-table-column>
@ -23,6 +36,16 @@
</p>
</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">
<CarritosModulo :modulo="props.row" :operador="operador" />
</template>
@ -31,9 +54,10 @@
<script>
import CarritosModulo from '@/components/tablas/CarritosModulo'
import BotonReporteMotivosModulo from '@/components/botones/BotonReporteMotivosModulo'
export default {
components: { CarritosModulo },
components: { BotonReporteMotivosModulo, CarritosModulo },
props: {
modulos: { type: Array, required: true, default: () => [] },
isLoadingTable: { type: Boolean, required: true, default: false },
@ -44,9 +68,10 @@ export default {
},
watch: {
moduloSeleccionado() {
this.$router.push(
`/admin/administrador/modulos/buscar_modulo/${this.moduloSeleccionado.id_modulo}`
)
if (this.operador.tipoUsuario.id_tipo_usuario > 2)
this.$router.push(
`/admin/administrador/modulos/buscar_modulo/${this.moduloSeleccionado.id_modulo}`
)
},
},
}