general-library-union 2.3.38 → 2.3.40
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.browserslistrc +15 -0
- package/.editorconfig +16 -0
- package/.vscode/extensions.json +4 -0
- package/.vscode/launch.json +20 -0
- package/.vscode/tasks.json +42 -0
- package/angular.json +130 -0
- package/karma.conf.js +44 -0
- package/ng-package.json +21 -0
- package/package.json +68 -57
- package/{public-api.d.ts → public-api.ts} +188 -154
- package/src/app/app.component.html +0 -0
- package/src/app/app.component.scss +0 -0
- package/src/app/app.component.spec.ts +29 -0
- package/src/app/app.component.ts +12 -0
- package/src/app/app.config.ts +8 -0
- package/src/app/app.module.ts +10 -0
- package/src/app/app.routes.ts +3 -0
- package/src/app/core/componentes/breadcrumb/breadcrumb.component.html +6 -0
- package/src/app/core/componentes/breadcrumb/breadcrumb.component.scss +0 -0
- package/src/app/core/componentes/breadcrumb/breadcrumb.component.ts +34 -0
- package/src/app/core/componentes/carga-breadcrumb/carga-breadcrumb.component.html +1 -0
- package/src/app/core/componentes/carga-breadcrumb/carga-breadcrumb.component.scss +0 -0
- package/src/app/core/componentes/carga-breadcrumb/carga-breadcrumb.component.ts +31 -0
- package/src/app/core/componentes/carga-pantalla-completa/carga-pantalla-completa.component.html +9 -0
- package/src/app/core/componentes/carga-pantalla-completa/carga-pantalla-completa.component.scss +28 -0
- package/src/app/core/componentes/carga-pantalla-completa/carga-pantalla-completa.component.ts +32 -0
- package/src/app/core/componentes/filtro-general/filtro-general.component.html +34 -0
- package/src/app/core/componentes/filtro-general/filtro-general.component.scss +3 -0
- package/src/app/core/componentes/filtro-general/filtro-general.component.ts +154 -0
- package/src/app/core/componentes/footer/footer.component.html +19 -0
- package/src/app/core/componentes/footer/footer.component.scss +3 -0
- package/src/app/core/componentes/footer/footer.component.ts +24 -0
- package/src/app/core/componentes/formulariodinamico/formulariodinamico.component.html +267 -0
- package/src/app/core/componentes/formulariodinamico/formulariodinamico.component.scss +21 -0
- package/src/app/core/componentes/formulariodinamico/formulariodinamico.component.ts +275 -0
- package/src/app/core/componentes/formulariodinamico/objetosformulario/{Cambio.d.ts → Cambio.ts} +13 -7
- package/src/app/core/componentes/formulariodinamico/objetosformulario/CampoFormulario.ts +118 -0
- package/src/app/core/componentes/formulariodinamico/objetosformulario/CampoFormularioCons.ts +76 -0
- package/src/app/core/componentes/formulariodinamico/objetosformulario/CampoFormularioNuevo.ts +67 -0
- package/src/app/core/componentes/formulariodinamico/objetosformulario/HashDirective.ts +11 -0
- package/src/app/core/componentes/inicio-component/inicio-component.component.html +29 -0
- package/src/app/core/componentes/inicio-component/inicio-component.component.scss +69 -0
- package/src/app/core/componentes/inicio-component/inicio-component.component.ts +65 -0
- package/src/app/core/componentes/menu/menu.component.html +13 -0
- package/src/app/core/componentes/menu/menu.component.scss +36 -0
- package/src/app/core/componentes/menu/menu.component.ts +35 -0
- package/src/app/core/componentes/tabla-general/tabla-general.component.html +90 -0
- package/src/app/core/componentes/tabla-general/tabla-general.component.scss +0 -0
- package/src/app/core/componentes/tabla-general/tabla-general.component.ts +96 -0
- package/src/app/core/core.module.ts +22 -0
- package/src/app/core/errores/authentication.error.ts +6 -0
- package/src/app/core/modelos/error-response.model.ts +9 -0
- package/src/app/core/modelos/table-column.model.ts +10 -0
- package/src/app/core/modelos/user.model.ts +6 -0
- package/src/app/core/plantilla-general/plantilla-general.template.html +139 -0
- package/src/app/core/plantilla-general/plantilla-general.template.scss +37 -0
- package/src/app/core/plantilla-general/plantilla-general.template.ts +229 -0
- package/src/app/core/servicios/auth.service.ts +183 -0
- package/src/app/core/servicios/cargar-control-funcionalidad.service.ts +49 -0
- package/src/app/core/servicios/data-exporter-table.utils.ts +55 -0
- package/src/app/core/servicios/error-interceptor.service.ts +145 -0
- package/src/app/core/servicios/guardias/auth.guard.ts +51 -0
- package/src/app/core/servicios/guardias/publico.guard.ts +22 -0
- package/src/app/core/servicios/interceptores/token-interceptor.service.ts +110 -0
- package/src/app/core/servicios/loading.service.ts +48 -0
- package/src/app/core/servicios/menu.service.ts +89 -0
- package/src/app/core/servicios/storage.service.ts +68 -0
- package/src/app/core/servicios/template.service.ts +91 -0
- package/src/app/core/servicios/toast.service.ts +89 -0
- package/src/app/core/servicios/utils.service.ts +331 -0
- package/src/app/core/sharedlib.module.ts +11 -0
- package/src/app/core/utilidades/color.util.ts +197 -0
- package/src/app/layout/api/{menuchangeevent.d.ts → menuchangeevent.ts} +4 -4
- package/src/app/layout/app.breadcrumb.component.html +20 -0
- package/src/app/layout/app.breadcrumb.component.ts +74 -0
- package/src/app/layout/app.footer.component.html +18 -0
- package/src/app/layout/app.footer.component.ts +15 -0
- package/src/app/layout/app.layout.component.html +20 -0
- package/src/app/layout/app.layout.component.ts +201 -0
- package/src/app/layout/app.layout.module.ts +9 -0
- package/src/app/layout/app.menu.component.html +6 -0
- package/src/app/layout/app.menu.component.ts +40 -0
- package/src/app/layout/app.menu.service.ts +23 -0
- package/src/app/layout/app.menuitem.component.ts +250 -0
- package/src/app/layout/app.menuprofile.component.html +35 -0
- package/src/app/layout/app.menuprofile.component.ts +60 -0
- package/src/app/layout/app.rightmenu.component.html +72 -0
- package/src/app/layout/app.rightmenu.component.ts +24 -0
- package/src/app/layout/app.sidebar.component.html +40 -0
- package/src/app/layout/app.sidebar.component.ts +80 -0
- package/src/app/layout/app.topbar.component.html +214 -0
- package/src/app/layout/app.topbar.component.ts +326 -0
- package/src/app/layout/config/app.config.component.html +125 -0
- package/src/app/layout/config/app.config.component.ts +206 -0
- package/src/app/layout/config/app.config.module.ts +11 -0
- package/src/app/layout/service/app.layout.service.ts +191 -0
- package/src/app/publico/pages/login/login.page.html +53 -0
- package/src/app/publico/pages/login/login.page.scss +122 -0
- package/src/app/publico/pages/login/login.page.ts +127 -0
- package/src/app/publico/pages/not-found/not-found.page.html +25 -0
- package/src/app/publico/pages/not-found/not-found.page.scss +2 -0
- package/src/app/publico/pages/not-found/not-found.page.ts +41 -0
- package/src/app/publico/pages/seleccion-rol/seleccion-rol.component.html +58 -0
- package/src/app/publico/pages/seleccion-rol/seleccion-rol.component.scss +49 -0
- package/src/app/publico/pages/seleccion-rol/seleccion-rol.component.ts +169 -0
- package/src/app/publico/pages/timeout/timeout.page.html +21 -0
- package/src/app/publico/pages/timeout/timeout.page.scss +2 -0
- package/src/app/publico/pages/timeout/timeout.page.ts +18 -0
- package/src/app/seguridad/constantes/ConstantesGenerales.ts +30 -0
- package/src/app/seguridad/constantes/ReporteEntradaConstantes.ts +18 -0
- package/src/app/seguridad/constantes/ReporteFuenteConstantes.ts +13 -0
- package/src/app/seguridad/modelos/AplicacionModel.ts +11 -0
- package/src/app/seguridad/modelos/ArchivoPortalModel.ts +16 -0
- package/src/app/seguridad/modelos/AtributoPuntoModel.ts +9 -0
- package/src/app/seguridad/modelos/AtributoSSOportalModel.ts +22 -0
- package/src/app/seguridad/modelos/{AuditoriaArchivoModel.d.ts → AuditoriaArchivoModel.ts} +13 -10
- package/src/app/seguridad/modelos/CargueLineaModel.ts +17 -0
- package/src/app/seguridad/modelos/ColoresRGB.ts +17 -0
- package/src/app/seguridad/modelos/ComplementoModel.ts +10 -0
- package/src/app/seguridad/modelos/ComponentePaginaModel.ts +22 -0
- package/src/app/seguridad/modelos/ConexionModel.ts +15 -0
- package/src/app/seguridad/modelos/{ContenidoHtmlPortalModel.d.ts → ContenidoHtmlPortalModel.ts} +25 -20
- package/src/app/seguridad/modelos/ControlFuncionModel.ts +10 -0
- package/src/app/seguridad/modelos/CorreoModel.ts +45 -0
- package/src/app/seguridad/modelos/CorreoWSModel.ts +49 -0
- package/src/app/seguridad/modelos/CruceRecursoPuntoModel.ts +14 -0
- package/src/app/seguridad/modelos/{DatoInicioModel.d.ts → DatoInicioModel.ts} +7 -6
- package/src/app/seguridad/modelos/{EjecucionReporteDataModel.d.ts → EjecucionReporteDataModel.ts} +21 -20
- package/src/app/seguridad/modelos/EmpresaModel.ts +25 -0
- package/src/app/seguridad/modelos/EmpresaSeguridadModel.ts +19 -0
- package/src/app/seguridad/modelos/{EntradaComplementoModel.d.ts → EntradaComplementoModel.ts} +9 -6
- package/src/app/seguridad/modelos/EtiquetaModel.ts +4 -0
- package/src/app/seguridad/modelos/Etiquetas.ts +14 -0
- package/src/app/seguridad/modelos/FuenteCampoAtributoModel.ts +21 -0
- package/src/app/seguridad/modelos/{FuenteCampoModel.d.ts → FuenteCampoModel.ts} +20 -16
- package/src/app/seguridad/modelos/FuenteDato.ts +19 -0
- package/src/app/seguridad/modelos/FuenteEntradaModel.ts +9 -0
- package/src/app/seguridad/modelos/{FuenteGeneralModel.d.ts → FuenteGeneralModel.ts} +55 -36
- package/src/app/seguridad/modelos/FuenteLineaServicioModel.ts +19 -0
- package/src/app/seguridad/modelos/FuenteProcesoGeneralModel.ts +14 -0
- package/src/app/seguridad/modelos/{FuenteServicioModel.d.ts → FuenteServicioModel.ts} +61 -47
- package/src/app/seguridad/modelos/FuncionalidadModel.ts +12 -0
- package/src/app/seguridad/modelos/GeneralModel.ts +16 -0
- package/src/app/seguridad/modelos/{GrupoAccesoModel.d.ts → GrupoAccesoModel.ts} +9 -6
- package/src/app/seguridad/modelos/GrupoControlFuncionModel.ts +12 -0
- package/src/app/seguridad/modelos/GrupoFuenteModel.ts +17 -0
- package/src/app/seguridad/modelos/GrupoPermisoModel.ts +16 -0
- package/src/app/seguridad/modelos/ListaServicioModel.ts +18 -0
- package/src/app/seguridad/modelos/LoginModel.ts +19 -0
- package/src/app/seguridad/modelos/MensajeSistemaModel.ts +10 -0
- package/src/app/seguridad/modelos/{MenuPortalModel.d.ts → MenuPortalModel.ts} +5 -4
- package/src/app/seguridad/modelos/ModulosModel.ts +17 -0
- package/src/app/seguridad/modelos/PaginaPortalModel.ts +23 -0
- package/src/app/seguridad/modelos/ParametroComponenteModel.ts +9 -0
- package/src/app/seguridad/modelos/ParametrosGeneralModel.ts +16 -0
- package/src/app/seguridad/modelos/PermisoFuncionModel.ts +11 -0
- package/src/app/seguridad/modelos/PermisocontenidoModel.ts +20 -0
- package/src/app/seguridad/modelos/{PeticionModel.d.ts → PeticionModel.ts} +20 -15
- package/src/app/seguridad/modelos/PreguntaSeguridadModel.ts +9 -0
- package/src/app/seguridad/modelos/PropiedadModel.ts +12 -0
- package/src/app/seguridad/modelos/PublicacionWebModel.ts +29 -0
- package/src/app/seguridad/modelos/PuntoProcesoModel.ts +7 -0
- package/src/app/seguridad/modelos/RecursoPunto.ts +13 -0
- package/src/app/seguridad/modelos/RecursoPuntoModel.ts +13 -0
- package/src/app/seguridad/modelos/ReporteBanda.ts +9 -0
- package/src/app/seguridad/modelos/ReporteColumna.ts +33 -0
- package/src/app/seguridad/modelos/ReporteColumnario.ts +82 -0
- package/src/app/seguridad/modelos/ReporteColumnarioMarcador.ts +31 -0
- package/src/app/seguridad/modelos/{ReporteEntradaModel.d.ts → ReporteEntradaModel.ts} +21 -19
- package/src/app/seguridad/modelos/{ReporteFuenteModel.d.ts → ReporteFuenteModel.ts} +141 -87
- package/src/app/seguridad/modelos/ReporteMarcador.ts +40 -0
- package/src/app/seguridad/modelos/ReporteSoporte.ts +10 -0
- package/src/app/seguridad/modelos/ReporteTabla.ts +14 -0
- package/src/app/seguridad/modelos/RespuestaModel.ts +10 -0
- package/src/app/seguridad/modelos/{RolModel.d.ts → RolModel.ts} +41 -37
- package/src/app/seguridad/modelos/ServidorCorreoModel.ts +31 -0
- package/src/app/seguridad/modelos/SistemaMensajeModel.ts +11 -0
- package/src/app/seguridad/modelos/SitioPortalModel.ts +29 -0
- package/src/app/seguridad/modelos/TareasModel.ts +54 -0
- package/src/app/seguridad/modelos/TextoModel.ts +11 -0
- package/src/app/seguridad/modelos/TipoEtiqueta.ts +8 -0
- package/src/app/seguridad/modelos/UnionModel.ts +14 -0
- package/src/app/seguridad/modelos/{UsuarioModel.d.ts → UsuarioModel.ts} +60 -49
- package/src/app/seguridad/modelos/UsuariogrupoModel.ts +27 -0
- package/src/app/seguridad/modelos/aplicacion-propiedad-model.ts +16 -0
- package/src/app/seguridad/modelos/contenidoCorreoModel.ts +13 -0
- package/src/app/shared/componentes/input-helper-seleccion-plantilla/input-helper-seleccion-plantilla.component.html +47 -0
- package/src/app/shared/componentes/input-helper-seleccion-plantilla/input-helper-seleccion-plantilla.component.scss +8 -0
- package/src/app/shared/componentes/input-helper-seleccion-plantilla/input-helper-seleccion-plantilla.component.ts +141 -0
- package/src/app/shared/servicios/cargar-archivos.service.ts +51 -0
- package/src/app/shared/servicios/cargar-mapas.service.ts +43 -0
- package/src/app/shared/servicios/encriptado-basico.service.ts +54 -0
- package/src/app/shared/servicios/encriptador-simetrico.service.ts +29 -0
- package/src/app/shared/servicios/general.service.ts +124 -0
- package/src/app/shared/servicios/parametros-navegacion.service.ts +20 -0
- package/src/app/shared/servicios/plantillas.service.ts +22 -0
- package/src/app/webcommon/pages/ejecucion-reporte/detalle-campo-reporte/detalle-campo-reporte.component.html +87 -0
- package/src/app/webcommon/pages/ejecucion-reporte/detalle-campo-reporte/detalle-campo-reporte.component.scss +0 -0
- package/src/app/webcommon/pages/ejecucion-reporte/detalle-campo-reporte/detalle-campo-reporte.component.ts +189 -0
- package/src/app/webcommon/pages/ejecucion-reporte/detalle-distribucion-reporte/detalle-distribucion-reporte.component.html +117 -0
- package/src/app/webcommon/pages/ejecucion-reporte/detalle-distribucion-reporte/detalle-distribucion-reporte.component.scss +0 -0
- package/src/app/webcommon/pages/ejecucion-reporte/detalle-distribucion-reporte/detalle-distribucion-reporte.component.ts +87 -0
- package/src/app/webcommon/pages/ejecucion-reporte/detalle-ejecucion-reporte/detalle-ejecucion-reporte.page.html +158 -0
- package/src/app/webcommon/pages/ejecucion-reporte/detalle-ejecucion-reporte/detalle-ejecucion-reporte.page.scss +6 -0
- package/src/app/webcommon/pages/ejecucion-reporte/detalle-ejecucion-reporte/detalle-ejecucion-reporte.page.ts +345 -0
- package/src/app/webcommon/pages/ejecucion-reporte/detalle-entrada-reporte/detalle-entrada-reporte.component.html +131 -0
- package/src/app/webcommon/pages/ejecucion-reporte/detalle-entrada-reporte/detalle-entrada-reporte.component.scss +0 -0
- package/src/app/webcommon/pages/ejecucion-reporte/detalle-entrada-reporte/detalle-entrada-reporte.component.ts +198 -0
- package/src/app/webcommon/pages/ejecucion-reporte/detalle-punto-proceso-reporte/detalle-punto-proceso-reporte.component.html +206 -0
- package/src/app/webcommon/pages/ejecucion-reporte/detalle-punto-proceso-reporte/detalle-punto-proceso-reporte.component.scss +3 -0
- package/src/app/webcommon/pages/ejecucion-reporte/detalle-punto-proceso-reporte/detalle-punto-proceso-reporte.component.ts +329 -0
- package/src/app/webcommon/pages/ejecucion-reporte/detalle-tipo-reporte/detalle-tipo-reporte.component.html +1940 -0
- package/src/app/webcommon/pages/ejecucion-reporte/detalle-tipo-reporte/detalle-tipo-reporte.component.scss +241 -0
- package/src/app/webcommon/pages/ejecucion-reporte/detalle-tipo-reporte/detalle-tipo-reporte.component.ts +1550 -0
- package/src/app/webcommon/pages/ejecucion-reporte/listado-ejecucion-reporte/listado-ejecucion-reporte.page.html +33 -0
- package/src/app/webcommon/pages/ejecucion-reporte/listado-ejecucion-reporte/listado-ejecucion-reporte.page.scss +0 -0
- package/src/app/webcommon/pages/ejecucion-reporte/listado-ejecucion-reporte/listado-ejecucion-reporte.page.ts +96 -0
- package/src/app/webcommon/pages/ejecucion-reporte-externo/listado-ejecucion-reporte-externo/listado-ejecucion-reporte-externo.component.html +47 -0
- package/src/app/webcommon/pages/ejecucion-reporte-externo/listado-ejecucion-reporte-externo/listado-ejecucion-reporte-externo.component.scss +0 -0
- package/src/app/webcommon/pages/ejecucion-reporte-externo/listado-ejecucion-reporte-externo/listado-ejecucion-reporte-externo.component.ts +95 -0
- package/src/app/webcommon/pages/fuente/importar-fuente-con/importar-fuente-con.component.html +391 -0
- package/src/app/webcommon/pages/fuente/importar-fuente-con/importar-fuente-con.component.scss +10 -0
- package/src/app/webcommon/pages/fuente/importar-fuente-con/importar-fuente-con.component.ts +612 -0
- package/src/app/webcommon/pages/fuente/importar-fuente-general/importar-fuente-general.component.html +130 -0
- package/src/app/webcommon/pages/fuente/importar-fuente-general/importar-fuente-general.component.scss +0 -0
- package/src/app/webcommon/pages/fuente/importar-fuente-general/importar-fuente-general.component.ts +172 -0
- package/src/app/webcommon/pages/fuenteGeneral/fuente-general-servicio/fuente-general-servicio.component.html +145 -0
- package/src/app/webcommon/pages/fuenteGeneral/fuente-general-servicio/fuente-general-servicio.component.scss +0 -0
- package/src/app/webcommon/pages/fuenteGeneral/fuente-general-servicio/fuente-general-servicio.component.ts +300 -0
- package/src/app/webcommon/pages/fuenteGeneral/listado-fuente-general/listado-fuente-general.page.html +19 -0
- package/src/app/webcommon/pages/fuenteGeneral/listado-fuente-general/listado-fuente-general.page.scss +0 -0
- package/src/app/webcommon/pages/fuenteGeneral/listado-fuente-general/listado-fuente-general.page.ts +86 -0
- package/src/app/webcommon/pages/fuenteGeneral/mantenimiento-fuente-general/mantenimiento-fuente-general.page.html +703 -0
- package/src/app/webcommon/pages/fuenteGeneral/mantenimiento-fuente-general/mantenimiento-fuente-general.page.scss +0 -0
- package/src/app/webcommon/pages/fuenteGeneral/mantenimiento-fuente-general/mantenimiento-fuente-general.page.ts +682 -0
- package/src/app/webcommon/pipes/fuente.pipe.ts +207 -0
- package/src/app/webcommon/pipes/general.pipe.ts +1034 -0
- package/src/app/webcommon/pipes/reporte-columnario.pipe.ts +101 -0
- package/src/app/webcommon/pipes/reporte-fuente.pipe.ts +300 -0
- package/src/app/webcommon/pipes/sara-general.pipe.ts +289 -0
- package/src/app/webcommon/popups/popup-campos-fuente-general/popup-campos-fuente-general.component.html +90 -0
- package/src/app/webcommon/popups/popup-campos-fuente-general/popup-campos-fuente-general.component.scss +0 -0
- package/src/app/webcommon/popups/popup-campos-fuente-general/popup-campos-fuente-general.component.ts +248 -0
- package/src/app/webcommon/popups/popup-punto-proceso/popup-punto-proceso.component.html +41 -0
- package/src/app/webcommon/popups/popup-punto-proceso/popup-punto-proceso.component.scss +0 -0
- package/src/app/webcommon/popups/popup-punto-proceso/popup-punto-proceso.component.ts +283 -0
- package/src/app/webcommon/popups/popup-recurso/popup-recurso.component.html +175 -0
- package/src/app/webcommon/popups/popup-recurso/popup-recurso.component.scss +3 -0
- package/src/app/webcommon/popups/popup-recurso/popup-recurso.component.ts +265 -0
- package/src/app/webcommon/popups/popup-reporte/popup-reporte.component.html +261 -0
- package/src/app/webcommon/popups/popup-reporte/popup-reporte.component.scss +13 -0
- package/src/app/webcommon/popups/popup-reporte/popup-reporte.component.ts +512 -0
- package/src/app/webcommon/popups/popup-sentencia/popup-sentencia.component.html +10 -0
- package/src/app/webcommon/popups/popup-sentencia/popup-sentencia.component.scss +5 -0
- package/src/app/webcommon/popups/popup-sentencia/popup-sentencia.component.ts +58 -0
- package/src/app/webcommon/popups/punto-proceso-comp/punto-proceso-comp.component.html +11 -0
- package/src/app/webcommon/popups/punto-proceso-comp/punto-proceso-comp.component.scss +0 -0
- package/src/app/webcommon/popups/punto-proceso-comp/punto-proceso-comp.component.ts +82 -0
- package/src/app/webcommon/services/carguelinea.service.ts +72 -0
- package/src/app/webcommon/services/ejecucionreporte.service.ts +158 -0
- package/src/app/webcommon/services/fechaUtils.service.ts +120 -0
- package/src/app/webcommon/services/fuentegeneral.service.ts +74 -0
- package/src/app/webcommon/services/homologacion.service.ts +49 -0
- package/src/app/webcommon/services/plantillas.service.ts +49 -0
- package/src/app/webcommon/services/reportes.service.ts +60 -0
- package/src/app/webcommon/webcommon.module.ts +11 -0
- package/src/environments/environment.prod.ts +3 -0
- package/src/environments/environment.ts +23 -0
- package/src/favicon.ico +0 -0
- package/src/index.html +14 -0
- package/src/main.ts +6 -0
- package/src/polyfills.ts +53 -0
- package/src/styles/primeng/sass/overrides/_theme_styles.scss +0 -2
- package/src/styles/primeng/sass/overrides/_theme_styles_dark.scss +0 -2
- package/src/test.ts +14 -0
- package/tsconfig.app.json +15 -0
- package/tsconfig.json +35 -0
- package/tsconfig.spec.json +18 -0
- package/esm2022/general-library-union.mjs +0 -5
- package/esm2022/public-api.mjs +0 -170
- package/esm2022/src/app/core/componentes/breadcrumb/breadcrumb.component.mjs +0 -35
- package/esm2022/src/app/core/componentes/carga-pantalla-completa/carga-pantalla-completa.component.mjs +0 -28
- package/esm2022/src/app/core/componentes/filtro-general/filtro-general.component.mjs +0 -153
- package/esm2022/src/app/core/componentes/footer/footer.component.mjs +0 -22
- package/esm2022/src/app/core/componentes/formulariodinamico/formulariodinamico.component.mjs +0 -272
- package/esm2022/src/app/core/componentes/formulariodinamico/objetosformulario/Cambio.mjs +0 -11
- package/esm2022/src/app/core/componentes/formulariodinamico/objetosformulario/CampoFormulario.mjs +0 -124
- package/esm2022/src/app/core/componentes/formulariodinamico/objetosformulario/CampoFormularioCons.mjs +0 -73
- package/esm2022/src/app/core/componentes/formulariodinamico/objetosformulario/CampoFormularioNuevo.mjs +0 -59
- package/esm2022/src/app/core/componentes/formulariodinamico/objetosformulario/HashDirective.mjs +0 -21
- package/esm2022/src/app/core/componentes/inicio-component/inicio-component.component.mjs +0 -67
- package/esm2022/src/app/core/componentes/menu/menu.component.mjs +0 -37
- package/esm2022/src/app/core/componentes/tabla-general/tabla-general.component.mjs +0 -93
- package/esm2022/src/app/core/core.module.mjs +0 -23
- package/esm2022/src/app/core/errores/authentication.error.mjs +0 -7
- package/esm2022/src/app/core/modelos/error-response.model.mjs +0 -2
- package/esm2022/src/app/core/modelos/table-column.model.mjs +0 -2
- package/esm2022/src/app/core/modelos/user.model.mjs +0 -7
- package/esm2022/src/app/core/plantilla-general/plantilla-general.template.mjs +0 -225
- package/esm2022/src/app/core/servicios/auth.service.mjs +0 -180
- package/esm2022/src/app/core/servicios/cargar-control-funcionalidad.service.mjs +0 -57
- package/esm2022/src/app/core/servicios/data-exporter-table.utils.mjs +0 -44
- package/esm2022/src/app/core/servicios/error-interceptor.service.mjs +0 -147
- package/esm2022/src/app/core/servicios/guardias/auth.guard.mjs +0 -66
- package/esm2022/src/app/core/servicios/guardias/publico.guard.mjs +0 -30
- package/esm2022/src/app/core/servicios/interceptores/token-interceptor.service.mjs +0 -120
- package/esm2022/src/app/core/servicios/loading.service.mjs +0 -43
- package/esm2022/src/app/core/servicios/menu.service.mjs +0 -88
- package/esm2022/src/app/core/servicios/storage.service.mjs +0 -68
- package/esm2022/src/app/core/servicios/template.service.mjs +0 -99
- package/esm2022/src/app/core/servicios/toast.service.mjs +0 -91
- package/esm2022/src/app/core/servicios/utils.service.mjs +0 -305
- package/esm2022/src/app/core/sharedlib.module.mjs +0 -16
- package/esm2022/src/app/core/utilidades/color.util.mjs +0 -177
- package/esm2022/src/app/layout/api/menuchangeevent.mjs +0 -2
- package/esm2022/src/app/layout/app.breadcrumb.component.mjs +0 -66
- package/esm2022/src/app/layout/app.footer.component.mjs +0 -21
- package/esm2022/src/app/layout/app.layout.component.mjs +0 -188
- package/esm2022/src/app/layout/app.layout.module.mjs +0 -15
- package/esm2022/src/app/layout/app.menu.component.mjs +0 -40
- package/esm2022/src/app/layout/app.menu.service.mjs +0 -24
- package/esm2022/src/app/layout/app.menuitem.component.mjs +0 -295
- package/esm2022/src/app/layout/app.menuprofile.component.mjs +0 -78
- package/esm2022/src/app/layout/app.rightmenu.component.mjs +0 -24
- package/esm2022/src/app/layout/app.sidebar.component.mjs +0 -91
- package/esm2022/src/app/layout/app.topbar.component.mjs +0 -334
- package/esm2022/src/app/layout/service/app.layout.service.mjs +0 -134
- package/esm2022/src/app/publico/pages/login/login.page.mjs +0 -127
- package/esm2022/src/app/publico/pages/not-found/not-found.page.mjs +0 -47
- package/esm2022/src/app/publico/pages/seleccion-rol/seleccion-rol.component.mjs +0 -159
- package/esm2022/src/app/publico/pages/timeout/timeout.page.mjs +0 -20
- package/esm2022/src/app/seguridad/modelos/AplicacionModel.mjs +0 -8
- package/esm2022/src/app/seguridad/modelos/ArchivoPortalModel.mjs +0 -14
- package/esm2022/src/app/seguridad/modelos/AtributoPuntoModel.mjs +0 -9
- package/esm2022/src/app/seguridad/modelos/AtributoSSOportalModel.mjs +0 -17
- package/esm2022/src/app/seguridad/modelos/AuditoriaArchivoModel.mjs +0 -11
- package/esm2022/src/app/seguridad/modelos/CargueLineaModel.mjs +0 -13
- package/esm2022/src/app/seguridad/modelos/ColoresRGB.mjs +0 -18
- package/esm2022/src/app/seguridad/modelos/ComplementoModel.mjs +0 -7
- package/esm2022/src/app/seguridad/modelos/ComponentePaginaModel.mjs +0 -21
- package/esm2022/src/app/seguridad/modelos/ConexionModel.mjs +0 -14
- package/esm2022/src/app/seguridad/modelos/ContenidoHtmlPortalModel.mjs +0 -21
- package/esm2022/src/app/seguridad/modelos/ControlFuncionModel.mjs +0 -8
- package/esm2022/src/app/seguridad/modelos/CorreoModel.mjs +0 -35
- package/esm2022/src/app/seguridad/modelos/CorreoWSModel.mjs +0 -37
- package/esm2022/src/app/seguridad/modelos/CruceRecursoPuntoModel.mjs +0 -14
- package/esm2022/src/app/seguridad/modelos/DatoInicioModel.mjs +0 -6
- package/esm2022/src/app/seguridad/modelos/EjecucionReporteDataModel.mjs +0 -14
- package/esm2022/src/app/seguridad/modelos/EmpresaModel.mjs +0 -25
- package/esm2022/src/app/seguridad/modelos/EmpresaSeguridadModel.mjs +0 -19
- package/esm2022/src/app/seguridad/modelos/EntradaComplementoModel.mjs +0 -7
- package/esm2022/src/app/seguridad/modelos/EtiquetaModel.mjs +0 -5
- package/esm2022/src/app/seguridad/modelos/Etiquetas.mjs +0 -12
- package/esm2022/src/app/seguridad/modelos/FuenteCampoAtributoModel.mjs +0 -16
- package/esm2022/src/app/seguridad/modelos/FuenteCampoModel.mjs +0 -17
- package/esm2022/src/app/seguridad/modelos/FuenteDato.mjs +0 -19
- package/esm2022/src/app/seguridad/modelos/FuenteEntradaModel.mjs +0 -9
- package/esm2022/src/app/seguridad/modelos/FuenteGeneralModel.mjs +0 -37
- package/esm2022/src/app/seguridad/modelos/FuenteLineaServicioModel.mjs +0 -16
- package/esm2022/src/app/seguridad/modelos/FuenteProcesoGeneralModel.mjs +0 -11
- package/esm2022/src/app/seguridad/modelos/FuenteServicioModel.mjs +0 -51
- package/esm2022/src/app/seguridad/modelos/FuncionalidadModel.mjs +0 -10
- package/esm2022/src/app/seguridad/modelos/GeneralModel.mjs +0 -15
- package/esm2022/src/app/seguridad/modelos/GrupoAccesoModel.mjs +0 -7
- package/esm2022/src/app/seguridad/modelos/GrupoControlFuncionModel.mjs +0 -10
- package/esm2022/src/app/seguridad/modelos/GrupoFuenteModel.mjs +0 -13
- package/esm2022/src/app/seguridad/modelos/GrupoPermisoModel.mjs +0 -14
- package/esm2022/src/app/seguridad/modelos/ListaServicioModel.mjs +0 -17
- package/esm2022/src/app/seguridad/modelos/LoginModel.mjs +0 -15
- package/esm2022/src/app/seguridad/modelos/MensajeSistemaModel.mjs +0 -8
- package/esm2022/src/app/seguridad/modelos/MenuPortalModel.mjs +0 -5
- package/esm2022/src/app/seguridad/modelos/ModulosModel.mjs +0 -18
- package/esm2022/src/app/seguridad/modelos/PaginaPortalModel.mjs +0 -20
- package/esm2022/src/app/seguridad/modelos/ParametroComponenteModel.mjs +0 -9
- package/esm2022/src/app/seguridad/modelos/ParametrosGeneralModel.mjs +0 -15
- package/esm2022/src/app/seguridad/modelos/PermisoFuncionModel.mjs +0 -9
- package/esm2022/src/app/seguridad/modelos/PermisocontenidoModel.mjs +0 -20
- package/esm2022/src/app/seguridad/modelos/PeticionModel.mjs +0 -16
- package/esm2022/src/app/seguridad/modelos/PreguntaSeguridadModel.mjs +0 -7
- package/esm2022/src/app/seguridad/modelos/PropiedadModel.mjs +0 -10
- package/esm2022/src/app/seguridad/modelos/PublicacionWebModel.mjs +0 -27
- package/esm2022/src/app/seguridad/modelos/PuntoProcesoModel.mjs +0 -7
- package/esm2022/src/app/seguridad/modelos/RecursoPunto.mjs +0 -13
- package/esm2022/src/app/seguridad/modelos/RecursoPuntoModel.mjs +0 -13
- package/esm2022/src/app/seguridad/modelos/ReporteBanda.mjs +0 -8
- package/esm2022/src/app/seguridad/modelos/ReporteColumna.mjs +0 -33
- package/esm2022/src/app/seguridad/modelos/ReporteColumnario.mjs +0 -69
- package/esm2022/src/app/seguridad/modelos/ReporteColumnarioMarcador.mjs +0 -24
- package/esm2022/src/app/seguridad/modelos/ReporteEntradaModel.mjs +0 -20
- package/esm2022/src/app/seguridad/modelos/ReporteFuenteModel.mjs +0 -124
- package/esm2022/src/app/seguridad/modelos/ReporteMarcador.mjs +0 -40
- package/esm2022/src/app/seguridad/modelos/ReporteSoporte.mjs +0 -10
- package/esm2022/src/app/seguridad/modelos/ReporteTabla.mjs +0 -13
- package/esm2022/src/app/seguridad/modelos/RespuestaModel.mjs +0 -9
- package/esm2022/src/app/seguridad/modelos/RolModel.mjs +0 -39
- package/esm2022/src/app/seguridad/modelos/ServidorCorreoModel.mjs +0 -28
- package/esm2022/src/app/seguridad/modelos/SistemaMensajeModel.mjs +0 -9
- package/esm2022/src/app/seguridad/modelos/SitioPortalModel.mjs +0 -25
- package/esm2022/src/app/seguridad/modelos/TareasModel.mjs +0 -54
- package/esm2022/src/app/seguridad/modelos/TextoModel.mjs +0 -9
- package/esm2022/src/app/seguridad/modelos/TipoEtiqueta.mjs +0 -8
- package/esm2022/src/app/seguridad/modelos/UnionModel.mjs +0 -12
- package/esm2022/src/app/seguridad/modelos/UsuarioModel.mjs +0 -53
- package/esm2022/src/app/seguridad/modelos/UsuariogrupoModel.mjs +0 -24
- package/esm2022/src/app/seguridad/modelos/aplicacion-propiedad-model.mjs +0 -15
- package/esm2022/src/app/seguridad/modelos/contenidoCorreoModel.mjs +0 -10
- package/esm2022/src/app/shared/componentes/input-helper-seleccion-plantilla/input-helper-seleccion-plantilla.component.mjs +0 -151
- package/esm2022/src/app/shared/servicios/cargar-archivos.service.mjs +0 -54
- package/esm2022/src/app/shared/servicios/cargar-mapas.service.mjs +0 -46
- package/esm2022/src/app/shared/servicios/encriptado-basico.service.mjs +0 -53
- package/esm2022/src/app/shared/servicios/general.service.mjs +0 -104
- package/esm2022/src/app/shared/servicios/parametros-navegacion.service.mjs +0 -21
- package/esm2022/src/app/webcommon/pages/ejecucion-reporte/detalle-campo-reporte/detalle-campo-reporte.component.mjs +0 -187
- package/esm2022/src/app/webcommon/pages/ejecucion-reporte/detalle-distribucion-reporte/detalle-distribucion-reporte.component.mjs +0 -85
- package/esm2022/src/app/webcommon/pages/ejecucion-reporte/detalle-ejecucion-reporte/detalle-ejecucion-reporte.page.mjs +0 -347
- package/esm2022/src/app/webcommon/pages/ejecucion-reporte/detalle-entrada-reporte/detalle-entrada-reporte.component.mjs +0 -206
- package/esm2022/src/app/webcommon/pages/ejecucion-reporte/detalle-punto-proceso-reporte/detalle-punto-proceso-reporte.component.mjs +0 -328
- package/esm2022/src/app/webcommon/pages/ejecucion-reporte/detalle-tipo-reporte/detalle-tipo-reporte.component.mjs +0 -1448
- package/esm2022/src/app/webcommon/pages/ejecucion-reporte/listado-ejecucion-reporte/listado-ejecucion-reporte.page.mjs +0 -105
- package/esm2022/src/app/webcommon/pages/ejecucion-reporte-externo/listado-ejecucion-reporte-externo/listado-ejecucion-reporte-externo.component.mjs +0 -95
- package/esm2022/src/app/webcommon/pages/fuente/importar-fuente-con/importar-fuente-con.component.mjs +0 -599
- package/esm2022/src/app/webcommon/pages/fuente/importar-fuente-general/importar-fuente-general.component.mjs +0 -177
- package/esm2022/src/app/webcommon/pages/fuenteGeneral/fuente-general-servicio/fuente-general-servicio.component.mjs +0 -327
- package/esm2022/src/app/webcommon/pages/fuenteGeneral/listado-fuente-general/listado-fuente-general.page.mjs +0 -93
- package/esm2022/src/app/webcommon/pages/fuenteGeneral/mantenimiento-fuente-general/mantenimiento-fuente-general.page.mjs +0 -671
- package/esm2022/src/app/webcommon/pipes/fuente.pipe.mjs +0 -201
- package/esm2022/src/app/webcommon/pipes/general.pipe.mjs +0 -907
- package/esm2022/src/app/webcommon/pipes/reporte-columnario.pipe.mjs +0 -115
- package/esm2022/src/app/webcommon/pipes/reporte-fuente.pipe.mjs +0 -296
- package/esm2022/src/app/webcommon/popups/popup-campos-fuente-general/popup-campos-fuente-general.component.mjs +0 -253
- package/esm2022/src/app/webcommon/popups/popup-punto-proceso/popup-punto-proceso.component.mjs +0 -293
- package/esm2022/src/app/webcommon/popups/popup-recurso/popup-recurso.component.mjs +0 -268
- package/esm2022/src/app/webcommon/popups/popup-reporte/popup-reporte.component.mjs +0 -508
- package/esm2022/src/app/webcommon/popups/popup-sentencia/popup-sentencia.component.mjs +0 -64
- package/esm2022/src/app/webcommon/popups/punto-proceso-comp/punto-proceso-comp.component.mjs +0 -89
- package/esm2022/src/app/webcommon/services/carguelinea.service.mjs +0 -69
- package/esm2022/src/app/webcommon/services/ejecucionreporte.service.mjs +0 -114
- package/esm2022/src/app/webcommon/services/fechaUtils.service.mjs +0 -88
- package/esm2022/src/app/webcommon/services/fuentegeneral.service.mjs +0 -68
- package/esm2022/src/app/webcommon/services/homologacion.service.mjs +0 -50
- package/esm2022/src/app/webcommon/services/plantillas.service.mjs +0 -53
- package/esm2022/src/app/webcommon/services/reportes.service.mjs +0 -53
- package/esm2022/src/app/webcommon/webcommon.module.mjs +0 -15
- package/esm2022/src/environments/environment.mjs +0 -22
- package/fesm2022/general-library-union.mjs +0 -13507
- package/fesm2022/general-library-union.mjs.map +0 -1
- package/index.d.ts +0 -5
- package/src/app/core/componentes/breadcrumb/breadcrumb.component.d.ts +0 -18
- package/src/app/core/componentes/carga-pantalla-completa/carga-pantalla-completa.component.d.ts +0 -14
- package/src/app/core/componentes/filtro-general/filtro-general.component.d.ts +0 -26
- package/src/app/core/componentes/footer/footer.component.d.ts +0 -11
- package/src/app/core/componentes/formulariodinamico/formulariodinamico.component.d.ts +0 -46
- package/src/app/core/componentes/formulariodinamico/objetosformulario/CampoFormulario.d.ts +0 -44
- package/src/app/core/componentes/formulariodinamico/objetosformulario/CampoFormularioCons.d.ts +0 -45
- package/src/app/core/componentes/formulariodinamico/objetosformulario/CampoFormularioNuevo.d.ts +0 -33
- package/src/app/core/componentes/formulariodinamico/objetosformulario/HashDirective.d.ts +0 -9
- package/src/app/core/componentes/inicio-component/inicio-component.component.d.ts +0 -24
- package/src/app/core/componentes/menu/menu.component.d.ts +0 -16
- package/src/app/core/componentes/tabla-general/tabla-general.component.d.ts +0 -32
- package/src/app/core/core.module.d.ts +0 -8
- package/src/app/core/errores/authentication.error.d.ts +0 -3
- package/src/app/core/modelos/error-response.model.d.ts +0 -9
- package/src/app/core/modelos/table-column.model.d.ts +0 -12
- package/src/app/core/modelos/user.model.d.ts +0 -6
- package/src/app/core/plantilla-general/plantilla-general.template.d.ts +0 -89
- package/src/app/core/servicios/auth.service.d.ts +0 -52
- package/src/app/core/servicios/cargar-control-funcionalidad.service.d.ts +0 -19
- package/src/app/core/servicios/data-exporter-table.utils.d.ts +0 -8
- package/src/app/core/servicios/error-interceptor.service.d.ts +0 -41
- package/src/app/core/servicios/guardias/auth.guard.d.ts +0 -17
- package/src/app/core/servicios/guardias/publico.guard.d.ts +0 -13
- package/src/app/core/servicios/interceptores/token-interceptor.service.d.ts +0 -21
- package/src/app/core/servicios/loading.service.d.ts +0 -22
- package/src/app/core/servicios/menu.service.d.ts +0 -34
- package/src/app/core/servicios/storage.service.d.ts +0 -37
- package/src/app/core/servicios/template.service.d.ts +0 -20
- package/src/app/core/servicios/toast.service.d.ts +0 -46
- package/src/app/core/servicios/utils.service.d.ts +0 -40
- package/src/app/core/sharedlib.module.d.ts +0 -6
- package/src/app/core/utilidades/color.util.d.ts +0 -70
- package/src/app/layout/app.breadcrumb.component.d.ts +0 -28
- package/src/app/layout/app.footer.component.d.ts +0 -10
- package/src/app/layout/app.layout.component.d.ts +0 -39
- package/src/app/layout/app.layout.module.d.ts +0 -6
- package/src/app/layout/app.menu.component.d.ts +0 -19
- package/src/app/layout/app.menu.service.d.ts +0 -12
- package/src/app/layout/app.menuitem.component.d.ts +0 -40
- package/src/app/layout/app.menuprofile.component.d.ts +0 -18
- package/src/app/layout/app.rightmenu.component.d.ts +0 -10
- package/src/app/layout/app.sidebar.component.d.ts +0 -33
- package/src/app/layout/app.topbar.component.d.ts +0 -78
- package/src/app/layout/service/app.layout.service.d.ts +0 -57
- package/src/app/publico/pages/login/login.page.d.ts +0 -40
- package/src/app/publico/pages/not-found/not-found.page.d.ts +0 -16
- package/src/app/publico/pages/seleccion-rol/seleccion-rol.component.d.ts +0 -41
- package/src/app/publico/pages/timeout/timeout.page.d.ts +0 -10
- package/src/app/seguridad/modelos/AplicacionModel.d.ts +0 -7
- package/src/app/seguridad/modelos/ArchivoPortalModel.d.ts +0 -13
- package/src/app/seguridad/modelos/AtributoPuntoModel.d.ts +0 -8
- package/src/app/seguridad/modelos/AtributoSSOportalModel.d.ts +0 -16
- package/src/app/seguridad/modelos/CargueLineaModel.d.ts +0 -12
- package/src/app/seguridad/modelos/ColoresRGB.d.ts +0 -17
- package/src/app/seguridad/modelos/ComplementoModel.d.ts +0 -6
- package/src/app/seguridad/modelos/ComponentePaginaModel.d.ts +0 -20
- package/src/app/seguridad/modelos/ConexionModel.d.ts +0 -13
- package/src/app/seguridad/modelos/ControlFuncionModel.d.ts +0 -7
- package/src/app/seguridad/modelos/CorreoModel.d.ts +0 -31
- package/src/app/seguridad/modelos/CorreoWSModel.d.ts +0 -33
- package/src/app/seguridad/modelos/CruceRecursoPuntoModel.d.ts +0 -13
- package/src/app/seguridad/modelos/EmpresaModel.d.ts +0 -23
- package/src/app/seguridad/modelos/EmpresaSeguridadModel.d.ts +0 -18
- package/src/app/seguridad/modelos/EtiquetaModel.d.ts +0 -4
- package/src/app/seguridad/modelos/Etiquetas.d.ts +0 -10
- package/src/app/seguridad/modelos/FuenteCampoAtributoModel.d.ts +0 -15
- package/src/app/seguridad/modelos/FuenteDato.d.ts +0 -18
- package/src/app/seguridad/modelos/FuenteEntradaModel.d.ts +0 -8
- package/src/app/seguridad/modelos/FuenteLineaServicioModel.d.ts +0 -16
- package/src/app/seguridad/modelos/FuenteProcesoGeneralModel.d.ts +0 -10
- package/src/app/seguridad/modelos/FuncionalidadModel.d.ts +0 -8
- package/src/app/seguridad/modelos/GeneralModel.d.ts +0 -8
- package/src/app/seguridad/modelos/GrupoControlFuncionModel.d.ts +0 -9
- package/src/app/seguridad/modelos/GrupoFuenteModel.d.ts +0 -13
- package/src/app/seguridad/modelos/GrupoPermisoModel.d.ts +0 -13
- package/src/app/seguridad/modelos/ListaServicioModel.d.ts +0 -16
- package/src/app/seguridad/modelos/LoginModel.d.ts +0 -17
- package/src/app/seguridad/modelos/MensajeSistemaModel.d.ts +0 -7
- package/src/app/seguridad/modelos/ModulosModel.d.ts +0 -14
- package/src/app/seguridad/modelos/PaginaPortalModel.d.ts +0 -19
- package/src/app/seguridad/modelos/ParametroComponenteModel.d.ts +0 -8
- package/src/app/seguridad/modelos/ParametrosGeneralModel.d.ts +0 -8
- package/src/app/seguridad/modelos/PermisoFuncionModel.d.ts +0 -8
- package/src/app/seguridad/modelos/PermisocontenidoModel.d.ts +0 -18
- package/src/app/seguridad/modelos/PreguntaSeguridadModel.d.ts +0 -6
- package/src/app/seguridad/modelos/PropiedadModel.d.ts +0 -9
- package/src/app/seguridad/modelos/PublicacionWebModel.d.ts +0 -25
- package/src/app/seguridad/modelos/PuntoProcesoModel.d.ts +0 -6
- package/src/app/seguridad/modelos/RecursoPunto.d.ts +0 -12
- package/src/app/seguridad/modelos/RecursoPuntoModel.d.ts +0 -12
- package/src/app/seguridad/modelos/ReporteBanda.d.ts +0 -7
- package/src/app/seguridad/modelos/ReporteColumna.d.ts +0 -32
- package/src/app/seguridad/modelos/ReporteColumnario.d.ts +0 -68
- package/src/app/seguridad/modelos/ReporteColumnarioMarcador.d.ts +0 -23
- package/src/app/seguridad/modelos/ReporteMarcador.d.ts +0 -39
- package/src/app/seguridad/modelos/ReporteSoporte.d.ts +0 -9
- package/src/app/seguridad/modelos/ReporteTabla.d.ts +0 -12
- package/src/app/seguridad/modelos/RespuestaModel.d.ts +0 -8
- package/src/app/seguridad/modelos/ServidorCorreoModel.d.ts +0 -25
- package/src/app/seguridad/modelos/SistemaMensajeModel.d.ts +0 -8
- package/src/app/seguridad/modelos/SitioPortalModel.d.ts +0 -24
- package/src/app/seguridad/modelos/TareasModel.d.ts +0 -49
- package/src/app/seguridad/modelos/TextoModel.d.ts +0 -8
- package/src/app/seguridad/modelos/TipoEtiqueta.d.ts +0 -7
- package/src/app/seguridad/modelos/UnionModel.d.ts +0 -11
- package/src/app/seguridad/modelos/UsuariogrupoModel.d.ts +0 -22
- package/src/app/seguridad/modelos/aplicacion-propiedad-model.d.ts +0 -13
- package/src/app/seguridad/modelos/contenidoCorreoModel.d.ts +0 -9
- package/src/app/shared/componentes/input-helper-seleccion-plantilla/input-helper-seleccion-plantilla.component.d.ts +0 -47
- package/src/app/shared/servicios/cargar-archivos.service.d.ts +0 -15
- package/src/app/shared/servicios/cargar-mapas.service.d.ts +0 -18
- package/src/app/shared/servicios/encriptado-basico.service.d.ts +0 -10
- package/src/app/shared/servicios/general.service.d.ts +0 -24
- package/src/app/shared/servicios/parametros-navegacion.service.d.ts +0 -9
- package/src/app/webcommon/pages/ejecucion-reporte/detalle-campo-reporte/detalle-campo-reporte.component.d.ts +0 -79
- package/src/app/webcommon/pages/ejecucion-reporte/detalle-distribucion-reporte/detalle-distribucion-reporte.component.d.ts +0 -29
- package/src/app/webcommon/pages/ejecucion-reporte/detalle-ejecucion-reporte/detalle-ejecucion-reporte.page.d.ts +0 -69
- package/src/app/webcommon/pages/ejecucion-reporte/detalle-entrada-reporte/detalle-entrada-reporte.component.d.ts +0 -51
- package/src/app/webcommon/pages/ejecucion-reporte/detalle-punto-proceso-reporte/detalle-punto-proceso-reporte.component.d.ts +0 -77
- package/src/app/webcommon/pages/ejecucion-reporte/detalle-tipo-reporte/detalle-tipo-reporte.component.d.ts +0 -251
- package/src/app/webcommon/pages/ejecucion-reporte/listado-ejecucion-reporte/listado-ejecucion-reporte.page.d.ts +0 -42
- package/src/app/webcommon/pages/ejecucion-reporte-externo/listado-ejecucion-reporte-externo/listado-ejecucion-reporte-externo.component.d.ts +0 -33
- package/src/app/webcommon/pages/fuente/importar-fuente-con/importar-fuente-con.component.d.ts +0 -143
- package/src/app/webcommon/pages/fuente/importar-fuente-general/importar-fuente-general.component.d.ts +0 -49
- package/src/app/webcommon/pages/fuenteGeneral/fuente-general-servicio/fuente-general-servicio.component.d.ts +0 -64
- package/src/app/webcommon/pages/fuenteGeneral/listado-fuente-general/listado-fuente-general.page.d.ts +0 -33
- package/src/app/webcommon/pages/fuenteGeneral/mantenimiento-fuente-general/mantenimiento-fuente-general.page.d.ts +0 -148
- package/src/app/webcommon/pipes/fuente.pipe.d.ts +0 -136
- package/src/app/webcommon/pipes/general.pipe.d.ts +0 -637
- package/src/app/webcommon/pipes/reporte-columnario.pipe.d.ts +0 -59
- package/src/app/webcommon/pipes/reporte-fuente.pipe.d.ts +0 -189
- package/src/app/webcommon/popups/popup-campos-fuente-general/popup-campos-fuente-general.component.d.ts +0 -58
- package/src/app/webcommon/popups/popup-punto-proceso/popup-punto-proceso.component.d.ts +0 -64
- package/src/app/webcommon/popups/popup-recurso/popup-recurso.component.d.ts +0 -63
- package/src/app/webcommon/popups/popup-reporte/popup-reporte.component.d.ts +0 -97
- package/src/app/webcommon/popups/popup-sentencia/popup-sentencia.component.d.ts +0 -21
- package/src/app/webcommon/popups/punto-proceso-comp/punto-proceso-comp.component.d.ts +0 -30
- package/src/app/webcommon/services/carguelinea.service.d.ts +0 -19
- package/src/app/webcommon/services/ejecucionreporte.service.d.ts +0 -34
- package/src/app/webcommon/services/fechaUtils.service.d.ts +0 -28
- package/src/app/webcommon/services/fuentegeneral.service.d.ts +0 -24
- package/src/app/webcommon/services/homologacion.service.d.ts +0 -17
- package/src/app/webcommon/services/plantillas.service.d.ts +0 -17
- package/src/app/webcommon/services/reportes.service.d.ts +0 -19
- package/src/app/webcommon/webcommon.module.d.ts +0 -6
- package/src/environments/environment.d.ts +0 -4
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
import { Component, OnInit, ViewChild } from '@angular/core';
|
|
2
|
+
import {
|
|
3
|
+
FormBuilder,
|
|
4
|
+
FormControl,
|
|
5
|
+
FormGroup,
|
|
6
|
+
ReactiveFormsModule,
|
|
7
|
+
Validators,
|
|
8
|
+
} from '@angular/forms';
|
|
9
|
+
import { ActivatedRoute, Router } from '@angular/router';
|
|
10
|
+
import { lastValueFrom } from 'rxjs';
|
|
11
|
+
import { AuthenticationError } from '../../../core/errores/authentication.error';
|
|
12
|
+
import { AuthService } from '../../../core/servicios/auth.service';
|
|
13
|
+
import { ToastService } from '../../../core/servicios/toast.service';
|
|
14
|
+
import { LoadingService } from '../../../core/servicios/loading.service';
|
|
15
|
+
import { RolModel } from '../../../seguridad/modelos/RolModel';
|
|
16
|
+
import { SeleccionRolComponent } from '../seleccion-rol/seleccion-rol.component';
|
|
17
|
+
import { StorageService } from '../../../core/servicios/storage.service';
|
|
18
|
+
import { UtilsService } from '../../../core/servicios/utils.service';
|
|
19
|
+
import { GeneralPipe } from '../../../webcommon/pipes/general.pipe';
|
|
20
|
+
import { CommonModule } from '@angular/common';
|
|
21
|
+
import { TranslateModule } from '@ngx-translate/core';
|
|
22
|
+
import { PasswordModule } from 'primeng/password';
|
|
23
|
+
import { CargaPantallaCompletaComponent } from '../../../core/componentes/carga-pantalla-completa/carga-pantalla-completa.component';
|
|
24
|
+
import { MessageService } from 'primeng/api';
|
|
25
|
+
import { ButtonModule } from 'primeng/button';
|
|
26
|
+
|
|
27
|
+
@Component({
|
|
28
|
+
imports: [ReactiveFormsModule, CommonModule, TranslateModule, PasswordModule, CargaPantallaCompletaComponent, SeleccionRolComponent, ButtonModule,],
|
|
29
|
+
standalone: true,
|
|
30
|
+
providers: [MessageService,],
|
|
31
|
+
templateUrl: './login.page.html',
|
|
32
|
+
styleUrls: ['./login.page.scss'],
|
|
33
|
+
})
|
|
34
|
+
export class LoginPage implements OnInit {
|
|
35
|
+
loginForm: FormGroup;
|
|
36
|
+
urlapinucleo: string;
|
|
37
|
+
codigoAplicacion: string;
|
|
38
|
+
nombreAplicacion: string;
|
|
39
|
+
admonPortal: boolean = false;
|
|
40
|
+
estilo:string;
|
|
41
|
+
icono:string;
|
|
42
|
+
|
|
43
|
+
public mostrarRoles: boolean = false;
|
|
44
|
+
public listRoles: RolModel [] = [];
|
|
45
|
+
private _rolSeleccionado: RolModel;
|
|
46
|
+
|
|
47
|
+
@ViewChild(SeleccionRolComponent) componenteSeleccionRol:SeleccionRolComponent;
|
|
48
|
+
|
|
49
|
+
constructor(
|
|
50
|
+
private formBuilder: FormBuilder,
|
|
51
|
+
private toastService: ToastService,
|
|
52
|
+
private authService: AuthService,
|
|
53
|
+
private route: Router,
|
|
54
|
+
private activatedRoute: ActivatedRoute,
|
|
55
|
+
private loadingService: LoadingService,
|
|
56
|
+
private storageService: StorageService,
|
|
57
|
+
private generalPipe: GeneralPipe,
|
|
58
|
+
private utilsService: UtilsService
|
|
59
|
+
) {}
|
|
60
|
+
|
|
61
|
+
ngOnInit(): void {
|
|
62
|
+
this.activatedRoute.data.subscribe((v) =>{
|
|
63
|
+
this.codigoAplicacion = v['codigoAplicacion']
|
|
64
|
+
this.nombreAplicacion = v['nombreAplicacion']
|
|
65
|
+
this.urlapinucleo = v['urlapinucleo']
|
|
66
|
+
this.admonPortal = v['admonPortal']
|
|
67
|
+
if(v['codigoAplicacion'] == '1'){
|
|
68
|
+
this.estilo = 'left-side-sara col-12 md:col-6 xl:col-6'
|
|
69
|
+
this.icono = this.generalPipe.LOGOICONOSARA
|
|
70
|
+
|
|
71
|
+
}else if(v['codigoAplicacion'] == '13' || v['codigoAplicacion'] == '77' || v['codigoAplicacion'] == '4'){
|
|
72
|
+
this.estilo = 'left-side-sam col-12 md:col-6 xl:col-6'
|
|
73
|
+
this.icono = this.generalPipe.LOGOICONOSAM
|
|
74
|
+
}else if(v['codigoAplicacion'] == '5'){
|
|
75
|
+
this.estilo = 'left-side-seguridad col-12 md:col-6 xl:col-6'
|
|
76
|
+
this.icono = this.generalPipe.LOGOICONOSEG
|
|
77
|
+
}else{
|
|
78
|
+
this.estilo = 'left-side-sara col-12 md:col-6 xl:col-6'
|
|
79
|
+
this.icono = this.generalPipe.LOGOICONOSARA
|
|
80
|
+
}
|
|
81
|
+
this.loginForm = this.formBuilder.group({
|
|
82
|
+
login: new FormControl( v['codigoAplicacion'] == '1' ? 'saraadmin' : 'manaadmin', [Validators.required]),
|
|
83
|
+
clave: new FormControl('manaadmin', [Validators.required]),
|
|
84
|
+
aplicacion: v['codigoAplicacion'],
|
|
85
|
+
admonPortal: this.admonPortal
|
|
86
|
+
});
|
|
87
|
+
});
|
|
88
|
+
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
async login() {
|
|
92
|
+
this.loadingService.startFullScreenLoading();
|
|
93
|
+
try {
|
|
94
|
+
this.storageService.setItem('roles', '');
|
|
95
|
+
let data = await this.authService.generarTokenPublico().toPromise();
|
|
96
|
+
let token = await lastValueFrom(
|
|
97
|
+
this.authService.login(this.loginForm.value, this.urlapinucleo, data.token)
|
|
98
|
+
);
|
|
99
|
+
var roles = this.storageService.getItem('roles')
|
|
100
|
+
if (roles) {
|
|
101
|
+
this.mostrarRoles = true;
|
|
102
|
+
this.listRoles = JSON.parse(roles);
|
|
103
|
+
this.componenteSeleccionRol.cargar(this.listRoles, this.admonPortal );
|
|
104
|
+
} else {
|
|
105
|
+
this.route.navigateByUrl(this.utilsService.obtenerBase() + '/inicio');
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
} catch (error) {
|
|
109
|
+
if (error instanceof AuthenticationError) {
|
|
110
|
+
this.toastService.showError(
|
|
111
|
+
'Por favor verifica los datos de acceso. Si el error persiste contacta al administrador.',
|
|
112
|
+
'Datos Inválidos'
|
|
113
|
+
);
|
|
114
|
+
} else {
|
|
115
|
+
throw error;
|
|
116
|
+
}
|
|
117
|
+
} finally {
|
|
118
|
+
this.loadingService.endFullScreenLoading();
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
regresarSeleccionRol(){
|
|
123
|
+
//this.storage.setEtiquetasYColores();
|
|
124
|
+
this.mostrarRoles = false;
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
<div id="not-found"
|
|
2
|
+
class="flex flex-column flex-wrap justify-content-start align-content-center align-items-center">
|
|
3
|
+
<div class="flex flex-column card-container">
|
|
4
|
+
<div class="flex align-items-center justify-content-center">
|
|
5
|
+
<img class="align-items-center justify-content-center" src="data:image/png;base64,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" />
|
|
6
|
+
</div>
|
|
7
|
+
<div class="flex align-items-center justify-content-center">
|
|
8
|
+
<h4>404</h4>
|
|
9
|
+
</div>
|
|
10
|
+
<div class="flex align-items-center justify-content-center">
|
|
11
|
+
<h5>Página no encontrada</h5>
|
|
12
|
+
</div>
|
|
13
|
+
@if (mensaje) {
|
|
14
|
+
<div class="flex align-items-center justify-content-center">
|
|
15
|
+
<h6>{{mensaje}}</h6>
|
|
16
|
+
</div>
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
<div class="flex align-items-center justify-content-center">
|
|
20
|
+
<button (click)="accion()" pButton pRipple class="text-xl justify-content-start align-content-center align-items-center">{{labelMensaje}}</button>
|
|
21
|
+
|
|
22
|
+
</div>
|
|
23
|
+
|
|
24
|
+
</div>
|
|
25
|
+
</div>
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { Component, OnInit } from '@angular/core';
|
|
2
|
+
import { UtilsService } from '../../../core/servicios/utils.service';
|
|
3
|
+
import { RouterModule } from '@angular/router';
|
|
4
|
+
import { StorageService } from '../../../core/servicios/storage.service';
|
|
5
|
+
import { ButtonModule } from 'primeng/button';
|
|
6
|
+
import { RippleModule } from 'primeng/ripple';
|
|
7
|
+
|
|
8
|
+
@Component({
|
|
9
|
+
imports: [RouterModule, ButtonModule, RippleModule],
|
|
10
|
+
standalone: true,
|
|
11
|
+
templateUrl: './not-found.page.html',
|
|
12
|
+
styleUrls: ['./not-found.page.scss'],
|
|
13
|
+
})
|
|
14
|
+
export class NotFoundPage implements OnInit {
|
|
15
|
+
|
|
16
|
+
public mensaje: string;
|
|
17
|
+
public urlRegresar: string;
|
|
18
|
+
public labelMensaje: string;
|
|
19
|
+
|
|
20
|
+
constructor(public utilsService: UtilsService, private storageService: StorageService) {}
|
|
21
|
+
|
|
22
|
+
ngOnInit(): void {
|
|
23
|
+
this.mensaje = this.storageService.getItem('mensaje_notfound');
|
|
24
|
+
this.urlRegresar = this.storageService.getItem('url_regresar');
|
|
25
|
+
if (this.urlRegresar) {
|
|
26
|
+
this.labelMensaje = 'Regresar a la página anterior';
|
|
27
|
+
} else {
|
|
28
|
+
this.labelMensaje = 'Ir a la página de Inicio';
|
|
29
|
+
}
|
|
30
|
+
this.storageService.removeItem('mensaje_notfound');
|
|
31
|
+
this.storageService.removeItem('url_regresar');
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
accion() {
|
|
35
|
+
if (this.urlRegresar) {
|
|
36
|
+
window.location.href = this.urlRegresar;
|
|
37
|
+
} else {
|
|
38
|
+
window.location.href = window.location.origin + '/' + this.utilsService.obtenerBase() + '/inicio';
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
<p-dialog id='popupSeleccionPlantilla' header="Perfil" [(visible)]="mostrar" appendTo="body"
|
|
2
|
+
(onHide)="regresarRegistro()" [breakpoints]="{'960px': '75vw', '640px': '100vw'}" [style]="{'min-width':'20vw'}"
|
|
3
|
+
[modal]="true" [draggable]="false">
|
|
4
|
+
|
|
5
|
+
<span class="p-input-icon-left mb-3 w-full">
|
|
6
|
+
<i class="pi pi-search"></i>
|
|
7
|
+
<input class=" w-full p-inputtext" type="text" pInputText [(ngModel)]="parametroBusqueda" (keyup.enter)="cargarListadoFiltro()" />
|
|
8
|
+
</span>
|
|
9
|
+
|
|
10
|
+
<!-- Contenido -->
|
|
11
|
+
<div class="flex mb-3">
|
|
12
|
+
<!--Empresa -->
|
|
13
|
+
<div class="flex align-items-center mr-4" pTooltip="Empresa" tooltipPosition="top"
|
|
14
|
+
*ngIf="getNombreEmpresa() != null">
|
|
15
|
+
<i style="font-size: 1.2rem !important" class="glyphicons glyphicons-building color-400"></i>
|
|
16
|
+
<label class="font-semibold" htmlFor="id_empresa"> {{getNombreEmpresa() | uppercase}}</label>
|
|
17
|
+
<!-- <label htmlFor="empresa">{{'empresa' | translate}}</label> -->
|
|
18
|
+
</div>
|
|
19
|
+
<!--Conexion -->
|
|
20
|
+
<div class="flex align-items-center mr-4" pTooltip="Conexión" tooltipPosition="top"
|
|
21
|
+
*ngIf="getNombreConexion() != null">
|
|
22
|
+
<i style="font-size: 1.2rem !important" class="glyphicons glyphicons-book color-400 font-semibold"></i>
|
|
23
|
+
<label class="font-semibold" htmlFor="id_rol"> {{getNombreConexion() | uppercase}}</label>
|
|
24
|
+
|
|
25
|
+
</div>
|
|
26
|
+
<!--Rol -->
|
|
27
|
+
<div class="flex align-items-center" pTooltip="Rol" tooltipPosition="top" *ngIf="getNombreRol() != null">
|
|
28
|
+
<i style="font-size: 1.2rem !important" class="glyphicons glyphicons-user color-400"></i>
|
|
29
|
+
<label class="font-semibold" htmlFor="id_rol"> {{getNombreRol()}}</label>
|
|
30
|
+
</div>
|
|
31
|
+
</div>
|
|
32
|
+
|
|
33
|
+
<p-table [value]="filtrolRolesConexionEmpresa" responsiveLayout="scroll" [paginator]="listRoles.length > 10" [rows]="10"
|
|
34
|
+
[(selection)]="rolSeleccionado" dataKey="llaveTabla" (onRowSelect)="verAction()" selectionMode="single">
|
|
35
|
+
<!-- header de la tabla de seleccion rol -->
|
|
36
|
+
<ng-template pTemplate="header">
|
|
37
|
+
<tr class="fondoTablaPincipal">
|
|
38
|
+
<th *ngIf="getNombreEmpresa() == null">Nombre Empresa</th>
|
|
39
|
+
<th *ngIf="getNombreConexion() == null">Conexión</th>
|
|
40
|
+
<th *ngIf="getNombreRol() == null">Rol</th>
|
|
41
|
+
</tr>
|
|
42
|
+
</ng-template>
|
|
43
|
+
<!-- cuerpo de la tabla -->
|
|
44
|
+
<ng-template pTemplate="body" let-rol let-rowIndex="rowIndex">
|
|
45
|
+
<tr [pSelectableRow]="rol">
|
|
46
|
+
<td *ngIf="getNombreEmpresa() == null" style="min-width: 200px">
|
|
47
|
+
{{rol.nombreEmpresa}}
|
|
48
|
+
</td>
|
|
49
|
+
<td *ngIf="getNombreConexion() == null" style="min-width: 200px">
|
|
50
|
+
{{ rol.nombreConexion}}
|
|
51
|
+
</td>
|
|
52
|
+
<td *ngIf="getNombreRol() == null" style="min-width: 200px">
|
|
53
|
+
{{ rol.nombreRol }}
|
|
54
|
+
</td>
|
|
55
|
+
</tr>
|
|
56
|
+
</ng-template>
|
|
57
|
+
</p-table>
|
|
58
|
+
</p-dialog>
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
@import url('https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
#SelecionRol .card.cajaSeleccionRol {
|
|
5
|
+
padding: 1.5% 3%;
|
|
6
|
+
height: 100vh;
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
#SelecionRol h5 {
|
|
10
|
+
margin-bottom: 1.5%;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
#SelecionRol th{
|
|
16
|
+
background: transparent;
|
|
17
|
+
color: #fff;
|
|
18
|
+
font-size: 1.2em;
|
|
19
|
+
font-weight: 600;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
#SelecionRol tr.headerTable {
|
|
23
|
+
background: linear-gradient(to right, var(--color1), var(--color2));
|
|
24
|
+
padding: 1% 1% 0.5%;
|
|
25
|
+
border-radius: 10px 10px 0 0;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
#SelecionRol tr.empresa.ng-star-inserted {
|
|
29
|
+
border: solid #E9EAEB 1px;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
#SelecionRol tr.empresa.ng-star-inserted th{
|
|
33
|
+
color: #232323;
|
|
34
|
+
font-weight:300;
|
|
35
|
+
font-size: 1em;
|
|
36
|
+
padding: 0.8% 2%;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
#SelecionRol tr.p-rowgroup-header.p-element.ng-star-inserted {
|
|
41
|
+
background: rgb(var(--RCOL1), var(--GCOL1), var(--BCOL1), 0.18);
|
|
42
|
+
color: #232323;
|
|
43
|
+
font-weight: 600;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
#SelecionRol .p-datatable.p-datatable-hoverable-rows .p-datatable-tbody > tr:not(.p-highlight):hover {
|
|
47
|
+
background: rgb(var(--RCOL1), var(--GCOL1), var(--BCOL1), 0.05 !important);
|
|
48
|
+
|
|
49
|
+
}
|
|
@@ -0,0 +1,169 @@
|
|
|
1
|
+
import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';
|
|
2
|
+
import { Router } from '@angular/router';
|
|
3
|
+
import { RolModel } from '../../../seguridad/modelos/RolModel';
|
|
4
|
+
import { AuthService } from '../../../core/servicios/auth.service';
|
|
5
|
+
import { StorageService } from '../../../core/servicios/storage.service';
|
|
6
|
+
import { CookieService } from 'ngx-cookie-service';
|
|
7
|
+
import { CargarControlFuncionalidadService } from '../../../core/servicios/cargar-control-funcionalidad.service';
|
|
8
|
+
import { ModulosModel } from '../../../seguridad/modelos/ModulosModel';
|
|
9
|
+
import { TareasModel } from '../../../seguridad/modelos/TareasModel';
|
|
10
|
+
import { UtilsService } from '../../../core/servicios/utils.service';
|
|
11
|
+
import { DialogModule } from 'primeng/dialog';
|
|
12
|
+
import { FormsModule } from '@angular/forms';
|
|
13
|
+
import { CommonModule } from '@angular/common';
|
|
14
|
+
import { TableModule } from 'primeng/table';
|
|
15
|
+
|
|
16
|
+
@Component({
|
|
17
|
+
selector: 'app-seleccion-rol',
|
|
18
|
+
imports: [DialogModule, FormsModule, CommonModule, TableModule,],
|
|
19
|
+
standalone: true,
|
|
20
|
+
templateUrl: './seleccion-rol.component.html',
|
|
21
|
+
styleUrls: ['./seleccion-rol.component.scss'],
|
|
22
|
+
})
|
|
23
|
+
export class SeleccionRolComponent implements OnInit {
|
|
24
|
+
@Input() mostrar: boolean;
|
|
25
|
+
@Input() codigoAplicacion: string;
|
|
26
|
+
@Output() regresar = new EventEmitter();
|
|
27
|
+
|
|
28
|
+
listRoles: RolModel[];
|
|
29
|
+
rolSeleccionado: RolModel;
|
|
30
|
+
rowGroupMetadata: any;
|
|
31
|
+
rolesConexionEmpresa: RolModel[];
|
|
32
|
+
filtrolRolesConexionEmpresa: RolModel[];
|
|
33
|
+
listaEmpresa = new Map();
|
|
34
|
+
listaPerfiles = new Map();
|
|
35
|
+
listaConexiones = new Map();
|
|
36
|
+
parametroBusqueda: string = null;
|
|
37
|
+
admonPortal: boolean = false;
|
|
38
|
+
|
|
39
|
+
constructor(
|
|
40
|
+
private router: Router,
|
|
41
|
+
private storageService: StorageService,
|
|
42
|
+
private cookieService: CookieService,
|
|
43
|
+
private authService: AuthService,
|
|
44
|
+
private utilsService: UtilsService,
|
|
45
|
+
private controlFuncionalidad: CargarControlFuncionalidadService
|
|
46
|
+
) { }
|
|
47
|
+
|
|
48
|
+
ngOnInit(): void {
|
|
49
|
+
this.parametroBusqueda = '';
|
|
50
|
+
this.rolesConexionEmpresa = [];
|
|
51
|
+
this.listRoles = [];
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
public cargar(listaRoles, admonPortal) {
|
|
55
|
+
|
|
56
|
+
this.rolSeleccionado = null;
|
|
57
|
+
this.admonPortal = admonPortal;
|
|
58
|
+
|
|
59
|
+
this.listRoles = listaRoles;
|
|
60
|
+
|
|
61
|
+
this.rolesConexionEmpresa = [];
|
|
62
|
+
|
|
63
|
+
for (let rol of this.listRoles) {
|
|
64
|
+
|
|
65
|
+
if (!this.rolesConexionEmpresa.some(r =>
|
|
66
|
+
r.codigoConexion === rol.codigoConexion &&
|
|
67
|
+
r.nombreConexion === rol.nombreConexion &&
|
|
68
|
+
r.codigoEmpresa === rol.codigoEmpresa &&
|
|
69
|
+
r.nombreEmpresa === rol.nombreEmpresa &&
|
|
70
|
+
r.numeroEmpresa === rol.numeroEmpresa &&
|
|
71
|
+
r.llaveRol === rol.llaveRol &&
|
|
72
|
+
r.nombreRol === rol.nombreRol)) {
|
|
73
|
+
this.rolesConexionEmpresa.push(rol);
|
|
74
|
+
this.listaEmpresa.set(rol.codigoEmpresa, rol.nombreEmpresa);
|
|
75
|
+
this.listaPerfiles.set(rol.llaveRol, rol.nombreRol);
|
|
76
|
+
this.listaConexiones.set(rol.codigoConexion, rol.nombreConexion);
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
this.filtrolRolesConexionEmpresa = [...this.rolesConexionEmpresa];
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
public getNombreRol(): string | null {
|
|
84
|
+
if (this.listaPerfiles.size > 1 || this.rolesConexionEmpresa.length === 0) {
|
|
85
|
+
return null;
|
|
86
|
+
}
|
|
87
|
+
return this.rolesConexionEmpresa[0].nombreRol;
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
public getNombreEmpresa(): string | null {
|
|
91
|
+
if (this.listaEmpresa.size > 1 || this.rolesConexionEmpresa.length === 0) {
|
|
92
|
+
return null;
|
|
93
|
+
}
|
|
94
|
+
return this.rolesConexionEmpresa[0].nombreEmpresa;
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
public getNombreConexion(): string | null {
|
|
98
|
+
if (this.listaConexiones.size > 1 || this.rolesConexionEmpresa.length === 0) {
|
|
99
|
+
return null;
|
|
100
|
+
}
|
|
101
|
+
return this.rolesConexionEmpresa[0].nombreConexion;
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
cargarListadoFiltro() {
|
|
105
|
+
|
|
106
|
+
if (this.parametroBusqueda.trim() === '') {
|
|
107
|
+
this.filtrolRolesConexionEmpresa = [...this.rolesConexionEmpresa];
|
|
108
|
+
} else {
|
|
109
|
+
this.filtrolRolesConexionEmpresa = this.rolesConexionEmpresa.filter(rol =>
|
|
110
|
+
rol.nombreEmpresa.toLowerCase().includes(this.parametroBusqueda.toLowerCase()) ||
|
|
111
|
+
rol.nombreConexion.toLowerCase().includes(this.parametroBusqueda.toLowerCase()) ||
|
|
112
|
+
rol.nombreRol.toLowerCase().includes(this.parametroBusqueda.toLowerCase())
|
|
113
|
+
);
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
verAction() {
|
|
119
|
+
var urlapinucleo = this.cookieService.get('urlnucleo')
|
|
120
|
+
this.rolSeleccionado.admonPortal = this.admonPortal
|
|
121
|
+
this.storageService.setItem(
|
|
122
|
+
'rol_seleccionado',
|
|
123
|
+
JSON.stringify(this.rolSeleccionado)
|
|
124
|
+
);
|
|
125
|
+
this.rolSeleccionado.aplicacion = this.codigoAplicacion;
|
|
126
|
+
this.storageService.setRolSeleccionado(this.rolSeleccionado);
|
|
127
|
+
this.authService.seleccionRol(this.rolSeleccionado).subscribe((data) => {
|
|
128
|
+
console.log(data)
|
|
129
|
+
/*let rol: any = {}
|
|
130
|
+
rol.codigoRol = this.authService.getTokenKey('llaveRol');
|
|
131
|
+
this.authService.generarTokenPublico().subscribe(data2 => {
|
|
132
|
+
this.controlFuncionalidad.cargarFuncionalidad(rol, `${urlapinucleo}/authentication/funcionalidades`, data2.token).subscribe({});*/
|
|
133
|
+
const token = (data as any)?.token as string;
|
|
134
|
+
this.storageService.setItem('token', token);
|
|
135
|
+
this.storageService.setItem('controlFuncionalidades', (data as any).controlesfuncionalidades);
|
|
136
|
+
/********************************************************************************************/
|
|
137
|
+
/* Codigo temporal para mantener las tareas, pero estas deben ser obtenidas por un servicio */
|
|
138
|
+
var tareas: TareasModel[] = (data as any).tareasmodulo;
|
|
139
|
+
this.storageService.setItem('__tareas', JSON.stringify(tareas));
|
|
140
|
+
var modulosDeTareas = tareas.filter((obj, index, self) => {
|
|
141
|
+
return index === self.findIndex((o) => o.modulo === obj.modulo);
|
|
142
|
+
});
|
|
143
|
+
var modulos: ModulosModel[] = [];
|
|
144
|
+
modulosDeTareas.forEach(data => {
|
|
145
|
+
let modulo: ModulosModel = {
|
|
146
|
+
llave: data.modulo,
|
|
147
|
+
descripcion: data.nombreModulo,
|
|
148
|
+
icono: data.iconoModulo
|
|
149
|
+
}
|
|
150
|
+
modulos.push(modulo)
|
|
151
|
+
})
|
|
152
|
+
this.storageService.setItem('modulos', JSON.stringify(modulos));
|
|
153
|
+
if (this.storageService.getItem('moduloFavorito') !== undefined && this.storageService.getItem('moduloFavorito')) {
|
|
154
|
+
this.storageService.setItem('moduloSeleccionado', this.storageService.getItem('moduloFavorito'));
|
|
155
|
+
} else {
|
|
156
|
+
this.storageService.setItem('moduloSeleccionado', (data as any)?.modulodefecto);
|
|
157
|
+
}
|
|
158
|
+
this.regresarRegistro()
|
|
159
|
+
this.router.navigateByUrl( this.utilsService.obtenerBase() + '/inicio');
|
|
160
|
+
});
|
|
161
|
+
}
|
|
162
|
+
|
|
163
|
+
|
|
164
|
+
regresarRegistro() {
|
|
165
|
+
this.mostrar = false;
|
|
166
|
+
this.regresar.emit();
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
}
|