This commit is contained in:
xXpuma99Xx 2023-01-18 15:57:48 -06:00
parent c68d90ce83
commit 0ec1f99b21
6 changed files with 71 additions and 76 deletions

View File

@ -54,7 +54,7 @@ export default {
obtenerMotivosReporte() { obtenerMotivosReporte() {
return axios return axios
.get( .get(
`${process.env.api}/modulo-motivo/reporte?&id_modulo=${this.modulo.id_modulo}`, `${process.env.api}/modulo-motivo/reporte?id_modulo=${this.modulo.id_modulo}`,
this.$getToken.token() this.$getToken.token()
) )
.then((res) => { .then((res) => {

View File

@ -1,56 +0,0 @@
<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

@ -54,7 +54,7 @@ export default {
obtenerMotivosReporte() { obtenerMotivosReporte() {
return axios return axios
.get( .get(
`${process.env.api}/carrito-motivo/reporte?&id_carrito=${this.carrito.id_carrito}`, `${process.env.api}/carrito-motivo/reporte?id_carrito=${this.carrito.id_carrito}`,
this.$getToken.token() this.$getToken.token()
) )
.then((res) => { .then((res) => {

View File

@ -58,7 +58,7 @@ export default {
obtenerMotivosReporte() { obtenerMotivosReporte() {
return axios return axios
.get( .get(
`${process.env.api}/equipo-motivo/reporte?&id_equipo=${this.equipo.id_equipo}`, `${process.env.api}/equipo-motivo/reporte?id_equipo=${this.equipo.id_equipo}`,
this.$getToken.token() this.$getToken.token()
) )
.then((res) => { .then((res) => {

View File

@ -2,10 +2,7 @@
<div> <div>
<h3 class="is-size-4 mb-3">Todos los módulos</h3> <h3 class="is-size-4 mb-3">Todos los módulos</h3>
<div <div class="columns mb-5 is-align-items-flex-end">
class="columns mb-5 is-align-items-flex-end"
v-if="admin.tipoUsuario.id_tipo_usuario === 2"
>
<SelectInstitucion <SelectInstitucion
columnSize="is-3" columnSize="is-3"
:deshabilitarOptVacia="false" :deshabilitarOptVacia="false"
@ -13,13 +10,23 @@
@institucion-seleccionada=" @institucion-seleccionada="
(nuevaInstitucion) => (idInstitucion = nuevaInstitucion) (nuevaInstitucion) => (idInstitucion = nuevaInstitucion)
" "
v-if="admin.tipoUsuario.id_tipo_usuario === 2"
/> />
<BotonBuscar <BotonBuscar
columnSize="is-3" columnSize="is-3"
:buscar="obtenerModulos" :buscar="obtenerModulos"
:disabled="!idInstitucion" :disabled="!idInstitucion"
v-if="admin.tipoUsuario.id_tipo_usuario === 2"
/> />
<div>
<BotonDescargarCatalogo
campo="reporte"
:nombreArchivo="`reporte_actividad_especial`"
:obtener="obtenerActividadEspecialReporte"
/>
</div>
</div> </div>
<TablaModulos <TablaModulos
@ -33,12 +40,19 @@
<script> <script>
import axios from 'axios' import axios from 'axios'
import moment from 'moment'
import BotonBuscar from '@/components/botones/BotonBuscar' import BotonBuscar from '@/components/botones/BotonBuscar'
import BotonDescargarCatalogo from '@/components/botones/BotonDescargarCatalogo'
import SelectInstitucion from '@/components/selects/SelectInstitucion' import SelectInstitucion from '@/components/selects/SelectInstitucion'
import TablaModulos from '@/components/tablas/TablaModulos' import TablaModulos from '@/components/tablas/TablaModulos'
export default { export default {
components: { BotonBuscar, SelectInstitucion, TablaModulos }, components: {
BotonBuscar,
BotonDescargarCatalogo,
SelectInstitucion,
TablaModulos,
},
props: { props: {
actualizarTabla: { type: Boolean, required: true, default: false }, actualizarTabla: { type: Boolean, required: true, default: false },
updateActualizarTabla: { updateActualizarTabla: {
@ -68,6 +82,54 @@ export default {
) )
}) })
}, },
obtenerActividadEspecialReporte() {
let query = ''
if (this.idInstitucion) query = `?id_institucion=${this.idInstitucion}`
return axios
.get(
`${process.env.api}/modulo-motivo/reporte-actividad-especial${query}`,
this.$getToken.token()
)
.then((res) => {
const data = []
let resultado = 0
for (let i = 0; i < res.data.length; i++) {
resultado += res.data[i].numero_alumnos
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,
id_modulo: res.data[i].modulo.id_modulo,
modulo: res.data[i].modulo.modulo,
institucion: res.data[i].modulo.institucion.institucion,
operador: res.data[i].operador.operador,
})
}
data.push({
id_motivo: '',
fecha_creacion: '',
motivo: res.data.length,
numero_alumnos: resultado,
id_modulo: '',
modulo: '',
institucion: '',
operador: '',
})
return data
})
.catch((err) => {
this.$alertsGenericos.imprimirError(
this.$buefy,
this.$router,
err.response.data
)
})
},
chooseEndpoint() { chooseEndpoint() {
let data = '' let data = ''

View File

@ -36,16 +36,6 @@
</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>
@ -54,10 +44,9 @@
<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: { BotonReporteMotivosModulo, CarritosModulo }, components: { 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 },