{"version":3,"sources":["./node_modules/moment/locale sync ^\\.\\/.*$","./src/$_lazy_route_resource lazy namespace object","./src/app/_entities/Credentials.ts","./src/app/_entities/Enums/permiso.enum.ts","./src/app/_entities/ErrorMessage.ts","./src/app/_entities/User.ts","./src/app/_entities/autos/Autos.ts","./src/app/_entities/coordenadas/ReportePosiciones.ts","./src/app/_entities/estados.ts","./src/app/_entities/iconos.ts","./src/app/app-routing.module.ts","./src/app/app.component.html","./src/app/app.component.ts","./src/app/app.module.ts","./src/app/base.service.ts","./src/app/core/_base/crud/index.ts","./src/app/core/_base/crud/models/_base.datasource.ts","./src/app/core/_base/crud/models/_base.model.ts","./src/app/core/_base/crud/models/http-extentsions-model.ts","./src/app/core/_base/crud/models/query-models/query-params.model.ts","./src/app/core/_base/crud/models/query-models/query-results.model.ts","./src/app/core/_base/crud/utils/http-utils.service.ts","./src/app/core/_base/crud/utils/intercept.service.ts","./src/app/core/_base/crud/utils/layout-utils.service.ts","./src/app/core/_base/crud/utils/types-utils.service.ts","./src/app/core/_base/layout/directives/content-animate.directive.ts","./src/app/core/_base/layout/directives/header.directive.ts","./src/app/core/_base/layout/directives/menu.directive.ts","./src/app/core/_base/layout/directives/offcanvas.directive.ts","./src/app/core/_base/layout/directives/scroll-top.directive.ts","./src/app/core/_base/layout/directives/sparkline-chart.directive.ts","./src/app/core/_base/layout/directives/sticky.directive.ts","./src/app/core/_base/layout/directives/tab-click-event.directive.ts","./src/app/core/_base/layout/directives/toggle.directive.ts","./src/app/core/_base/layout/index.ts","./src/app/core/_base/layout/models/datatable-item.model.ts","./src/app/core/_base/layout/models/external-code-example.ts","./src/app/core/_base/layout/pipes/first-letter.pipe.ts","./src/app/core/_base/layout/pipes/get-object.pipe.ts","./src/app/core/_base/layout/pipes/join.pipe.ts","./src/app/core/_base/layout/pipes/safe.pipe.ts","./src/app/core/_base/layout/pipes/time-elapsed.pipe.ts","./src/app/core/_base/layout/server/fake-api/fake-api.service.ts","./src/app/core/_base/layout/server/fake-api/fake-db/cars.ts","./src/app/core/_base/layout/services/datatable.service.ts","./src/app/core/_base/layout/services/kt-dialog.service.ts","./src/app/core/_base/layout/services/layout-config.service.ts","./src/app/core/_base/layout/services/layout-ref.service.ts","./src/app/core/_base/layout/services/menu-aside.service.ts","./src/app/core/_base/layout/services/menu-config.service.ts","./src/app/core/_base/layout/services/menu-horizontal.service.ts","./src/app/core/_base/layout/services/page-config.service.ts","./src/app/core/_base/layout/services/splash-screen.service.ts","./src/app/core/_base/layout/services/subheader.service.ts","./src/app/core/_base/layout/services/translation.service.ts","./src/app/core/_config/i18n/ch.ts","./src/app/core/_config/i18n/de.ts","./src/app/core/_config/i18n/en.ts","./src/app/core/_config/i18n/es.ts","./src/app/core/_config/i18n/fr.ts","./src/app/core/_config/i18n/jp.ts","./src/app/core/_config/layout.config.ts","./src/app/core/auth/_actions/auth.actions.ts","./src/app/core/auth/_actions/permission.actions.ts","./src/app/core/auth/_actions/role.actions.ts","./src/app/core/auth/_actions/user.actions.ts","./src/app/core/auth/_data-sources/roles.datasource.ts","./src/app/core/auth/_data-sources/users.datasource.ts","./src/app/core/auth/_effects/auth.effects.ts","./src/app/core/auth/_effects/permission.effects.ts","./src/app/core/auth/_effects/role.effects.ts","./src/app/core/auth/_effects/user.effects.ts","./src/app/core/auth/_guards/auth.guard.ts","./src/app/core/auth/_guards/module.guard.ts","./src/app/core/auth/_models/address.model.ts","./src/app/core/auth/_models/permission.model.ts","./src/app/core/auth/_models/role.model.ts","./src/app/core/auth/_models/social-networks.model.ts","./src/app/core/auth/_models/user.model.ts","./src/app/core/auth/_reducers/auth.reducers.ts","./src/app/core/auth/_reducers/permission.reducers.ts","./src/app/core/auth/_reducers/role.reducers.ts","./src/app/core/auth/_reducers/user.reducers.ts","./src/app/core/auth/_selectors/auth.selectors.ts","./src/app/core/auth/_selectors/permission.selectors.ts","./src/app/core/auth/_selectors/role.selectors.ts","./src/app/core/auth/_selectors/user.selectors.ts","./src/app/core/auth/_server/auth.data-context.ts","./src/app/core/auth/_server/permissions.table.ts","./src/app/core/auth/_server/roles.table.ts","./src/app/core/auth/_server/users.table.ts","./src/app/core/auth/_services/auth.service.fake.ts","./src/app/core/auth/_services/index.ts","./src/app/core/auth/auth-notice/auth-notice.service.ts","./src/app/core/auth/index.ts","./src/app/core/core.module.ts","./src/app/core/e-commerce/_actions/customer.actions.ts","./src/app/core/e-commerce/_actions/product-remark.actions.ts","./src/app/core/e-commerce/_actions/product-specification.actions.ts","./src/app/core/e-commerce/_actions/product.actions.ts","./src/app/core/e-commerce/_consts/specification.dictionary.ts","./src/app/core/e-commerce/_data-sources/customers.datasource.ts","./src/app/core/e-commerce/_data-sources/product-remarks.datasource.ts","./src/app/core/e-commerce/_data-sources/product-specifications.datasource.ts","./src/app/core/e-commerce/_data-sources/products.datasource.ts","./src/app/core/e-commerce/_effects/customer.effects.ts","./src/app/core/e-commerce/_effects/product-remark.effects.ts","./src/app/core/e-commerce/_effects/product-specification.effects.ts","./src/app/core/e-commerce/_effects/product.effects.ts","./src/app/core/e-commerce/_models/customer.model.ts","./src/app/core/e-commerce/_models/product-remark.model.ts","./src/app/core/e-commerce/_models/product-specification.model.ts","./src/app/core/e-commerce/_models/product.model.ts","./src/app/core/e-commerce/_reducers/customer.reducers.ts","./src/app/core/e-commerce/_reducers/product-remark.reducers.ts","./src/app/core/e-commerce/_reducers/product-specification.reducers.ts","./src/app/core/e-commerce/_reducers/product.reducers.ts","./src/app/core/e-commerce/_selectors/customer.selectors.ts","./src/app/core/e-commerce/_selectors/product-remark.selectors.ts","./src/app/core/e-commerce/_selectors/product-specification.selectors.ts","./src/app/core/e-commerce/_selectors/product.selectors.ts","./src/app/core/e-commerce/_server/_e-commerce.data-context.ts","./src/app/core/e-commerce/_server/car-specifications.table.ts","./src/app/core/e-commerce/_server/cars.table.ts","./src/app/core/e-commerce/_server/customers.table.ts","./src/app/core/e-commerce/_server/orders.table.ts","./src/app/core/e-commerce/_server/remarks.table.ts","./src/app/core/e-commerce/_services/customers.service.fake.ts","./src/app/core/e-commerce/_services/index.ts","./src/app/core/e-commerce/_services/product-remarks.service.fake.ts","./src/app/core/e-commerce/_services/product-specifications.service.fake.ts","./src/app/core/e-commerce/_services/products.service.fake.ts","./src/app/core/e-commerce/index.ts","./src/app/shared_modules/material.module.ts","./src/app/shared_modules/shared.module.ts","./src/app/views/auth/auth-notice/auth-notice.component.html","./src/app/views/auth/auth-notice/auth-notice.component.ts","./src/app/views/auth/auth.component.html","./src/app/views/auth/auth.component.ts","./src/app/views/auth/auth.module.ts","./src/app/views/auth/auth.service.ts","./src/app/views/auth/cambiar-contrasena/cambiar-contrasena.component.html","./src/app/views/auth/cambiar-contrasena/cambiar-contrasena.component.ts","./src/app/views/auth/forgot-password/forgot-password.component.html","./src/app/views/auth/forgot-password/forgot-password.component.ts","./src/app/views/auth/login/login.component.html","./src/app/views/auth/login/login.component.ts","./src/app/views/auth/register/confirm-password.validator.ts","./src/app/views/auth/register/register.component.html","./src/app/views/auth/register/register.component.ts","./src/app/views/auth/registro-pasajero/registro-pasajero.component.html","./src/app/views/auth/registro-pasajero/registro-pasajero.component.ts","./src/app/views/auth/reset-password/reset-password.component.html","./src/app/views/auth/reset-password/reset-password.component.ts","./src/app/views/consola/components/alertados/alertados.component.html","./src/app/views/consola/components/alertados/alertados.component.ts","./src/app/views/consola/components/fotografias/fotografias.component.html","./src/app/views/consola/components/fotografias/fotografias.component.ts","./src/app/views/consola/components/fotografias/ver-foto/ver-foto.component.html","./src/app/views/consola/components/fotografias/ver-foto/ver-foto.component.ts","./src/app/views/consola/components/galeria/clientes/clientes.component.html","./src/app/views/consola/components/galeria/clientes/clientes.component.ts","./src/app/views/consola/components/galeria/galeria-vehiculos/galeria-vehiculos.component.html","./src/app/views/consola/components/galeria/galeria-vehiculos/galeria-vehiculos.component.ts","./src/app/views/consola/components/imprimir-pdf/imprimir-pdf.component.html","./src/app/views/consola/components/imprimir-pdf/imprimir-pdf.component.ts","./src/app/views/consola/components/maqueta/maqueta.component.html","./src/app/views/consola/components/maqueta/maqueta.component.ts","./src/app/views/consola/components/sin-transmitir/sin-transmitir.component.html","./src/app/views/consola/components/sin-transmitir/sin-transmitir.component.ts","./src/app/views/consola/components/transmisiones/mapa-modal/mapa-modal.component.html","./src/app/views/consola/components/transmisiones/mapa-modal/mapa-modal.component.ts","./src/app/views/consola/components/transmisiones/transmisiones.component.html","./src/app/views/consola/components/transmisiones/transmisiones.component.ts","./src/app/views/consola/consola-routing.module.ts","./src/app/views/consola/consola.module.ts","./src/app/views/consola/services/alertados.service.ts","./src/app/views/consola/services/fotografias.service.ts","./src/app/views/consola/services/galeria.service.ts","./src/app/views/consola/services/mapa-consola.service.ts","./src/app/views/consola/services/maqueta-service.service.ts","./src/app/views/consola/services/sin-transmitir.service.ts","./src/app/views/consola/services/transmisiones.service.ts","./src/app/views/dispositivos/components/dispositivo/alta-dispositivo/alta-dispositivo.component.html","./src/app/views/dispositivos/components/dispositivo/alta-dispositivo/alta-dispositivo.component.ts","./src/app/views/dispositivos/components/dispositivo/dispositivo.component.html","./src/app/views/dispositivos/components/dispositivo/dispositivo.component.ts","./src/app/views/dispositivos/components/marca-dispositivo/alta-marca-dispositivo/alta-marca-dispositivo.component.html","./src/app/views/dispositivos/components/marca-dispositivo/alta-marca-dispositivo/alta-marca-dispositivo.component.ts","./src/app/views/dispositivos/components/marca-dispositivo/marca-dispositivo.component.html","./src/app/views/dispositivos/components/marca-dispositivo/marca-dispositivo.component.ts","./src/app/views/dispositivos/components/modelo-dispositivo/alta-modelo-dispositivo/alta-modelo-dispositivo.component.html","./src/app/views/dispositivos/components/modelo-dispositivo/alta-modelo-dispositivo/alta-modelo-dispositivo.component.ts","./src/app/views/dispositivos/components/modelo-dispositivo/modelo-dispositivo.component.html","./src/app/views/dispositivos/components/modelo-dispositivo/modelo-dispositivo.component.ts","./src/app/views/dispositivos/dispositivos-routing.module.ts","./src/app/views/dispositivos/dispositivos.module.ts","./src/app/views/dispositivos/services/dispositivo.service.ts","./src/app/views/dispositivos/services/marca-dispositivo.service.ts","./src/app/views/dispositivos/services/modelo-dispositivo.service.ts","./src/app/views/monitoreo/components/dialogos/activos/activo-modal/activo-modal.component.html","./src/app/views/monitoreo/components/dialogos/activos/activo-modal/activo-modal.component.ts","./src/app/views/monitoreo/components/dialogos/activos/activo-ultima-transmision/activo-ultima-transmision.component.html","./src/app/views/monitoreo/components/dialogos/activos/activo-ultima-transmision/activo-ultima-transmision.component.ts","./src/app/views/monitoreo/components/dialogos/alertas/alertas.component.html","./src/app/views/monitoreo/components/dialogos/alertas/alertas.component.ts","./src/app/views/monitoreo/components/dialogos/boton-ciudadano/boton-ciudadano.component.html","./src/app/views/monitoreo/components/dialogos/boton-ciudadano/boton-ciudadano.component.ts","./src/app/views/monitoreo/components/dialogos/filtro-productos/filtro-productos.component.html","./src/app/views/monitoreo/components/dialogos/filtro-productos/filtro-productos.component.ts","./src/app/views/monitoreo/components/dialogos/geocercas/categorias/categorias.component.html","./src/app/views/monitoreo/components/dialogos/geocercas/categorias/categorias.component.ts","./src/app/views/monitoreo/components/dialogos/geocercas/geocerca-modal/geocerca-modal.component.html","./src/app/views/monitoreo/components/dialogos/geocercas/geocerca-modal/geocerca-modal.component.ts","./src/app/views/monitoreo/components/dialogos/geocercas/guardar-geocerca/guardar-geocerca.component.html","./src/app/views/monitoreo/components/dialogos/geocercas/guardar-geocerca/guardar-geocerca.component.ts","./src/app/views/monitoreo/components/dialogos/medidores/medidor-modal/medidor-modal.component.html","./src/app/views/monitoreo/components/dialogos/medidores/medidor-modal/medidor-modal.component.ts","./src/app/views/monitoreo/components/dialogos/medidores/medidor-ultima-transmision/medidor-ultima-transmision.component.html","./src/app/views/monitoreo/components/dialogos/medidores/medidor-ultima-transmision/medidor-ultima-transmision.component.ts","./src/app/views/monitoreo/components/dialogos/micromedidores/micromedidor-modal/app.service.ts","./src/app/views/monitoreo/components/dialogos/micromedidores/micromedidor-modal/micromedidor-modal.component.html","./src/app/views/monitoreo/components/dialogos/micromedidores/micromedidor-modal/micromedidor-modal.component.ts","./src/app/views/monitoreo/components/dialogos/micromedidores/micromedidor-ultima-transmision/micromedidor-ultima-transmision.component.html","./src/app/views/monitoreo/components/dialogos/micromedidores/micromedidor-ultima-transmision/micromedidor-ultima-transmision.component.ts","./src/app/views/monitoreo/components/dialogos/portatiles/portatil-modal/portatil-modal.component.html","./src/app/views/monitoreo/components/dialogos/portatiles/portatil-modal/portatil-modal.component.ts","./src/app/views/monitoreo/components/dialogos/portatiles/portatil-ultima-transmision/portatil-ultima-transmision.component.html","./src/app/views/monitoreo/components/dialogos/portatiles/portatil-ultima-transmision/portatil-ultima-transmision.component.ts","./src/app/views/monitoreo/components/dialogos/puntos-interes/guardar-punto-interes/guardar-punto-interes.component.html","./src/app/views/monitoreo/components/dialogos/puntos-interes/guardar-punto-interes/guardar-punto-interes.component.ts","./src/app/views/monitoreo/components/dialogos/puntos-interes/puntos-interes-modal/puntos-interes-modal.component.html","./src/app/views/monitoreo/components/dialogos/puntos-interes/puntos-interes-modal/puntos-interes-modal.component.ts","./src/app/views/monitoreo/components/dialogos/semaforo/semaforo-modal/semaforo-modal.component.html","./src/app/views/monitoreo/components/dialogos/semaforo/semaforo-modal/semaforo-modal.component.ts","./src/app/views/monitoreo/components/dialogos/telefonos/telefono-modal/telefono-modal.component.html","./src/app/views/monitoreo/components/dialogos/telefonos/telefono-modal/telefono-modal.component.ts","./src/app/views/monitoreo/components/dialogos/telefonos/telefono-ultima-transmision/telefono-ultima-transmision.component.html","./src/app/views/monitoreo/components/dialogos/telefonos/telefono-ultima-transmision/telefono-ultima-transmision.component.ts","./src/app/views/monitoreo/components/dialogos/ultima-transmision-boton-ciudadano/ultima-transmision-boton-ciudadano.component.html","./src/app/views/monitoreo/components/dialogos/ultima-transmision-boton-ciudadano/ultima-transmision-boton-ciudadano.component.ts","./src/app/views/monitoreo/components/dialogos/vehiculos/dentro-geocerca-modal/dentro-geocerca-modal.component.html","./src/app/views/monitoreo/components/dialogos/vehiculos/dentro-geocerca-modal/dentro-geocerca-modal.component.ts","./src/app/views/monitoreo/components/dialogos/vehiculos/paso-punto/paso-punto.component.html","./src/app/views/monitoreo/components/dialogos/vehiculos/paso-punto/paso-punto.component.ts","./src/app/views/monitoreo/components/dialogos/vehiculos/vehiculo-modal/vehiculo-modal.component.html","./src/app/views/monitoreo/components/dialogos/vehiculos/vehiculo-modal/vehiculo-modal.component.ts","./src/app/views/monitoreo/components/dialogos/vehiculos/vehiculo-ultima-transmision/vehiculo-ultima-transmision.component.html","./src/app/views/monitoreo/components/dialogos/vehiculos/vehiculo-ultima-transmision/vehiculo-ultima-transmision.component.ts","./src/app/views/monitoreo/components/mapa-marker/mapa-marker.component.html","./src/app/views/monitoreo/components/mapa-marker/mapa-marker.component.ts","./src/app/views/monitoreo/components/popups/activos/historico-posiciones-activo/historico-posiciones-activo.component.html","./src/app/views/monitoreo/components/popups/activos/historico-posiciones-activo/historico-posiciones-activo.component.ts","./src/app/views/monitoreo/components/popups/activos/informacion-activo/informacion-activo.component.html","./src/app/views/monitoreo/components/popups/activos/informacion-activo/informacion-activo.component.ts","./src/app/views/monitoreo/components/popups/medidores/historico-posiciones-medidor/grafica-estadistica-medidor/grafica-estadistica-medidor.component.html","./src/app/views/monitoreo/components/popups/medidores/historico-posiciones-medidor/grafica-estadistica-medidor/grafica-estadistica-medidor.component.ts","./src/app/views/monitoreo/components/popups/medidores/historico-posiciones-medidor/historico-posiciones-medidor.component.html","./src/app/views/monitoreo/components/popups/medidores/historico-posiciones-medidor/historico-posiciones-medidor.component.ts","./src/app/views/monitoreo/components/popups/medidores/informacion-medidor/informacion-medidor.component.html","./src/app/views/monitoreo/components/popups/medidores/informacion-medidor/informacion-medidor.component.ts","./src/app/views/monitoreo/components/popups/micromedidores/historico-mediciones-micromedidor/app.service.ts","./src/app/views/monitoreo/components/popups/micromedidores/historico-mediciones-micromedidor/historico-mediciones-micromedidor.component.html","./src/app/views/monitoreo/components/popups/micromedidores/historico-mediciones-micromedidor/historico-mediciones-micromedidor.component.ts","./src/app/views/monitoreo/components/popups/micromedidores/informacion-micromedidor/app.service.ts","./src/app/views/monitoreo/components/popups/micromedidores/informacion-micromedidor/informacion-micromedidor.component.html","./src/app/views/monitoreo/components/popups/micromedidores/informacion-micromedidor/informacion-micromedidor.component.ts","./src/app/views/monitoreo/components/popups/paneles/historico-panel/historico-panel.component.html","./src/app/views/monitoreo/components/popups/paneles/historico-panel/historico-panel.component.ts","./src/app/views/monitoreo/components/popups/paneles/informacion-panel/informacion-panel.component.html","./src/app/views/monitoreo/components/popups/paneles/informacion-panel/informacion-panel.component.ts","./src/app/views/monitoreo/components/popups/popup-recorrido-historico/popup-recorrido-historico.component.html","./src/app/views/monitoreo/components/popups/popup-recorrido-historico/popup-recorrido-historico.component.ts","./src/app/views/monitoreo/components/popups/portatiles/historico-posiciones-portatiles/historico-posiciones-portatiles.component.html","./src/app/views/monitoreo/components/popups/portatiles/historico-posiciones-portatiles/historico-posiciones-portatiles.component.ts","./src/app/views/monitoreo/components/popups/portatiles/informacion-portatil/informacion-portatil.component.html","./src/app/views/monitoreo/components/popups/portatiles/informacion-portatil/informacion-portatil.component.ts","./src/app/views/monitoreo/components/popups/street-view/street-view.component.html","./src/app/views/monitoreo/components/popups/street-view/street-view.component.ts","./src/app/views/monitoreo/components/popups/telefonos/historico-posiciones-telefono/historico-posiciones-telefono.component.html","./src/app/views/monitoreo/components/popups/telefonos/historico-posiciones-telefono/historico-posiciones-telefono.component.ts","./src/app/views/monitoreo/components/popups/telefonos/informacion-telefono/informacion-telefono.component.html","./src/app/views/monitoreo/components/popups/telefonos/informacion-telefono/informacion-telefono.component.ts","./src/app/views/monitoreo/components/popups/vehiculos/dentro-geocerca/dentro-geocerca.component.html","./src/app/views/monitoreo/components/popups/vehiculos/dentro-geocerca/dentro-geocerca.component.ts","./src/app/views/monitoreo/components/popups/vehiculos/fuera-geocerca/fuera-geocerca.component.html","./src/app/views/monitoreo/components/popups/vehiculos/fuera-geocerca/fuera-geocerca.component.ts","./src/app/views/monitoreo/components/popups/vehiculos/galeria-nuevo-dispositivo/galeria-nuevo-dispositivo.component.html","./src/app/views/monitoreo/components/popups/vehiculos/galeria-nuevo-dispositivo/galeria-nuevo-dispositivo.component.ts","./src/app/views/monitoreo/components/popups/vehiculos/galeria-vehiculo/galeria-vehiculo.component.html","./src/app/views/monitoreo/components/popups/vehiculos/galeria-vehiculo/galeria-vehiculo.component.ts","./src/app/views/monitoreo/components/popups/vehiculos/galeria-videos/galeria-videos.component.html","./src/app/views/monitoreo/components/popups/vehiculos/galeria-videos/galeria-videos.component.ts","./src/app/views/monitoreo/components/popups/vehiculos/galeria-videos/play-video/play-video.component.html","./src/app/views/monitoreo/components/popups/vehiculos/galeria-videos/play-video/play-video.component.ts","./src/app/views/monitoreo/components/popups/vehiculos/galeria-videos/safe-url.pipe.ts","./src/app/views/monitoreo/components/popups/vehiculos/galeria-videos/stream-video/stream-video.component.html","./src/app/views/monitoreo/components/popups/vehiculos/galeria-videos/stream-video/stream-video.component.ts","./src/app/views/monitoreo/components/popups/vehiculos/grafica-historico-combustible/grafica-historico-combustible.component.html","./src/app/views/monitoreo/components/popups/vehiculos/grafica-historico-combustible/grafica-historico-combustible.component.ts","./src/app/views/monitoreo/components/popups/vehiculos/historial-velocidades-vehiculo/historial-velocidades-vehiculo.component.html","./src/app/views/monitoreo/components/popups/vehiculos/historial-velocidades-vehiculo/historial-velocidades-vehiculo.component.ts","./src/app/views/monitoreo/components/popups/vehiculos/historico-combustible/historico-combustible.component.html","./src/app/views/monitoreo/components/popups/vehiculos/historico-combustible/historico-combustible.component.ts","./src/app/views/monitoreo/components/popups/vehiculos/historico-posiciones-vehiculo/grafica-estadistica-vehiculo/grafica-estadistica-vehiculo.component.html","./src/app/views/monitoreo/components/popups/vehiculos/historico-posiciones-vehiculo/grafica-estadistica-vehiculo/grafica-estadistica-vehiculo.component.ts","./src/app/views/monitoreo/components/popups/vehiculos/historico-posiciones-vehiculo/historico-posiciones-vehiculo.component.html","./src/app/views/monitoreo/components/popups/vehiculos/historico-posiciones-vehiculo/historico-posiciones-vehiculo.component.ts","./src/app/views/monitoreo/components/popups/vehiculos/informacion-vehiculo/informacion-vehiculo.component.html","./src/app/views/monitoreo/components/popups/vehiculos/informacion-vehiculo/informacion-vehiculo.component.ts","./src/app/views/monitoreo/components/popups/vehiculos/paso-punto-vehiculo/paso-punto-vehiculo.component.html","./src/app/views/monitoreo/components/popups/vehiculos/paso-punto-vehiculo/paso-punto-vehiculo.component.ts","./src/app/views/monitoreo/components/popups/vehiculos/perfiloperador/perfiloperador.component.html","./src/app/views/monitoreo/components/popups/vehiculos/perfiloperador/perfiloperador.component.ts","./src/app/views/monitoreo/components/popups/vehiculos/reproduccion/reproduccion.component.html","./src/app/views/monitoreo/components/popups/vehiculos/reproduccion/reproduccion.component.ts","./src/app/views/monitoreo/monitoreo-routing.module.ts","./src/app/views/monitoreo/monitoreo.component.html","./src/app/views/monitoreo/monitoreo.component.ts","./src/app/views/monitoreo/monitoreo.module.ts","./src/app/views/monitoreo/services/activos.service.ts","./src/app/views/monitoreo/services/categorias.service.ts","./src/app/views/monitoreo/services/contador-semaforo.service.ts","./src/app/views/monitoreo/services/filtro-productos.service.ts","./src/app/views/monitoreo/services/galeria-vehiculo.service.ts","./src/app/views/monitoreo/services/galeria-video.service.ts","./src/app/views/monitoreo/services/geocercas.service.ts","./src/app/views/monitoreo/services/historial-velocidades-vehiculo.service.ts","./src/app/views/monitoreo/services/iconos.service.ts","./src/app/views/monitoreo/services/mapa-marker.service.ts","./src/app/views/monitoreo/services/mapa.service.ts","./src/app/views/monitoreo/services/medidores.service.ts","./src/app/views/monitoreo/services/micromedidores.service.ts","./src/app/views/monitoreo/services/paso-punto.service.ts","./src/app/views/monitoreo/services/portatiles.service.ts","./src/app/views/monitoreo/services/puntos-interes.service.ts","./src/app/views/monitoreo/services/telefonos.service.ts","./src/app/views/monitoreo/services/terminal.service.ts","./src/app/views/monitoreo/services/vehiculos.service.ts","./src/app/views/panel-vigilancia/services/panel-administracion.service.ts","./src/app/views/partials/content/crud/action-natification/action-notification.component.ts","./src/app/views/partials/content/crud/alert/alert.component.ts","./src/app/views/partials/content/crud/delete-entity-dialog/delete-entity-dialog.component.ts","./src/app/views/partials/content/crud/fetch-entity-dialog/fetch-entity-dialog.component.ts","./src/app/views/partials/content/crud/index.ts","./src/app/views/partials/content/crud/update-status-dialog/update-status-dialog.component.ts","./src/app/views/partials/content/general/portlet/portlet.module.ts","./src/app/views/partials/content/widgets/widget.module.ts","./src/app/views/partials/layout/splash-screen/splash-screen.component.html","./src/app/views/partials/layout/splash-screen/splash-screen.component.ts","./src/app/views/partials/partials.module.ts","./src/app/views/reutilizables/components/boton-exportar-tabla/boton-exportar-tabla.component.html","./src/app/views/reutilizables/components/boton-exportar-tabla/boton-exportar-tabla.component.ts","./src/app/views/reutilizables/reutilizables.module.ts","./src/app/views/sims/components/sim/alta-sim/alta-sim.component.html","./src/app/views/sims/components/sim/alta-sim/alta-sim.component.ts","./src/app/views/sims/components/sim/sim.component.html","./src/app/views/sims/components/sim/sim.component.ts","./src/app/views/sims/services/sim.service.ts","./src/app/views/sims/sims-routing.module.ts","./src/app/views/sims/sims.module.ts","./src/app/views/tablero/components/tablas/tablas.component.html","./src/app/views/tablero/components/tablas/tablas.component.ts","./src/app/views/tablero/services/tablas.service.ts","./src/app/views/tablero/tablero-routing.module.ts","./src/app/views/tablero/tablero.module.ts","./src/app/views/usuarios/services/usuario.service.ts","./src/environments/environment.ts","./src/main.ts","fs (ignored)","crypto (ignored)","stream (ignored)"],"names":[],"mappings":";;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A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","file":"main.32ec7993b2c0fcd6b424.js","sourcesContent":["var map = {\n\t\"./af\": \"./node_modules/moment/locale/af.js\",\n\t\"./af.js\": \"./node_modules/moment/locale/af.js\",\n\t\"./ar\": \"./node_modules/moment/locale/ar.js\",\n\t\"./ar-dz\": \"./node_modules/moment/locale/ar-dz.js\",\n\t\"./ar-dz.js\": \"./node_modules/moment/locale/ar-dz.js\",\n\t\"./ar-kw\": \"./node_modules/moment/locale/ar-kw.js\",\n\t\"./ar-kw.js\": \"./node_modules/moment/locale/ar-kw.js\",\n\t\"./ar-ly\": \"./node_modules/moment/locale/ar-ly.js\",\n\t\"./ar-ly.js\": \"./node_modules/moment/locale/ar-ly.js\",\n\t\"./ar-ma\": \"./node_modules/moment/locale/ar-ma.js\",\n\t\"./ar-ma.js\": \"./node_modules/moment/locale/ar-ma.js\",\n\t\"./ar-sa\": \"./node_modules/moment/locale/ar-sa.js\",\n\t\"./ar-sa.js\": \"./node_modules/moment/locale/ar-sa.js\",\n\t\"./ar-tn\": \"./node_modules/moment/locale/ar-tn.js\",\n\t\"./ar-tn.js\": \"./node_modules/moment/locale/ar-tn.js\",\n\t\"./ar.js\": \"./node_modules/moment/locale/ar.js\",\n\t\"./az\": \"./node_modules/moment/locale/az.js\",\n\t\"./az.js\": \"./node_modules/moment/locale/az.js\",\n\t\"./be\": \"./node_modules/moment/locale/be.js\",\n\t\"./be.js\": \"./node_modules/moment/locale/be.js\",\n\t\"./bg\": \"./node_modules/moment/locale/bg.js\",\n\t\"./bg.js\": \"./node_modules/moment/locale/bg.js\",\n\t\"./bm\": \"./node_modules/moment/locale/bm.js\",\n\t\"./bm.js\": \"./node_modules/moment/locale/bm.js\",\n\t\"./bn\": \"./node_modules/moment/locale/bn.js\",\n\t\"./bn-bd\": \"./node_modules/moment/locale/bn-bd.js\",\n\t\"./bn-bd.js\": \"./node_modules/moment/locale/bn-bd.js\",\n\t\"./bn.js\": \"./node_modules/moment/locale/bn.js\",\n\t\"./bo\": \"./node_modules/moment/locale/bo.js\",\n\t\"./bo.js\": \"./node_modules/moment/locale/bo.js\",\n\t\"./br\": \"./node_modules/moment/locale/br.js\",\n\t\"./br.js\": \"./node_modules/moment/locale/br.js\",\n\t\"./bs\": \"./node_modules/moment/locale/bs.js\",\n\t\"./bs.js\": \"./node_modules/moment/locale/bs.js\",\n\t\"./ca\": \"./node_modules/moment/locale/ca.js\",\n\t\"./ca.js\": \"./node_modules/moment/locale/ca.js\",\n\t\"./cs\": \"./node_modules/moment/locale/cs.js\",\n\t\"./cs.js\": \"./node_modules/moment/locale/cs.js\",\n\t\"./cv\": \"./node_modules/moment/locale/cv.js\",\n\t\"./cv.js\": \"./node_modules/moment/locale/cv.js\",\n\t\"./cy\": \"./node_modules/moment/locale/cy.js\",\n\t\"./cy.js\": \"./node_modules/moment/locale/cy.js\",\n\t\"./da\": \"./node_modules/moment/locale/da.js\",\n\t\"./da.js\": \"./node_modules/moment/locale/da.js\",\n\t\"./de\": \"./node_modules/moment/locale/de.js\",\n\t\"./de-at\": \"./node_modules/moment/locale/de-at.js\",\n\t\"./de-at.js\": \"./node_modules/moment/locale/de-at.js\",\n\t\"./de-ch\": \"./node_modules/moment/locale/de-ch.js\",\n\t\"./de-ch.js\": \"./node_modules/moment/locale/de-ch.js\",\n\t\"./de.js\": \"./node_modules/moment/locale/de.js\",\n\t\"./dv\": \"./node_modules/moment/locale/dv.js\",\n\t\"./dv.js\": \"./node_modules/moment/locale/dv.js\",\n\t\"./el\": \"./node_modules/moment/locale/el.js\",\n\t\"./el.js\": \"./node_modules/moment/locale/el.js\",\n\t\"./en-au\": \"./node_modules/moment/locale/en-au.js\",\n\t\"./en-au.js\": \"./node_modules/moment/locale/en-au.js\",\n\t\"./en-ca\": \"./node_modules/moment/locale/en-ca.js\",\n\t\"./en-ca.js\": \"./node_modules/moment/locale/en-ca.js\",\n\t\"./en-gb\": \"./node_modules/moment/locale/en-gb.js\",\n\t\"./en-gb.js\": \"./node_modules/moment/locale/en-gb.js\",\n\t\"./en-ie\": \"./node_modules/moment/locale/en-ie.js\",\n\t\"./en-ie.js\": \"./node_modules/moment/locale/en-ie.js\",\n\t\"./en-il\": \"./node_modules/moment/locale/en-il.js\",\n\t\"./en-il.js\": \"./node_modules/moment/locale/en-il.js\",\n\t\"./en-in\": \"./node_modules/moment/locale/en-in.js\",\n\t\"./en-in.js\": \"./node_modules/moment/locale/en-in.js\",\n\t\"./en-nz\": \"./node_modules/moment/locale/en-nz.js\",\n\t\"./en-nz.js\": \"./node_modules/moment/locale/en-nz.js\",\n\t\"./en-sg\": \"./node_modules/moment/locale/en-sg.js\",\n\t\"./en-sg.js\": \"./node_modules/moment/locale/en-sg.js\",\n\t\"./eo\": \"./node_modules/moment/locale/eo.js\",\n\t\"./eo.js\": \"./node_modules/moment/locale/eo.js\",\n\t\"./es\": \"./node_modules/moment/locale/es.js\",\n\t\"./es-do\": \"./node_modules/moment/locale/es-do.js\",\n\t\"./es-do.js\": \"./node_modules/moment/locale/es-do.js\",\n\t\"./es-mx\": \"./node_modules/moment/locale/es-mx.js\",\n\t\"./es-mx.js\": \"./node_modules/moment/locale/es-mx.js\",\n\t\"./es-us\": \"./node_modules/moment/locale/es-us.js\",\n\t\"./es-us.js\": \"./node_modules/moment/locale/es-us.js\",\n\t\"./es.js\": \"./node_modules/moment/locale/es.js\",\n\t\"./et\": \"./node_modules/moment/locale/et.js\",\n\t\"./et.js\": \"./node_modules/moment/locale/et.js\",\n\t\"./eu\": \"./node_modules/moment/locale/eu.js\",\n\t\"./eu.js\": \"./node_modules/moment/locale/eu.js\",\n\t\"./fa\": \"./node_modules/moment/locale/fa.js\",\n\t\"./fa.js\": \"./node_modules/moment/locale/fa.js\",\n\t\"./fi\": \"./node_modules/moment/locale/fi.js\",\n\t\"./fi.js\": \"./node_modules/moment/locale/fi.js\",\n\t\"./fil\": \"./node_modules/moment/locale/fil.js\",\n\t\"./fil.js\": \"./node_modules/moment/locale/fil.js\",\n\t\"./fo\": \"./node_modules/moment/locale/fo.js\",\n\t\"./fo.js\": \"./node_modules/moment/locale/fo.js\",\n\t\"./fr\": \"./node_modules/moment/locale/fr.js\",\n\t\"./fr-ca\": \"./node_modules/moment/locale/fr-ca.js\",\n\t\"./fr-ca.js\": \"./node_modules/moment/locale/fr-ca.js\",\n\t\"./fr-ch\": \"./node_modules/moment/locale/fr-ch.js\",\n\t\"./fr-ch.js\": \"./node_modules/moment/locale/fr-ch.js\",\n\t\"./fr.js\": \"./node_modules/moment/locale/fr.js\",\n\t\"./fy\": \"./node_modules/moment/locale/fy.js\",\n\t\"./fy.js\": \"./node_modules/moment/locale/fy.js\",\n\t\"./ga\": \"./node_modules/moment/locale/ga.js\",\n\t\"./ga.js\": \"./node_modules/moment/locale/ga.js\",\n\t\"./gd\": \"./node_modules/moment/locale/gd.js\",\n\t\"./gd.js\": \"./node_modules/moment/locale/gd.js\",\n\t\"./gl\": \"./node_modules/moment/locale/gl.js\",\n\t\"./gl.js\": \"./node_modules/moment/locale/gl.js\",\n\t\"./gom-deva\": \"./node_modules/moment/locale/gom-deva.js\",\n\t\"./gom-deva.js\": \"./node_modules/moment/locale/gom-deva.js\",\n\t\"./gom-latn\": \"./node_modules/moment/locale/gom-latn.js\",\n\t\"./gom-latn.js\": \"./node_modules/moment/locale/gom-latn.js\",\n\t\"./gu\": \"./node_modules/moment/locale/gu.js\",\n\t\"./gu.js\": \"./node_modules/moment/locale/gu.js\",\n\t\"./he\": \"./node_modules/moment/locale/he.js\",\n\t\"./he.js\": \"./node_modules/moment/locale/he.js\",\n\t\"./hi\": \"./node_modules/moment/locale/hi.js\",\n\t\"./hi.js\": \"./node_modules/moment/locale/hi.js\",\n\t\"./hr\": \"./node_modules/moment/locale/hr.js\",\n\t\"./hr.js\": \"./node_modules/moment/locale/hr.js\",\n\t\"./hu\": \"./node_modules/moment/locale/hu.js\",\n\t\"./hu.js\": \"./node_modules/moment/locale/hu.js\",\n\t\"./hy-am\": \"./node_modules/moment/locale/hy-am.js\",\n\t\"./hy-am.js\": \"./node_modules/moment/locale/hy-am.js\",\n\t\"./id\": \"./node_modules/moment/locale/id.js\",\n\t\"./id.js\": \"./node_modules/moment/locale/id.js\",\n\t\"./is\": \"./node_modules/moment/locale/is.js\",\n\t\"./is.js\": \"./node_modules/moment/locale/is.js\",\n\t\"./it\": \"./node_modules/moment/locale/it.js\",\n\t\"./it-ch\": \"./node_modules/moment/locale/it-ch.js\",\n\t\"./it-ch.js\": \"./node_modules/moment/locale/it-ch.js\",\n\t\"./it.js\": \"./node_modules/moment/locale/it.js\",\n\t\"./ja\": \"./node_modules/moment/locale/ja.js\",\n\t\"./ja.js\": \"./node_modules/moment/locale/ja.js\",\n\t\"./jv\": \"./node_modules/moment/locale/jv.js\",\n\t\"./jv.js\": \"./node_modules/moment/locale/jv.js\",\n\t\"./ka\": \"./node_modules/moment/locale/ka.js\",\n\t\"./ka.js\": \"./node_modules/moment/locale/ka.js\",\n\t\"./kk\": \"./node_modules/moment/locale/kk.js\",\n\t\"./kk.js\": \"./node_modules/moment/locale/kk.js\",\n\t\"./km\": \"./node_modules/moment/locale/km.js\",\n\t\"./km.js\": \"./node_modules/moment/locale/km.js\",\n\t\"./kn\": \"./node_modules/moment/locale/kn.js\",\n\t\"./kn.js\": \"./node_modules/moment/locale/kn.js\",\n\t\"./ko\": \"./node_modules/moment/locale/ko.js\",\n\t\"./ko.js\": \"./node_modules/moment/locale/ko.js\",\n\t\"./ku\": \"./node_modules/moment/locale/ku.js\",\n\t\"./ku.js\": \"./node_modules/moment/locale/ku.js\",\n\t\"./ky\": \"./node_modules/moment/locale/ky.js\",\n\t\"./ky.js\": \"./node_modules/moment/locale/ky.js\",\n\t\"./lb\": \"./node_modules/moment/locale/lb.js\",\n\t\"./lb.js\": \"./node_modules/moment/locale/lb.js\",\n\t\"./lo\": \"./node_modules/moment/locale/lo.js\",\n\t\"./lo.js\": \"./node_modules/moment/locale/lo.js\",\n\t\"./lt\": \"./node_modules/moment/locale/lt.js\",\n\t\"./lt.js\": \"./node_modules/moment/locale/lt.js\",\n\t\"./lv\": \"./node_modules/moment/locale/lv.js\",\n\t\"./lv.js\": \"./node_modules/moment/locale/lv.js\",\n\t\"./me\": \"./node_modules/moment/locale/me.js\",\n\t\"./me.js\": \"./node_modules/moment/locale/me.js\",\n\t\"./mi\": \"./node_modules/moment/locale/mi.js\",\n\t\"./mi.js\": \"./node_modules/moment/locale/mi.js\",\n\t\"./mk\": \"./node_modules/moment/locale/mk.js\",\n\t\"./mk.js\": \"./node_modules/moment/locale/mk.js\",\n\t\"./ml\": \"./node_modules/moment/locale/ml.js\",\n\t\"./ml.js\": \"./node_modules/moment/locale/ml.js\",\n\t\"./mn\": \"./node_modules/moment/locale/mn.js\",\n\t\"./mn.js\": \"./node_modules/moment/locale/mn.js\",\n\t\"./mr\": \"./node_modules/moment/locale/mr.js\",\n\t\"./mr.js\": \"./node_modules/moment/locale/mr.js\",\n\t\"./ms\": \"./node_modules/moment/locale/ms.js\",\n\t\"./ms-my\": \"./node_modules/moment/locale/ms-my.js\",\n\t\"./ms-my.js\": \"./node_modules/moment/locale/ms-my.js\",\n\t\"./ms.js\": \"./node_modules/moment/locale/ms.js\",\n\t\"./mt\": \"./node_modules/moment/locale/mt.js\",\n\t\"./mt.js\": \"./node_modules/moment/locale/mt.js\",\n\t\"./my\": \"./node_modules/moment/locale/my.js\",\n\t\"./my.js\": \"./node_modules/moment/locale/my.js\",\n\t\"./nb\": \"./node_modules/moment/locale/nb.js\",\n\t\"./nb.js\": \"./node_modules/moment/locale/nb.js\",\n\t\"./ne\": \"./node_modules/moment/locale/ne.js\",\n\t\"./ne.js\": \"./node_modules/moment/locale/ne.js\",\n\t\"./nl\": \"./node_modules/moment/locale/nl.js\",\n\t\"./nl-be\": \"./node_modules/moment/locale/nl-be.js\",\n\t\"./nl-be.js\": \"./node_modules/moment/locale/nl-be.js\",\n\t\"./nl.js\": \"./node_modules/moment/locale/nl.js\",\n\t\"./nn\": \"./node_modules/moment/locale/nn.js\",\n\t\"./nn.js\": \"./node_modules/moment/locale/nn.js\",\n\t\"./oc-lnc\": \"./node_modules/moment/locale/oc-lnc.js\",\n\t\"./oc-lnc.js\": \"./node_modules/moment/locale/oc-lnc.js\",\n\t\"./pa-in\": \"./node_modules/moment/locale/pa-in.js\",\n\t\"./pa-in.js\": \"./node_modules/moment/locale/pa-in.js\",\n\t\"./pl\": \"./node_modules/moment/locale/pl.js\",\n\t\"./pl.js\": \"./node_modules/moment/locale/pl.js\",\n\t\"./pt\": \"./node_modules/moment/locale/pt.js\",\n\t\"./pt-br\": \"./node_modules/moment/locale/pt-br.js\",\n\t\"./pt-br.js\": \"./node_modules/moment/locale/pt-br.js\",\n\t\"./pt.js\": \"./node_modules/moment/locale/pt.js\",\n\t\"./ro\": \"./node_modules/moment/locale/ro.js\",\n\t\"./ro.js\": \"./node_modules/moment/locale/ro.js\",\n\t\"./ru\": \"./node_modules/moment/locale/ru.js\",\n\t\"./ru.js\": \"./node_modules/moment/locale/ru.js\",\n\t\"./sd\": \"./node_modules/moment/locale/sd.js\",\n\t\"./sd.js\": \"./node_modules/moment/locale/sd.js\",\n\t\"./se\": \"./node_modules/moment/locale/se.js\",\n\t\"./se.js\": \"./node_modules/moment/locale/se.js\",\n\t\"./si\": \"./node_modules/moment/locale/si.js\",\n\t\"./si.js\": \"./node_modules/moment/locale/si.js\",\n\t\"./sk\": \"./node_modules/moment/locale/sk.js\",\n\t\"./sk.js\": \"./node_modules/moment/locale/sk.js\",\n\t\"./sl\": \"./node_modules/moment/locale/sl.js\",\n\t\"./sl.js\": \"./node_modules/moment/locale/sl.js\",\n\t\"./sq\": \"./node_modules/moment/locale/sq.js\",\n\t\"./sq.js\": \"./node_modules/moment/locale/sq.js\",\n\t\"./sr\": \"./node_modules/moment/locale/sr.js\",\n\t\"./sr-cyrl\": \"./node_modules/moment/locale/sr-cyrl.js\",\n\t\"./sr-cyrl.js\": \"./node_modules/moment/locale/sr-cyrl.js\",\n\t\"./sr.js\": \"./node_modules/moment/locale/sr.js\",\n\t\"./ss\": \"./node_modules/moment/locale/ss.js\",\n\t\"./ss.js\": \"./node_modules/moment/locale/ss.js\",\n\t\"./sv\": \"./node_modules/moment/locale/sv.js\",\n\t\"./sv.js\": \"./node_modules/moment/locale/sv.js\",\n\t\"./sw\": \"./node_modules/moment/locale/sw.js\",\n\t\"./sw.js\": \"./node_modules/moment/locale/sw.js\",\n\t\"./ta\": \"./node_modules/moment/locale/ta.js\",\n\t\"./ta.js\": \"./node_modules/moment/locale/ta.js\",\n\t\"./te\": \"./node_modules/moment/locale/te.js\",\n\t\"./te.js\": \"./node_modules/moment/locale/te.js\",\n\t\"./tet\": \"./node_modules/moment/locale/tet.js\",\n\t\"./tet.js\": \"./node_modules/moment/locale/tet.js\",\n\t\"./tg\": \"./node_modules/moment/locale/tg.js\",\n\t\"./tg.js\": \"./node_modules/moment/locale/tg.js\",\n\t\"./th\": \"./node_modules/moment/locale/th.js\",\n\t\"./th.js\": \"./node_modules/moment/locale/th.js\",\n\t\"./tk\": \"./node_modules/moment/locale/tk.js\",\n\t\"./tk.js\": \"./node_modules/moment/locale/tk.js\",\n\t\"./tl-ph\": \"./node_modules/moment/locale/tl-ph.js\",\n\t\"./tl-ph.js\": \"./node_modules/moment/locale/tl-ph.js\",\n\t\"./tlh\": \"./node_modules/moment/locale/tlh.js\",\n\t\"./tlh.js\": \"./node_modules/moment/locale/tlh.js\",\n\t\"./tr\": \"./node_modules/moment/locale/tr.js\",\n\t\"./tr.js\": \"./node_modules/moment/locale/tr.js\",\n\t\"./tzl\": \"./node_modules/moment/locale/tzl.js\",\n\t\"./tzl.js\": \"./node_modules/moment/locale/tzl.js\",\n\t\"./tzm\": \"./node_modules/moment/locale/tzm.js\",\n\t\"./tzm-latn\": \"./node_modules/moment/locale/tzm-latn.js\",\n\t\"./tzm-latn.js\": \"./node_modules/moment/locale/tzm-latn.js\",\n\t\"./tzm.js\": \"./node_modules/moment/locale/tzm.js\",\n\t\"./ug-cn\": \"./node_modules/moment/locale/ug-cn.js\",\n\t\"./ug-cn.js\": \"./node_modules/moment/locale/ug-cn.js\",\n\t\"./uk\": \"./node_modules/moment/locale/uk.js\",\n\t\"./uk.js\": \"./node_modules/moment/locale/uk.js\",\n\t\"./ur\": \"./node_modules/moment/locale/ur.js\",\n\t\"./ur.js\": \"./node_modules/moment/locale/ur.js\",\n\t\"./uz\": \"./node_modules/moment/locale/uz.js\",\n\t\"./uz-latn\": \"./node_modules/moment/locale/uz-latn.js\",\n\t\"./uz-latn.js\": \"./node_modules/moment/locale/uz-latn.js\",\n\t\"./uz.js\": \"./node_modules/moment/locale/uz.js\",\n\t\"./vi\": \"./node_modules/moment/locale/vi.js\",\n\t\"./vi.js\": \"./node_modules/moment/locale/vi.js\",\n\t\"./x-pseudo\": \"./node_modules/moment/locale/x-pseudo.js\",\n\t\"./x-pseudo.js\": \"./node_modules/moment/locale/x-pseudo.js\",\n\t\"./yo\": \"./node_modules/moment/locale/yo.js\",\n\t\"./yo.js\": \"./node_modules/moment/locale/yo.js\",\n\t\"./zh-cn\": \"./node_modules/moment/locale/zh-cn.js\",\n\t\"./zh-cn.js\": \"./node_modules/moment/locale/zh-cn.js\",\n\t\"./zh-hk\": \"./node_modules/moment/locale/zh-hk.js\",\n\t\"./zh-hk.js\": \"./node_modules/moment/locale/zh-hk.js\",\n\t\"./zh-mo\": \"./node_modules/moment/locale/zh-mo.js\",\n\t\"./zh-mo.js\": \"./node_modules/moment/locale/zh-mo.js\",\n\t\"./zh-tw\": \"./node_modules/moment/locale/zh-tw.js\",\n\t\"./zh-tw.js\": \"./node_modules/moment/locale/zh-tw.js\"\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = \"./node_modules/moment/locale sync recursive ^\\\\.\\\\/.*$\";","var map = {\n\t\"app/views/auth/auth.module.ngfactory\": [\n\t\t\"./src/app/views/auth/auth.module.ngfactory.js\",\n\t\t\"app-views-auth-auth-module-ngfactory\"\n\t],\n\t\"app/views/home/home.module.ngfactory\": [\n\t\t\"./src/app/views/home/home.module.ngfactory.js\",\n\t\t\"app-views-home-home-module-ngfactory\"\n\t]\n};\nfunction webpackAsyncContext(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\treturn Promise.resolve().then(function() {\n\t\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\t\te.code = 'MODULE_NOT_FOUND';\n\t\t\tthrow e;\n\t\t});\n\t}\n\n\tvar ids = map[req], id = ids[0];\n\treturn __webpack_require__.e(ids[1]).then(function() {\n\t\treturn __webpack_require__(id);\n\t});\n}\nwebpackAsyncContext.keys = function webpackAsyncContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackAsyncContext.id = \"./src/$$_lazy_route_resource lazy recursive\";\nmodule.exports = webpackAsyncContext;","export class Credentials {\r\n username: string;\r\n password: string;\r\n}\r\n","export enum Permiso {\r\n\r\n\t/* #region MarcasDispositivos */\r\n\tConsultarMarcasDispositivos = \"1\",\r\n\tAgregarMarcaDispositivo = \"2\",\r\n\tActualizarMarcaDispositivo = \"3\",\r\n\tEliminarMarcaDispositivo = \"4\",\r\n\t/* #endregion */\r\n\r\n\t/* #region MarcasVehiculos */\r\n\tConsultarMarcasVehiculos = \"5\",\r\n\tAgregarMarcaVehiculo = \"6\",\r\n\tActualizarMarcaVehiculo = \"7\",\r\n\tEliminarMarcaVehiculo = \"8\",\r\n\t/* #endregion */\r\n\r\n\t/* #region ModelosDispositivos */\r\n\tConsultarModelosDispositivos = \"9\",\r\n\tAgregarModeloDispositivo = \"10\",\r\n\tActualizarModeloDispositivo = \"11\",\r\n\tEliminarModeloDispositivo = \"12\",\r\n\t/* #endregion */\r\n\r\n\t/* #region ModelosVehiculos */\r\n\tConsultarModelosVehiculos = \"13\",\r\n\tAgregarModeloVehiculo = \"14\",\r\n\tActualizarModeloVehiculo = \"15\",\r\n\tEliminarModeloVehiculo = \"16\",\r\n\t/* #endregion */\r\n\r\n\t/* #region Sims */\r\n\tConsultarSims = \"17\",\r\n\tAgregarSim = \"18\",\r\n\tActualizarSim = \"19\",\r\n\tEliminarSim = \"20\",\r\n\t/* #endregion */\r\n\r\n\t/* #region Dispositivos */\r\n\tConsultarDispositivos = \"21\",\r\n\tAgregarDispositivo = \"22\",\r\n\tActualizarDispositivo = \"23\",\r\n\tEliminarDispositivo = \"24\",\r\n\t/* #endregion */\r\n\r\n\t/* #region Vehiculos */\r\n\tConsultarVehiculos = \"25\",\r\n\tAgregarVehiculo = \"26\",\r\n\tActualizarVehiculo = \"27\",\r\n\tEliminarVehiculo = \"28\",\r\n\tConsultarGaleria = \"178\",\r\n\t/* #endregion */\r\n\r\n\t/* #region Clientes */\r\n\tConsultarClientes = \"29\",\r\n\tAgregarCliente = \"30\",\r\n\tActualizarCliente = \"31\",\r\n\tEliminarCliente = \"32\",\r\n\t/* #endregion */\r\n\r\n\t/* #region Usuarios */\r\n\tConsultarUsuarios = \"33\",\r\n\tAgregarUsuario = \"34\",\r\n\tActualizarUsuario = \"35\",\r\n\tEliminarUsuario = \"36\",\r\n\tAsignarVehiculosUsuario = \"37\",\r\n\t/* #endregion */\r\n\r\n\t/* #region Mapa */\r\n\tVisualizarVehiculos = \"38\",\r\n\tVisualizarDispositivosMoviles = \"39\",\r\n\tVisualizarMedidores = \"40\",\r\n\tVisualizarLuminarias = \"41\",\r\n\tVisualizarVendedores = \"42\",\r\n\tVisualizarClientes = \"43\",\r\n\tVisualizarGeocercas = \"44\",\r\n\tVisualizarPuntosInteres = \"45\",\r\n\tVisualizarEtiquetas = \"46\",\r\n\tVisualizarGaleria = \"47\",\r\n\tAgregarGeocerca = \"48\",\r\n\tActualizarGeocerca = \"49\",\r\n\tEliminarGeocerca = \"50\",\r\n\tAgregarPuntoInteres = \"51\",\r\n\tActualizarPuntoInteres = \"52\",\r\n\tEliminarPuntoInteres = \"53\",\r\n\tMostrarAlertasGenerales = \"61\",\r\n\tMostrarSemaforo = \"62\",\r\n\t/* #endregion */\r\n\r\n\t/* #region Dashboards */\r\n\tConsultarDashboardVehiculos = \"54\",\r\n\tConsultarDashboardSensores = \"55\",\r\n\tConsultarDashboardCRM = \"56\",\r\n\t/* #endregion */\r\n\r\n\t/* #region Mensajes */\r\n\tConsultarMensajes = \"57\",\r\n\tAgregarMensaje = \"58\",\r\n\tActualizarMensaje = \"59\",\r\n\tEliminarMensaje = \"60\",\r\n\t/* #endregion */\r\n\r\n\t/* #region Medidores */\r\n\tAgregarMarcaMedidor = \"63\",\r\n\tActualizarMarcaMedidor = \"64\",\r\n\tConsultarMarcaMedidor = \"65\",\r\n\tEliminarMarcaMedidor = \"66\",\r\n\tAgregarModeloMedidor = \"67\",\r\n\tActualizarModeloMedidor = \"68\",\r\n\tConsultarModeloMedidor = \"69\",\r\n\tEliminarModeloMedidor = \"70\",\r\n\tAgregarMedidor = \"71\",\r\n\tActualizarMedidor = \"72\",\r\n\tConsultarMedidores = \"73\",\r\n\tEliminarMedidores = \"74\",\r\n\tVisualizarEtiquetasMedidores = \"87\",\r\n\t/*#endregion */\r\n\r\n\t/*#region Micromedidores */\r\n\tAgregarMarcaMicromedidores = \"75\",\r\n\tActualizarMarcaMicromedidores = \"76\",\r\n\tConsultarMarcaMicromedidores = \"77\",\r\n\tEliminarMarcaMicromedidores = \"78\",\r\n\tAgregarModeloMicromedidores = \"79\",\r\n\tActualizarModeloMicromedidores = \"80\",\r\n\tConsultarModeloMicromedidores = \"81\",\r\n\tEliminarModeloMicromedidores = \"82\",\r\n\tAgregarMicromedidor = \"83\",\r\n\tActualizarMicromedidor = \"84\",\r\n\tEliminarMicromedidor = \"85\",\r\n\tConsultarMicromedidor = \"86\",\r\n\t/*#endregion */\r\n\r\n\t/**#region telefonos */\r\n\tAgregarTelefono = \"88\",\r\n\tActualizarTelefono = \"89\",\r\n\tEliminarTelefono = \"90\",\r\n\tConsultarTelefono = \"91\",\r\n\tConsultarMarcaTelefonos = \"92\",\r\n\tEliminarMarcaTelefonos = \"93\",\r\n\tAgregarMarcaTelefonos = \"94\",\r\n\tActualizarMarcaTelefonos = \"95\",\r\n\tConsultarModeloTelefonos = \"96\",\r\n\tEliminarModeloTelefonos = \"97\",\r\n\t/**#endregion */\r\n\r\n\t/*#region activos*/\r\n\tAgregarActivo = \"100\",\r\n\tActualizarActivo = \"101\",\r\n\tConsultarActivo = \"102\",\r\n\tEliminarActivo = \"103\",\r\n\tConsultarMarcaActivo = \"104\",\r\n\tEliminarMarcaActivo = \"105\",\r\n\tAgregarMarcaActivo = \"106\",\r\n\tActualizarMarcaActivo = \"107\",\r\n\tConsultarModeloActivo = \"108\",\r\n\tEliminarModeloActivo = \"109\",\r\n\tAgregarModeloActivo = \"110\",\r\n\tActualizarModeloActivo = \"111\",\r\n\t/**#endregion */\r\n\r\n\t/*Region Productos */\r\n\tAgregarProducto = \"112\",\r\n\tConsultarProducto = \"113\",\r\n\tActualizarProducto = \"114\",\r\n\tEliminarProducto = \"115\",\r\n\r\n\tConsultarAlertados = \"116\",\r\n\tConsultarTransmisiones = \"117\",\r\n\tConsultarSinTransmision = \"118\",\r\n\tGenerarPDFAlertados = \"127\",\r\n\r\n\tAgregarModulo = \"119\",\r\n\tActualizarModulo = \"120\",\r\n\tEliminarModulo = \"121\",\r\n\tConsultarModulo = \"122\",\r\n\r\n\tAgregarPermiso = \"123\",\r\n\tActualizarPermiso = \"124\",\r\n\tConsultarPermiso = \"125\",\r\n\tEliminarPermiso = \"126\",\r\n\r\n\tVisualizarVideos = \"128\",\r\n\r\n\tReporteCentinela = \"129\",\r\n\tAlertaSecundaria = \"130\",\r\n\tAlerta = \"131\",\r\n\tAlertaSalidaGeocerca = \"132\",\r\n\tAlertaBateriaBaja = \"98\",\r\n\tAlertaEnergia = \"99\",\r\n\r\n\tReportePosiscion = \"133\",\r\n\tReporteVelocidad = \"134\",\r\n\tReporteDistancia = \"135\",\r\n\tReporteUltimaTransmision = \"136\",\r\n\tConsultarReportes = \"137\",\r\n EnvioCorreo=\"138\",\r\n\tCategoriasGeocerca=\"139\",\r\n\tVisualizarMDVR = \"140\",\r\n\r\n\tVisaulizarMaqueta = \"141\",\r\n\tReporteProductosCliente = \"142\",\r\n\tMostrarAlertasDVR = \"143\",\r\n\tConsultarAlumbrado = \"144\",\r\n\tConsultarTerminalLectora = \"145\",\r\n\r\n\tConsultarReporteInicioFin = \"146\",\r\n\r\n\tAgregarTerminalLectora = \"147\",\r\n\tActualizarTerminalLectora = \"148\",\r\n\tEliminarTerminalLectora = \"149\",\r\n\tVisualizarLectoras = \"150\",\r\n\r\n\tVisualizarReporteParadas = \"Reporte Paradas\",\r\n\tClienteCostaRica = \"152\",\r\n\r\n\tVisualizarVehiculosUsuario = \"153\",\r\n\tVisualizarFacturacion = \"154\",\r\n\r\n\t/***Pasajeros */\r\n\tSaldoPasajeros=\"157\",\r\n\tConsultarPasajeros=\"156\",\r\n\tListaSaldos =\"159\",\r\n\r\n\t/***Sincronizador */\r\n\tConsultarSincronizador = \"160\",\r\n\r\n\t/**Operadores */\r\n\tAgregarOperador =\"161\",\r\n\tConsultarOperador=\"162\",\r\n\tEliminarOperador=\"163\",\r\n\tActualizarOperador=\"164\",\r\n\tConsultaMantenimiento=\"165\",\r\n\t/**Inventario*/\r\n\tConsultaInventario=\"166\",\r\n\r\n\t/*Garzas*/\r\n\tConsultarGarza = \"167\",\r\n\r\n\t/*LoRaWAN*/\r\n\tConsultarDatosLoRaWAN = \"168\",\r\n\r\n\r\n\t/**Portatiles */\r\n\tAgregarPortatil=\"169\",\r\n\tActualizarPortatil = \"170\",\r\n\tConsultarPortatil=\"171\",\r\n\tEliminarPortatil =\"172\",\r\n\tVisualizarPortatiles=\"173\",\r\n\r\n\t/**Mantenimiento */\r\n\tConsultaServicios=\"174\",\r\n\r\n\t/**inspeccion */\r\n\tConsultadeRegistros =\"176\",\r\n\r\n\t/**Bitácora */\r\n\tBitácora = \"177\",\r\n\r\n\t/**gasolina */\r\n\tAsignacionCombustible=\"179\",\r\n\r\n\t/**Panel ciudadano */\r\n\tAlertaPanelCiudadano=\"180\",\r\n\tAgregarPanel=\"181\",\r\n\tActualizarPanel=\"182\",\r\n\tConsultarPanel=\"183\",\r\n\tEliminarPanel=\"184\",\r\n}\r\n","export class ErrorMessage {\r\n title: string;\r\n message: string;\r\n httpStatus: string;\r\n}\r\n","export class User {\r\n id: string\r\n token: string;\r\n refreshToken: string;\r\n nombre: string;\r\n apellidoPaterno: string;\r\n apellidoMaterno: string;\r\n nombreCompleto: string;\r\n permisos: any[];\r\n idCliente: number;\r\n pic: string;\r\n logo: string;\r\n saldo:string;\r\n tokenHW:string;\r\n}\r\n","export class Autos {\r\n\tid: number;\r\n\tidCliente: number;\r\n\tanio: number;\r\n\tplacas: string;\r\n\teconomico: string;\r\n\tnumeroSerie: string;\r\n\tcolor: string;\r\n\tdescripcion: string;\r\n\timagen: string;\r\n\tmodelo: string;\r\n\testatus: number;\r\n\timeiFk: string;\r\n\tlat: number;\r\n\tlng: number;\r\n\testado: number;\r\n\tignicion: number;\r\n\tvelocidad: number;\r\n\tdireccion: number;\r\n\todometro: number;\r\n\tmarca: string;\r\n\tfechaHoraUltimaPosicion: string;\r\n\testaEnMovimiento: boolean;\r\n\tcliente: string;\r\n\tgeocercas: Geocercas[];\r\n\tfotoOperador:string;\r\n\tnombreOperador:string;\r\n\tcombustible:number;\r\n\tcapacidadTanque:number;\r\n\timeiCombustible:number;\r\n\tidEquipo:number;\r\n}\r\n\r\nexport interface AutosCamara {\r\n\tdeviceID: string,\r\n\tdata: [\r\n\t\t{\r\n\t\t\tdeviceID: string;\r\n\t\t\tlocation: {\r\n\t\t\t\tsatellites: string;\r\n\t\t\t\tdirect: string;\r\n\t\t\t\tspeed: string;\r\n\t\t\t\taltitude: string;\r\n\t\t\t\tlongitude: string;\r\n\t\t\t\tlatitude: string;\r\n\t\t\t\tprecision: string;\r\n\t\t\t\tdtu: string;\r\n\t\t\t\tmode: string;\r\n\t\t\t},\r\n\t\t\tmileage: {\r\n\t\t\t\ttodayDay: string;\r\n\t\t\t\ttotal: string;\r\n\t\t\t}\r\n\t\t}\r\n\t],\r\n\tvehiculo: {\r\n\t\tid: number;\r\n\t\tanio: number;\r\n\t\tplacas: string;\r\n\t\teconomico: string;\r\n\t\tnumeroSerie: string;\r\n\t\tcolor: string;\r\n\t\tdescripcion: string;\r\n\t\timagen: string;\r\n\t\tmodelo: string;\r\n\t\testatus: number;\r\n\t\timeiFk: string;\r\n\t\tlat: number;\r\n\t\tlng: number;\r\n\t\testado: number;\r\n\t\tignicion: number;\r\n\t\tvelocidad: number;\r\n\t\tdireccion: number;\r\n\t\todometro: number;\r\n\t\tmarca: string;\r\n\t\tfechaHoraUltimaPosicion: string;\r\n\t\testaEnMovimiento: false,\r\n\t\tfecha: string;\r\n\t\tidPosicion: number;\r\n\t\tidCliente: number;\r\n\t}\r\n}\r\n\r\n\r\nexport interface Geocercas {\r\n\tid: number;\r\n\tnombre: string;\r\n}\r\n","export class reportePosiciones {\r\n\ttotalDistancia: number;\r\n\tposiciones: posiciones[]\r\n}\r\nexport interface posiciones {\r\n\tfecha: string;\r\n\tignicion: any;\r\n\testado: any;\r\n\tvelocidad: number;\r\n\tlat: number;\r\n\tlng: number;\r\n\tvehiculo: number;\r\n\tid: number;\r\n\tfechaInicial: any;\r\n\tfechaFinal: any;\r\n\tplacas: any;\r\n\teconomico: any\r\n\tmarca: string;\r\n\tmodelo: string;\r\n\ticono: string;\r\n}\r\n","export const IGNICIONES = [\r\n\t{ id: 0, nombre: 'Apagado' },\r\n\t{ id: 1, nombre: 'Encendido' },\r\n\t{ id: null, nombre: 'Sin Datos' },\r\n];\r\n\r\nexport const ESTATUS = [\r\n\t{ id: 0, nombre: 'Inactivo', clase: 'gris' },\r\n\t{ id: 1, nombre: 'Activo',clase: 'verde' },\r\n\t{ id: null, nombre: 'Sin Datos', clase: 'gris' }\r\n];\r\n\r\nexport const ALIMENTACION = [\r\n\t{ id: 0, nombre: 'Desconectado'},\r\n\t{ id: 1, nombre: 'Conectado'},\r\n\t{ id: null, nombre: 'Sin Datos'}\r\n]\r\n\r\nexport const ALERTAS = [\r\n\t{ id: 0, nombre: 'Detenido', clase: 'gris', icono: './assets/media/marcadores/flechaGris.png'},\r\n\t{ id: 1, nombre: 'Movimiento', clase: 'verde', icono: './assets/media/marcadores/flechaVerde.png' },\r\n\t{ id: 2, nombre: 'Alerta Primaria', clase: 'naranja', icono: './assets/media/marcadores/flechaRoja.png'},\r\n\t{ id: 3, nombre: 'Alerta Secundaria', clase: 'amarillo', icono: './assets/media/marcadores/flechaAmarilla.png'},\r\n\t{ id: 4, nombre: 'Detenido mas de 30 min', clase: 'amarillo', icono: './assets/media/marcadores/flechaAmarilla.png'},\r\n\t{ id: 5, nombre: 'Detenido mas de 60 min', clase: 'naranja', icono: './assets/media/marcadores/flechaNaranja.png'},\r\n\t{ id: 6, nombre: 'Detenido mas de 90 min', clase: 'rojo', icono: './assets/media/marcadores/flechaRoja.png' },\r\n\t{ id: 7, nombre: 'Exceso de Velocidad', clase: 'azul', icono: './assets/media/marcadores/flechaAzul.png'},\r\n\t{ id: 8, nombre: 'Fuera de Geocerca', clase: 'morado', icono: './assets/media/marcadores/flechaMorada.png' },\r\n\t{ id: 9, nombre: 'Batería Baja', clase: 'cafe', icono: './assets/media/marcadores/flechaRosa.png'},\r\n\t{ id: 10, nombre: 'Falta de Energía', clase: 'rosa', icono: './assets/media/marcadores/flechaCafe.png'},\r\n\t{ id: 11, nombre: 'Alerta de Movimiento', clase: 'gris', icono: './assets/media/marcadores/flechaGris.png' },\r\n\t{ id: null, nombre: 'Sin Datos', clase: 'gris', icono: './assets/media/marcadores/flechaGris.png'}\r\n];\r\n\r\nexport const GSM = [\r\n\t{ id: 0, nombre: 'Desconocida' },\r\n\t{ id: 1, nombre: 'Mínima' },\r\n\t{ id: 2, nombre: 'Moderada' },\r\n\t{ id: 3, nombre: 'Buena' },\r\n\t{ id: 4, nombre: 'Excelente' },\r\n\t{ id: 5, nombre: 'Desconocida' },\r\n\t{ id: null, nombre: 'Desconocida' }\r\n];\r\n\r\nexport const GPS = [\r\n\t{ id: null, nombre: 'Mala', clase: 'rojo' },\r\n\t{ id: 0, nombre: 'Mala', clase: 'rojo' },\r\n\t{ id: 1, nombre: 'Buena', clase: 'verde' },\r\n\t{ id: 2, nombre: 'Buena', clase: 'verde' },\r\n\t{ id: 3, nombre: 'Buena', clase: 'verde' },\r\n\t{ id: 4, nombre: 'Buena', clase: 'verde'},\r\n\t{ id: 5, nombre: 'Media', clase: 'naranja' },\r\n\t{ id: 6, nombre: 'Media', clase: 'naranja' },\r\n\t{ id: 7, nombre: 'Media', clase: 'naranja' },\r\n];\r\n","export const IconosActivos = [\r\n\t{ id: 7, icono: './assets/media/activos/activo-azul.png' },\r\n\t{ id: 8, icono: './assets/media/activos/activo-morado.png' }\r\n];\r\n\r\nexport const IconosTelefonos = [\r\n\t{ id: 7, icono: './assets/media/telefonos/telefono-azul.png' },\r\n\t{ id: 8, icono: './assets/media/telefonos/telefono-morado.png' }\r\n]\r\n\r\nexport const IconoVehiculo = [\r\n\t{ id: 0, icono: './assets/media/autos/auto_gris.png' },\r\n\t{ id: 1, icono: './assets/media/autos/auto_verde.png' },\r\n\t{ id: 2, icono: './assets/media/autos/auto_rojo.png' },\r\n\t{ id: 3, icono: './assets/media/autos/auto_amarillo.png' },\r\n\t{ id: 4, icono: './assets/media/autos/auto_amarillo.png' },\r\n\t{ id: 5, icono: './assets/media/autos/auto_naranja.png' },\r\n\t{ id: 6, icono: './assets/media/autos/auto_rojo.png' },\r\n\t{ id: 7, icono: './assets/media/autos/auto_azul.png' },\r\n\t{ id: 8, icono: './assets/media/autos/auto_morado.png' },\r\n\t{ id: 9, icono: './assets/media/autos/auto_rosa.png' },\r\n\t{ id: 10, icono: './assets/media/autos/auto_cafe.png' },\r\n\t{ id: 11, icono: './assets/media/autos/auto_gris.png' },\r\n]\r\n\r\nexport const SpinnerApuntador = [\r\n\t{ id: 0, icono: './assets/media/puntos/spinnerGris.png' },\r\n\t{ id: 1, icono: './assets/media/puntos/spinner.png' },\r\n\t{ id: 2, icono: './assets/media/puntos/spinnerAlerta.png' },\r\n\t{ id: 3, icono: './assets/media/puntos/spinnerAmarillo.png' },\r\n\t{ id: 4, icono: './assets/media/puntos/spinnerAmarillo.png' },\r\n\t{ id: 5, icono: './assets/media/puntos/spinnerNaranja.png' },\r\n\t{ id: 6, icono: './assets/media/puntos/spinnerRojo.png' },\r\n\t{ id: 7, icono: './assets/media/puntos/spinnerAzul.png' },\r\n\t{ id: 8, icono: './assets/media/puntos/spinnerMorado.png' },\r\n\t{ id: 9, icono: './assets/media/puntos/spinnerCafe.png' },\r\n\t{ id: 10, icono: './assets/media/puntos/spinnerRosa.png' },\r\n\t{ id: 11, icono: './assets/media/puntos/spinnerGris.png' },\r\n]\r\n\r\nexport const IconoHistorico = [\r\n\t{ id: 0, icono: './assets/media/marcadores/flechaGris.png' },\r\n\t{ id: 1, icono: './assets/media/marcadores/flechaVerde.png' },\r\n\t{ id: 2, icono: './assets/media/marcadores/flechaRoja.png' },\r\n\t{ id: 3, icono: './assets/media/marcadores/flechaAmarilla.png' },\r\n\t{ id: 4, icono: './assets/media/marcadores/flechaAmarilla.png' },\r\n\t{ id: 5, icono: './assets/media/marcadores/flechaNaranja.png' },\r\n\t{ id: 6, icono: './assets/media/marcadores/flechaRoja.png' },\r\n\t{ id: 7, icono: './assets/media/marcadores/flechaAzul.png' },\r\n\t{ id: 8, icono: './assets/media/marcadores/flechaMorada.png' },\r\n\t{ id: 9, icono: './assets/media/marcadores/flechaRosa.png' },\r\n\t{ id: 10, icono: './assets/media/marcadores/flechaCafe.png' },\r\n\t{ id: 11, icono: './assets/media/marcadores/flechaGris.png' },\r\n]\r\n","// Angular\r\nimport { NgModule } from '@angular/core';\r\nimport { RouterModule, Routes } from '@angular/router';\r\n\r\nconst routes: Routes = [\r\n\t// {path: 'auth', loadChildren: () => import('app/views/pages/auth/auth.module').then(m => m.AuthModule)},\r\n\r\n\t// enable this router to set which demo theme to load,\r\n\t// leave the path value empty to enter into nested router in ThemeModule\r\n\t{path: '', loadChildren: 'app/views/auth/auth.module#AuthModule'},\r\n\t{path: 'home', loadChildren: 'app/views/home/home.module#HomeModule'},\r\n\t// {path: '', loadChildren: 'app/views/pages/auth/auth.module#AuthModule'},\r\n\t// {path: 'home', loadChildren: 'app/views/themes/theme.module#ThemeModule'},\r\n\r\n\t{path: '**', redirectTo: 'demo1/error/403', pathMatch: 'full'},\r\n\t{ path: 'views/reportes', loadChildren: () => import('./views/reportes/reportes.module').then(m => m.ReportesModule) },\r\n\t{ path: 'ubicar', loadChildren: () => import('./views/mapa-externo/mapa-externo.module').then(m => m.MapaExternoModule) },\r\n\t/*{\r\n\t\tpath: 'administracion',\r\n\t\tloadChildren: () => import('./views/administracion/administracion.module').then(m => m.AdministracionModule)\r\n\t}*/\r\n\t// {path: '**', redirectTo: 'error/403', pathMatch: 'full'},\r\n];\r\n\r\n@NgModule({\r\n\timports: [\r\n\t\tRouterModule.forRoot(routes)\r\n\t],\r\n\texports: [RouterModule]\r\n})\r\nexport class AppRoutingModule {\r\n}\r\n","\r\n\r\n","import { Subscription } from 'rxjs';\r\n// Angular\r\nimport {\r\n\tChangeDetectionStrategy,\r\n\tComponent,\r\n\tOnDestroy,\r\n\tOnInit\r\n} from '@angular/core';\r\nimport { NavigationEnd, Router } from '@angular/router';\r\n// Layout\r\nimport {\r\n\tLayoutConfigService,\r\n\tSplashScreenService,\r\n\tTranslationService\r\n} from './core/_base/layout';\r\n// language list\r\nimport { locale as enLang } from './core/_config/i18n/en';\r\nimport { locale as chLang } from './core/_config/i18n/ch';\r\nimport { locale as esLang } from './core/_config/i18n/es';\r\nimport { locale as jpLang } from './core/_config/i18n/jp';\r\nimport { locale as deLang } from './core/_config/i18n/de';\r\nimport { locale as frLang } from './core/_config/i18n/fr';\r\n\r\n@Component({\r\n\t// tslint:disable-next-line:component-selector\r\n\tselector: 'body[kt-root]',\r\n\ttemplateUrl: './app.component.html',\r\n\tstyleUrls: ['./app.component.scss'],\r\n\tchangeDetection: ChangeDetectionStrategy.Default\r\n})\r\nexport class AppComponent implements OnInit, OnDestroy {\r\n\t// Public properties\r\n\ttitle = 'Metronic';\r\n\tloader: boolean;\r\n\tprivate unsubscribe: Subscription[] = []; // Read more: => https://brianflove.com/2016/12/11/anguar-2-unsubscribe-observables/\r\n\r\n\t/**\r\n\t * Component constructor\r\n\t *\r\n\t * @param translationService: TranslationService\r\n\t * @param router: Router\r\n\t * @param layoutConfigService: LayoutCongifService\r\n\t * @param splashScreenService: SplashScreenService\r\n\t */\r\n\tconstructor(\r\n\t\tprivate translationService: TranslationService,\r\n\t\tprivate router: Router,\r\n\t\tprivate layoutConfigService: LayoutConfigService,\r\n\t\tprivate splashScreenService: SplashScreenService\r\n\t) {\r\n\t\t// register translations\r\n\t\tthis.translationService.loadTranslations(\r\n\t\t\tenLang,\r\n\t\t\tchLang,\r\n\t\t\tesLang,\r\n\t\t\tjpLang,\r\n\t\t\tdeLang,\r\n\t\t\tfrLang\r\n\t\t);\r\n\t}\r\n\r\n\t/**\r\n\t * @ Lifecycle sequences => https://angular.io/guide/lifecycle-hooks\r\n\t */\r\n\r\n\t/**\r\n\t * On init\r\n\t */\r\n\tngOnInit(): void {\r\n\t\t// enable/disable loader\r\n\t\tthis.loader = this.layoutConfigService.getConfig('loader.enabled');\r\n\r\n\t\tconst routerSubscription = this.router.events.subscribe(event => {\r\n\t\t\tif (event instanceof NavigationEnd) {\r\n\t\t\t\t// hide splash screen\r\n\t\t\t\tthis.splashScreenService.hide();\r\n\r\n\t\t\t\t// scroll to top on every route change\r\n\t\t\t\twindow.scrollTo(0, 0);\r\n\r\n\t\t\t\t// to display back the body content\r\n\t\t\t\tsetTimeout(() => {\r\n\t\t\t\t\tdocument.body.classList.add('kt-page--loaded');\r\n\t\t\t\t}, 500);\r\n\t\t\t}\r\n\t\t});\r\n\t\tthis.unsubscribe.push(routerSubscription);\r\n\t}\r\n\r\n\t/**\r\n\t * On Destroy\r\n\t */\r\n\tngOnDestroy() {\r\n\t\tthis.unsubscribe.forEach(sb => sb.unsubscribe());\r\n\t}\r\n}\r\n","// Angular\r\nimport { BrowserModule, HAMMER_GESTURE_CONFIG } from '@angular/platform-browser';\r\nimport { APP_INITIALIZER, NgModule } from '@angular/core';\r\nimport { TranslateModule } from '@ngx-translate/core';\r\nimport { HttpClientModule } from '@angular/common/http';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\nimport { GestureConfig, MatProgressSpinnerModule } from '@angular/material';\r\nimport { OverlayModule } from '@angular/cdk/overlay';\r\n// Angular in memory\r\nimport { HttpClientInMemoryWebApiModule } from 'angular-in-memory-web-api';\r\n// Perfect Scroll bar\r\nimport { PERFECT_SCROLLBAR_CONFIG, PerfectScrollbarConfigInterface } from 'ngx-perfect-scrollbar';\r\n// SVG inline\r\nimport { InlineSVGModule } from 'ng-inline-svg';\r\n// Env\r\nimport { environment } from '../environments/environment';\r\n// Hammer JS\r\nimport 'hammerjs';\r\n// NGX Permissions\r\nimport { NgxPermissionsModule } from 'ngx-permissions';\r\n// NGRX\r\nimport { StoreModule } from '@ngrx/store';\r\nimport { EffectsModule } from '@ngrx/effects';\r\nimport { StoreRouterConnectingModule } from '@ngrx/router-store';\r\nimport { StoreDevtoolsModule } from '@ngrx/store-devtools';\r\n// State\r\nimport { metaReducers, reducers } from './core/reducers';\r\n// Copmponents\r\nimport { AppComponent } from './app.component';\r\n// Modules\r\nimport { AppRoutingModule } from './app-routing.module';\r\nimport { CoreModule } from './core/core.module';\r\n// Partials\r\nimport { PartialsModule } from './views/partials/partials.module';\r\n// Layout Services\r\nimport {\r\n\tDataTableService,\r\n\tFakeApiService,\r\n\tKtDialogService,\r\n\tLayoutConfigService,\r\n\tLayoutRefService,\r\n\tMenuAsideService,\r\n\tMenuConfigService,\r\n\tMenuHorizontalService,\r\n\tPageConfigService,\r\n\tSplashScreenService,\r\n\tSubheaderService\r\n} from './core/_base/layout';\r\n// Auth\r\nimport { AuthModule } from './views/auth/auth.module';\r\nimport { AuthService } from './core/auth';\r\n// CRUD\r\nimport { HttpUtilsService, LayoutUtilsService, TypesUtilsService } from './core/_base/crud';\r\n// Config\r\nimport { LayoutConfig } from './core/_config/layout.config';\r\n// Highlight JS\r\nimport { HIGHLIGHT_OPTIONS, HighlightLanguage } from 'ngx-highlightjs';\r\nimport * as typescript from 'highlight.js/lib/languages/typescript';\r\nimport * as scss from 'highlight.js/lib/languages/scss';\r\nimport * as xml from 'highlight.js/lib/languages/xml';\r\nimport * as json from 'highlight.js/lib/languages/json';\r\nimport { GoogleChartsModule } from 'angular-google-charts';\r\nimport { GaugeChartModule } from 'angular-gauge-chart'\r\n\r\nimport { ChartsModule } from 'ng2-charts';\r\n\r\nimport { DxDataGridModule, DxButtonModule, DxPopupModule } from 'devextreme-angular';\r\n//import { DxiButtonModule } from 'devextreme-angular/ui/nested/button-dxi';\r\nimport { ToastrModule } from 'ngx-toastr';\r\nimport { SweetAlert2Module } from '@sweetalert2/ngx-sweetalert2';\r\nimport { HopeTRComponent } from './views/hope-tr/hope-tr.component';\r\nimport { AngularFirestore } from '@angular/fire/firestore';\r\n// tslint:disable-next-line:class-name\r\nconst DEFAULT_PERFECT_SCROLLBAR_CONFIG: PerfectScrollbarConfigInterface = {\r\n\twheelSpeed: 0.5,\r\n\tswipeEasing: true,\r\n\tminScrollbarLength: 40,\r\n\tmaxScrollbarLength: 300,\r\n};\r\n\r\nexport function initializeLayoutConfig(appConfig: LayoutConfigService) {\r\n\t// initialize app by loading default demo layout config\r\n\treturn () => {\r\n\t\tif (appConfig.getConfig() === null) {\r\n\t\t\tappConfig.loadConfigs(new LayoutConfig().configs);\r\n\t\t}\r\n\t};\r\n}\r\n\r\nexport function hljsLanguages(): HighlightLanguage[] {\r\n\treturn [\r\n\t\t{name: 'typescript', func: typescript},\r\n\t\t{name: 'scss', func: scss},\r\n\t\t{name: 'xml', func: xml},\r\n\t\t{name: 'json', func: json}\r\n\t];\r\n}\r\n\r\n@NgModule({\r\n\tdeclarations: [AppComponent],\r\n\timports: [\r\n\t\tBrowserAnimationsModule,\r\n\t\tBrowserModule,\r\n\t\tAppRoutingModule,\r\n\t\tHttpClientModule,\r\n\t\tenvironment.isMockEnabled ? HttpClientInMemoryWebApiModule.forRoot(FakeApiService, {\r\n\t\t\tpassThruUnknownUrl: true,\r\n\t\t\tdataEncapsulation: false\r\n\t\t}) : [],\r\n\t\tNgxPermissionsModule.forRoot(),\r\n\t\tPartialsModule,\r\n\t\tCoreModule,\r\n\t\tOverlayModule,\r\n\t\tStoreModule.forRoot(reducers, {metaReducers}),\r\n\t\tEffectsModule.forRoot([]),\r\n\t\tStoreRouterConnectingModule.forRoot({stateKey: 'router'}),\r\n\t\tStoreDevtoolsModule.instrument(),\r\n\t\tAuthModule.forRoot(),\r\n\t\tTranslateModule.forRoot(),\r\n\t\tMatProgressSpinnerModule,\r\n\t\tInlineSVGModule.forRoot(),\r\n\t\tDxDataGridModule,\r\n\t\tDxButtonModule,\r\n\t\tDxPopupModule,\r\n\t\tToastrModule.forRoot(),\r\n\t\tSweetAlert2Module.forRoot(),\r\n\t\tGoogleChartsModule.forRoot(),\r\n\t\tChartsModule,\r\n\t\tGaugeChartModule,\r\n\r\n\t],\r\n\texports: [],\r\n\tproviders: [\r\n\t\tAuthService,\r\n\t\tLayoutConfigService,\r\n\t\tLayoutRefService,\r\n\t\tMenuConfigService,\r\n\t\tPageConfigService,\r\n\t\tKtDialogService,\r\n\t\tDataTableService,\r\n\t\tAngularFirestore,\r\n\t\tSplashScreenService,\r\n\t\t{\r\n\t\t\tprovide: PERFECT_SCROLLBAR_CONFIG,\r\n\t\t\tuseValue: DEFAULT_PERFECT_SCROLLBAR_CONFIG\r\n\t\t},\r\n\t\t{\r\n\t\t\tprovide: HAMMER_GESTURE_CONFIG,\r\n\t\t\tuseClass: GestureConfig\r\n\t\t},\r\n\t\t{\r\n\t\t\t// layout config initializer\r\n\t\t\tprovide: APP_INITIALIZER,\r\n\t\t\tuseFactory: initializeLayoutConfig,\r\n\t\t\tdeps: [LayoutConfigService], multi: true\r\n\t\t},\r\n\t\t{\r\n\t\t\tprovide: HIGHLIGHT_OPTIONS,\r\n\t\t\tuseValue: {languages: hljsLanguages}\r\n\t\t},\r\n\t\t// template services\r\n\t\tSubheaderService,\r\n\t\tMenuHorizontalService,\r\n\t\tMenuAsideService,\r\n\t\tHttpUtilsService,\r\n\t\tTypesUtilsService,\r\n\t\tLayoutUtilsService,\r\n\t],\r\n\tbootstrap: [AppComponent]\r\n})\r\nexport class AppModule {\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { ErrorMessage } from './_entities/ErrorMessage';\r\nimport { throwError } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport default class BaseService {\r\n\r\n constructor() { }\r\n\r\n protected handleError(error: Response | any) {\r\n const errorMessage: ErrorMessage = new ErrorMessage();\r\n errorMessage.httpStatus = error.status;\r\n console.log(error);\r\n return throwError(errorMessage);\r\n }\r\n}\r\n","// Models\r\nexport { BaseModel } from './models/_base.model';\r\nexport { BaseDataSource } from './models/_base.datasource';\r\nexport { QueryParamsModel } from './models/query-models/query-params.model';\r\nexport { QueryResultsModel } from './models/query-models/query-results.model';\r\nexport { HttpExtenstionsModel } from './models/http-extentsions-model';\r\n// Utils\r\nexport { HttpUtilsService } from './utils/http-utils.service';\r\nexport { TypesUtilsService } from './utils/types-utils.service';\r\nexport { InterceptService } from './utils/intercept.service';\r\nexport { LayoutUtilsService, MessageType } from './utils/layout-utils.service';\r\n","// Angular\r\nimport { CollectionViewer, DataSource } from '@angular/cdk/collections';\r\n// RxJS\r\nimport { Observable, BehaviorSubject, combineLatest, Subscription, of } from 'rxjs';\r\n// CRUD\r\nimport { HttpExtenstionsModel } from './http-extentsions-model';\r\nimport { QueryParamsModel } from './query-models/query-params.model';\r\nimport { QueryResultsModel } from './query-models/query-results.model';\r\nimport { BaseModel } from './_base.model';\r\nimport { skip, distinctUntilChanged } from 'rxjs/operators';\r\n\r\n// Why not use MatTableDataSource?\r\n/* In this example, we will not be using the built-in MatTableDataSource because its designed for filtering,\r\n\tsorting and pagination of a client - side data array.\r\n\tRead the article: 'https://blog.angular-university.io/angular-material-data-table/'\r\n**/\r\nexport class BaseDataSource implements DataSource {\r\n\tentitySubject = new BehaviorSubject([]);\r\n\thasItems: boolean = true; // Need to show message: 'No records found'\r\n\r\n\t// Loading | Progress bar\r\n\tloading$: Observable;\r\n\tisPreloadTextViewed$: Observable = of(true);\r\n\r\n\t// Paginator | Paginators count\r\n\tpaginatorTotalSubject = new BehaviorSubject(0);\r\n\tpaginatorTotal$: Observable;\r\n\tsubscriptions: Subscription[] = [];\r\n\r\n\tconstructor() {\r\n\t\tthis.paginatorTotal$ = this.paginatorTotalSubject.asObservable();\r\n\r\n\t\t// subscribe hasItems to (entitySubject.length==0)\r\n\t\tconst hasItemsSubscription = this.paginatorTotal$.pipe(\r\n\t\t\tdistinctUntilChanged(),\r\n\t\t\tskip(1)\r\n\t\t).subscribe(res => this.hasItems = res > 0);\r\n\t\tthis.subscriptions.push(hasItemsSubscription);\r\n\t}\r\n\r\n\tconnect(collectionViewer: CollectionViewer): Observable {\r\n\t\t// Connecting data source\r\n return this.entitySubject.asObservable();\r\n }\r\n\r\n\tdisconnect(collectionViewer: CollectionViewer): void {\r\n\t\t// Disonnecting data source\r\n this.entitySubject.complete();\r\n\t\tthis.paginatorTotalSubject.complete();\r\n\t\tthis.subscriptions.forEach(sb => sb.unsubscribe());\r\n\t}\r\n\r\n\tbaseFilter(_entities: any[], _queryParams: QueryParamsModel, _filtrationFields: string[] = []): QueryResultsModel {\r\n\t\tconst httpExtention = new HttpExtenstionsModel();\r\n\t\treturn httpExtention.baseFilter(_entities, _queryParams, _filtrationFields);\r\n\t}\r\n\r\n\tsortArray(_incomingArray: any[], _sortField: string = '', _sortOrder: string = 'asc'): any[] {\r\n\t\tconst httpExtention = new HttpExtenstionsModel();\r\n\t\treturn httpExtention.sortArray(_incomingArray, _sortField, _sortOrder);\r\n\t}\r\n\r\n\tsearchInArray(_incomingArray: any[], _queryObj: any, _filtrationFields: string[] = []): any[] {\r\n\t\tconst httpExtention = new HttpExtenstionsModel();\r\n\t\treturn httpExtention.searchInArray(_incomingArray, _queryObj, _filtrationFields);\r\n\t}\r\n}\r\n","export class BaseModel {\r\n\t// Edit\r\n\t_isEditMode: boolean = false;\r\n\t// Log\r\n\t_userId: number = 0; // Admin\r\n\t_createdDate: string;\r\n\t_updatedDate: string;\r\n}\r\n","// CRUD\r\nimport { QueryParamsModel } from './query-models/query-params.model';\r\nimport { QueryResultsModel } from './query-models/query-results.model';\r\n\r\nexport class HttpExtenstionsModel {\r\n\r\n\t/**\r\n\t * Filtration with sorting\r\n\t * First do Sort then filter\r\n\t *\r\n\t * @param _entities: any[]\r\n\t * @param _queryParams: QueryParamsModel\r\n\t * @param _filtrationFields: string[]\r\n\t */\r\n\tbaseFilter(_entities: any[], _queryParams: QueryParamsModel, _filtrationFields: string[] = []): QueryResultsModel {\r\n\t\t// Filtration\r\n\t\tlet entitiesResult = this.searchInArray(_entities, _queryParams.filter, _filtrationFields);\r\n\r\n\t\t// Sorting\r\n\t\t// start\r\n\t\tif (_queryParams.sortField) {\r\n\t\t\tentitiesResult = this.sortArray(entitiesResult, _queryParams.sortField, _queryParams.sortOrder);\r\n\t\t}\r\n\t\t// end\r\n\r\n\t\t// Paginator\r\n\t\t// start\r\n\t\tconst totalCount = entitiesResult.length;\r\n\t\tconst initialPos = _queryParams.pageNumber * _queryParams.pageSize;\r\n\t\tentitiesResult = entitiesResult.slice(initialPos, initialPos + _queryParams.pageSize);\r\n\t\t// end\r\n\r\n\t\tconst queryResults = new QueryResultsModel();\r\n\t\tqueryResults.items = entitiesResult;\r\n\t\tqueryResults.totalCount = totalCount;\r\n\t\treturn queryResults;\r\n\t}\r\n\r\n\t/**\r\n\t * Sort array by field name and order-type\r\n\t * @param _incomingArray: any[]\r\n\t * @param _sortField: string\r\n\t * @param _sortOrder: string\r\n\t */\r\n\tsortArray(_incomingArray: any[], _sortField: string = '', _sortOrder: string = 'asc'): any[] {\r\n\t\tif (!_sortField) {\r\n\t\t\treturn _incomingArray;\r\n\t\t}\r\n\r\n\t\tlet result: any[] = [];\r\n\t\tresult = _incomingArray.sort((a, b) => {\r\n\t\t\tif (a[_sortField] < b[_sortField]) {\r\n\t\t\t\treturn _sortOrder === 'asc' ? -1 : 1;\r\n\t\t\t}\r\n\r\n\t\t\tif (a[_sortField] > b[_sortField]) {\r\n\t\t\t\treturn _sortOrder === 'asc' ? 1 : -1;\r\n\t\t\t}\r\n\r\n\t\t\treturn 0;\r\n\t\t});\r\n\t\treturn result;\r\n\t}\r\n\r\n\t/**\r\n\t * Filter array by some fields\r\n\t *\r\n\t * @param _incomingArray: any[]\r\n\t * @param _queryObj: any\r\n\t * @param _filtrationFields: string[]\r\n\t */\r\n\tsearchInArray(_incomingArray: any[], _queryObj: any, _filtrationFields: string[] = []): any[] {\r\n\t\tconst result: any[] = [];\r\n\t\tlet resultBuffer: any[] = [];\r\n\t\tconst indexes: number[] = [];\r\n\t\tlet firstIndexes: number[] = [];\r\n\t\tlet doSearch: boolean = false;\r\n\r\n\t\t_filtrationFields.forEach(item => {\r\n\t\t\tif (item in _queryObj) {\r\n\t\t\t\t_incomingArray.forEach((element, index) => {\r\n\t\t\t\t\tif (element[item] === _queryObj[item]) {\r\n\t\t\t\t\t\tfirstIndexes.push(index);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t\tfirstIndexes.forEach(element => {\r\n\t\t\t\t\tresultBuffer.push(_incomingArray[element]);\r\n\t\t\t\t});\r\n\t\t\t\t_incomingArray = resultBuffer.slice(0);\r\n\t\t\t\tresultBuffer = [].slice(0);\r\n\t\t\t\tfirstIndexes = [].slice(0);\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t\tObject.keys(_queryObj).forEach(key => {\r\n\t\t\tconst searchText = _queryObj[key].toString().trim().toLowerCase();\r\n\t\t\tif (key && !_filtrationFields.some(e => e === key) && searchText) {\r\n\t\t\t\tdoSearch = true;\r\n\t\t\t\ttry {\r\n\t\t\t\t\t_incomingArray.forEach((element, index) => {\r\n\t\t\t\t\t\tif (element[key]) {\r\n\t\t\t\t\t\t\tconst _val = element[key].toString().trim().toLowerCase();\r\n\t\t\t\t\t\t\tif (_val.indexOf(searchText) > -1 && indexes.indexOf(index) === -1) {\r\n\t\t\t\t\t\t\t\tindexes.push(index);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t\t\t} catch (ex) {\r\n\t\t\t\t\tconsole.log(ex, key, searchText);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t\tif (!doSearch) {\r\n\t\t\treturn _incomingArray;\r\n\t\t}\r\n\r\n\t\tindexes.forEach(re => {\r\n\t\t\tresult.push(_incomingArray[re]);\r\n\t\t});\r\n\r\n\t\treturn result;\r\n\t}\r\n}\r\n","export class QueryParamsModel {\r\n\t// fields\r\n\tfilter: any;\r\n\tsortOrder: string; // asc || desc\r\n\tsortField: string;\r\n\tpageNumber: number;\r\n\tpageSize: number;\r\n\r\n\t// constructor overrides\r\n\tconstructor(_filter: any,\r\n\t\t_sortOrder: string = 'asc',\r\n\t\t_sortField: string = '',\r\n\t\t_pageNumber: number = 0,\r\n\t\t_pageSize: number = 10) {\r\n\t\tthis.filter = _filter;\r\n\t\tthis.sortOrder = _sortOrder;\r\n\t\tthis.sortField = _sortField;\r\n\t\tthis.pageNumber = _pageNumber;\r\n\t\tthis.pageSize = _pageSize;\r\n\t}\r\n}\r\n","export class QueryResultsModel {\r\n\t// fields\r\n\titems: any[];\r\n\ttotalCount: number;\r\n\terrorMessage: string;\r\n\r\n\tconstructor(_items: any[] = [], _totalCount: number = 0, _errorMessage: string = '') {\r\n\t\tthis.items = _items;\r\n\t\tthis.totalCount = _totalCount;\r\n\t}\r\n}\r\n","// Angular\r\nimport { Injectable } from '@angular/core';\r\nimport { HttpParams, HttpHeaders } from '@angular/common/http';\r\n// CRUD\r\nimport { QueryResultsModel } from '../models/query-models/query-results.model';\r\nimport { QueryParamsModel } from '../models/query-models/query-params.model';\r\nimport { HttpExtenstionsModel } from '../../crud/models/http-extentsions-model';\r\n\r\n@Injectable()\r\nexport class HttpUtilsService {\r\n\t/**\r\n\t * Prepare query http params\r\n\t * @param queryParams: QueryParamsModel\r\n\t */\r\n\tgetFindHTTPParams(queryParams): HttpParams {\r\n\t\tconst params = new HttpParams()\r\n\t\t\t.set('lastNamefilter', queryParams.filter)\r\n\t\t\t.set('sortOrder', queryParams.sortOrder)\r\n\t\t\t.set('sortField', queryParams.sortField)\r\n\t\t\t.set('pageNumber', queryParams.pageNumber.toString())\r\n\t\t\t.set('pageSize', queryParams.pageSize.toString());\r\n\r\n\t\treturn params;\r\n\t}\r\n\r\n\t/**\r\n\t * get standard content-type\r\n\t */\r\n\tgetHTTPHeaders(): HttpHeaders {\r\n\t\tconst result = new HttpHeaders();\r\n\t\tresult.set('Content-Type', 'application/json');\r\n\t\treturn result;\r\n\t}\r\n\r\n\tbaseFilter(_entities: any[], _queryParams: QueryParamsModel, _filtrationFields: string[] = []): QueryResultsModel {\r\n\t\tconst httpExtention = new HttpExtenstionsModel();\r\n\t\treturn httpExtention.baseFilter(_entities, _queryParams, _filtrationFields);\r\n\t}\r\n\r\n\tsortArray(_incomingArray: any[], _sortField: string = '', _sortOrder: string = 'asc'): any[] {\r\n\t\tconst httpExtention = new HttpExtenstionsModel();\r\n\t\treturn httpExtention.sortArray(_incomingArray, _sortField, _sortOrder);\r\n\t}\r\n\r\n\tsearchInArray(_incomingArray: any[], _queryObj: any, _filtrationFields: string[] = []): any[] {\r\n\t\tconst httpExtention = new HttpExtenstionsModel();\r\n\t\treturn httpExtention.searchInArray(_incomingArray, _queryObj, _filtrationFields);\r\n\t}\r\n}\r\n","// Angular\r\nimport { Injectable, Injector } from '@angular/core';\r\nimport { HttpEvent, HttpInterceptor, HttpHandler, HttpRequest, HttpResponse } from '@angular/common/http';\r\n// RxJS\r\nimport { Observable } from 'rxjs';\r\nimport { tap } from 'rxjs/operators';\r\n//import { debug } from 'util';\r\nimport { AuthService } from '../../../../views/auth/auth.service';\r\n\r\n/**\r\n * More information there => https://medium.com/@MetonymyQT/angular-http-interceptors-what-are-they-and-how-to-use-them-52e060321088\r\n */\r\n@Injectable()\r\nexport class InterceptService implements HttpInterceptor {\r\n\tconstructor(public auth: AuthService, private injector: Injector) {}\r\n\t// intercept request and add token\r\n\tintercept(\r\n\t\trequest: HttpRequest,\r\n\t\tnext: HttpHandler\r\n\t): Observable> {\r\n\t\tconst auth = this.injector.get(AuthService);\r\n\t\tconst token = auth.getToken();\r\n\t\tif (token) {\r\n\t\t\trequest = request.clone({\r\n\t\t\t\tsetHeaders: {\r\n\t\t\t\t\tAuthorization: `Bearer ${token}`\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t}\r\n\t\tif (request.body instanceof FormData) {\r\n\t\t\tconsole.log('Ignoring FormData to avoid setHeaders');\r\n\t\t} else {\r\n\t\t\tif (!request.headers.has('Content-Type')) {\r\n\t\t\t\trequest = request.clone({\r\n\t\t\t\t\tsetHeaders: {\r\n\t\t\t\t\t\t'Content-Type': `application/json`\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t}\r\n\t\treturn next.handle(request);\r\n\r\n\t\t// tslint:disable-next-line:no-debugger\r\n\t\t// modify request\r\n\t\t// request = request.clone({\r\n\t\t// \tsetHeaders: {\r\n\t\t// \t\tAuthorization: `Bearer ${localStorage.getItem('accessToken')}`\r\n\t\t// \t}\r\n\t\t// });\r\n\t\t// console.log('----request----');\r\n\t\t// console.log(request);\r\n\t\t// console.log('--- end of request---');\r\n\r\n\t\t// return next.handle(request).pipe(\r\n\t\t// \ttap(\r\n\t\t// \t\tevent => {\r\n\t\t// \t\t\t if (event instanceof HttpResponse) {\r\n\t\t// \t\t\t\t// console.log('all looks good');\r\n\t\t// \t\t\t\t// http response status code\r\n\t\t// \t\t\t\t// console.log(event.status);\r\n\t\t// \t\t\t}\r\n\t\t// \t\t},\r\n\t\t// \t\terror => {\r\n\t\t// \t\t\t// http response status code\r\n\t\t// \t\t\t// console.log('----response----');\r\n\t\t// \t\t\t// console.error('status code:');\r\n\t\t// \t\t\t// tslint:disable-next-line:no-debugger\r\n\t\t// \t\t\tconsole.error(error.status);\r\n\t\t// \t\t\tconsole.error(error.message);\r\n\t\t// \t\t\t// console.log('--- end of response---');\r\n\t\t// \t\t}\r\n\t\t// \t)\r\n\t\t// );\r\n\t}\r\n}\r\n","// Angular\r\nimport { Injectable } from '@angular/core';\r\nimport { MatSnackBar, MatDialog } from '@angular/material';\r\n// Partials for CRUD\r\nimport { ActionNotificationComponent,\r\n\tDeleteEntityDialogComponent,\r\n\tFetchEntityDialogComponent,\r\n\tUpdateStatusDialogComponent\r\n} from '../../../../views/partials/content/crud';\r\n\r\nexport enum MessageType {\r\n\tCreate,\r\n\tRead,\r\n\tUpdate,\r\n\tDelete\r\n}\r\n\r\n@Injectable()\r\nexport class LayoutUtilsService {\r\n\t/**\r\n\t * Service constructor\r\n\t *\r\n\t * @param snackBar: MatSnackBar\r\n\t * @param dialog: MatDialog\r\n\t */\r\n\tconstructor(private snackBar: MatSnackBar,\r\n\t\tprivate dialog: MatDialog) { }\r\n\r\n\t/**\r\n\t * Showing (Mat-Snackbar) Notification\r\n\t *\r\n\t * @param message: string\r\n\t * @param type: MessageType\r\n\t * @param duration: number\r\n\t * @param showCloseButton: boolean\r\n\t * @param showUndoButton: boolean\r\n\t * @param undoButtonDuration: number\r\n\t * @param verticalPosition: 'top' | 'bottom' = 'top'\r\n\t */\r\n\tshowActionNotification(\r\n\t\t_message: string,\r\n\t\t_type: MessageType = MessageType.Create,\r\n\t\t_duration: number = 10000,\r\n\t\t_showCloseButton: boolean = true,\r\n\t\t_showUndoButton: boolean = true,\r\n\t\t_undoButtonDuration: number = 3000,\r\n\t\t_verticalPosition: 'top' | 'bottom' = 'bottom'\r\n\t) {\r\n\t\tconst _data = {\r\n\t\t\tmessage: _message,\r\n\t\t\tsnackBar: this.snackBar,\r\n\t\t\tshowCloseButton: _showCloseButton,\r\n\t\t\tshowUndoButton: _showUndoButton,\r\n\t\t\tundoButtonDuration: _undoButtonDuration,\r\n\t\t\tverticalPosition: _verticalPosition,\r\n\t\t\ttype: _type,\r\n\t\t\taction: 'Undo'\r\n\t\t};\r\n\t\treturn this.snackBar.openFromComponent(ActionNotificationComponent, {\r\n\t\t\tduration: _duration,\r\n\t\t\tdata: _data,\r\n\t\t\tverticalPosition: _verticalPosition\r\n\t\t});\r\n\t}\r\n\r\n\t/**\r\n\t * Showing Confirmation (Mat-Dialog) before Entity Removing\r\n\t *\r\n\t * @param title: stirng\r\n\t * @param description: stirng\r\n\t * @param waitDesciption: string\r\n\t */\r\n\tdeleteElement(title: string = '', description: string = '', waitDesciption: string = '') {\r\n\t\treturn this.dialog.open(DeleteEntityDialogComponent, {\r\n\t\t\tdata: { title, description, waitDesciption },\r\n\t\t\twidth: '440px'\r\n\t\t});\r\n\t}\r\n\r\n\t/**\r\n\t * Showing Fetching Window(Mat-Dialog)\r\n\t *\r\n\t * @param _data: any\r\n\t */\r\n\tfetchElements(_data) {\r\n\t\treturn this.dialog.open(FetchEntityDialogComponent, {\r\n\t\t\tdata: _data,\r\n\t\t\twidth: '400px'\r\n\t\t});\r\n\t}\r\n\r\n\t/**\r\n\t * Showing Update Status for Entites Window\r\n\t *\r\n\t * @param title: string\r\n\t * @param statuses: string[]\r\n\t * @param messages: string[]\r\n\t */\r\n\tupdateStatusForEntities(title, statuses, messages) {\r\n\t\treturn this.dialog.open(UpdateStatusDialogComponent, {\r\n\t\t\tdata: { title, statuses, messages },\r\n\t\t\twidth: '480px'\r\n\t\t});\r\n\t}\r\n}\r\n","/** Angular */\r\nimport { Injectable } from '@angular/core';\r\n\r\n@Injectable()\r\nexport class TypesUtilsService {\r\n\t/**\r\n\t * Convert number to string and addinng '0' before\r\n\t *\r\n\t * @param value: number\r\n\t */\r\n\tpadNumber(value: number) {\r\n\t\tif (this.isNumber(value)) {\r\n\t\t\treturn `0${value}`.slice(-2);\r\n\t\t} else {\r\n\t\t\treturn '';\r\n\t\t}\r\n\t}\r\n\r\n\t/**\r\n\t * Checking value type equals to Number\r\n\t *\r\n\t * @param value: any\r\n\t */\r\n\tisNumber(value: any): boolean {\r\n\t\treturn !isNaN(this.toInteger(value));\r\n\t}\r\n\r\n\t/**\r\n\t * Covert value to number\r\n\t *\r\n\t * @param value: any\r\n\t */\r\n\ttoInteger(value: any): number {\r\n\t\treturn parseInt(`${value}`, 10);\r\n\t}\r\n\r\n\t/**\r\n\t * Convert date to string with 'MM/dd/yyyy' format\r\n\t *\r\n\t * @param date: Date\r\n\t */\r\n\tdateFormat(date: Date): string {\r\n\t\tconst month = date.getMonth() + 1;\r\n\t\tconst day = date.getDate();\r\n\t\tconst year = date.getFullYear();\r\n\t\tif (date) {\r\n\t\t\treturn `${month}/${day}/${year}`;\r\n\t\t}\r\n\r\n\t\treturn '';\r\n\t}\r\n\r\n\t/**\r\n\t * Convert Date to string with custom format 'MM/dd/yyyy'\r\n\t *\r\n\t * @param date: any\r\n\t */\r\n\tdateCustomFormat(date: any): string {\r\n\t\tlet stringDate: string = '';\r\n\t\tif (date) {\r\n\t\t\tstringDate += this.isNumber(date.month) ? this.padNumber(date.month) + '/' : '';\r\n stringDate += this.isNumber(date.day) ? this.padNumber(date.day) + '/' : '';\r\n\r\n\t\t\tstringDate += date.year;\r\n }\r\n return stringDate;\r\n\t}\r\n\r\n\t/**\r\n\t * Convert string to DateFormatter (For Reactive Forms Validators)\r\n\t *\r\n\t * @param dateInStr: string (format => 'MM/dd/yyyy')\r\n\t */\r\n\tgetDateFormatterFromString(dateInStr: string): any {\r\n\t\tif (dateInStr && dateInStr.length > 0) {\r\n\t\t\tconst dateParts = dateInStr.trim().split('/');\r\n\t\t\treturn [\r\n\t\t\t\t{\r\n\t\t\t\t\tyear: this.toInteger(dateParts[2]),\r\n\t\t\t\t\tmonth: this.toInteger(dateParts[0]),\r\n\t\t\t\t\tday: this.toInteger(dateParts[1])\r\n\t\t\t\t}\r\n\t\t\t];\r\n\t\t}\r\n\r\n\t\tconst _date = new Date();\r\n\t\treturn [\r\n\t\t\t{\r\n\t\t\t\tyear: _date.getFullYear(),\r\n\t\t\t\tmonth: _date.getMonth() + 1,\r\n\t\t\t\tday: _date.getDay()\r\n\t\t\t}\r\n\t\t];\r\n\t}\r\n\r\n\t/**\r\n\t * Convert string to Date\r\n\t *\r\n\t * @param dateInStr: string (format => 'MM/dd/yyyy')\r\n\t */\r\n\tgetDateFromString(dateInStr: string = ''): Date {\r\n\t\tif (dateInStr && dateInStr.length > 0) {\r\n\t\t\tconst dateParts = dateInStr.trim().split('/');\r\n\t\t\tconst year = this.toInteger(dateParts[2]);\r\n\t\t\tconst month = this.toInteger(dateParts[0]);\r\n\t\t\tconst day = this.toInteger(dateParts[1]);\r\n\t\t\t// tslint:disable-next-line:prefer-const\r\n\t\t\tlet result = new Date();\r\n\t\t\tresult.setDate(day);\r\n\t\t\tresult.setMonth(month - 1);\r\n\t\t\tresult.setFullYear(year);\r\n\t\t\treturn result;\r\n\t\t}\r\n\r\n\t\treturn new Date();\r\n\t}\r\n\r\n\r\n\t/**\r\n\t * Convert Date to string with format 'MM/dd/yyyy'\r\n\t * @param _date: Date?\r\n\t */\r\n\tgetDateStringFromDate(_date: Date = new Date()): string {\r\n\t\tconst month = _date.getMonth() + 1;\r\n\t\tconst year = _date.getFullYear();\r\n\t\tconst date = _date.getDate();\r\n\t\treturn `${month}/${date}/${year}`;\r\n\t}\r\n}\r\n","// Angular\r\nimport { Directive, ElementRef, OnDestroy, OnInit } from '@angular/core';\r\nimport { animate, AnimationBuilder, AnimationPlayer, style } from '@angular/animations';\r\nimport { NavigationEnd, Router } from '@angular/router';\r\n// RxJS\r\nimport { Subscription } from 'rxjs';\r\n\r\n/**\r\n * Page load animation\r\n *\r\n */\r\n@Directive({\r\n\tselector: '[ktContentAnimate]'\r\n})\r\nexport class ContentAnimateDirective implements OnInit, OnDestroy {\r\n\t// Public properties\r\n\tplayer: AnimationPlayer;\r\n\t// Private properties\r\n\tprivate events: Subscription;\r\n\r\n\t/**\r\n\t * Directive Consturctor\r\n\t * @param el: ElementRef\r\n\t * @param router: Router\r\n\t * @param animationBuilder: AnimationBuilder\r\n\t */\r\n\tconstructor(\r\n\t\tprivate el: ElementRef,\r\n\t\tprivate router: Router,\r\n\t\tprivate animationBuilder: AnimationBuilder) {\r\n\t}\r\n\r\n\t/**\r\n\t * @ Lifecycle sequences => https://angular.io/guide/lifecycle-hooks\r\n\t */\r\n\r\n\t/**\r\n\t * On init\r\n\t */\r\n\tngOnInit(): void {\r\n\t\t// animate the content\r\n\t\tthis.initAnimate();\r\n\t\t// animate page load\r\n\t\tthis.events = this.router.events.subscribe(event => {\r\n\t\t\tif (event instanceof NavigationEnd) {\r\n\t\t\t\tthis.player.play();\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\t/**\r\n\t * On destroy\r\n\t */\r\n\tngOnDestroy(): void {\r\n\t\tthis.events.unsubscribe();\r\n\t\tthis.player.destroy();\r\n\t}\r\n\r\n\t/**\r\n\t * Animate page load\r\n\t */\r\n\tinitAnimate() {\r\n\t\tthis.player = this.animationBuilder\r\n\t\t\t.build([\r\n\t\t\t\t// style({opacity: 0, transform: 'translateY(15px)'}),\r\n\t\t\t\t// animate(500, style({opacity: 1, transform: 'translateY(0)'})),\r\n\t\t\t\t// style({transform: 'none'}),\r\n\t\t\t\tstyle({\r\n\t\t\t\t\ttransform: 'translateY(-3%)',\r\n\t\t\t\t\topacity: 0,\r\n\t\t\t\t\tposition: 'static'\r\n\t\t\t\t}),\r\n\t\t\t\tanimate(\r\n\t\t\t\t\t'0.5s ease-in-out',\r\n\t\t\t\t\tstyle({transform: 'translateY(0%)', opacity: 1})\r\n\t\t\t\t)\r\n\t\t\t])\r\n\t\t\t.create(this.el.nativeElement);\r\n\t}\r\n}\r\n","// Angular\r\nimport { AfterViewInit, Directive, ElementRef, Input } from '@angular/core';\r\n// ObjectPath\r\nimport * as objectPath from 'object-path';\r\n\r\nexport interface HeaderOptions {\r\n\tclassic?: any;\r\n\toffset?: any;\r\n\tminimize?: any;\r\n}\r\n\r\n/**\r\n * Configure Header\r\n */\r\n@Directive({\r\n\tselector: '[ktHeader]',\r\n\texportAs: 'ktHeader',\r\n})\r\nexport class HeaderDirective implements AfterViewInit {\r\n\t@Input() options: HeaderOptions = {};\r\n\r\n\t/**\r\n\t * Directive Constructor\r\n\t * @param el: ElementRef\r\n\t */\r\n\tconstructor(private el: ElementRef) {\r\n\t}\r\n\r\n\t/**\r\n\t * @ Lifecycle sequences => https://angular.io/guide/lifecycle-hooks\r\n\t */\r\n\r\n\t/**\r\n\t * After view init\r\n\t */\r\n\tngAfterViewInit(): void {\r\n\t\tthis.setupOptions();\r\n\r\n\t\tconst header = new KTHeader(this.el.nativeElement, this.options);\r\n\t}\r\n\r\n\t/**\r\n\t * Setup options to header\r\n\t */\r\n\tprivate setupOptions() {\r\n\t\tif (this.el.nativeElement.getAttribute('data-ktheader-minimize') == '1') {\r\n\t\t\tobjectPath.set(this.options, 'minimize.desktop.on', 'kt-header--minimize');\r\n\t\t\tobjectPath.set(this.options, 'offset.desktop', 150);\r\n\t\t}\r\n\t}\r\n}\r\n","// Angular\r\nimport { AfterViewInit, Directive, ElementRef, Input } from '@angular/core';\r\n// Object-Path\r\nimport * as objectPath from 'object-path';\r\n\r\nexport interface MenuOptions {\r\n\tscroll?: any;\r\n\tsubmenu?: any;\r\n\taccordion?: any;\r\n}\r\n\r\n/**\r\n * Configure menu\r\n */\r\n@Directive({\r\n\tselector: '[ktMenu]',\r\n\texportAs: 'ktMenu',\r\n})\r\nexport class MenuDirective implements AfterViewInit {\r\n\t// Public propeties\r\n\t@Input() options: MenuOptions;\r\n\t// Private properites\r\n\tprivate menu: any;\r\n\r\n\t/**\r\n\t * Directive Constructor\r\n\t * @param el: ElementRef\r\n\t */\r\n\tconstructor(private el: ElementRef) {\r\n\t}\r\n\r\n\t/**\r\n\t * @ Lifecycle sequences => https://angular.io/guide/lifecycle-hooks\r\n\t */\r\n\r\n\t/**\r\n\t * After view init\r\n\t */\r\n\tngAfterViewInit(): void {\r\n\t\tthis.setupOptions();\r\n\t\tthis.menu = new KTMenu(this.el.nativeElement, this.options);\r\n\t}\r\n\r\n\t/**\r\n\t * Return the menu\r\n\t */\r\n\tgetMenu() {\r\n\t\treturn this.menu;\r\n\t}\r\n\r\n\t/**\r\n\t * Setup menu options\r\n\t */\r\n\tprivate setupOptions() {\r\n\t\t// init aside menu\r\n\t\tlet menuDesktopMode = 'accordion';\r\n\t\tif (this.el.nativeElement.getAttribute('data-ktmenu-dropdown') === '1') {\r\n\t\t\tmenuDesktopMode = 'dropdown';\r\n\t\t}\r\n\r\n\t\tif (typeof objectPath.get(this.options, 'submenu.desktop') === 'object') {\r\n\t\t\tobjectPath.set(this.options, 'submenu.desktop.default', menuDesktopMode);\r\n\t\t}\r\n\t}\r\n}\r\n","// Angular\r\nimport { AfterViewInit, Directive, ElementRef, Input } from '@angular/core';\r\n\r\nexport interface OffcanvasOptions {\r\n\tbaseClass: string;\r\n\toverlay?: boolean;\r\n\tcloseBy: string;\r\n\ttoggleBy?: any;\r\n}\r\n\r\n/**\r\n * Setup off Convas\r\n */\r\n@Directive({\r\n\tselector: '[ktOffcanvas]',\r\n\texportAs: 'ktOffcanvas',\r\n})\r\nexport class OffcanvasDirective implements AfterViewInit {\r\n\t// Public properties\r\n\t@Input() options: OffcanvasOptions;\r\n\t// Private properties\r\n\tprivate offcanvas: any;\r\n\r\n\t/**\r\n\t * Directive Constructor\r\n\t * @param el: ElementRef\r\n\t */\r\n\tconstructor(private el: ElementRef) { }\r\n\r\n\t/**\r\n\t * @ Lifecycle sequences => https://angular.io/guide/lifecycle-hooks\r\n\t */\r\n\r\n\t/**\r\n\t * After view init\r\n\t */\r\n\tngAfterViewInit(): void {\r\n\t\tsetTimeout(()=>{\r\n\t\t\tthis.offcanvas = new KTOffcanvas(this.el.nativeElement, this.options);\r\n\t\t})\r\n\t}\r\n\r\n\t/**\r\n\t * Returns the offCanvas\r\n\t */\r\n\tgetOffcanvas() {\r\n\t\treturn this.offcanvas;\r\n\t}\r\n}\r\n","// Angular\r\nimport { AfterViewInit, Directive, ElementRef, Input } from '@angular/core';\r\n\r\nexport interface ScrollTopOptions {\r\n\toffset: number;\r\n\tspeed: number;\r\n}\r\n\r\n/**\r\n * Scroll to top\r\n */\r\n@Directive({\r\n\tselector: '[ktScrollTop]'\r\n})\r\nexport class ScrollTopDirective implements AfterViewInit {\r\n\t// Public properties\r\n\t@Input() options: ScrollTopOptions;\r\n\t// Private properites\r\n\tprivate scrollTop: any;\r\n\r\n\t/**\r\n\t * Directive Conctructor\r\n\t * @param el: ElementRef\r\n\t */\r\n\tconstructor(private el: ElementRef) { }\r\n\r\n\t/**\r\n\t * @ Lifecycle sequences => https://angular.io/guide/lifecycle-hooks\r\n\t */\r\n\r\n\t/**\r\n\t * After view init\r\n\t */\r\n\tngAfterViewInit(): void {\r\n\t\tthis.scrollTop = new KTScrolltop(this.el.nativeElement, this.options);\r\n\t}\r\n\r\n\t/**\r\n\t * Returns ScrollTop\r\n\t */\r\n\tgetScrollTop() {\r\n\t\treturn this.scrollTop;\r\n\t}\r\n}\r\n","// Angular\r\nimport { AfterViewInit, Directive, ElementRef, Input } from '@angular/core';\r\n// Chart\r\nimport { Chart } from 'chart.js/dist/Chart.min.js';\r\n// LayoutConfig\r\nimport { LayoutConfigService } from '../../layout/services/layout-config.service';\r\n\r\nexport interface SparklineChartOptions {\r\n\t// array of numbers\r\n\tdata: number[];\r\n\t// chart line color\r\n\tcolor: string;\r\n\t// chart line size\r\n\tborder: number;\r\n\tfill?: boolean;\r\n\ttooltip?: boolean;\r\n}\r\n\r\n/**\r\n * Configure sparkline chart\r\n */\r\n@Directive({\r\n\tselector: '[ktSparklineChart]',\r\n\texportAs: 'ktSparklineChart'\r\n})\r\nexport class SparklineChartDirective implements AfterViewInit {\r\n\t// Public properties\r\n\t@Input() options: SparklineChartOptions;\r\n\t// Private properties\r\n\tprivate chart: Chart;\r\n\r\n\t/**\r\n\t * Directive Constructor\r\n\t *\r\n\t * @param el: ElementRef\r\n\t * @param layoutConfigService: LayoutConfigService\r\n\t */\r\n\tconstructor(private el: ElementRef, private layoutConfigService: LayoutConfigService) {\r\n\t}\r\n\r\n\t/**\r\n\t * @ Lifecycle sequences => https://angular.io/guide/lifecycle-hooks\r\n\t */\r\n\r\n\t/**\r\n\t * After view init\r\n\t */\r\n\tngAfterViewInit(): void {\r\n\t\tthis.initChart(this.el.nativeElement, this.options.data, this.options.color, this.options.border, this.options.fill, this.options.tooltip);\r\n\t}\r\n\r\n\t/**\r\n\t * Init chart\r\n\t * @param src: any\r\n\t * @param data: any\r\n\t * @param color: any\r\n\t * @param border: any\r\n\t * @param fill: any\r\n\t * @param tooltip: any\r\n\t */\r\n\tinitChart(src, data, color, border, fill, tooltip) {\r\n\t\tif (src.length === 0) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\t// set default values\r\n\t\tfill = (typeof fill !== 'undefined') ? fill : false;\r\n\t\ttooltip = (typeof tooltip !== 'undefined') ? tooltip : false;\r\n\r\n\t\tconst config = {\r\n\t\t\ttype: 'line',\r\n\t\t\tdata: {\r\n\t\t\t\tlabels: ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October'],\r\n\t\t\t\tdatasets: [{\r\n\t\t\t\t\tlabel: '',\r\n\t\t\t\t\tborderColor: color,\r\n\t\t\t\t\tborderWidth: border,\r\n\r\n\t\t\t\t\tpointHoverRadius: 4,\r\n\t\t\t\t\tpointHoverBorderWidth: 12,\r\n\t\t\t\t\tpointBackgroundColor: Chart.helpers.color('#000000').alpha(0).rgbString(),\r\n\t\t\t\t\tpointBorderColor: Chart.helpers.color('#000000').alpha(0).rgbString(),\r\n\t\t\t\t\tpointHoverBackgroundColor: this.layoutConfigService.getConfig('colors.state.danger'),\r\n\t\t\t\t\tpointHoverBorderColor: Chart.helpers.color('#000000').alpha(0.1).rgbString(),\r\n\t\t\t\t\tfill: false,\r\n\t\t\t\t\tdata: data,\r\n\t\t\t\t}]\r\n\t\t\t},\r\n\t\t\toptions: {\r\n\t\t\t\ttitle: {\r\n\t\t\t\t\tdisplay: false,\r\n\t\t\t\t},\r\n\t\t\t\ttooltips: {\r\n\t\t\t\t\tenabled: false,\r\n\t\t\t\t\tintersect: false,\r\n\t\t\t\t\tmode: 'nearest',\r\n\t\t\t\t\txPadding: 10,\r\n\t\t\t\t\tyPadding: 10,\r\n\t\t\t\t\tcaretPadding: 10\r\n\t\t\t\t},\r\n\t\t\t\tlegend: {\r\n\t\t\t\t\tdisplay: false,\r\n\t\t\t\t\tlabels: {\r\n\t\t\t\t\t\tusePointStyle: false\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\tresponsive: true,\r\n\t\t\t\tmaintainAspectRatio: true,\r\n\t\t\t\thover: {\r\n\t\t\t\t\tmode: 'index'\r\n\t\t\t\t},\r\n\t\t\t\tscales: {\r\n\t\t\t\t\txAxes: [{\r\n\t\t\t\t\t\tdisplay: false,\r\n\t\t\t\t\t\tgridLines: false,\r\n\t\t\t\t\t\tscaleLabel: {\r\n\t\t\t\t\t\t\tdisplay: true,\r\n\t\t\t\t\t\t\tlabelString: 'Month'\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}],\r\n\t\t\t\t\tyAxes: [{\r\n\t\t\t\t\t\tdisplay: false,\r\n\t\t\t\t\t\tgridLines: false,\r\n\t\t\t\t\t\tscaleLabel: {\r\n\t\t\t\t\t\t\tdisplay: true,\r\n\t\t\t\t\t\t\tlabelString: 'Value'\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\tticks: {\r\n\t\t\t\t\t\t\tbeginAtZero: true\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}]\r\n\t\t\t\t},\r\n\r\n\t\t\t\telements: {\r\n\t\t\t\t\tpoint: {\r\n\t\t\t\t\t\tradius: 4,\r\n\t\t\t\t\t\tborderWidth: 12\r\n\t\t\t\t\t},\r\n\t\t\t\t},\r\n\r\n\t\t\t\tlayout: {\r\n\t\t\t\t\tpadding: {\r\n\t\t\t\t\t\tleft: 0,\r\n\t\t\t\t\t\tright: 10,\r\n\t\t\t\t\t\ttop: 5,\r\n\t\t\t\t\t\tbottom: 0\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t};\r\n\r\n\t\tthis.chart = new Chart(src, config);\r\n\t}\r\n\r\n\t/**\r\n\t * Returns the chart\r\n\t */\r\n\tgetChart() {\r\n\t\treturn this.chart;\r\n\t}\r\n}\r\n","import { AfterViewInit, Directive, ElementRef, HostBinding, HostListener, Inject, Input, isDevMode, OnDestroy, OnInit, PLATFORM_ID } from '@angular/core';\r\nimport { isPlatformBrowser } from '@angular/common';\r\nimport { BehaviorSubject, combineLatest, Observable, Subject } from 'rxjs';\r\nimport { animationFrame } from 'rxjs/internal/scheduler/animationFrame';\r\nimport { filter, map, share, startWith, takeUntil, throttleTime } from 'rxjs/operators';\r\n\r\n/**\r\n * Extended version of \"Sticky Directive for Angular 2+\"\r\n * https://github.com/w11k/angular-sticky-things\r\n */\r\n\r\nexport interface StickyPositions {\r\n\toffsetY: number;\r\n\tbottomBoundary: number | null;\r\n}\r\n\r\nexport interface StickyStatus {\r\n\tisSticky: boolean;\r\n\treachedLowerEdge: boolean;\r\n\tmarginTop: number;\r\n\tmarginBottom: number;\r\n}\r\n\r\n@Directive({\r\n\tselector: '[ktSticky]'\r\n})\r\nexport class StickyDirective implements OnInit, AfterViewInit, OnDestroy {\r\n\r\n\tfilterGate = false;\r\n\tmarginTop$ = new BehaviorSubject(0);\r\n\tmarginBottom$ = new BehaviorSubject(0);\r\n\tenable$ = new BehaviorSubject(true);\r\n\r\n\t@Input() scrollContainer: string | HTMLElement;\r\n\t@Input('spacerElement') spacerElement: HTMLElement | undefined;\r\n\t@Input('boundaryElement') boundaryElement: HTMLElement | undefined;\r\n\t@HostBinding('class.is-sticky') sticky = false;\r\n\t@HostBinding('class.boundary-reached') boundaryReached = false;\r\n\t/**\r\n\t * The field represents some position values in normal (not sticky) mode.\r\n\t * If the browser size or the content of the page changes, this value must be recalculated.\r\n\t */\r\n\tprivate scroll$ = new Subject();\r\n\tprivate scrollThrottled$: Observable;\r\n\tprivate resize$ = new Subject();\r\n\tprivate resizeThrottled$: Observable;\r\n\tprivate extraordinaryChange$ = new BehaviorSubject(undefined);\r\n\tprivate status$: Observable;\r\n\tprivate componentDestroyed = new Subject();\r\n\r\n\tconstructor(private stickyElement: ElementRef, @Inject(PLATFORM_ID) private platformId: string) {\r\n\r\n\t\t/** Throttle the scroll to animation frame (around 16.67ms) */\r\n\t\tthis.scrollThrottled$ = this.scroll$\r\n\t\t\t.pipe(\r\n\t\t\t\tthrottleTime(0, animationFrame),\r\n\t\t\t\tshare()\r\n\t\t\t);\r\n\r\n\t\t/** Throttle the resize to animation frame (around 16.67ms) */\r\n\t\tthis.resizeThrottled$ = this.resize$\r\n\t\t\t.pipe(\r\n\t\t\t\tthrottleTime(0, animationFrame),\r\n\t\t\t\t// emit once since we are currently using combineLatest\r\n\t\t\t\tstartWith(null),\r\n\t\t\t\tshare()\r\n\t\t\t);\r\n\r\n\t\tthis.status$ = combineLatest(\r\n\t\t\tthis.enable$,\r\n\t\t\tthis.scrollThrottled$,\r\n\t\t\tthis.marginTop$,\r\n\t\t\tthis.marginBottom$,\r\n\t\t\tthis.extraordinaryChange$,\r\n\t\t\tthis.resizeThrottled$,\r\n\t\t)\r\n\t\t\t.pipe(\r\n\t\t\t\tfilter(([enabled]) => this.checkEnabled(enabled)),\r\n\t\t\t\tmap(([enabled, pageYOffset, marginTop, marginBottom]) => this.determineStatus(this.determineElementOffsets(), pageYOffset, marginTop, marginBottom, enabled)),\r\n\t\t\t\tshare(),\r\n\t\t\t);\r\n\r\n\t}\r\n\r\n\t@Input() set marginTop(value: number) {\r\n\t\tthis.marginTop$.next(value);\r\n\t}\r\n\r\n\t@Input() set marginBottom(value: number) {\r\n\t\tthis.marginBottom$.next(value);\r\n\t}\r\n\r\n\t@Input() set enable(value: boolean) {\r\n\t\tthis.enable$.next(value);\r\n\t}\r\n\r\n\tngAfterViewInit(): void {\r\n\t\tthis.status$\r\n\t\t\t.pipe(takeUntil(this.componentDestroyed))\r\n\t\t\t.subscribe((status) => this.setSticky(status));\r\n\t}\r\n\r\n\tpublic recalculate(): void {\r\n\t\tif (isPlatformBrowser(this.platformId)) {\r\n\t\t\t// Make sure to be in the next tick by using timeout\r\n\t\t\tsetTimeout(() => {\r\n\t\t\t\tthis.extraordinaryChange$.next(undefined);\r\n\t\t\t}, 0);\r\n\t\t}\r\n\t}\r\n\r\n\r\n\t/**\r\n\t * This is nasty code that should be refactored at some point.\r\n\t *\r\n\t * The Problem is, we filter for enabled. So that the code doesn't run\r\n\t * if @Input enabled = false. But if the user disables, we need exactly 1\r\n\t * emit in order to reset and call removeSticky. So this method basically\r\n\t * turns the filter in \"filter, but let the first pass\".\r\n\t */\r\n\tcheckEnabled(enabled: boolean): boolean {\r\n\r\n\t\tif (!isPlatformBrowser(this.platformId)) {\r\n\t\t\treturn false;\r\n\t\t}\r\n\r\n\t\tif (enabled) {\r\n\t\t\t// reset the gate\r\n\t\t\tthis.filterGate = false;\r\n\t\t\treturn true;\r\n\t\t} else {\r\n\t\t\tif (this.filterGate) {\r\n\t\t\t\t// gate closed, first emit has happened\r\n\t\t\t\treturn false;\r\n\t\t\t} else {\r\n\t\t\t\t// this is the first emit for enabled = false,\r\n\t\t\t\t// let it pass, and activate the gate\r\n\t\t\t\t// so the next wont pass.\r\n\t\t\t\tthis.filterGate = true;\r\n\t\t\t\treturn true;\r\n\t\t\t}\r\n\t\t}\r\n\r\n\r\n\t}\r\n\r\n\t@HostListener('window:resize', [])\r\n\tonWindowResize(): void {\r\n\t\tif (isPlatformBrowser(this.platformId)) {\r\n\t\t\tthis.resize$.next();\r\n\t\t}\r\n\t}\r\n\r\n\tsetupListener(): void {\r\n\t\tif (isPlatformBrowser(this.platformId)) {\r\n\t\t\tconst target = this.getScrollTarget();\r\n\t\t\ttarget.addEventListener('scroll', this.listener);\r\n\t\t}\r\n\t}\r\n\r\n\tremoveListener() {\r\n\t\tif (isPlatformBrowser(this.platformId)) {\r\n\t\t\tconst target = this.getScrollTarget();\r\n\t\t\ttarget.removeEventListener('scroll', this.listener);\r\n\t\t}\r\n\t}\r\n\r\n\tlistener = (e: Event) => {\r\n\t\tconst upperScreenEdgeAt = (e.target as HTMLElement).scrollTop || window.pageYOffset;\r\n\t\tthis.scroll$.next(upperScreenEdgeAt);\r\n\t}\r\n\r\n\r\n\tngOnInit(): void {\r\n\t\t// this.checkSetup();\r\n\t\tthis.setupListener();\r\n\t}\r\n\r\n\tngOnDestroy(): void {\r\n\t\tthis.componentDestroyed.next();\r\n\t\tthis.removeListener();\r\n\t}\r\n\r\n\tgetComputedStyle(el: HTMLElement): ClientRect | DOMRect {\r\n\t\treturn el.getBoundingClientRect();\r\n\t}\r\n\r\n\tprivate getScrollTarget(): Element | Window {\r\n\r\n\t\tlet target: Element | Window;\r\n\r\n\t\tif (this.scrollContainer && typeof this.scrollContainer === 'string') {\r\n\t\t\ttarget = document.querySelector(this.scrollContainer);\r\n\t\t} else if (this.scrollContainer && this.scrollContainer instanceof HTMLElement) {\r\n\t\t\ttarget = this.scrollContainer;\r\n\t\t} else {\r\n\t\t\ttarget = window;\r\n\t\t}\r\n\t\treturn target;\r\n\t}\r\n\r\n\tprivate determineStatus(originalVals: StickyPositions, pageYOffset: number, marginTop: number, marginBottom: number, enabled: boolean): StickyStatus {\r\n\t\tconst stickyElementHeight = this.getComputedStyle(this.stickyElement.nativeElement).height;\r\n\t\tconst reachedLowerEdge = this.boundaryElement && window.pageYOffset + stickyElementHeight + marginBottom >= (originalVals.bottomBoundary - marginTop);\r\n\t\treturn {\r\n\t\t\tisSticky: enabled && pageYOffset > originalVals.offsetY,\r\n\t\t\treachedLowerEdge,\r\n\t\t\tmarginBottom,\r\n\t\t\tmarginTop,\r\n\t\t};\r\n\t}\r\n\r\n\r\n\t/**\r\n\t * Gets the offset for element. If the element\r\n\t * currently is sticky, it will get removed\r\n\t * to access the original position. Other\r\n\t * wise this would just be 0 for fixed elements.\r\n\t */\r\n\tprivate determineElementOffsets(): StickyPositions {\r\n\t\tif (this.sticky) {\r\n\t\t\tthis.removeSticky();\r\n\t\t}\r\n\r\n\t\tlet bottomBoundary: number | null = null;\r\n\r\n\t\tif (this.boundaryElement) {\r\n\t\t\tconst boundaryElementHeight = this.getComputedStyle(this.boundaryElement).height;\r\n\t\t\tconst boundaryElementOffset = getPosition(this.boundaryElement).y;\r\n\t\t\tbottomBoundary = boundaryElementHeight + boundaryElementOffset;\r\n\t\t}\r\n\r\n\t\treturn {offsetY: (getPosition(this.stickyElement.nativeElement).y - this.marginTop$.value), bottomBoundary};\r\n\t}\r\n\r\n\tprivate makeSticky(boundaryReached: boolean = false, marginTop: number, marginBottom: number): void {\r\n\r\n\t\tthis.boundaryReached = boundaryReached;\r\n\r\n\t\t// do this before setting it to pos:fixed\r\n\t\tconst {width, height, left} = this.getComputedStyle(this.stickyElement.nativeElement);\r\n\t\tconst offSet = boundaryReached ? (this.getComputedStyle(this.boundaryElement).bottom - height - this.marginBottom$.value) : this.marginTop$.value;\r\n\r\n\t\tthis.sticky = true;\r\n\t\tthis.stickyElement.nativeElement.style.position = 'sticky';\r\n\t\tthis.stickyElement.nativeElement.style.backgroundColor = '#fff';\r\n\t\tthis.stickyElement.nativeElement.style.top = this.marginTop$.value + 'px';\r\n\t\t// this.stickyElement.nativeElement.style.left = left + 'px';\r\n\t\tthis.stickyElement.nativeElement.style.width = `${width}px`;\r\n\t\tthis.stickyElement.nativeElement.style.zIndex = `2`;\r\n\t\tif (this.spacerElement) {\r\n\t\t\tconst spacerHeight = marginBottom + height + marginTop;\r\n\t\t\tthis.spacerElement.style.height = `${spacerHeight}px`;\r\n\t\t}\r\n\t}\r\n\r\n\tprivate checkSetup() {\r\n\t\tif (isDevMode() && !this.spacerElement) {\r\n\t\t\tconsole.warn(`******There might be an issue with your sticky directive!******\r\n\r\nYou haven't specified a spacer element. This will cause the page to jump.\r\n\r\nBest practise is to provide a spacer element (e.g. a div) right before/after the sticky element.\r\nThen pass the spacer element as input:\r\n\r\n
\r\n\r\n
\r\n I am sticky!\r\n
`);\r\n\t\t}\r\n\t}\r\n\r\n\r\n\tprivate setSticky(status: StickyStatus): void {\r\n\t\tif (status.isSticky) {\r\n\t\t\tthis.makeSticky(status.reachedLowerEdge, status.marginTop, status.marginBottom);\r\n\t\t} else {\r\n\t\t\tthis.removeSticky();\r\n\t\t}\r\n\t}\r\n\r\n\tprivate removeSticky(): void {\r\n\r\n\t\tthis.boundaryReached = false;\r\n\t\tthis.sticky = false;\r\n\r\n\t\tthis.stickyElement.nativeElement.style.position = '';\r\n\t\tthis.stickyElement.nativeElement.style.width = 'auto';\r\n\t\tthis.stickyElement.nativeElement.style.left = 'auto';\r\n\t\tthis.stickyElement.nativeElement.style.top = 'auto';\r\n\t\tif (this.spacerElement) {\r\n\t\t\tthis.spacerElement.style.height = '0';\r\n\t\t}\r\n\t}\r\n}\r\n\r\n// Thanks to https://stanko.github.io/javascript-get-element-offset/\r\nfunction getPosition(el) {\r\n\tlet top = 0;\r\n\tlet left = 0;\r\n\tlet element = el;\r\n\r\n\t// Loop through the DOM tree\r\n\t// and add it's parent's offset to get page offset\r\n\tdo {\r\n\t\ttop += element.offsetTop || 0;\r\n\t\tleft += element.offsetLeft || 0;\r\n\t\telement = element.offsetParent;\r\n\t} while (element);\r\n\r\n\treturn {\r\n\t\ty: top,\r\n\t\tx: left,\r\n\t};\r\n}\r\n","import { Directive, ElementRef, HostListener, Renderer2 } from '@angular/core';\r\n\r\n/**\r\n * Listen Tab click\r\n */\r\n@Directive({\r\n\tselector: '[ktTabClickEvent]'\r\n})\r\nexport class TabClickEventDirective {\r\n\t/**\r\n\t * Directive Constructor\r\n\t * @param el: ElementRef\r\n\t * @param render: Renderer2\r\n\t */\r\n\tconstructor(private el: ElementRef, private render: Renderer2) { }\r\n\r\n\t/**\r\n\t * A directive handler the tab click event for active tab\r\n\t * @param target\r\n\t */\r\n\t@HostListener('click', ['$event.target'])\r\n\tonClick(target: HTMLElement) {\r\n\t\t// remove previous active tab\r\n\t\tconst parent = target.closest('[role=\"tablist\"]');\r\n\t\tconst activeLink = parent.querySelector('[role=\"tab\"].active');\r\n\t\tif (activeLink) {\r\n\t\t\tthis.render.removeClass(activeLink, 'active');\r\n\t\t}\r\n\t\t// set active tab\r\n\t\tconst link = target.closest('[role=\"tab\"]');\r\n\t\tif (link) {\r\n\t\t\tthis.render.addClass(link, 'active');\r\n\t\t}\r\n\t}\r\n}\r\n","// Angular\r\nimport { AfterViewInit, Directive, ElementRef, Input } from '@angular/core';\r\n\r\nexport interface ToggleOptions {\r\n\ttarget?: string;\r\n\ttargetState?: string;\r\n\ttogglerState?: string;\r\n}\r\n\r\n/**\r\n * Toggle\r\n */\r\n@Directive({\r\n\tselector: '[ktToggle]',\r\n\texportAs: 'ktToggle'\r\n})\r\nexport class ToggleDirective implements AfterViewInit {\r\n\t// Public properties\r\n\t@Input() options: ToggleOptions;\r\n\ttoggle: any;\r\n\r\n\t/**\r\n\t * Directive constructor\r\n\t * @param el: ElementRef\r\n\t */\r\n\tconstructor(private el: ElementRef) { }\r\n\r\n\t/**\r\n\t * @ Lifecycle sequences => https://angular.io/guide/lifecycle-hooks\r\n\t */\r\n\r\n\t/**\r\n\t * After view init\r\n\t */\r\n\tngAfterViewInit(): void {\r\n\t\tthis.toggle = new KTToggle(this.el.nativeElement, this.options);\r\n\t}\r\n}\r\n","// Directives\r\nexport { SparklineChartOptions, SparklineChartDirective } from './directives/sparkline-chart.directive';\r\nexport { OffcanvasDirective } from './directives/offcanvas.directive';\r\nexport { ScrollTopDirective } from './directives/scroll-top.directive';\r\nexport { TabClickEventDirective } from './directives/tab-click-event.directive';\r\nexport { ToggleDirective } from './directives/toggle.directive';\r\n\r\nexport { ContentAnimateDirective } from './directives/content-animate.directive';\r\nexport { HeaderDirective } from './directives/header.directive';\r\nexport { MenuDirective } from './directives/menu.directive';\r\nexport { StickyDirective } from './directives/sticky.directive';\r\n\r\n// Models\r\nexport { DataTableItemModel } from './models/datatable-item.model';\r\nexport { ExternalCodeExample } from './models/external-code-example';\r\nexport { OffcanvasOptions } from './directives/offcanvas.directive';\r\nexport { ScrollTopOptions } from './directives/scroll-top.directive';\r\nexport { ToggleOptions } from './directives/toggle.directive';\r\n\r\nexport { LayoutConfigModel } from './models/layout-config.model';\r\nexport { MenuOptions } from './directives/menu.directive';\r\n\r\n// Pipes\r\nexport { FirstLetterPipe } from './pipes/first-letter.pipe';\r\nexport { GetObjectPipe } from './pipes/get-object.pipe';\r\nexport { JoinPipe } from './pipes/join.pipe';\r\nexport { SafePipe } from './pipes/safe.pipe';\r\nexport { TimeElapsedPipe } from './pipes/time-elapsed.pipe';\r\n\r\n// Services\r\nexport { DataTableService } from './services/datatable.service';\r\nexport { TranslationService } from './services/translation.service';\r\n\r\nexport { LayoutConfigService } from './services/layout-config.service';\r\nexport { LayoutRefService } from './services/layout-ref.service';\r\nexport { MenuAsideService } from './services/menu-aside.service';\r\nexport { MenuConfigService } from './services/menu-config.service';\r\nexport { MenuHorizontalService } from './services/menu-horizontal.service';\r\nexport { PageConfigService } from './services/page-config.service';\r\nexport { SplashScreenService } from './services/splash-screen.service';\r\nexport { SubheaderService } from './services/subheader.service';\r\nexport { KtDialogService } from './services/kt-dialog.service';\r\n\r\n// Server\r\nexport { FakeApiService } from './server/fake-api/fake-api.service';\r\n","export class DataTableItemModel {\r\n id: number;\r\n\tcModel: string;\r\n\tcManufacture: string;\r\n\tcModelYear: number;\r\n\tcMileage: number;\r\n\tcDescription: string;\r\n\tcColor: string;\r\n\tcPrice: number;\r\n\tcCondition: number;\r\n\tcStatus: number;\r\n cVINCode: string;\r\n}\r\n","export class ExternalCodeExample {\r\n\tbeforeCodeTitle: string;\r\n\tbeforeCodeDescription: string;\r\n\thtmlCode: string;\r\n\ttsCode: string;\r\n\tcssCode: string;\r\n\tscssCode: string;\r\n\tviewCode: string;\r\n\tcodeTitle: string;\r\n\tafterCodeTitle: string;\r\n\tafterCodeDescription: string;\r\n\tsourceLink: string;\r\n\tisCodeVisible: boolean = true;\r\n\tisExampleExpanded: boolean;\r\n}\r\n","// Angular\r\nimport { Pipe, PipeTransform } from '@angular/core';\r\n\r\n/**\r\n * Returns only first letter of string\r\n */\r\n@Pipe({\r\n\tname: 'firstLetter'\r\n})\r\nexport class FirstLetterPipe implements PipeTransform {\r\n\r\n\t/**\r\n\t * Transform\r\n\t *\r\n\t * @param value: any\r\n\t * @param args: any\r\n\t */\r\n\ttransform(value: any, args?: any): any {\r\n\t\treturn value.split(' ').map(n => n[0]).join('');\r\n\t}\r\n}\r\n","// Angular\r\nimport { Pipe, PipeTransform } from '@angular/core';\r\n// Object-Path\r\nimport * as objectPath from 'object-path';\r\n\r\n/**\r\n * Returns object from parent object\r\n */\r\n@Pipe({\r\n\tname: 'getObject'\r\n})\r\nexport class GetObjectPipe implements PipeTransform {\r\n\t/**\r\n\t * Transform\r\n\t *\r\n\t * @param value: any\r\n\t * @param args: any\r\n\t */\r\n\ttransform(value: any, args?: any): any {\r\n\t\treturn objectPath.get(value, args);\r\n\t}\r\n}\r\n","// Angular\r\nimport { Pipe, PipeTransform } from '@angular/core';\r\n\r\n/**\r\n * Returns string from Array\r\n */\r\n@Pipe({\r\n\tname: 'join'\r\n})\r\nexport class JoinPipe implements PipeTransform {\r\n\t/**\r\n\t * Transform\r\n\t *\r\n\t * @param value: any\r\n\t * @param args: any\r\n\t */\r\n\ttransform(value: any, args?: any): any {\r\n\t\tif (Array.isArray(value)) {\r\n\t\t\treturn value.join(' ');\r\n\t\t}\r\n\t\treturn value;\r\n\t}\r\n}\r\n","// Angular\r\nimport { Pipe, PipeTransform } from '@angular/core';\r\nimport { DomSanitizer, SafeHtml, SafeStyle, SafeScript, SafeUrl, SafeResourceUrl } from '@angular/platform-browser';\r\n\r\n/**\r\n * Sanitize HTML\r\n */\r\n@Pipe({\r\n\tname: 'safe'\r\n})\r\nexport class SafePipe implements PipeTransform {\r\n\t/**\r\n\t * Pipe Constructor\r\n\t *\r\n\t * @param _sanitizer: DomSanitezer\r\n\t */\r\n\tconstructor(protected _sanitizer: DomSanitizer) { }\r\n\r\n\t/**\r\n\t * Transform\r\n\t *\r\n\t * @param value: string\r\n\t * @param type: string\r\n\t */\r\n\ttransform(value: string, type: string): SafeHtml | SafeStyle | SafeScript | SafeUrl | SafeResourceUrl {\r\n\t\tswitch (type) {\r\n\t\t\tcase 'html':\r\n\t\t\t\treturn this._sanitizer.bypassSecurityTrustHtml(value);\r\n\t\t\tcase 'style':\r\n\t\t\t\treturn this._sanitizer.bypassSecurityTrustStyle(value);\r\n\t\t\tcase 'script':\r\n\t\t\t\treturn this._sanitizer.bypassSecurityTrustScript(value);\r\n\t\t\tcase 'url':\r\n\t\t\t\treturn this._sanitizer.bypassSecurityTrustUrl(value);\r\n\t\t\tcase 'resourceUrl':\r\n\t\t\t\treturn this._sanitizer.bypassSecurityTrustResourceUrl(value);\r\n\t\t\tdefault:\r\n\t\t\t\treturn this._sanitizer.bypassSecurityTrustHtml(value);\r\n\t\t}\r\n\t}\r\n\r\n}\r\n","// Angular\r\nimport { Pipe, PipeTransform, OnDestroy, ChangeDetectorRef, NgZone } from '@angular/core';\r\n\r\n/**\r\n * https://github.com/AndrewPoyntz/time-ago-pipe\r\n * An Angular pipe for converting a date string into a time ago\r\n */\r\n@Pipe({\r\n\tname: 'kTimeElapsed'\r\n})\r\nexport class TimeElapsedPipe implements PipeTransform, OnDestroy {\r\n\t// Private properties\r\n\tprivate timer: number;\r\n\r\n\t/**\r\n\t * Pipe Constructor\r\n\t *\r\n\t * @param changeDetectorRef: ChangeDetectorRef\r\n\t * @param ngZone: NgZone\r\n\t */\r\n\tconstructor(\r\n\t\tprivate changeDetectorRef: ChangeDetectorRef,\r\n\t\tprivate ngZone: NgZone\r\n\t) {}\r\n\r\n\t/**\r\n\t * @ Lifecycle sequences => https://angular.io/guide/lifecycle-hooks\r\n\t */\r\n\r\n\t/**\r\n\t * On destroy\r\n\t */\r\n\tngOnDestroy(): void {\r\n\t\tthis.removeTimer();\r\n\t}\r\n\r\n\t/**\r\n\t * Transform\r\n\t *\r\n\t * @param value: string\r\n\t */\r\n\ttransform(value: string) {\r\n\t\tthis.removeTimer();\r\n\t\tconst d = new Date(value);\r\n\t\tconst now = new Date();\r\n\t\tconst seconds = Math.round(\r\n\t\t\tMath.abs((now.getTime() - d.getTime()) / 1000)\r\n\t\t);\r\n\t\tconst timeToUpdate = this.getSecondsUntilUpdate(seconds) * 1000;\r\n\t\tthis.timer = this.ngZone.runOutsideAngular(() => {\r\n\t\t\tif (typeof window !== 'undefined') {\r\n\t\t\t\treturn window.setTimeout(() => {\r\n\t\t\t\t\tthis.ngZone.run(() =>\r\n\t\t\t\t\t\tthis.changeDetectorRef.markForCheck()\r\n\t\t\t\t\t);\r\n\t\t\t\t}, timeToUpdate);\r\n\t\t\t}\r\n\t\t\treturn null;\r\n\t\t});\r\n\t\tconst minutes = Math.round(Math.abs(seconds / 60));\r\n\t\tconst hours = Math.round(Math.abs(minutes / 60));\r\n\t\tconst days = Math.round(Math.abs(hours / 24));\r\n\t\tconst months = Math.round(Math.abs(days / 30.416));\r\n\t\tconst years = Math.round(Math.abs(days / 365));\r\n\t\tif (seconds <= 45) {\r\n\t\t\treturn 'just now';\r\n\t\t} else if (seconds <= 90) {\r\n\t\t\treturn '1 min';\r\n\t\t} else if (minutes <= 45) {\r\n\t\t\treturn minutes + ' mins';\r\n\t\t} else if (minutes <= 90) {\r\n\t\t\treturn '1 hr';\r\n\t\t} else if (hours <= 22) {\r\n\t\t\treturn hours + ' hrs';\r\n\t\t} else if (hours <= 36) {\r\n\t\t\treturn '1 day';\r\n\t\t} else if (days <= 25) {\r\n\t\t\treturn days + ' days';\r\n\t\t} else if (days <= 45) {\r\n\t\t\treturn '1 month';\r\n\t\t} else if (days <= 345) {\r\n\t\t\treturn months + ' months';\r\n\t\t} else if (days <= 545) {\r\n\t\t\treturn '1 year';\r\n\t\t} else {\r\n\t\t\t// (days > 545)\r\n\t\t\treturn years + ' years';\r\n\t\t}\r\n\t}\r\n\r\n\t/**\r\n\t * Remove timer\r\n\t */\r\n\tprivate removeTimer() {\r\n\t\tif (this.timer) {\r\n\t\t\twindow.clearTimeout(this.timer);\r\n\t\t\tthis.timer = null;\r\n\t\t}\r\n\t}\r\n\r\n\t/**\r\n\t * Returns Seconds Until Update\r\n\t * @param seconds: number\r\n\t */\r\n\tprivate getSecondsUntilUpdate(seconds: number) {\r\n\t\tconst min = 60;\r\n\t\tconst hr = min * 60;\r\n\t\tconst day = hr * 24;\r\n\t\tif (seconds < min) {\r\n\t\t\t// less than 1 min, update ever 2 secs\r\n\t\t\treturn 2;\r\n\t\t} else if (seconds < hr) {\r\n\t\t\t// less than an hour, update every 30 secs\r\n\t\t\treturn 30;\r\n\t\t} else if (seconds < day) {\r\n\t\t\t// less then a day, update every 5 mins\r\n\t\t\treturn 300;\r\n\t\t} else {\r\n\t\t\t// update every hour\r\n\t\t\treturn 3600;\r\n\t\t}\r\n\t}\r\n}\r\n","// Angular\r\nimport { Injectable } from '@angular/core';\r\n// Angular in memory\r\nimport { InMemoryDbService } from 'angular-in-memory-web-api';\r\n// RxJS\r\nimport { Observable } from 'rxjs';\r\n// Auth\r\nimport { AuthDataContext } from '../../../../auth';\r\n// ECommerce\r\nimport { ECommerceDataContext } from '../../../../e-commerce';\r\n// Models\r\nimport { CarsDb } from './fake-db/cars';\r\n\r\n@Injectable()\r\nexport class FakeApiService implements InMemoryDbService {\r\n\t/**\r\n\t * Service Constructore\r\n\t */\r\n\tconstructor() {}\r\n\r\n\t/**\r\n\t * Create Fake DB and API\r\n\t */\r\n\tcreateDb(): {} | Observable<{}> {\r\n\t\t// tslint:disable-next-line:class-name\r\n\t\tconst db = {\r\n\t\t\t// auth module\r\n\t\t\tusers: AuthDataContext.users,\r\n\t\t\troles: AuthDataContext.roles,\r\n\t\t\tpermissions: AuthDataContext.permissions,\r\n\r\n\t\t\t// e-commerce\r\n\t\t\t// customers\r\n\t\t\tcustomers: ECommerceDataContext.customers,\r\n\t\t\t// products\r\n\t\t\tproducts: ECommerceDataContext.cars,\r\n\t\t\tproductRemarks: ECommerceDataContext.remarks,\r\n\t\t\tproductSpecs: ECommerceDataContext.carSpecs,\r\n\r\n\t\t\t// orders\r\n\t\t\torders: ECommerceDataContext.orders,\r\n\r\n\t\t\t// data-table\r\n\t\t\tcars: CarsDb.cars\r\n\t\t};\r\n\t\treturn db;\r\n\t}\r\n}\r\n","export class CarsDb {\r\n\tpublic static cars: any = [\r\n\t\t{\r\n\t\t\t'id': 1,\r\n\t\t\t'cModel': 'Elise',\r\n\t\t\t'cManufacture': 'Lotus',\r\n\t\t\t'cModelYear': 2004,\r\n\t\t\t'cMileage': 116879,\r\n\t\t\t// tslint:disable-next-line:max-line-length\r\n\t\t\t'cDescription': `The Lotus Elise first appeared in 1996 and revolutionised small sports car design with its lightweight extruded aluminium chassis and composite body. There have been many variations, but the basic principle remain the same.`,\r\n\t\t\t'cColor': 'Red',\r\n\t\t\t'cPrice': 18347,\r\n\t\t\t'cCondition': 1,\r\n\t\t\t'createdDate': '09/30/2017',\r\n\t\t\t'cStatus': 0,\r\n\t\t\t'cVINCode': '1FTWX3D52AE575540',\r\n\t\t}, {\r\n\t\t\t'id': 2,\r\n\t\t\t'cModel': 'Sunbird',\r\n\t\t\t'cManufacture': 'Pontiac',\r\n\t\t\t'cModelYear': 1984,\r\n\t\t\t'cMileage': 99515,\r\n\t\t\t// tslint:disable-next-line:max-line-length\r\n\t\t\t'cDescription': `The Pontiac Sunbird is an automobile that was produced by Pontiac, initially as a subcompact for the 1976 to 1980 cModel years,and later as a compact for the 1982 to 1994 cModel years. The Sunbird badge ran for 18 years (with a hiatus during the 1981 and 1982 cModel years, as the 1982 cModel was called J2000) and was then replaced in 1995 by the Pontiac Sunfire. Through the years the Sunbird was available in notchback coupé, sedan, hatchback, station wagon, and convertible body styles.`,\r\n\t\t\t'cColor': 'Khaki',\r\n\t\t\t'cPrice': 165956,\r\n\t\t\t'cCondition': 0,\r\n\t\t\t'createdDate': '03/22/2018',\r\n\t\t\t'cStatus': 1,\r\n\t\t\t'cVINCode': 'JM1NC2EF8A0293556'\r\n\t\t}, {\r\n\t\t\t'id': 3,\r\n\t\t\t'cModel': 'Amigo',\r\n\t\t\t'cManufacture': 'Isuzu',\r\n\t\t\t'cModelYear': 1993,\r\n\t\t\t'cMileage': 138027,\r\n\t\t\t// tslint:disable-next-line:max-line-length\r\n\t\t\t'cDescription': `The Isuzu MU is a mid-size SUV that was produced by the Japan-based cManufacturer Isuzu. The three-door MU was introduced in 1989, followed in 1990 by the five-door version called Isuzu MU Wizard, both of which stopped production in 1998 to be replaced by a second generation. This time, the five-door version dropped the \"MU\" prefix, to become the Isuzu Wizard. The acronym \"MU\" is short for \"Mysterious Utility\". Isuzu cManufactured several variations to the MU and its derivates for sale in other countries.`,\r\n\t\t\t'cColor': 'Aquamarine',\r\n\t\t\t'cPrice': 45684,\r\n\t\t\t'cCondition': 0,\r\n\t\t\t'createdDate': '03/06/2018',\r\n\t\t\t'cStatus': 0,\r\n\t\t\t'cVINCode': '1G6DG8E56C0973889'\r\n\t\t}, {\r\n\t\t\t'id': 4,\r\n\t\t\t'cModel': 'LS',\r\n\t\t\t'cManufacture': 'Lexus',\r\n\t\t\t'cModelYear': 2004,\r\n\t\t\t'cMileage': 183068,\r\n\t\t\t// tslint:disable-next-line:max-line-length\r\n\t\t\t'cDescription': `The Lexus LS (Japanese: レクサス・LS, Rekusasu LS) is a full-size luxury car (F-segment in Europe) serving as the flagship cModel of Lexus, the luxury division of Toyota. For the first four generations, all LS cModels featured V8 engines and were predominantly rear-wheel-drive, with Lexus also offering all-wheel-drive, hybrid, and long-wheelbase variants. The fifth generation changed to using a V6 engine with no V8 option, and the long wheelbase variant was removed entirely.`,\r\n\t\t\t'cColor': 'Mauv',\r\n\t\t\t'cPrice': 95410,\r\n\t\t\t'cCondition': 1,\r\n\t\t\t'createdDate': '02/03/2018',\r\n\t\t\t'cStatus': 1,\r\n\t\t\t'cVINCode': '2T1BU4EE6DC859114'\r\n\t\t}, {\r\n\t\t\t'id': 5,\r\n\t\t\t'cModel': 'Paseo',\r\n\t\t\t'cManufacture': 'Toyota',\r\n\t\t\t'cModelYear': 1997,\r\n\t\t\t'cMileage': 74884,\r\n\t\t\t// tslint:disable-next-line:max-line-length\r\n\t\t\t'cDescription': `The Toyota Paseo (known as the Cynos in Japan and other regions) is a sports styled compact car sold from 1991–1999 and was loosely based on the Tercel. It was available as a coupe and in later cModels as a convertible. Toyota stopped selling the car in the United States in 1997, however the car continued to be sold in Canada, Europe and Japan until 1999, but had no direct replacement. The Paseo, like the Tercel, shares a platform with the Starlet. Several parts are interchangeable between the three`,\r\n\t\t\t'cColor': 'Pink',\r\n\t\t\t'cPrice': 24796,\r\n\t\t\t'cCondition': 1,\r\n\t\t\t'createdDate': '08/13/2017',\r\n\t\t\t'cStatus': 0,\r\n\t\t\t'cVINCode': '1D7RB1GP0AS597432'\r\n\t\t}, {\r\n\t\t\t'id': 6,\r\n\t\t\t'cModel': 'M',\r\n\t\t\t'cManufacture': 'Infiniti',\r\n\t\t\t'cModelYear': 2009,\r\n\t\t\t'cMileage': 194846,\r\n\t\t\t// tslint:disable-next-line:max-line-length\r\n\t\t\t'cDescription': `The Infiniti M is a line of mid-size luxury (executive) cars from the Infiniti luxury division of Nissan.\\r\\nThe first iteration was the M30 Coupe/Convertible, which were rebadged JDM Nissan Leopard.\\r\\nAfter a long hiatus, the M nameplate was used for Infiniti's mid-luxury sedans (executive cars). First was the short-lived M45 sedan, a rebadged version of the Japanese-spec Nissan Gloria. The next generations, the M35/45 and M37/56/35h/30d, became the flagship of the Infiniti brand and are based on the JDM Nissan Fuga.`,\r\n\t\t\t'cColor': 'Puce',\r\n\t\t\t'cPrice': 30521,\r\n\t\t\t'cCondition': 1,\r\n\t\t\t'createdDate': '01/27/2018',\r\n\t\t\t'cStatus': 0,\r\n\t\t\t'cVINCode': 'YV1940AS1D1542424'\r\n\t\t}, {\r\n\t\t\t'id': 7,\r\n\t\t\t'cModel': 'Phantom',\r\n\t\t\t'cManufacture': 'Rolls-Royce',\r\n\t\t\t'cModelYear': 2008,\r\n\t\t\t'cMileage': 164124,\r\n\t\t\t// tslint:disable-next-line:max-line-length\r\n\t\t\t'cDescription': `The Rolls-Royce Phantom VIII is a luxury saloon car cManufactured by Rolls-Royce Motor Cars. It is the eighth and current generation of Rolls-Royce Phantom, and the second launched by Rolls-Royce under BMW ownership. It is offered in two wheelbase lengths`,\r\n\t\t\t'cColor': 'Purple',\r\n\t\t\t'cPrice': 196247,\r\n\t\t\t'cCondition': 1,\r\n\t\t\t'createdDate': '09/28/2017',\r\n\t\t\t'cStatus': 1,\r\n\t\t\t'cVINCode': '3VWML7AJ1DM234625'\r\n\t\t}, {\r\n\t\t\t'id': 8,\r\n\t\t\t'cModel': 'QX',\r\n\t\t\t'cManufacture': 'Infiniti',\r\n\t\t\t'cModelYear': 2002,\r\n\t\t\t'cMileage': 57410,\r\n\t\t\t// tslint:disable-next-line:max-line-length\r\n\t\t\t'cDescription': `The Infiniti QX80 (called the Infiniti QX56 until 2013) is a full-size luxury SUV built by Nissan Motor Company's Infiniti division. The naming convention originally adhered to the current trend of using a numeric designation derived from the engine's displacement, thus QX56 since the car has a 5.6-liter engine. From the 2014 cModel year, the car was renamed the QX80, as part of Infiniti's cModel name rebranding. The new name carries no meaning beyond suggesting that the vehicle is larger than smaller cModels such as the QX60`,\r\n\t\t\t'cColor': 'Green',\r\n\t\t\t'cPrice': 185775,\r\n\t\t\t'cCondition': 1,\r\n\t\t\t'createdDate': '11/15/2017',\r\n\t\t\t'cStatus': 0,\r\n\t\t\t'cVINCode': 'WDDHF2EB9CA161524'\r\n\t\t}, {\r\n\t\t\t'id': 9,\r\n\t\t\t'cModel': 'Daytona',\r\n\t\t\t'cManufacture': 'Dodge',\r\n\t\t\t'cModelYear': 1993,\r\n\t\t\t'cMileage': 4444,\r\n\t\t\t// tslint:disable-next-line:max-line-length\r\n\t\t\t'cDescription': `The Dodge Daytona was an automobile which was produced by the Chrysler Corporation under their Dodge division from 1984 to 1993. It was a front-wheel drive hatchback based on the Chrysler G platform, which was derived from the Chrysler K platform. The Chrysler Laser was an upscale rebadged version of the Daytona. The Daytona was restyled for 1987, and again for 1992. It replaced the Mitsubishi Galant-based Challenger, and slotted between the Charger and the Conquest. The Daytona was replaced by the 1995 Dodge Avenger, which was built by Mitsubishi Motors. The Daytona derives its name mainly from the Dodge Charger Daytona, which itself was named after the Daytona 500 race in Daytona Beach, Florida.`,\r\n\t\t\t'cColor': 'Maroon',\r\n\t\t\t'cPrice': 171898,\r\n\t\t\t'cCondition': 0,\r\n\t\t\t'createdDate': '12/24/2017',\r\n\t\t\t'cStatus': 1,\r\n\t\t\t'cVINCode': 'WBAET37422N752051'\r\n\t\t}, {\r\n\t\t\t'id': 10,\r\n\t\t\t'cModel': '1500 Silverado',\r\n\t\t\t'cManufacture': 'Chevrolet',\r\n\t\t\t'cModelYear': 1999,\r\n\t\t\t'cMileage': 195310,\r\n\t\t\t// tslint:disable-next-line:max-line-length\r\n\t\t\t'cDescription': `The Chevrolet Silverado, and its mechanically identical cousin, the GMC Sierra, are a series of full-size and heavy-duty pickup trucks cManufactured by General Motors and introduced in 1998 as the successor to the long-running Chevrolet C/K line. The Silverado name was taken from a trim level previously used on its predecessor, the Chevrolet C/K pickup truck from 1975 through 1998. General Motors continues to offer a GMC-badged variant of the Chevrolet full-size pickup under the GMC Sierra name, first used in 1987 for its variant of the GMT400 platform trucks.`,\r\n\t\t\t'cColor': 'Blue',\r\n\t\t\t'cPrice': 25764,\r\n\t\t\t'cCondition': 0,\r\n\t\t\t'createdDate': '08/30/2017',\r\n\t\t\t'cStatus': 1,\r\n\t\t\t'cVINCode': '1N6AF0LX6EN590806'\r\n\t\t}, {\r\n\t\t\t'id': 11,\r\n\t\t\t'cModel': 'CTS',\r\n\t\t\t'cManufacture': 'Cadillac',\r\n\t\t\t'cModelYear': 2012,\r\n\t\t\t'cMileage': 170862,\r\n\t\t\t// tslint:disable-next-line:max-line-length\r\n\t\t\t'cDescription': `The Cadillac CTS is a mid-size luxury car / executive car designed, engineered, cManufactured and marketed by General Motors, and now in its third generation. \\r\\nInitially available only as a 4-door sedan on the GM Sigma platform, GM had offered the second generation CTS in three body styles: 4-door sedan, 2-door coupe, and 5-door sport wagon also using the Sigma platform — and the third generation in coupe and sedan configurations, using a stretched version of the GM Alpha platform.\\r\\nWayne Cherry and Kip Wasenko designed the exterior of the first generation CTS, marking the production debut of a design language (marketed as \"Art and Science\") first seen on the Evoq concept car. Bob Boniface and Robin Krieg designed the exterior of the third generation CTS`,\r\n\t\t\t'cColor': 'Crimson',\r\n\t\t\t'cPrice': 80588,\r\n\t\t\t'cCondition': 0,\r\n\t\t\t'createdDate': '02/15/2018',\r\n\t\t\t'cStatus': 0,\r\n\t\t\t'cVINCode': '1G4HR54KX4U506530'\r\n\t\t}, {\r\n\t\t\t'id': 12,\r\n\t\t\t'cModel': 'Astro',\r\n\t\t\t'cManufacture': 'Chevrolet',\r\n\t\t\t'cModelYear': 1995,\r\n\t\t\t'cMileage': 142137,\r\n\t\t\t// tslint:disable-next-line:max-line-length\r\n\t\t\t'cDescription': `The Chevrolet Astro was a rear-wheel drive van/minivan cManufactured and marketed by the American automaker Chevrolet from 1985 to 2005 and over two build generations. Along with its rebadged variant, the GMC Safari, the Astro was marketed in passenger as well as cargo and livery configurations—featuring a V6 engine, unibody construction with a separate front engine/suspension sub-frame, leaf-spring rear suspension, rear bi-parting doors, and a seating capacity of up to eight passengers`,\r\n\t\t\t'cColor': 'Teal',\r\n\t\t\t'cPrice': 72430,\r\n\t\t\t'cCondition': 1,\r\n\t\t\t'createdDate': '07/31/2017',\r\n\t\t\t'cStatus': 0,\r\n\t\t\t'cVINCode': 'KMHGH4JH2DU676107'\r\n\t\t}, {\r\n\t\t\t'id': 13,\r\n\t\t\t'cModel': 'XL7',\r\n\t\t\t'cManufacture': 'Suzuki',\r\n\t\t\t'cModelYear': 2009,\r\n\t\t\t'cMileage': 165165,\r\n\t\t\t// tslint:disable-next-line:max-line-length\r\n\t\t\t'cDescription': `The Suzuki XL-7 (styled as XL7 for the second generation) is Suzuki's mid-sized SUV that was made from 1998 to 2009, over two generations. It was slotted above the Grand Vitara in Suzuki's lineup.`,\r\n\t\t\t'cColor': 'Puce',\r\n\t\t\t'cPrice': 118667,\r\n\t\t\t'cCondition': 0,\r\n\t\t\t'createdDate': '02/04/2018',\r\n\t\t\t'cStatus': 0,\r\n\t\t\t'cVINCode': '1N6AF0LX9EN733005'\r\n\t\t}, {\r\n\t\t\t'id': 14,\r\n\t\t\t'cModel': 'SJ 410',\r\n\t\t\t'cManufacture': 'Suzuki',\r\n\t\t\t'cModelYear': 1984,\r\n\t\t\t'cMileage': 176074,\r\n\t\t\t// tslint:disable-next-line:max-line-length\r\n\t\t\t'cDescription': `The SJ-Series was introduced to the United States (Puerto Rico (SJ-410) and Canada earlier) in 1985 for the 1986 cModel year. It was cPriced at $6200 and 47,000 were sold in its first year. The Samurai had a 1.3 liter, 63 hp (47 kW), 4-cylinder engine and was available as a convertible or a hardtop, and with or without a rear seat. The Suzuki Samurai became intensely popular within the serious 4WD community for its good off-road performance and reliability compared to other 4WDs of the time. This is due to the fact that while very compact and light, it is a real 4WD vehicle equipped with a transfer case, switchable 4WD and low range. Its lightness makes it a very nimble off-roader less prone to sinking in softer ground than heavier types. It is also considered a great beginner off-roader due to its simple design and ease of engine and suspension modifications.`,\r\n\t\t\t'cColor': 'Orange',\r\n\t\t\t'cPrice': 84325,\r\n\t\t\t'cCondition': 0,\r\n\t\t\t'createdDate': '12/22/2017',\r\n\t\t\t'cStatus': 0,\r\n\t\t\t'cVINCode': '2C3CDYBT6DH183756'\r\n\t\t}, {\r\n\t\t\t'id': 15,\r\n\t\t\t'cModel': 'F-Series',\r\n\t\t\t'cManufacture': 'Ford',\r\n\t\t\t'cModelYear': 1995,\r\n\t\t\t'cMileage': 53030,\r\n\t\t\t// tslint:disable-next-line:max-line-length\r\n\t\t\t'cDescription': `The Ford F-Series is a series of light-duty trucks and medium-duty trucks (Class 2-7) that have been marketed and cManufactured by Ford Motor Company since 1948. While most variants of the F-Series trucks are full-size pickup trucks, the F-Series also includes chassis cab trucks and commercial vehicles. The Ford F-Series has been the best-selling vehicle in the United States since 1986 and the best-selling pickup since 1977.[1][2] It is also the best selling vehicle in Canada.[3] As of the 2018 cModel year, the F-Series generates $41.0 billion in annual revenue for Ford, making the F-Series brand more valuable than Coca-Cola and Nike.`,\r\n\t\t\t'cColor': 'Aquamarine',\r\n\t\t\t'cPrice': 77108,\r\n\t\t\t'cCondition': 0,\r\n\t\t\t'createdDate': '01/09/2018',\r\n\t\t\t'cStatus': 0,\r\n\t\t\t'cVINCode': 'WBAVB33526P873481'\r\n\t\t}, {\r\n\t\t\t'id': 16,\r\n\t\t\t'cModel': 'HS',\r\n\t\t\t'cManufacture': 'Lexus',\r\n\t\t\t'cModelYear': 2011,\r\n\t\t\t'cMileage': 84718,\r\n\t\t\t// tslint:disable-next-line:max-line-length\r\n\t\t\t'cDescription': `The Lexus HS (Japanese: レクサス・HS, Rekusasu HS) is a dedicated hybrid vehicle introduced by Lexus as a new entry-level luxury compact sedan in 2009.[2] Built on the Toyota New MC platform,[3] it is classified as a compact under Japanese regulations concerning vehicle exterior dimensions and engine displacement. Unveiled at the North American International Auto Show in January 2009, the HS 250h went on sale in July 2009 in Japan, followed by the United States in August 2009 as a 2010 cModel. The HS 250h represented the first dedicated hybrid vehicle in the Lexus lineup, as well as the first offered with an inline-four gasoline engine.[4] Bioplastic materials are used for the vehicle interior.[5] With a total length of 184.8 inches, the Lexus HS is slightly larger than the Lexus IS, but still smaller than the mid-size Lexus ES.`,\r\n\t\t\t'cColor': 'Purple',\r\n\t\t\t'cPrice': 140170,\r\n\t\t\t'cCondition': 0,\r\n\t\t\t'createdDate': '11/14/2017',\r\n\t\t\t'cStatus': 1,\r\n\t\t\t'cVINCode': '1FTWF3A56AE545514'\r\n\t\t}, {\r\n\t\t\t'id': 17,\r\n\t\t\t'cModel': 'Land Cruiser',\r\n\t\t\t'cManufacture': 'Toyota',\r\n\t\t\t'cModelYear': 2008,\r\n\t\t\t'cMileage': 157019,\r\n\t\t\t// tslint:disable-next-line:max-line-length\r\n\t\t\t'cDescription': `Production of the first generation Land Cruiser began in 1951 (90 units) as Toyota's version of a Jeep-like vehicle.[2][3] The Land Cruiser has been produced in convertible, hardtop, station wagon and cab chassis versions. The Land Cruiser's reliability and longevity has led to huge popularity, especially in Australia where it is the best-selling body-on-frame, four-wheel drive vehicle.[4] Toyota also extensively tests the Land Cruiser in the Australian outback – considered to be one of the toughest operating environments in both temperature and terrain. In Japan, the Land Cruiser is exclusive to Toyota Japanese dealerships called Toyota Store.`,\r\n\t\t\t'cColor': 'Crimson',\r\n\t\t\t'cPrice': 72638,\r\n\t\t\t'cCondition': 1,\r\n\t\t\t'createdDate': '08/08/2017',\r\n\t\t\t'cStatus': 1,\r\n\t\t\t'cVINCode': '3C3CFFDR2FT957799'\r\n\t\t}, {\r\n\t\t\t'id': 18,\r\n\t\t\t'cModel': 'Wrangler',\r\n\t\t\t'cManufacture': 'Jeep',\r\n\t\t\t'cModelYear': 1994,\r\n\t\t\t'cMileage': 55857,\r\n\t\t\t// tslint:disable-next-line:max-line-length\r\n\t\t\t'cDescription': `The Jeep Wrangler is a series of compact and mid-size (Wrangler Unlimited and Wrangler 4-door JL) four-wheel drive off-road vehicle cModels, cManufactured by Jeep since 1986, and currently migrating from its third into its fourth generation. The Wrangler JL was unveiled in late 2017 and will be produced at Jeep's Toledo Complex.`,\r\n\t\t\t'cColor': 'Red',\r\n\t\t\t'cPrice': 193523,\r\n\t\t\t'cCondition': 0,\r\n\t\t\t'createdDate': '02/28/2018',\r\n\t\t\t'cStatus': 1,\r\n\t\t\t'cVINCode': '3C4PDCAB7FT652291'\r\n\t\t}, {\r\n\t\t\t'id': 19,\r\n\t\t\t'cModel': 'Sunbird',\r\n\t\t\t'cManufacture': 'Pontiac',\r\n\t\t\t'cModelYear': 1994,\r\n\t\t\t'cMileage': 165202,\r\n\t\t\t// tslint:disable-next-line:max-line-length\r\n\t\t\t'cDescription': `The Pontiac Sunbird is an automobile that was produced by Pontiac, initially as a subcompact for the 1976 to 1980 cModel years, and later as a compact for the 1982 to 1994 cModel years. The Sunbird badge ran for 18 years (with a hiatus during the 1981 and 1982 cModel years, as the 1982 cModel was called J2000) and was then replaced in 1995 by the Pontiac Sunfire. Through the years the Sunbird was available in notchback coupé, sedan, hatchback, station wagon, and convertible body styles.`,\r\n\t\t\t'cColor': 'Blue',\r\n\t\t\t'cPrice': 198739,\r\n\t\t\t'cCondition': 0,\r\n\t\t\t'createdDate': '05/13/2017',\r\n\t\t\t'cStatus': 1,\r\n\t\t\t'cVINCode': '1GD22XEG9FZ103872'\r\n\t\t}, {\r\n\t\t\t'id': 20,\r\n\t\t\t'cModel': 'A4',\r\n\t\t\t'cManufacture': 'Audi',\r\n\t\t\t'cModelYear': 1998,\r\n\t\t\t'cMileage': 117958,\r\n\t\t\t// tslint:disable-next-line:max-line-length\r\n\t\t\t'cDescription': `The A4 has been built in five generations and is based on the Volkswagen Group B platform. The first generation A4 succeeded the Audi 80. The automaker's internal numbering treats the A4 as a continuation of the Audi 80 lineage, with the initial A4 designated as the B5-series, followed by the B6, B7, B8 and the B9. The B8 and B9 versions of the A4 are built on the Volkswagen Group MLB platform shared with many other Audi cModels and potentially one Porsche cModel within Volkswagen Group`,\r\n\t\t\t'cColor': 'Yellow',\r\n\t\t\t'cPrice': 159377,\r\n\t\t\t'cCondition': 0,\r\n\t\t\t'createdDate': '12/15/2017',\r\n\t\t\t'cStatus': 1,\r\n\t\t\t'cVINCode': '2C3CDXCT2FH350366'\r\n\t\t}, {\r\n\t\t\t'id': 21,\r\n\t\t\t'cModel': 'Camry Solara',\r\n\t\t\t'cManufacture': 'Toyota',\r\n\t\t\t'cModelYear': 2006,\r\n\t\t\t'cMileage': 22436,\r\n\t\t\t// tslint:disable-next-line:max-line-length\r\n\t\t\t'cDescription': `The Toyota Camry Solara, popularly known as the Toyota Solara, is a mid-size coupe/convertible built by Toyota. The Camry Solara is mechanically based on the Toyota Camry and effectively replaced the discontinued Camry Coupe (XV10); however, in contrast with its predecessor's conservative design, the Camry Solara was designed with a greater emphasis on sportiness, with more rakish styling, and uprated suspension and engine tuning intended to provide a sportier feel.[5] The coupe was launched in late 1998 as a 1999 cModel.[1] In 2000, the convertible was introduced, effectively replacing the Celica convertible in Toyota's North American lineup`,\r\n\t\t\t'cColor': 'Green',\r\n\t\t\t'cPrice': 122562,\r\n\t\t\t'cCondition': 0,\r\n\t\t\t'createdDate': '07/11/2017',\r\n\t\t\t'cStatus': 0,\r\n\t\t\t'cVINCode': '3C3CFFHH6DT874066'\r\n\t\t}, {\r\n\t\t\t'id': 22,\r\n\t\t\t'cModel': 'Tribeca',\r\n\t\t\t'cManufacture': 'Subaru',\r\n\t\t\t'cModelYear': 2007,\r\n\t\t\t'cMileage': 127958,\r\n\t\t\t// tslint:disable-next-line:max-line-length\r\n\t\t\t'cDescription': `The Subaru Tribeca is a mid-size crossover SUV made from 2005 to 2014. Released in some markets, including Canada, as the Subaru B9 Tribeca, the name \"Tribeca\" derives from the Tribeca neighborhood of New York City.[1] Built on the Subaru Legacy platform and sold in five- and seven-seat configurations, the Tribeca was intended to be sold alongside a slightly revised version known as the Saab 9-6. Saab, at the time a subsidiary of General Motors (GM), abandoned the 9-6 program just prior to its release subsequent to GM's 2005 divestiture of its 20 percent stake in FHI.`,\r\n\t\t\t'cColor': 'Yellow',\r\n\t\t\t'cPrice': 90221,\r\n\t\t\t'cCondition': 1,\r\n\t\t\t'createdDate': '11/12/2017',\r\n\t\t\t'cStatus': 0,\r\n\t\t\t'cVINCode': 'WVWGU7AN9AE957575'\r\n\t\t}, {\r\n\t\t\t'id': 23,\r\n\t\t\t'cModel': '1500 Club Coupe',\r\n\t\t\t'cManufacture': 'GMC',\r\n\t\t\t'cModelYear': 1997,\r\n\t\t\t'cMileage': 95783,\r\n\t\t\t// tslint:disable-next-line:max-line-length\r\n\t\t\t'cDescription': `GMC (General Motors Truck Company), formally the GMC Division of General Motors LLC, is a division of the American automobile cManufacturer General Motors (GM) that primarily focuses on trucks and utility vehicles. GMC sells pickup and commercial trucks, buses, vans, military vehicles, and sport utility vehicles marketed worldwide by General Motors.`,\r\n\t\t\t'cColor': 'Teal',\r\n\t\t\t'cPrice': 64376,\r\n\t\t\t'cCondition': 1,\r\n\t\t\t'createdDate': '06/28/2017',\r\n\t\t\t'cStatus': 0,\r\n\t\t\t'cVINCode': 'SCFBF04BX7G920997'\r\n\t\t}, {\r\n\t\t\t'id': 24,\r\n\t\t\t'cModel': 'Firebird',\r\n\t\t\t'cManufacture': 'Pontiac',\r\n\t\t\t'cModelYear': 2002,\r\n\t\t\t'cMileage': 74063,\r\n\t\t\t// tslint:disable-next-line:max-line-length\r\n\t\t\t'cDescription': `The Pontiac Firebird is an American automobile built by Pontiac from the 1967 to the 2002 cModel years. Designed as a pony car to compete with the Ford Mustang, it was introduced 23 February 1967, the same cModel year as GM's Chevrolet division platform-sharing Camaro.[1] This also coincided with the release of the 1967 Mercury Cougar, Ford's upscale, platform-sharing version of the Mustang. The name \"Firebird\" was also previously used by GM for the General Motors Firebird 1950s and early-1960s`,\r\n\t\t\t'cColor': 'Puce',\r\n\t\t\t'cPrice': 94178,\r\n\t\t\t'cCondition': 1,\r\n\t\t\t'createdDate': '09/13/2017',\r\n\t\t\t'cStatus': 0,\r\n\t\t\t'cVINCode': '3C63D2JL5CG563879'\r\n\t\t}, {\r\n\t\t\t'id': 25,\r\n\t\t\t'cModel': 'RAV4',\r\n\t\t\t'cManufacture': 'Toyota',\r\n\t\t\t'cModelYear': 1996,\r\n\t\t\t'cMileage': 99461,\r\n\t\t\t// tslint:disable-next-line:max-line-length\r\n\t\t\t'cDescription': `The Toyota RAV4 (Japanese: トヨタ RAV4 Toyota Ravufō) is a compact crossover SUV (sport utility vehicle) produced by the Japanese automobile cManufacturer Toyota. This was the first compact crossover SUV;[1] it made its debut in Japan and Europe in 1994,[2] and in North America in 1995. The vehicle was designed for consumers wanting a vehicle that had most of the benefits of SUVs, such as increased cargo room, higher visibility, and the option of full-time four-wheel drive, along with the maneuverability and fuel economy of a compact car. Although not all RAV4s are four-wheel-drive, RAV4 stands for \"Recreational Activity Vehicle: 4-wheel drive\", because the aforementioned equipment is an option in select countries`,\r\n\t\t\t'cColor': 'Goldenrod',\r\n\t\t\t'cPrice': 48342,\r\n\t\t\t'cCondition': 0,\r\n\t\t\t'createdDate': '12/29/2017',\r\n\t\t\t'cStatus': 0,\r\n\t\t\t'cVINCode': '2C4RDGDG6DR836144'\r\n\t\t}, {\r\n\t\t\t'id': 26,\r\n\t\t\t'cModel': 'Amanti / Opirus',\r\n\t\t\t'cManufacture': 'Kia',\r\n\t\t\t'cModelYear': 2007,\r\n\t\t\t'cMileage': 189651,\r\n\t\t\t// tslint:disable-next-line:max-line-length\r\n\t\t\t'cDescription': `The Kia Opirus was an executive car cManufactured and marketed by Kia Motors that was launched in April 2003 and was marketed globally under various nameplates, prominently as the Amanti. It was considered to be Kia's flagship vehicle.`,\r\n\t\t\t'cColor': 'Indigo',\r\n\t\t\t'cPrice': 44292,\r\n\t\t\t'cCondition': 1,\r\n\t\t\t'createdDate': '09/01/2017',\r\n\t\t\t'cStatus': 1,\r\n\t\t\t'cVINCode': '1C4SDHCT2CC055294'\r\n\t\t}, {\r\n\t\t\t'id': 27,\r\n\t\t\t'cModel': 'S60',\r\n\t\t\t'cManufacture': 'Volvo',\r\n\t\t\t'cModelYear': 2001,\r\n\t\t\t'cMileage': 78963,\r\n\t\t\t// tslint:disable-next-line:max-line-length\r\n\t\t\t'cDescription': `First introduced in 2004, Volvo's S60 R used a Haldex all-wheel-drive system mated to a 300 PS (221 kW; 296 hp) / 400 N⋅m (300 lbf⋅ft) inline-5. The 2004–2005 cModels came with a 6-speed manual transmission, or an available 5-speed automatic which allowed only 258 lb⋅ft (350 N⋅m) torque in 1st and 2nd gears. The 2006–2007 cModels came with a 6-speed manual or 6-speed automatic transmission (which was no longer torque-restricted)`,\r\n\t\t\t'cColor': 'Goldenrod',\r\n\t\t\t'cPrice': 9440,\r\n\t\t\t'cCondition': 0,\r\n\t\t\t'createdDate': '11/06/2017',\r\n\t\t\t'cStatus': 0,\r\n\t\t\t'cVINCode': '3C6TD5CT5CG316067',\r\n\t\t}, {\r\n\t\t\t'id': 28,\r\n\t\t\t'cModel': 'Grand Marquis',\r\n\t\t\t'cManufacture': 'Mercury',\r\n\t\t\t'cModelYear': 1984,\r\n\t\t\t'cMileage': 153027,\r\n\t\t\t// tslint:disable-next-line:max-line-length\r\n\t\t\t'cDescription': `The Mercury Grand Marquis is an automobile that was sold by the Mercury division of Ford Motor Company from 1975 to 2011. From 1975 to 1982, it was the premium cModel of the Mercury Marquis cModel line, becoming a standalone cModel line in 1983. For its entire production run, the Grand Marquis served as the flagship of the Mercury line, with the Ford (LTD) Crown Victoria serving as its Ford counterpart. In addition, from 1979 to 2011, the Grand Marquis shared the rear-wheel drive Panther platform alongside the Lincoln Town Car`,\r\n\t\t\t'cColor': 'Goldenrod',\r\n\t\t\t'cPrice': 76027,\r\n\t\t\t'cCondition': 0,\r\n\t\t\t'createdDate': '12/16/2017',\r\n\t\t\t'cStatus': 1,\r\n\t\t\t'cVINCode': '3C3CFFJH2DT871398'\r\n\t\t}, {\r\n\t\t\t'id': 29,\r\n\t\t\t'cModel': 'Talon',\r\n\t\t\t'cManufacture': 'Eagle',\r\n\t\t\t'cModelYear': 1991,\r\n\t\t\t'cMileage': 111234,\r\n\t\t\t// tslint:disable-next-line:max-line-length\r\n\t\t\t'cDescription': `Cosmetically, differences between the three were found in wheels, availability of cColors, tail lights, front and rear bumpers, and spoilers. The Talon featured two-tone body cColor with a black 'greenhouse' (roof, pillars, door-mounted mirrors) regardless of the body cColor. The variants featured 5-speed manual or 4-speed automatic transmissions and a hood bulge on the left-hand side of the car in order for camshaft clearance on the 4G63 engine. The base cModel DL did not use this engine but still had a bulge as evident in the 1992 Talon brochure. 2nd Generation cars all had such a bulge, even with the inclusion of the 420A engine`,\r\n\t\t\t'cColor': 'Teal',\r\n\t\t\t'cPrice': 157216,\r\n\t\t\t'cCondition': 0,\r\n\t\t\t'createdDate': '05/08/2017',\r\n\t\t\t'cStatus': 1,\r\n\t\t\t'cVINCode': 'YV1902FH1D2957659'\r\n\t\t}, {\r\n\t\t\t'id': 30,\r\n\t\t\t'cModel': 'Passport',\r\n\t\t\t'cManufacture': 'Honda',\r\n\t\t\t'cModelYear': 2002,\r\n\t\t\t'cMileage': 3812,\r\n\t\t\t// tslint:disable-next-line:max-line-length\r\n\t\t\t'cDescription': `The Passport was a part of a partnership between Isuzu and Honda in the 1990s, which saw an exchange of passenger vehicles from Honda to Isuzu, such as the Isuzu Oasis, and trucks from Isuzu to Honda, such as the Passport and Acura SLX. This arrangement was convenient for both companies, as Isuzu discontinued passenger car production in 1993 after a corporate restructuring, and Honda was in desperate need a SUV, a segment that was growing in popularity in North America as well as Japan during the 1990s. The partnership ended in 2002 with the discontinuation of the Passport in favor of the Honda-engineered Pilot`,\r\n\t\t\t'cColor': 'Puce',\r\n\t\t\t'cPrice': 41299,\r\n\t\t\t'cCondition': 1,\r\n\t\t\t'createdDate': '03/08/2018',\r\n\t\t\t'cStatus': 0,\r\n\t\t\t'cVINCode': 'WVWEU9AN4AE524071'\r\n\t\t}, {\r\n\t\t\t'id': 31,\r\n\t\t\t'cModel': 'H3',\r\n\t\t\t'cManufacture': 'Hummer',\r\n\t\t\t'cModelYear': 2006,\r\n\t\t\t'cMileage': 196321,\r\n\t\t\t// tslint:disable-next-line:max-line-length\r\n\t\t\t'cDescription': `The Hummer H3 is a sport utility vehicle/off-road vehicle from Hummer that was produced from 2005 to 2010. Introduced for the 2006 cModel year, it was based on a highly modified GMT355 underpinning the Chevrolet cColorado/GMC Canyon compact pickup trucks that were also built at GM's Shreveport Operations in Shreveport, Louisiana and the Port Elizabeth plant in South Africa. The H3 was actually the smallest among the Hummer cModels. It was available either as a traditional midsize SUV or as a midsize pickup known as the H3T`,\r\n\t\t\t'cColor': 'Pink',\r\n\t\t\t'cPrice': 186964,\r\n\t\t\t'cCondition': 1,\r\n\t\t\t'createdDate': '06/04/2017',\r\n\t\t\t'cStatus': 1,\r\n\t\t\t'cVINCode': '4T1BF1FK4FU746230',\r\n\t\t}, {\r\n\t\t\t'id': 32,\r\n\t\t\t'cModel': 'Comanche',\r\n\t\t\t'cManufacture': 'Jeep',\r\n\t\t\t'cModelYear': 1992,\r\n\t\t\t'cMileage': 72285,\r\n\t\t\t// tslint:disable-next-line:max-line-length\r\n\t\t\t'cDescription': `The Jeep Comanche (designated MJ) is a pickup truck variant of the Cherokee compact SUV (1984–2001)[3] cManufactured and marketed by Jeep for cModel years 1986-1992 in rear wheel (RWD) and four-wheel drive (4WD) cModels as well as two cargo bed lengths: six-feet (1.83 metres) and seven-feet (2.13 metres)`,\r\n\t\t\t'cColor': 'Mauv',\r\n\t\t\t'cPrice': 145971,\r\n\t\t\t'cCondition': 1,\r\n\t\t\t'createdDate': '09/01/2017',\r\n\t\t\t'cStatus': 0,\r\n\t\t\t'cVINCode': '1J4PN2GK1BW745045'\r\n\t\t}, {\r\n\t\t\t'id': 33,\r\n\t\t\t'cModel': 'Blazer',\r\n\t\t\t'cManufacture': 'Chevrolet',\r\n\t\t\t'cModelYear': 1993,\r\n\t\t\t'cMileage': 189804,\r\n\t\t\t// tslint:disable-next-line:max-line-length\r\n\t\t\t'cDescription': `The 2014 – 2nd generation, MY14 Duramax 2.8L diesel engines have several new parts, namely a new water-cooled variable-geometry turbocharger, a new high-pressure common-rail fuel delivery system, a new exhaust gas recirculation (EGR) system, a new intake manifold, a new cylinder head, a new cylinder block, a new balance shaft unit and a new Engine Control Module (ECM). and now produce 197 hp and 369 Ft/Lbs of torque`,\r\n\t\t\t'cColor': 'Indigo',\r\n\t\t\t'cPrice': 154594,\r\n\t\t\t'cCondition': 0,\r\n\t\t\t'createdDate': '09/13/2017',\r\n\t\t\t'cStatus': 0,\r\n\t\t\t'cVINCode': '1G6KD57Y43U482896'\r\n\t\t}, {\r\n\t\t\t'id': 34,\r\n\t\t\t'cModel': 'Envoy XUV',\r\n\t\t\t'cManufacture': 'GMC',\r\n\t\t\t'cModelYear': 2004,\r\n\t\t\t'cMileage': 187960,\r\n\t\t\t// tslint:disable-next-line:max-line-length\r\n\t\t\t'cDescription': `The GMC Envoy is a mid-size SUV that was produced by General Motors. It was introduced for the 1998 cModel year. After the first generation Envoy was discontinued after the 2000 cModel year, but the Envoy was reintroduced and redesigned for the 2002 cModel year, and it was available in the GMC line of vehicles from the 2002 to 2009 cModel years`,\r\n\t\t\t'cColor': 'Turquoise',\r\n\t\t\t'cPrice': 185103,\r\n\t\t\t'cCondition': 1,\r\n\t\t\t'createdDate': '12/07/2017',\r\n\t\t\t'cStatus': 0,\r\n\t\t\t'cVINCode': '5GAER23D09J658030'\r\n\t\t}\r\n\t];\r\n}\r\n","// Angular\r\nimport { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\n// RxJS\r\nimport { Observable } from 'rxjs';\r\n// Models\r\nimport { DataTableItemModel } from '../models/datatable-item.model';\r\n\r\nconst API_DATATABLE_URL = 'api/cars';\r\n\r\n@Injectable()\r\nexport class DataTableService {\r\n\t/**\r\n\t * Service Constructor\r\n\t *\r\n\t * @param http: HttpClient\r\n\t */\r\n\tconstructor(private http: HttpClient) { }\r\n\r\n\t/**\r\n\t * Returns data from fake server\r\n\t */\r\n\tgetAllItems(): Observable {\r\n\t\treturn this.http.get(API_DATATABLE_URL);\r\n\t}\r\n}\r\n","// Angular\r\nimport { Injectable } from '@angular/core';\r\n// RxJS\r\nimport { BehaviorSubject } from 'rxjs';\r\n\r\n@Injectable()\r\nexport class KtDialogService {\r\n\tprivate ktDialog: any;\r\n\tprivate currentState: BehaviorSubject = new BehaviorSubject(false);\r\n\r\n\t// Public properties\r\n\tconstructor() {\r\n\t\tthis.ktDialog = new KTDialog({'type': 'loader', 'placement': 'top center', 'message': 'Loading ...'});\r\n\t}\r\n\r\n\tshow() {\r\n\t\tthis.currentState.next(true);\r\n\t\tthis.ktDialog.show();\r\n\t}\r\n\r\n\thide() {\r\n\t\tthis.currentState.next(false);\r\n\t\tthis.ktDialog.hide();\r\n\t}\r\n\r\n\tcheckIsShown() {\r\n\t\treturn this.currentState.value;\r\n\t}\r\n}\r\n","// Angular\r\nimport { Injectable } from '@angular/core';\r\n// RxJS\r\nimport { Subject } from 'rxjs';\r\n// Object-Path\r\nimport * as objectPath from 'object-path';\r\n// Lodash\r\nimport { merge } from 'lodash';\r\n// Models\r\nimport { LayoutConfigModel } from '../models/layout-config.model';\r\n\r\n@Injectable()\r\nexport class LayoutConfigService {\r\n\t// Public properties\r\n\tonConfigUpdated$: Subject;\r\n\tlayoutConfig: LayoutConfigModel;\r\n\r\n\t/**\r\n\t * Servcie constructor\r\n\t */\r\n\tconstructor() {\r\n\t\t// register on config changed event and set default config\r\n\t\tthis.onConfigUpdated$ = new Subject();\r\n\t}\r\n\r\n\t/**\r\n\t * Save layout config to the local storage\r\n\t * @param layoutConfig\r\n\t */\r\n\tsaveConfig(layoutConfig: LayoutConfigModel): void {\r\n\t\tif (layoutConfig) {\r\n\t\t\tlocalStorage.setItem('layoutConfig', JSON.stringify(layoutConfig));\r\n\t\t}\r\n\t}\r\n\r\n\t/**\r\n\t * Get layout config from local storage\r\n\t */\r\n\tgetSavedConfig(): LayoutConfigModel {\r\n\t\tconst config = localStorage.getItem('layoutConfig');\r\n\t\ttry {\r\n\t\t\treturn JSON.parse(config);\r\n\t\t} catch (e) {\r\n\t\t}\r\n\t}\r\n\r\n\t/**\r\n\t * Remove saved layout config and revert back to default\r\n\t */\r\n\tresetConfig(): void {\r\n\t\tlocalStorage.removeItem('layoutConfig');\r\n\t}\r\n\r\n\t/**\r\n\t * Get all config or by object path\r\n\t * @param path | object path separated by dot\r\n\t */\r\n\tgetConfig(path?: string): LayoutConfigModel | any {\r\n\t\t// merge default layout config with the saved config from layout storage\r\n\t\t// @todo; known issue; viewing 2 or more demos at the time in different browser's tabs, can cause conflict to the layout config\r\n\t\tthis.layoutConfig = this.getSavedConfig();\r\n\r\n\t\tif (path) {\r\n\t\t\t// if path is specified, get the value within object\r\n\t\t\treturn objectPath.get(this.layoutConfig, path);\r\n\t\t}\r\n\r\n\t\treturn this.layoutConfig;\r\n\t}\r\n\r\n\t/**\r\n\t * Set existing config with a new value\r\n\t * @param value\r\n\t * @param save\r\n\t */\r\n\tsetConfig(value: any, save?: boolean): void {\r\n\t\tthis.layoutConfig = merge(this.layoutConfig, value);\r\n\r\n\t\tif (save) {\r\n\t\t\tthis.saveConfig(this.layoutConfig);\r\n\t\t}\r\n\r\n\t\t// fire off an event that all subscribers will listen\r\n\t\tthis.onConfigUpdated$.next(this.layoutConfig);\r\n\t}\r\n\r\n\t/**\r\n\t * Get brand logo\r\n\t */\r\n\tgetLogo(): string {\r\n\t\tconst menuAsideLeftSkin = objectPath.get(this.layoutConfig, 'brand.self.skin');\r\n\t\t// set brand logo\r\n\t\tconst logoObject = objectPath.get(this.layoutConfig, 'self.logo');\r\n\r\n\t\tlet logo;\r\n\t\tif (typeof logoObject === 'string') {\r\n\t\t\tlogo = logoObject;\r\n\t\t}\r\n\t\tif (typeof logoObject === 'object') {\r\n\t\t\tlogo = objectPath.get(logoObject, menuAsideLeftSkin + '');\r\n\t\t}\r\n\t\tif (typeof logo === 'undefined') {\r\n\t\t\ttry {\r\n\t\t\t\tconst logos = objectPath.get(this.layoutConfig, 'self.logo');\r\n\t\t\t\tlogo = logos[Object.keys(logos)[0]];\r\n\t\t\t} catch (e) {\r\n\t\t\t}\r\n\t\t}\r\n\t\treturn logo;\r\n\t}\r\n\r\n\t/**\r\n\t * Returns sticky logo\r\n\t */\r\n\tgetStickyLogo(): string {\r\n\t\tlet logo = objectPath.get(this.layoutConfig, 'self.logo.sticky');\r\n\t\tif (typeof logo === 'undefined') {\r\n\t\t\tlogo = this.getLogo();\r\n\t\t}\r\n\t\treturn logo + '';\r\n\t}\r\n\r\n\t/**\r\n\t * Initialize layout config\r\n\t * @param config\r\n\t */\r\n\tloadConfigs(config: LayoutConfigModel) {\r\n\t\tthis.layoutConfig = this.getSavedConfig();\r\n\t\t// use saved config as priority, or load new config if demo does not matched\r\n\t\tif (!this.layoutConfig || objectPath.get(this.layoutConfig, 'demo') !== config.demo) {\r\n\t\t\tthis.layoutConfig = config;\r\n\t\t}\r\n\t\tthis.saveConfig(this.layoutConfig);\r\n\t}\r\n\r\n\t/**\r\n\t * Reload current layout config to the state of latest saved config\r\n\t */\r\n\treloadConfigs(): LayoutConfigModel {\r\n\t\tthis.layoutConfig = this.getSavedConfig();\r\n\t\tthis.onConfigUpdated$.next(this.layoutConfig);\r\n\t\treturn this.layoutConfig;\r\n\t}\r\n\r\n\t/**\r\n\t * Get default route name by object\r\n\t */\r\n\tgetCurrentMainRoute(): string {\r\n\t\tconst config = this.getConfig();\r\n\t\tif (!config) {\r\n\t\t\t// tslint:disable-next-line:no-string-throw\r\n\t\t\treturn '';\r\n\t\t}\r\n\r\n\t\tconst url = config.demo;\r\n\t\tif (!url) {\r\n\t\t\t// tslint:disable-next-line:no-string-throw\r\n\t\t\treturn '';\r\n\t\t}\r\n\r\n\t\treturn url;\r\n\t}\r\n}\r\n","// Angular\r\nimport { Injectable } from '@angular/core';\r\n// RxJS\r\nimport { BehaviorSubject } from 'rxjs';\r\n\r\n@Injectable()\r\nexport class LayoutRefService {\r\n\t// Public properties\r\n\tlayoutRefs$: BehaviorSubject = new BehaviorSubject({});\r\n\tlayoutRefs: any = {};\r\n\r\n\t/**\r\n\t * Add element to Ref\r\n\t *\r\n\t * @param name: any\r\n\t * @param element: any\r\n\t */\r\n\taddElement(name, element) {\r\n\t\tconst obj = {};\r\n\t\tobj[name] = element;\r\n\r\n\t\tthis.layoutRefs = Object.assign({}, this.layoutRefs, obj);\r\n\t\tthis.layoutRefs$.next(this.layoutRefs);\r\n\t}\r\n}\r\n","// Angular\r\nimport { Injectable } from '@angular/core';\r\n// RxJS\r\nimport { BehaviorSubject } from 'rxjs';\r\n// Object path\r\nimport * as objectPath from 'object-path';\r\n// Services\r\nimport { MenuConfigService } from './menu-config.service';\r\n\r\n@Injectable()\r\nexport class MenuAsideService {\r\n\t// Public properties\r\n\tmenuList$: BehaviorSubject = new BehaviorSubject([]);\r\n\r\n\t/**\r\n\t * Service constructor\r\n\t *\r\n\t * @param menuConfigService: MenuConfigService\r\n\t */\r\n\tconstructor(private menuConfigService: MenuConfigService) {\r\n\t\tthis.loadMenu();\r\n\t}\r\n\r\n\t/**\r\n\t * Load menu list\r\n\t */\r\n\tloadMenu() {\r\n\t\t// get menu list\r\n\t\tconst menuItems: any[] = objectPath.get(this.menuConfigService.getMenus(), 'aside.items');\r\n\t\tthis.menuList$.next(menuItems);\r\n\t}\r\n}\r\n","// Angular\r\nimport { Injectable } from '@angular/core';\r\n// RxJS\r\nimport { Subject } from 'rxjs';\r\n\r\n@Injectable()\r\nexport class MenuConfigService {\r\n\t// Public properties\r\n\tonConfigUpdated$: Subject;\r\n\t// Private properties\r\n\tprivate menuConfig: any;\r\n\r\n\t/**\r\n\t * Service Constructor\r\n\t */\r\n\tconstructor() {\r\n\t\t// register on config changed event and set default config\r\n\t\tthis.onConfigUpdated$ = new Subject();\r\n\t}\r\n\r\n\t/**\r\n\t * Returns the menuConfig\r\n\t */\r\n\tgetMenus() {\r\n\t\treturn this.menuConfig;\r\n\t}\r\n\r\n\t/**\r\n\t * Load config\r\n\t *\r\n\t * @param config: any\r\n\t */\r\n\tloadConfigs(config: any) {\r\n\t\tthis.menuConfig = config;\r\n\t\tthis.onConfigUpdated$.next(this.menuConfig);\r\n\t}\r\n}\r\n","// Angular\r\nimport { Injectable } from '@angular/core';\r\n// RxJS\r\nimport { BehaviorSubject } from 'rxjs';\r\n// Object path\r\nimport * as objectPath from 'object-path';\r\n// Services\r\nimport { MenuConfigService } from './menu-config.service';\r\n\r\n@Injectable()\r\nexport class MenuHorizontalService {\r\n\t// Public properties\r\n\tmenuList$: BehaviorSubject = new BehaviorSubject([]);\r\n\r\n\t/**\r\n\t * Service constructor\r\n\t *\r\n\t * @param menuConfigService: MenuConfigService\r\n\t */\r\n\tconstructor(private menuConfigService: MenuConfigService) {\r\n\t\tthis.loadMenu();\r\n\t}\r\n\r\n\t/**\r\n\t * Load menu list\r\n\t */\r\n\tloadMenu() {\r\n\t\t// get menu list\r\n\t\tconst menuItems: any[] = objectPath.get(this.menuConfigService.getMenus(), 'header.items');\r\n\t\tthis.menuList$.next(menuItems);\r\n\t}\r\n}\r\n","// Angular\r\nimport { Injectable } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\n// RxJS\r\nimport { Subject } from 'rxjs';\r\n// Object-Path\r\nimport * as objectPath from 'object-path';\r\n// Lodash\r\nimport { merge } from 'lodash';\r\n\r\n@Injectable()\r\nexport class PageConfigService {\r\n\t// Public properties\r\n\tonConfigUpdated$: Subject;\r\n\tpageConfig: any;\r\n\r\n\t/**\r\n\t * Service Constructor\r\n\t *\r\n\t * @param router: Router\r\n\t */\r\n\tconstructor(private router: Router) {\r\n\t\t// register on config changed event and set default config\r\n\t\tthis.onConfigUpdated$ = new Subject();\r\n\t}\r\n\r\n\t/**\r\n\t * Get current page config based on route\r\n\t */\r\n\tgetCurrentPageConfig(path?: string): any {\r\n\t\tlet configPath = this.cleanUrl(this.router.url);\r\n\r\n\t\tif (path) {\r\n\t\t\tconfigPath += '.' + path;\r\n\t\t}\r\n\r\n\t\t// get page config by path\r\n\t\treturn objectPath.get(this.pageConfig, configPath);\r\n\t}\r\n\r\n\t/**\r\n\t * Set existing config with a new value\r\n\t * @param value: any\r\n\t * @param sav: boolean?\r\n\t */\r\n\tsetConfig(value: any, save?: boolean): void {\r\n\t\tthis.pageConfig = merge(this.pageConfig, value);\r\n\r\n\t\tif (save) {\r\n\t\t\t// not implemented\r\n\t\t}\r\n\r\n\t\t// fire off an event that all subscribers will listen\r\n\t\tthis.onConfigUpdated$.next(this.pageConfig);\r\n\t}\r\n\r\n\t/**\r\n\t * Load confgis\r\n\t *\r\n\t * @param config: any\r\n\t */\r\n\tloadConfigs(config: any) {\r\n\t\tthis.pageConfig = config;\r\n\t\tthis.onConfigUpdated$.next(this.pageConfig);\r\n\t}\r\n\r\n\t/**\r\n\t * Remove unnecessary params from URL\r\n\t * @param url\r\n\t */\r\n\tcleanUrl(url: string): string {\r\n\t\t// remove first route (demo name) from url router\r\n\t\tif (new RegExp(/^\\/demo/).test(url)) {\r\n\t\t\tconst urls = url.split('/');\r\n\t\t\turls.splice(0, 2);\r\n\t\t\turl = urls.join('/');\r\n\t\t}\r\n\r\n\t\tif (url.charAt(0) == '/') {\r\n\t\t\turl = url.substr(1);\r\n\t\t}\r\n\r\n\t\t// we get the page title from config, using url path.\r\n\t\t// we need to remove query from url ?id=1 before we use the path to search in array config.\r\n\t\tlet finalUrl = url.replace(/\\//g, '.');\r\n\t\tif (finalUrl.indexOf('?') !== -1) {\r\n\t\t\tfinalUrl = finalUrl.substring(0, finalUrl.indexOf('?'));\r\n\t\t}\r\n\r\n\t\treturn finalUrl;\r\n\t}\r\n}\r\n","// Angular\r\nimport { ElementRef, Injectable } from '@angular/core';\r\nimport { animate, AnimationBuilder, style } from '@angular/animations';\r\n\r\n@Injectable()\r\nexport class SplashScreenService {\r\n\t// Private properties\r\n\tprivate el: ElementRef;\r\n\tprivate stopped: boolean;\r\n\r\n\t/**\r\n\t * Service constctuctor\r\n\t *\r\n\t * @param animationBuilder: AnimationBuilder\r\n\t */\r\n\tconstructor(private animationBuilder: AnimationBuilder) {\r\n\t}\r\n\r\n\t/**\r\n\t * Init\r\n\t *\r\n\t * @param element: ElementRef\r\n\t */\r\n\tinit(element: ElementRef) {\r\n\t\tthis.el = element;\r\n\t}\r\n\r\n\t/**\r\n\t * Hide\r\n\t */\r\n\thide() {\r\n\t\tif (this.stopped) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tconst player = this.animationBuilder.build([\r\n\t\t\tstyle({opacity: '1'}),\r\n\t\t\tanimate(800, style({opacity: '0'}))\r\n\t\t]).create(this.el.nativeElement);\r\n\r\n\t\tplayer.onDone(() => {\r\n\t\t\tif (typeof this.el.nativeElement.remove === 'function') {\r\n\t\t\t\tthis.el.nativeElement.remove();\r\n\t\t\t} else {\r\n\t\t\t\tthis.el.nativeElement.style.display = 'none';\r\n\t\t\t}\r\n\t\t\tthis.stopped = true;\r\n\t\t});\r\n\r\n\t\tsetTimeout(() => player.play(), 300);\r\n\t}\r\n}\r\n","// Angular\r\nimport { Injectable } from '@angular/core';\r\nimport { NavigationEnd, Router } from '@angular/router';\r\n// RxJS\r\nimport { BehaviorSubject, Subject } from 'rxjs';\r\nimport { filter } from 'rxjs/operators';\r\n// Object-Path\r\nimport * as objectPath from 'object-path';\r\n// Services\r\nimport { PageConfigService } from './page-config.service';\r\nimport { MenuConfigService } from './menu-config.service';\r\n\r\nexport interface Breadcrumb {\r\n\ttitle: string;\r\n\tpage: string | any;\r\n}\r\n\r\nexport interface BreadcrumbTitle {\r\n\ttitle: string;\r\n\tdesc?: string;\r\n}\r\n\r\n@Injectable()\r\nexport class SubheaderService {\r\n\t// Public properties\r\n\ttitle$: BehaviorSubject = new BehaviorSubject({title: '', desc: ''});\r\n\tbreadcrumbs$: BehaviorSubject = new BehaviorSubject([]);\r\n\tdisabled$: Subject = new Subject();\r\n\r\n\t// Private properties\r\n\tprivate manualBreadcrumbs: any = {};\r\n\tprivate appendingBreadcrumbs: any = {};\r\n\tprivate manualTitle: any = {};\r\n\r\n\tprivate asideMenus: any;\r\n\tprivate headerMenus: any;\r\n\tprivate pageConfig: any;\r\n\r\n\t/**\r\n\t * Service Constructor\r\n\t *\r\n\t * @param router: Router\r\n\t * @param pageConfigService: PageConfigServie\r\n\t * @param menuConfigService: MenuConfigService\r\n\t */\r\n\tconstructor(\r\n\t\tprivate router: Router,\r\n\t\tprivate pageConfigService: PageConfigService,\r\n\t\tprivate menuConfigService: MenuConfigService) {\r\n\t\tconst initBreadcrumb = () => {\r\n\t\t\t// get updated title current page config\r\n\t\t\tthis.pageConfig = this.pageConfigService.getCurrentPageConfig();\r\n\r\n\t\t\tthis.headerMenus = objectPath.get(this.menuConfigService.getMenus(), 'header');\r\n\t\t\tthis.asideMenus = objectPath.get(this.menuConfigService.getMenus(), 'aside');\r\n\r\n\t\t\t// update breadcrumb on initial page load\r\n\t\t\tthis.updateBreadcrumbs();\r\n\r\n\t\t\tif (objectPath.get(this.manualTitle, this.router.url)) {\r\n\t\t\t\tthis.setTitle(this.manualTitle[this.router.url]);\r\n\t\t\t} else {\r\n\t\t\t\t// get updated page title on every route changed\r\n\t\t\t\tthis.title$.next(objectPath.get(this.pageConfig, 'page'));\r\n\r\n\t\t\t\t// subheader enable/disable\r\n\t\t\t\tconst hideSubheader = objectPath.get(this.pageConfig, 'page.subheader');\r\n\t\t\t\tthis.disabled$.next(typeof hideSubheader !== 'undefined' && !hideSubheader);\r\n\r\n\t\t\t\tif (objectPath.get(this.manualBreadcrumbs, this.router.url)) {\r\n\t\t\t\t\t// breadcrumbs was set manually\r\n\t\t\t\t\tthis.setBreadcrumbs(this.manualBreadcrumbs[this.router.url]);\r\n\t\t\t\t} else {\r\n\t\t\t\t\t// get updated breadcrumbs on every route changed\r\n\t\t\t\t\tthis.updateBreadcrumbs();\r\n\t\t\t\t\t// breadcrumbs was appended before, reuse it for this page\r\n\t\t\t\t\tif (objectPath.get(this.appendingBreadcrumbs, this.router.url)) {\r\n\t\t\t\t\t\tthis.appendBreadcrumbs(this.appendingBreadcrumbs[this.router.url]);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t};\r\n\r\n\t\tinitBreadcrumb();\r\n\r\n\t\t// subscribe to router events\r\n\t\tthis.router.events\r\n\t\t\t.pipe(filter(event => event instanceof NavigationEnd))\r\n\t\t\t.subscribe(initBreadcrumb);\r\n\t}\r\n\r\n\t/**\r\n\t * Update breadCrumbs\r\n\t */\r\n\tupdateBreadcrumbs() {\r\n\t\t// get breadcrumbs from header menu\r\n\t\tlet breadcrumbs = this.getBreadcrumbs(this.headerMenus);\r\n\t\t// if breadcrumbs empty from header menu\r\n\t\tif (breadcrumbs.length === 0) {\r\n\t\t\t// get breadcrumbs from aside menu\r\n\t\t\tbreadcrumbs = this.getBreadcrumbs(this.asideMenus);\r\n\t\t}\r\n\r\n\t\tif (\r\n\t\t\t// if breadcrumb has only 1 item\r\n\t\t\tbreadcrumbs.length === 1 &&\r\n\t\t\t// and breadcrumb title is same as current page title\r\n\t\t\tbreadcrumbs[0].title.indexOf(objectPath.get(this.pageConfig, 'page.title')) !== -1) {\r\n\t\t\t// no need to display on frontend\r\n\t\t\tbreadcrumbs = [];\r\n\t\t}\r\n\r\n\t\tthis.breadcrumbs$.next(breadcrumbs);\r\n\t}\r\n\r\n\t/**\r\n\t * Manually set full breadcrumb paths\r\n\t */\r\n\tsetBreadcrumbs(breadcrumbs: Breadcrumb[] | any[]) {\r\n\t\tthis.manualBreadcrumbs[this.router.url] = breadcrumbs;\r\n\t\tthis.breadcrumbs$.next(breadcrumbs);\r\n\t}\r\n\r\n\t/**\r\n\t * Append breadcrumb to the last existing breadcrumbs\r\n\t * @param breadcrumbs\r\n\t */\r\n\tappendBreadcrumbs(breadcrumbs: Breadcrumb[] | any[]) {\r\n\t\tthis.appendingBreadcrumbs[this.router.url] = breadcrumbs;\r\n\t\tconst prev = this.breadcrumbs$.getValue();\r\n\t\tthis.breadcrumbs$.next(prev.concat(breadcrumbs));\r\n\t}\r\n\r\n\t/**\r\n\t * Get breadcrumbs from menu items\r\n\t * @param menus\r\n\t */\r\n\tgetBreadcrumbs(menus: any) {\r\n\t\tlet url = this.pageConfigService.cleanUrl(this.router.url);\r\n\t\turl = url.replace(new RegExp(/\\./, 'g'), '/');\r\n\r\n\t\tconst breadcrumbs = [];\r\n\t\tconst menuPath = this.getPath(menus, url) || [];\r\n\t\tmenuPath.forEach(key => {\r\n\t\t\tmenus = menus[key];\r\n\t\t\tif (typeof menus !== 'undefined' && menus.title) {\r\n\t\t\t\tbreadcrumbs.push(menus);\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t\treturn breadcrumbs;\r\n\t}\r\n\r\n\t/**\r\n\t * Set title\r\n\t *\r\n\t * @param title: string\r\n\t */\r\n\tsetTitle(title: string) {\r\n\t\tthis.manualTitle[this.router.url] = title;\r\n\t\tthis.title$.next({title: title});\r\n\t}\r\n\r\n\t/**\r\n\t * Get object path by value\r\n\t * @param obj\r\n\t * @param value\r\n\t */\r\n\tgetPath(obj, value) {\r\n\t\tif (typeof obj !== 'object') {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tconst path = [];\r\n\t\tlet found = false;\r\n\r\n\t\tconst search = (haystack) => {\r\n\t\t\t// tslint:disable-next-line:forin\r\n\t\t\tfor (const key in haystack) {\r\n\t\t\t\tpath.push(key);\r\n\t\t\t\tif (haystack[key] === value) {\r\n\t\t\t\t\tfound = true;\r\n\t\t\t\t\tbreak;\r\n\t\t\t\t}\r\n\t\t\t\tif (typeof haystack[key] === 'object') {\r\n\t\t\t\t\tsearch(haystack[key]);\r\n\t\t\t\t\tif (found) {\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t\tpath.pop();\r\n\t\t\t}\r\n\t\t};\r\n\r\n\t\tsearch(obj);\r\n\t\treturn path;\r\n\t}\r\n}\r\n","// Angular\r\nimport { Injectable } from '@angular/core';\r\n// Tranlsation\r\nimport { TranslateService } from '@ngx-translate/core';\r\n\r\nexport interface Locale {\r\n\tlang: string;\r\n\t// tslint:disable-next-line:ban-types\r\n\tdata: Object;\r\n}\r\n\r\n@Injectable({\r\n\tprovidedIn: 'root'\r\n})\r\nexport class TranslationService {\r\n\t// Private properties\r\n\tprivate langIds: any = [];\r\n\r\n\t/**\r\n\t * Service Constructor\r\n\t *\r\n\t * @param translate: TranslateService\r\n\t */\r\n\tconstructor(private translate: TranslateService) {\r\n\t\t// add new langIds to the list\r\n\t\tthis.translate.addLangs(['en']);\r\n\r\n\t\t// this language will be used as a fallback when a translation isn't found in the current language\r\n\t\tthis.translate.setDefaultLang('en');\r\n\t}\r\n\r\n\t/**\r\n\t * Load Translation\r\n\t *\r\n\t * @param args: Locale[]\r\n\t */\r\n\tloadTranslations(...args: Locale[]): void {\r\n\t\tconst locales = [...args];\r\n\r\n\t\tlocales.forEach(locale => {\r\n\t\t\t// use setTranslation() with the third argument set to true\r\n\t\t\t// to append translations instead of replacing them\r\n\t\t\tthis.translate.setTranslation(locale.lang, locale.data, true);\r\n\r\n\t\t\tthis.langIds.push(locale.lang);\r\n\t\t});\r\n\r\n\t\t// add new languages to the list\r\n\t\tthis.translate.addLangs(this.langIds);\r\n\t}\r\n\r\n\t/**\r\n\t * Setup language\r\n\t *\r\n\t * @param lang: any\r\n\t */\r\n\tsetLanguage(lang) {\r\n\t\tif (lang) {\r\n\t\t\tthis.translate.use(this.translate.getDefaultLang());\r\n\t\t\tthis.translate.use(lang);\r\n\t\t\tlocalStorage.setItem('language', lang);\r\n\t\t}\r\n\t}\r\n\r\n\t/**\r\n\t * Returns selected language\r\n\t */\r\n\tgetSelectedLanguage(): any {\r\n\t\treturn localStorage.getItem('language') || this.translate.getDefaultLang();\r\n\t}\r\n}\r\n","// China\r\nexport const locale = {\r\n\tlang: 'ch',\r\n\tdata: {\r\n\t\tTRANSLATOR: {\r\n\t\t\tSELECT: '选择你的语言',\r\n\t\t},\r\n\t\tMENU: {\r\n\t\t\tNEW: '新',\r\n\t\t\tACTIONS: '行动',\r\n\t\t\tCREATE_POST: '创建新帖子',\r\n\t\t\tPAGES: 'Pages',\r\n\t\t\tFEATURES: '特征',\r\n\t\t\tAPPS: '应用',\r\n\t\t\tDASHBOARD: '仪表板',\r\n\t\t},\r\n\t\tAUTH: {\r\n\t\t\tGENERAL: {\r\n\t\t\t\tOR: '要么',\r\n\t\t\t\tSUBMIT_BUTTON: '提交',\r\n\t\t\t\tNO_ACCOUNT: '没有账号?',\r\n\t\t\t\tSIGNUP_BUTTON: '注册',\r\n\t\t\t\tFORGOT_BUTTON: '忘记密码',\r\n\t\t\t\tBACK_BUTTON: '背部',\r\n\t\t\t\tPRIVACY: '隐私',\r\n\t\t\t\tLEGAL: '法律',\r\n\t\t\t\tCONTACT: '联系',\r\n\t\t\t},\r\n\t\t\tLOGIN: {\r\n\t\t\t\tTITLE: '创建帐号',\r\n\t\t\t\tBUTTON: '签到',\r\n\t\t\t},\r\n\t\t\tFORGOT: {\r\n\t\t\t\tTITLE: 'Forgotten Password?',\r\n\t\t\t\tDESC: 'Enter your email to reset your password',\r\n\t\t\t\tSUCCESS: 'Your account has been successfully reset.'\r\n\t\t\t},\r\n\t\t\tREGISTER: {\r\n\t\t\t\tTITLE: 'Sign Up',\r\n\t\t\t\tDESC: 'Enter your details to create your account',\r\n\t\t\t\tSUCCESS: 'Your account has been successfuly registered.'\r\n\t\t\t},\r\n\t\t\tINPUT: {\r\n\t\t\t\tEMAIL: 'Email',\r\n\t\t\t\tFULLNAME: 'Fullname',\r\n\t\t\t\tPASSWORD: 'Password',\r\n\t\t\t\tCONFIRM_PASSWORD: 'Confirm Password',\r\n\t\t\t\tUSERNAME: '用戶名'\r\n\t\t\t},\r\n\t\t\tVALIDATION: {\r\n\t\t\t\tINVALID: '{{name}} is not valid',\r\n\t\t\t\tREQUIRED: '{{name}} is required',\r\n\t\t\t\tMIN_LENGTH: '{{name}} minimum length is {{min}}',\r\n\t\t\t\tAGREEMENT_REQUIRED: 'Accepting terms & conditions are required',\r\n\t\t\t\tNOT_FOUND: 'The requested {{name}} is not found',\r\n\t\t\t\tINVALID_LOGIN: 'The login detail is incorrect',\r\n\t\t\t\tREQUIRED_FIELD: 'Required field',\r\n\t\t\t\tMIN_LENGTH_FIELD: 'Minimum field length:',\r\n\t\t\t\tMAX_LENGTH_FIELD: 'Maximum field length:',\r\n\t\t\t\tINVALID_FIELD: 'Field is not valid',\r\n\t\t\t}\r\n\t\t},\r\n\t\tECOMMERCE: {\r\n\t\t\tCOMMON: {\r\n\t\t\t\tSELECTED_RECORDS_COUNT: 'Selected records count: ',\r\n\t\t\t\tALL: 'All',\r\n\t\t\t\tSUSPENDED: 'Suspended',\r\n\t\t\t\tACTIVE: 'Active',\r\n\t\t\t\tFILTER: 'Filter',\r\n\t\t\t\tBY_STATUS: 'by Status',\r\n\t\t\t\tBY_TYPE: 'by Type',\r\n\t\t\t\tBUSINESS: 'Business',\r\n\t\t\t\tINDIVIDUAL: 'Individual',\r\n\t\t\t\tSEARCH: 'Search',\r\n\t\t\t\tIN_ALL_FIELDS: 'in all fields'\r\n\t\t\t},\r\n\t\t\tECOMMERCE: 'eCommerce',\r\n\t\t\tCUSTOMERS: {\r\n\t\t\t\tCUSTOMERS: '顾客',\r\n\t\t\t\tCUSTOMERS_LIST: '客户名单',\r\n\t\t\t\tNEW_CUSTOMER: 'New Customer',\r\n\t\t\t\tDELETE_CUSTOMER_SIMPLE: {\r\n\t\t\t\t\tTITLE: 'Customer Delete',\r\n\t\t\t\t\tDESCRIPTION: 'Are you sure to permanently delete this customer?',\r\n\t\t\t\t\tWAIT_DESCRIPTION: 'Customer is deleting...',\r\n\t\t\t\t\tMESSAGE: 'Customer has been deleted'\r\n\t\t\t\t},\r\n\t\t\t\tDELETE_CUSTOMER_MULTY: {\r\n\t\t\t\t\tTITLE: 'Customers Delete',\r\n\t\t\t\t\tDESCRIPTION: 'Are you sure to permanently delete selected customers?',\r\n\t\t\t\t\tWAIT_DESCRIPTION: 'Customers are deleting...',\r\n\t\t\t\t\tMESSAGE: 'Selected customers have been deleted'\r\n\t\t\t\t},\r\n\t\t\t\tUPDATE_STATUS: {\r\n\t\t\t\t\tTITLE: 'Status has been updated for selected customers',\r\n\t\t\t\t\tMESSAGE: 'Selected customers status have successfully been updated'\r\n\t\t\t\t},\r\n\t\t\t\tEDIT: {\r\n\t\t\t\t\tUPDATE_MESSAGE: 'Customer has been updated',\r\n\t\t\t\t\tADD_MESSAGE: 'Customer has been created'\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n};\r\n","// Germany\r\nexport const locale = {\r\n\tlang: 'de',\r\n\tdata: {\r\n\t\tTRANSLATOR: {\r\n\t\t\tSELECT: 'Wähle deine Sprache',\r\n\t\t},\r\n\t\tMENU: {\r\n\t\t\tNEW: 'Neu',\r\n\t\t\tACTIONS: 'Aktionen',\r\n\t\t\tCREATE_POST: 'Erstellen Sie einen neuen Beitrag',\r\n\t\t\tPAGES: 'Pages',\r\n\t\t\tFEATURES: 'Eigenschaften',\r\n\t\t\tAPPS: 'Apps',\r\n\t\t\tDASHBOARD: 'Instrumententafel'\r\n\t\t},\r\n\t\tAUTH: {\r\n\t\t\tGENERAL: {\r\n\t\t\t\tOR: 'Oder',\r\n\t\t\t\tSUBMIT_BUTTON: 'einreichen',\r\n\t\t\t\tNO_ACCOUNT: 'Hast du kein Konto?',\r\n\t\t\t\tSIGNUP_BUTTON: 'Anmelden',\r\n\t\t\t\tFORGOT_BUTTON: 'Passwort vergessen',\r\n\t\t\t\tBACK_BUTTON: 'Zurück',\r\n\t\t\t\tPRIVACY: 'Privatsphäre',\r\n\t\t\t\tLEGAL: 'Legal',\r\n\t\t\t\tCONTACT: 'Kontakt',\r\n\t\t\t},\r\n\t\t\tLOGIN: {\r\n\t\t\t\tTITLE: 'Create Account',\r\n\t\t\t\tBUTTON: 'Sign In',\r\n\t\t\t},\r\n\t\t\tFORGOT: {\r\n\t\t\t\tTITLE: 'Forgotten Password?',\r\n\t\t\t\tDESC: 'Enter your email to reset your password',\r\n\t\t\t\tSUCCESS: 'Your account has been successfully reset.'\r\n\t\t\t},\r\n\t\t\tREGISTER: {\r\n\t\t\t\tTITLE: 'Sign Up',\r\n\t\t\t\tDESC: 'Enter your details to create your account',\r\n\t\t\t\tSUCCESS: 'Your account has been successfuly registered.'\r\n\t\t\t},\r\n\t\t\tINPUT: {\r\n\t\t\t\tEMAIL: 'Email',\r\n\t\t\t\tFULLNAME: 'Fullname',\r\n\t\t\t\tPASSWORD: 'Password',\r\n\t\t\t\tCONFIRM_PASSWORD: 'Confirm Password',\r\n\t\t\t\tUSERNAME: 'Nutzername'\r\n\t\t\t},\r\n\t\t\tVALIDATION: {\r\n\t\t\t\tINVALID: '{{name}} is not valid',\r\n\t\t\t\tREQUIRED: '{{name}} is required',\r\n\t\t\t\tMIN_LENGTH: '{{name}} minimum length is {{min}}',\r\n\t\t\t\tAGREEMENT_REQUIRED: 'Accepting terms & conditions are required',\r\n\t\t\t\tNOT_FOUND: 'The requested {{name}} is not found',\r\n\t\t\t\tINVALID_LOGIN: 'The login detail is incorrect',\r\n\t\t\t\tREQUIRED_FIELD: 'Required field',\r\n\t\t\t\tMIN_LENGTH_FIELD: 'Minimum field length:',\r\n\t\t\t\tMAX_LENGTH_FIELD: 'Maximum field length:',\r\n\t\t\t\tINVALID_FIELD: 'Field is not valid',\r\n\t\t\t}\r\n\t\t},\r\n\t\tECOMMERCE: {\r\n\t\t\tCOMMON: {\r\n\t\t\t\tSELECTED_RECORDS_COUNT: 'Selected records count: ',\r\n\t\t\t\tALL: 'All',\r\n\t\t\t\tSUSPENDED: 'Suspended',\r\n\t\t\t\tACTIVE: 'Active',\r\n\t\t\t\tFILTER: 'Filter',\r\n\t\t\t\tBY_STATUS: 'by Status',\r\n\t\t\t\tBY_TYPE: 'by Type',\r\n\t\t\t\tBUSINESS: 'Business',\r\n\t\t\t\tINDIVIDUAL: 'Individual',\r\n\t\t\t\tSEARCH: 'Search',\r\n\t\t\t\tIN_ALL_FIELDS: 'in all fields'\r\n\t\t\t},\r\n\t\t\tECOMMERCE: 'eCommerce',\r\n\t\t\tCUSTOMERS: {\r\n\t\t\t\tCUSTOMERS: 'Customers',\r\n\t\t\t\tCUSTOMERS_LIST: 'Customers list',\r\n\t\t\t\tNEW_CUSTOMER: 'New Customer',\r\n\t\t\t\tDELETE_CUSTOMER_SIMPLE: {\r\n\t\t\t\t\tTITLE: 'Customer Delete',\r\n\t\t\t\t\tDESCRIPTION: 'Are you sure to permanently delete this customer?',\r\n\t\t\t\t\tWAIT_DESCRIPTION: 'Customer is deleting...',\r\n\t\t\t\t\tMESSAGE: 'Customer has been deleted'\r\n\t\t\t\t},\r\n\t\t\t\tDELETE_CUSTOMER_MULTY: {\r\n\t\t\t\t\tTITLE: 'Customers Delete',\r\n\t\t\t\t\tDESCRIPTION: 'Are you sure to permanently delete selected customers?',\r\n\t\t\t\t\tWAIT_DESCRIPTION: 'Customers are deleting...',\r\n\t\t\t\t\tMESSAGE: 'Selected customers have been deleted'\r\n\t\t\t\t},\r\n\t\t\t\tUPDATE_STATUS: {\r\n\t\t\t\t\tTITLE: 'Status has been updated for selected customers',\r\n\t\t\t\t\tMESSAGE: 'Selected customers status have successfully been updated'\r\n\t\t\t\t},\r\n\t\t\t\tEDIT: {\r\n\t\t\t\t\tUPDATE_MESSAGE: 'Customer has been updated',\r\n\t\t\t\t\tADD_MESSAGE: 'Customer has been created'\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n};\r\n","// USA\r\nexport const locale = {\r\n\tlang: 'en',\r\n\tdata: {\r\n\t\tTRANSLATOR: {\r\n\t\t\tSELECT: 'Select your language',\r\n\t\t},\r\n\t\tMENU: {\r\n\t\t\tNEW: 'new',\r\n\t\t\tACTIONS: 'Actions',\r\n\t\t\tCREATE_POST: 'Create New Post',\r\n\t\t\tPAGES: 'Pages',\r\n\t\t\tFEATURES: 'Features',\r\n\t\t\tAPPS: 'Apps',\r\n\t\t\tDASHBOARD: 'Dashboard',\r\n\t\t},\r\n\t\tAUTH: {\r\n\t\t\tGENERAL: {\r\n\t\t\t\tOR: 'Or',\r\n\t\t\t\tSUBMIT_BUTTON: 'Enviar',\r\n\t\t\t\tNO_ACCOUNT: 'Don\\'t have an account?',\r\n\t\t\t\tSIGNUP_BUTTON: 'Sign Up',\r\n\t\t\t\tFORGOT_BUTTON: '¿Olvidaste tu contraseña?',\r\n\t\t\t\tBACK_BUTTON: 'Atrás',\r\n\t\t\t\tPRIVACY: 'Privacy',\r\n\t\t\t\tLEGAL: 'Legal',\r\n\t\t\t\tCONTACT: 'Contact',\r\n\t\t\t},\r\n\t\t\tLOGIN: {\r\n\t\t\t\tTITLE: 'Login Account',\r\n\t\t\t\tBUTTON: 'Iniciar sesión',\r\n\t\t\t},\r\n\t\t\tFORGOT: {\r\n\t\t\t\tTITLE: '¿Contraseña olvidada?',\r\n\t\t\t\tDESC: 'Enter your email to reset your password',\r\n\t\t\t\tSUCCESS: 'Your account has been successfully reset.'\r\n\t\t\t},\r\n\t\t\tREGISTER: {\r\n\t\t\t\tTITLE: 'Sign Up',\r\n\t\t\t\tDESC: 'Enter your details to create your account',\r\n\t\t\t\tSUCCESS: 'Your account has been successfuly registered.'\r\n\t\t\t},\r\n\t\t\tINPUT: {\r\n\t\t\t\tEMAIL: 'Email',\r\n\t\t\t\tFULLNAME: 'Fullname',\r\n\t\t\t\tPASSWORD: 'Password',\r\n\t\t\t\tCONFIRM_PASSWORD: 'Confirm Password',\r\n\t\t\t\tUSERNAME: 'Username'\r\n\t\t\t},\r\n\t\t\tVALIDATION: {\r\n\t\t\t\tINVALID: '{{name}} is not valid',\r\n\t\t\t\tREQUIRED: '{{name}} is required',\r\n\t\t\t\tMIN_LENGTH: '{{name}} minimum length is {{min}}',\r\n\t\t\t\tAGREEMENT_REQUIRED: 'Accepting terms & conditions are required',\r\n\t\t\t\tNOT_FOUND: 'The requested {{name}} is not found',\r\n\t\t\t\tINVALID_LOGIN: 'The login detail is incorrect',\r\n\t\t\t\tREQUIRED_FIELD: 'Required field',\r\n\t\t\t\tMIN_LENGTH_FIELD: 'Minimum field length:',\r\n\t\t\t\tMAX_LENGTH_FIELD: 'Maximum field length:',\r\n\t\t\t\tINVALID_FIELD: 'Field is not valid',\r\n\t\t\t}\r\n\t\t},\r\n\t\tECOMMERCE: {\r\n\t\t\tCOMMON: {\r\n\t\t\t\tSELECTED_RECORDS_COUNT: 'Selected records count: ',\r\n\t\t\t\tALL: 'All',\r\n\t\t\t\tSUSPENDED: 'Suspended',\r\n\t\t\t\tACTIVE: 'Active',\r\n\t\t\t\tFILTER: 'Filter',\r\n\t\t\t\tBY_STATUS: 'by Status',\r\n\t\t\t\tBY_TYPE: 'by Type',\r\n\t\t\t\tBUSINESS: 'Business',\r\n\t\t\t\tINDIVIDUAL: 'Individual',\r\n\t\t\t\tSEARCH: 'Search',\r\n\t\t\t\tIN_ALL_FIELDS: 'in all fields'\r\n\t\t\t},\r\n\t\t\tECOMMERCE: 'eCommerce',\r\n\t\t\tCUSTOMERS: {\r\n\t\t\t\tCUSTOMERS: 'Customers',\r\n\t\t\t\tCUSTOMERS_LIST: 'Customers list',\r\n\t\t\t\tNEW_CUSTOMER: 'New Customer',\r\n\t\t\t\tDELETE_CUSTOMER_SIMPLE: {\r\n\t\t\t\t\tTITLE: 'Customer Delete',\r\n\t\t\t\t\tDESCRIPTION: 'Are you sure to permanently delete this customer?',\r\n\t\t\t\t\tWAIT_DESCRIPTION: 'Customer is deleting...',\r\n\t\t\t\t\tMESSAGE: 'Customer has been deleted'\r\n\t\t\t\t},\r\n\t\t\t\tDELETE_CUSTOMER_MULTY: {\r\n\t\t\t\t\tTITLE: 'Customers Delete',\r\n\t\t\t\t\tDESCRIPTION: 'Are you sure to permanently delete selected customers?',\r\n\t\t\t\t\tWAIT_DESCRIPTION: 'Customers are deleting...',\r\n\t\t\t\t\tMESSAGE: 'Selected customers have been deleted'\r\n\t\t\t\t},\r\n\t\t\t\tUPDATE_STATUS: {\r\n\t\t\t\t\tTITLE: 'Status has been updated for selected customers',\r\n\t\t\t\t\tMESSAGE: 'Selected customers status have successfully been updated'\r\n\t\t\t\t},\r\n\t\t\t\tEDIT: {\r\n\t\t\t\t\tUPDATE_MESSAGE: 'Customer has been updated',\r\n\t\t\t\t\tADD_MESSAGE: 'Customer has been created'\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n};\r\n","// Spain\r\nexport const locale = {\r\n\tlang: 'es',\r\n\tdata: {\r\n\t\tTRANSLATOR: {\r\n\t\t\tSELECT: 'Elige tu idioma',\r\n\t\t},\r\n\t\tMENU: {\r\n\t\t\tNEW: 'nuevo',\r\n\t\t\tACTIONS: 'Comportamiento',\r\n\t\t\tCREATE_POST: 'Crear nueva publicación',\r\n\t\t\tPAGES: 'Pages',\r\n\t\t\tFEATURES: 'Caracteristicas',\r\n\t\t\tAPPS: 'Aplicaciones',\r\n\t\t\tDASHBOARD: 'Tablero'\r\n\t\t},\r\n\t\tAUTH: {\r\n\t\t\tGENERAL: {\r\n\t\t\t\tOR: 'O',\r\n\t\t\t\tSUBMIT_BUTTON: 'Enviar',\r\n\t\t\t\tNO_ACCOUNT: 'No tienes una cuenta?',\r\n\t\t\t\tSIGNUP_BUTTON: 'Regístrate',\r\n\t\t\t\tFORGOT_BUTTON: 'Se te olvidó tu contraseña',\r\n\t\t\t\tBACK_BUTTON: 'Espalda',\r\n\t\t\t\tPRIVACY: 'Intimidad',\r\n\t\t\t\tLEGAL: 'Legal',\r\n\t\t\t\tCONTACT: 'Contacto',\r\n\t\t\t},\r\n\t\t\tLOGIN: {\r\n\t\t\t\tTITLE: 'Crear una cuenta',\r\n\t\t\t\tBUTTON: 'Registrarse',\r\n\t\t\t},\r\n\t\t\tFORGOT: {\r\n\t\t\t\tTITLE: 'Contraseña olvidada?',\r\n\t\t\t\tDESC: 'Ingrese su correo electrónico para restablecer su contraseña',\r\n\t\t\t\tSUCCESS: 'Your account has been successfully reset.'\r\n\t\t\t},\r\n\t\t\tREGISTER: {\r\n\t\t\t\tTITLE: 'Sign Up',\r\n\t\t\t\tDESC: 'Enter your details to create your account',\r\n\t\t\t\tSUCCESS: 'Your account has been successfuly registered.'\r\n\t\t\t},\r\n\t\t\tINPUT: {\r\n\t\t\t\tEMAIL: 'Email',\r\n\t\t\t\tFULLNAME: 'Fullname',\r\n\t\t\t\tPASSWORD: 'Password',\r\n\t\t\t\tCONFIRM_PASSWORD: 'Confirm Password',\r\n\t\t\t\tUSERNAME: 'Usuario'\r\n\t\t\t},\r\n\t\t\tVALIDATION: {\r\n\t\t\t\tINVALID: '{{name}} is not valid',\r\n\t\t\t\tREQUIRED: '{{name}} is required',\r\n\t\t\t\tMIN_LENGTH: '{{name}} minimum length is {{min}}',\r\n\t\t\t\tAGREEMENT_REQUIRED: 'Accepting terms & conditions are required',\r\n\t\t\t\tNOT_FOUND: 'The requested {{name}} is not found',\r\n\t\t\t\tINVALID_LOGIN: 'The login detail is incorrect',\r\n\t\t\t\tREQUIRED_FIELD: 'Required field',\r\n\t\t\t\tMIN_LENGTH_FIELD: 'Minimum field length:',\r\n\t\t\t\tMAX_LENGTH_FIELD: 'Maximum field length:',\r\n\t\t\t\tINVALID_FIELD: 'Field is not valid',\r\n\t\t\t}\r\n\t\t},\r\n\t\tECOMMERCE: {\r\n\t\t\tCOMMON: {\r\n\t\t\t\tSELECTED_RECORDS_COUNT: 'Selected records count: ',\r\n\t\t\t\tALL: 'All',\r\n\t\t\t\tSUSPENDED: 'Suspended',\r\n\t\t\t\tACTIVE: 'Active',\r\n\t\t\t\tFILTER: 'Filter',\r\n\t\t\t\tBY_STATUS: 'by Status',\r\n\t\t\t\tBY_TYPE: 'by Type',\r\n\t\t\t\tBUSINESS: 'Business',\r\n\t\t\t\tINDIVIDUAL: 'Individual',\r\n\t\t\t\tSEARCH: 'Search',\r\n\t\t\t\tIN_ALL_FIELDS: 'in all fields'\r\n\t\t\t},\r\n\t\t\tECOMMERCE: 'eCommerce',\r\n\t\t\tCUSTOMERS: {\r\n\t\t\t\tCUSTOMERS: 'Customers',\r\n\t\t\t\tCUSTOMERS_LIST: 'Customers list',\r\n\t\t\t\tNEW_CUSTOMER: 'New Customer',\r\n\t\t\t\tDELETE_CUSTOMER_SIMPLE: {\r\n\t\t\t\t\tTITLE: 'Customer Delete',\r\n\t\t\t\t\tDESCRIPTION: 'Are you sure to permanently delete this customer?',\r\n\t\t\t\t\tWAIT_DESCRIPTION: 'Customer is deleting...',\r\n\t\t\t\t\tMESSAGE: 'Customer has been deleted'\r\n\t\t\t\t},\r\n\t\t\t\tDELETE_CUSTOMER_MULTY: {\r\n\t\t\t\t\tTITLE: 'Customers Delete',\r\n\t\t\t\t\tDESCRIPTION: 'Are you sure to permanently delete selected customers?',\r\n\t\t\t\t\tWAIT_DESCRIPTION: 'Customers are deleting...',\r\n\t\t\t\t\tMESSAGE: 'Selected customers have been deleted'\r\n\t\t\t\t},\r\n\t\t\t\tUPDATE_STATUS: {\r\n\t\t\t\t\tTITLE: 'Status has been updated for selected customers',\r\n\t\t\t\t\tMESSAGE: 'Selected customers status have successfully been updated'\r\n\t\t\t\t},\r\n\t\t\t\tEDIT: {\r\n\t\t\t\t\tUPDATE_MESSAGE: 'Customer has been updated',\r\n\t\t\t\t\tADD_MESSAGE: 'Customer has been created'\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n};\r\n","// France\r\nexport const locale = {\r\n\tlang: 'fr',\r\n\tdata: {\r\n\t\tTRANSLATOR: {\r\n\t\t\tSELECT: 'choisissez votre langue',\r\n\t\t},\r\n\t\tMENU: {\r\n\t\t\tNEW: 'Nouveau',\r\n\t\t\tACTIONS: 'Actes',\r\n\t\t\tCREATE_POST: 'Créer un nouveau Post',\r\n\t\t\tPAGES: 'Pages',\r\n\t\t\tFEATURES: 'Fonctionnalités',\r\n\t\t\tAPPS: 'Applications',\r\n\t\t\tDASHBOARD: 'Tableau de Bord',\r\n\t\t},\r\n\t\tAUTH: {\r\n\t\t\tGENERAL: {\r\n\t\t\t\tOR: 'Ou',\r\n\t\t\t\tSUBMIT_BUTTON: 'Soumettre',\r\n\t\t\t\tNO_ACCOUNT: 'Ne pas avoir de compte?',\r\n\t\t\t\tSIGNUP_BUTTON: 'Registre',\r\n\t\t\t\tFORGOT_BUTTON: 'Mot de passe oublié',\r\n\t\t\t\tBACK_BUTTON: 'Back',\r\n\t\t\t\tPRIVACY: 'Privacy',\r\n\t\t\t\tLEGAL: 'Legal',\r\n\t\t\t\tCONTACT: 'Contact',\r\n\t\t\t},\r\n\t\t\tLOGIN: {\r\n\t\t\t\tTITLE: 'Créer un compte',\r\n\t\t\t\tBUTTON: 'Sign In',\r\n\t\t\t},\r\n\t\t\tFORGOT: {\r\n\t\t\t\tTITLE: 'Forgotten Password?',\r\n\t\t\t\tDESC: 'Enter your email to reset your password',\r\n\t\t\t\tSUCCESS: 'Your account has been successfully reset.'\r\n\t\t\t},\r\n\t\t\tREGISTER: {\r\n\t\t\t\tTITLE: 'Sign Up',\r\n\t\t\t\tDESC: 'Enter your details to create your account',\r\n\t\t\t\tSUCCESS: 'Your account has been successfuly registered.'\r\n\t\t\t},\r\n\t\t\tINPUT: {\r\n\t\t\t\tEMAIL: 'Email',\r\n\t\t\t\tFULLNAME: 'Fullname',\r\n\t\t\t\tPASSWORD: 'Mot de passe',\r\n\t\t\t\tCONFIRM_PASSWORD: 'Confirm Password',\r\n\t\t\t\tUSERNAME: 'Nom d\\'utilisateur'\r\n\t\t\t},\r\n\t\t\tVALIDATION: {\r\n\t\t\t\tINVALID: '{{name}} n\\'est pas valide',\r\n\t\t\t\tREQUIRED: '{{name}} est requis',\r\n\t\t\t\tMIN_LENGTH: '{{name}} minimum length is {{min}}',\r\n\t\t\t\tAGREEMENT_REQUIRED: 'Accepting terms & conditions are required',\r\n\t\t\t\tNOT_FOUND: 'The requested {{name}} is not found',\r\n\t\t\t\tINVALID_LOGIN: 'The login detail is incorrect',\r\n\t\t\t\tREQUIRED_FIELD: 'Required field',\r\n\t\t\t\tMIN_LENGTH_FIELD: 'Minimum field length:',\r\n\t\t\t\tMAX_LENGTH_FIELD: 'Maximum field length:',\r\n\t\t\t\tINVALID_FIELD: 'Field is not valid',\r\n\t\t\t}\r\n\t\t},\r\n\t\tECOMMERCE: {\r\n\t\t\tCOMMON: {\r\n\t\t\t\tSELECTED_RECORDS_COUNT: 'Nombre d\\'enregistrements sélectionnés: ',\r\n\t\t\t\tALL: 'All',\r\n\t\t\t\tSUSPENDED: 'Suspended',\r\n\t\t\t\tACTIVE: 'Active',\r\n\t\t\t\tFILTER: 'Filter',\r\n\t\t\t\tBY_STATUS: 'by Status',\r\n\t\t\t\tBY_TYPE: 'by Type',\r\n\t\t\t\tBUSINESS: 'Business',\r\n\t\t\t\tINDIVIDUAL: 'Individual',\r\n\t\t\t\tSEARCH: 'Search',\r\n\t\t\t\tIN_ALL_FIELDS: 'in all fields'\r\n\t\t\t},\r\n\t\t\tECOMMERCE: 'éCommerce',\r\n\t\t\tCUSTOMERS: {\r\n\t\t\t\tCUSTOMERS: 'Les clients',\r\n\t\t\t\tCUSTOMERS_LIST: 'Liste des clients',\r\n\t\t\t\tNEW_CUSTOMER: 'Nouveau client',\r\n\t\t\t\tDELETE_CUSTOMER_SIMPLE: {\r\n\t\t\t\t\tTITLE: 'Suppression du client',\r\n\t\t\t\t\tDESCRIPTION: 'Êtes-vous sûr de supprimer définitivement ce client?',\r\n\t\t\t\t\tWAIT_DESCRIPTION: 'Le client est en train de supprimer ...',\r\n\t\t\t\t\tMESSAGE: 'Le client a été supprimé'\r\n\t\t\t\t},\r\n\t\t\t\tDELETE_CUSTOMER_MULTY: {\r\n\t\t\t\t\tTITLE: 'Supprimer les clients',\r\n\t\t\t\t\tDESCRIPTION: 'Êtes-vous sûr de supprimer définitivement les clients sélectionnés?',\r\n\t\t\t\t\tWAIT_DESCRIPTION: 'Les clients suppriment ...',\r\n\t\t\t\t\tMESSAGE: 'Les clients sélectionnés ont été supprimés'\r\n\t\t\t\t},\r\n\t\t\t\tUPDATE_STATUS: {\r\n\t\t\t\t\tTITLE: 'Le statut a été mis à jour pour les clients sélectionnés',\r\n\t\t\t\t\tMESSAGE: 'Le statut des clients sélectionnés a été mis à jour avec succès'\r\n\t\t\t\t},\r\n\t\t\t\tEDIT: {\r\n\t\t\t\t\tUPDATE_MESSAGE: 'Le client a été mis à jour',\r\n\t\t\t\t\tADD_MESSAGE: 'Le client a été créé'\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n};\r\n","// Japan\r\nexport const locale = {\r\n\tlang: 'jp',\r\n\tdata: {\r\n\t\tTRANSLATOR: {\r\n\t\t\tSELECT: 'あなたが使う言語を選んでください',\r\n\t\t},\r\n\t\tMENU: {\r\n\t\t\tNEW: '新しい',\r\n\t\t\tACTIONS: '行動',\r\n\t\t\tCREATE_POST: '新しい投稿を作成',\r\n\t\t\tPAGES: 'Pages',\r\n\t\t\tFEATURES: '特徴',\r\n\t\t\tAPPS: 'アプリ',\r\n\t\t\tDASHBOARD: 'ダッシュボード',\r\n\t\t},\r\n\t\tAUTH: {\r\n\t\t\tGENERAL: {\r\n\t\t\t\tOR: 'または',\r\n\t\t\t\tSUBMIT_BUTTON: '提出する',\r\n\t\t\t\tNO_ACCOUNT: 'アカウントを持っていない?',\r\n\t\t\t\tSIGNUP_BUTTON: 'サインアップ',\r\n\t\t\t\tFORGOT_BUTTON: 'パスワードをお忘れですか',\r\n\t\t\t\tBACK_BUTTON: 'バック',\r\n\t\t\t\tPRIVACY: 'プライバシー',\r\n\t\t\t\tLEGAL: '法的',\r\n\t\t\t\tCONTACT: '接触',\r\n\t\t\t},\r\n\t\t\tLOGIN: {\r\n\t\t\t\tTITLE: 'Create Account',\r\n\t\t\t\tBUTTON: 'Sign In',\r\n\t\t\t},\r\n\t\t\tFORGOT: {\r\n\t\t\t\tTITLE: 'Forgotten Password?',\r\n\t\t\t\tDESC: 'Enter your email to reset your password',\r\n\t\t\t\tSUCCESS: 'Your account has been successfully reset.'\r\n\t\t\t},\r\n\t\t\tREGISTER: {\r\n\t\t\t\tTITLE: 'Sign Up',\r\n\t\t\t\tDESC: 'Enter your details to create your account',\r\n\t\t\t\tSUCCESS: 'Your account has been successfuly registered.'\r\n\t\t\t},\r\n\t\t\tINPUT: {\r\n\t\t\t\tEMAIL: 'Email',\r\n\t\t\t\tFULLNAME: 'Fullname',\r\n\t\t\t\tPASSWORD: 'Password',\r\n\t\t\t\tCONFIRM_PASSWORD: 'Confirm Password',\r\n\t\t\t\tUSERNAME: 'ユーザー名'\r\n\t\t\t},\r\n\t\t\tVALIDATION: {\r\n\t\t\t\tINVALID: '{{name}} is not valid',\r\n\t\t\t\tREQUIRED: '{{name}} is required',\r\n\t\t\t\tMIN_LENGTH: '{{name}} minimum length is {{min}}',\r\n\t\t\t\tAGREEMENT_REQUIRED: 'Accepting terms & conditions are required',\r\n\t\t\t\tNOT_FOUND: 'The requested {{name}} is not found',\r\n\t\t\t\tINVALID_LOGIN: 'The login detail is incorrect',\r\n\t\t\t\tREQUIRED_FIELD: 'Required field',\r\n\t\t\t\tMIN_LENGTH_FIELD: 'Minimum field length:',\r\n\t\t\t\tMAX_LENGTH_FIELD: 'Maximum field length:',\r\n\t\t\t\tINVALID_FIELD: 'Field is not valid',\r\n\t\t\t}\r\n\t\t},\r\n\t\tECOMMERCE: {\r\n\t\t\tCOMMON: {\r\n\t\t\t\tSELECTED_RECORDS_COUNT: 'Selected records count: ',\r\n\t\t\t\tALL: 'All',\r\n\t\t\t\tSUSPENDED: 'Suspended',\r\n\t\t\t\tACTIVE: 'Active',\r\n\t\t\t\tFILTER: 'Filter',\r\n\t\t\t\tBY_STATUS: 'by Status',\r\n\t\t\t\tBY_TYPE: 'by Type',\r\n\t\t\t\tBUSINESS: 'Business',\r\n\t\t\t\tINDIVIDUAL: 'Individual',\r\n\t\t\t\tSEARCH: 'Search',\r\n\t\t\t\tIN_ALL_FIELDS: 'in all fields'\r\n\t\t\t},\r\n\t\t\tECOMMERCE: 'eCommerce',\r\n\t\t\tCUSTOMERS: {\r\n\t\t\t\tCUSTOMERS: 'Customers',\r\n\t\t\t\tCUSTOMERS_LIST: 'Customers list',\r\n\t\t\t\tNEW_CUSTOMER: 'New Customer',\r\n\t\t\t\tDELETE_CUSTOMER_SIMPLE: {\r\n\t\t\t\t\tTITLE: 'Customer Delete',\r\n\t\t\t\t\tDESCRIPTION: 'Are you sure to permanently delete this customer?',\r\n\t\t\t\t\tWAIT_DESCRIPTION: 'Customer is deleting...',\r\n\t\t\t\t\tMESSAGE: 'Customer has been deleted'\r\n\t\t\t\t},\r\n\t\t\t\tDELETE_CUSTOMER_MULTY: {\r\n\t\t\t\t\tTITLE: 'Customers Delete',\r\n\t\t\t\t\tDESCRIPTION: 'Are you sure to permanently delete selected customers?',\r\n\t\t\t\t\tWAIT_DESCRIPTION: 'Customers are deleting...',\r\n\t\t\t\t\tMESSAGE: 'Selected customers have been deleted'\r\n\t\t\t\t},\r\n\t\t\t\tUPDATE_STATUS: {\r\n\t\t\t\t\tTITLE: 'Status has been updated for selected customers',\r\n\t\t\t\t\tMESSAGE: 'Selected customers status have successfully been updated'\r\n\t\t\t\t},\r\n\t\t\t\tEDIT: {\r\n\t\t\t\t\tUPDATE_MESSAGE: 'Customer has been updated',\r\n\t\t\t\t\tADD_MESSAGE: 'Customer has been created'\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n};\r\n","import { LayoutConfigModel } from '../_base/layout';\r\n\r\nexport class LayoutConfig {\r\n\tpublic defaults: LayoutConfigModel = {\r\n\t\t'demo': 'demo1',\r\n\t\t// == Base Layout\r\n\t\t'self': {\r\n\t\t\t'layout': 'fluid', // fluid|boxed\r\n\t\t\t'body': {\r\n\t\t\t\t'background-image': './assets/media/misc/bg-1.jpg',\r\n\t\t\t},\r\n\t\t\t'logo': {\r\n\t\t\t\t\"dark\": \"./assets/media/logos/logo-light.png\",\r\n\t\t\t\t\"light\": \"./assets/media/logos/\",\r\n\t\t\t\t//\"light\": \"./assets/media/logos/logo-light.png\",\r\n\t\t\t\t\"brand\": \"./assets/media/logos/logo-light.png\",\r\n\t\t\t\t\"green\": \"./assets/media/logos/logo-light.png\"\r\n\t\t\t}\r\n\t\t},\r\n\t\t// == Page Splash Screen loading\r\n\t\t'loader': {\r\n\t\t\t'enabled': true,\r\n\t\t\t'type': 'spinner-logo',\r\n\t\t\t'logo': './assets/media/logos/logo-mini-md.png',\r\n\t\t\t'message': 'Please wait...'\r\n\t\t},\r\n\t\t// == Colors for javascript #FF010B\r\n\t\t'colors': {\r\n\t\t\t'state': {\r\n\t\t\t\t'brand': '#E60011',\r\n\t\t\t\t'dark': '#282a3c',\r\n\t\t\t\t'light': '#ffffff',\r\n\t\t\t\t'primary': '#5867dd',\r\n\t\t\t\t'success': '#34bfa3',\r\n\t\t\t\t'info': '#36a3f7',\r\n\t\t\t\t'warning': '#ffb822',\r\n\t\t\t\t'danger': '#fd3995'\r\n\t\t\t},\r\n\t\t\t'base': {\r\n\t\t\t\t'label': [\r\n\t\t\t\t\t'#FF010B',\r\n\t\t\t\t\t'#a1a8c3',\r\n\t\t\t\t\t'#3d4465',\r\n\t\t\t\t\t'#3e4466'\r\n\t\t\t\t],\r\n\t\t\t\t'shape': [\r\n\t\t\t\t\t'#f0f3ff',\r\n\t\t\t\t\t'#d9dffa',\r\n\t\t\t\t\t'#afb4d4',\r\n\t\t\t\t\t'#646c9a'\r\n\t\t\t\t]\r\n\t\t\t}\r\n\t\t},\r\n\t\t'header': {\r\n\t\t\t'self': {\r\n\t\t\t\t'skin': 'dark',\r\n\t\t\t\t'fixed': {\r\n\t\t\t\t\t'desktop': true,\r\n\t\t\t\t\t'mobile': true\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\t'menu': {\r\n\t\t\t\t'self': {\r\n\t\t\t\t\t'display': true,\r\n\t\t\t\t\t'layout': 'default',\r\n\t\t\t\t\t'root-arrow': false,\r\n\t\t\t\t},\r\n\t\t\t\t'desktop': {\r\n\t\t\t\t\t'arrow': true,\r\n\t\t\t\t\t'toggle': 'click',\r\n\t\t\t\t\t'submenu': {\r\n\t\t\t\t\t\t'skin': 'light',\r\n\t\t\t\t\t\t'arrow': true\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\t'mobile': {\r\n\t\t\t\t\t'submenu': {\r\n\t\t\t\t\t\t'skin': 'dark',\r\n\t\t\t\t\t\t'accordion': true\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\t'subheader': {\r\n\t\t\t'display': true,\r\n\t\t\t'layout': 'subheader-v1',\r\n\t\t\t'fixed': true,\r\n\t\t\t'width': 'fluid',\r\n\t\t\t'style': 'solid'\r\n\t\t},\r\n\t\t'content': {\r\n\t\t\t'width': 'fluid'\r\n\t\t},\r\n\t\t'brand': {\r\n\t\t\t'self': {\r\n\t\t\t\t'skin': 'light'\r\n\t\t\t}\r\n\t\t},\r\n\t\t'aside': {\r\n\t\t\t'self': {\r\n\t\t\t\t'skin': 'light',\r\n\t\t\t\t'display': true,\r\n\t\t\t\t'fixed': true,\r\n\t\t\t\t'minimize': {\r\n\t\t\t\t\t'toggle': true,\r\n\t\t\t\t\t'default': false\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\t'footer': {\r\n\t\t\t\t'self': {\r\n\t\t\t\t\t'display': true\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\t'menu': {\r\n\t\t\t\t'dropdown': false,\r\n\t\t\t\t'scroll': false,\r\n\t\t\t\t'submenu': {\r\n\t\t\t\t\t'accordion': true,\r\n\t\t\t\t\t'dropdown': {\r\n\t\t\t\t\t\t'arrow': true,\r\n\t\t\t\t\t\t'hover-timeout': 500\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\t'footer': {\r\n\t\t\t'self': {\r\n\t\t\t\t'width': 'fluid'\r\n\t\t\t}\r\n\t\t}\r\n\t};\r\n\r\n\t/**\r\n\t * Good place for getting the remote config\r\n\t */\r\n\tpublic get configs(): LayoutConfigModel {\r\n\t\treturn this.defaults;\r\n\t}\r\n}\r\n","import { Action } from '@ngrx/store';\r\nimport { User } from '../_models/user.model';\r\n\r\nexport enum AuthActionTypes {\r\n Login = '[Login] Action',\r\n Logout = '[Logout] Action',\r\n Register = '[Register] Action',\r\n UserRequested = '[Request User] Action',\r\n UserLoaded = '[Load User] Auth API'\r\n}\r\n\r\nexport class Login implements Action {\r\n readonly type = AuthActionTypes.Login;\r\n constructor(public payload: { authToken: string }) { }\r\n}\r\n\r\nexport class Logout implements Action {\r\n readonly type = AuthActionTypes.Logout;\r\n}\r\n\r\nexport class Register implements Action {\r\n readonly type = AuthActionTypes.Register;\r\n constructor(public payload: { authToken: string }) { }\r\n}\r\n\r\n\r\nexport class UserRequested implements Action {\r\n readonly type = AuthActionTypes.UserRequested;\r\n}\r\n\r\nexport class UserLoaded implements Action {\r\n readonly type = AuthActionTypes.UserLoaded;\r\n constructor(public payload: { user: User }) { }\r\n}\r\n\r\n\r\n\r\nexport type AuthActions = Login | Logout | Register | UserRequested | UserLoaded;\r\n","// NGRX\r\nimport { Action } from '@ngrx/store';\r\n// Models\r\nimport { Permission } from '../_models/permission.model';\r\n\r\nexport enum PermissionActionTypes {\r\n AllPermissionsRequested = '[Init] All Permissions Requested',\r\n AllPermissionsLoaded = '[Init] All Permissions Loaded'\r\n}\r\n\r\nexport class AllPermissionsRequested implements Action {\r\n readonly type = PermissionActionTypes.AllPermissionsRequested;\r\n}\r\n\r\nexport class AllPermissionsLoaded implements Action {\r\n readonly type = PermissionActionTypes.AllPermissionsLoaded;\r\n constructor(public payload: { permissions: Permission[] }) { }\r\n}\r\n\r\nexport type PermissionActions = AllPermissionsRequested | AllPermissionsLoaded;\r\n","// NGRX\r\nimport { Action } from '@ngrx/store';\r\nimport { Update } from '@ngrx/entity';\r\n// CRUD\r\nimport { QueryParamsModel } from '../../_base/crud';\r\n// Models\r\nimport { Role } from '../_models/role.model';\r\n\r\nexport enum RoleActionTypes {\r\n AllRolesRequested = '[Roles Home Page] All Roles Requested',\r\n AllRolesLoaded = '[Roles API] All Roles Loaded',\r\n RoleOnServerCreated = '[Edit Role Dialog] Role On Server Created',\r\n RoleCreated = '[Edit Roles Dialog] Roles Created',\r\n RoleUpdated = '[Edit Role Dialog] Role Updated',\r\n RoleDeleted = '[Roles List Page] Role Deleted',\r\n RolesPageRequested = '[Roles List Page] Roles Page Requested',\r\n RolesPageLoaded = '[Roles API] Roles Page Loaded',\r\n RolesPageCancelled = '[Roles API] Roles Page Cancelled',\r\n RolesPageToggleLoading = '[Roles page] Roles Page Toggle Loading',\r\n RolesActionToggleLoading = '[Roles] Roles Action Toggle Loading'\r\n}\r\n\r\nexport class RoleOnServerCreated implements Action {\r\n readonly type = RoleActionTypes.RoleOnServerCreated;\r\n constructor(public payload: { role: Role }) { }\r\n}\r\n\r\nexport class RoleCreated implements Action {\r\n readonly type = RoleActionTypes.RoleCreated;\r\n constructor(public payload: { role: Role }) { }\r\n}\r\n\r\nexport class RoleUpdated implements Action {\r\n readonly type = RoleActionTypes.RoleUpdated;\r\n constructor(public payload: {\r\n partialrole: Update,\r\n role: Role\r\n }) { }\r\n}\r\n\r\nexport class RoleDeleted implements Action {\r\n readonly type = RoleActionTypes.RoleDeleted;\r\n constructor(public payload: { id: number }) {}\r\n}\r\n\r\nexport class RolesPageRequested implements Action {\r\n readonly type = RoleActionTypes.RolesPageRequested;\r\n constructor(public payload: { page: QueryParamsModel }) { }\r\n}\r\n\r\nexport class RolesPageLoaded implements Action {\r\n readonly type = RoleActionTypes.RolesPageLoaded;\r\n constructor(public payload: { roles: Role[], totalCount: number, page: QueryParamsModel }) { }\r\n}\r\n\r\nexport class RolesPageCancelled implements Action {\r\n readonly type = RoleActionTypes.RolesPageCancelled;\r\n}\r\n\r\nexport class AllRolesRequested implements Action {\r\n readonly type = RoleActionTypes.AllRolesRequested;\r\n}\r\n\r\nexport class AllRolesLoaded implements Action {\r\n readonly type = RoleActionTypes.AllRolesLoaded;\r\n constructor(public payload: { roles: Role[] }) { }\r\n}\r\n\r\nexport class RolesPageToggleLoading implements Action {\r\n readonly type = RoleActionTypes.RolesPageToggleLoading;\r\n constructor(public payload: { isLoading: boolean }) { }\r\n}\r\n\r\nexport class RolesActionToggleLoading implements Action {\r\n readonly type = RoleActionTypes.RolesActionToggleLoading;\r\n constructor(public payload: { isLoading: boolean }) { }\r\n}\r\n\r\nexport type RoleActions = RoleCreated\r\n| RoleUpdated\r\n| RoleDeleted\r\n| RolesPageRequested\r\n| RolesPageLoaded\r\n| RolesPageCancelled\r\n| AllRolesLoaded\r\n| AllRolesRequested\r\n| RoleOnServerCreated\r\n| RolesPageToggleLoading\r\n| RolesActionToggleLoading;\r\n","// NGRX\r\nimport { Action } from '@ngrx/store';\r\nimport { Update } from '@ngrx/entity';\r\n// CRUD\r\nimport { User } from '../_models/user.model';\r\n// Models\r\nimport { QueryParamsModel } from '../../_base/crud';\r\n\r\nexport enum UserActionTypes {\r\n AllUsersRequested = '[Users Module] All Users Requested',\r\n AllUsersLoaded = '[Users API] All Users Loaded',\r\n UserOnServerCreated = '[Edit User Component] User On Server Created',\r\n UserCreated = '[Edit User Dialog] User Created',\r\n UserUpdated = '[Edit User Dialog] User Updated',\r\n UserDeleted = '[Users List Page] User Deleted',\r\n UsersPageRequested = '[Users List Page] Users Page Requested',\r\n UsersPageLoaded = '[Users API] Users Page Loaded',\r\n UsersPageCancelled = '[Users API] Users Page Cancelled',\r\n UsersPageToggleLoading = '[Users] Users Page Toggle Loading',\r\n UsersActionToggleLoading = '[Users] Users Action Toggle Loading'\r\n}\r\n\r\nexport class UserOnServerCreated implements Action {\r\n readonly type = UserActionTypes.UserOnServerCreated;\r\n constructor(public payload: { user: User }) { }\r\n}\r\n\r\nexport class UserCreated implements Action {\r\n readonly type = UserActionTypes.UserCreated;\r\n constructor(public payload: { user: User }) { }\r\n}\r\n\r\n\r\nexport class UserUpdated implements Action {\r\n readonly type = UserActionTypes.UserUpdated;\r\n constructor(public payload: {\r\n partialUser: Update,\r\n user: User\r\n }) { }\r\n}\r\n\r\nexport class UserDeleted implements Action {\r\n readonly type = UserActionTypes.UserDeleted;\r\n constructor(public payload: { id: number }) {}\r\n}\r\n\r\nexport class UsersPageRequested implements Action {\r\n readonly type = UserActionTypes.UsersPageRequested;\r\n constructor(public payload: { page: QueryParamsModel }) { }\r\n}\r\n\r\nexport class UsersPageLoaded implements Action {\r\n readonly type = UserActionTypes.UsersPageLoaded;\r\n constructor(public payload: { users: User[], totalCount: number, page: QueryParamsModel }) { }\r\n}\r\n\r\n\r\nexport class UsersPageCancelled implements Action {\r\n readonly type = UserActionTypes.UsersPageCancelled;\r\n}\r\n\r\nexport class UsersPageToggleLoading implements Action {\r\n readonly type = UserActionTypes.UsersPageToggleLoading;\r\n constructor(public payload: { isLoading: boolean }) { }\r\n}\r\n\r\nexport class UsersActionToggleLoading implements Action {\r\n readonly type = UserActionTypes.UsersActionToggleLoading;\r\n constructor(public payload: { isLoading: boolean }) { }\r\n}\r\n\r\nexport type UserActions = UserCreated\r\n| UserUpdated\r\n| UserDeleted\r\n| UserOnServerCreated\r\n| UsersPageLoaded\r\n| UsersPageCancelled\r\n| UsersPageToggleLoading\r\n| UsersPageRequested\r\n| UsersActionToggleLoading;\r\n","// RxJS\r\nimport { of } from 'rxjs';\r\nimport { catchError, finalize, tap, debounceTime, delay, distinctUntilChanged } from 'rxjs/operators';\r\n// NGRX\r\nimport { Store, select } from '@ngrx/store';\r\n// CRUD\r\nimport { BaseDataSource, QueryResultsModel } from '../../_base/crud';\r\n// State\r\nimport { AppState } from '../../../core/reducers';\r\n// Selectirs\r\nimport { selectQueryResult, selectRolesPageLoading, selectRolesShowInitWaitingMessage } from '../_selectors/role.selectors';\r\n\r\nexport class RolesDataSource extends BaseDataSource {\r\n\tconstructor(private store: Store) {\r\n\t\tsuper();\r\n\r\n\t\tthis.loading$ = this.store.pipe(\r\n\t\t\tselect(selectRolesPageLoading)\r\n\t\t);\r\n\r\n\t\tthis.isPreloadTextViewed$ = this.store.pipe(\r\n\t\t\tselect(selectRolesShowInitWaitingMessage)\r\n\t\t);\r\n\r\n\t\tthis.store.pipe(\r\n\t\t\tselect(selectQueryResult)\r\n\t\t).subscribe((response: QueryResultsModel) => {\r\n\t\t\tthis.paginatorTotalSubject.next(response.totalCount);\r\n\t\t\tthis.entitySubject.next(response.items);\r\n\t\t});\r\n\r\n\t}\r\n}\r\n","// RxJS\r\nimport { of } from 'rxjs';\r\nimport { catchError, finalize, tap, debounceTime, delay, distinctUntilChanged } from 'rxjs/operators';\r\n// NGRX\r\nimport { Store, select } from '@ngrx/store';\r\n// CRUD\r\nimport { BaseDataSource, QueryResultsModel } from '../../_base/crud';\r\n// State\r\nimport { AppState } from '../../../core/reducers';\r\nimport { selectUsersInStore, selectUsersPageLoading, selectUsersShowInitWaitingMessage } from '../_selectors/user.selectors';\r\n\r\n\r\nexport class UsersDataSource extends BaseDataSource {\r\n\tconstructor(private store: Store) {\r\n\t\tsuper();\r\n\r\n\t\tthis.loading$ = this.store.pipe(\r\n\t\t\tselect(selectUsersPageLoading)\r\n\t\t);\r\n\r\n\t\tthis.isPreloadTextViewed$ = this.store.pipe(\r\n\t\t\tselect(selectUsersShowInitWaitingMessage)\r\n\t\t);\r\n\r\n\t\tthis.store.pipe(\r\n\t\t\tselect(selectUsersInStore)\r\n\t\t).subscribe((response: QueryResultsModel) => {\r\n\t\t\tthis.paginatorTotalSubject.next(response.totalCount);\r\n\t\t\tthis.entitySubject.next(response.items);\r\n\t\t});\r\n\t}\r\n}\r\n","// Angular\r\nimport { Injectable } from '@angular/core';\r\nimport { NavigationEnd, Router } from '@angular/router';\r\n// RxJS\r\nimport { filter, mergeMap, tap, withLatestFrom } from 'rxjs/operators';\r\nimport { defer, Observable, of } from 'rxjs';\r\n// NGRX\r\nimport { Actions, Effect, ofType } from '@ngrx/effects';\r\nimport { Action, select, Store } from '@ngrx/store';\r\n// Auth actions\r\nimport { AuthActionTypes, Login, Logout, Register, UserLoaded, UserRequested } from '../_actions/auth.actions';\r\nimport { AuthService } from '../_services/index';\r\nimport { AppState } from '../../reducers';\r\nimport { environment } from '../../../../environments/environment';\r\nimport { isUserLoaded } from '../_selectors/auth.selectors';\r\n\r\n@Injectable()\r\nexport class AuthEffects {\r\n @Effect({dispatch: false})\r\n login$ = this.actions$.pipe(\r\n ofType(AuthActionTypes.Login),\r\n tap(action => {\r\n localStorage.setItem(environment.authTokenKey, action.payload.authToken);\r\n this.store.dispatch(new UserRequested());\r\n }),\r\n );\r\n\r\n @Effect({dispatch: false})\r\n logout$ = this.actions$.pipe(\r\n ofType(AuthActionTypes.Logout),\r\n tap(() => {\r\n localStorage.removeItem(environment.authTokenKey);\r\n\t\t\tthis.router.navigate(['/login'], {queryParams: {returnUrl: this.returnUrl}});\r\n })\r\n );\r\n\r\n @Effect({dispatch: false})\r\n register$ = this.actions$.pipe(\r\n ofType(AuthActionTypes.Register),\r\n tap(action => {\r\n localStorage.setItem(environment.authTokenKey, action.payload.authToken);\r\n })\r\n );\r\n\r\n @Effect({dispatch: false})\r\n loadUser$ = this.actions$\r\n .pipe(\r\n ofType(AuthActionTypes.UserRequested),\r\n withLatestFrom(this.store.pipe(select(isUserLoaded))),\r\n filter(([action, _isUserLoaded]) => !_isUserLoaded),\r\n mergeMap(([action, _isUserLoaded]) => this.auth.getUserByToken()),\r\n tap(_user => {\r\n if (_user) {\r\n this.store.dispatch(new UserLoaded({ user: _user }));\r\n } else {\r\n this.store.dispatch(new Logout());\r\n }\r\n })\r\n );\r\n\r\n @Effect()\r\n init$: Observable = defer(() => {\r\n const userToken = localStorage.getItem(environment.authTokenKey);\r\n let observableResult = of({type: 'NO_ACTION'});\r\n if (userToken) {\r\n observableResult = of(new Login({ authToken: userToken }));\r\n }\r\n return observableResult;\r\n });\r\n\r\n private returnUrl: string;\r\n\r\n constructor(private actions$: Actions,\r\n private router: Router,\r\n private auth: AuthService,\r\n private store: Store) {\r\n\r\n\t\tthis.router.events.subscribe(event => {\r\n\t\t\tif (event instanceof NavigationEnd) {\r\n\t\t\t\tthis.returnUrl = event.url;\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n}\r\n","// Angular\r\nimport { Injectable } from '@angular/core';\r\n// RxJS\r\nimport { mergeMap, map, tap } from 'rxjs/operators';\r\nimport { defer, Observable, of } from 'rxjs';\r\n// NGRX\r\nimport { Effect, Actions, ofType } from '@ngrx/effects';\r\nimport { Action } from '@ngrx/store';\r\n// Services\r\nimport { AuthService } from '../_services';\r\n// Actions\r\nimport {\r\n AllPermissionsLoaded,\r\n AllPermissionsRequested,\r\n PermissionActionTypes\r\n} from '../_actions/permission.actions';\r\n// Models\r\nimport { Permission } from '../_models/permission.model';\r\n\r\n@Injectable()\r\nexport class PermissionEffects {\r\n @Effect()\r\n loadAllPermissions$ = this.actions$\r\n .pipe(\r\n ofType(PermissionActionTypes.AllPermissionsRequested),\r\n mergeMap(() => this.auth.getAllPermissions()),\r\n map((result: Permission[]) => {\r\n return new AllPermissionsLoaded({\r\n permissions: result\r\n });\r\n })\r\n );\r\n\r\n @Effect()\r\n init$: Observable = defer(() => {\r\n return of(new AllPermissionsRequested());\r\n });\r\n\r\n constructor(private actions$: Actions, private auth: AuthService) { }\r\n}\r\n","// Angular\r\nimport { Injectable } from '@angular/core';\r\n// RxJS\r\nimport { of, Observable, defer, forkJoin } from 'rxjs';\r\nimport { mergeMap, map, withLatestFrom, filter, tap } from 'rxjs/operators';\r\n// NGRX\r\nimport { Effect, Actions, ofType } from '@ngrx/effects';\r\nimport { Store, select, Action } from '@ngrx/store';\r\n// CRUD\r\nimport { QueryResultsModel, QueryParamsModel } from '../../_base/crud';\r\n// Services\r\nimport { AuthService } from '../_services';\r\n// State\r\nimport { AppState } from '../../../core/reducers';\r\n// Selectors\r\nimport { allRolesLoaded } from '../_selectors/role.selectors';\r\n// Actions\r\nimport {\r\n AllRolesLoaded,\r\n AllRolesRequested,\r\n RoleActionTypes,\r\n RolesPageRequested,\r\n RolesPageLoaded,\r\n RoleUpdated,\r\n RolesPageToggleLoading,\r\n RoleDeleted,\r\n RoleOnServerCreated,\r\n RoleCreated,\r\n RolesActionToggleLoading\r\n} from '../_actions/role.actions';\r\n\r\n@Injectable()\r\nexport class RoleEffects {\r\n showPageLoadingDistpatcher = new RolesPageToggleLoading({ isLoading: true });\r\n hidePageLoadingDistpatcher = new RolesPageToggleLoading({ isLoading: false });\r\n\r\n showActionLoadingDistpatcher = new RolesActionToggleLoading({ isLoading: true });\r\n hideActionLoadingDistpatcher = new RolesActionToggleLoading({ isLoading: false });\r\n\r\n @Effect()\r\n loadAllRoles$ = this.actions$\r\n .pipe(\r\n ofType(RoleActionTypes.AllRolesRequested),\r\n withLatestFrom(this.store.pipe(select(allRolesLoaded))),\r\n filter(([action, isAllRolesLoaded]) => !isAllRolesLoaded),\r\n mergeMap(() => this.auth.getAllRoles()),\r\n map(roles => {\r\n return new AllRolesLoaded({roles});\r\n })\r\n );\r\n\r\n @Effect()\r\n loadRolesPage$ = this.actions$\r\n .pipe(\r\n ofType(RoleActionTypes.RolesPageRequested),\r\n mergeMap(( { payload } ) => {\r\n this.store.dispatch(this.showPageLoadingDistpatcher);\r\n const requestToServer = this.auth.findRoles(payload.page);\r\n const lastQuery = of(payload.page);\r\n return forkJoin(requestToServer, lastQuery);\r\n }),\r\n map(response => {\r\n const result: QueryResultsModel = response[0];\r\n const lastQuery: QueryParamsModel = response[1];\r\n this.store.dispatch(this.hidePageLoadingDistpatcher);\r\n\r\n return new RolesPageLoaded({\r\n roles: result.items,\r\n totalCount: result.totalCount,\r\n page: lastQuery\r\n });\r\n }),\r\n );\r\n\r\n @Effect()\r\n deleteRole$ = this.actions$\r\n .pipe(\r\n ofType(RoleActionTypes.RoleDeleted),\r\n mergeMap(( { payload } ) => {\r\n this.store.dispatch(this.showActionLoadingDistpatcher);\r\n return this.auth.deleteRole(payload.id);\r\n }\r\n ),\r\n map(() => {\r\n return this.hideActionLoadingDistpatcher;\r\n }),\r\n );\r\n\r\n @Effect()\r\n updateRole$ = this.actions$\r\n .pipe(\r\n ofType(RoleActionTypes.RoleUpdated),\r\n mergeMap(( { payload } ) => {\r\n this.store.dispatch(this.showActionLoadingDistpatcher);\r\n return this.auth.updateRole(payload.role);\r\n }),\r\n map(() => {\r\n return this.hideActionLoadingDistpatcher;\r\n }),\r\n );\r\n\r\n\r\n @Effect()\r\n createRole$ = this.actions$\r\n .pipe(\r\n ofType(RoleActionTypes.RoleOnServerCreated),\r\n mergeMap(( { payload } ) => {\r\n this.store.dispatch(this.showActionLoadingDistpatcher);\r\n return this.auth.createRole(payload.role).pipe(\r\n tap(res => {\r\n this.store.dispatch(new RoleCreated({ role: res }));\r\n })\r\n );\r\n }),\r\n map(() => {\r\n return this.hideActionLoadingDistpatcher;\r\n }),\r\n );\r\n\r\n @Effect()\r\n init$: Observable = defer(() => {\r\n return of(new AllRolesRequested());\r\n });\r\n\r\n constructor(private actions$: Actions, private auth: AuthService, private store: Store) { }\r\n}\r\n","// Angular\r\nimport { Injectable } from '@angular/core';\r\n// RxJS\r\nimport { mergeMap, map, tap } from 'rxjs/operators';\r\nimport { Observable, defer, of, forkJoin } from 'rxjs';\r\n// NGRX\r\nimport { Effect, Actions, ofType } from '@ngrx/effects';\r\nimport { Store, select, Action } from '@ngrx/store';\r\n// CRUD\r\nimport { QueryResultsModel, QueryParamsModel } from '../../_base/crud';\r\n// Services\r\nimport { AuthService } from '../../../core/auth/_services';\r\n// State\r\nimport { AppState } from '../../../core/reducers';\r\nimport {\r\n UserActionTypes,\r\n UsersPageRequested,\r\n UsersPageLoaded,\r\n UserCreated,\r\n UserDeleted,\r\n UserUpdated,\r\n UserOnServerCreated,\r\n UsersActionToggleLoading,\r\n UsersPageToggleLoading\r\n} from '../_actions/user.actions';\r\n\r\n@Injectable()\r\nexport class UserEffects {\r\n showPageLoadingDistpatcher = new UsersPageToggleLoading({ isLoading: true });\r\n hidePageLoadingDistpatcher = new UsersPageToggleLoading({ isLoading: false });\r\n\r\n showActionLoadingDistpatcher = new UsersActionToggleLoading({ isLoading: true });\r\n hideActionLoadingDistpatcher = new UsersActionToggleLoading({ isLoading: false });\r\n\r\n @Effect()\r\n loadUsersPage$ = this.actions$\r\n .pipe(\r\n ofType(UserActionTypes.UsersPageRequested),\r\n mergeMap(( { payload } ) => {\r\n this.store.dispatch(this.showPageLoadingDistpatcher);\r\n const requestToServer = this.auth.findUsers(payload.page);\r\n const lastQuery = of(payload.page);\r\n return forkJoin(requestToServer, lastQuery);\r\n }),\r\n map(response => {\r\n const result: QueryResultsModel = response[0];\r\n const lastQuery: QueryParamsModel = response[1];\r\n return new UsersPageLoaded({\r\n users: result.items,\r\n totalCount: result.totalCount,\r\n page: lastQuery\r\n });\r\n }),\r\n );\r\n\r\n @Effect()\r\n deleteUser$ = this.actions$\r\n .pipe(\r\n ofType(UserActionTypes.UserDeleted),\r\n mergeMap(( { payload } ) => {\r\n this.store.dispatch(this.showActionLoadingDistpatcher);\r\n return this.auth.deleteUser(payload.id);\r\n }\r\n ),\r\n map(() => {\r\n return this.hideActionLoadingDistpatcher;\r\n }),\r\n );\r\n\r\n @Effect()\r\n updateUser$ = this.actions$\r\n .pipe(\r\n ofType(UserActionTypes.UserUpdated),\r\n mergeMap(( { payload } ) => {\r\n this.store.dispatch(this.showActionLoadingDistpatcher);\r\n return this.auth.updateUser(payload.user);\r\n }),\r\n map(() => {\r\n return this.hideActionLoadingDistpatcher;\r\n }),\r\n );\r\n\r\n @Effect()\r\n createUser$ = this.actions$\r\n .pipe(\r\n ofType(UserActionTypes.UserOnServerCreated),\r\n mergeMap(( { payload } ) => {\r\n this.store.dispatch(this.showActionLoadingDistpatcher);\r\n return this.auth.createUser(payload.user).pipe(\r\n tap(res => {\r\n this.store.dispatch(new UserCreated({ user: res }));\r\n })\r\n );\r\n }),\r\n map(() => {\r\n return this.hideActionLoadingDistpatcher;\r\n }),\r\n );\r\n\r\n constructor(private actions$: Actions, private auth: AuthService, private store: Store) { }\r\n}\r\n","// Angular\r\nimport { Injectable } from '@angular/core';\r\nimport { ActivatedRouteSnapshot, CanActivate, Router, RouterStateSnapshot } from '@angular/router';\r\n// RxJS\r\nimport { Observable } from 'rxjs';\r\nimport { tap } from 'rxjs/operators';\r\n// NGRX\r\nimport { select, Store } from '@ngrx/store';\r\n// Auth reducers and selectors\r\nimport { AppState} from '../../../core/reducers/';\r\nimport { isLoggedIn } from '../_selectors/auth.selectors';\r\n\r\n@Injectable()\r\nexport class AuthGuard implements CanActivate {\r\n constructor(private store: Store, private router: Router) { }\r\n\r\n canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable {\r\n return this.store\r\n .pipe(\r\n select(isLoggedIn),\r\n tap(loggedIn => {\r\n if (!loggedIn) {\r\n this.router.navigateByUrl('/login');\r\n }\r\n })\r\n );\r\n }\r\n}\r\n","// Angular\r\nimport { Injectable } from '@angular/core';\r\nimport { ActivatedRouteSnapshot, CanActivate, Router, RouterStateSnapshot } from '@angular/router';\r\n// RxJS\r\nimport { Observable, of } from 'rxjs';\r\nimport { tap, map } from 'rxjs/operators';\r\n// NGRX\r\nimport { select, Store } from '@ngrx/store';\r\n// Module reducers and selectors\r\nimport { AppState} from '../../../core/reducers/';\r\nimport { currentUserPermissions } from '../_selectors/auth.selectors';\r\nimport { Permission } from '../_models/permission.model';\r\nimport { find } from 'lodash';\r\n\r\n@Injectable()\r\nexport class ModuleGuard implements CanActivate {\r\n constructor(private store: Store, private router: Router) { }\r\n\r\n canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable {\r\n\r\n const moduleName = route.data['moduleName'] as string;\r\n if (!moduleName) {\r\n return of(false);\r\n }\r\n\r\n return this.store\r\n .pipe(\r\n select(currentUserPermissions),\r\n map((permissions: Permission[]) => {\r\n const _perm = find(permissions, (elem: Permission) => {\r\n return elem.title.toLocaleLowerCase() === moduleName.toLocaleLowerCase();\r\n });\r\n return _perm ? true : false;\r\n }),\r\n tap(hasAccess => {\r\n if (!hasAccess) {\r\n this.router.navigateByUrl('/error/403');\r\n }\r\n })\r\n );\r\n }\r\n}\r\n","export class Address {\r\n addressLine: string;\r\n city: string;\r\n state: string;\r\n postCode: string;\r\n\r\n clear() {\r\n this.addressLine = '';\r\n this.city = '';\r\n this.state = '';\r\n this.postCode = '';\r\n }\r\n}\r\n","import { BaseModel } from '../../_base/crud';\r\n\r\nexport class Permission extends BaseModel {\r\n id: number;\r\n title: string;\r\n level: number;\r\n parentId: number;\r\n isSelected: boolean;\r\n name: string;\r\n _children: Permission[];\r\n\r\n clear(): void {\r\n this.id = undefined;\r\n this.title = '';\r\n this.level = 1;\r\n this.parentId = undefined;\r\n this.isSelected = false;\r\n this.name = '';\r\n this._children = [];\r\n\t}\r\n}\r\n","import { BaseModel } from '../../_base/crud';\r\n\r\nexport class Role extends BaseModel {\r\n id: number;\r\n title: string;\r\n permissions: number[];\r\n isCoreRole: boolean = false;\r\n\r\n clear(): void {\r\n this.id = undefined;\r\n this.title = '';\r\n this.permissions = [];\r\n this.isCoreRole = false;\r\n\t}\r\n}\r\n","export class SocialNetworks {\r\n linkedIn: string;\r\n\tfacebook: string;\r\n\ttwitter: string;\r\n instagram: string;\r\n\r\n clear() {\r\n this.linkedIn = '';\r\n this.facebook = '';\r\n this.twitter = '';\r\n this.instagram = '';\r\n }\r\n}\r\n","import { BaseModel } from '../../_base/crud';\r\nimport { Address } from './address.model';\r\nimport { SocialNetworks } from './social-networks.model';\r\n\r\nexport class User extends BaseModel {\r\n id: number;\r\n username: string;\r\n password: string;\r\n email: string;\r\n accessToken: string;\r\n refreshToken: string;\r\n roles: number[];\r\n pic: string;\r\n fullname: string;\r\n occupation: string;\r\n\tcompanyName: string;\r\n\tphone: string;\r\n address: Address;\r\n socialNetworks: SocialNetworks;\r\n\r\n clear(): void {\r\n this.id = undefined;\r\n this.username = '';\r\n this.password = '';\r\n this.email = '';\r\n this.roles = [];\r\n this.fullname = '';\r\n this.accessToken = 'access-token-' + Math.random();\r\n this.refreshToken = 'access-token-' + Math.random();\r\n this.pic = './assets/media/users/default.jpg';\r\n this.occupation = '';\r\n this.companyName = '';\r\n this.phone = '';\r\n this.address = new Address();\r\n this.address.clear();\r\n this.socialNetworks = new SocialNetworks();\r\n this.socialNetworks.clear();\r\n }\r\n}\r\n","// Actions\r\nimport { AuthActions, AuthActionTypes } from '../_actions/auth.actions';\r\n// Models\r\nimport { User } from '../_models/user.model';\r\n\r\nexport interface AuthState {\r\n loggedIn: boolean;\r\n authToken: string;\r\n user: User;\r\n isUserLoaded: boolean;\r\n}\r\n\r\nexport const initialAuthState: AuthState = {\r\n loggedIn: false,\r\n authToken: undefined,\r\n user: undefined,\r\n isUserLoaded: false\r\n};\r\n\r\nexport function authReducer(state = initialAuthState, action: AuthActions): AuthState {\r\n switch (action.type) {\r\n case AuthActionTypes.Login: {\r\n const _token: string = action.payload.authToken;\r\n return {\r\n loggedIn: true,\r\n authToken: _token,\r\n user: undefined,\r\n isUserLoaded: false\r\n };\r\n }\r\n\r\n case AuthActionTypes.Register: {\r\n const _token: string = action.payload.authToken;\r\n return {\r\n loggedIn: true,\r\n authToken: _token,\r\n user: undefined,\r\n isUserLoaded: false\r\n };\r\n }\r\n\r\n case AuthActionTypes.Logout:\r\n return initialAuthState;\r\n\r\n case AuthActionTypes.UserLoaded: {\r\n const _user: User = action.payload.user;\r\n return {\r\n ...state,\r\n user: _user,\r\n isUserLoaded: true\r\n };\r\n }\r\n\r\n default:\r\n return state;\r\n }\r\n}\r\n","// NGRX\r\nimport { EntityState, EntityAdapter, createEntityAdapter } from '@ngrx/entity';\r\nimport { createFeatureSelector } from '@ngrx/store';\r\n// Actions\r\nimport { PermissionActionTypes, PermissionActions } from '../_actions/permission.actions';\r\n// Models\r\nimport { Permission } from '../_models/permission.model';\r\n\r\nexport interface PermissionsState extends EntityState {\r\n _isAllPermissionsLoaded: boolean;\r\n}\r\n\r\nexport const adapter: EntityAdapter = createEntityAdapter();\r\n\r\nexport const initialPermissionsState: PermissionsState = adapter.getInitialState({\r\n _isAllPermissionsLoaded: false\r\n});\r\n\r\nexport function permissionsReducer(state = initialPermissionsState, action: PermissionActions): PermissionsState {\r\n switch (action.type) {\r\n case PermissionActionTypes.AllPermissionsRequested:\r\n return {...state,\r\n _isAllPermissionsLoaded: false\r\n };\r\n case PermissionActionTypes.AllPermissionsLoaded:\r\n return adapter.addAll(action.payload.permissions, {\r\n ...state,\r\n _isAllPermissionsLoaded: true\r\n });\r\n default:\r\n return state;\r\n }\r\n}\r\n\r\nexport const getRoleState = createFeatureSelector('permissions');\r\n\r\nexport const {\r\n selectAll,\r\n selectEntities,\r\n selectIds,\r\n selectTotal\r\n} = adapter.getSelectors();\r\n","// NGRX\r\nimport { EntityState, EntityAdapter, createEntityAdapter } from '@ngrx/entity';\r\n// Actions\r\nimport { RoleActions, RoleActionTypes } from '../_actions/role.actions';\r\n// Models\r\nimport { Role } from '../_models/role.model';\r\nimport { QueryParamsModel } from '../../_base/crud';\r\n\r\nexport interface RolesState extends EntityState {\r\n isAllRolesLoaded: boolean;\r\n queryRowsCount: number;\r\n queryResult: Role[];\r\n lastCreatedRoleId: number;\r\n listLoading: boolean;\r\n actionsloading: boolean;\r\n lastQuery: QueryParamsModel;\r\n showInitWaitingMessage: boolean;\r\n}\r\n\r\nexport const adapter: EntityAdapter = createEntityAdapter();\r\n\r\nexport const initialRolesState: RolesState = adapter.getInitialState({\r\n isAllRolesLoaded: false,\r\n queryRowsCount: 0,\r\n queryResult: [],\r\n lastCreatedRoleId: undefined,\r\n listLoading: false,\r\n actionsloading: false,\r\n lastQuery: new QueryParamsModel({}),\r\n showInitWaitingMessage: true\r\n});\r\n\r\nexport function rolesReducer(state = initialRolesState, action: RoleActions): RolesState {\r\n switch (action.type) {\r\n case RoleActionTypes.RolesPageToggleLoading: return {\r\n ...state, listLoading: action.payload.isLoading, lastCreatedRoleId: undefined\r\n };\r\n case RoleActionTypes.RolesActionToggleLoading: return {\r\n ...state, actionsloading: action.payload.isLoading\r\n };\r\n case RoleActionTypes.RoleOnServerCreated: return {\r\n ...state\r\n };\r\n case RoleActionTypes.RoleCreated: return adapter.addOne(action.payload.role, {\r\n ...state, lastCreatedRoleId: action.payload.role.id\r\n });\r\n case RoleActionTypes.RoleUpdated: return adapter.updateOne(action.payload.partialrole, state);\r\n case RoleActionTypes.RoleDeleted: return adapter.removeOne(action.payload.id, state);\r\n case RoleActionTypes.AllRolesLoaded: return adapter.addAll(action.payload.roles, {\r\n ...state, isAllRolesLoaded: true\r\n });\r\n case RoleActionTypes.RolesPageCancelled: return {\r\n ...state, listLoading: false, queryRowsCount: 0, queryResult: [], lastQuery: new QueryParamsModel({})\r\n };\r\n case RoleActionTypes.RolesPageLoaded: return adapter.addMany(action.payload.roles, {\r\n ...initialRolesState,\r\n listLoading: false,\r\n queryRowsCount: action.payload.totalCount,\r\n queryResult: action.payload.roles,\r\n lastQuery: action.payload.page,\r\n showInitWaitingMessage: false\r\n });\r\n default: return state;\r\n }\r\n}\r\n\r\nexport const {\r\n selectAll,\r\n selectEntities,\r\n selectIds,\r\n selectTotal\r\n} = adapter.getSelectors();\r\n","// NGRX\r\nimport { createFeatureSelector } from '@ngrx/store';\r\nimport { EntityState, EntityAdapter, createEntityAdapter } from '@ngrx/entity';\r\n// Actions\r\nimport { UserActions, UserActionTypes } from '../_actions/user.actions';\r\n// CRUD\r\nimport { QueryParamsModel } from '../../_base/crud';\r\n// Models\r\nimport { User } from '../_models/user.model';\r\n\r\n// tslint:disable-next-line:no-empty-interface\r\nexport interface UsersState extends EntityState {\r\n listLoading: boolean;\r\n actionsloading: boolean;\r\n totalCount: number;\r\n lastCreatedUserId: number;\r\n lastQuery: QueryParamsModel;\r\n showInitWaitingMessage: boolean;\r\n}\r\n\r\nexport const adapter: EntityAdapter = createEntityAdapter();\r\n\r\nexport const initialUsersState: UsersState = adapter.getInitialState({\r\n listLoading: false,\r\n actionsloading: false,\r\n totalCount: 0,\r\n lastQuery: new QueryParamsModel({}),\r\n lastCreatedUserId: undefined,\r\n showInitWaitingMessage: true\r\n});\r\n\r\nexport function usersReducer(state = initialUsersState, action: UserActions): UsersState {\r\n switch (action.type) {\r\n case UserActionTypes.UsersPageToggleLoading: return {\r\n ...state, listLoading: action.payload.isLoading, lastCreatedUserId: undefined\r\n };\r\n case UserActionTypes.UsersActionToggleLoading: return {\r\n ...state, actionsloading: action.payload.isLoading\r\n };\r\n case UserActionTypes.UserOnServerCreated: return {\r\n ...state\r\n };\r\n case UserActionTypes.UserCreated: return adapter.addOne(action.payload.user, {\r\n ...state, lastCreatedUserId: action.payload.user.id\r\n });\r\n case UserActionTypes.UserUpdated: return adapter.updateOne(action.payload.partialUser, state);\r\n case UserActionTypes.UserDeleted: return adapter.removeOne(action.payload.id, state);\r\n case UserActionTypes.UsersPageCancelled: return {\r\n ...state, listLoading: false, lastQuery: new QueryParamsModel({})\r\n };\r\n case UserActionTypes.UsersPageLoaded: {\r\n return adapter.addMany(action.payload.users, {\r\n ...initialUsersState,\r\n totalCount: action.payload.totalCount,\r\n lastQuery: action.payload.page,\r\n listLoading: false,\r\n showInitWaitingMessage: false\r\n });\r\n }\r\n default: return state;\r\n }\r\n}\r\n\r\nexport const getUserState = createFeatureSelector('users');\r\n\r\nexport const {\r\n selectAll,\r\n selectEntities,\r\n selectIds,\r\n selectTotal\r\n} = adapter.getSelectors();\r\n","// NGRX\r\nimport { createSelector } from '@ngrx/store';\r\n// Lodash\r\nimport { each, find, some } from 'lodash';\r\n// Selectors\r\nimport { selectAllRoles } from './role.selectors';\r\nimport { selectAllPermissions } from './permission.selectors';\r\n// Models\r\nimport { Role } from '../_models/role.model';\r\nimport { Permission } from '../_models/permission.model';\r\n\r\nexport const selectAuthState = state => state.auth;\r\n\r\nexport const isLoggedIn = createSelector(\r\n selectAuthState,\r\n auth => auth.loggedIn\r\n);\r\n\r\nexport const isLoggedOut = createSelector(\r\n isLoggedIn,\r\n loggedIn => !loggedIn\r\n);\r\n\r\n\r\nexport const currentAuthToken = createSelector(\r\n selectAuthState,\r\n auth => auth.authToken\r\n);\r\n\r\nexport const isUserLoaded = createSelector(\r\n selectAuthState,\r\n auth => auth.isUserLoaded\r\n);\r\n\r\nexport const currentUser = createSelector(\r\n selectAuthState,\r\n auth => auth.user\r\n);\r\n\r\nexport const currentUserRoleIds = createSelector(\r\n currentUser,\r\n user => {\r\n if (!user) {\r\n return [];\r\n }\r\n\r\n return user.roles;\r\n }\r\n);\r\n\r\nexport const currentUserPermissionsIds = createSelector(\r\n currentUserRoleIds,\r\n selectAllRoles,\r\n (userRoleIds: number[], allRoles: Role[]) => {\r\n const result = getPermissionsIdsFrom(userRoleIds, allRoles);\r\n return result;\r\n }\r\n);\r\n\r\nexport const checkHasUserPermission = (permissionId: number) => createSelector(\r\n currentUserPermissionsIds,\r\n (ids: number[]) => {\r\n return ids.some(id => id === permissionId);\r\n }\r\n);\r\n\r\nexport const currentUserPermissions = createSelector(\r\n currentUserPermissionsIds,\r\n selectAllPermissions,\r\n (permissionIds: number[], allPermissions: Permission[]) => {\r\n const result: Permission[] = [];\r\n each(permissionIds, id => {\r\n const userPermission = find(allPermissions, elem => elem.id === id);\r\n if (userPermission) {\r\n result.push(userPermission);\r\n }\r\n });\r\n return result;\r\n }\r\n);\r\n\r\nfunction getPermissionsIdsFrom(userRolesIds: number[] = [], allRoles: Role[] = []): number[] {\r\n const userRoles: Role[] = [];\r\n each(userRolesIds, (_id: number) => {\r\n const userRole = find(allRoles, (_role: Role) => _role.id === _id);\r\n if (userRole) {\r\n userRoles.push(userRole);\r\n }\r\n });\r\n\r\n const result: number[] = [];\r\n each(userRoles, (_role: Role) => {\r\n each(_role.permissions, id => {\r\n if (!some(result, _id => _id === id)) {\r\n result.push(id);\r\n }\r\n });\r\n });\r\n return result;\r\n}\r\n","// NGRX\r\nimport { createFeatureSelector, createSelector } from '@ngrx/store';\r\n// State\r\nimport { PermissionsState } from '../_reducers/permission.reducers';\r\nimport * as fromPermissions from '../_reducers/permission.reducers';\r\n\r\nexport const selectPermissionsState = createFeatureSelector('permissions');\r\n\r\nexport const selectPermissionById = (permissionId: number) => createSelector(\r\n selectPermissionsState,\r\n ps => ps.entities[permissionId]\r\n);\r\n\r\nexport const selectAllPermissions = createSelector(\r\n selectPermissionsState,\r\n fromPermissions.selectAll\r\n);\r\n\r\nexport const selectAllPermissionsIds = createSelector(\r\n selectPermissionsState,\r\n fromPermissions.selectIds\r\n);\r\n\r\nexport const allPermissionsLoaded = createSelector(\r\n selectPermissionsState,\r\n ps => ps._isAllPermissionsLoaded\r\n);\r\n","import { Role } from './../_models/role.model';\r\n\r\n// NGRX\r\nimport { createFeatureSelector, createSelector } from '@ngrx/store';\r\n// CRUD\r\nimport { QueryResultsModel, HttpExtenstionsModel } from '../../_base/crud';\r\n// State\r\nimport { RolesState } from '../_reducers/role.reducers';\r\nimport * as fromRole from '../_reducers/role.reducers';\r\nimport { each } from 'lodash';\r\n\r\nexport const selectRolesState = createFeatureSelector('roles');\r\n\r\nexport const selectRoleById = (roleId: number) => createSelector(\r\n selectRolesState,\r\n rolesState => rolesState.entities[roleId]\r\n);\r\n\r\nexport const selectAllRoles = createSelector(\r\n selectRolesState,\r\n fromRole.selectAll\r\n);\r\n\r\nexport const selectAllRolesIds = createSelector(\r\n selectRolesState,\r\n fromRole.selectIds\r\n);\r\n\r\nexport const allRolesLoaded = createSelector(\r\n selectRolesState,\r\n rolesState => rolesState.isAllRolesLoaded\r\n);\r\n\r\n\r\nexport const selectRolesPageLoading = createSelector(\r\n selectRolesState,\r\n rolesState => rolesState.listLoading\r\n);\r\n\r\nexport const selectRolesActionLoading = createSelector(\r\n selectRolesState,\r\n rolesState => rolesState.actionsloading\r\n);\r\n\r\nexport const selectLastCreatedRoleId = createSelector(\r\n selectRolesState,\r\n rolesState => rolesState.lastCreatedRoleId\r\n);\r\n\r\nexport const selectRolesShowInitWaitingMessage = createSelector(\r\n selectRolesState,\r\n rolesState => rolesState.showInitWaitingMessage\r\n);\r\n\r\n\r\nexport const selectQueryResult = createSelector(\r\n selectRolesState,\r\n rolesState => {\r\n const items: Role[] = [];\r\n each(rolesState.entities, element => {\r\n items.push(element);\r\n });\r\n const httpExtension = new HttpExtenstionsModel();\r\n const result: Role[] = httpExtension.sortArray(items, rolesState.lastQuery.sortField, rolesState.lastQuery.sortOrder);\r\n\r\n return new QueryResultsModel(rolesState.queryResult, rolesState.queryRowsCount);\r\n }\r\n);\r\n","// NGRX\r\nimport { createFeatureSelector, createSelector } from '@ngrx/store';\r\n// CRUD\r\nimport { QueryResultsModel, HttpExtenstionsModel } from '../../_base/crud';\r\n// State\r\nimport { UsersState } from '../_reducers/user.reducers';\r\nimport { each } from 'lodash';\r\nimport { User } from '../_models/user.model';\r\n\r\n\r\nexport const selectUsersState = createFeatureSelector('users');\r\n\r\nexport const selectUserById = (userId: number) => createSelector(\r\n selectUsersState,\r\n usersState => usersState.entities[userId]\r\n);\r\n\r\nexport const selectUsersPageLoading = createSelector(\r\n selectUsersState,\r\n usersState => {\r\n return usersState.listLoading;\r\n }\r\n);\r\n\r\nexport const selectUsersActionLoading = createSelector(\r\n selectUsersState,\r\n usersState => usersState.actionsloading\r\n);\r\n\r\nexport const selectLastCreatedUserId = createSelector(\r\n selectUsersState,\r\n usersState => usersState.lastCreatedUserId\r\n);\r\n\r\nexport const selectUsersPageLastQuery = createSelector(\r\n selectUsersState,\r\n usersState => usersState.lastQuery\r\n);\r\n\r\nexport const selectUsersInStore = createSelector(\r\n selectUsersState,\r\n usersState => {\r\n const items: User[] = [];\r\n each(usersState.entities, element => {\r\n items.push(element);\r\n });\r\n const httpExtension = new HttpExtenstionsModel();\r\n const result: User[] = httpExtension.sortArray(items, usersState.lastQuery.sortField, usersState.lastQuery.sortOrder);\r\n return new QueryResultsModel(result, usersState.totalCount, '');\r\n }\r\n);\r\n\r\nexport const selectUsersShowInitWaitingMessage = createSelector(\r\n selectUsersState,\r\n usersState => usersState.showInitWaitingMessage\r\n);\r\n\r\nexport const selectHasUsersInStore = createSelector(\r\n selectUsersState,\r\n queryResult => {\r\n if (!queryResult.totalCount) {\r\n return false;\r\n }\r\n\r\n return true;\r\n }\r\n);\r\n","import { UsersTable } from './users.table';\r\nimport { PermissionsTable } from './permissions.table';\r\nimport { RolesTable } from './roles.table';\r\n\r\n// Wrapper class\r\nexport class AuthDataContext {\r\n\tpublic static users: any = UsersTable.users;\r\n\tpublic static roles: any = RolesTable.roles;\r\n\tpublic static permissions = PermissionsTable.permissions;\r\n}\r\n","export class PermissionsTable {\r\n\tpublic static permissions: any = [\r\n {\r\n id: 1,\r\n name: 'accessToECommerceModule',\r\n level: 1,\r\n title: 'eCommerce module'\r\n },\r\n {\r\n id: 2,\r\n name: 'accessToAuthModule',\r\n level: 1,\r\n title: 'Users Management module'\r\n },\r\n {\r\n id: 3,\r\n name: 'accessToMailModule',\r\n level: 1,\r\n title: 'Mail module'\r\n },\r\n {\r\n id: 4,\r\n name: 'canReadECommerceData',\r\n level: 2,\r\n parentId: 1,\r\n title: 'Read'\r\n },\r\n {\r\n id: 5,\r\n name: 'canEditECommerceData',\r\n level: 2,\r\n parentId: 1,\r\n title: 'Edit'\r\n },\r\n {\r\n id: 6,\r\n name: 'canDeleteECommerceData',\r\n level: 2,\r\n parentId: 1,\r\n title: 'Delete'\r\n },\r\n {\r\n id: 7,\r\n name: 'canReadAuthData',\r\n level: 2,\r\n parentId: 2,\r\n title: 'Read'\r\n },\r\n {\r\n id: 8,\r\n name: 'canEditAuthData',\r\n level: 2,\r\n parentId: 2,\r\n title: 'Edit'\r\n },\r\n {\r\n id: 9,\r\n name: 'canDeleteAuthData',\r\n level: 2,\r\n parentId: 2,\r\n title: 'Delete'\r\n },\r\n {\r\n id: 10,\r\n name: 'canReadMailData',\r\n level: 2,\r\n parentId: 3,\r\n title: 'Read'\r\n },\r\n {\r\n id: 11,\r\n name: 'canEditMailData',\r\n level: 2,\r\n parentId: 3,\r\n title: 'Edit'\r\n },\r\n {\r\n id: 12,\r\n name: 'canDeleteMailData',\r\n level: 2,\r\n parentId: 3,\r\n title: 'Delete'\r\n },\r\n ];\r\n}\r\n","export class RolesTable {\r\n\tpublic static roles: any = [\r\n {\r\n id: 1,\r\n title: 'Administrator',\r\n isCoreRole: true,\r\n permissions: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]\r\n },\r\n {\r\n id: 2,\r\n title: 'Manager',\r\n isCoreRole: false,\r\n\t\t\tpermissions: [3, 4, 10]\r\n },\r\n {\r\n id: 3,\r\n title: 'Guest',\r\n isCoreRole: false,\r\n\t\t\tpermissions: []\r\n }\r\n ];\r\n}\r\n","export class UsersTable {\r\n\tpublic static users: any = [\r\n\t\t{\r\n\t\t\tid: 1,\r\n\t\t\tusername: 'admin',\r\n\t\t\tpassword: 'demo',\r\n\t\t\temail: 'admin@demo.com',\r\n\t\t\taccessToken: 'access-token-8f3ae836da744329a6f93bf20594b5cc',\r\n\t\t\trefreshToken: 'access-token-f8c137a2c98743f48b643e71161d90aa',\r\n\t\t\troles: [1], // Administrator\r\n\t\t\tpic: './assets/media/users/300_25.jpg',\r\n\t\t\tfullname: 'Sean',\r\n\t\t\toccupation: 'CEO',\r\n\t\t\tcompanyName: 'Keenthemes',\r\n\t\t\tphone: '456669067890',\r\n\t\t\taddress: {\r\n\t\t\t\taddressLine: 'L-12-20 Vertex, Cybersquare',\r\n\t\t\t\tcity: 'San Francisco',\r\n\t\t\t\tstate: 'California',\r\n\t\t\t\tpostCode: '45000'\r\n\t\t\t},\r\n\t\t\tsocialNetworks: {\r\n\t\t\t\tlinkedIn: 'https://linkedin.com/admin',\r\n\t\t\t\tfacebook: 'https://facebook.com/admin',\r\n\t\t\t\ttwitter: 'https://twitter.com/admin',\r\n\t\t\t\tinstagram: 'https://instagram.com/admin'\r\n\t\t\t}\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 2,\r\n\t\t\tusername: 'user',\r\n\t\t\tpassword: 'demo',\r\n\t\t\temail: 'user@demo.com',\r\n\t\t\taccessToken: 'access-token-6829bba69dd3421d8762-991e9e806dbf',\r\n\t\t\trefreshToken: 'access-token-f8e4c61a318e4d618b6c199ef96b9e55',\r\n\t\t\troles: [2], // Manager\r\n\t\t\tpic: './assets/media/users/100_2.jpg',\r\n\t\t\tfullname: 'Megan',\r\n\t\t\toccupation: 'Deputy Head of Keenthemes in New York office',\r\n\t\t\tcompanyName: 'Keenthemes',\r\n\t\t\tphone: '456669067891',\r\n\t\t\taddress: {\r\n\t\t\t\taddressLine: '3487 Ingram Road',\r\n\t\t\t\tcity: 'Greensboro',\r\n\t\t\t\tstate: 'North Carolina',\r\n\t\t\t\tpostCode: '27409'\r\n\t\t\t},\r\n\t\t\tsocialNetworks: {\r\n\t\t\t\tlinkedIn: 'https://linkedin.com/user',\r\n\t\t\t\tfacebook: 'https://facebook.com/user',\r\n\t\t\t\ttwitter: 'https://twitter.com/user',\r\n\t\t\t\tinstagram: 'https://instagram.com/user'\r\n\t\t\t}\r\n },\r\n {\r\n\t\t\tid: 3,\r\n\t\t\tusername: 'guest',\r\n\t\t\tpassword: 'demo',\r\n\t\t\temail: 'guest@demo.com',\r\n\t\t\taccessToken: 'access-token-d2dff7b82f784de584b60964abbe45b9',\r\n\t\t\trefreshToken: 'access-token-c999ccfe74aa40d0aa1a64c5e620c1a5',\r\n\t\t\troles: [3], // Guest\r\n\t\t\tpic: './assets/media/users/default.jpg',\r\n\t\t\tfullname: 'Ginobili Maccari',\r\n\t\t\toccupation: 'CFO',\r\n\t\t\tcompanyName: 'Keenthemes',\r\n\t\t\tphone: '456669067892',\r\n\t\t\taddress: {\r\n\t\t\t\taddressLine: '1467 Griffin Street',\r\n\t\t\t\tcity: 'Phoenix',\r\n\t\t\t\tstate: 'Arizona',\r\n\t\t\t\tpostCode: '85012'\r\n\t\t\t},\r\n\t\t\tsocialNetworks: {\r\n\t\t\t\tlinkedIn: 'https://linkedin.com/guest',\r\n\t\t\t\tfacebook: 'https://facebook.com/guest',\r\n\t\t\t\ttwitter: 'https://twitter.com/guest',\r\n\t\t\t\tinstagram: 'https://instagram.com/guest'\r\n\t\t\t}\r\n\t\t}\r\n\t];\r\n\r\n\tpublic static tokens: any = [\r\n\t\t{\r\n\t\t\tid: 1,\r\n\t\t\taccessToken: 'access-token-' + Math.random(),\r\n\t\t\trefreshToken: 'access-token-' + Math.random()\r\n\t\t}\r\n\t];\r\n}\r\n","// Angular\r\nimport { Injectable } from '@angular/core';\r\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\r\n// RxJS\r\nimport { Observable, of, forkJoin } from 'rxjs';\r\nimport { map, catchError, mergeMap, tap } from 'rxjs/operators';\r\n// Lodash\r\nimport { filter, some, find, each } from 'lodash';\r\n// Environment\r\nimport { environment } from '../../../../environments/environment';\r\n// CRUD\r\nimport { QueryParamsModel, QueryResultsModel, HttpUtilsService } from '../../_base/crud';\r\n// Models\r\nimport { User } from '../_models/user.model';\r\nimport { Permission } from '../_models/permission.model';\r\nimport { Role } from '../_models/role.model';\r\n\r\nconst API_USERS_URL = 'api/users';\r\nconst API_PERMISSION_URL = 'api/permissions';\r\nconst API_ROLES_URL = 'api/roles';\r\n\r\n@Injectable()\r\nexport class AuthService {\r\n constructor(private http: HttpClient,\r\n private httpUtils: HttpUtilsService) { }\r\n\r\n // Authentication/Authorization\r\n login(email: string, password: string): Observable {\r\n if (!email || !password) {\r\n return of(null);\r\n }\r\n\r\n return this.getAllUsers().pipe(\r\n map((result: User[]) => {\r\n if (result.length <= 0) {\r\n return null;\r\n }\r\n\r\n const user = find(result, function(item: User) {\r\n return (item.email.toLowerCase() === email.toLowerCase() && item.password === password);\r\n });\r\n\r\n if (!user) {\r\n return null;\r\n }\r\n\r\n user.password = undefined;\r\n return user;\r\n })\r\n );\r\n\r\n }\r\n\r\n register(user: User): Observable {\r\n user.roles = [2]; // Manager\r\n user.accessToken = 'access-token-' + Math.random();\r\n user.refreshToken = 'access-token-' + Math.random();\r\n user.pic = './assets/media/users/default.jpg';\r\n\r\n const httpHeaders = new HttpHeaders();\r\n httpHeaders.set('Content-Type', 'application/json');\r\n return this.http.post(API_USERS_URL, user, { headers: httpHeaders })\r\n .pipe(\r\n map((res: User) => {\r\n return res;\r\n }),\r\n catchError(err => {\r\n return null;\r\n })\r\n );\r\n }\r\n\r\n \r\n registrarPasajero(user: User): Observable {\r\n user.roles = [2]; // Manager\r\n user.accessToken = 'access-token-' + Math.random();\r\n user.refreshToken = 'access-token-' + Math.random();\r\n user.pic = './assets/media/users/default.jpg';\r\n\r\n const httpHeaders = new HttpHeaders();\r\n httpHeaders.set('Content-Type', 'application/json');\r\n return this.http.post(API_USERS_URL, user, { headers: httpHeaders })\r\n .pipe(\r\n map((res: User) => {\r\n return res;\r\n }),\r\n catchError(err => {\r\n return null;\r\n })\r\n );\r\n }\r\n\r\n requestPassword(email: string): Observable {\r\n \treturn this.http.get(API_USERS_URL).pipe(\r\n map((users: User[]) => {\r\n if (users.length <= 0) {\r\n return null;\r\n }\r\n\r\n const user = find(users, function(item: User) {\r\n return (item.email.toLowerCase() === email.toLowerCase());\r\n });\r\n\r\n if (!user) {\r\n return null;\r\n }\r\n\r\n user.password = undefined;\r\n return user;\r\n }),\r\n catchError(this.handleError('forgot-password', []))\r\n );\r\n }\r\n\r\n getUserByToken(): Observable {\r\n const userToken = localStorage.getItem(environment.authTokenKey);\r\n if (!userToken) {\r\n return of(null);\r\n }\r\n\r\n return this.getAllUsers().pipe(\r\n map((result: User[]) => {\r\n if (result.length <= 0) {\r\n return null;\r\n }\r\n\r\n const user = find(result, function(item: User) {\r\n return (item.accessToken === userToken.toString());\r\n });\r\n\r\n if (!user) {\r\n return null;\r\n }\r\n\r\n user.password = undefined;\r\n return user;\r\n })\r\n );\r\n }\r\n\r\n // Users\r\n\r\n // CREATE => POST: add a new user to the server\r\n\tcreateUser(user: User): Observable {\r\n const httpHeaders = new HttpHeaders();\r\n // Note: Add headers if needed (tokens/bearer)\r\n httpHeaders.set('Content-Type', 'application/json');\r\n\t\treturn this.http.post(API_USERS_URL, user, { headers: httpHeaders});\r\n }\r\n\r\n // READ\r\n getAllUsers(): Observable {\r\n\t\treturn this.http.get(API_USERS_URL);\r\n }\r\n\r\n getUserById(userId: number): Observable {\r\n if (!userId) {\r\n return of(null);\r\n }\r\n\r\n\t\treturn this.http.get(API_USERS_URL + `/${userId}`);\r\n }\r\n\r\n // DELETE => delete the user from the server\r\n\tdeleteUser(userId: number) {\r\n\t\tconst url = `${API_USERS_URL}/${userId}`;\r\n\t\treturn this.http.delete(url);\r\n }\r\n\r\n // UPDATE => PUT: update the user on the server\r\n\tupdateUser(_user: User): Observable {\r\n const httpHeaders = new HttpHeaders();\r\n httpHeaders.set('Content-Type', 'application/json');\r\n\t\treturn this.http.put(API_USERS_URL, _user, { headers: httpHeaders }).pipe(\r\n catchError(err => {\r\n return of(null);\r\n })\r\n );\r\n\t}\r\n\r\n // Method from server should return QueryResultsModel(items: any[], totalsCount: number)\r\n\t// items => filtered/sorted result\r\n\tfindUsers(queryParams: QueryParamsModel): Observable {\r\n\t\t// This code imitates server calls\r\n\t\treturn this.getAllUsers().pipe(\r\n\t\t\tmergeMap((response: User[]) => {\r\n\t\t\t\tconst result = this.httpUtils.baseFilter(response, queryParams, []);\r\n\t\t\t\treturn of(result);\r\n\t\t\t})\r\n\t\t);\r\n\t}\r\n\r\n // Permissions\r\n getAllPermissions(): Observable {\r\n\t\treturn this.http.get(API_PERMISSION_URL);\r\n }\r\n\r\n getRolePermissions(roleId: number): Observable {\r\n const allRolesRequest = this.http.get(API_PERMISSION_URL);\r\n const roleRequest = roleId ? this.getRoleById(roleId) : of(null);\r\n return forkJoin(allRolesRequest, roleRequest).pipe(\r\n\t\t\tmap(res => {\r\n\t\t\t\tconst _allPermissions: Permission[] = res[0];\r\n const _role: Role = res[1];\r\n if (!_allPermissions || _allPermissions.length === 0) {\r\n return [];\r\n }\r\n\r\n const _rolePermission = _role ? _role.permissions : [];\r\n const result: Permission[] = this.getRolePermissionsTree(_allPermissions, _rolePermission);\r\n return result;\r\n })\r\n );\r\n }\r\n\r\n private getRolePermissionsTree(_allPermission: Permission[] = [], _rolePermissionIds: number[] = []): Permission[] {\r\n const result: Permission[] = [];\r\n const _root: Permission[] = filter(_allPermission, (item: Permission) => !item.parentId);\r\n each(_root, (_rootItem: Permission) => {\r\n _rootItem._children = [];\r\n _rootItem._children = this.collectChildrenPermission(_allPermission, _rootItem.id, _rolePermissionIds);\r\n _rootItem.isSelected = (some(_rolePermissionIds, (id: number) => id === _rootItem.id));\r\n result.push(_rootItem);\r\n });\r\n return result;\r\n }\r\n\r\n private collectChildrenPermission(_allPermission: Permission[] = [],\r\n _parentId: number, _rolePermissionIds: number[] = []): Permission[] {\r\n const result: Permission[] = [];\r\n const _children: Permission[] = filter(_allPermission, (item: Permission) => item.parentId === _parentId);\r\n if (_children.length === 0) {\r\n return result;\r\n }\r\n\r\n each(_children, (_childItem: Permission) => {\r\n _childItem._children = [];\r\n _childItem._children = this.collectChildrenPermission(_allPermission, _childItem.id, _rolePermissionIds);\r\n _childItem.isSelected = (some(_rolePermissionIds, (id: number) => id === _childItem.id));\r\n result.push(_childItem);\r\n });\r\n return result;\r\n }\r\n\r\n // Roles\r\n getAllRoles(): Observable {\r\n return this.http.get(API_ROLES_URL);\r\n }\r\n\r\n getRoleById(roleId: number): Observable {\r\n\t\treturn this.http.get(API_ROLES_URL + `/${roleId}`);\r\n }\r\n\r\n // CREATE => POST: add a new role to the server\r\n\tcreateRole(role: Role): Observable {\r\n\t\t// Note: Add headers if needed (tokens/bearer)\r\n const httpHeaders = new HttpHeaders();\r\n httpHeaders.set('Content-Type', 'application/json');\r\n\t\treturn this.http.post(API_ROLES_URL, role, { headers: httpHeaders});\r\n\t}\r\n\r\n // UPDATE => PUT: update the role on the server\r\n\tupdateRole(role: Role): Observable {\r\n const httpHeaders = new HttpHeaders();\r\n httpHeaders.set('Content-Type', 'application/json');\r\n\t\treturn this.http.put(API_ROLES_URL, role, { headers: httpHeaders });\r\n\t}\r\n\r\n\t// DELETE => delete the role from the server\r\n\tdeleteRole(roleId: number): Observable {\r\n\t\tconst url = `${API_ROLES_URL}/${roleId}`;\r\n\t\treturn this.http.delete(url);\r\n }\r\n\r\n findRoles(queryParams: QueryParamsModel): Observable {\r\n\t\t// This code imitates server calls\r\n\t\treturn this.http.get(API_ROLES_URL).pipe(\r\n\t\t\tmergeMap(res => {\r\n\t\t\t\tconst result = this.httpUtils.baseFilter(res, queryParams, []);\r\n\t\t\t\treturn of(result);\r\n\t\t\t})\r\n\t\t);\r\n\t}\r\n\r\n // Check Role Before deletion\r\n isRoleAssignedToUsers(roleId: number): Observable {\r\n return this.getAllUsers().pipe(\r\n map((users: User[]) => {\r\n if (some(users, (user: User) => some(user.roles, (_roleId: number) => _roleId === roleId))) {\r\n return true;\r\n }\r\n\r\n return false;\r\n })\r\n );\r\n }\r\n\r\n private handleError(operation = 'operation', result?: any) {\r\n return (error: any): Observable => {\r\n // TODO: send the error to remote logging infrastructure\r\n console.error(error); // log to console instead\r\n\r\n // Let the app keep running by returning an empty result.\r\n return of(result);\r\n };\r\n }\r\n}\r\n","export { AuthService } from './auth.service.fake'; // You have to comment this, when your real back-end is done\r\n// export { AuthService } from './auth.service'; // You have to uncomment this, when your real back-end is done\r\n","import { Injectable } from '@angular/core';\r\nimport { BehaviorSubject } from 'rxjs';\r\nimport { AuthNotice } from './auth-notice.interface';\r\n\r\n@Injectable({\r\n\tprovidedIn: 'root'\r\n})\r\nexport class AuthNoticeService {\r\n\tonNoticeChanged$: BehaviorSubject;\r\n\r\n\tconstructor() {\r\n\t\tthis.onNoticeChanged$ = new BehaviorSubject(null);\r\n\t}\r\n\r\n\tsetNotice(message: string, type?: string) {\r\n\t\tconst notice: AuthNotice = {\r\n\t\t\tmessage: message,\r\n\t\t\ttype: type\r\n\t\t};\r\n\t\tthis.onNoticeChanged$.next(notice);\r\n\t}\r\n}\r\n","// SERVICES\r\nexport { AuthService } from './_services';\r\nexport { AuthNoticeService } from './auth-notice/auth-notice.service';\r\n\r\n// DATA SOURCERS\r\nexport { RolesDataSource } from './_data-sources/roles.datasource';\r\nexport { UsersDataSource } from './_data-sources/users.datasource';\r\n\r\n// ACTIONS\r\nexport {\r\n Login,\r\n Logout,\r\n Register,\r\n UserRequested,\r\n UserLoaded,\r\n AuthActionTypes,\r\n AuthActions\r\n} from './_actions/auth.actions';\r\nexport {\r\n AllPermissionsRequested,\r\n AllPermissionsLoaded,\r\n PermissionActionTypes,\r\n PermissionActions\r\n} from './_actions/permission.actions';\r\nexport {\r\n RoleOnServerCreated,\r\n RoleCreated,\r\n RoleUpdated,\r\n RoleDeleted,\r\n RolesPageRequested,\r\n RolesPageLoaded,\r\n RolesPageCancelled,\r\n AllRolesLoaded,\r\n AllRolesRequested,\r\n RoleActionTypes,\r\n RoleActions\r\n} from './_actions/role.actions';\r\nexport {\r\n UserCreated,\r\n UserUpdated,\r\n UserDeleted,\r\n UserOnServerCreated,\r\n UsersPageLoaded,\r\n UsersPageCancelled,\r\n UsersPageToggleLoading,\r\n UsersPageRequested,\r\n UsersActionToggleLoading\r\n} from './_actions/user.actions';\r\n\r\n// EFFECTS\r\nexport { AuthEffects } from './_effects/auth.effects';\r\nexport { PermissionEffects } from './_effects/permission.effects';\r\nexport { RoleEffects } from './_effects/role.effects';\r\nexport { UserEffects } from './_effects/user.effects';\r\n\r\n// REDUCERS\r\nexport { authReducer } from './_reducers/auth.reducers';\r\nexport { permissionsReducer } from './_reducers/permission.reducers';\r\nexport { rolesReducer } from './_reducers/role.reducers';\r\nexport { usersReducer } from './_reducers/user.reducers';\r\n\r\n// SELECTORS\r\nexport {\r\n isLoggedIn,\r\n isLoggedOut,\r\n isUserLoaded,\r\n currentAuthToken,\r\n currentUser,\r\n currentUserRoleIds,\r\n currentUserPermissionsIds,\r\n currentUserPermissions,\r\n checkHasUserPermission\r\n} from './_selectors/auth.selectors';\r\nexport {\r\n selectPermissionById,\r\n selectAllPermissions,\r\n selectAllPermissionsIds,\r\n allPermissionsLoaded\r\n} from './_selectors/permission.selectors';\r\nexport {\r\n selectRoleById,\r\n selectAllRoles,\r\n selectAllRolesIds,\r\n allRolesLoaded,\r\n selectLastCreatedRoleId,\r\n selectRolesPageLoading,\r\n selectQueryResult,\r\n selectRolesActionLoading,\r\n selectRolesShowInitWaitingMessage\r\n} from './_selectors/role.selectors';\r\nexport {\r\n selectUserById,\r\n selectUsersPageLoading,\r\n selectLastCreatedUserId,\r\n selectUsersInStore,\r\n selectHasUsersInStore,\r\n selectUsersPageLastQuery,\r\n selectUsersActionLoading,\r\n selectUsersShowInitWaitingMessage\r\n} from './_selectors/user.selectors';\r\n\r\n// GUARDS\r\nexport { AuthGuard } from './_guards/auth.guard';\r\nexport { ModuleGuard } from './_guards/module.guard';\r\n\r\n// MODELS\r\nexport { User } from './_models/user.model';\r\nexport { Permission } from './_models/permission.model';\r\nexport { Role } from './_models/role.model';\r\nexport { Address } from './_models/address.model';\r\nexport { SocialNetworks } from './_models/social-networks.model';\r\nexport { AuthNotice } from './auth-notice/auth-notice.interface';\r\n\r\nexport { AuthDataContext } from './_server/auth.data-context';\r\n","// Anglar\r\nimport { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n// Layout Directives\r\n// Services\r\nimport {\r\n\tContentAnimateDirective,\r\n\tFirstLetterPipe,\r\n\tGetObjectPipe,\r\n\tHeaderDirective,\r\n\tJoinPipe,\r\n\tMenuDirective,\r\n\tOffcanvasDirective,\r\n\tSafePipe,\r\n\tScrollTopDirective,\r\n\tSparklineChartDirective,\r\n\tStickyDirective,\r\n\tTabClickEventDirective,\r\n\tTimeElapsedPipe,\r\n\tToggleDirective\r\n} from './_base/layout';\r\n\r\n@NgModule({\r\n\timports: [CommonModule],\r\n\tdeclarations: [\r\n\t\t// directives\r\n\t\tScrollTopDirective,\r\n\t\tHeaderDirective,\r\n\t\tOffcanvasDirective,\r\n\t\tToggleDirective,\r\n\t\tMenuDirective,\r\n\t\tTabClickEventDirective,\r\n\t\tSparklineChartDirective,\r\n\t\tContentAnimateDirective,\r\n\t\tStickyDirective,\r\n\t\t// pipes\r\n\t\tTimeElapsedPipe,\r\n\t\tJoinPipe,\r\n\t\tGetObjectPipe,\r\n\t\tSafePipe,\r\n\t\tFirstLetterPipe,\r\n\t],\r\n\texports: [\r\n\t\t// directives\r\n\t\tScrollTopDirective,\r\n\t\tHeaderDirective,\r\n\t\tOffcanvasDirective,\r\n\t\tToggleDirective,\r\n\t\tMenuDirective,\r\n\t\tTabClickEventDirective,\r\n\t\tSparklineChartDirective,\r\n\t\tContentAnimateDirective,\r\n\t\tStickyDirective,\r\n\t\t// pipes\r\n\t\tTimeElapsedPipe,\r\n\t\tJoinPipe,\r\n\t\tGetObjectPipe,\r\n\t\tSafePipe,\r\n\t\tFirstLetterPipe,\r\n\t],\r\n\tproviders: []\r\n})\r\nexport class CoreModule {\r\n}\r\n","// NGRX\r\nimport { Action } from '@ngrx/store';\r\nimport { Update } from '@ngrx/entity';\r\n// CRUD\r\nimport { QueryParamsModel } from '../../_base/crud';\r\n// Models\r\nimport { CustomerModel } from '../_models/customer.model';\r\n\r\nexport enum CustomerActionTypes {\r\n CustomerOnServerCreated = '[Edit Customer Dialog] Customer On Server Created',\r\n CustomerCreated = '[Edit Customer Dialog] Customer Created',\r\n CustomerUpdated = '[Edit Customer Dialog] Customer Updated',\r\n CustomersStatusUpdated = '[Customer List Page] Customers Status Updated',\r\n OneCustomerDeleted = '[Customers List Page] One Customer Deleted',\r\n ManyCustomersDeleted = '[Customers List Page] Many Customer Deleted',\r\n CustomersPageRequested = '[Customers List Page] Customers Page Requested',\r\n CustomersPageLoaded = '[Customers API] Customers Page Loaded',\r\n CustomersPageCancelled = '[Customers API] Customers Page Cancelled',\r\n CustomersPageToggleLoading = '[Customers] Customers Page Toggle Loading',\r\n CustomerActionToggleLoading = '[Customers] Customers Action Toggle Loading'\r\n}\r\n\r\nexport class CustomerOnServerCreated implements Action {\r\n readonly type = CustomerActionTypes.CustomerOnServerCreated;\r\n constructor(public payload: { customer: CustomerModel }) { }\r\n}\r\n\r\nexport class CustomerCreated implements Action {\r\n readonly type = CustomerActionTypes.CustomerCreated;\r\n constructor(public payload: { customer: CustomerModel }) { }\r\n}\r\n\r\nexport class CustomerUpdated implements Action {\r\n readonly type = CustomerActionTypes.CustomerUpdated;\r\n constructor(public payload: {\r\n partialCustomer: Update, // For State update\r\n customer: CustomerModel // For Server update (through service)\r\n }) { }\r\n}\r\n\r\nexport class CustomersStatusUpdated implements Action {\r\n readonly type = CustomerActionTypes.CustomersStatusUpdated;\r\n constructor(public payload: {\r\n customers: CustomerModel[],\r\n status: number\r\n }) { }\r\n}\r\n\r\nexport class OneCustomerDeleted implements Action {\r\n readonly type = CustomerActionTypes.OneCustomerDeleted;\r\n constructor(public payload: { id: number }) {}\r\n}\r\n\r\nexport class ManyCustomersDeleted implements Action {\r\n readonly type = CustomerActionTypes.ManyCustomersDeleted;\r\n constructor(public payload: { ids: number[] }) {}\r\n}\r\n\r\nexport class CustomersPageRequested implements Action {\r\n readonly type = CustomerActionTypes.CustomersPageRequested;\r\n constructor(public payload: { page: QueryParamsModel }) { }\r\n}\r\n\r\nexport class CustomersPageLoaded implements Action {\r\n readonly type = CustomerActionTypes.CustomersPageLoaded;\r\n constructor(public payload: { customers: CustomerModel[], totalCount: number, page: QueryParamsModel }) { }\r\n}\r\n\r\nexport class CustomersPageCancelled implements Action {\r\n readonly type = CustomerActionTypes.CustomersPageCancelled;\r\n}\r\n\r\nexport class CustomersPageToggleLoading implements Action {\r\n readonly type = CustomerActionTypes.CustomersPageToggleLoading;\r\n constructor(public payload: { isLoading: boolean }) { }\r\n}\r\n\r\nexport class CustomerActionToggleLoading implements Action {\r\n readonly type = CustomerActionTypes.CustomerActionToggleLoading;\r\n constructor(public payload: { isLoading: boolean }) { }\r\n}\r\n\r\nexport type CustomerActions = CustomerOnServerCreated\r\n| CustomerCreated\r\n| CustomerUpdated\r\n| CustomersStatusUpdated\r\n| OneCustomerDeleted\r\n| ManyCustomersDeleted\r\n| CustomersPageRequested\r\n| CustomersPageLoaded\r\n| CustomersPageCancelled\r\n| CustomersPageToggleLoading\r\n| CustomerActionToggleLoading;\r\n","// NGRX\r\nimport { Action } from '@ngrx/store';\r\nimport { Update } from '@ngrx/entity';\r\n// CRUD\r\nimport { QueryParamsModel } from '../../_base/crud';\r\n// Models\r\nimport { ProductRemarkModel } from '../_models/product-remark.model';\r\n\r\nexport enum ProductRemarkActionTypes {\r\n ProductRemarkOnServerCreated = '[Edit ProductRemark Dialog] ProductRemark On Server Created',\r\n ProductRemarkCreated = '[Edit ProductRemark Dialog] ProductRemark Created',\r\n ProductRemarkUpdated = '[Edit ProductRemark Dialog] ProductRemark Updated',\r\n ProductRemarkStoreUpdated = '[Edit ProductRemark Dialog] ProductRemark Updated | Only on storage',\r\n OneProductRemarkDeleted = '[Product Remarks List Page] One Product Remark Deleted',\r\n ManyProductRemarksDeleted = '[Product Remarks List Page] Many Product Remarks Deleted',\r\n ProductRemarksPageRequested = '[Product Remarks List Page] Product Remarks Page Requested',\r\n ProductRemarksPageLoaded = '[Product Remarks API] Product Remarks Page Loaded',\r\n ProductRemarksPageCancelled = '[Product Remarks API] Product Remarks Page Cancelled',\r\n ProductRemarksPageToggleLoading = '[Product Remarks] Product Remarks Page Toggle Loading'\r\n}\r\n\r\nexport class ProductRemarkOnServerCreated implements Action {\r\n readonly type = ProductRemarkActionTypes.ProductRemarkOnServerCreated;\r\n constructor(public payload: { productRemark: ProductRemarkModel }) { }\r\n}\r\n\r\nexport class ProductRemarkCreated implements Action {\r\n readonly type = ProductRemarkActionTypes.ProductRemarkCreated;\r\n constructor(public payload: { productRemark: ProductRemarkModel }) { }\r\n}\r\n\r\nexport class ProductRemarkUpdated implements Action {\r\n readonly type = ProductRemarkActionTypes.ProductRemarkUpdated;\r\n constructor(public payload: {\r\n partialProductRemark: Update, // For State update\r\n productRemark: ProductRemarkModel // For Server update (through service)\r\n }) { }\r\n}\r\n\r\nexport class ProductRemarkStoreUpdated implements Action {\r\n readonly type = ProductRemarkActionTypes.ProductRemarkStoreUpdated;\r\n constructor(public payload: {\r\n productRemark: Update, // For State update\r\n }) { }\r\n}\r\n\r\nexport class OneProductRemarkDeleted implements Action {\r\n readonly type = ProductRemarkActionTypes.OneProductRemarkDeleted;\r\n constructor(public payload: { id: number }) {}\r\n}\r\n\r\nexport class ManyProductRemarksDeleted implements Action {\r\n readonly type = ProductRemarkActionTypes.ManyProductRemarksDeleted;\r\n constructor(public payload: { ids: number[] }) {}\r\n}\r\n\r\nexport class ProductRemarksPageRequested implements Action {\r\n readonly type = ProductRemarkActionTypes.ProductRemarksPageRequested;\r\n constructor(public payload: { page: QueryParamsModel, productId: number }) { }\r\n}\r\n\r\nexport class ProductRemarksPageLoaded implements Action {\r\n readonly type = ProductRemarkActionTypes.ProductRemarksPageLoaded;\r\n constructor(public payload: { productRemarks: ProductRemarkModel[], totalCount: number }) { }\r\n}\r\n\r\nexport class ProductRemarksPageCancelled implements Action {\r\n readonly type = ProductRemarkActionTypes.ProductRemarksPageCancelled;\r\n}\r\n\r\nexport class ProductRemarksPageToggleLoading implements Action {\r\n readonly type = ProductRemarkActionTypes.ProductRemarksPageToggleLoading;\r\n constructor(public payload: { isLoading: boolean }) { }\r\n}\r\n\r\nexport type ProductRemarkActions = ProductRemarkOnServerCreated\r\n| ProductRemarkStoreUpdated\r\n| ProductRemarkCreated\r\n| ProductRemarkUpdated\r\n| OneProductRemarkDeleted\r\n| ManyProductRemarksDeleted\r\n| ProductRemarksPageRequested\r\n| ProductRemarksPageLoaded\r\n| ProductRemarksPageCancelled\r\n| ProductRemarksPageToggleLoading;\r\n","// NGRX\r\nimport { Action } from '@ngrx/store';\r\nimport { Update } from '@ngrx/entity';\r\n// CRUD\r\nimport { QueryParamsModel } from '../../_base/crud';\r\n// Models\r\nimport { ProductSpecificationModel } from '../_models/product-specification.model';\r\n\r\nexport enum ProductSpecificationActionTypes {\r\n ProductSpecificationOnServerCreated = '[Edit ProductSpecification Dialog] Product Specification On Server Created',\r\n ProductSpecificationCreated = '[Edit ProductSpecification Dialog] Product Specification Created',\r\n ProductSpecificationUpdated = '[Edit SpecificationSpecification Dialog] Product Specification Updated',\r\n OneProductSpecificationDeleted = '[Product Specification List Page] One Product Specification Deleted',\r\n ManyProductSpecificationsDeleted = '[Product Specifications List Page] Many Product Specifications Deleted',\r\n ProductSpecificationsPageRequested = '[Product Specifications List Page] Product Specifications Page Requested',\r\n ProductSpecificationsPageLoaded = '[Product Specifications API] Product Specifications Page Loaded',\r\n ProductSpecificationsPageCancelled = '[Product Specifications API] Product Specifications Page Cancelled',\r\n ProductSpecificationsPageToggleLoading = '[Product Specifications] Product Specifications Page Toggle Loading'\r\n}\r\n\r\nexport class ProductSpecificationOnServerCreated implements Action {\r\n readonly type = ProductSpecificationActionTypes.ProductSpecificationOnServerCreated;\r\n constructor(public payload: { productSpecification: ProductSpecificationModel }) { }\r\n}\r\n\r\nexport class ProductSpecificationCreated implements Action {\r\n readonly type = ProductSpecificationActionTypes.ProductSpecificationCreated;\r\n constructor(public payload: { productSpecification: ProductSpecificationModel }) { }\r\n}\r\n\r\nexport class ProductSpecificationUpdated implements Action {\r\n readonly type = ProductSpecificationActionTypes.ProductSpecificationUpdated;\r\n constructor(public payload: {\r\n partialProductSpecification: Update, // For State update\r\n productSpecification: ProductSpecificationModel // For Server update (through service)\r\n }) { }\r\n}\r\n\r\nexport class OneProductSpecificationDeleted implements Action {\r\n readonly type = ProductSpecificationActionTypes.OneProductSpecificationDeleted;\r\n constructor(public payload: { id: number }) {}\r\n}\r\n\r\nexport class ManyProductSpecificationsDeleted implements Action {\r\n readonly type = ProductSpecificationActionTypes.ManyProductSpecificationsDeleted;\r\n constructor(public payload: { ids: number[] }) {}\r\n}\r\n\r\nexport class ProductSpecificationsPageRequested implements Action {\r\n readonly type = ProductSpecificationActionTypes.ProductSpecificationsPageRequested;\r\n constructor(public payload: { page: QueryParamsModel, productId: number }) { }\r\n}\r\n\r\nexport class ProductSpecificationsPageLoaded implements Action {\r\n readonly type = ProductSpecificationActionTypes.ProductSpecificationsPageLoaded;\r\n constructor(public payload: { productSpecifications: ProductSpecificationModel[], totalCount: number }) { }\r\n}\r\n\r\nexport class ProductSpecificationsPageCancelled implements Action {\r\n readonly type = ProductSpecificationActionTypes.ProductSpecificationsPageCancelled;\r\n}\r\n\r\nexport class ProductSpecificationsPageToggleLoading implements Action {\r\n readonly type = ProductSpecificationActionTypes.ProductSpecificationsPageToggleLoading;\r\n constructor(public payload: { isLoading: boolean }) { }\r\n}\r\n\r\nexport type ProductSpecificationActions = ProductSpecificationOnServerCreated\r\n| ProductSpecificationCreated\r\n| ProductSpecificationUpdated\r\n| OneProductSpecificationDeleted\r\n| ManyProductSpecificationsDeleted\r\n| ProductSpecificationsPageRequested\r\n| ProductSpecificationsPageLoaded\r\n| ProductSpecificationsPageCancelled\r\n| ProductSpecificationsPageToggleLoading;\r\n","// NGRX\r\nimport { Action } from '@ngrx/store';\r\n// CRUD\r\nimport { QueryParamsModel } from '../../_base/crud';\r\n// Models\r\nimport { ProductModel } from '../_models/product.model';\r\nimport { Update } from '@ngrx/entity';\r\n\r\nexport enum ProductActionTypes {\r\n ProductOnServerCreated = '[Edit Product Component] Product On Server Created',\r\n ProductCreated = '[Edit Product Component] Product Created',\r\n ProductUpdated = '[Edit Product Component] Product Updated',\r\n ProductsStatusUpdated = '[Products List Page] Products Status Updated',\r\n OneProductDeleted = '[Products List Page] One Product Deleted',\r\n ManyProductsDeleted = '[Products List Page] Many Selected Products Deleted',\r\n ProductsPageRequested = '[Products List Page] Products Page Requested',\r\n ProductsPageLoaded = '[Products API] Products Page Loaded',\r\n ProductsPageCancelled = '[Products API] Products Page Cancelled',\r\n ProductsPageToggleLoading = '[Products] Products Page Toggle Loading',\r\n ProductsActionToggleLoading = '[Products] Products Action Toggle Loading'\r\n}\r\n\r\nexport class ProductOnServerCreated implements Action {\r\n readonly type = ProductActionTypes.ProductOnServerCreated;\r\n constructor(public payload: { product: ProductModel }) { }\r\n}\r\n\r\nexport class ProductCreated implements Action {\r\n readonly type = ProductActionTypes.ProductCreated;\r\n constructor(public payload: { product: ProductModel }) { }\r\n}\r\n\r\nexport class ProductUpdated implements Action {\r\n readonly type = ProductActionTypes.ProductUpdated;\r\n constructor(public payload: {\r\n partialProduct: Update, // For State update\r\n product: ProductModel // For Server update (through service)\r\n }) { }\r\n}\r\n\r\nexport class ProductsStatusUpdated implements Action {\r\n readonly type = ProductActionTypes.ProductsStatusUpdated;\r\n constructor(public payload: {\r\n products: ProductModel[],\r\n status: number\r\n }) { }\r\n}\r\n\r\nexport class OneProductDeleted implements Action {\r\n readonly type = ProductActionTypes.OneProductDeleted;\r\n constructor(public payload: { id: number }) {}\r\n}\r\n\r\nexport class ManyProductsDeleted implements Action {\r\n readonly type = ProductActionTypes.ManyProductsDeleted;\r\n constructor(public payload: { ids: number[] }) {}\r\n}\r\n\r\nexport class ProductsPageRequested implements Action {\r\n readonly type = ProductActionTypes.ProductsPageRequested;\r\n constructor(public payload: { page: QueryParamsModel }) { }\r\n}\r\n\r\nexport class ProductsPageLoaded implements Action {\r\n readonly type = ProductActionTypes.ProductsPageLoaded;\r\n constructor(public payload: { products: ProductModel[], totalCount: number, page: QueryParamsModel }) { }\r\n}\r\n\r\nexport class ProductsPageCancelled implements Action {\r\n readonly type = ProductActionTypes.ProductsPageCancelled;\r\n}\r\n\r\nexport class ProductsPageToggleLoading implements Action {\r\n readonly type = ProductActionTypes.ProductsPageToggleLoading;\r\n constructor(public payload: { isLoading: boolean }) { }\r\n}\r\n\r\nexport class ProductsActionToggleLoading implements Action {\r\n readonly type = ProductActionTypes.ProductsActionToggleLoading;\r\n constructor(public payload: { isLoading: boolean }) { }\r\n}\r\n\r\nexport type ProductActions = ProductOnServerCreated\r\n| ProductCreated\r\n| ProductUpdated\r\n| ProductsStatusUpdated\r\n| OneProductDeleted\r\n| ManyProductsDeleted\r\n| ProductsPageRequested\r\n| ProductsPageLoaded\r\n| ProductsPageCancelled\r\n| ProductsPageToggleLoading\r\n| ProductsActionToggleLoading;\r\n","export const SPECIFICATIONS_DICTIONARY: string[] = [\r\n 'Seats',\r\n 'Fuel Type',\r\n 'Stock',\r\n 'Door count',\r\n 'Engine',\r\n 'Transmission',\r\n 'Drivetrain',\r\n 'Combined MPG',\r\n 'Warranty',\r\n 'Wheels'\r\n];\r\n","import { mergeMap, tap } from 'rxjs/operators';\r\n// RxJS\r\nimport { delay, distinctUntilChanged, skip, filter, take, map } from 'rxjs/operators';\r\n// NGRX\r\nimport { Store, select } from '@ngrx/store';\r\n// CRUD\r\nimport { BaseDataSource, QueryResultsModel } from '../../_base/crud';\r\n// State\r\nimport { AppState } from '../../reducers';\r\nimport { selectCustomersInStore, selectCustomersPageLoading, selectCustomersShowInitWaitingMessage } from '../_selectors/customer.selectors';\r\n\r\nexport class CustomersDataSource extends BaseDataSource {\r\n\tconstructor(private store: Store) {\r\n\t\tsuper();\r\n\r\n\t\tthis.loading$ = this.store.pipe(\r\n\t\t\tselect(selectCustomersPageLoading),\r\n\t\t);\r\n\r\n\t\tthis.isPreloadTextViewed$ = this.store.pipe(\r\n\t\t\tselect(selectCustomersShowInitWaitingMessage)\r\n\t\t);\r\n\r\n\t\tthis.store.pipe(\r\n\t\t\tselect(selectCustomersInStore),\r\n\t\t).subscribe((response: QueryResultsModel) => {\r\n\t\t\tthis.paginatorTotalSubject.next(response.totalCount);\r\n\t\t\tthis.entitySubject.next(response.items);\r\n\t\t});\r\n\t}\r\n}\r\n","// RxJS\r\nimport { debounceTime } from 'rxjs/operators';\r\n// NGRX\r\nimport { Store, select } from '@ngrx/store';\r\n// CRUD\r\nimport { BaseDataSource, QueryResultsModel } from '../../_base/crud';\r\n// State\r\nimport { AppState } from '../../reducers';\r\nimport { selectProductRemarksInStore, selectProductRemarksPageLoading, selectPRShowInitWaitingMessage } from '../_selectors/product-remark.selectors';\r\nexport class ProductRemarksDataSource extends BaseDataSource {\r\n\tconstructor(private store: Store) {\r\n\t\tsuper();\r\n\r\n\t\tthis.store.pipe(\r\n\t\t\tselect(selectProductRemarksInStore),\r\n\t\t\tdebounceTime(600)\r\n\t\t).subscribe((response: QueryResultsModel) => {\r\n\t\t\tthis.entitySubject.next(response.items);\r\n\t\t\tthis.paginatorTotalSubject.next(response.totalCount);\r\n\t\t});\r\n\r\n\t\tthis.isPreloadTextViewed$ = this.store.pipe(\r\n\t\t\tselect(selectPRShowInitWaitingMessage)\r\n\t\t);\r\n\r\n\t\tthis.loading$ = this.store.pipe(select(selectProductRemarksPageLoading));\r\n\t}\r\n}\r\n","// RxJS\r\nimport { debounceTime } from 'rxjs/operators';\r\n// NGRX\r\nimport { Store, select } from '@ngrx/store';\r\n// CRUD\r\nimport { BaseDataSource, QueryResultsModel } from '../../_base/crud';\r\n// State\r\nimport { AppState } from '../../reducers';\r\nimport { selectProductSpecificationsInStore, selectProductSpecificationsPageLoading, selectPSShowInitWaitingMessage } from '../_selectors/product-specification.selectors';\r\nexport class ProductSpecificationsDataSource extends BaseDataSource {\r\n\tconstructor(private store: Store) {\r\n\t\tsuper();\r\n\r\n\t\tthis.store.pipe(\r\n\t\t\tselect(selectProductSpecificationsInStore),\r\n\t\t\tdebounceTime(600)\r\n\t\t).subscribe((response: QueryResultsModel) => {\r\n\t\t\tthis.entitySubject.next(response.items);\r\n\t\t\tthis.paginatorTotalSubject.next(response.totalCount);\r\n\t\t});\r\n\r\n\t\tthis.isPreloadTextViewed$ = this.store.pipe(\r\n\t\t\tselect(selectPSShowInitWaitingMessage)\r\n\t\t);\r\n\r\n\t\tthis.loading$ = this.store.pipe(select(selectProductSpecificationsPageLoading));\r\n\t}\r\n}\r\n","import { selectProductsInitWaitingMessage } from './../_selectors/product.selectors';\r\n// RxJS\r\nimport { delay, distinctUntilChanged } from 'rxjs/operators';\r\n// CRUD\r\nimport { QueryResultsModel, BaseDataSource } from '../../_base/crud';\r\n// State\r\nimport { Store, select } from '@ngrx/store';\r\nimport { AppState } from '../../reducers';\r\n// Selectors\r\nimport { selectProductsInStore, selectProductsPageLoading } from '../_selectors/product.selectors';\r\n\r\nexport class ProductsDataSource extends BaseDataSource {\r\n\tconstructor(private store: Store) {\r\n\t\tsuper();\r\n\t\tthis.loading$ = this.store.pipe(\r\n\t\t\tselect(selectProductsPageLoading)\r\n\t\t);\r\n\r\n\t\tthis.isPreloadTextViewed$ = this.store.pipe(\r\n\t\t\tselect(selectProductsInitWaitingMessage)\r\n\t\t);\r\n\r\n\t\tthis.store.pipe(\r\n\t\t\tselect(selectProductsInStore)\r\n\t\t).subscribe((response: QueryResultsModel) => {\r\n\t\t\tthis.paginatorTotalSubject.next(response.totalCount);\r\n\t\t\tthis.entitySubject.next(response.items);\r\n\t\t});\r\n\t}\r\n}\r\n","import { QueryParamsModel } from './../../_base/crud/models/query-models/query-params.model';\r\nimport { forkJoin } from 'rxjs';\r\n// Angular\r\nimport { Injectable } from '@angular/core';\r\n// RxJS\r\nimport { mergeMap, map, tap, delay } from 'rxjs/operators';\r\n// NGRX\r\nimport { Effect, Actions, ofType } from '@ngrx/effects';\r\nimport { Store } from '@ngrx/store';\r\n// CRUD\r\nimport { QueryResultsModel } from '../../_base/crud';\r\n// Services\r\nimport { CustomersService } from '../_services/';\r\n// State\r\nimport { AppState } from '../../../core/reducers';\r\n// Actions\r\nimport {\r\n CustomerActionTypes,\r\n CustomersPageRequested,\r\n CustomersPageLoaded,\r\n ManyCustomersDeleted,\r\n OneCustomerDeleted,\r\n CustomerActionToggleLoading,\r\n CustomersPageToggleLoading,\r\n CustomerUpdated,\r\n CustomersStatusUpdated,\r\n CustomerCreated,\r\n CustomerOnServerCreated\r\n} from '../_actions/customer.actions';\r\nimport { of } from 'rxjs';\r\n\r\n@Injectable()\r\nexport class CustomerEffects {\r\n showPageLoadingDistpatcher = new CustomersPageToggleLoading({ isLoading: true });\r\n showActionLoadingDistpatcher = new CustomerActionToggleLoading({ isLoading: true });\r\n hideActionLoadingDistpatcher = new CustomerActionToggleLoading({ isLoading: false });\r\n\r\n @Effect()\r\n loadCustomersPage$ = this.actions$.pipe(\r\n ofType(CustomerActionTypes.CustomersPageRequested),\r\n mergeMap(( { payload } ) => {\r\n this.store.dispatch(this.showPageLoadingDistpatcher);\r\n const requestToServer = this.customersService.findCustomers(payload.page);\r\n const lastQuery = of(payload.page);\r\n return forkJoin(requestToServer, lastQuery);\r\n }),\r\n map(response => {\r\n const result: QueryResultsModel = response[0];\r\n const lastQuery: QueryParamsModel = response[1];\r\n const pageLoadedDispatch = new CustomersPageLoaded({\r\n customers: result.items,\r\n totalCount: result.totalCount,\r\n page: lastQuery\r\n });\r\n return pageLoadedDispatch;\r\n })\r\n );\r\n\r\n @Effect()\r\n deleteCustomer$ = this.actions$\r\n .pipe(\r\n ofType(CustomerActionTypes.OneCustomerDeleted),\r\n mergeMap(( { payload } ) => {\r\n this.store.dispatch(this.showActionLoadingDistpatcher);\r\n return this.customersService.deleteCustomer(payload.id);\r\n }\r\n ),\r\n map(() => {\r\n return this.hideActionLoadingDistpatcher;\r\n }),\r\n );\r\n\r\n @Effect()\r\n deleteCustomers$ = this.actions$\r\n .pipe(\r\n ofType(CustomerActionTypes.ManyCustomersDeleted),\r\n mergeMap(( { payload } ) => {\r\n this.store.dispatch(this.showActionLoadingDistpatcher);\r\n return this.customersService.deleteCustomers(payload.ids);\r\n }\r\n ),\r\n map(() => {\r\n return this.hideActionLoadingDistpatcher;\r\n }),\r\n );\r\n\r\n @Effect()\r\n updateCustomer$ = this.actions$\r\n .pipe(\r\n ofType(CustomerActionTypes.CustomerUpdated),\r\n mergeMap(( { payload } ) => {\r\n this.store.dispatch(this.showActionLoadingDistpatcher);\r\n return this.customersService.updateCustomer(payload.customer);\r\n }),\r\n map(() => {\r\n return this.hideActionLoadingDistpatcher;\r\n })\r\n );\r\n\r\n @Effect()\r\n updateCustomersStatus$ = this.actions$\r\n .pipe(\r\n ofType(CustomerActionTypes.CustomersStatusUpdated),\r\n mergeMap(( { payload } ) => {\r\n this.store.dispatch(this.showActionLoadingDistpatcher);\r\n return this.customersService.updateStatusForCustomer(payload.customers, payload.status);\r\n }),\r\n map(() => {\r\n return this.hideActionLoadingDistpatcher;\r\n })\r\n );\r\n\r\n @Effect()\r\n createCustomer$ = this.actions$\r\n .pipe(\r\n ofType(CustomerActionTypes.CustomerOnServerCreated),\r\n mergeMap(( { payload } ) => {\r\n this.store.dispatch(this.showActionLoadingDistpatcher);\r\n return this.customersService.createCustomer(payload.customer).pipe(\r\n tap(res => {\r\n this.store.dispatch(new CustomerCreated({ customer: res }));\r\n })\r\n );\r\n }),\r\n map(() => {\r\n return this.hideActionLoadingDistpatcher;\r\n }),\r\n );\r\n\r\n constructor(private actions$: Actions, private customersService: CustomersService, private store: Store) { }\r\n}\r\n","// Angular\r\nimport { Injectable } from '@angular/core';\r\n// RxJS\r\nimport { of } from 'rxjs';\r\nimport { mergeMap, map, catchError, tap } from 'rxjs/operators';\r\n// NGRX\r\nimport { Effect, Actions, ofType } from '@ngrx/effects';\r\nimport { Store } from '@ngrx/store';\r\n// CRUD\r\nimport { QueryResultsModel } from '../../_base/crud';\r\n// Services\r\nimport { ProductRemarksService } from '../_services/';\r\n// State\r\nimport { AppState } from '../../../core/reducers';\r\n// Actions\r\nimport {\r\n ProductRemarkActionTypes,\r\n ProductRemarksPageRequested,\r\n ProductRemarksPageLoaded,\r\n ManyProductRemarksDeleted,\r\n OneProductRemarkDeleted,\r\n ProductRemarksPageToggleLoading,\r\n ProductRemarkUpdated,\r\n ProductRemarkCreated,\r\n ProductRemarkOnServerCreated\r\n} from '../_actions/product-remark.actions';\r\n\r\n@Injectable()\r\nexport class ProductRemarkEffects {\r\n // showLoadingDistpatcher = new ProcutRemarksPageToggleLoading({ isLoading: true });\r\n hideLoadingDistpatcher = new ProductRemarksPageToggleLoading({ isLoading: false });\r\n\r\n @Effect()\r\n loadProductRemarksPage$ = this.actions$\r\n .pipe(\r\n ofType(ProductRemarkActionTypes.ProductRemarksPageRequested),\r\n mergeMap(( { payload } ) => {\r\n return this.productRemarksService.findProductRemarks(payload.page, payload.productId);\r\n }),\r\n map((result: QueryResultsModel) => {\r\n return new ProductRemarksPageLoaded({\r\n productRemarks: result.items,\r\n totalCount: result.totalCount\r\n });\r\n }),\r\n );\r\n\r\n @Effect()\r\n deleteProductRemark$ = this.actions$\r\n .pipe(\r\n ofType(ProductRemarkActionTypes.OneProductRemarkDeleted),\r\n mergeMap(( { payload } ) => {\r\n this.store.dispatch(new ProductRemarksPageToggleLoading({ isLoading: true }));\r\n return this.productRemarksService.deleteProductRemark(payload.id);\r\n }\r\n ),\r\n map(() => {\r\n return this.hideLoadingDistpatcher;\r\n }),\r\n );\r\n\r\n @Effect()\r\n deleteProductRemarks$ = this.actions$\r\n .pipe(\r\n ofType(ProductRemarkActionTypes.ManyProductRemarksDeleted),\r\n mergeMap(( { payload } ) => {\r\n this.store.dispatch(new ProductRemarksPageToggleLoading({ isLoading: true }));\r\n return this.productRemarksService.deleteProductRemarks(payload.ids);\r\n }\r\n ),\r\n map(() => {\r\n return this.hideLoadingDistpatcher;\r\n }),\r\n );\r\n\r\n @Effect()\r\n updateProductRemark$ = this.actions$\r\n .pipe(\r\n ofType(ProductRemarkActionTypes.ProductRemarkUpdated),\r\n mergeMap(( { payload } ) => {\r\n this.store.dispatch(new ProductRemarksPageToggleLoading({ isLoading: true }));\r\n return this.productRemarksService.updateProductRemark(payload.productRemark);\r\n }),\r\n map(() => {\r\n return this.hideLoadingDistpatcher;\r\n }),\r\n );\r\n\r\n @Effect()\r\n createProductRemark$ = this.actions$\r\n .pipe(\r\n ofType(ProductRemarkActionTypes.ProductRemarkOnServerCreated),\r\n mergeMap(( { payload } ) => {\r\n this.store.dispatch(new ProductRemarksPageToggleLoading({ isLoading: true }));\r\n return this.productRemarksService.createProductRemark(payload.productRemark).pipe(\r\n tap(res => {\r\n this.store.dispatch(new ProductRemarkCreated({ productRemark: res }));\r\n })\r\n );\r\n }),\r\n map(() => {\r\n return this.hideLoadingDistpatcher;\r\n }),\r\n );\r\n\r\n constructor(private actions$: Actions, private productRemarksService: ProductRemarksService, private store: Store) { }\r\n}\r\n","// Angular\r\nimport { Injectable } from '@angular/core';\r\n// RxJS\r\nimport { of } from 'rxjs';\r\nimport { mergeMap, map, catchError, tap } from 'rxjs/operators';\r\n// NGRX\r\nimport { Effect, Actions, ofType } from '@ngrx/effects';\r\nimport { Store } from '@ngrx/store';\r\n// CRUD\r\nimport { QueryResultsModel } from '../../_base/crud';\r\n// Services\r\nimport { ProductSpecificationsService } from '../_services/';\r\n// State\r\nimport { AppState } from '../../../core/reducers';\r\n// Actions\r\nimport {\r\n ProductSpecificationActionTypes,\r\n ProductSpecificationsPageRequested,\r\n ProductSpecificationsPageLoaded,\r\n ManyProductSpecificationsDeleted,\r\n OneProductSpecificationDeleted,\r\n ProductSpecificationsPageToggleLoading,\r\n ProductSpecificationUpdated,\r\n ProductSpecificationCreated,\r\n ProductSpecificationOnServerCreated\r\n} from '../_actions/product-specification.actions';\r\n\r\n@Injectable()\r\nexport class ProductSpecificationEffects {\r\n // showLoadingDistpatcher = new ProcutSpecificationsPageToggleLoading({ isLoading: true });\r\n hideLoadingDistpatcher = new ProductSpecificationsPageToggleLoading({ isLoading: false });\r\n\r\n @Effect()\r\n loadProductSpecificationsPage$ = this.actions$\r\n .pipe(\r\n ofType(ProductSpecificationActionTypes.ProductSpecificationsPageRequested),\r\n mergeMap(( { payload } ) => this.productSpecificationsService.findProductSpecs(payload.page, payload.productId)),\r\n map((result: QueryResultsModel) => {\r\n return new ProductSpecificationsPageLoaded({\r\n productSpecifications: result.items,\r\n totalCount: result.totalCount\r\n });\r\n }),\r\n );\r\n\r\n @Effect()\r\n deleteProductSpecification$ = this.actions$\r\n .pipe(\r\n ofType(ProductSpecificationActionTypes.OneProductSpecificationDeleted),\r\n mergeMap(( { payload } ) => {\r\n this.store.dispatch(new ProductSpecificationsPageToggleLoading({ isLoading: true }));\r\n return this.productSpecificationsService.deleteProductSpec(payload.id);\r\n }\r\n ),\r\n map(() => {\r\n return this.hideLoadingDistpatcher;\r\n }),\r\n );\r\n\r\n @Effect()\r\n deleteProductSpecifications$ = this.actions$\r\n .pipe(\r\n ofType(ProductSpecificationActionTypes.ManyProductSpecificationsDeleted),\r\n mergeMap(( { payload } ) => {\r\n this.store.dispatch(new ProductSpecificationsPageToggleLoading({ isLoading: true }));\r\n return this.productSpecificationsService.deleteProductSpecifications(payload.ids);\r\n }\r\n ),\r\n map(() => {\r\n return this.hideLoadingDistpatcher;\r\n }),\r\n );\r\n\r\n @Effect()\r\n updateProductSpecification$ = this.actions$\r\n .pipe(\r\n ofType(ProductSpecificationActionTypes.ProductSpecificationUpdated),\r\n mergeMap(( { payload } ) => {\r\n this.store.dispatch(new ProductSpecificationsPageToggleLoading({ isLoading: true }));\r\n return this.productSpecificationsService.updateProductSpec(payload.productSpecification);\r\n }),\r\n map(() => {\r\n return this.hideLoadingDistpatcher;\r\n }),\r\n );\r\n\r\n @Effect()\r\n createProductSpecification$ = this.actions$\r\n .pipe(\r\n ofType(ProductSpecificationActionTypes.ProductSpecificationOnServerCreated),\r\n mergeMap(( { payload } ) => {\r\n this.store.dispatch(new ProductSpecificationsPageToggleLoading({ isLoading: true }));\r\n return this.productSpecificationsService.createProductSpec(payload.productSpecification).pipe(\r\n tap(res => {\r\n this.store.dispatch(new ProductSpecificationCreated({ productSpecification: res }));\r\n })\r\n );\r\n }),\r\n map(() => {\r\n return this.hideLoadingDistpatcher;\r\n }),\r\n );\r\n\r\n constructor(private actions$: Actions, private productSpecificationsService: ProductSpecificationsService, private store: Store) { }\r\n}\r\n","import { forkJoin } from 'rxjs';\r\n// Angular\r\nimport { Injectable } from '@angular/core';\r\n// RxJS\r\nimport { mergeMap, map, tap } from 'rxjs/operators';\r\n// NGRX\r\nimport { Effect, Actions, ofType } from '@ngrx/effects';\r\nimport { Store, Action } from '@ngrx/store';\r\n// CRUD\r\nimport { QueryResultsModel, QueryParamsModel } from '../../_base/crud';\r\n// Services\r\nimport { ProductsService } from '../_services/';\r\n// State\r\nimport { AppState } from '../../../core/reducers';\r\n// Actions\r\nimport {\r\n ProductActionTypes,\r\n ProductsPageRequested,\r\n ProductsPageLoaded,\r\n ManyProductsDeleted,\r\n OneProductDeleted,\r\n ProductsPageToggleLoading,\r\n ProductsStatusUpdated,\r\n ProductUpdated,\r\n ProductCreated,\r\n ProductOnServerCreated\r\n} from '../_actions/product.actions';\r\nimport { defer, Observable, of } from 'rxjs';\r\n\r\n@Injectable()\r\nexport class ProductEffects {\r\n showPageLoadingDistpatcher = new ProductsPageToggleLoading({ isLoading: true });\r\n showLoadingDistpatcher = new ProductsPageToggleLoading({ isLoading: true });\r\n hideActionLoadingDistpatcher = new ProductsPageToggleLoading({ isLoading: false });\r\n\r\n @Effect()\r\n loadProductsPage$ = this.actions$\r\n .pipe(\r\n ofType(ProductActionTypes.ProductsPageRequested),\r\n mergeMap(( { payload } ) => {\r\n this.store.dispatch(this.showPageLoadingDistpatcher);\r\n const requestToServer = this.productsService.findProducts(payload.page);\r\n const lastQuery = of(payload.page);\r\n return forkJoin(requestToServer, lastQuery);\r\n }),\r\n map(response => {\r\n const result: QueryResultsModel = response[0];\r\n const lastQuery: QueryParamsModel = response[1];\r\n return new ProductsPageLoaded({\r\n products: result.items,\r\n totalCount: result.totalCount,\r\n page: lastQuery\r\n });\r\n }),\r\n );\r\n\r\n @Effect()\r\n deleteProduct$ = this.actions$\r\n .pipe(\r\n ofType(ProductActionTypes.OneProductDeleted),\r\n mergeMap(( { payload } ) => {\r\n this.store.dispatch(this.showLoadingDistpatcher);\r\n return this.productsService.deleteProduct(payload.id);\r\n }\r\n ),\r\n map(() => {\r\n return this.hideActionLoadingDistpatcher;\r\n }),\r\n );\r\n\r\n @Effect()\r\n deleteProducts$ = this.actions$\r\n .pipe(\r\n ofType(ProductActionTypes.ManyProductsDeleted),\r\n mergeMap(( { payload } ) => {\r\n this.store.dispatch(this.showLoadingDistpatcher);\r\n return this.productsService.deleteProducts(payload.ids);\r\n }\r\n ),\r\n map(() => {\r\n return this.hideActionLoadingDistpatcher;\r\n }),\r\n );\r\n\r\n @Effect()\r\n updateProductsStatus$ = this.actions$\r\n .pipe(\r\n ofType(ProductActionTypes.ProductsStatusUpdated),\r\n mergeMap(( { payload } ) => {\r\n this.store.dispatch(this.showLoadingDistpatcher);\r\n return this.productsService.updateStatusForProduct(payload.products, payload.status);\r\n }),\r\n map(() => {\r\n return this.hideActionLoadingDistpatcher;\r\n }),\r\n );\r\n\r\n @Effect()\r\n updateProduct$ = this.actions$\r\n .pipe(\r\n ofType(ProductActionTypes.ProductUpdated),\r\n mergeMap(( { payload } ) => {\r\n this.store.dispatch(this.showLoadingDistpatcher);\r\n return this.productsService.updateProduct(payload.product);\r\n }),\r\n map(() => {\r\n return this.hideActionLoadingDistpatcher;\r\n }),\r\n );\r\n\r\n @Effect()\r\n createProduct$ = this.actions$\r\n .pipe(\r\n ofType(ProductActionTypes.ProductOnServerCreated),\r\n mergeMap(( { payload } ) => {\r\n this.store.dispatch(this.showLoadingDistpatcher);\r\n return this.productsService.createProduct(payload.product).pipe(\r\n tap(res => {\r\n this.store.dispatch(new ProductCreated({ product: res }));\r\n })\r\n );\r\n }),\r\n map(() => {\r\n return this.hideActionLoadingDistpatcher;\r\n }),\r\n );\r\n\r\n // @Effect()\r\n // init$: Observable = defer(() => {\r\n // const queryParams = new QueryParamsModel({});\r\n // return of(new ProductsPageRequested({ page: queryParams }));\r\n // });\r\n\r\n constructor(private actions$: Actions, private productsService: ProductsService, private store: Store) { }\r\n}\r\n","import { BaseModel } from '../../_base/crud';\r\n\r\nexport class CustomerModel extends BaseModel {\r\n\tid: number;\r\n\tfirstName: string;\r\n\tlastName: string;\r\n\temail: string;\r\n\tuserName: string;\r\n\tgender: string;\r\n\tstatus: number; // 0 = Active | 1 = Suspended | Pending = 2\r\n\tdateOfBbirth: string;\r\n\tdob: Date;\r\n\tipAddress: string;\r\n\ttype: number; // 0 = Business | 1 = Individual\r\n\r\n\tclear() {\r\n\t\tthis.dob = new Date();\r\n\t\tthis.firstName = '';\r\n\t\tthis.lastName = '';\r\n\t\tthis.email = '';\r\n\t\tthis.userName = '';\r\n\t\tthis.gender = 'Female';\r\n\t\tthis.ipAddress = '';\r\n\t\tthis.type = 1;\r\n\t\tthis.status = 1;\r\n\t}\r\n}\r\n","import { BaseModel } from '../../_base/crud';\r\n\r\nexport class ProductRemarkModel extends BaseModel {\r\n\tid: number;\r\n\tcarId: number;\r\n\ttext: string;\r\n\ttype: number; // Info, Note, Reminder\r\n\tdueDate: string;\r\n\t_isEditMode: boolean;\r\n\r\n\t// Refs\r\n\t_carName: string;\r\n\r\n\tclear(carId: number) {\r\n\t\tthis.id = undefined;\r\n\t\tthis.carId = carId;\r\n\t\tthis.text = '';\r\n\t\tthis.type = 0;\r\n\t\tthis.dueDate = '';\r\n\t\tthis._isEditMode = false;\r\n\t}\r\n}\r\n","import { BaseModel } from '../../_base/crud';\r\n\r\nexport class ProductSpecificationModel extends BaseModel {\r\n\tid: number;\r\n\tcarId: number;\r\n\tspecId: number;\r\n\tvalue: string;\r\n\r\n\t// Refs\r\n\t_carName: string;\r\n\t_specificationName: string;\r\n\r\n\tclear(carId: number) {\r\n\t\tthis.id = undefined;\r\n\t\tthis.carId = carId;\r\n\t\tthis._specificationName = '';\r\n\t\tthis.value = '';\r\n\t\tthis.specId = undefined;\r\n\t}\r\n}\r\n","import { BaseModel } from '../../_base/crud';\r\nimport { ProductSpecificationModel } from './product-specification.model';\r\nimport { ProductRemarkModel } from './product-remark.model';\r\n\r\nexport class ProductModel extends BaseModel {\r\n\tid: number;\r\n\tmodel: string;\r\n\tmanufacture: string;\r\n\tmodelYear: number;\r\n\tmileage: number;\r\n\tdescription: string;\r\n\tcolor: string;\r\n\tprice: number;\r\n\tcondition: number;\r\n\tstatus: number;\r\n\tVINCode: string;\r\n\r\n\t_specs: ProductSpecificationModel[];\r\n\t_remarks: ProductRemarkModel[];\r\n\r\n\tclear() {\r\n\t\tthis.model = '';\r\n\t\tthis.manufacture = '';\r\n\t\tthis.modelYear = 2000;\r\n\t\tthis.mileage = 0;\r\n\t\tthis.description = '';\r\n\t\tthis.color = 'Black';\r\n\t\tthis.price = 1000;\r\n\t\tthis.condition = 0;\r\n\t\tthis.status = 0;\r\n\t\tthis.VINCode = '';\r\n\t}\r\n}\r\n","// NGRX\r\nimport { createFeatureSelector } from '@ngrx/store';\r\nimport { EntityState, EntityAdapter, createEntityAdapter, Update } from '@ngrx/entity';\r\n// Actions\r\nimport { CustomerActions, CustomerActionTypes } from '../_actions/customer.actions';\r\n// Models\r\nimport { CustomerModel } from '../_models/customer.model';\r\nimport { QueryParamsModel } from '../../_base/crud';\r\n\r\nexport interface CustomersState extends EntityState {\r\n listLoading: boolean;\r\n actionsloading: boolean;\r\n totalCount: number;\r\n lastCreatedCustomerId: number;\r\n lastQuery: QueryParamsModel;\r\n showInitWaitingMessage: boolean;\r\n}\r\n\r\nexport const adapter: EntityAdapter = createEntityAdapter();\r\n\r\nexport const initialCustomersState: CustomersState = adapter.getInitialState({\r\n customerForEdit: null,\r\n listLoading: false,\r\n actionsloading: false,\r\n totalCount: 0,\r\n lastCreatedCustomerId: undefined,\r\n lastQuery: new QueryParamsModel({}),\r\n showInitWaitingMessage: true\r\n});\r\n\r\nexport function customersReducer(state = initialCustomersState, action: CustomerActions): CustomersState {\r\n switch (action.type) {\r\n case CustomerActionTypes.CustomersPageToggleLoading: {\r\n return {\r\n ...state, listLoading: action.payload.isLoading, lastCreatedCustomerId: undefined\r\n };\r\n }\r\n case CustomerActionTypes.CustomerActionToggleLoading: {\r\n return {\r\n ...state, actionsloading: action.payload.isLoading\r\n };\r\n }\r\n case CustomerActionTypes.CustomerOnServerCreated: return {\r\n ...state\r\n };\r\n case CustomerActionTypes.CustomerCreated: return adapter.addOne(action.payload.customer, {\r\n ...state, lastCreatedCustomerId: action.payload.customer.id\r\n });\r\n case CustomerActionTypes.CustomerUpdated: return adapter.updateOne(action.payload.partialCustomer, state);\r\n case CustomerActionTypes.CustomersStatusUpdated: {\r\n const _partialCustomers: Update[] = [];\r\n // tslint:disable-next-line:prefer-const\r\n for (let i = 0; i < action.payload.customers.length; i++) {\r\n _partialCustomers.push({\r\n\t\t\t\t id: action.payload.customers[i].id,\r\n\t\t\t\t changes: {\r\n status: action.payload.status\r\n }\r\n\t\t\t });\r\n }\r\n return adapter.updateMany(_partialCustomers, state);\r\n }\r\n case CustomerActionTypes.OneCustomerDeleted: return adapter.removeOne(action.payload.id, state);\r\n case CustomerActionTypes.ManyCustomersDeleted: return adapter.removeMany(action.payload.ids, state);\r\n case CustomerActionTypes.CustomersPageCancelled: {\r\n return {\r\n ...state, listLoading: false, lastQuery: new QueryParamsModel({})\r\n };\r\n }\r\n case CustomerActionTypes.CustomersPageLoaded: {\r\n return adapter.addMany(action.payload.customers, {\r\n ...initialCustomersState,\r\n totalCount: action.payload.totalCount,\r\n listLoading: false,\r\n lastQuery: action.payload.page,\r\n showInitWaitingMessage: false\r\n });\r\n }\r\n default: return state;\r\n }\r\n}\r\n\r\nexport const getCustomerState = createFeatureSelector('customers');\r\n\r\nexport const {\r\n selectAll,\r\n selectEntities,\r\n selectIds,\r\n selectTotal\r\n} = adapter.getSelectors();\r\n","// NGRX\r\nimport { createFeatureSelector } from '@ngrx/store';\r\nimport { EntityState, EntityAdapter, createEntityAdapter, Update } from '@ngrx/entity';\r\n// Actions\r\nimport { ProductRemarkActions, ProductRemarkActionTypes } from '../_actions/product-remark.actions';\r\n// Models\r\nimport { ProductRemarkModel } from '../_models/product-remark.model';\r\nimport { QueryParamsModel } from '../../_base/crud';\r\n\r\nexport interface ProductRemarksState extends EntityState {\r\n productId: number;\r\n loading: boolean;\r\n totalCount: number;\r\n lastCreatedProductRemarkId: number;\r\n lastQuery: QueryParamsModel;\r\n showInitWaitingMessage: boolean;\r\n}\r\n\r\nexport const adapter: EntityAdapter = createEntityAdapter();\r\n\r\nexport const initialProductRemarksState: ProductRemarksState = adapter.getInitialState({\r\n loading: false,\r\n totalCount: 0,\r\n productId: undefined,\r\n lastCreatedProductRemarkId: undefined,\r\n lastQuery: new QueryParamsModel({}),\r\n showInitWaitingMessage: true\r\n});\r\n\r\nexport function productRemarksReducer(state = initialProductRemarksState, action: ProductRemarkActions): ProductRemarksState {\r\n switch (action.type) {\r\n case ProductRemarkActionTypes.ProductRemarksPageToggleLoading:\r\n return {\r\n ...state,\r\n loading: action.payload.isLoading,\r\n lastCreatedProductRemarkId: undefined\r\n };\r\n case ProductRemarkActionTypes.ProductRemarkOnServerCreated:\r\n return {...state, loading: true};\r\n case ProductRemarkActionTypes.ProductRemarkCreated:\r\n return adapter.addOne(action.payload.productRemark, {\r\n ...state,\r\n lastCreatedProductRemarkId: action.payload.productRemark.id\r\n });\r\n case ProductRemarkActionTypes.ProductRemarkUpdated:\r\n return adapter.updateOne(action.payload.partialProductRemark, state);\r\n case ProductRemarkActionTypes.ProductRemarkStoreUpdated:\r\n return adapter.updateOne(action.payload.productRemark, state);\r\n case ProductRemarkActionTypes.OneProductRemarkDeleted:\r\n return adapter.removeOne(action.payload.id, state);\r\n case ProductRemarkActionTypes.ManyProductRemarksDeleted:\r\n return adapter.removeMany(action.payload.ids, state);\r\n case ProductRemarkActionTypes.ProductRemarksPageCancelled:\r\n return { ...state, totalCount: 0, loading: false, productId: undefined, lastQuery: new QueryParamsModel({}) };\r\n case ProductRemarkActionTypes.ProductRemarksPageRequested:\r\n return { ...state, totalCount: 0, loading: true, productId: action.payload.productId, lastQuery: action.payload.page };\r\n case ProductRemarkActionTypes.ProductRemarksPageLoaded:\r\n return adapter.addMany(action.payload.productRemarks, {\r\n ...initialProductRemarksState,\r\n totalCount: action.payload.totalCount,\r\n loading: false,\r\n productId: state.productId,\r\n lastQuery: state.lastQuery,\r\n showInitWaitingMessage: false\r\n });\r\n default:\r\n return state;\r\n }\r\n}\r\n\r\nexport const getProductRemarlState = createFeatureSelector('productRemarks');\r\n\r\nexport const {\r\n selectAll,\r\n selectEntities,\r\n selectIds,\r\n selectTotal\r\n} = adapter.getSelectors();\r\n","// NGRX\r\nimport { createFeatureSelector } from '@ngrx/store';\r\nimport { EntityState, EntityAdapter, createEntityAdapter, Update } from '@ngrx/entity';\r\n// Actions\r\nimport { ProductSpecificationActions, ProductSpecificationActionTypes } from '../_actions/product-specification.actions';\r\n// Models\r\nimport { ProductSpecificationModel } from '../_models/product-specification.model';\r\nimport { QueryParamsModel } from '../../_base/crud';\r\n\r\nexport interface ProductSpecificationsState extends EntityState {\r\n productId: number;\r\n loading: boolean;\r\n totalCount: number;\r\n lastCreatedProductSpecificationId: number;\r\n lastQuery: QueryParamsModel;\r\n showInitWaitingMessage: boolean;\r\n}\r\n\r\nexport const adapter: EntityAdapter = createEntityAdapter();\r\n\r\nexport const initialProductSpecificationsState: ProductSpecificationsState = adapter.getInitialState({\r\n loading: false,\r\n totalCount: 0,\r\n productId: undefined,\r\n lastCreatedProductSpecificationId: undefined,\r\n lastQuery: new QueryParamsModel({}),\r\n showInitWaitingMessage: true\r\n});\r\n\r\nexport function productSpecificationsReducer(state = initialProductSpecificationsState, action: ProductSpecificationActions): ProductSpecificationsState {\r\n switch (action.type) {\r\n case ProductSpecificationActionTypes.ProductSpecificationsPageToggleLoading:\r\n return {\r\n ...state,\r\n loading: action.payload.isLoading,\r\n lastCreatedProductSpecificationId: undefined\r\n };\r\n case ProductSpecificationActionTypes.ProductSpecificationOnServerCreated:\r\n return {...state, loading: true};\r\n case ProductSpecificationActionTypes.ProductSpecificationCreated:\r\n return adapter.addOne(action.payload.productSpecification, {\r\n ...state,\r\n lastCreatedProductSpecificationId: action.payload.productSpecification.id\r\n });\r\n case ProductSpecificationActionTypes.ProductSpecificationUpdated:\r\n return adapter.updateOne(action.payload.partialProductSpecification, state);\r\n case ProductSpecificationActionTypes.OneProductSpecificationDeleted:\r\n return adapter.removeOne(action.payload.id, state);\r\n case ProductSpecificationActionTypes.ManyProductSpecificationsDeleted:\r\n return adapter.removeMany(action.payload.ids, state);\r\n case ProductSpecificationActionTypes.ProductSpecificationsPageCancelled:\r\n return { ...state, totalCount: 0, loading: false, productId: undefined, lastQuery: new QueryParamsModel({}) };\r\n case ProductSpecificationActionTypes.ProductSpecificationsPageRequested:\r\n return { ...state, totalCount: 0, loading: true, productId: action.payload.productId, lastQuery: action.payload.page };\r\n case ProductSpecificationActionTypes.ProductSpecificationsPageLoaded:\r\n return adapter.addMany(action.payload.productSpecifications, {\r\n ...initialProductSpecificationsState,\r\n totalCount: action.payload.totalCount,\r\n loading: false,\r\n productId: state.productId,\r\n lastQuery: state.lastQuery,\r\n showInitWaitingMessage: false\r\n });\r\n default:\r\n return state;\r\n }\r\n}\r\n\r\nexport const getProductRemarlState = createFeatureSelector('productSpecifications');\r\n\r\nexport const {\r\n selectAll,\r\n selectEntities,\r\n selectIds,\r\n selectTotal\r\n} = adapter.getSelectors();\r\n","\r\n// NGRX\r\nimport { createFeatureSelector } from '@ngrx/store';\r\nimport { EntityState, EntityAdapter, createEntityAdapter, Update } from '@ngrx/entity';\r\n// Actions\r\nimport { ProductActions, ProductActionTypes } from '../_actions/product.actions';\r\n// CRUD\r\nimport { QueryParamsModel } from '../../_base/crud';\r\n// Models\r\nimport { ProductModel } from '../_models/product.model';\r\n\r\nexport interface ProductsState extends EntityState {\r\n listLoading: boolean;\r\n actionsloading: boolean;\r\n totalCount: number;\r\n lastQuery: QueryParamsModel;\r\n lastCreatedProductId: number;\r\n showInitWaitingMessage: boolean;\r\n}\r\n\r\nexport const adapter: EntityAdapter = createEntityAdapter();\r\n\r\nexport const initialProductsState: ProductsState = adapter.getInitialState({\r\n listLoading: false,\r\n actionsloading: false,\r\n totalCount: 0,\r\n lastQuery: new QueryParamsModel({}),\r\n lastCreatedProductId: undefined,\r\n showInitWaitingMessage: true\r\n});\r\n\r\nexport function productsReducer(state = initialProductsState, action: ProductActions): ProductsState {\r\n switch (action.type) {\r\n case ProductActionTypes.ProductsPageToggleLoading: return {\r\n ...state, listLoading: action.payload.isLoading, lastCreatedProductId: undefined\r\n };\r\n case ProductActionTypes.ProductsActionToggleLoading: return {\r\n ...state, actionsloading: action.payload.isLoading\r\n };\r\n case ProductActionTypes.ProductOnServerCreated: return {\r\n ...state\r\n };\r\n case ProductActionTypes.ProductCreated: return adapter.addOne(action.payload.product, {\r\n ...state, lastCreatedProductId: action.payload.product.id\r\n });\r\n case ProductActionTypes.ProductUpdated: return adapter.updateOne(action.payload.partialProduct, state);\r\n case ProductActionTypes.ProductsStatusUpdated: {\r\n const _partialProducts: Update[] = [];\r\n for (let i = 0; i < action.payload.products.length; i++) {\r\n _partialProducts.push({\r\n\t\t\t\t id: action.payload.products[i].id,\r\n\t\t\t\t changes: {\r\n status: action.payload.status\r\n }\r\n\t\t\t });\r\n }\r\n return adapter.updateMany(_partialProducts, state);\r\n }\r\n case ProductActionTypes.OneProductDeleted: return adapter.removeOne(action.payload.id, state);\r\n case ProductActionTypes.ManyProductsDeleted: return adapter.removeMany(action.payload.ids, state);\r\n case ProductActionTypes.ProductsPageCancelled: return {\r\n ...state, listLoading: false, lastQuery: new QueryParamsModel({})\r\n };\r\n case ProductActionTypes.ProductsPageLoaded:\r\n return adapter.addMany(action.payload.products, {\r\n ...initialProductsState,\r\n totalCount: action.payload.totalCount,\r\n listLoading: false,\r\n lastQuery: action.payload.page,\r\n showInitWaitingMessage: false\r\n });\r\n default: return state;\r\n }\r\n}\r\n\r\nexport const getProductState = createFeatureSelector('products');\r\n\r\nexport const {\r\n selectAll,\r\n selectEntities,\r\n selectIds,\r\n selectTotal\r\n} = adapter.getSelectors();\r\n","// NGRX\r\nimport { createFeatureSelector, createSelector } from '@ngrx/store';\r\n// Lodash\r\nimport { each } from 'lodash';\r\n// CRUD\r\nimport { QueryResultsModel, HttpExtenstionsModel } from '../../_base/crud';\r\n// State\r\nimport { CustomersState } from '../_reducers/customer.reducers';\r\nimport { CustomerModel } from '../_models/customer.model';\r\n\r\nexport const selectCustomersState = createFeatureSelector('customers');\r\n\r\nexport const selectCustomerById = (customerId: number) => createSelector(\r\n selectCustomersState,\r\n customersState => customersState.entities[customerId]\r\n);\r\n\r\nexport const selectCustomersPageLoading = createSelector(\r\n selectCustomersState,\r\n customersState => customersState.listLoading\r\n);\r\n\r\nexport const selectCustomersActionLoading = createSelector(\r\n selectCustomersState,\r\n customersState => customersState.actionsloading\r\n);\r\n\r\nexport const selectLastCreatedCustomerId = createSelector(\r\n selectCustomersState,\r\n customersState => customersState.lastCreatedCustomerId\r\n);\r\n\r\nexport const selectCustomersShowInitWaitingMessage = createSelector(\r\n selectCustomersState,\r\n customersState => customersState.showInitWaitingMessage\r\n);\r\n\r\nexport const selectCustomersInStore = createSelector(\r\n selectCustomersState,\r\n customersState => {\r\n const items: CustomerModel[] = [];\r\n each(customersState.entities, element => {\r\n items.push(element);\r\n });\r\n const httpExtension = new HttpExtenstionsModel();\r\n const result: CustomerModel[] = httpExtension.sortArray(items, customersState.lastQuery.sortField, customersState.lastQuery.sortOrder);\r\n return new QueryResultsModel(result, customersState.totalCount, '');\r\n }\r\n);\r\n","// NGRX\r\nimport { createFeatureSelector, createSelector } from '@ngrx/store';\r\n// Lodash\r\nimport { each } from 'lodash';\r\n// CRUD\r\nimport { QueryResultsModel, HttpExtenstionsModel } from '../../_base/crud';\r\n// State\r\nimport { ProductRemarksState } from '../_reducers/product-remark.reducers';\r\nimport { ProductRemarkModel } from '../_models/product-remark.model';\r\n\r\nexport const selectProductRemarksState = createFeatureSelector('productRemarks');\r\n\r\nexport const selectProductRemarkById = (productRemarkId: number) => createSelector(\r\n selectProductRemarksState,\r\n productRemarksState => productRemarksState.entities[productRemarkId]\r\n);\r\n\r\nexport const selectProductRemarksPageLoading = createSelector(\r\n selectProductRemarksState,\r\n productRemarksState => productRemarksState.loading\r\n);\r\n\r\nexport const selectCurrentProductIdInStoreForProductRemarks = createSelector(\r\n selectProductRemarksState,\r\n productRemarksState => productRemarksState.productId\r\n);\r\n\r\nexport const selectLastCreatedProductRemarkId = createSelector(\r\n selectProductRemarksState,\r\n productRemarksState => productRemarksState.lastCreatedProductRemarkId\r\n);\r\n\r\nexport const selectPRShowInitWaitingMessage = createSelector(\r\n selectProductRemarksState,\r\n productRemarksState => productRemarksState.showInitWaitingMessage\r\n);\r\n\r\nexport const selectProductRemarksInStore = createSelector(\r\n selectProductRemarksState,\r\n productRemarksState => {\r\n const items: ProductRemarkModel[] = [];\r\n each(productRemarksState.entities, element => {\r\n items.push(element);\r\n });\r\n const httpExtension = new HttpExtenstionsModel();\r\n const result: ProductRemarkModel[] = httpExtension.sortArray(items, productRemarksState.lastQuery.sortField, productRemarksState.lastQuery.sortOrder);\r\n\r\n return new QueryResultsModel(items, productRemarksState.totalCount, '');\r\n }\r\n);\r\n","// NGRX\r\nimport { createFeatureSelector, createSelector } from '@ngrx/store';\r\n// Lodash\r\nimport { each } from 'lodash';\r\n// CRUD\r\nimport { QueryResultsModel, HttpExtenstionsModel } from '../../_base/crud';\r\n// State\r\nimport { ProductSpecificationsState } from '../_reducers/product-specification.reducers';\r\nimport { ProductSpecificationModel } from '../_models/product-specification.model';\r\n\r\nexport const selectProductSpecificationsState = createFeatureSelector('productSpecifications');\r\n\r\nexport const selectProductSpecificationById = (productSpecificationId: number) => createSelector(\r\n selectProductSpecificationsState,\r\n productSpecificationsState => productSpecificationsState.entities[productSpecificationId]\r\n);\r\n\r\nexport const selectProductSpecificationsPageLoading = createSelector(\r\n selectProductSpecificationsState,\r\n productSpecificationsState => productSpecificationsState.loading\r\n);\r\n\r\nexport const selectCurrentProductIdInStoreForProductSpecs = createSelector(\r\n selectProductSpecificationsState,\r\n productSpecificationsState => productSpecificationsState.productId\r\n);\r\n\r\nexport const selectLastCreatedProductSpecificationId = createSelector(\r\n selectProductSpecificationsState,\r\n productSpecificationsState => productSpecificationsState.lastCreatedProductSpecificationId\r\n);\r\n\r\nexport const selectPSShowInitWaitingMessage = createSelector(\r\n selectProductSpecificationsState,\r\n productSpecificationsState => productSpecificationsState.showInitWaitingMessage\r\n);\r\n\r\nexport const selectProductSpecificationsInStore = createSelector(\r\n selectProductSpecificationsState,\r\n productSpecificationsState => {\r\n const items: ProductSpecificationModel[] = [];\r\n each(productSpecificationsState.entities, element => {\r\n items.push(element);\r\n });\r\n const httpExtension = new HttpExtenstionsModel();\r\n const result: ProductSpecificationModel[] = httpExtension.sortArray(items, productSpecificationsState.lastQuery.sortField, productSpecificationsState.lastQuery.sortOrder);\r\n return new QueryResultsModel(result, productSpecificationsState.totalCount, '');\r\n }\r\n);\r\n\r\n","// NGRX\r\nimport { createFeatureSelector, createSelector } from '@ngrx/store';\r\n// Lodash\r\nimport { each } from 'lodash';\r\n// CRUD\r\nimport { QueryResultsModel, HttpExtenstionsModel } from '../../_base/crud';\r\n// State\r\nimport { ProductsState } from '../_reducers/product.reducers';\r\nimport { ProductModel } from '../_models/product.model';\r\n\r\nexport const selectProductsState = createFeatureSelector('products');\r\n\r\nexport const selectProductById = (productId: number) => createSelector(\r\n selectProductsState,\r\n productsState => productsState.entities[productId]\r\n);\r\n\r\nexport const selectProductsPageLoading = createSelector(\r\n selectProductsState,\r\n productsState => productsState.listLoading\r\n);\r\n\r\nexport const selectProductsActionLoading = createSelector(\r\n selectProductsState,\r\n customersState => customersState.actionsloading\r\n);\r\n\r\nexport const selectProductsPageLastQuery = createSelector(\r\n selectProductsState,\r\n productsState => productsState.lastQuery\r\n);\r\n\r\nexport const selectLastCreatedProductId = createSelector(\r\n selectProductsState,\r\n productsState => productsState.lastCreatedProductId\r\n);\r\n\r\nexport const selectProductsInitWaitingMessage = createSelector(\r\n selectProductsState,\r\n productsState => productsState.showInitWaitingMessage\r\n);\r\n\r\nexport const selectProductsInStore = createSelector(\r\n selectProductsState,\r\n productsState => {\r\n const items: ProductModel[] = [];\r\n each(productsState.entities, element => {\r\n items.push(element);\r\n });\r\n const httpExtension = new HttpExtenstionsModel();\r\n const result: ProductModel[] = httpExtension.sortArray(items, productsState.lastQuery.sortField, productsState.lastQuery.sortOrder);\r\n return new QueryResultsModel(result, productsState.totalCount, '');\r\n }\r\n);\r\n\r\nexport const selectHasProductsInStore = createSelector(\r\n selectProductsInStore,\r\n queryResult => {\r\n if (!queryResult.totalCount) {\r\n return false;\r\n }\r\n\r\n return true;\r\n }\r\n);\r\n","import { CustomersTable } from './customers.table';\r\nimport { CarsTable } from './cars.table';\r\nimport { RemarksTable } from './remarks.table';\r\nimport { CarSpecificationsTable } from './car-specifications.table';\r\nimport { OrdersTable } from './orders.table';\r\n\r\n// Wrapper class\r\nexport class ECommerceDataContext {\r\n\tpublic static customers: any = CustomersTable.customers;\r\n\r\n\tpublic static cars: any = CarsTable.cars;\r\n\r\n\t// e-commerce car remarks\r\n\t// one => many relations\r\n\tpublic static remarks = RemarksTable.remarks;\r\n\r\n\t// e-commerce car specifications\r\n\t// one => many relations\r\n\tpublic static carSpecs = CarSpecificationsTable.carSpecifications;\r\n\r\n\r\n\tpublic static orders = OrdersTable.orders;\r\n}\r\n","// Sub category for cars\r\nexport class CarSpecificationsTable {\r\n\tpublic static carSpecifications: any = [\r\n\t\t{\r\n\t\t\t'id': 1,\r\n\t\t\t'carId': 1,\r\n\t\t\t'specId': 1,\r\n\t\t\t'value': 'purus sit amet nulla',\r\n\t\t\t'_userId': 1,\r\n\t\t\t'_createdDate': '07/14/2011',\r\n\t\t\t'_updatedDate': '07/27/2013'\r\n\t\t}, {\r\n\t\t\t'id': 2,\r\n\t\t\t'carId': 1,\r\n\t\t\t'specId': 2,\r\n\t\t\t'value': 'nulla sed vel enim',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '09/29/2012',\r\n\t\t\t'_updatedDate': '09/25/2013'\r\n\t\t}, {\r\n\t\t\t'id': 3,\r\n\t\t\t'carId': 1,\r\n\t\t\t'specId': 3,\r\n\t\t\t'value': 'id ornare',\r\n\t\t\t'_userId': 1,\r\n\t\t\t'_createdDate': '01/13/2016',\r\n\t\t\t'_updatedDate': '07/08/2010'\r\n\t\t}, {\r\n\t\t\t'id': 4,\r\n\t\t\t'carId': 1,\r\n\t\t\t'specId': 4,\r\n\t\t\t'value': 'orci luctus et',\r\n\t\t\t'_userId': 1,\r\n\t\t\t'_createdDate': '06/20/2013',\r\n\t\t\t'_updatedDate': '05/09/2013'\r\n\t\t}, {\r\n\t\t\t'id': 5,\r\n\t\t\t'carId': 1,\r\n\t\t\t'specId': 5,\r\n\t\t\t'value': 'convallis duis consequat dui nec',\r\n\t\t\t'_userId': 1,\r\n\t\t\t'_createdDate': '02/24/2014',\r\n\t\t\t'_updatedDate': '04/26/2016'\r\n\t\t}, {\r\n\t\t\t'id': 6,\r\n\t\t\t'carId': 2,\r\n\t\t\t'specId': 6,\r\n\t\t\t'value': 'augue luctus',\r\n\t\t\t'_userId': 1,\r\n\t\t\t'_createdDate': '03/16/2017',\r\n\t\t\t'_updatedDate': '02/01/2018'\r\n\t\t}, {\r\n\t\t\t'id': 7,\r\n\t\t\t'carId': 2,\r\n\t\t\t'specId': 7,\r\n\t\t\t'value': 'in tempus sit amet',\r\n\t\t\t'_userId': 1,\r\n\t\t\t'_createdDate': '01/24/2012',\r\n\t\t\t'_updatedDate': '03/14/2015'\r\n\t\t}, {\r\n\t\t\t'id': 8,\r\n\t\t\t'carId': 2,\r\n\t\t\t'specId': 8,\r\n\t\t\t'value': 'venenatis turpis enim blandit mi',\r\n\t\t\t'_userId': 1,\r\n\t\t\t'_createdDate': '10/02/2017',\r\n\t\t\t'_updatedDate': '05/20/2011'\r\n\t\t}, {\r\n\t\t\t'id': 9,\r\n\t\t\t'carId': 2,\r\n\t\t\t'specId': 9,\r\n\t\t\t'value': 'sed magna at nunc commodo',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '02/29/2012',\r\n\t\t\t'_updatedDate': '06/30/2015'\r\n\t\t}, {\r\n\t\t\t'id': 10,\r\n\t\t\t'carId': 2,\r\n\t\t\t'specId': 0,\r\n\t\t\t'value': 'nascetur',\r\n\t\t\t'_userId': 1,\r\n\t\t\t'_createdDate': '11/26/2013',\r\n\t\t\t'_updatedDate': '12/03/2013'\r\n\t\t}, {\r\n\t\t\t'id': 11,\r\n\t\t\t'carId': 3,\r\n\t\t\t'specId': 1,\r\n\t\t\t'value': 'magna vestibulum aliquet',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '06/23/2014',\r\n\t\t\t'_updatedDate': '07/11/2014'\r\n\t\t}, {\r\n\t\t\t'id': 12,\r\n\t\t\t'carId': 3,\r\n\t\t\t'specId': 1,\r\n\t\t\t'value': 'bibendum imperdiet nullam orci',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '08/14/2013',\r\n\t\t\t'_updatedDate': '06/22/2017'\r\n\t\t}, {\r\n\t\t\t'id': 13,\r\n\t\t\t'carId': 3,\r\n\t\t\t'specId': 2,\r\n\t\t\t'value': 'ligula pellentesque ultrices phasellus',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '05/03/2016',\r\n\t\t\t'_updatedDate': '06/08/2012'\r\n\t\t}, {\r\n\t\t\t'id': 14,\r\n\t\t\t'carId': 3,\r\n\t\t\t'specId': 3,\r\n\t\t\t'value': 'in faucibus orci luctus',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '04/10/2016',\r\n\t\t\t'_updatedDate': '11/23/2011'\r\n\t\t}, {\r\n\t\t\t'id': 15,\r\n\t\t\t'carId': 3,\r\n\t\t\t'specId': 4,\r\n\t\t\t'value': 'quis turpis sed ante',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '12/28/2015',\r\n\t\t\t'_updatedDate': '02/11/2011'\r\n\t\t}, {\r\n\t\t\t'id': 16,\r\n\t\t\t'carId': 4,\r\n\t\t\t'specId': 5,\r\n\t\t\t'value': 'proin risus praesent lectus',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '04/25/2011',\r\n\t\t\t'_updatedDate': '08/26/2014'\r\n\t\t}, {\r\n\t\t\t'id': 17,\r\n\t\t\t'carId': 4,\r\n\t\t\t'specId': 6,\r\n\t\t\t'value': 'morbi sem mauris laoreet',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '09/23/2012',\r\n\t\t\t'_updatedDate': '05/17/2018'\r\n\t\t}, {\r\n\t\t\t'id': 18,\r\n\t\t\t'carId': 4,\r\n\t\t\t'specId': 7,\r\n\t\t\t'value': 'erat curabitur gravida',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '02/26/2015',\r\n\t\t\t'_updatedDate': '01/07/2014'\r\n\t\t}, {\r\n\t\t\t'id': 19,\r\n\t\t\t'carId': 4,\r\n\t\t\t'specId': 8,\r\n\t\t\t'value': 'tellus nulla ut',\r\n\t\t\t'_userId': 1,\r\n\t\t\t'_createdDate': '12/08/2016',\r\n\t\t\t'_updatedDate': '10/08/2015'\r\n\t\t}, {\r\n\t\t\t'id': 20,\r\n\t\t\t'carId': 4,\r\n\t\t\t'specId': 9,\r\n\t\t\t'value': 'tempus sit amet sem fusce',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '05/09/2011',\r\n\t\t\t'_updatedDate': '11/07/2011'\r\n\t\t}, {\r\n\t\t\t'id': 21,\r\n\t\t\t'carId': 5,\r\n\t\t\t'specId': 0,\r\n\t\t\t'value': 'pellentesque ultrices phasellus',\r\n\t\t\t'_userId': 1,\r\n\t\t\t'_createdDate': '03/22/2011',\r\n\t\t\t'_updatedDate': '07/04/2010'\r\n\t\t}, {\r\n\t\t\t'id': 22,\r\n\t\t\t'carId': 5,\r\n\t\t\t'specId': 1,\r\n\t\t\t'value': 'gravida',\r\n\t\t\t'_userId': 1,\r\n\t\t\t'_createdDate': '01/09/2018',\r\n\t\t\t'_updatedDate': '02/15/2011'\r\n\t\t}, {\r\n\t\t\t'id': 23,\r\n\t\t\t'carId': 5,\r\n\t\t\t'specId': 1,\r\n\t\t\t'value': 'nulla',\r\n\t\t\t'_userId': 1,\r\n\t\t\t'_createdDate': '11/13/2012',\r\n\t\t\t'_updatedDate': '06/25/2017'\r\n\t\t}, {\r\n\t\t\t'id': 24,\r\n\t\t\t'carId': 5,\r\n\t\t\t'specId': 2,\r\n\t\t\t'value': 'et ultrices posuere cubilia',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '02/24/2014',\r\n\t\t\t'_updatedDate': '12/11/2011'\r\n\t\t}, {\r\n\t\t\t'id': 25,\r\n\t\t\t'carId': 5,\r\n\t\t\t'specId': 3,\r\n\t\t\t'value': 'nulla quisque arcu',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '12/16/2012',\r\n\t\t\t'_updatedDate': '02/08/2012'\r\n\t\t}, {\r\n\t\t\t'id': 26,\r\n\t\t\t'carId': 6,\r\n\t\t\t'specId': 4,\r\n\t\t\t'value': 'orci eget orci vehicula',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '09/21/2015',\r\n\t\t\t'_updatedDate': '05/05/2014'\r\n\t\t}, {\r\n\t\t\t'id': 27,\r\n\t\t\t'carId': 6,\r\n\t\t\t'specId': 5,\r\n\t\t\t'value': 'lobortis convallis',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '08/28/2014',\r\n\t\t\t'_updatedDate': '05/18/2011'\r\n\t\t}, {\r\n\t\t\t'id': 28,\r\n\t\t\t'carId': 6,\r\n\t\t\t'specId': 6,\r\n\t\t\t'value': 'ipsum praesent blandit lacinia',\r\n\t\t\t'_userId': 1,\r\n\t\t\t'_createdDate': '06/14/2015',\r\n\t\t\t'_updatedDate': '12/28/2012'\r\n\t\t}, {\r\n\t\t\t'id': 29,\r\n\t\t\t'carId': 6,\r\n\t\t\t'specId': 7,\r\n\t\t\t'value': 'tempus semper est quam pharetra',\r\n\t\t\t'_userId': 1,\r\n\t\t\t'_createdDate': '08/30/2017',\r\n\t\t\t'_updatedDate': '08/17/2016'\r\n\t\t}, {\r\n\t\t\t'id': 30,\r\n\t\t\t'carId': 6,\r\n\t\t\t'specId': 8,\r\n\t\t\t'value': 'in felis eu sapien',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '11/18/2010',\r\n\t\t\t'_updatedDate': '09/20/2016'\r\n\t\t}, {\r\n\t\t\t'id': 31,\r\n\t\t\t'carId': 7,\r\n\t\t\t'specId': 9,\r\n\t\t\t'value': 'nam',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '06/28/2015',\r\n\t\t\t'_updatedDate': '04/19/2011'\r\n\t\t}, {\r\n\t\t\t'id': 32,\r\n\t\t\t'carId': 7,\r\n\t\t\t'specId': 0,\r\n\t\t\t'value': 'metus arcu',\r\n\t\t\t'_userId': 1,\r\n\t\t\t'_createdDate': '06/15/2017',\r\n\t\t\t'_updatedDate': '08/05/2012'\r\n\t\t}, {\r\n\t\t\t'id': 33,\r\n\t\t\t'carId': 7,\r\n\t\t\t'specId': 1,\r\n\t\t\t'value': 'libero nullam',\r\n\t\t\t'_userId': 1,\r\n\t\t\t'_createdDate': '12/15/2014',\r\n\t\t\t'_updatedDate': '03/28/2013'\r\n\t\t}, {\r\n\t\t\t'id': 34,\r\n\t\t\t'carId': 7,\r\n\t\t\t'specId': 1,\r\n\t\t\t'value': 'diam nam',\r\n\t\t\t'_userId': 1,\r\n\t\t\t'_createdDate': '08/28/2017',\r\n\t\t\t'_updatedDate': '08/24/2015'\r\n\t\t}, {\r\n\t\t\t'id': 35,\r\n\t\t\t'carId': 7,\r\n\t\t\t'specId': 2,\r\n\t\t\t'value': 'iaculis congue vivamus metus',\r\n\t\t\t'_userId': 1,\r\n\t\t\t'_createdDate': '06/26/2010',\r\n\t\t\t'_updatedDate': '01/27/2012'\r\n\t\t}, {\r\n\t\t\t'id': 36,\r\n\t\t\t'carId': 8,\r\n\t\t\t'specId': 3,\r\n\t\t\t'value': 'cum sociis natoque',\r\n\t\t\t'_userId': 1,\r\n\t\t\t'_createdDate': '07/04/2016',\r\n\t\t\t'_updatedDate': '12/24/2013'\r\n\t\t}, {\r\n\t\t\t'id': 37,\r\n\t\t\t'carId': 8,\r\n\t\t\t'specId': 4,\r\n\t\t\t'value': 'odio odio elementum eu',\r\n\t\t\t'_userId': 1,\r\n\t\t\t'_createdDate': '06/03/2017',\r\n\t\t\t'_updatedDate': '11/21/2017'\r\n\t\t}, {\r\n\t\t\t'id': 38,\r\n\t\t\t'carId': 8,\r\n\t\t\t'specId': 5,\r\n\t\t\t'value': 'at ipsum ac tellus',\r\n\t\t\t'_userId': 1,\r\n\t\t\t'_createdDate': '06/03/2014',\r\n\t\t\t'_updatedDate': '07/18/2014'\r\n\t\t}, {\r\n\t\t\t'id': 39,\r\n\t\t\t'carId': 8,\r\n\t\t\t'specId': 6,\r\n\t\t\t'value': 'quis',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '12/25/2015',\r\n\t\t\t'_updatedDate': '10/10/2012'\r\n\t\t}, {\r\n\t\t\t'id': 40,\r\n\t\t\t'carId': 8,\r\n\t\t\t'specId': 7,\r\n\t\t\t'value': 'justo aliquam quis turpis',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '04/22/2017',\r\n\t\t\t'_updatedDate': '01/16/2018'\r\n\t\t}, {\r\n\t\t\t'id': 41,\r\n\t\t\t'carId': 9,\r\n\t\t\t'specId': 8,\r\n\t\t\t'value': 'adipiscing elit proin risus',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '02/26/2012',\r\n\t\t\t'_updatedDate': '03/07/2017'\r\n\t\t}, {\r\n\t\t\t'id': 42,\r\n\t\t\t'carId': 9,\r\n\t\t\t'specId': 9,\r\n\t\t\t'value': 'nibh ligula nec sem duis',\r\n\t\t\t'_userId': 1,\r\n\t\t\t'_createdDate': '09/16/2013',\r\n\t\t\t'_updatedDate': '11/13/2011'\r\n\t\t}, {\r\n\t\t\t'id': 43,\r\n\t\t\t'carId': 9,\r\n\t\t\t'specId': 0,\r\n\t\t\t'value': 'purus aliquet at feugiat',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '05/23/2018',\r\n\t\t\t'_updatedDate': '10/05/2014'\r\n\t\t}, {\r\n\t\t\t'id': 44,\r\n\t\t\t'carId': 9,\r\n\t\t\t'specId': 1,\r\n\t\t\t'value': 'eros suspendisse accumsan tortor quis',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '10/14/2014',\r\n\t\t\t'_updatedDate': '08/02/2014'\r\n\t\t}, {\r\n\t\t\t'id': 45,\r\n\t\t\t'carId': 9,\r\n\t\t\t'specId': 1,\r\n\t\t\t'value': 'eget rutrum',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '01/23/2017',\r\n\t\t\t'_updatedDate': '09/28/2012'\r\n\t\t}, {\r\n\t\t\t'id': 46,\r\n\t\t\t'carId': 10,\r\n\t\t\t'specId': 2,\r\n\t\t\t'value': 'hendrerit at vulputate',\r\n\t\t\t'_userId': 1,\r\n\t\t\t'_createdDate': '10/20/2011',\r\n\t\t\t'_updatedDate': '10/09/2010'\r\n\t\t}, {\r\n\t\t\t'id': 47,\r\n\t\t\t'carId': 10,\r\n\t\t\t'specId': 3,\r\n\t\t\t'value': 'et',\r\n\t\t\t'_userId': 1,\r\n\t\t\t'_createdDate': '12/25/2015',\r\n\t\t\t'_updatedDate': '08/26/2015'\r\n\t\t}, {\r\n\t\t\t'id': 48,\r\n\t\t\t'carId': 10,\r\n\t\t\t'specId': 4,\r\n\t\t\t'value': 'volutpat in congue etiam',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '09/17/2010',\r\n\t\t\t'_updatedDate': '04/12/2016'\r\n\t\t}, {\r\n\t\t\t'id': 49,\r\n\t\t\t'carId': 10,\r\n\t\t\t'specId': 5,\r\n\t\t\t'value': 'odio elementum eu',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '10/19/2015',\r\n\t\t\t'_updatedDate': '11/10/2017'\r\n\t\t}, {\r\n\t\t\t'id': 50,\r\n\t\t\t'carId': 10,\r\n\t\t\t'specId': 6,\r\n\t\t\t'value': 'donec odio justo',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '06/18/2016',\r\n\t\t\t'_updatedDate': '01/26/2011'\r\n\t\t}, {\r\n\t\t\t'id': 51,\r\n\t\t\t'carId': 11,\r\n\t\t\t'specId': 7,\r\n\t\t\t'value': 'nulla suspendisse potenti cras in',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '11/18/2010',\r\n\t\t\t'_updatedDate': '05/30/2017'\r\n\t\t}, {\r\n\t\t\t'id': 52,\r\n\t\t\t'carId': 11,\r\n\t\t\t'specId': 8,\r\n\t\t\t'value': 'nisl',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '10/26/2010',\r\n\t\t\t'_updatedDate': '05/14/2015'\r\n\t\t}, {\r\n\t\t\t'id': 53,\r\n\t\t\t'carId': 11,\r\n\t\t\t'specId': 9,\r\n\t\t\t'value': 'tincidunt ante',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '06/29/2016',\r\n\t\t\t'_updatedDate': '09/05/2010'\r\n\t\t}, {\r\n\t\t\t'id': 54,\r\n\t\t\t'carId': 11,\r\n\t\t\t'specId': 0,\r\n\t\t\t'value': 'condimentum curabitur',\r\n\t\t\t'_userId': 1,\r\n\t\t\t'_createdDate': '05/25/2011',\r\n\t\t\t'_updatedDate': '09/29/2014'\r\n\t\t}, {\r\n\t\t\t'id': 55,\r\n\t\t\t'carId': 11,\r\n\t\t\t'specId': 1,\r\n\t\t\t'value': 'mi nulla',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '12/06/2014',\r\n\t\t\t'_updatedDate': '05/20/2018'\r\n\t\t}, {\r\n\t\t\t'id': 56,\r\n\t\t\t'carId': 12,\r\n\t\t\t'specId': 1,\r\n\t\t\t'value': 'tortor risus',\r\n\t\t\t'_userId': 1,\r\n\t\t\t'_createdDate': '09/26/2016',\r\n\t\t\t'_updatedDate': '08/07/2010'\r\n\t\t}, {\r\n\t\t\t'id': 57,\r\n\t\t\t'carId': 12,\r\n\t\t\t'specId': 2,\r\n\t\t\t'value': 'quisque erat eros',\r\n\t\t\t'_userId': 1,\r\n\t\t\t'_createdDate': '03/18/2012',\r\n\t\t\t'_updatedDate': '03/27/2016'\r\n\t\t}, {\r\n\t\t\t'id': 58,\r\n\t\t\t'carId': 12,\r\n\t\t\t'specId': 3,\r\n\t\t\t'value': 'ultrices posuere cubilia curae nulla',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '08/11/2010',\r\n\t\t\t'_updatedDate': '01/10/2013'\r\n\t\t}, {\r\n\t\t\t'id': 59,\r\n\t\t\t'carId': 12,\r\n\t\t\t'specId': 4,\r\n\t\t\t'value': 'dapibus',\r\n\t\t\t'_userId': 1,\r\n\t\t\t'_createdDate': '02/15/2015',\r\n\t\t\t'_updatedDate': '10/19/2010'\r\n\t\t}, {\r\n\t\t\t'id': 60,\r\n\t\t\t'carId': 12,\r\n\t\t\t'specId': 5,\r\n\t\t\t'value': 'pharetra magna vestibulum',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '05/30/2015',\r\n\t\t\t'_updatedDate': '11/13/2011'\r\n\t\t}, {\r\n\t\t\t'id': 61,\r\n\t\t\t'carId': 13,\r\n\t\t\t'specId': 6,\r\n\t\t\t'value': 'lectus',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '07/20/2012',\r\n\t\t\t'_updatedDate': '03/10/2015'\r\n\t\t}, {\r\n\t\t\t'id': 62,\r\n\t\t\t'carId': 13,\r\n\t\t\t'specId': 7,\r\n\t\t\t'value': 'eget vulputate',\r\n\t\t\t'_userId': 1,\r\n\t\t\t'_createdDate': '04/30/2017',\r\n\t\t\t'_updatedDate': '03/11/2016'\r\n\t\t}, {\r\n\t\t\t'id': 63,\r\n\t\t\t'carId': 13,\r\n\t\t\t'specId': 8,\r\n\t\t\t'value': 'feugiat et eros',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '04/21/2018',\r\n\t\t\t'_updatedDate': '09/11/2011'\r\n\t\t}, {\r\n\t\t\t'id': 64,\r\n\t\t\t'carId': 13,\r\n\t\t\t'specId': 9,\r\n\t\t\t'value': 'dis parturient',\r\n\t\t\t'_userId': 1,\r\n\t\t\t'_createdDate': '02/09/2011',\r\n\t\t\t'_updatedDate': '02/06/2011'\r\n\t\t}, {\r\n\t\t\t'id': 65,\r\n\t\t\t'carId': 13,\r\n\t\t\t'specId': 0,\r\n\t\t\t'value': 'gravida',\r\n\t\t\t'_userId': 1,\r\n\t\t\t'_createdDate': '08/22/2013',\r\n\t\t\t'_updatedDate': '09/02/2012'\r\n\t\t}, {\r\n\t\t\t'id': 66,\r\n\t\t\t'carId': 14,\r\n\t\t\t'specId': 1,\r\n\t\t\t'value': 'sed',\r\n\t\t\t'_userId': 1,\r\n\t\t\t'_createdDate': '09/18/2010',\r\n\t\t\t'_updatedDate': '06/10/2015'\r\n\t\t}, {\r\n\t\t\t'id': 67,\r\n\t\t\t'carId': 14,\r\n\t\t\t'specId': 1,\r\n\t\t\t'value': 'in blandit',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '11/21/2017',\r\n\t\t\t'_updatedDate': '06/22/2016'\r\n\t\t}, {\r\n\t\t\t'id': 68,\r\n\t\t\t'carId': 14,\r\n\t\t\t'specId': 2,\r\n\t\t\t'value': 'id',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '04/23/2014',\r\n\t\t\t'_updatedDate': '02/13/2018'\r\n\t\t}, {\r\n\t\t\t'id': 69,\r\n\t\t\t'carId': 14,\r\n\t\t\t'specId': 3,\r\n\t\t\t'value': 'sapien',\r\n\t\t\t'_userId': 1,\r\n\t\t\t'_createdDate': '09/04/2011',\r\n\t\t\t'_updatedDate': '04/21/2012'\r\n\t\t}, {\r\n\t\t\t'id': 70,\r\n\t\t\t'carId': 14,\r\n\t\t\t'specId': 4,\r\n\t\t\t'value': 'nec nisi volutpat eleifend donec',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '05/07/2017',\r\n\t\t\t'_updatedDate': '12/28/2015'\r\n\t\t}, {\r\n\t\t\t'id': 71,\r\n\t\t\t'carId': 15,\r\n\t\t\t'specId': 5,\r\n\t\t\t'value': 'non',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '05/29/2017',\r\n\t\t\t'_updatedDate': '08/15/2014'\r\n\t\t}, {\r\n\t\t\t'id': 72,\r\n\t\t\t'carId': 15,\r\n\t\t\t'specId': 6,\r\n\t\t\t'value': 'pharetra magna ac consequat metus',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '06/13/2016',\r\n\t\t\t'_updatedDate': '12/22/2014'\r\n\t\t}, {\r\n\t\t\t'id': 73,\r\n\t\t\t'carId': 15,\r\n\t\t\t'specId': 7,\r\n\t\t\t'value': 'erat quisque erat eros',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '02/27/2013',\r\n\t\t\t'_updatedDate': '07/15/2012'\r\n\t\t}, {\r\n\t\t\t'id': 74,\r\n\t\t\t'carId': 15,\r\n\t\t\t'specId': 8,\r\n\t\t\t'value': 'diam nam tristique tortor eu',\r\n\t\t\t'_userId': 1,\r\n\t\t\t'_createdDate': '01/07/2017',\r\n\t\t\t'_updatedDate': '09/24/2014'\r\n\t\t}, {\r\n\t\t\t'id': 75,\r\n\t\t\t'carId': 15,\r\n\t\t\t'specId': 9,\r\n\t\t\t'value': 'semper sapien a libero nam',\r\n\t\t\t'_userId': 1,\r\n\t\t\t'_createdDate': '02/03/2016',\r\n\t\t\t'_updatedDate': '04/26/2015'\r\n\t\t}, {\r\n\t\t\t'id': 76,\r\n\t\t\t'carId': 16,\r\n\t\t\t'specId': 0,\r\n\t\t\t'value': 'consequat varius',\r\n\t\t\t'_userId': 1,\r\n\t\t\t'_createdDate': '04/06/2014',\r\n\t\t\t'_updatedDate': '04/21/2013'\r\n\t\t}, {\r\n\t\t\t'id': 77,\r\n\t\t\t'carId': 16,\r\n\t\t\t'specId': 1,\r\n\t\t\t'value': 'mauris morbi non',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '11/15/2017',\r\n\t\t\t'_updatedDate': '02/10/2017'\r\n\t\t}, {\r\n\t\t\t'id': 78,\r\n\t\t\t'carId': 16,\r\n\t\t\t'specId': 1,\r\n\t\t\t'value': 'iaculis justo in hac habitasse',\r\n\t\t\t'_userId': 1,\r\n\t\t\t'_createdDate': '01/11/2013',\r\n\t\t\t'_updatedDate': '12/20/2010'\r\n\t\t}, {\r\n\t\t\t'id': 79,\r\n\t\t\t'carId': 16,\r\n\t\t\t'specId': 2,\r\n\t\t\t'value': 'dui',\r\n\t\t\t'_userId': 1,\r\n\t\t\t'_createdDate': '02/29/2016',\r\n\t\t\t'_updatedDate': '04/20/2014'\r\n\t\t}, {\r\n\t\t\t'id': 80,\r\n\t\t\t'carId': 16,\r\n\t\t\t'specId': 3,\r\n\t\t\t'value': 'pulvinar nulla pede ullamcorper augue',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '10/31/2013',\r\n\t\t\t'_updatedDate': '12/06/2010'\r\n\t\t}, {\r\n\t\t\t'id': 81,\r\n\t\t\t'carId': 17,\r\n\t\t\t'specId': 4,\r\n\t\t\t'value': 'congue elementum',\r\n\t\t\t'_userId': 1,\r\n\t\t\t'_createdDate': '07/17/2013',\r\n\t\t\t'_updatedDate': '01/28/2014'\r\n\t\t}, {\r\n\t\t\t'id': 82,\r\n\t\t\t'carId': 17,\r\n\t\t\t'specId': 5,\r\n\t\t\t'value': 'dapibus nulla suscipit ligula',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '08/24/2012',\r\n\t\t\t'_updatedDate': '02/04/2018'\r\n\t\t}, {\r\n\t\t\t'id': 83,\r\n\t\t\t'carId': 17,\r\n\t\t\t'specId': 6,\r\n\t\t\t'value': 'donec ut dolor',\r\n\t\t\t'_userId': 1,\r\n\t\t\t'_createdDate': '01/10/2012',\r\n\t\t\t'_updatedDate': '06/07/2010'\r\n\t\t}, {\r\n\t\t\t'id': 84,\r\n\t\t\t'carId': 17,\r\n\t\t\t'specId': 7,\r\n\t\t\t'value': 'non lectus aliquam sit amet',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '01/26/2014',\r\n\t\t\t'_updatedDate': '02/06/2016'\r\n\t\t}, {\r\n\t\t\t'id': 85,\r\n\t\t\t'carId': 17,\r\n\t\t\t'specId': 8,\r\n\t\t\t'value': 'sapien iaculis congue vivamus',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '01/01/2018',\r\n\t\t\t'_updatedDate': '10/20/2012'\r\n\t\t}, {\r\n\t\t\t'id': 86,\r\n\t\t\t'carId': 18,\r\n\t\t\t'specId': 9,\r\n\t\t\t'value': 'dui vel sem',\r\n\t\t\t'_userId': 1,\r\n\t\t\t'_createdDate': '04/04/2016',\r\n\t\t\t'_updatedDate': '01/19/2015'\r\n\t\t}, {\r\n\t\t\t'id': 87,\r\n\t\t\t'carId': 18,\r\n\t\t\t'specId': 0,\r\n\t\t\t'value': 'posuere cubilia curae',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '06/03/2015',\r\n\t\t\t'_updatedDate': '12/22/2014'\r\n\t\t}, {\r\n\t\t\t'id': 88,\r\n\t\t\t'carId': 18,\r\n\t\t\t'specId': 1,\r\n\t\t\t'value': 'nascetur ridiculus',\r\n\t\t\t'_userId': 1,\r\n\t\t\t'_createdDate': '03/05/2018',\r\n\t\t\t'_updatedDate': '08/04/2015'\r\n\t\t}, {\r\n\t\t\t'id': 89,\r\n\t\t\t'carId': 18,\r\n\t\t\t'specId': 1,\r\n\t\t\t'value': 'vestibulum sagittis sapien cum sociis',\r\n\t\t\t'_userId': 1,\r\n\t\t\t'_createdDate': '12/26/2017',\r\n\t\t\t'_updatedDate': '07/08/2017'\r\n\t\t}, {\r\n\t\t\t'id': 90,\r\n\t\t\t'carId': 18,\r\n\t\t\t'specId': 2,\r\n\t\t\t'value': 'neque vestibulum eget vulputate ut',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '09/22/2014',\r\n\t\t\t'_updatedDate': '06/08/2015'\r\n\t\t}, {\r\n\t\t\t'id': 91,\r\n\t\t\t'carId': 19,\r\n\t\t\t'specId': 3,\r\n\t\t\t'value': 'habitasse platea',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '10/06/2011',\r\n\t\t\t'_updatedDate': '07/03/2017'\r\n\t\t}, {\r\n\t\t\t'id': 92,\r\n\t\t\t'carId': 19,\r\n\t\t\t'specId': 4,\r\n\t\t\t'value': 'tortor sollicitudin',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '03/20/2014',\r\n\t\t\t'_updatedDate': '10/20/2015'\r\n\t\t}, {\r\n\t\t\t'id': 93,\r\n\t\t\t'carId': 19,\r\n\t\t\t'specId': 5,\r\n\t\t\t'value': 'posuere cubilia curae nulla dapibus',\r\n\t\t\t'_userId': 1,\r\n\t\t\t'_createdDate': '04/27/2012',\r\n\t\t\t'_updatedDate': '08/03/2012'\r\n\t\t}, {\r\n\t\t\t'id': 94,\r\n\t\t\t'carId': 19,\r\n\t\t\t'specId': 6,\r\n\t\t\t'value': 'nulla',\r\n\t\t\t'_userId': 1,\r\n\t\t\t'_createdDate': '08/16/2016',\r\n\t\t\t'_updatedDate': '11/02/2016'\r\n\t\t}, {\r\n\t\t\t'id': 95,\r\n\t\t\t'carId': 19,\r\n\t\t\t'specId': 7,\r\n\t\t\t'value': 'vel dapibus at diam nam',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '08/24/2013',\r\n\t\t\t'_updatedDate': '03/02/2011'\r\n\t\t}, {\r\n\t\t\t'id': 96,\r\n\t\t\t'carId': 20,\r\n\t\t\t'specId': 8,\r\n\t\t\t'value': 'ultrices posuere cubilia',\r\n\t\t\t'_userId': 1,\r\n\t\t\t'_createdDate': '07/04/2010',\r\n\t\t\t'_updatedDate': '06/07/2010'\r\n\t\t}, {\r\n\t\t\t'id': 97,\r\n\t\t\t'carId': 20,\r\n\t\t\t'specId': 9,\r\n\t\t\t'value': 'ut blandit non interdum',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '04/25/2018',\r\n\t\t\t'_updatedDate': '06/24/2013'\r\n\t\t}, {\r\n\t\t\t'id': 98,\r\n\t\t\t'carId': 20,\r\n\t\t\t'specId': 0,\r\n\t\t\t'value': 'amet erat',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '07/13/2017',\r\n\t\t\t'_updatedDate': '12/28/2014'\r\n\t\t}, {\r\n\t\t\t'id': 99,\r\n\t\t\t'carId': 20,\r\n\t\t\t'specId': 1,\r\n\t\t\t'value': 'ligula',\r\n\t\t\t'_userId': 1,\r\n\t\t\t'_createdDate': '03/18/2015',\r\n\t\t\t'_updatedDate': '09/14/2012'\r\n\t\t}, {\r\n\t\t\t'id': 100,\r\n\t\t\t'carId': 20,\r\n\t\t\t'specId': 1,\r\n\t\t\t'value': 'id',\r\n\t\t\t'_userId': 1,\r\n\t\t\t'_createdDate': '04/02/2011',\r\n\t\t\t'_updatedDate': '02/16/2017'\r\n\t\t}];\r\n}\r\n","export class CarsTable {\r\n\tpublic static cars: any = [\r\n\t\t{\r\n\t\t\t'id': 1,\r\n\t\t\t'model': 'Elise',\r\n\t\t\t'manufacture': 'Lotus',\r\n\t\t\t'modelYear': 2004,\r\n\t\t\t'mileage': 116879,\r\n\t\t\t// tslint:disable-next-line:max-line-length\r\n\t\t\t'description': `The Lotus Elise first appeared in 1996 and revolutionised small sports car design with its lightweight extruded aluminium chassis and composite body. There have been many variations, but the basic principle remain the same.`,\r\n\t\t\t'color': 'Red',\r\n\t\t\t'price': 18347,\r\n\t\t\t'condition': 1,\r\n\t\t\t'createdDate': '09/30/2017',\r\n\t\t\t'status': 0,\r\n\t\t\t'VINCode': '1FTWX3D52AE575540',\r\n\t\t\t'_userId': 1,\r\n\t\t\t'_createdDate': '03/31/2015',\r\n\t\t\t'_updatedDate': '05/08/2015'\r\n\t\t}, {\r\n\t\t\t'id': 2,\r\n\t\t\t'model': 'Sunbird',\r\n\t\t\t'manufacture': 'Pontiac',\r\n\t\t\t'modelYear': 1984,\r\n\t\t\t'mileage': 99515,\r\n\t\t\t// tslint:disable-next-line:max-line-length\r\n\t\t\t'description': `The Pontiac Sunbird is an automobile that was produced by Pontiac, initially as a subcompact for the 1976 to 1980 model years,and later as a compact for the 1982 to 1994 model years. The Sunbird badge ran for 18 years (with a hiatus during the 1981 and 1982 model years, as the 1982 model was called J2000) and was then replaced in 1995 by the Pontiac Sunfire. Through the years the Sunbird was available in notchback coupé, sedan, hatchback, station wagon, and convertible body styles.`,\r\n\t\t\t'color': 'Khaki',\r\n\t\t\t'price': 165956,\r\n\t\t\t'condition': 0,\r\n\t\t\t'createdDate': '03/22/2018',\r\n\t\t\t'status': 1,\r\n\t\t\t'VINCode': 'JM1NC2EF8A0293556',\r\n\t\t\t'_userId': 1,\r\n\t\t\t'_createdDate': '11/11/2016',\r\n\t\t\t'_updatedDate': '09/01/2016'\r\n\t\t}, {\r\n\t\t\t'id': 3,\r\n\t\t\t'model': 'Amigo',\r\n\t\t\t'manufacture': 'Isuzu',\r\n\t\t\t'modelYear': 1993,\r\n\t\t\t'mileage': 138027,\r\n\t\t\t// tslint:disable-next-line:max-line-length\r\n\t\t\t'description': `The Isuzu MU is a mid-size SUV that was produced by the Japan-based manufacturer Isuzu. The three-door MU was introduced in 1989, followed in 1990 by the five-door version called Isuzu MU Wizard, both of which stopped production in 1998 to be replaced by a second generation. This time, the five-door version dropped the \"MU\" prefix, to become the Isuzu Wizard. The acronym \"MU\" is short for \"Mysterious Utility\". Isuzu manufactured several variations to the MU and its derivates for sale in other countries.`,\r\n\t\t\t'color': 'Aquamarine',\r\n\t\t\t'price': 45684,\r\n\t\t\t'condition': 0,\r\n\t\t\t'createdDate': '03/06/2018',\r\n\t\t\t'status': 0,\r\n\t\t\t'VINCode': '1G6DG8E56C0973889',\r\n\t\t\t'_userId': 1,\r\n\t\t\t'_createdDate': '08/14/2012',\r\n\t\t\t'_updatedDate': '03/21/2013'\r\n\t\t}, {\r\n\t\t\t'id': 4,\r\n\t\t\t'model': 'LS',\r\n\t\t\t'manufacture': 'Lexus',\r\n\t\t\t'modelYear': 2004,\r\n\t\t\t'mileage': 183068,\r\n\t\t\t// tslint:disable-next-line:max-line-length\r\n\t\t\t'description': `The Lexus LS (Japanese: レクサス・LS, Rekusasu LS) is a full-size luxury car (F-segment in Europe) serving as the flagship model of Lexus, the luxury division of Toyota. For the first four generations, all LS models featured V8 engines and were predominantly rear-wheel-drive, with Lexus also offering all-wheel-drive, hybrid, and long-wheelbase variants. The fifth generation changed to using a V6 engine with no V8 option, and the long wheelbase variant was removed entirely.`,\r\n\t\t\t'color': 'Mauv',\r\n\t\t\t'price': 95410,\r\n\t\t\t'condition': 1,\r\n\t\t\t'createdDate': '02/03/2018',\r\n\t\t\t'status': 1,\r\n\t\t\t'VINCode': '2T1BU4EE6DC859114',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '11/25/2012',\r\n\t\t\t'_updatedDate': '08/15/2013'\r\n\t\t}, {\r\n\t\t\t'id': 5,\r\n\t\t\t'model': 'Paseo',\r\n\t\t\t'manufacture': 'Toyota',\r\n\t\t\t'modelYear': 1997,\r\n\t\t\t'mileage': 74884,\r\n\t\t\t// tslint:disable-next-line:max-line-length\r\n\t\t\t'description': `The Toyota Paseo (known as the Cynos in Japan and other regions) is a sports styled compact car sold from 1991–1999 and was loosely based on the Tercel. It was available as a coupe and in later models as a convertible. Toyota stopped selling the car in the United States in 1997, however the car continued to be sold in Canada, Europe and Japan until 1999, but had no direct replacement. The Paseo, like the Tercel, shares a platform with the Starlet. Several parts are interchangeable between the three`,\r\n\t\t\t'color': 'Pink',\r\n\t\t\t'price': 24796,\r\n\t\t\t'condition': 1,\r\n\t\t\t'createdDate': '08/13/2017',\r\n\t\t\t'status': 0,\r\n\t\t\t'VINCode': '1D7RB1GP0AS597432',\r\n\t\t\t'_userId': 1,\r\n\t\t\t'_createdDate': '11/21/2016',\r\n\t\t\t'_updatedDate': '10/09/2012'\r\n\t\t}, {\r\n\t\t\t'id': 6,\r\n\t\t\t'model': 'M',\r\n\t\t\t'manufacture': 'Infiniti',\r\n\t\t\t'modelYear': 2009,\r\n\t\t\t'mileage': 194846,\r\n\t\t\t// tslint:disable-next-line:max-line-length\r\n\t\t\t'description': `The Infiniti M is a line of mid-size luxury (executive) cars from the Infiniti luxury division of Nissan.\\r\\nThe first iteration was the M30 Coupe/Convertible, which were rebadged JDM Nissan Leopard.\\r\\nAfter a long hiatus, the M nameplate was used for Infiniti's mid-luxury sedans (executive cars). First was the short-lived M45 sedan, a rebadged version of the Japanese-spec Nissan Gloria. The next generations, the M35/45 and M37/56/35h/30d, became the flagship of the Infiniti brand and are based on the JDM Nissan Fuga.`,\r\n\t\t\t'color': 'Puce',\r\n\t\t\t'price': 30521,\r\n\t\t\t'condition': 1,\r\n\t\t\t'createdDate': '01/27/2018',\r\n\t\t\t'status': 0,\r\n\t\t\t'VINCode': 'YV1940AS1D1542424',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '03/13/2016',\r\n\t\t\t'_updatedDate': '12/14/2013'\r\n\t\t}, {\r\n\t\t\t'id': 7,\r\n\t\t\t'model': 'Phantom',\r\n\t\t\t'manufacture': 'Rolls-Royce',\r\n\t\t\t'modelYear': 2008,\r\n\t\t\t'mileage': 164124,\r\n\t\t\t// tslint:disable-next-line:max-line-length\r\n\t\t\t'description': `The Rolls-Royce Phantom VIII is a luxury saloon car manufactured by Rolls-Royce Motor Cars. It is the eighth and current generation of Rolls-Royce Phantom, and the second launched by Rolls-Royce under BMW ownership. It is offered in two wheelbase lengths`,\r\n\t\t\t'color': 'Purple',\r\n\t\t\t'price': 196247,\r\n\t\t\t'condition': 1,\r\n\t\t\t'createdDate': '09/28/2017',\r\n\t\t\t'status': 1,\r\n\t\t\t'VINCode': '3VWML7AJ1DM234625',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '03/31/2012',\r\n\t\t\t'_updatedDate': '06/27/2014'\r\n\t\t}, {\r\n\t\t\t'id': 8,\r\n\t\t\t'model': 'QX',\r\n\t\t\t'manufacture': 'Infiniti',\r\n\t\t\t'modelYear': 2002,\r\n\t\t\t'mileage': 57410,\r\n\t\t\t// tslint:disable-next-line:max-line-length\r\n\t\t\t'description': `The Infiniti QX80 (called the Infiniti QX56 until 2013) is a full-size luxury SUV built by Nissan Motor Company's Infiniti division. The naming convention originally adhered to the current trend of using a numeric designation derived from the engine's displacement, thus QX56 since the car has a 5.6-liter engine. From the 2014 model year, the car was renamed the QX80, as part of Infiniti's model name rebranding. The new name carries no meaning beyond suggesting that the vehicle is larger than smaller models such as the QX60`,\r\n\t\t\t'color': 'Green',\r\n\t\t\t'price': 185775,\r\n\t\t\t'condition': 1,\r\n\t\t\t'createdDate': '11/15/2017',\r\n\t\t\t'status': 0,\r\n\t\t\t'VINCode': 'WDDHF2EB9CA161524',\r\n\t\t\t'_userId': 1,\r\n\t\t\t'_createdDate': '03/17/2013',\r\n\t\t\t'_updatedDate': '09/05/2014'\r\n\t\t}, {\r\n\t\t\t'id': 9,\r\n\t\t\t'model': 'Daytona',\r\n\t\t\t'manufacture': 'Dodge',\r\n\t\t\t'modelYear': 1993,\r\n\t\t\t'mileage': 4444,\r\n\t\t\t// tslint:disable-next-line:max-line-length\r\n\t\t\t'description': `The Dodge Daytona was an automobile which was produced by the Chrysler Corporation under their Dodge division from 1984 to 1993. It was a front-wheel drive hatchback based on the Chrysler G platform, which was derived from the Chrysler K platform. The Chrysler Laser was an upscale rebadged version of the Daytona. The Daytona was restyled for 1987, and again for 1992. It replaced the Mitsubishi Galant-based Challenger, and slotted between the Charger and the Conquest. The Daytona was replaced by the 1995 Dodge Avenger, which was built by Mitsubishi Motors. The Daytona derives its name mainly from the Dodge Charger Daytona, which itself was named after the Daytona 500 race in Daytona Beach, Florida.`,\r\n\t\t\t'color': 'Maroon',\r\n\t\t\t'price': 171898,\r\n\t\t\t'condition': 0,\r\n\t\t\t'createdDate': '12/24/2017',\r\n\t\t\t'status': 1,\r\n\t\t\t'VINCode': 'WBAET37422N752051',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '11/17/2012',\r\n\t\t\t'_updatedDate': '03/17/2018'\r\n\t\t}, {\r\n\t\t\t'id': 10,\r\n\t\t\t'model': '1500 Silverado',\r\n\t\t\t'manufacture': 'Chevrolet',\r\n\t\t\t'modelYear': 1999,\r\n\t\t\t'mileage': 195310,\r\n\t\t\t// tslint:disable-next-line:max-line-length\r\n\t\t\t'description': `The Chevrolet Silverado, and its mechanically identical cousin, the GMC Sierra, are a series of full-size and heavy-duty pickup trucks manufactured by General Motors and introduced in 1998 as the successor to the long-running Chevrolet C/K line. The Silverado name was taken from a trim level previously used on its predecessor, the Chevrolet C/K pickup truck from 1975 through 1998. General Motors continues to offer a GMC-badged variant of the Chevrolet full-size pickup under the GMC Sierra name, first used in 1987 for its variant of the GMT400 platform trucks.`,\r\n\t\t\t'color': 'Blue',\r\n\t\t\t'price': 25764,\r\n\t\t\t'condition': 0,\r\n\t\t\t'createdDate': '08/30/2017',\r\n\t\t\t'status': 1,\r\n\t\t\t'VINCode': '1N6AF0LX6EN590806',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '10/06/2013',\r\n\t\t\t'_updatedDate': '03/27/2017'\r\n\t\t}, {\r\n\t\t\t'id': 11,\r\n\t\t\t'model': 'CTS',\r\n\t\t\t'manufacture': 'Cadillac',\r\n\t\t\t'modelYear': 2012,\r\n\t\t\t'mileage': 170862,\r\n\t\t\t// tslint:disable-next-line:max-line-length\r\n\t\t\t'description': `The Cadillac CTS is a mid-size luxury car / executive car designed, engineered, manufactured and marketed by General Motors, and now in its third generation. \\r\\nInitially available only as a 4-door sedan on the GM Sigma platform, GM had offered the second generation CTS in three body styles: 4-door sedan, 2-door coupe, and 5-door sport wagon also using the Sigma platform — and the third generation in coupe and sedan configurations, using a stretched version of the GM Alpha platform.\\r\\nWayne Cherry and Kip Wasenko designed the exterior of the first generation CTS, marking the production debut of a design language (marketed as \"Art and Science\") first seen on the Evoq concept car. Bob Boniface and Robin Krieg designed the exterior of the third generation CTS`,\r\n\t\t\t'color': 'Crimson',\r\n\t\t\t'price': 80588,\r\n\t\t\t'condition': 0,\r\n\t\t\t'createdDate': '02/15/2018',\r\n\t\t\t'status': 0,\r\n\t\t\t'VINCode': '1G4HR54KX4U506530',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '09/04/2016',\r\n\t\t\t'_updatedDate': '09/17/2012'\r\n\t\t}, {\r\n\t\t\t'id': 12,\r\n\t\t\t'model': 'Astro',\r\n\t\t\t'manufacture': 'Chevrolet',\r\n\t\t\t'modelYear': 1995,\r\n\t\t\t'mileage': 142137,\r\n\t\t\t// tslint:disable-next-line:max-line-length\r\n\t\t\t'description': `The Chevrolet Astro was a rear-wheel drive van/minivan manufactured and marketed by the American automaker Chevrolet from 1985 to 2005 and over two build generations. Along with its rebadged variant, the GMC Safari, the Astro was marketed in passenger as well as cargo and livery configurations—featuring a V6 engine, unibody construction with a separate front engine/suspension sub-frame, leaf-spring rear suspension, rear bi-parting doors, and a seating capacity of up to eight passengers`,\r\n\t\t\t'color': 'Teal',\r\n\t\t\t'price': 72430,\r\n\t\t\t'condition': 1,\r\n\t\t\t'createdDate': '07/31/2017',\r\n\t\t\t'status': 0,\r\n\t\t\t'VINCode': 'KMHGH4JH2DU676107',\r\n\t\t\t'_userId': 1,\r\n\t\t\t'_createdDate': '02/12/2013',\r\n\t\t\t'_updatedDate': '01/26/2017'\r\n\t\t}, {\r\n\t\t\t'id': 13,\r\n\t\t\t'model': 'XL7',\r\n\t\t\t'manufacture': 'Suzuki',\r\n\t\t\t'modelYear': 2009,\r\n\t\t\t'mileage': 165165,\r\n\t\t\t// tslint:disable-next-line:max-line-length\r\n\t\t\t'description': `The Suzuki XL-7 (styled as XL7 for the second generation) is Suzuki's mid-sized SUV that was made from 1998 to 2009, over two generations. It was slotted above the Grand Vitara in Suzuki's lineup.`,\r\n\t\t\t'color': 'Puce',\r\n\t\t\t'price': 118667,\r\n\t\t\t'condition': 0,\r\n\t\t\t'createdDate': '02/04/2018',\r\n\t\t\t'status': 0,\r\n\t\t\t'VINCode': '1N6AF0LX9EN733005',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '10/31/2015',\r\n\t\t\t'_updatedDate': '08/24/2015'\r\n\t\t}, {\r\n\t\t\t'id': 14,\r\n\t\t\t'model': 'SJ 410',\r\n\t\t\t'manufacture': 'Suzuki',\r\n\t\t\t'modelYear': 1984,\r\n\t\t\t'mileage': 176074,\r\n\t\t\t// tslint:disable-next-line:max-line-length\r\n\t\t\t'description': `The SJ-Series was introduced to the United States (Puerto Rico (SJ-410) and Canada earlier) in 1985 for the 1986 model year. It was priced at $6200 and 47,000 were sold in its first year. The Samurai had a 1.3 liter, 63 hp (47 kW), 4-cylinder engine and was available as a convertible or a hardtop, and with or without a rear seat. The Suzuki Samurai became intensely popular within the serious 4WD community for its good off-road performance and reliability compared to other 4WDs of the time. This is due to the fact that while very compact and light, it is a real 4WD vehicle equipped with a transfer case, switchable 4WD and low range. Its lightness makes it a very nimble off-roader less prone to sinking in softer ground than heavier types. It is also considered a great beginner off-roader due to its simple design and ease of engine and suspension modifications.`,\r\n\t\t\t'color': 'Orange',\r\n\t\t\t'price': 84325,\r\n\t\t\t'condition': 0,\r\n\t\t\t'createdDate': '12/22/2017',\r\n\t\t\t'status': 0,\r\n\t\t\t'VINCode': '2C3CDYBT6DH183756',\r\n\t\t\t'_userId': 1,\r\n\t\t\t'_createdDate': '05/30/2010',\r\n\t\t\t'_updatedDate': '01/02/2014'\r\n\t\t}, {\r\n\t\t\t'id': 15,\r\n\t\t\t'model': 'F-Series',\r\n\t\t\t'manufacture': 'Ford',\r\n\t\t\t'modelYear': 1995,\r\n\t\t\t'mileage': 53030,\r\n\t\t\t// tslint:disable-next-line:max-line-length\r\n\t\t\t'description': `The Ford F-Series is a series of light-duty trucks and medium-duty trucks (Class 2-7) that have been marketed and manufactured by Ford Motor Company since 1948. While most variants of the F-Series trucks are full-size pickup trucks, the F-Series also includes chassis cab trucks and commercial vehicles. The Ford F-Series has been the best-selling vehicle in the United States since 1986 and the best-selling pickup since 1977.[1][2] It is also the best selling vehicle in Canada.[3] As of the 2018 model year, the F-Series generates $41.0 billion in annual revenue for Ford, making the F-Series brand more valuable than Coca-Cola and Nike.`,\r\n\t\t\t'color': 'Aquamarine',\r\n\t\t\t'price': 77108,\r\n\t\t\t'condition': 0,\r\n\t\t\t'createdDate': '01/09/2018',\r\n\t\t\t'status': 0,\r\n\t\t\t'VINCode': 'WBAVB33526P873481',\r\n\t\t\t'_userId': 1,\r\n\t\t\t'_createdDate': '12/29/2016',\r\n\t\t\t'_updatedDate': '02/14/2012'\r\n\t\t}, {\r\n\t\t\t'id': 16,\r\n\t\t\t'model': 'HS',\r\n\t\t\t'manufacture': 'Lexus',\r\n\t\t\t'modelYear': 2011,\r\n\t\t\t'mileage': 84718,\r\n\t\t\t// tslint:disable-next-line:max-line-length\r\n\t\t\t'description': `The Lexus HS (Japanese: レクサス・HS, Rekusasu HS) is a dedicated hybrid vehicle introduced by Lexus as a new entry-level luxury compact sedan in 2009.[2] Built on the Toyota New MC platform,[3] it is classified as a compact under Japanese regulations concerning vehicle exterior dimensions and engine displacement. Unveiled at the North American International Auto Show in January 2009, the HS 250h went on sale in July 2009 in Japan, followed by the United States in August 2009 as a 2010 model. The HS 250h represented the first dedicated hybrid vehicle in the Lexus lineup, as well as the first offered with an inline-four gasoline engine.[4] Bioplastic materials are used for the vehicle interior.[5] With a total length of 184.8 inches, the Lexus HS is slightly larger than the Lexus IS, but still smaller than the mid-size Lexus ES.`,\r\n\t\t\t'color': 'Purple',\r\n\t\t\t'price': 140170,\r\n\t\t\t'condition': 0,\r\n\t\t\t'createdDate': '11/14/2017',\r\n\t\t\t'status': 1,\r\n\t\t\t'VINCode': '1FTWF3A56AE545514',\r\n\t\t\t'_userId': 1,\r\n\t\t\t'_createdDate': '12/19/2014',\r\n\t\t\t'_updatedDate': '11/09/2014'\r\n\t\t}, {\r\n\t\t\t'id': 17,\r\n\t\t\t'model': 'Land Cruiser',\r\n\t\t\t'manufacture': 'Toyota',\r\n\t\t\t'modelYear': 2008,\r\n\t\t\t'mileage': 157019,\r\n\t\t\t// tslint:disable-next-line:max-line-length\r\n\t\t\t'description': `Production of the first generation Land Cruiser began in 1951 (90 units) as Toyota's version of a Jeep-like vehicle.[2][3] The Land Cruiser has been produced in convertible, hardtop, station wagon and cab chassis versions. The Land Cruiser's reliability and longevity has led to huge popularity, especially in Australia where it is the best-selling body-on-frame, four-wheel drive vehicle.[4] Toyota also extensively tests the Land Cruiser in the Australian outback – considered to be one of the toughest operating environments in both temperature and terrain. In Japan, the Land Cruiser is exclusive to Toyota Japanese dealerships called Toyota Store.`,\r\n\t\t\t'color': 'Crimson',\r\n\t\t\t'price': 72638,\r\n\t\t\t'condition': 1,\r\n\t\t\t'createdDate': '08/08/2017',\r\n\t\t\t'status': 1,\r\n\t\t\t'VINCode': '3C3CFFDR2FT957799',\r\n\t\t\t'_userId': 1,\r\n\t\t\t'_createdDate': '05/30/2010',\r\n\t\t\t'_updatedDate': '11/06/2012'\r\n\t\t}, {\r\n\t\t\t'id': 18,\r\n\t\t\t'model': 'Wrangler',\r\n\t\t\t'manufacture': 'Jeep',\r\n\t\t\t'modelYear': 1994,\r\n\t\t\t'mileage': 55857,\r\n\t\t\t// tslint:disable-next-line:max-line-length\r\n\t\t\t'description': `The Jeep Wrangler is a series of compact and mid-size (Wrangler Unlimited and Wrangler 4-door JL) four-wheel drive off-road vehicle models, manufactured by Jeep since 1986, and currently migrating from its third into its fourth generation. The Wrangler JL was unveiled in late 2017 and will be produced at Jeep's Toledo Complex.`,\r\n\t\t\t'color': 'Red',\r\n\t\t\t'price': 193523,\r\n\t\t\t'condition': 0,\r\n\t\t\t'createdDate': '02/28/2018',\r\n\t\t\t'status': 1,\r\n\t\t\t'VINCode': '3C4PDCAB7FT652291',\r\n\t\t\t'_userId': 1,\r\n\t\t\t'_createdDate': '10/26/2011',\r\n\t\t\t'_updatedDate': '10/04/2016'\r\n\t\t}, {\r\n\t\t\t'id': 19,\r\n\t\t\t'model': 'Sunbird',\r\n\t\t\t'manufacture': 'Pontiac',\r\n\t\t\t'modelYear': 1994,\r\n\t\t\t'mileage': 165202,\r\n\t\t\t// tslint:disable-next-line:max-line-length\r\n\t\t\t'description': `The Pontiac Sunbird is an automobile that was produced by Pontiac, initially as a subcompact for the 1976 to 1980 model years, and later as a compact for the 1982 to 1994 model years. The Sunbird badge ran for 18 years (with a hiatus during the 1981 and 1982 model years, as the 1982 model was called J2000) and was then replaced in 1995 by the Pontiac Sunfire. Through the years the Sunbird was available in notchback coupé, sedan, hatchback, station wagon, and convertible body styles.`,\r\n\t\t\t'color': 'Blue',\r\n\t\t\t'price': 198739,\r\n\t\t\t'condition': 0,\r\n\t\t\t'createdDate': '05/13/2017',\r\n\t\t\t'status': 1,\r\n\t\t\t'VINCode': '1GD22XEG9FZ103872',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '07/24/2013',\r\n\t\t\t'_updatedDate': '10/03/2013'\r\n\t\t}, {\r\n\t\t\t'id': 20,\r\n\t\t\t'model': 'A4',\r\n\t\t\t'manufacture': 'Audi',\r\n\t\t\t'modelYear': 1998,\r\n\t\t\t'mileage': 117958,\r\n\t\t\t// tslint:disable-next-line:max-line-length\r\n\t\t\t'description': `The A4 has been built in five generations and is based on the Volkswagen Group B platform. The first generation A4 succeeded the Audi 80. The automaker's internal numbering treats the A4 as a continuation of the Audi 80 lineage, with the initial A4 designated as the B5-series, followed by the B6, B7, B8 and the B9. The B8 and B9 versions of the A4 are built on the Volkswagen Group MLB platform shared with many other Audi models and potentially one Porsche model within Volkswagen Group`,\r\n\t\t\t'color': 'Yellow',\r\n\t\t\t'price': 159377,\r\n\t\t\t'condition': 0,\r\n\t\t\t'createdDate': '12/15/2017',\r\n\t\t\t'status': 1,\r\n\t\t\t'VINCode': '2C3CDXCT2FH350366',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '12/04/2014',\r\n\t\t\t'_updatedDate': '03/07/2014'\r\n\t\t}, {\r\n\t\t\t'id': 21,\r\n\t\t\t'model': 'Camry Solara',\r\n\t\t\t'manufacture': 'Toyota',\r\n\t\t\t'modelYear': 2006,\r\n\t\t\t'mileage': 22436,\r\n\t\t\t// tslint:disable-next-line:max-line-length\r\n\t\t\t'description': `The Toyota Camry Solara, popularly known as the Toyota Solara, is a mid-size coupe/convertible built by Toyota. The Camry Solara is mechanically based on the Toyota Camry and effectively replaced the discontinued Camry Coupe (XV10); however, in contrast with its predecessor's conservative design, the Camry Solara was designed with a greater emphasis on sportiness, with more rakish styling, and uprated suspension and engine tuning intended to provide a sportier feel.[5] The coupe was launched in late 1998 as a 1999 model.[1] In 2000, the convertible was introduced, effectively replacing the Celica convertible in Toyota's North American lineup`,\r\n\t\t\t'color': 'Green',\r\n\t\t\t'price': 122562,\r\n\t\t\t'condition': 0,\r\n\t\t\t'createdDate': '07/11/2017',\r\n\t\t\t'status': 0,\r\n\t\t\t'VINCode': '3C3CFFHH6DT874066',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '03/21/2018',\r\n\t\t\t'_updatedDate': '02/23/2014'\r\n\t\t}, {\r\n\t\t\t'id': 22,\r\n\t\t\t'model': 'Tribeca',\r\n\t\t\t'manufacture': 'Subaru',\r\n\t\t\t'modelYear': 2007,\r\n\t\t\t'mileage': 127958,\r\n\t\t\t// tslint:disable-next-line:max-line-length\r\n\t\t\t'description': `The Subaru Tribeca is a mid-size crossover SUV made from 2005 to 2014. Released in some markets, including Canada, as the Subaru B9 Tribeca, the name \"Tribeca\" derives from the Tribeca neighborhood of New York City.[1] Built on the Subaru Legacy platform and sold in five- and seven-seat configurations, the Tribeca was intended to be sold alongside a slightly revised version known as the Saab 9-6. Saab, at the time a subsidiary of General Motors (GM), abandoned the 9-6 program just prior to its release subsequent to GM's 2005 divestiture of its 20 percent stake in FHI.`,\r\n\t\t\t'color': 'Yellow',\r\n\t\t\t'price': 90221,\r\n\t\t\t'condition': 1,\r\n\t\t\t'createdDate': '11/12/2017',\r\n\t\t\t'status': 0,\r\n\t\t\t'VINCode': 'WVWGU7AN9AE957575',\r\n\t\t\t'_userId': 1,\r\n\t\t\t'_createdDate': '07/04/2011',\r\n\t\t\t'_updatedDate': '08/25/2013'\r\n\t\t}, {\r\n\t\t\t'id': 23,\r\n\t\t\t'model': '1500 Club Coupe',\r\n\t\t\t'manufacture': 'GMC',\r\n\t\t\t'modelYear': 1997,\r\n\t\t\t'mileage': 95783,\r\n\t\t\t// tslint:disable-next-line:max-line-length\r\n\t\t\t'description': `GMC (General Motors Truck Company), formally the GMC Division of General Motors LLC, is a division of the American automobile manufacturer General Motors (GM) that primarily focuses on trucks and utility vehicles. GMC sells pickup and commercial trucks, buses, vans, military vehicles, and sport utility vehicles marketed worldwide by General Motors.`,\r\n\t\t\t'color': 'Teal',\r\n\t\t\t'price': 64376,\r\n\t\t\t'condition': 1,\r\n\t\t\t'createdDate': '06/28/2017',\r\n\t\t\t'status': 0,\r\n\t\t\t'VINCode': 'SCFBF04BX7G920997',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '02/21/2017',\r\n\t\t\t'_updatedDate': '01/29/2015'\r\n\t\t}, {\r\n\t\t\t'id': 24,\r\n\t\t\t'model': 'Firebird',\r\n\t\t\t'manufacture': 'Pontiac',\r\n\t\t\t'modelYear': 2002,\r\n\t\t\t'mileage': 74063,\r\n\t\t\t// tslint:disable-next-line:max-line-length\r\n\t\t\t'description': `The Pontiac Firebird is an American automobile built by Pontiac from the 1967 to the 2002 model years. Designed as a pony car to compete with the Ford Mustang, it was introduced 23 February 1967, the same model year as GM's Chevrolet division platform-sharing Camaro.[1] This also coincided with the release of the 1967 Mercury Cougar, Ford's upscale, platform-sharing version of the Mustang. The name \"Firebird\" was also previously used by GM for the General Motors Firebird 1950s and early-1960s`,\r\n\t\t\t'color': 'Puce',\r\n\t\t\t'price': 94178,\r\n\t\t\t'condition': 1,\r\n\t\t\t'createdDate': '09/13/2017',\r\n\t\t\t'status': 0,\r\n\t\t\t'VINCode': '3C63D2JL5CG563879',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '05/11/2014',\r\n\t\t\t'_updatedDate': '11/24/2012'\r\n\t\t}, {\r\n\t\t\t'id': 25,\r\n\t\t\t'model': 'RAV4',\r\n\t\t\t'manufacture': 'Toyota',\r\n\t\t\t'modelYear': 1996,\r\n\t\t\t'mileage': 99461,\r\n\t\t\t// tslint:disable-next-line:max-line-length\r\n\t\t\t'description': `The Toyota RAV4 (Japanese: トヨタ RAV4 Toyota Ravufō) is a compact crossover SUV (sport utility vehicle) produced by the Japanese automobile manufacturer Toyota. This was the first compact crossover SUV;[1] it made its debut in Japan and Europe in 1994,[2] and in North America in 1995. The vehicle was designed for consumers wanting a vehicle that had most of the benefits of SUVs, such as increased cargo room, higher visibility, and the option of full-time four-wheel drive, along with the maneuverability and fuel economy of a compact car. Although not all RAV4s are four-wheel-drive, RAV4 stands for \"Recreational Activity Vehicle: 4-wheel drive\", because the aforementioned equipment is an option in select countries`,\r\n\t\t\t'color': 'Goldenrod',\r\n\t\t\t'price': 48342,\r\n\t\t\t'condition': 0,\r\n\t\t\t'createdDate': '12/29/2017',\r\n\t\t\t'status': 0,\r\n\t\t\t'VINCode': '2C4RDGDG6DR836144',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '04/23/2011',\r\n\t\t\t'_updatedDate': '07/19/2016'\r\n\t\t}, {\r\n\t\t\t'id': 26,\r\n\t\t\t'model': 'Amanti / Opirus',\r\n\t\t\t'manufacture': 'Kia',\r\n\t\t\t'modelYear': 2007,\r\n\t\t\t'mileage': 189651,\r\n\t\t\t// tslint:disable-next-line:max-line-length\r\n\t\t\t'description': `The Kia Opirus was an executive car manufactured and marketed by Kia Motors that was launched in April 2003 and was marketed globally under various nameplates, prominently as the Amanti. It was considered to be Kia's flagship vehicle.`,\r\n\t\t\t'color': 'Indigo',\r\n\t\t\t'price': 44292,\r\n\t\t\t'condition': 1,\r\n\t\t\t'createdDate': '09/01/2017',\r\n\t\t\t'status': 1,\r\n\t\t\t'VINCode': '1C4SDHCT2CC055294',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '04/09/2018',\r\n\t\t\t'_updatedDate': '04/17/2014'\r\n\t\t}, {\r\n\t\t\t'id': 27,\r\n\t\t\t'model': 'S60',\r\n\t\t\t'manufacture': 'Volvo',\r\n\t\t\t'modelYear': 2001,\r\n\t\t\t'mileage': 78963,\r\n\t\t\t// tslint:disable-next-line:max-line-length\r\n\t\t\t'description': `First introduced in 2004, Volvo's S60 R used a Haldex all-wheel-drive system mated to a 300 PS (221 kW; 296 hp) / 400 N⋅m (300 lbf⋅ft) inline-5. The 2004–2005 models came with a 6-speed manual transmission, or an available 5-speed automatic which allowed only 258 lb⋅ft (350 N⋅m) torque in 1st and 2nd gears. The 2006–2007 models came with a 6-speed manual or 6-speed automatic transmission (which was no longer torque-restricted)`,\r\n\t\t\t'color': 'Goldenrod',\r\n\t\t\t'price': 9440,\r\n\t\t\t'condition': 0,\r\n\t\t\t'createdDate': '11/06/2017',\r\n\t\t\t'status': 0,\r\n\t\t\t'VINCode': '3C6TD5CT5CG316067',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '01/11/2016',\r\n\t\t\t'_updatedDate': '04/18/2013'\r\n\t\t}, {\r\n\t\t\t'id': 28,\r\n\t\t\t'model': 'Grand Marquis',\r\n\t\t\t'manufacture': 'Mercury',\r\n\t\t\t'modelYear': 1984,\r\n\t\t\t'mileage': 153027,\r\n\t\t\t// tslint:disable-next-line:max-line-length\r\n\t\t\t'description': `The Mercury Grand Marquis is an automobile that was sold by the Mercury division of Ford Motor Company from 1975 to 2011. From 1975 to 1982, it was the premium model of the Mercury Marquis model line, becoming a standalone model line in 1983. For its entire production run, the Grand Marquis served as the flagship of the Mercury line, with the Ford (LTD) Crown Victoria serving as its Ford counterpart. In addition, from 1979 to 2011, the Grand Marquis shared the rear-wheel drive Panther platform alongside the Lincoln Town Car`,\r\n\t\t\t'color': 'Goldenrod',\r\n\t\t\t'price': 76027,\r\n\t\t\t'condition': 0,\r\n\t\t\t'createdDate': '12/16/2017',\r\n\t\t\t'status': 1,\r\n\t\t\t'VINCode': '3C3CFFJH2DT871398',\r\n\t\t\t'_userId': 1,\r\n\t\t\t'_createdDate': '04/04/2014',\r\n\t\t\t'_updatedDate': '08/24/2017'\r\n\t\t}, {\r\n\t\t\t'id': 29,\r\n\t\t\t'model': 'Talon',\r\n\t\t\t'manufacture': 'Eagle',\r\n\t\t\t'modelYear': 1991,\r\n\t\t\t'mileage': 111234,\r\n\t\t\t// tslint:disable-next-line:max-line-length\r\n\t\t\t'description': `Cosmetically, differences between the three were found in wheels, availability of colors, tail lights, front and rear bumpers, and spoilers. The Talon featured two-tone body color with a black 'greenhouse' (roof, pillars, door-mounted mirrors) regardless of the body color. The variants featured 5-speed manual or 4-speed automatic transmissions and a hood bulge on the left-hand side of the car in order for camshaft clearance on the 4G63 engine. The base model DL did not use this engine but still had a bulge as evident in the 1992 Talon brochure. 2nd Generation cars all had such a bulge, even with the inclusion of the 420A engine`,\r\n\t\t\t'color': 'Teal',\r\n\t\t\t'price': 157216,\r\n\t\t\t'condition': 0,\r\n\t\t\t'createdDate': '05/08/2017',\r\n\t\t\t'status': 1,\r\n\t\t\t'VINCode': 'YV1902FH1D2957659',\r\n\t\t\t'_userId': 1,\r\n\t\t\t'_createdDate': '04/16/2017',\r\n\t\t\t'_updatedDate': '01/14/2011'\r\n\t\t}, {\r\n\t\t\t'id': 30,\r\n\t\t\t'model': 'Passport',\r\n\t\t\t'manufacture': 'Honda',\r\n\t\t\t'modelYear': 2002,\r\n\t\t\t'mileage': 3812,\r\n\t\t\t// tslint:disable-next-line:max-line-length\r\n\t\t\t'description': `The Passport was a part of a partnership between Isuzu and Honda in the 1990s, which saw an exchange of passenger vehicles from Honda to Isuzu, such as the Isuzu Oasis, and trucks from Isuzu to Honda, such as the Passport and Acura SLX. This arrangement was convenient for both companies, as Isuzu discontinued passenger car production in 1993 after a corporate restructuring, and Honda was in desperate need a SUV, a segment that was growing in popularity in North America as well as Japan during the 1990s. The partnership ended in 2002 with the discontinuation of the Passport in favor of the Honda-engineered Pilot`,\r\n\t\t\t'color': 'Puce',\r\n\t\t\t'price': 41299,\r\n\t\t\t'condition': 1,\r\n\t\t\t'createdDate': '03/08/2018',\r\n\t\t\t'status': 0,\r\n\t\t\t'VINCode': 'WVWEU9AN4AE524071',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '07/31/2015',\r\n\t\t\t'_updatedDate': '07/03/2017'\r\n\t\t}, {\r\n\t\t\t'id': 31,\r\n\t\t\t'model': 'H3',\r\n\t\t\t'manufacture': 'Hummer',\r\n\t\t\t'modelYear': 2006,\r\n\t\t\t'mileage': 196321,\r\n\t\t\t// tslint:disable-next-line:max-line-length\r\n\t\t\t'description': `The Hummer H3 is a sport utility vehicle/off-road vehicle from Hummer that was produced from 2005 to 2010. Introduced for the 2006 model year, it was based on a highly modified GMT355 underpinning the Chevrolet Colorado/GMC Canyon compact pickup trucks that were also built at GM's Shreveport Operations in Shreveport, Louisiana and the Port Elizabeth plant in South Africa. The H3 was actually the smallest among the Hummer models. It was available either as a traditional midsize SUV or as a midsize pickup known as the H3T`,\r\n\t\t\t'color': 'Pink',\r\n\t\t\t'price': 186964,\r\n\t\t\t'condition': 1,\r\n\t\t\t'createdDate': '06/04/2017',\r\n\t\t\t'status': 1,\r\n\t\t\t'VINCode': '4T1BF1FK4FU746230',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '03/09/2014',\r\n\t\t\t'_updatedDate': '02/10/2017'\r\n\t\t}, {\r\n\t\t\t'id': 32,\r\n\t\t\t'model': 'Comanche',\r\n\t\t\t'manufacture': 'Jeep',\r\n\t\t\t'modelYear': 1992,\r\n\t\t\t'mileage': 72285,\r\n\t\t\t// tslint:disable-next-line:max-line-length\r\n\t\t\t'description': `The Jeep Comanche (designated MJ) is a pickup truck variant of the Cherokee compact SUV (1984–2001)[3] manufactured and marketed by Jeep for model years 1986-1992 in rear wheel (RWD) and four-wheel drive (4WD) models as well as two cargo bed lengths: six-feet (1.83 metres) and seven-feet (2.13 metres)`,\r\n\t\t\t'color': 'Mauv',\r\n\t\t\t'price': 145971,\r\n\t\t\t'condition': 1,\r\n\t\t\t'createdDate': '09/01/2017',\r\n\t\t\t'status': 0,\r\n\t\t\t'VINCode': '1J4PN2GK1BW745045',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '07/27/2013',\r\n\t\t\t'_updatedDate': '09/23/2016'\r\n\t\t}, {\r\n\t\t\t'id': 33,\r\n\t\t\t'model': 'Blazer',\r\n\t\t\t'manufacture': 'Chevrolet',\r\n\t\t\t'modelYear': 1993,\r\n\t\t\t'mileage': 189804,\r\n\t\t\t// tslint:disable-next-line:max-line-length\r\n\t\t\t'description': `The 2014 – 2nd generation, MY14 Duramax 2.8L diesel engines have several new parts, namely a new water-cooled variable-geometry turbocharger, a new high-pressure common-rail fuel delivery system, a new exhaust gas recirculation (EGR) system, a new intake manifold, a new cylinder head, a new cylinder block, a new balance shaft unit and a new Engine Control Module (ECM). and now produce 197 hp and 369 Ft/Lbs of torque`,\r\n\t\t\t'color': 'Indigo',\r\n\t\t\t'price': 154594,\r\n\t\t\t'condition': 0,\r\n\t\t\t'createdDate': '09/13/2017',\r\n\t\t\t'status': 0,\r\n\t\t\t'VINCode': '1G6KD57Y43U482896',\r\n\t\t\t'_userId': 1,\r\n\t\t\t'_createdDate': '05/27/2017',\r\n\t\t\t'_updatedDate': '05/17/2016'\r\n\t\t}, {\r\n\t\t\t'id': 34,\r\n\t\t\t'model': 'Envoy XUV',\r\n\t\t\t'manufacture': 'GMC',\r\n\t\t\t'modelYear': 2004,\r\n\t\t\t'mileage': 187960,\r\n\t\t\t// tslint:disable-next-line:max-line-length\r\n\t\t\t'description': `The GMC Envoy is a mid-size SUV that was produced by General Motors. It was introduced for the 1998 model year. After the first generation Envoy was discontinued after the 2000 model year, but the Envoy was reintroduced and redesigned for the 2002 model year, and it was available in the GMC line of vehicles from the 2002 to 2009 model years`,\r\n\t\t\t'color': 'Turquoise',\r\n\t\t\t'price': 185103,\r\n\t\t\t'condition': 1,\r\n\t\t\t'createdDate': '12/07/2017',\r\n\t\t\t'status': 0,\r\n\t\t\t'VINCode': '5GAER23D09J658030',\r\n\t\t\t'_userId': 2,\r\n\t\t\t'_createdDate': '12/08/2017',\r\n\t\t\t'_updatedDate': '06/15/2011'\r\n\t\t}\r\n\t];\r\n}\r\n","export class CustomersTable {\r\n\tpublic static customers: any = [\r\n\t\t{\r\n\t\t\tid: 1,\r\n\t\t\tfirstName: 'Sonni',\r\n\t\t\tlastName: 'Gabotti',\r\n\t\t\temail: 'sgabotti0@wsj.com',\r\n\t\t\tuserName: 'sgabotti0',\r\n\t\t\tgender: 'Female',\r\n\t\t\tstatus: 0,\r\n\t\t\tdateOfBbirth: '10/14/1950',\r\n\t\t\tipAddress: '251.237.126.210',\r\n\t\t\ttype: 1,\r\n\t\t\t_userId: 1,\r\n\t\t\t_createdDate: '09/07/2016',\r\n\t\t\t_updatedDate: '05/31/2013'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 2,\r\n\t\t\tfirstName: 'Abie',\r\n\t\t\tlastName: 'Cowperthwaite',\r\n\t\t\temail: 'acowperthwaite1@storify.com',\r\n\t\t\tuserName: 'acowperthwaite1',\r\n\t\t\tgender: 'Male',\r\n\t\t\tstatus: 1,\r\n\t\t\tdateOfBbirth: '12/31/1998',\r\n\t\t\tipAddress: '239.176.5.218',\r\n\t\t\ttype: 1,\r\n\t\t\t_userId: 2,\r\n\t\t\t_createdDate: '03/18/2014',\r\n\t\t\t_updatedDate: '08/17/2016'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 3,\r\n\t\t\tfirstName: 'Melody',\r\n\t\t\tlastName: 'Stodd',\r\n\t\t\temail: 'mstodd2@twitpic.com',\r\n\t\t\tuserName: 'mstodd2',\r\n\t\t\tgender: 'Female',\r\n\t\t\tstatus: 0,\r\n\t\t\tdateOfBbirth: '7/3/1957',\r\n\t\t\tipAddress: '14.80.25.15',\r\n\t\t\ttype: 1,\r\n\t\t\t_userId: 1,\r\n\t\t\t_createdDate: '07/03/2015',\r\n\t\t\t_updatedDate: '01/28/2015'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 4,\r\n\t\t\tfirstName: 'Naomi',\r\n\t\t\tlastName: 'Galbreth',\r\n\t\t\temail: 'ngalbreth3@springer.com',\r\n\t\t\tuserName: 'ngalbreth3',\r\n\t\t\tgender: 'Female',\r\n\t\t\tstatus: 2,\r\n\t\t\tdateOfBbirth: '12/30/1976',\r\n\t\t\tipAddress: '239.198.18.122',\r\n\t\t\ttype: 0,\r\n\t\t\t_userId: 2,\r\n\t\t\t_createdDate: '06/22/2013',\r\n\t\t\t_updatedDate: '01/31/2011'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 5,\r\n\t\t\tfirstName: 'Ashley',\r\n\t\t\tlastName: 'Jandl',\r\n\t\t\temail: 'ajandl4@mapy.cz',\r\n\t\t\tuserName: 'ajandl4',\r\n\t\t\tgender: 'Female',\r\n\t\t\tstatus: 1,\r\n\t\t\tdateOfBbirth: '11/23/1996',\r\n\t\t\tipAddress: '11.19.64.48',\r\n\t\t\ttype: 1,\r\n\t\t\t_userId: 1,\r\n\t\t\t_createdDate: '01/30/2018',\r\n\t\t\t_updatedDate: '05/22/2014'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 6,\r\n\t\t\tfirstName: 'Mildrid',\r\n\t\t\tlastName: 'Duplan',\r\n\t\t\temail: 'mduplan5@msn.com',\r\n\t\t\tuserName: 'mduplan5',\r\n\t\t\tgender: 'Female',\r\n\t\t\tstatus: 1,\r\n\t\t\tdateOfBbirth: '4/21/1954',\r\n\t\t\tipAddress: '104.18.128.93',\r\n\t\t\ttype: 1,\r\n\t\t\t_userId: 1,\r\n\t\t\t_createdDate: '03/27/2011',\r\n\t\t\t_updatedDate: '09/02/2015'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 7,\r\n\t\t\tfirstName: 'Dall',\r\n\t\t\tlastName: 'Stow',\r\n\t\t\temail: 'dstow6@vistaprint.com',\r\n\t\t\tuserName: 'dstow6',\r\n\t\t\tgender: 'Male',\r\n\t\t\tstatus: 2,\r\n\t\t\tdateOfBbirth: '4/14/1998',\r\n\t\t\tipAddress: '168.199.143.20',\r\n\t\t\ttype: 1,\r\n\t\t\t_userId: 1,\r\n\t\t\t_createdDate: '09/05/2011',\r\n\t\t\t_updatedDate: '06/21/2012'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 8,\r\n\t\t\tfirstName: 'Burton',\r\n\t\t\tlastName: 'Dering',\r\n\t\t\temail: 'bdering7@europa.eu',\r\n\t\t\tuserName: 'bdering7',\r\n\t\t\tgender: 'Male',\r\n\t\t\tstatus: 1,\r\n\t\t\tdateOfBbirth: '8/15/1963',\r\n\t\t\tipAddress: '204.7.174.42',\r\n\t\t\ttype: 0,\r\n\t\t\t_userId: 1,\r\n\t\t\t_createdDate: '09/09/2017',\r\n\t\t\t_updatedDate: '06/27/2011'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 9,\r\n\t\t\tfirstName: 'Wolf',\r\n\t\t\tlastName: 'Blackaller',\r\n\t\t\temail: 'wblackaller8@biblegateway.com',\r\n\t\t\tuserName: 'wblackaller8',\r\n\t\t\tgender: 'Male',\r\n\t\t\tstatus: 0,\r\n\t\t\tdateOfBbirth: '5/20/1997',\r\n\t\t\tipAddress: '12.229.194.195',\r\n\t\t\ttype: 0,\r\n\t\t\t_userId: 1,\r\n\t\t\t_createdDate: '07/16/2011',\r\n\t\t\t_updatedDate: '05/24/2014'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 10,\r\n\t\t\tfirstName: 'Adham',\r\n\t\t\tlastName: 'Hurtic',\r\n\t\t\temail: 'ahurtic9@friendfeed.com',\r\n\t\t\tuserName: 'ahurtic9',\r\n\t\t\tgender: 'Male',\r\n\t\t\tstatus: 1,\r\n\t\t\tdateOfBbirth: '3/15/1971',\r\n\t\t\tipAddress: '236.147.173.25',\r\n\t\t\ttype: 0,\r\n\t\t\t_userId: 2,\r\n\t\t\t_createdDate: '03/25/2011',\r\n\t\t\t_updatedDate: '12/13/2015'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 11,\r\n\t\t\tfirstName: 'Carlina',\r\n\t\t\tlastName: 'Scudders',\r\n\t\t\temail: 'cscuddersa@shareasale.com',\r\n\t\t\tuserName: 'cscuddersa',\r\n\t\t\tgender: 'Female',\r\n\t\t\tstatus: 1,\r\n\t\t\tdateOfBbirth: '2/18/1970',\r\n\t\t\tipAddress: '189.61.76.155',\r\n\t\t\ttype: 0,\r\n\t\t\t_userId: 1,\r\n\t\t\t_createdDate: '11/01/2015',\r\n\t\t\t_updatedDate: '02/16/2013'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 12,\r\n\t\t\tfirstName: 'Roderich',\r\n\t\t\tlastName: 'Landsberg',\r\n\t\t\temail: 'rlandsbergb@deliciousdays.com',\r\n\t\t\tuserName: 'rlandsbergb',\r\n\t\t\tgender: 'Male',\r\n\t\t\tstatus: 0,\r\n\t\t\tdateOfBbirth: '12/7/1963',\r\n\t\t\tipAddress: '75.200.18.136',\r\n\t\t\ttype: 0,\r\n\t\t\t_userId: 2,\r\n\t\t\t_createdDate: '12/12/2017',\r\n\t\t\t_updatedDate: '02/22/2013'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 13,\r\n\t\t\tfirstName: 'Mychal',\r\n\t\t\tlastName: 'Tremblett',\r\n\t\t\temail: 'mtremblettc@printfriendly.com',\r\n\t\t\tuserName: 'mtremblettc',\r\n\t\t\tgender: 'Male',\r\n\t\t\tstatus: 0,\r\n\t\t\tdateOfBbirth: '7/14/1996',\r\n\t\t\tipAddress: '85.132.155.112',\r\n\t\t\ttype: 0,\r\n\t\t\t_userId: 1,\r\n\t\t\t_createdDate: '08/14/2014',\r\n\t\t\t_updatedDate: '08/03/2014'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 14,\r\n\t\t\tfirstName: 'Corine',\r\n\t\t\tlastName: 'Rajchert',\r\n\t\t\temail: 'crajchertd@google.com',\r\n\t\t\tuserName: 'crajchertd',\r\n\t\t\tgender: 'Female',\r\n\t\t\tstatus: 1,\r\n\t\t\tdateOfBbirth: '9/13/1966',\r\n\t\t\tipAddress: '47.164.200.96',\r\n\t\t\ttype: 0,\r\n\t\t\t_userId: 2,\r\n\t\t\t_createdDate: '12/07/2010',\r\n\t\t\t_updatedDate: '09/24/2012'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 15,\r\n\t\t\tfirstName: 'Worth',\r\n\t\t\tlastName: 'McFarlane',\r\n\t\t\temail: 'wmcfarlanee@cocolog-nifty.com',\r\n\t\t\tuserName: 'wmcfarlanee',\r\n\t\t\tgender: 'Male',\r\n\t\t\tstatus: 2,\r\n\t\t\tdateOfBbirth: '10/13/1968',\r\n\t\t\tipAddress: '56.209.4.81',\r\n\t\t\ttype: 0,\r\n\t\t\t_userId: 1,\r\n\t\t\t_createdDate: '02/23/2013',\r\n\t\t\t_updatedDate: '09/24/2016'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 16,\r\n\t\t\tfirstName: 'Ogden',\r\n\t\t\tlastName: 'Danielski',\r\n\t\t\temail: 'odanielskif@goo.ne.jp',\r\n\t\t\tuserName: 'odanielskif',\r\n\t\t\tgender: 'Male',\r\n\t\t\tstatus: 0,\r\n\t\t\tdateOfBbirth: '10/5/1984',\r\n\t\t\tipAddress: '181.198.149.89',\r\n\t\t\ttype: 0,\r\n\t\t\t_userId: 1,\r\n\t\t\t_createdDate: '09/08/2012',\r\n\t\t\t_updatedDate: '10/29/2017'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 17,\r\n\t\t\tfirstName: 'Laurette',\r\n\t\t\tlastName: 'Tift',\r\n\t\t\temail: 'ltiftg@about.me',\r\n\t\t\tuserName: 'ltiftg',\r\n\t\t\tgender: 'Female',\r\n\t\t\tstatus: 1,\r\n\t\t\tdateOfBbirth: '7/29/1964',\r\n\t\t\tipAddress: '218.236.252.255',\r\n\t\t\ttype: 1,\r\n\t\t\t_userId: 2,\r\n\t\t\t_createdDate: '05/03/2016',\r\n\t\t\t_updatedDate: '08/02/2011'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 18,\r\n\t\t\tfirstName: 'Eleanora',\r\n\t\t\tlastName: 'Jackson',\r\n\t\t\temail: 'ejacksonh@geocities.jp',\r\n\t\t\tuserName: 'ejacksonh',\r\n\t\t\tgender: 'Female',\r\n\t\t\tstatus: 0,\r\n\t\t\tdateOfBbirth: '1/1/1993',\r\n\t\t\tipAddress: '166.210.135.66',\r\n\t\t\ttype: 1,\r\n\t\t\t_userId: 1,\r\n\t\t\t_createdDate: '09/25/2017',\r\n\t\t\t_updatedDate: '01/08/2012'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 19,\r\n\t\t\tfirstName: 'Manon',\r\n\t\t\tlastName: 'Perott',\r\n\t\t\temail: 'mperotti@nyu.edu',\r\n\t\t\tuserName: 'mperotti',\r\n\t\t\tgender: 'Female',\r\n\t\t\tstatus: 1,\r\n\t\t\tdateOfBbirth: '11/6/1994',\r\n\t\t\tipAddress: '44.43.119.22',\r\n\t\t\ttype: 1,\r\n\t\t\t_userId: 2,\r\n\t\t\t_createdDate: '04/26/2013',\r\n\t\t\t_updatedDate: '02/24/2012'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 20,\r\n\t\t\tfirstName: 'Karney',\r\n\t\t\tlastName: 'Damerell',\r\n\t\t\temail: 'kdamerellj@booking.com',\r\n\t\t\tuserName: 'kdamerellj',\r\n\t\t\tgender: 'Male',\r\n\t\t\tstatus: 0,\r\n\t\t\tdateOfBbirth: '11/22/1996',\r\n\t\t\tipAddress: '253.195.21.217',\r\n\t\t\ttype: 1,\r\n\t\t\t_userId: 2,\r\n\t\t\t_createdDate: '11/28/2014',\r\n\t\t\t_updatedDate: '10/11/2012'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 21,\r\n\t\t\tfirstName: 'Chelsea',\r\n\t\t\tlastName: 'Bruce',\r\n\t\t\temail: 'cbrucek@icq.com',\r\n\t\t\tuserName: 'cbrucek',\r\n\t\t\tgender: 'Female',\r\n\t\t\tstatus: 1,\r\n\t\t\tdateOfBbirth: '12/1/1983',\r\n\t\t\tipAddress: '28.184.81.169',\r\n\t\t\ttype: 0,\r\n\t\t\t_userId: 1,\r\n\t\t\t_createdDate: '07/29/2013',\r\n\t\t\t_updatedDate: '12/01/2017'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 22,\r\n\t\t\tfirstName: 'Barny',\r\n\t\t\tlastName: 'Verny',\r\n\t\t\temail: 'bvernyl@bing.com',\r\n\t\t\tuserName: 'bvernyl',\r\n\t\t\tgender: 'Male',\r\n\t\t\tstatus: 0,\r\n\t\t\tdateOfBbirth: '8/13/1957',\r\n\t\t\tipAddress: '7.26.116.49',\r\n\t\t\ttype: 0,\r\n\t\t\t_userId: 1,\r\n\t\t\t_createdDate: '06/14/2011',\r\n\t\t\t_updatedDate: '06/28/2011'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 23,\r\n\t\t\tfirstName: 'Elita',\r\n\t\t\tlastName: 'Matuszewski',\r\n\t\t\temail: 'ematuszewskim@businesswire.com',\r\n\t\t\tuserName: 'ematuszewskim',\r\n\t\t\tgender: 'Female',\r\n\t\t\tstatus: 1,\r\n\t\t\tdateOfBbirth: '6/6/1985',\r\n\t\t\tipAddress: '82.223.2.228',\r\n\t\t\ttype: 0,\r\n\t\t\t_userId: 2,\r\n\t\t\t_createdDate: '05/19/2016',\r\n\t\t\t_updatedDate: '09/12/2011'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 24,\r\n\t\t\tfirstName: 'Chelsey',\r\n\t\t\tlastName: 'Scullard',\r\n\t\t\temail: 'cscullardn@buzzfeed.com',\r\n\t\t\tuserName: 'cscullardn',\r\n\t\t\tgender: 'Female',\r\n\t\t\tstatus: 0,\r\n\t\t\tdateOfBbirth: '11/20/1960',\r\n\t\t\tipAddress: '68.177.196.151',\r\n\t\t\ttype: 0,\r\n\t\t\t_userId: 1,\r\n\t\t\t_createdDate: '02/09/2013',\r\n\t\t\t_updatedDate: '12/11/2011'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 25,\r\n\t\t\tfirstName: 'Jodi',\r\n\t\t\tlastName: 'Olphert',\r\n\t\t\temail: 'jolpherto@elpais.com',\r\n\t\t\tuserName: 'jolpherto',\r\n\t\t\tgender: 'Female',\r\n\t\t\tstatus: 0,\r\n\t\t\tdateOfBbirth: '4/20/2000',\r\n\t\t\tipAddress: '32.219.74.161',\r\n\t\t\ttype: 0,\r\n\t\t\t_userId: 2,\r\n\t\t\t_createdDate: '07/28/2017',\r\n\t\t\t_updatedDate: '05/03/2017'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 26,\r\n\t\t\tfirstName: 'Micah',\r\n\t\t\tlastName: 'Searchfield',\r\n\t\t\temail: 'msearchfieldp@instagram.com',\r\n\t\t\tuserName: 'msearchfieldp',\r\n\t\t\tgender: 'Male',\r\n\t\t\tstatus: 1,\r\n\t\t\tdateOfBbirth: '8/15/1993',\r\n\t\t\tipAddress: '99.205.47.226',\r\n\t\t\ttype: 1,\r\n\t\t\t_userId: 1,\r\n\t\t\t_createdDate: '07/05/2011',\r\n\t\t\t_updatedDate: '02/19/2013'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 27,\r\n\t\t\tfirstName: 'Freeland',\r\n\t\t\tlastName: 'O\\'Dougherty',\r\n\t\t\temail: 'fodoughertyq@cbsnews.com',\r\n\t\t\tuserName: 'fodoughertyq',\r\n\t\t\tgender: 'Male',\r\n\t\t\tstatus: 1,\r\n\t\t\tdateOfBbirth: '5/19/1956',\r\n\t\t\tipAddress: '91.116.249.149',\r\n\t\t\ttype: 0,\r\n\t\t\t_userId: 1,\r\n\t\t\t_createdDate: '06/09/2012',\r\n\t\t\t_updatedDate: '03/15/2014'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 28,\r\n\t\t\tfirstName: 'Marna',\r\n\t\t\tlastName: 'Dacre',\r\n\t\t\temail: 'mdacrer@tmall.com',\r\n\t\t\tuserName: 'mdacrer',\r\n\t\t\tgender: 'Female',\r\n\t\t\tstatus: 0,\r\n\t\t\tdateOfBbirth: '10/26/1959',\r\n\t\t\tipAddress: '127.23.103.102',\r\n\t\t\ttype: 0,\r\n\t\t\t_userId: 2,\r\n\t\t\t_createdDate: '12/30/2011',\r\n\t\t\t_updatedDate: '03/24/2016'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 29,\r\n\t\t\tfirstName: 'Carlita',\r\n\t\t\tlastName: 'Calwell',\r\n\t\t\temail: 'ccalwells@1688.com',\r\n\t\t\tuserName: 'ccalwells',\r\n\t\t\tgender: 'Female',\r\n\t\t\tstatus: 0,\r\n\t\t\tdateOfBbirth: '7/28/1961',\r\n\t\t\tipAddress: '3.205.16.120',\r\n\t\t\ttype: 0,\r\n\t\t\t_userId: 2,\r\n\t\t\t_createdDate: '02/28/2016',\r\n\t\t\t_updatedDate: '02/25/2013'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 30,\r\n\t\t\tfirstName: 'Deonne',\r\n\t\t\tlastName: 'Castellan',\r\n\t\t\temail: 'dcastellant@gizmodo.com',\r\n\t\t\tuserName: 'dcastellant',\r\n\t\t\tgender: 'Female',\r\n\t\t\tstatus: 2,\r\n\t\t\tdateOfBbirth: '10/21/1955',\r\n\t\t\tipAddress: '213.3.222.52',\r\n\t\t\ttype: 1,\r\n\t\t\t_userId: 2,\r\n\t\t\t_createdDate: '03/12/2011',\r\n\t\t\t_updatedDate: '03/26/2017'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 31,\r\n\t\t\tfirstName: 'Cesare',\r\n\t\t\tlastName: 'Chestnutt',\r\n\t\t\temail: 'cchestnuttu@cornell.edu',\r\n\t\t\tuserName: 'cchestnuttu',\r\n\t\t\tgender: 'Male',\r\n\t\t\tstatus: 2,\r\n\t\t\tdateOfBbirth: '4/14/1979',\r\n\t\t\tipAddress: '218.107.75.113',\r\n\t\t\ttype: 1,\r\n\t\t\t_userId: 1,\r\n\t\t\t_createdDate: '03/06/2012',\r\n\t\t\t_updatedDate: '09/08/2012'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 32,\r\n\t\t\tfirstName: 'Gauthier',\r\n\t\t\tlastName: 'Luparto',\r\n\t\t\temail: 'glupartov@wordpress.org',\r\n\t\t\tuserName: 'glupartov',\r\n\t\t\tgender: 'Male',\r\n\t\t\tstatus: 0,\r\n\t\t\tdateOfBbirth: '11/28/1952',\r\n\t\t\tipAddress: '148.234.79.85',\r\n\t\t\ttype: 1,\r\n\t\t\t_userId: 2,\r\n\t\t\t_createdDate: '04/28/2013',\r\n\t\t\t_updatedDate: '02/26/2016'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 33,\r\n\t\t\tfirstName: 'Kimmi',\r\n\t\t\tlastName: 'Corde',\r\n\t\t\temail: 'kcordew@kickstarter.com',\r\n\t\t\tuserName: 'kcordew',\r\n\t\t\tgender: 'Female',\r\n\t\t\tstatus: 1,\r\n\t\t\tdateOfBbirth: '8/7/1978',\r\n\t\t\tipAddress: '94.85.235.54',\r\n\t\t\ttype: 0,\r\n\t\t\t_userId: 2,\r\n\t\t\t_createdDate: '10/21/2012',\r\n\t\t\t_updatedDate: '10/31/2017'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 34,\r\n\t\t\tfirstName: 'Riordan',\r\n\t\t\tlastName: 'Rosenbush',\r\n\t\t\temail: 'rrosenbushx@wix.com',\r\n\t\t\tuserName: 'rrosenbushx',\r\n\t\t\tgender: 'Male',\r\n\t\t\tstatus: 1,\r\n\t\t\tdateOfBbirth: '11/28/1957',\r\n\t\t\tipAddress: '236.15.158.122',\r\n\t\t\ttype: 0,\r\n\t\t\t_userId: 2,\r\n\t\t\t_createdDate: '08/28/2011',\r\n\t\t\t_updatedDate: '08/14/2015'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 35,\r\n\t\t\tfirstName: 'Daune',\r\n\t\t\tlastName: 'Sellek',\r\n\t\t\temail: 'dselleky@amazon.co.jp',\r\n\t\t\tuserName: 'dselleky',\r\n\t\t\tgender: 'Female',\r\n\t\t\tstatus: 1,\r\n\t\t\tdateOfBbirth: '10/12/1995',\r\n\t\t\tipAddress: '163.229.197.138',\r\n\t\t\ttype: 1,\r\n\t\t\t_userId: 2,\r\n\t\t\t_createdDate: '03/28/2018',\r\n\t\t\t_updatedDate: '03/01/2017'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 36,\r\n\t\t\tfirstName: 'Myriam',\r\n\t\t\tlastName: 'Marshland',\r\n\t\t\temail: 'mmarshlandz@army.mil',\r\n\t\t\tuserName: 'mmarshlandz',\r\n\t\t\tgender: 'Female',\r\n\t\t\tstatus: 2,\r\n\t\t\tdateOfBbirth: '8/1/1961',\r\n\t\t\tipAddress: '153.40.246.134',\r\n\t\t\ttype: 0,\r\n\t\t\t_userId: 1,\r\n\t\t\t_createdDate: '05/15/2017',\r\n\t\t\t_updatedDate: '08/12/2016'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 37,\r\n\t\t\tfirstName: 'Laryssa',\r\n\t\t\tlastName: 'Hynard',\r\n\t\t\temail: 'lhynard10@squidoo.com',\r\n\t\t\tuserName: 'lhynard10',\r\n\t\t\tgender: 'Female',\r\n\t\t\tstatus: 1,\r\n\t\t\tdateOfBbirth: '1/6/1998',\r\n\t\t\tipAddress: '186.155.125.145',\r\n\t\t\ttype: 0,\r\n\t\t\t_userId: 2,\r\n\t\t\t_createdDate: '01/16/2012',\r\n\t\t\t_updatedDate: '10/09/2012'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 38,\r\n\t\t\tfirstName: 'Evelin',\r\n\t\t\tlastName: 'Poate',\r\n\t\t\temail: 'epoate11@cnet.com',\r\n\t\t\tuserName: 'epoate11',\r\n\t\t\tgender: 'Male',\r\n\t\t\tstatus: 2,\r\n\t\t\tdateOfBbirth: '9/11/1957',\r\n\t\t\tipAddress: '76.53.54.233',\r\n\t\t\ttype: 0,\r\n\t\t\t_userId: 1,\r\n\t\t\t_createdDate: '01/07/2012',\r\n\t\t\t_updatedDate: '01/18/2018'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 39,\r\n\t\t\tfirstName: 'Cesar',\r\n\t\t\tlastName: 'D\\'Orsay',\r\n\t\t\temail: 'cdorsay12@ezinearticles.com',\r\n\t\t\tuserName: 'cdorsay12',\r\n\t\t\tgender: 'Male',\r\n\t\t\tstatus: 0,\r\n\t\t\tdateOfBbirth: '10/20/1992',\r\n\t\t\tipAddress: '101.137.215.28',\r\n\t\t\ttype: 1,\r\n\t\t\t_userId: 1,\r\n\t\t\t_createdDate: '10/20/2010',\r\n\t\t\t_updatedDate: '07/14/2012'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 40,\r\n\t\t\tfirstName: 'Jareb',\r\n\t\t\tlastName: 'Luberto',\r\n\t\t\temail: 'jluberto13@apple.com',\r\n\t\t\tuserName: 'jluberto13',\r\n\t\t\tgender: 'Male',\r\n\t\t\tstatus: 1,\r\n\t\t\tdateOfBbirth: '12/22/1951',\r\n\t\t\tipAddress: '69.111.152.125',\r\n\t\t\ttype: 0,\r\n\t\t\t_userId: 1,\r\n\t\t\t_createdDate: '01/11/2012',\r\n\t\t\t_updatedDate: '01/20/2018'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 41,\r\n\t\t\tfirstName: 'Kerry',\r\n\t\t\tlastName: 'Glawsop',\r\n\t\t\temail: 'kglawsop14@wp.com',\r\n\t\t\tuserName: 'kglawsop14',\r\n\t\t\tgender: 'Male',\r\n\t\t\tstatus: 1,\r\n\t\t\tdateOfBbirth: '11/28/1953',\r\n\t\t\tipAddress: '105.245.81.58',\r\n\t\t\ttype: 1,\r\n\t\t\t_userId: 2,\r\n\t\t\t_createdDate: '02/23/2015',\r\n\t\t\t_updatedDate: '03/14/2012'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 42,\r\n\t\t\tfirstName: 'Brose',\r\n\t\t\tlastName: 'Conti',\r\n\t\t\temail: 'bconti15@smh.com.au',\r\n\t\t\tuserName: 'bconti15',\r\n\t\t\tgender: 'Male',\r\n\t\t\tstatus: 2,\r\n\t\t\tdateOfBbirth: '8/13/1967',\r\n\t\t\tipAddress: '109.92.204.48',\r\n\t\t\ttype: 1,\r\n\t\t\t_userId: 1,\r\n\t\t\t_createdDate: '08/04/2012',\r\n\t\t\t_updatedDate: '11/01/2011'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 43,\r\n\t\t\tfirstName: 'Shannah',\r\n\t\t\tlastName: 'Ceeley',\r\n\t\t\temail: 'sceeley16@sogou.com',\r\n\t\t\tuserName: 'sceeley16',\r\n\t\t\tgender: 'Female',\r\n\t\t\tstatus: 1,\r\n\t\t\tdateOfBbirth: '6/10/1962',\r\n\t\t\tipAddress: '57.218.60.216',\r\n\t\t\ttype: 0,\r\n\t\t\t_userId: 2,\r\n\t\t\t_createdDate: '05/28/2014',\r\n\t\t\t_updatedDate: '03/16/2018'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 44,\r\n\t\t\tfirstName: 'Rudolf',\r\n\t\t\tlastName: 'Stallworthy',\r\n\t\t\temail: 'rstallworthy17@theatlantic.com',\r\n\t\t\tuserName: 'rstallworthy17',\r\n\t\t\tgender: 'Male',\r\n\t\t\tstatus: 1,\r\n\t\t\tdateOfBbirth: '10/15/1966',\r\n\t\t\tipAddress: '74.223.255.220',\r\n\t\t\ttype: 1,\r\n\t\t\t_userId: 2,\r\n\t\t\t_createdDate: '06/01/2015',\r\n\t\t\t_updatedDate: '10/25/2013'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 45,\r\n\t\t\tfirstName: 'Egor',\r\n\t\t\tlastName: 'Scotson',\r\n\t\t\temail: 'escotson18@weather.com',\r\n\t\t\tuserName: 'escotson18',\r\n\t\t\tgender: 'Male',\r\n\t\t\tstatus: 0,\r\n\t\t\tdateOfBbirth: '1/17/1956',\r\n\t\t\tipAddress: '70.189.158.38',\r\n\t\t\ttype: 0,\r\n\t\t\t_userId: 1,\r\n\t\t\t_createdDate: '03/25/2011',\r\n\t\t\t_updatedDate: '12/05/2010'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 46,\r\n\t\t\tfirstName: 'Selie',\r\n\t\t\tlastName: 'Dugue',\r\n\t\t\temail: 'sdugue19@meetup.com',\r\n\t\t\tuserName: 'sdugue19',\r\n\t\t\tgender: 'Female',\r\n\t\t\tstatus: 0,\r\n\t\t\tdateOfBbirth: '11/9/1981',\r\n\t\t\tipAddress: '54.129.221.70',\r\n\t\t\ttype: 1,\r\n\t\t\t_userId: 1,\r\n\t\t\t_createdDate: '06/09/2013',\r\n\t\t\t_updatedDate: '08/10/2016'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 47,\r\n\t\t\tfirstName: 'Gene',\r\n\t\t\tlastName: 'Kirkbright',\r\n\t\t\temail: 'gkirkbright1a@wp.com',\r\n\t\t\tuserName: 'gkirkbright1a',\r\n\t\t\tgender: 'Female',\r\n\t\t\tstatus: 0,\r\n\t\t\tdateOfBbirth: '5/9/1972',\r\n\t\t\tipAddress: '217.224.216.105',\r\n\t\t\ttype: 0,\r\n\t\t\t_userId: 1,\r\n\t\t\t_createdDate: '02/02/2016',\r\n\t\t\t_updatedDate: '03/30/2014'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 48,\r\n\t\t\tfirstName: 'Reagan',\r\n\t\t\tlastName: 'Colloby',\r\n\t\t\temail: 'rcolloby1b@usgs.gov',\r\n\t\t\tuserName: 'rcolloby1b',\r\n\t\t\tgender: 'Male',\r\n\t\t\tstatus: 2,\r\n\t\t\tdateOfBbirth: '9/21/1997',\r\n\t\t\tipAddress: '32.53.20.172',\r\n\t\t\ttype: 0,\r\n\t\t\t_userId: 2,\r\n\t\t\t_createdDate: '04/08/2016',\r\n\t\t\t_updatedDate: '01/25/2014'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 49,\r\n\t\t\tfirstName: 'Saidee',\r\n\t\t\tlastName: 'Kivelle',\r\n\t\t\temail: 'skivelle1c@newsvine.com',\r\n\t\t\tuserName: 'skivelle1c',\r\n\t\t\tgender: 'Female',\r\n\t\t\tstatus: 1,\r\n\t\t\tdateOfBbirth: '10/23/1994',\r\n\t\t\tipAddress: '79.152.227.238',\r\n\t\t\ttype: 1,\r\n\t\t\t_userId: 1,\r\n\t\t\t_createdDate: '12/26/2015',\r\n\t\t\t_updatedDate: '09/17/2011'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 50,\r\n\t\t\tfirstName: 'Mychal',\r\n\t\t\tlastName: 'Karlowicz',\r\n\t\t\temail: 'mkarlowicz1d@opera.com',\r\n\t\t\tuserName: 'mkarlowicz1d',\r\n\t\t\tgender: 'Male',\r\n\t\t\tstatus: 2,\r\n\t\t\tdateOfBbirth: '10/20/1971',\r\n\t\t\tipAddress: '70.175.193.245',\r\n\t\t\ttype: 0,\r\n\t\t\t_userId: 2,\r\n\t\t\t_createdDate: '10/10/2011',\r\n\t\t\t_updatedDate: '03/02/2012'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 51,\r\n\t\t\tfirstName: 'Nessie',\r\n\t\t\tlastName: 'Casassa',\r\n\t\t\temail: 'ncasassa1e@pinterest.com',\r\n\t\t\tuserName: 'ncasassa1e',\r\n\t\t\tgender: 'Female',\r\n\t\t\tstatus: 2,\r\n\t\t\tdateOfBbirth: '3/9/1983',\r\n\t\t\tipAddress: '17.128.173.230',\r\n\t\t\ttype: 1,\r\n\t\t\t_userId: 1,\r\n\t\t\t_createdDate: '01/09/2018',\r\n\t\t\t_updatedDate: '08/05/2015'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 52,\r\n\t\t\tfirstName: 'Myrvyn',\r\n\t\t\tlastName: 'Coots',\r\n\t\t\temail: 'mcoots1f@sourceforge.net',\r\n\t\t\tuserName: 'mcoots1f',\r\n\t\t\tgender: 'Male',\r\n\t\t\tstatus: 2,\r\n\t\t\tdateOfBbirth: '4/5/1972',\r\n\t\t\tipAddress: '253.21.191.36',\r\n\t\t\ttype: 0,\r\n\t\t\t_userId: 1,\r\n\t\t\t_createdDate: '01/13/2015',\r\n\t\t\t_updatedDate: '04/30/2011'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 53,\r\n\t\t\tfirstName: 'Liuka',\r\n\t\t\tlastName: 'Monard',\r\n\t\t\temail: 'lmonard1g@wikipedia.org',\r\n\t\t\tuserName: 'lmonard1g',\r\n\t\t\tgender: 'Female',\r\n\t\t\tstatus: 2,\r\n\t\t\tdateOfBbirth: '6/6/1999',\r\n\t\t\tipAddress: '33.46.177.2',\r\n\t\t\ttype: 1,\r\n\t\t\t_userId: 1,\r\n\t\t\t_createdDate: '11/17/2012',\r\n\t\t\t_updatedDate: '02/18/2011'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 54,\r\n\t\t\tfirstName: 'Alis',\r\n\t\t\tlastName: 'Nozzolii',\r\n\t\t\temail: 'anozzolii1h@google.com.br',\r\n\t\t\tuserName: 'anozzolii1h',\r\n\t\t\tgender: 'Female',\r\n\t\t\tstatus: 2,\r\n\t\t\tdateOfBbirth: '7/25/1953',\r\n\t\t\tipAddress: '242.76.135.219',\r\n\t\t\ttype: 1,\r\n\t\t\t_userId: 1,\r\n\t\t\t_createdDate: '10/16/2012',\r\n\t\t\t_updatedDate: '09/17/2012'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 55,\r\n\t\t\tfirstName: 'Gage',\r\n\t\t\tlastName: 'Slamaker',\r\n\t\t\temail: 'gslamaker1i@people.com.cn',\r\n\t\t\tuserName: 'gslamaker1i',\r\n\t\t\tgender: 'Male',\r\n\t\t\tstatus: 1,\r\n\t\t\tdateOfBbirth: '3/19/1959',\r\n\t\t\tipAddress: '179.85.197.219',\r\n\t\t\ttype: 0,\r\n\t\t\t_userId: 2,\r\n\t\t\t_createdDate: '04/20/2015',\r\n\t\t\t_updatedDate: '07/02/2014'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 56,\r\n\t\t\tfirstName: 'Jamal',\r\n\t\t\tlastName: 'Glasard',\r\n\t\t\temail: 'jglasard1j@google.ru',\r\n\t\t\tuserName: 'jglasard1j',\r\n\t\t\tgender: 'Male',\r\n\t\t\tstatus: 2,\r\n\t\t\tdateOfBbirth: '9/21/1968',\r\n\t\t\tipAddress: '163.99.109.106',\r\n\t\t\ttype: 0,\r\n\t\t\t_userId: 1,\r\n\t\t\t_createdDate: '08/24/2017',\r\n\t\t\t_updatedDate: '12/09/2012'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 57,\r\n\t\t\tfirstName: 'Antone',\r\n\t\t\tlastName: 'Christophersen',\r\n\t\t\temail: 'achristophersen1k@slashdot.org',\r\n\t\t\tuserName: 'achristophersen1k',\r\n\t\t\tgender: 'Male',\r\n\t\t\tstatus: 0,\r\n\t\t\tdateOfBbirth: '8/5/1953',\r\n\t\t\tipAddress: '42.207.110.255',\r\n\t\t\ttype: 1,\r\n\t\t\t_userId: 1,\r\n\t\t\t_createdDate: '12/30/2012',\r\n\t\t\t_updatedDate: '04/07/2013'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 58,\r\n\t\t\tfirstName: 'Glenn',\r\n\t\t\tlastName: 'Gentle',\r\n\t\t\temail: 'ggentle1l@imdb.com',\r\n\t\t\tuserName: 'ggentle1l',\r\n\t\t\tgender: 'Female',\r\n\t\t\tstatus: 0,\r\n\t\t\tdateOfBbirth: '8/4/1959',\r\n\t\t\tipAddress: '82.135.105.157',\r\n\t\t\ttype: 1,\r\n\t\t\t_userId: 2,\r\n\t\t\t_createdDate: '01/16/2017',\r\n\t\t\t_updatedDate: '10/04/2017'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 59,\r\n\t\t\tfirstName: 'Jerrilyn',\r\n\t\t\tlastName: 'Prujean',\r\n\t\t\temail: 'jprujean1m@csmonitor.com',\r\n\t\t\tuserName: 'jprujean1m',\r\n\t\t\tgender: 'Female',\r\n\t\t\tstatus: 2,\r\n\t\t\tdateOfBbirth: '12/22/1961',\r\n\t\t\tipAddress: '45.111.98.145',\r\n\t\t\ttype: 1,\r\n\t\t\t_userId: 2,\r\n\t\t\t_createdDate: '08/22/2014',\r\n\t\t\t_updatedDate: '09/01/2014'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 60,\r\n\t\t\tfirstName: 'Becki',\r\n\t\t\tlastName: 'Mucklestone',\r\n\t\t\temail: 'bmucklestone1n@wiley.com',\r\n\t\t\tuserName: 'bmucklestone1n',\r\n\t\t\tgender: 'Female',\r\n\t\t\tstatus: 0,\r\n\t\t\tdateOfBbirth: '10/15/1970',\r\n\t\t\tipAddress: '208.63.250.181',\r\n\t\t\ttype: 0,\r\n\t\t\t_userId: 1,\r\n\t\t\t_createdDate: '03/08/2018',\r\n\t\t\t_updatedDate: '08/09/2016'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 61,\r\n\t\t\tfirstName: 'Kingsly',\r\n\t\t\tlastName: 'Sawday',\r\n\t\t\temail: 'ksawday1o@patch.com',\r\n\t\t\tuserName: 'ksawday1o',\r\n\t\t\tgender: 'Male',\r\n\t\t\tstatus: 0,\r\n\t\t\tdateOfBbirth: '1/20/1978',\r\n\t\t\tipAddress: '196.38.7.53',\r\n\t\t\ttype: 0,\r\n\t\t\t_userId: 2,\r\n\t\t\t_createdDate: '07/15/2016',\r\n\t\t\t_updatedDate: '10/28/2012'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 62,\r\n\t\t\tfirstName: 'Austen',\r\n\t\t\tlastName: 'Possel',\r\n\t\t\temail: 'apossel1p@blogtalkradio.com',\r\n\t\t\tuserName: 'apossel1p',\r\n\t\t\tgender: 'Male',\r\n\t\t\tstatus: 0,\r\n\t\t\tdateOfBbirth: '5/8/1960',\r\n\t\t\tipAddress: '162.0.150.104',\r\n\t\t\ttype: 1,\r\n\t\t\t_userId: 2,\r\n\t\t\t_createdDate: '12/20/2017',\r\n\t\t\t_updatedDate: '04/20/2018'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 63,\r\n\t\t\tfirstName: 'Rudie',\r\n\t\t\tlastName: 'Southouse',\r\n\t\t\temail: 'rsouthouse1q@mapy.cz',\r\n\t\t\tuserName: 'rsouthouse1q',\r\n\t\t\tgender: 'Male',\r\n\t\t\tstatus: 0,\r\n\t\t\tdateOfBbirth: '12/2/1950',\r\n\t\t\tipAddress: '67.123.229.124',\r\n\t\t\ttype: 1,\r\n\t\t\t_userId: 2,\r\n\t\t\t_createdDate: '09/24/2012',\r\n\t\t\t_updatedDate: '07/02/2014'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 64,\r\n\t\t\tfirstName: 'Julienne',\r\n\t\t\tlastName: 'Le Noury',\r\n\t\t\temail: 'jlenoury1r@cnet.com',\r\n\t\t\tuserName: 'jlenoury1r',\r\n\t\t\tgender: 'Female',\r\n\t\t\tstatus: 1,\r\n\t\t\tdateOfBbirth: '10/30/1976',\r\n\t\t\tipAddress: '208.192.238.241',\r\n\t\t\ttype: 1,\r\n\t\t\t_userId: 1,\r\n\t\t\t_createdDate: '06/29/2012',\r\n\t\t\t_updatedDate: '11/26/2016'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 65,\r\n\t\t\tfirstName: 'Bernard',\r\n\t\t\tlastName: 'Levicount',\r\n\t\t\temail: 'blevicount1s@angelfire.com',\r\n\t\t\tuserName: 'blevicount1s',\r\n\t\t\tgender: 'Male',\r\n\t\t\tstatus: 2,\r\n\t\t\tdateOfBbirth: '12/6/1982',\r\n\t\t\tipAddress: '123.229.51.62',\r\n\t\t\ttype: 1,\r\n\t\t\t_userId: 2,\r\n\t\t\t_createdDate: '04/11/2013',\r\n\t\t\t_updatedDate: '05/14/2013'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 66,\r\n\t\t\tfirstName: 'Katine',\r\n\t\t\tlastName: 'Glazyer',\r\n\t\t\temail: 'kglazyer1t@unblog.fr',\r\n\t\t\tuserName: 'kglazyer1t',\r\n\t\t\tgender: 'Female',\r\n\t\t\tstatus: 2,\r\n\t\t\tdateOfBbirth: '8/20/1954',\r\n\t\t\tipAddress: '165.87.178.12',\r\n\t\t\ttype: 0,\r\n\t\t\t_userId: 1,\r\n\t\t\t_createdDate: '03/20/2015',\r\n\t\t\t_updatedDate: '06/18/2015'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 67,\r\n\t\t\tfirstName: 'Rem',\r\n\t\t\tlastName: 'Crichten',\r\n\t\t\temail: 'rcrichten1u@patch.com',\r\n\t\t\tuserName: 'rcrichten1u',\r\n\t\t\tgender: 'Male',\r\n\t\t\tstatus: 0,\r\n\t\t\tdateOfBbirth: '6/19/1950',\r\n\t\t\tipAddress: '184.177.108.6',\r\n\t\t\ttype: 1,\r\n\t\t\t_userId: 1,\r\n\t\t\t_createdDate: '11/12/2014',\r\n\t\t\t_updatedDate: '04/12/2011'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 68,\r\n\t\t\tfirstName: 'Colman',\r\n\t\t\tlastName: 'Simnor',\r\n\t\t\temail: 'csimnor1v@reddit.com',\r\n\t\t\tuserName: 'csimnor1v',\r\n\t\t\tgender: 'Male',\r\n\t\t\tstatus: 1,\r\n\t\t\tdateOfBbirth: '1/3/2000',\r\n\t\t\tipAddress: '19.3.156.170',\r\n\t\t\ttype: 0,\r\n\t\t\t_userId: 2,\r\n\t\t\t_createdDate: '05/06/2013',\r\n\t\t\t_updatedDate: '05/23/2014'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 69,\r\n\t\t\tfirstName: 'Arin',\r\n\t\t\tlastName: 'Hanscombe',\r\n\t\t\temail: 'ahanscombe1w@blogspot.com',\r\n\t\t\tuserName: 'ahanscombe1w',\r\n\t\t\tgender: 'Male',\r\n\t\t\tstatus: 2,\r\n\t\t\tdateOfBbirth: '9/21/1955',\r\n\t\t\tipAddress: '154.59.243.61',\r\n\t\t\ttype: 0,\r\n\t\t\t_userId: 2,\r\n\t\t\t_createdDate: '06/23/2013',\r\n\t\t\t_updatedDate: '11/10/2011'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 70,\r\n\t\t\tfirstName: 'Emogene',\r\n\t\t\tlastName: 'Gruszka',\r\n\t\t\temail: 'egruszka1x@cmu.edu',\r\n\t\t\tuserName: 'egruszka1x',\r\n\t\t\tgender: 'Female',\r\n\t\t\tstatus: 1,\r\n\t\t\tdateOfBbirth: '7/3/1971',\r\n\t\t\tipAddress: '105.138.138.125',\r\n\t\t\ttype: 1,\r\n\t\t\t_userId: 2,\r\n\t\t\t_createdDate: '07/26/2016',\r\n\t\t\t_updatedDate: '10/28/2013'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 71,\r\n\t\t\tfirstName: 'Rosina',\r\n\t\t\tlastName: 'Kauffman',\r\n\t\t\temail: 'rkauffman1y@google.com.hk',\r\n\t\t\tuserName: 'rkauffman1y',\r\n\t\t\tgender: 'Female',\r\n\t\t\tstatus: 2,\r\n\t\t\tdateOfBbirth: '11/21/1953',\r\n\t\t\tipAddress: '131.87.248.164',\r\n\t\t\ttype: 0,\r\n\t\t\t_userId: 1,\r\n\t\t\t_createdDate: '10/16/2016',\r\n\t\t\t_updatedDate: '07/24/2015'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 72,\r\n\t\t\tfirstName: 'Fran',\r\n\t\t\tlastName: 'MacGill',\r\n\t\t\temail: 'fmacgill1z@pinterest.com',\r\n\t\t\tuserName: 'fmacgill1z',\r\n\t\t\tgender: 'Female',\r\n\t\t\tstatus: 1,\r\n\t\t\tdateOfBbirth: '3/16/1991',\r\n\t\t\tipAddress: '155.41.152.146',\r\n\t\t\ttype: 1,\r\n\t\t\t_userId: 1,\r\n\t\t\t_createdDate: '11/23/2012',\r\n\t\t\t_updatedDate: '09/03/2016'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 73,\r\n\t\t\tfirstName: 'Marinna',\r\n\t\t\tlastName: 'Allington',\r\n\t\t\temail: 'mallington20@icio.us',\r\n\t\t\tuserName: 'mallington20',\r\n\t\t\tgender: 'Female',\r\n\t\t\tstatus: 0,\r\n\t\t\tdateOfBbirth: '3/15/1964',\r\n\t\t\tipAddress: '120.145.107.78',\r\n\t\t\ttype: 0,\r\n\t\t\t_userId: 2,\r\n\t\t\t_createdDate: '09/07/2011',\r\n\t\t\t_updatedDate: '12/26/2017'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 74,\r\n\t\t\tfirstName: 'Irv',\r\n\t\t\tlastName: 'Rishbrook',\r\n\t\t\temail: 'irishbrook21@tripod.com',\r\n\t\t\tuserName: 'irishbrook21',\r\n\t\t\tgender: 'Male',\r\n\t\t\tstatus: 0,\r\n\t\t\tdateOfBbirth: '11/25/1966',\r\n\t\t\tipAddress: '127.115.28.247',\r\n\t\t\ttype: 1,\r\n\t\t\t_userId: 1,\r\n\t\t\t_createdDate: '08/25/2014',\r\n\t\t\t_updatedDate: '06/16/2013'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 75,\r\n\t\t\tfirstName: 'Riordan',\r\n\t\t\tlastName: 'Durran',\r\n\t\t\temail: 'rdurran22@hubpages.com',\r\n\t\t\tuserName: 'rdurran22',\r\n\t\t\tgender: 'Male',\r\n\t\t\tstatus: 1,\r\n\t\t\tdateOfBbirth: '3/3/1952',\r\n\t\t\tipAddress: '246.102.6.88',\r\n\t\t\ttype: 1,\r\n\t\t\t_userId: 1,\r\n\t\t\t_createdDate: '04/02/2017',\r\n\t\t\t_updatedDate: '01/30/2011'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 76,\r\n\t\t\tfirstName: 'Phillie',\r\n\t\t\tlastName: 'Elward',\r\n\t\t\temail: 'pelward23@parallels.com',\r\n\t\t\tuserName: 'pelward23',\r\n\t\t\tgender: 'Female',\r\n\t\t\tstatus: 2,\r\n\t\t\tdateOfBbirth: '9/15/1965',\r\n\t\t\tipAddress: '75.220.58.105',\r\n\t\t\ttype: 1,\r\n\t\t\t_userId: 1,\r\n\t\t\t_createdDate: '06/23/2014',\r\n\t\t\t_updatedDate: '08/20/2016'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 77,\r\n\t\t\tfirstName: 'Hadlee',\r\n\t\t\tlastName: 'Haddow',\r\n\t\t\temail: 'hhaddow24@nationalgeographic.com',\r\n\t\t\tuserName: 'hhaddow24',\r\n\t\t\tgender: 'Male',\r\n\t\t\tstatus: 0,\r\n\t\t\tdateOfBbirth: '10/2/1973',\r\n\t\t\tipAddress: '155.40.18.171',\r\n\t\t\ttype: 0,\r\n\t\t\t_userId: 2,\r\n\t\t\t_createdDate: '03/05/2016',\r\n\t\t\t_updatedDate: '07/03/2017'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 78,\r\n\t\t\tfirstName: 'Luciano',\r\n\t\t\tlastName: 'Pittford',\r\n\t\t\temail: 'lpittford25@europa.eu',\r\n\t\t\tuserName: 'lpittford25',\r\n\t\t\tgender: 'Male',\r\n\t\t\tstatus: 0,\r\n\t\t\tdateOfBbirth: '6/14/1963',\r\n\t\t\tipAddress: '131.175.149.47',\r\n\t\t\ttype: 0,\r\n\t\t\t_userId: 2,\r\n\t\t\t_createdDate: '05/01/2014',\r\n\t\t\t_updatedDate: '08/02/2011'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 79,\r\n\t\t\tfirstName: 'Zelma',\r\n\t\t\tlastName: 'Cumberpatch',\r\n\t\t\temail: 'zcumberpatch26@multiply.com',\r\n\t\t\tuserName: 'zcumberpatch26',\r\n\t\t\tgender: 'Female',\r\n\t\t\tstatus: 1,\r\n\t\t\tdateOfBbirth: '7/16/1956',\r\n\t\t\tipAddress: '145.155.37.45',\r\n\t\t\ttype: 1,\r\n\t\t\t_userId: 1,\r\n\t\t\t_createdDate: '11/07/2015',\r\n\t\t\t_updatedDate: '12/03/2014'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 80,\r\n\t\t\tfirstName: 'Thornton',\r\n\t\t\tlastName: 'Smuth',\r\n\t\t\temail: 'tsmuth27@go.com',\r\n\t\t\tuserName: 'tsmuth27',\r\n\t\t\tgender: 'Male',\r\n\t\t\tstatus: 0,\r\n\t\t\tdateOfBbirth: '5/9/1989',\r\n\t\t\tipAddress: '146.151.187.52',\r\n\t\t\ttype: 1,\r\n\t\t\t_userId: 2,\r\n\t\t\t_createdDate: '12/25/2011',\r\n\t\t\t_updatedDate: '12/31/2010'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 81,\r\n\t\t\tfirstName: 'Bunnie',\r\n\t\t\tlastName: 'Ealden',\r\n\t\t\temail: 'bealden28@gravatar.com',\r\n\t\t\tuserName: 'bealden28',\r\n\t\t\tgender: 'Female',\r\n\t\t\tstatus: 0,\r\n\t\t\tdateOfBbirth: '10/2/1999',\r\n\t\t\tipAddress: '184.116.180.222',\r\n\t\t\ttype: 1,\r\n\t\t\t_userId: 2,\r\n\t\t\t_createdDate: '04/09/2015',\r\n\t\t\t_updatedDate: '12/07/2013'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 82,\r\n\t\t\tfirstName: 'Pearl',\r\n\t\t\tlastName: 'Robeson',\r\n\t\t\temail: 'probeson29@moonfruit.com',\r\n\t\t\tuserName: 'probeson29',\r\n\t\t\tgender: 'Female',\r\n\t\t\tstatus: 0,\r\n\t\t\tdateOfBbirth: '8/20/1980',\r\n\t\t\tipAddress: '235.213.39.68',\r\n\t\t\ttype: 0,\r\n\t\t\t_userId: 1,\r\n\t\t\t_createdDate: '07/13/2016',\r\n\t\t\t_updatedDate: '03/07/2012'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 83,\r\n\t\t\tfirstName: 'Charlie',\r\n\t\t\tlastName: 'Marvelley',\r\n\t\t\temail: 'cmarvelley2a@archive.org',\r\n\t\t\tuserName: 'cmarvelley2a',\r\n\t\t\tgender: 'Male',\r\n\t\t\tstatus: 0,\r\n\t\t\tdateOfBbirth: '11/22/1969',\r\n\t\t\tipAddress: '158.224.240.173',\r\n\t\t\ttype: 0,\r\n\t\t\t_userId: 2,\r\n\t\t\t_createdDate: '03/25/2012',\r\n\t\t\t_updatedDate: '11/20/2012'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 84,\r\n\t\t\tfirstName: 'Vere',\r\n\t\t\tlastName: 'McCartan',\r\n\t\t\temail: 'vmccartan2b@about.me',\r\n\t\t\tuserName: 'vmccartan2b',\r\n\t\t\tgender: 'Female',\r\n\t\t\tstatus: 1,\r\n\t\t\tdateOfBbirth: '3/24/1956',\r\n\t\t\tipAddress: '235.57.57.54',\r\n\t\t\ttype: 0,\r\n\t\t\t_userId: 2,\r\n\t\t\t_createdDate: '06/21/2016',\r\n\t\t\t_updatedDate: '05/17/2015'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 85,\r\n\t\t\tfirstName: 'Deni',\r\n\t\t\tlastName: 'Frostdicke',\r\n\t\t\temail: 'dfrostdicke2c@jigsy.com',\r\n\t\t\tuserName: 'dfrostdicke2c',\r\n\t\t\tgender: 'Female',\r\n\t\t\tstatus: 1,\r\n\t\t\tdateOfBbirth: '7/31/1964',\r\n\t\t\tipAddress: '108.183.237.176',\r\n\t\t\ttype: 1,\r\n\t\t\t_userId: 1,\r\n\t\t\t_createdDate: '03/13/2013',\r\n\t\t\t_updatedDate: '11/12/2017'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 86,\r\n\t\t\tfirstName: 'Poppy',\r\n\t\t\tlastName: 'Pech',\r\n\t\t\temail: 'ppech2d@wsj.com',\r\n\t\t\tuserName: 'ppech2d',\r\n\t\t\tgender: 'Female',\r\n\t\t\tstatus: 1,\r\n\t\t\tdateOfBbirth: '2/24/1976',\r\n\t\t\tipAddress: '221.35.18.213',\r\n\t\t\ttype: 1,\r\n\t\t\t_userId: 1,\r\n\t\t\t_createdDate: '09/10/2015',\r\n\t\t\t_updatedDate: '02/13/2013'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 87,\r\n\t\t\tfirstName: 'Dasya',\r\n\t\t\tlastName: 'O\\'Nion',\r\n\t\t\temail: 'donion2e@addthis.com',\r\n\t\t\tuserName: 'donion2e',\r\n\t\t\tgender: 'Female',\r\n\t\t\tstatus: 1,\r\n\t\t\tdateOfBbirth: '7/5/1993',\r\n\t\t\tipAddress: '28.25.44.40',\r\n\t\t\ttype: 0,\r\n\t\t\t_userId: 1,\r\n\t\t\t_createdDate: '04/12/2013',\r\n\t\t\t_updatedDate: '08/24/2012'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 88,\r\n\t\t\tfirstName: 'Marco',\r\n\t\t\tlastName: 'Izhakov',\r\n\t\t\temail: 'mizhakov2f@si.edu',\r\n\t\t\tuserName: 'mizhakov2f',\r\n\t\t\tgender: 'Male',\r\n\t\t\tstatus: 1,\r\n\t\t\tdateOfBbirth: '2/28/1999',\r\n\t\t\tipAddress: '155.123.153.36',\r\n\t\t\ttype: 0,\r\n\t\t\t_userId: 1,\r\n\t\t\t_createdDate: '06/04/2012',\r\n\t\t\t_updatedDate: '03/06/2017'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 89,\r\n\t\t\tfirstName: 'Jane',\r\n\t\t\tlastName: 'Meneux',\r\n\t\t\temail: 'jmeneux2g@bluehost.com',\r\n\t\t\tuserName: 'jmeneux2g',\r\n\t\t\tgender: 'Female',\r\n\t\t\tstatus: 1,\r\n\t\t\tdateOfBbirth: '3/15/1962',\r\n\t\t\tipAddress: '216.200.223.149',\r\n\t\t\ttype: 1,\r\n\t\t\t_userId: 2,\r\n\t\t\t_createdDate: '11/24/2015',\r\n\t\t\t_updatedDate: '02/08/2012'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 90,\r\n\t\t\tfirstName: 'Audry',\r\n\t\t\tlastName: 'Glasheen',\r\n\t\t\temail: 'aglasheen2h@booking.com',\r\n\t\t\tuserName: 'aglasheen2h',\r\n\t\t\tgender: 'Female',\r\n\t\t\tstatus: 2,\r\n\t\t\tdateOfBbirth: '10/24/1962',\r\n\t\t\tipAddress: '186.134.95.243',\r\n\t\t\ttype: 0,\r\n\t\t\t_userId: 1,\r\n\t\t\t_createdDate: '09/13/2016',\r\n\t\t\t_updatedDate: '04/28/2014'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 91,\r\n\t\t\tfirstName: 'Florida',\r\n\t\t\tlastName: 'Lawleff',\r\n\t\t\temail: 'flawleff2i@livejournal.com',\r\n\t\t\tuserName: 'flawleff2i',\r\n\t\t\tgender: 'Female',\r\n\t\t\tstatus: 1,\r\n\t\t\tdateOfBbirth: '2/3/1960',\r\n\t\t\tipAddress: '88.32.51.173',\r\n\t\t\ttype: 0,\r\n\t\t\t_userId: 1,\r\n\t\t\t_createdDate: '03/22/2018',\r\n\t\t\t_updatedDate: '11/28/2010'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 92,\r\n\t\t\tfirstName: 'Christoforo',\r\n\t\t\tlastName: 'Pinchon',\r\n\t\t\temail: 'cpinchon2j@bloglovin.com',\r\n\t\t\tuserName: 'cpinchon2j',\r\n\t\t\tgender: 'Male',\r\n\t\t\tstatus: 2,\r\n\t\t\tdateOfBbirth: '2/26/1995',\r\n\t\t\tipAddress: '244.162.142.84',\r\n\t\t\ttype: 0,\r\n\t\t\t_userId: 2,\r\n\t\t\t_createdDate: '11/14/2017',\r\n\t\t\t_updatedDate: '11/19/2016'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 93,\r\n\t\t\tfirstName: 'Bertie',\r\n\t\t\tlastName: 'Antognazzi',\r\n\t\t\temail: 'bantognazzi2k@ow.ly',\r\n\t\t\tuserName: 'bantognazzi2k',\r\n\t\t\tgender: 'Male',\r\n\t\t\tstatus: 2,\r\n\t\t\tdateOfBbirth: '6/7/1955',\r\n\t\t\tipAddress: '108.174.189.179',\r\n\t\t\ttype: 0,\r\n\t\t\t_userId: 2,\r\n\t\t\t_createdDate: '08/03/2016',\r\n\t\t\t_updatedDate: '01/27/2018'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 94,\r\n\t\t\tfirstName: 'Clevey',\r\n\t\t\tlastName: 'Grima',\r\n\t\t\temail: 'cgrima2l@cmu.edu',\r\n\t\t\tuserName: 'cgrima2l',\r\n\t\t\tgender: 'Male',\r\n\t\t\tstatus: 0,\r\n\t\t\tdateOfBbirth: '7/7/1981',\r\n\t\t\tipAddress: '255.186.178.211',\r\n\t\t\ttype: 1,\r\n\t\t\t_userId: 2,\r\n\t\t\t_createdDate: '03/23/2014',\r\n\t\t\t_updatedDate: '02/10/2011'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 95,\r\n\t\t\tfirstName: 'Herbie',\r\n\t\t\tlastName: 'Symper',\r\n\t\t\temail: 'hsymper2m@ca.gov',\r\n\t\t\tuserName: 'hsymper2m',\r\n\t\t\tgender: 'Male',\r\n\t\t\tstatus: 0,\r\n\t\t\tdateOfBbirth: '7/16/1993',\r\n\t\t\tipAddress: '54.240.157.6',\r\n\t\t\ttype: 0,\r\n\t\t\t_userId: 1,\r\n\t\t\t_createdDate: '07/27/2011',\r\n\t\t\t_updatedDate: '05/28/2013'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 96,\r\n\t\t\tfirstName: 'Kizzie',\r\n\t\t\tlastName: 'Clapson',\r\n\t\t\temail: 'kclapson2n@linkedin.com',\r\n\t\t\tuserName: 'kclapson2n',\r\n\t\t\tgender: 'Female',\r\n\t\t\tstatus: 1,\r\n\t\t\tdateOfBbirth: '1/26/1977',\r\n\t\t\tipAddress: '171.243.142.104',\r\n\t\t\ttype: 1,\r\n\t\t\t_userId: 2,\r\n\t\t\t_createdDate: '09/03/2011',\r\n\t\t\t_updatedDate: '10/14/2014'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 97,\r\n\t\t\tfirstName: 'Sigvard',\r\n\t\t\tlastName: 'Edwin',\r\n\t\t\temail: 'sedwin2o@mlb.com',\r\n\t\t\tuserName: 'sedwin2o',\r\n\t\t\tgender: 'Male',\r\n\t\t\tstatus: 0,\r\n\t\t\tdateOfBbirth: '4/24/1966',\r\n\t\t\tipAddress: '78.224.218.52',\r\n\t\t\ttype: 0,\r\n\t\t\t_userId: 1,\r\n\t\t\t_createdDate: '05/20/2017',\r\n\t\t\t_updatedDate: '09/17/2013'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 98,\r\n\t\t\tfirstName: 'Boniface',\r\n\t\t\tlastName: 'Rodd',\r\n\t\t\temail: 'brodd2p@123-reg.co.uk',\r\n\t\t\tuserName: 'brodd2p',\r\n\t\t\tgender: 'Male',\r\n\t\t\tstatus: 2,\r\n\t\t\tdateOfBbirth: '10/24/1978',\r\n\t\t\tipAddress: '250.44.55.222',\r\n\t\t\ttype: 1,\r\n\t\t\t_userId: 2,\r\n\t\t\t_createdDate: '04/21/2012',\r\n\t\t\t_updatedDate: '07/30/2012'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 99,\r\n\t\t\tfirstName: 'Dorena',\r\n\t\t\tlastName: 'Oliva',\r\n\t\t\temail: 'doliva2q@europa.eu',\r\n\t\t\tuserName: 'doliva2q',\r\n\t\t\tgender: 'Female',\r\n\t\t\tstatus: 1,\r\n\t\t\tdateOfBbirth: '6/16/1987',\r\n\t\t\tipAddress: '94.196.238.12',\r\n\t\t\ttype: 0,\r\n\t\t\t_userId: 1,\r\n\t\t\t_createdDate: '10/23/2016',\r\n\t\t\t_updatedDate: '06/28/2014'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 100,\r\n\t\t\tfirstName: 'Sibylla',\r\n\t\t\tlastName: 'O\\'Cahey',\r\n\t\t\temail: 'socahey2r@paginegialle.it',\r\n\t\t\tuserName: 'socahey2r',\r\n\t\t\tgender: 'Female',\r\n\t\t\tstatus: 2,\r\n\t\t\tdateOfBbirth: '10/13/1958',\r\n\t\t\tipAddress: '139.240.194.212',\r\n\t\t\ttype: 1,\r\n\t\t\t_userId: 1,\r\n\t\t\t_createdDate: '11/25/2014',\r\n\t\t\t_updatedDate: '08/18/2015'\r\n\t\t}\r\n\t];\r\n}\r\n","export class OrdersTable {\r\n\tpublic static orders: any = [\r\n\t\t// e-commerce => orders\r\n\t\t{\r\n\t\t\tid: 'a68e31e0-9d88-4065-abc4-c74cc7c293ae',\r\n\t\t\tcustomer_id: 38,\r\n\t\t\torder_date: '8/6/2012',\r\n\t\t\titems: [\r\n\t\t\t\t{\r\n\t\t\t\t\tproduct_id: 31,\r\n\t\t\t\t\tcount: 1\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tproduct_id: 1,\r\n\t\t\t\t\tcount: 1\r\n\t\t\t\t}\r\n\t\t\t],\r\n\t\t\torder_status: 'on the way'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: '5055fa9e-3b1a-4668-a63e-4767e9cda711',\r\n\t\t\tcustomer_id: 58,\r\n\t\t\torder_date: '2/13/2012',\r\n\t\t\titems: [\r\n\t\t\t\t{\r\n\t\t\t\t\tproduct_id: 98,\r\n\t\t\t\t\tcount: 2\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tproduct_id: 11,\r\n\t\t\t\t\tcount: 1\r\n\t\t\t\t}\r\n\t\t\t],\r\n\t\t\torder_status: 'on the way'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: '0c06643b-030a-4ea0-92e5-e0177645943d',\r\n\t\t\tcustomer_id: 13,\r\n\t\t\torder_date: '4/19/2016',\r\n\t\t\titems: [\r\n\t\t\t\t{\r\n\t\t\t\t\tproduct_id: 32,\r\n\t\t\t\t\tcount: 1\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tproduct_id: 77,\r\n\t\t\t\t\tcount: 1\r\n\t\t\t\t}\r\n\t\t\t],\r\n\t\t\torder_status: 'sent'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: '8bbdbe05-88c6-47f2-b531-65fd9f97d649',\r\n\t\t\tcustomer_id: 97,\r\n\t\t\torder_date: '7/30/2012',\r\n\t\t\titems: [\r\n\t\t\t\t{\r\n\t\t\t\t\tproduct_id: 96,\r\n\t\t\t\t\tcount: 1\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tproduct_id: 99,\r\n\t\t\t\t\tcount: 2\r\n\t\t\t\t}\r\n\t\t\t],\r\n\t\t\torder_status: 'delivered'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: '2af76e30-f9d6-427c-aad4-414908459e7f',\r\n\t\t\tcustomer_id: 90,\r\n\t\t\torder_date: '12/20/2012',\r\n\t\t\titems: [\r\n\t\t\t\t{\r\n\t\t\t\t\tproduct_id: 100,\r\n\t\t\t\t\tcount: 5\r\n\t\t\t\t}\r\n\t\t\t],\r\n\t\t\torder_status: 'paid'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: '7951e68b-e2e9-4cf9-82c4-9e963031b6b7',\r\n\t\t\tcustomer_id: 82,\r\n\t\t\torder_date: '1/4/2014',\r\n\t\t\titems: [\r\n\t\t\t\t{\r\n\t\t\t\t\tproduct_id: 35,\r\n\t\t\t\t\tcount: 1\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tproduct_id: 88,\r\n\t\t\t\t\tcount: 1\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tproduct_id: 22,\r\n\t\t\t\t\tcount: 1\r\n\t\t\t\t}\r\n\t\t\t],\r\n\t\t\torder_status: 'delivered'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: '4dc2c379-c7aa-4356-b609-0ca5777b7b8e',\r\n\t\t\tcustomer_id: 91,\r\n\t\t\torder_date: '8/2/2016',\r\n\t\t\titems: [\r\n\t\t\t\t{\r\n\t\t\t\t\tproduct_id: 36,\r\n\t\t\t\t\tcount: 1\r\n\t\t\t\t}\r\n\t\t\t],\r\n\t\t\torder_status: 'on the way'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: '3eaf04e5-855c-4a57-b781-3edff99ddae5',\r\n\t\t\tcustomer_id: 63,\r\n\t\t\torder_date: '4/11/2012',\r\n\t\t\titems: [\r\n\t\t\t\t{\r\n\t\t\t\t\tproduct_id: 67,\r\n\t\t\t\t\tcount: 1\r\n\t\t\t\t}\r\n\t\t\t],\r\n\t\t\torder_status: 'on the way'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: '4cca88ef-1a39-48cf-a6ed-290e7e34f756',\r\n\t\t\tcustomer_id: 5,\r\n\t\t\torder_date: '4/19/2011',\r\n\t\t\titems: [\r\n\t\t\t\t{\r\n\t\t\t\t\tproduct_id: 9,\r\n\t\t\t\t\tcount: 1\r\n\t\t\t\t}\r\n\t\t\t],\r\n\t\t\torder_status: 'sent'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: '3cd8e2b8-83ee-4c0d-a4c3-fed313fc836a',\r\n\t\t\tcustomer_id: 81,\r\n\t\t\torder_date: '10/2/2010',\r\n\t\t\titems: [\r\n\t\t\t\t{\r\n\t\t\t\t\tproduct_id: 98,\r\n\t\t\t\t\tcount: 1\r\n\t\t\t\t}\r\n\t\t\t],\r\n\t\t\torder_status: 'on the way'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 'da2f7ea8-82aa-474a-a97f-3d75d56d734f',\r\n\t\t\tcustomer_id: 100,\r\n\t\t\torder_date: '3/30/2016',\r\n\t\t\titems: [\r\n\t\t\t\t{\r\n\t\t\t\t\tproduct_id: 3,\r\n\t\t\t\t\tcount: 1\r\n\t\t\t\t}\r\n\t\t\t],\r\n\t\t\torder_status: 'sent'\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 'e674592d-ea7f-40d4-aa2c-ecac4039c81b',\r\n\t\t\tcustomer_id: 4,\r\n\t\t\torder_date: '6/25/2011',\r\n\t\t\titems: [\r\n\t\t\t\t{\r\n\t\t\t\t\tproduct_id: 71,\r\n\t\t\t\t\tcount: 1\r\n\t\t\t\t}\r\n\t\t\t],\r\n\t\t\torder_status: 'delivered'\r\n\t\t}\r\n\t];\r\n}\r\n","// Sub category for cars\r\nexport class RemarksTable {\r\n\tpublic static remarks: any = [{\r\n\t\t'id': 1,\r\n\t\t'carId': 1,\r\n\t\t'text': 'enim lorem ipsum dolor sit amet consectetuer adipiscing elit proin',\r\n\t\t'_userId': 2,\r\n\t\t'_createdDate': '02/20/2011',\r\n\t\t'_updatedDate': '06/25/2013',\r\n\t\t'type': 0,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '11/18/2018'\r\n\t}, {\r\n\t\t'id': 2,\r\n\t\t'carId': 1,\r\n\t\t'text': 'in',\r\n\t\t'_userId': 1,\r\n\t\t'_createdDate': '02/05/2014',\r\n\t\t'_updatedDate': '09/25/2017',\r\n\t\t'type': 0,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '10/26/2019'\r\n\t}, {\r\n\t\t'id': 3,\r\n\t\t'carId': 1,\r\n\t\t'text': 'quis tortor id nulla ultrices aliquet maecenas leo',\r\n\t\t'_userId': 2,\r\n\t\t'_createdDate': '04/10/2017',\r\n\t\t'_updatedDate': '06/12/2012',\r\n\t\t'type': 2,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '05/10/2020'\r\n\t}, {\r\n\t\t'id': 4,\r\n\t\t'carId': 2,\r\n\t\t'text': 'curabitur gravida nisi at nibh in hac habitasse',\r\n\t\t'_userId': 1,\r\n\t\t'_createdDate': '03/02/2015',\r\n\t\t'_updatedDate': '03/30/2014',\r\n\t\t'type': 1,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '12/13/2018'\r\n\t}, {\r\n\t\t'id': 5,\r\n\t\t'carId': 2,\r\n\t\t'text': 'orci luctus et ultrices posuere cubilia curae duis faucibus accumsan odio curabitur convallis',\r\n\t\t'_userId': 2,\r\n\t\t'_createdDate': '02/14/2015',\r\n\t\t'_updatedDate': '07/11/2013',\r\n\t\t'type': 0,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '10/24/2019'\r\n\t}, {\r\n\t\t'id': 6,\r\n\t\t'carId': 2,\r\n\t\t'text': 'integer ac',\r\n\t\t'_userId': 1,\r\n\t\t'_createdDate': '05/28/2015',\r\n\t\t'_updatedDate': '07/29/2016',\r\n\t\t'type': 0,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '01/22/2019'\r\n\t}, {\r\n\t\t'id': 7,\r\n\t\t'carId': 3,\r\n\t\t'text': 'lectus aliquam sit amet diam in magna bibendum imperdiet nullam orci pede',\r\n\t\t'_userId': 2,\r\n\t\t'_createdDate': '03/08/2013',\r\n\t\t'_updatedDate': '09/24/2016',\r\n\t\t'type': 1,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '03/31/2020'\r\n\t}, {\r\n\t\t'id': 8,\r\n\t\t'carId': 3,\r\n\t\t'text': 'morbi odio odio elementum eu interdum eu tincidunt in leo',\r\n\t\t'_userId': 2,\r\n\t\t'_createdDate': '07/09/2010',\r\n\t\t'_updatedDate': '01/25/2015',\r\n\t\t'type': 1,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '02/20/2019'\r\n\t}, {\r\n\t\t'id': 9,\r\n\t\t'carId': 3,\r\n\t\t'text': 'orci',\r\n\t\t'_userId': 1,\r\n\t\t'_createdDate': '02/02/2018',\r\n\t\t'_updatedDate': '08/04/2015',\r\n\t\t'type': 0,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '04/03/2020'\r\n\t}, {\r\n\t\t'id': 10,\r\n\t\t'carId': 4,\r\n\t\t'text': 'vel pede morbi porttitor lorem id ligula suspendisse ornare consequat lectus in est risus auctor sed tristique in tempus sit',\r\n\t\t'_userId': 1,\r\n\t\t'_createdDate': '09/09/2013',\r\n\t\t'_updatedDate': '03/06/2013',\r\n\t\t'type': 1,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '10/28/2018'\r\n\t}, {\r\n\t\t'id': 11,\r\n\t\t'carId': 4,\r\n\t\t'text': 'ligula sit amet eleifend pede libero quis orci',\r\n\t\t'_userId': 2,\r\n\t\t'_createdDate': '08/17/2010',\r\n\t\t'_updatedDate': '03/05/2016',\r\n\t\t'type': 2,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '06/22/2019'\r\n\t}, {\r\n\t\t'id': 12,\r\n\t\t'carId': 4,\r\n\t\t'text': 'eget eleifend luctus ultricies eu nibh quisque id justo sit amet',\r\n\t\t'_userId': 2,\r\n\t\t'_createdDate': '09/17/2014',\r\n\t\t'_updatedDate': '04/18/2011',\r\n\t\t'type': 1,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '01/01/2020'\r\n\t}, {\r\n\t\t'id': 13,\r\n\t\t'carId': 5,\r\n\t\t'text': '',\r\n\t\t'_userId': 1,\r\n\t\t'_createdDate': '03/25/2013',\r\n\t\t'_updatedDate': '11/13/2013',\r\n\t\t'type': 2,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '05/25/2019'\r\n\t}, {\r\n\t\t'id': 14,\r\n\t\t'carId': 5,\r\n\t\t'text': 'justo lacinia eget tincidunt eget tempus vel pede morbi porttitor',\r\n\t\t'_userId': 2,\r\n\t\t'_createdDate': '03/22/2015',\r\n\t\t'_updatedDate': '04/22/2015',\r\n\t\t'type': 1,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '02/07/2020'\r\n\t}, {\r\n\t\t'id': 15,\r\n\t\t'carId': 5,\r\n\t\t'text': 'quam pede',\r\n\t\t'_userId': 1,\r\n\t\t'_createdDate': '03/18/2018',\r\n\t\t'_updatedDate': '06/01/2012',\r\n\t\t'type': 2,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '02/09/2020'\r\n\t}, {\r\n\t\t'id': 16,\r\n\t\t'carId': 6,\r\n\t\t'text': 'bibendum morbi non quam nec dui luctus rutrum nulla tellus in sagittis dui vel nisl duis ac nibh fusce',\r\n\t\t'_userId': 2,\r\n\t\t'_createdDate': '01/09/2013',\r\n\t\t'_updatedDate': '02/10/2017',\r\n\t\t'type': 1,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '09/21/2019'\r\n\t}, {\r\n\t\t'id': 17,\r\n\t\t'carId': 6,\r\n\t\t'text': 'id consequat in consequat ut nulla sed accumsan felis ut at dolor',\r\n\t\t'_userId': 2,\r\n\t\t'_createdDate': '07/27/2012',\r\n\t\t'_updatedDate': '04/13/2015',\r\n\t\t'type': 1,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '08/01/2019'\r\n\t}, {\r\n\t\t'id': 18,\r\n\t\t'carId': 6,\r\n\t\t'text': 'eu magna vulputate luctus cum sociis natoque penatibus et magnis dis parturient',\r\n\t\t'_userId': 1,\r\n\t\t'_createdDate': '08/12/2011',\r\n\t\t'_updatedDate': '04/08/2018',\r\n\t\t'type': 0,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '03/28/2020'\r\n\t}, {\r\n\t\t'id': 19,\r\n\t\t'carId': 7,\r\n\t\t'text': 'nec nisi vulputate nonummy maecenas tincidunt lacus at velit vivamus vel nulla eget',\r\n\t\t'_userId': 1,\r\n\t\t'_createdDate': '03/03/2013',\r\n\t\t'_updatedDate': '09/18/2017',\r\n\t\t'type': 0,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '08/08/2019'\r\n\t}, {\r\n\t\t'id': 20,\r\n\t\t'carId': 7,\r\n\t\t'text': '',\r\n\t\t'_userId': 1,\r\n\t\t'_createdDate': '05/06/2015',\r\n\t\t'_updatedDate': '02/20/2016',\r\n\t\t'type': 2,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '02/11/2019'\r\n\t}, {\r\n\t\t'id': 21,\r\n\t\t'carId': 7,\r\n\t\t'text': 'sed vestibulum sit amet cursus id turpis integer aliquet massa id lobortis convallis',\r\n\t\t'_userId': 2,\r\n\t\t'_createdDate': '08/05/2014',\r\n\t\t'_updatedDate': '03/13/2018',\r\n\t\t'type': 0,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '02/03/2020'\r\n\t}, {\r\n\t\t'id': 22,\r\n\t\t'carId': 8,\r\n\t\t'text': 'dolor morbi vel lectus in quam fringilla rhoncus mauris enim leo',\r\n\t\t'_userId': 2,\r\n\t\t'_createdDate': '04/25/2011',\r\n\t\t'_updatedDate': '03/09/2013',\r\n\t\t'type': 0,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '12/06/2018'\r\n\t}, {\r\n\t\t'id': 23,\r\n\t\t'carId': 8,\r\n\t\t'text': 'mauris lacinia sapien quis libero nullam sit amet turpis elementum ligula vehicula consequat morbi a ipsum integer a nibh',\r\n\t\t'_userId': 1,\r\n\t\t'_createdDate': '07/03/2014',\r\n\t\t'_updatedDate': '08/23/2013',\r\n\t\t'type': 2,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '05/18/2019'\r\n\t}, {\r\n\t\t'id': 24,\r\n\t\t'carId': 8,\r\n\t\t'text': 'ultrices posuere cubilia curae donec pharetra magna vestibulum aliquet ultrices erat tortor sollicitudin',\r\n\t\t'_userId': 2,\r\n\t\t'_createdDate': '05/21/2013',\r\n\t\t'_updatedDate': '10/01/2016',\r\n\t\t'type': 0,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '04/18/2019'\r\n\t}, {\r\n\t\t'id': 25,\r\n\t\t'carId': 9,\r\n\t\t'text': 'orci luctus et ultrices',\r\n\t\t'_userId': 2,\r\n\t\t'_createdDate': '05/29/2014',\r\n\t\t'_updatedDate': '02/03/2016',\r\n\t\t'type': 1,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '06/23/2019'\r\n\t}, {\r\n\t\t'id': 26,\r\n\t\t'carId': 9,\r\n\t\t'text': 'donec diam neque vestibulum eget vulputate ut',\r\n\t\t'_userId': 1,\r\n\t\t'_createdDate': '06/06/2012',\r\n\t\t'_updatedDate': '02/01/2018',\r\n\t\t'type': 2,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '12/29/2018'\r\n\t}, {\r\n\t\t'id': 27,\r\n\t\t'carId': 9,\r\n\t\t'text': 'sapien sapien non mi integer ac neque duis bibendum morbi non quam',\r\n\t\t'_userId': 1,\r\n\t\t'_createdDate': '05/12/2015',\r\n\t\t'_updatedDate': '11/11/2011',\r\n\t\t'type': 2,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '04/26/2020'\r\n\t}, {\r\n\t\t'id': 28,\r\n\t\t'carId': 10,\r\n\t\t'text': '',\r\n\t\t'_userId': 1,\r\n\t\t'_createdDate': '03/17/2013',\r\n\t\t'_updatedDate': '08/13/2013',\r\n\t\t'type': 2,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '05/12/2019'\r\n\t}, {\r\n\t\t'id': 29,\r\n\t\t'carId': 10,\r\n\t\t'text': 'aliquam lacus morbi quis tortor id nulla ultrices aliquet maecenas leo odio condimentum id luctus nec molestie sed',\r\n\t\t'_userId': 1,\r\n\t\t'_createdDate': '07/03/2016',\r\n\t\t'_updatedDate': '02/06/2011',\r\n\t\t'type': 2,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '02/24/2019'\r\n\t}, {\r\n\t\t'id': 30,\r\n\t\t'carId': 10,\r\n\t\t'text': 'donec quis orci eget orci vehicula condimentum',\r\n\t\t'_userId': 2,\r\n\t\t'_createdDate': '01/27/2014',\r\n\t\t'_updatedDate': '12/09/2016',\r\n\t\t'type': 1,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '02/27/2020'\r\n\t}, {\r\n\t\t'id': 31,\r\n\t\t'carId': 11,\r\n\t\t'text': 'etiam faucibus cursus urna ut tellus nulla ut erat',\r\n\t\t'_userId': 1,\r\n\t\t'_createdDate': '07/08/2014',\r\n\t\t'_updatedDate': '06/07/2014',\r\n\t\t'type': 1,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '05/26/2020'\r\n\t}, {\r\n\t\t'id': 32,\r\n\t\t'carId': 11,\r\n\t\t'text': 'hac habitasse platea dictumst etiam faucibus cursus urna ut tellus nulla ut erat id mauris vulputate elementum nullam varius',\r\n\t\t'_userId': 1,\r\n\t\t'_createdDate': '05/03/2016',\r\n\t\t'_updatedDate': '07/20/2012',\r\n\t\t'type': 1,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '08/11/2019'\r\n\t}, {\r\n\t\t'id': 33,\r\n\t\t'carId': 11,\r\n\t\t'text': 'vel enim sit amet',\r\n\t\t'_userId': 1,\r\n\t\t'_createdDate': '06/02/2017',\r\n\t\t'_updatedDate': '05/03/2012',\r\n\t\t'type': 0,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '12/18/2019'\r\n\t}, {\r\n\t\t'id': 34,\r\n\t\t'carId': 12,\r\n\t\t'text': 'est congue elementum in hac habitasse platea dictumst morbi vestibulum',\r\n\t\t'_userId': 2,\r\n\t\t'_createdDate': '03/28/2017',\r\n\t\t'_updatedDate': '07/23/2010',\r\n\t\t'type': 1,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '02/16/2019'\r\n\t}, {\r\n\t\t'id': 35,\r\n\t\t'carId': 12,\r\n\t\t'text': 'tempus vel pede morbi',\r\n\t\t'_userId': 1,\r\n\t\t'_createdDate': '10/29/2013',\r\n\t\t'_updatedDate': '01/22/2016',\r\n\t\t'type': 0,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '12/30/2018'\r\n\t}, {\r\n\t\t'id': 36,\r\n\t\t'carId': 12,\r\n\t\t'text': 'augue vel accumsan tellus nisi eu orci mauris lacinia sapien quis libero nullam sit amet turpis',\r\n\t\t'_userId': 2,\r\n\t\t'_createdDate': '03/31/2011',\r\n\t\t'_updatedDate': '08/20/2012',\r\n\t\t'type': 0,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '06/29/2019'\r\n\t}, {\r\n\t\t'id': 37,\r\n\t\t'carId': 13,\r\n\t\t'text': 'faucibus',\r\n\t\t'_userId': 2,\r\n\t\t'_createdDate': '12/24/2016',\r\n\t\t'_updatedDate': '03/01/2017',\r\n\t\t'type': 2,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '04/09/2020'\r\n\t}, {\r\n\t\t'id': 38,\r\n\t\t'carId': 13,\r\n\t\t'text': 'vulputate luctus cum sociis natoque penatibus et magnis dis parturient montes nascetur ridiculus',\r\n\t\t'_userId': 1,\r\n\t\t'_createdDate': '08/02/2015',\r\n\t\t'_updatedDate': '10/24/2011',\r\n\t\t'type': 1,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '03/03/2020'\r\n\t}, {\r\n\t\t'id': 39,\r\n\t\t'carId': 13,\r\n\t\t'text': 'nulla ultrices aliquet maecenas leo odio condimentum id luctus nec molestie sed justo pellentesque viverra pede ac',\r\n\t\t'_userId': 1,\r\n\t\t'_createdDate': '03/27/2011',\r\n\t\t'_updatedDate': '11/25/2017',\r\n\t\t'type': 2,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '12/22/2019'\r\n\t}, {\r\n\t\t'id': 40,\r\n\t\t'carId': 14,\r\n\t\t'text': 'vel accumsan tellus nisi eu orci mauris lacinia sapien quis libero nullam sit amet turpis elementum',\r\n\t\t'_userId': 1,\r\n\t\t'_createdDate': '02/03/2017',\r\n\t\t'_updatedDate': '03/15/2014',\r\n\t\t'type': 0,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '02/06/2020'\r\n\t}, {\r\n\t\t'id': 41,\r\n\t\t'carId': 14,\r\n\t\t'text': 'nec dui luctus rutrum nulla tellus in sagittis dui vel',\r\n\t\t'_userId': 2,\r\n\t\t'_createdDate': '08/12/2013',\r\n\t\t'_updatedDate': '03/26/2013',\r\n\t\t'type': 0,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '09/22/2019'\r\n\t}, {\r\n\t\t'id': 42,\r\n\t\t'carId': 14,\r\n\t\t'text': 'integer aliquet massa id lobortis convallis',\r\n\t\t'_userId': 1,\r\n\t\t'_createdDate': '09/09/2013',\r\n\t\t'_updatedDate': '03/06/2018',\r\n\t\t'type': 1,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '01/19/2019'\r\n\t}, {\r\n\t\t'id': 43,\r\n\t\t'carId': 15,\r\n\t\t'text': 'proin leo odio porttitor id consequat in consequat',\r\n\t\t'_userId': 2,\r\n\t\t'_createdDate': '04/25/2015',\r\n\t\t'_updatedDate': '09/29/2015',\r\n\t\t'type': 0,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '11/02/2019'\r\n\t}, {\r\n\t\t'id': 44,\r\n\t\t'carId': 15,\r\n\t\t'text': 'mauris enim leo rhoncus sed vestibulum sit amet cursus id turpis integer aliquet massa id lobortis convallis tortor',\r\n\t\t'_userId': 1,\r\n\t\t'_createdDate': '11/28/2013',\r\n\t\t'_updatedDate': '10/12/2012',\r\n\t\t'type': 2,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '02/28/2019'\r\n\t}, {\r\n\t\t'id': 45,\r\n\t\t'carId': 15,\r\n\t\t'text': 'felis donec semper sapien a libero nam dui proin leo odio porttitor id consequat in consequat ut',\r\n\t\t'_userId': 1,\r\n\t\t'_createdDate': '12/24/2016',\r\n\t\t'_updatedDate': '03/18/2016',\r\n\t\t'type': 1,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '11/13/2019'\r\n\t}, {\r\n\t\t'id': 46,\r\n\t\t'carId': 16,\r\n\t\t'text': 'id lobortis convallis tortor risus dapibus augue vel accumsan tellus nisi eu orci mauris lacinia sapien quis libero',\r\n\t\t'_userId': 2,\r\n\t\t'_createdDate': '09/16/2015',\r\n\t\t'_updatedDate': '09/20/2011',\r\n\t\t'type': 1,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '11/28/2019'\r\n\t}, {\r\n\t\t'id': 47,\r\n\t\t'carId': 16,\r\n\t\t'text': 'semper rutrum nulla nunc purus phasellus',\r\n\t\t'_userId': 1,\r\n\t\t'_createdDate': '04/09/2017',\r\n\t\t'_updatedDate': '08/19/2012',\r\n\t\t'type': 0,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '11/05/2019'\r\n\t}, {\r\n\t\t'id': 48,\r\n\t\t'carId': 16,\r\n\t\t'text': 'curabitur at ipsum ac tellus semper',\r\n\t\t'_userId': 2,\r\n\t\t'_createdDate': '10/09/2010',\r\n\t\t'_updatedDate': '11/20/2014',\r\n\t\t'type': 2,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '11/27/2018'\r\n\t}, {\r\n\t\t'id': 49,\r\n\t\t'carId': 17,\r\n\t\t'text': 'tellus nisi eu orci mauris lacinia sapien',\r\n\t\t'_userId': 1,\r\n\t\t'_createdDate': '11/18/2012',\r\n\t\t'_updatedDate': '10/24/2017',\r\n\t\t'type': 1,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '04/10/2019'\r\n\t}, {\r\n\t\t'id': 50,\r\n\t\t'carId': 17,\r\n\t\t'text': 'quisque id justo sit amet sapien dignissim vestibulum vestibulum',\r\n\t\t'_userId': 1,\r\n\t\t'_createdDate': '09/21/2015',\r\n\t\t'_updatedDate': '11/27/2016',\r\n\t\t'type': 2,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '12/17/2018'\r\n\t}, {\r\n\t\t'id': 51,\r\n\t\t'carId': 17,\r\n\t\t'text': 'diam id ornare imperdiet sapien urna pretium nisl ut volutpat sapien arcu sed',\r\n\t\t'_userId': 1,\r\n\t\t'_createdDate': '08/13/2012',\r\n\t\t'_updatedDate': '06/21/2016',\r\n\t\t'type': 1,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '06/11/2019'\r\n\t}, {\r\n\t\t'id': 52,\r\n\t\t'carId': 18,\r\n\t\t'text': 'eget nunc donec',\r\n\t\t'_userId': 1,\r\n\t\t'_createdDate': '03/30/2012',\r\n\t\t'_updatedDate': '08/05/2012',\r\n\t\t'type': 1,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '11/15/2018'\r\n\t}, {\r\n\t\t'id': 53,\r\n\t\t'carId': 18,\r\n\t\t'text': 'nulla ac enim in tempor',\r\n\t\t'_userId': 1,\r\n\t\t'_createdDate': '04/30/2012',\r\n\t\t'_updatedDate': '11/12/2013',\r\n\t\t'type': 2,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '01/16/2020'\r\n\t}, {\r\n\t\t'id': 54,\r\n\t\t'carId': 18,\r\n\t\t'text': 'in quis justo maecenas rhoncus aliquam lacus morbi quis tortor id',\r\n\t\t'_userId': 2,\r\n\t\t'_createdDate': '08/29/2012',\r\n\t\t'_updatedDate': '12/10/2012',\r\n\t\t'type': 0,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '09/25/2019'\r\n\t}, {\r\n\t\t'id': 55,\r\n\t\t'carId': 19,\r\n\t\t'text': 'justo in',\r\n\t\t'_userId': 2,\r\n\t\t'_createdDate': '11/27/2017',\r\n\t\t'_updatedDate': '10/03/2010',\r\n\t\t'type': 0,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '10/04/2019'\r\n\t}, {\r\n\t\t'id': 56,\r\n\t\t'carId': 19,\r\n\t\t'text': 'duis',\r\n\t\t'_userId': 2,\r\n\t\t'_createdDate': '07/09/2016',\r\n\t\t'_updatedDate': '02/13/2013',\r\n\t\t'type': 2,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '05/07/2020'\r\n\t}, {\r\n\t\t'id': 57,\r\n\t\t'carId': 19,\r\n\t\t'text': 'luctus tincidunt nulla mollis molestie lorem quisque ut erat curabitur gravida nisi at nibh in hac habitasse platea',\r\n\t\t'_userId': 1,\r\n\t\t'_createdDate': '01/10/2014',\r\n\t\t'_updatedDate': '01/07/2014',\r\n\t\t'type': 0,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '04/01/2020'\r\n\t}, {\r\n\t\t'id': 58,\r\n\t\t'carId': 20,\r\n\t\t'text': 'non sodales sed tincidunt',\r\n\t\t'_userId': 1,\r\n\t\t'_createdDate': '02/15/2016',\r\n\t\t'_updatedDate': '12/12/2013',\r\n\t\t'type': 1,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '08/26/2019'\r\n\t}, {\r\n\t\t'id': 59,\r\n\t\t'carId': 20,\r\n\t\t'text': 'dictumst aliquam augue quam sollicitudin vitae consectetuer eget rutrum at lorem integer tincidunt ante vel ipsum',\r\n\t\t'_userId': 2,\r\n\t\t'_createdDate': '01/08/2018',\r\n\t\t'_updatedDate': '06/20/2011',\r\n\t\t'type': 2,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '10/27/2019'\r\n\t}, {\r\n\t\t'id': 60,\r\n\t\t'carId': 20,\r\n\t\t'text': 'adipiscing molestie hendrerit at vulputate',\r\n\t\t'_userId': 1,\r\n\t\t'_createdDate': '01/06/2013',\r\n\t\t'_updatedDate': '09/08/2017',\r\n\t\t'type': 2,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '05/03/2020'\r\n\t}, {\r\n\t\t'id': 61,\r\n\t\t'carId': 21,\r\n\t\t'text': 'sed tristique in tempus sit amet sem fusce consequat nulla nisl',\r\n\t\t'_userId': 1,\r\n\t\t'_createdDate': '01/05/2012',\r\n\t\t'_updatedDate': '06/05/2014',\r\n\t\t'type': 1,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '04/06/2019'\r\n\t}, {\r\n\t\t'id': 62,\r\n\t\t'carId': 21,\r\n\t\t'text': 'sem praesent id massa id nisl venenatis lacinia aenean sit',\r\n\t\t'_userId': 2,\r\n\t\t'_createdDate': '12/06/2014',\r\n\t\t'_updatedDate': '12/23/2013',\r\n\t\t'type': 2,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '02/05/2019'\r\n\t}, {\r\n\t\t'id': 63,\r\n\t\t'carId': 21,\r\n\t\t'text': 'curabitur at ipsum ac tellus semper interdum',\r\n\t\t'_userId': 2,\r\n\t\t'_createdDate': '11/23/2014',\r\n\t\t'_updatedDate': '04/10/2013',\r\n\t\t'type': 0,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '04/05/2020'\r\n\t}, {\r\n\t\t'id': 64,\r\n\t\t'carId': 22,\r\n\t\t'text': 'donec ut mauris eget massa tempor convallis',\r\n\t\t'_userId': 2,\r\n\t\t'_createdDate': '10/16/2011',\r\n\t\t'_updatedDate': '11/30/2012',\r\n\t\t'type': 2,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '11/23/2019'\r\n\t}, {\r\n\t\t'id': 65,\r\n\t\t'carId': 22,\r\n\t\t'text': 'in faucibus orci luctus et ultrices posuere',\r\n\t\t'_userId': 1,\r\n\t\t'_createdDate': '11/12/2011',\r\n\t\t'_updatedDate': '12/16/2016',\r\n\t\t'type': 2,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '04/23/2019'\r\n\t}, {\r\n\t\t'id': 66,\r\n\t\t'carId': 22,\r\n\t\t'text': 'ligula',\r\n\t\t'_userId': 2,\r\n\t\t'_createdDate': '12/30/2014',\r\n\t\t'_updatedDate': '12/12/2011',\r\n\t\t'type': 1,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '03/28/2019'\r\n\t}, {\r\n\t\t'id': 67,\r\n\t\t'carId': 23,\r\n\t\t'text': 'congue etiam justo etiam pretium iaculis justo in hac habitasse platea dictumst etiam faucibus cursus',\r\n\t\t'_userId': 1,\r\n\t\t'_createdDate': '05/09/2014',\r\n\t\t'_updatedDate': '05/28/2013',\r\n\t\t'type': 1,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '11/25/2018'\r\n\t}, {\r\n\t\t'id': 68,\r\n\t\t'carId': 23,\r\n\t\t'text': 'mollis molestie lorem quisque ut erat curabitur gravida nisi',\r\n\t\t'_userId': 2,\r\n\t\t'_createdDate': '12/07/2011',\r\n\t\t'_updatedDate': '08/07/2011',\r\n\t\t'type': 1,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '06/22/2019'\r\n\t}, {\r\n\t\t'id': 69,\r\n\t\t'carId': 23,\r\n\t\t'text': 'maecenas tincidunt lacus at velit vivamus vel nulla eget eros elementum pellentesque quisque porta volutpat erat quisque',\r\n\t\t'_userId': 1,\r\n\t\t'_createdDate': '11/15/2012',\r\n\t\t'_updatedDate': '09/02/2015',\r\n\t\t'type': 1,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '10/30/2018'\r\n\t}, {\r\n\t\t'id': 70,\r\n\t\t'carId': 24,\r\n\t\t'text': 'libero convallis',\r\n\t\t'_userId': 1,\r\n\t\t'_createdDate': '12/04/2010',\r\n\t\t'_updatedDate': '09/25/2011',\r\n\t\t'type': 1,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '11/25/2018'\r\n\t}, {\r\n\t\t'id': 71,\r\n\t\t'carId': 24,\r\n\t\t'text': 'vitae nisi nam ultrices libero',\r\n\t\t'_userId': 1,\r\n\t\t'_createdDate': '02/24/2015',\r\n\t\t'_updatedDate': '03/10/2011',\r\n\t\t'type': 2,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '04/17/2020'\r\n\t}, {\r\n\t\t'id': 72,\r\n\t\t'carId': 24,\r\n\t\t'text': 'augue a suscipit nulla elit ac nulla sed vel enim sit amet nunc',\r\n\t\t'_userId': 1,\r\n\t\t'_createdDate': '02/21/2012',\r\n\t\t'_updatedDate': '12/09/2011',\r\n\t\t'type': 2,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '07/22/2019'\r\n\t}, {\r\n\t\t'id': 73,\r\n\t\t'carId': 25,\r\n\t\t'text': 'id turpis integer aliquet massa id lobortis convallis tortor',\r\n\t\t'_userId': 1,\r\n\t\t'_createdDate': '01/20/2014',\r\n\t\t'_updatedDate': '09/03/2014',\r\n\t\t'type': 2,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '01/10/2020'\r\n\t}, {\r\n\t\t'id': 74,\r\n\t\t'carId': 25,\r\n\t\t'text': 'felis fusce posuere felis sed lacus morbi sem mauris laoreet',\r\n\t\t'_userId': 1,\r\n\t\t'_createdDate': '10/24/2014',\r\n\t\t'_updatedDate': '02/19/2018',\r\n\t\t'type': 1,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '12/19/2019'\r\n\t}, {\r\n\t\t'id': 75,\r\n\t\t'carId': 25,\r\n\t\t'text': 'neque libero convallis eget eleifend luctus ultricies eu nibh quisque id justo sit amet sapien dignissim',\r\n\t\t'_userId': 2,\r\n\t\t'_createdDate': '02/19/2016',\r\n\t\t'_updatedDate': '06/26/2013',\r\n\t\t'type': 1,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '02/23/2020'\r\n\t}, {\r\n\t\t'id': 76,\r\n\t\t'carId': 26,\r\n\t\t'text': 'nulla nunc purus phasellus in felis donec semper sapien a libero nam',\r\n\t\t'_userId': 1,\r\n\t\t'_createdDate': '07/29/2011',\r\n\t\t'_updatedDate': '12/09/2011',\r\n\t\t'type': 1,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '02/07/2020'\r\n\t}, {\r\n\t\t'id': 77,\r\n\t\t'carId': 26,\r\n\t\t'text': 'elit sodales scelerisque',\r\n\t\t'_userId': 2,\r\n\t\t'_createdDate': '10/02/2012',\r\n\t\t'_updatedDate': '05/05/2012',\r\n\t\t'type': 0,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '10/05/2019'\r\n\t}, {\r\n\t\t'id': 78,\r\n\t\t'carId': 26,\r\n\t\t'text': 'sed lacus morbi sem mauris laoreet ut rhoncus aliquet pulvinar sed nisl nunc rhoncus dui vel',\r\n\t\t'_userId': 1,\r\n\t\t'_createdDate': '01/27/2015',\r\n\t\t'_updatedDate': '07/14/2013',\r\n\t\t'type': 1,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '01/19/2019'\r\n\t}, {\r\n\t\t'id': 79,\r\n\t\t'carId': 27,\r\n\t\t'text': 'augue vestibulum',\r\n\t\t'_userId': 1,\r\n\t\t'_createdDate': '09/19/2011',\r\n\t\t'_updatedDate': '09/11/2014',\r\n\t\t'type': 0,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '03/08/2020'\r\n\t}, {\r\n\t\t'id': 80,\r\n\t\t'carId': 27,\r\n\t\t'text': 'turpis nec euismod scelerisque',\r\n\t\t'_userId': 2,\r\n\t\t'_createdDate': '01/17/2014',\r\n\t\t'_updatedDate': '03/04/2018',\r\n\t\t'type': 1,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '11/08/2019'\r\n\t}, {\r\n\t\t'id': 81,\r\n\t\t'carId': 27,\r\n\t\t'text': 'quisque id justo sit amet sapien dignissim vestibulum vestibulum ante ipsum primis in faucibus orci luctus',\r\n\t\t'_userId': 1,\r\n\t\t'_createdDate': '08/16/2015',\r\n\t\t'_updatedDate': '02/21/2011',\r\n\t\t'type': 1,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '02/15/2019'\r\n\t}, {\r\n\t\t'id': 82,\r\n\t\t'carId': 28,\r\n\t\t'text': 'ultrices posuere cubilia curae duis faucibus accumsan odio curabitur convallis duis consequat dui nec nisi volutpat eleifend',\r\n\t\t'_userId': 1,\r\n\t\t'_createdDate': '03/07/2014',\r\n\t\t'_updatedDate': '08/21/2012',\r\n\t\t'type': 2,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '05/14/2019'\r\n\t}, {\r\n\t\t'id': 83,\r\n\t\t'carId': 28,\r\n\t\t'text': 'curabitur gravida nisi at nibh in hac habitasse platea dictumst aliquam augue',\r\n\t\t'_userId': 2,\r\n\t\t'_createdDate': '09/20/2017',\r\n\t\t'_updatedDate': '08/21/2014',\r\n\t\t'type': 0,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '07/07/2019'\r\n\t}, {\r\n\t\t'id': 84,\r\n\t\t'carId': 28,\r\n\t\t'text': 'dolor quis odio consequat varius integer ac leo pellentesque ultrices mattis odio donec vitae nisi',\r\n\t\t'_userId': 2,\r\n\t\t'_createdDate': '04/08/2017',\r\n\t\t'_updatedDate': '08/17/2016',\r\n\t\t'type': 1,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '03/19/2019'\r\n\t}, {\r\n\t\t'id': 85,\r\n\t\t'carId': 29,\r\n\t\t'text': 'interdum in ante vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia curae duis faucibus',\r\n\t\t'_userId': 2,\r\n\t\t'_createdDate': '04/30/2013',\r\n\t\t'_updatedDate': '08/22/2013',\r\n\t\t'type': 2,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '03/23/2020'\r\n\t}, {\r\n\t\t'id': 86,\r\n\t\t'carId': 29,\r\n\t\t'text': 'faucibus orci luctus et ultrices posuere cubilia curae nulla dapibus dolor vel est donec odio justo sollicitudin ut suscipit a',\r\n\t\t'_userId': 2,\r\n\t\t'_createdDate': '04/12/2014',\r\n\t\t'_updatedDate': '03/06/2013',\r\n\t\t'type': 1,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '02/17/2019'\r\n\t}, {\r\n\t\t'id': 87,\r\n\t\t'carId': 29,\r\n\t\t'text': 'faucibus orci luctus et ultrices posuere cubilia curae donec pharetra magna vestibulum',\r\n\t\t'_userId': 2,\r\n\t\t'_createdDate': '11/21/2016',\r\n\t\t'_updatedDate': '08/21/2010',\r\n\t\t'type': 1,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '11/06/2019'\r\n\t}, {\r\n\t\t'id': 88,\r\n\t\t'carId': 30,\r\n\t\t'text': 'nibh in hac habitasse platea dictumst',\r\n\t\t'_userId': 1,\r\n\t\t'_createdDate': '10/30/2011',\r\n\t\t'_updatedDate': '03/07/2012',\r\n\t\t'type': 2,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '12/02/2019'\r\n\t}, {\r\n\t\t'id': 89,\r\n\t\t'carId': 30,\r\n\t\t'text': 'fusce lacus purus',\r\n\t\t'_userId': 2,\r\n\t\t'_createdDate': '09/02/2014',\r\n\t\t'_updatedDate': '05/22/2015',\r\n\t\t'type': 2,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '10/13/2019'\r\n\t}, {\r\n\t\t'id': 90,\r\n\t\t'carId': 30,\r\n\t\t'text': 'ultrices enim lorem ipsum dolor',\r\n\t\t'_userId': 1,\r\n\t\t'_createdDate': '12/21/2012',\r\n\t\t'_updatedDate': '02/28/2018',\r\n\t\t'type': 1,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '12/08/2019'\r\n\t}, {\r\n\t\t'id': 91,\r\n\t\t'carId': 31,\r\n\t\t'text': 'suspendisse accumsan tortor quis turpis',\r\n\t\t'_userId': 1,\r\n\t\t'_createdDate': '01/22/2014',\r\n\t\t'_updatedDate': '01/26/2015',\r\n\t\t'type': 2,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '03/05/2019'\r\n\t}, {\r\n\t\t'id': 92,\r\n\t\t'carId': 31,\r\n\t\t'text': 'sed interdum venenatis turpis enim blandit mi in porttitor pede justo eu massa',\r\n\t\t'_userId': 1,\r\n\t\t'_createdDate': '12/20/2013',\r\n\t\t'_updatedDate': '08/13/2016',\r\n\t\t'type': 0,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '09/03/2019'\r\n\t}, {\r\n\t\t'id': 93,\r\n\t\t'carId': 31,\r\n\t\t'text': 'quisque id justo sit amet sapien dignissim vestibulum vestibulum ante ipsum primis',\r\n\t\t'_userId': 1,\r\n\t\t'_createdDate': '07/08/2016',\r\n\t\t'_updatedDate': '02/26/2013',\r\n\t\t'type': 0,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '01/22/2019'\r\n\t}, {\r\n\t\t'id': 94,\r\n\t\t'carId': 32,\r\n\t\t'text': 'vitae nisi nam ultrices',\r\n\t\t'_userId': 1,\r\n\t\t'_createdDate': '02/21/2015',\r\n\t\t'_updatedDate': '03/04/2017',\r\n\t\t'type': 1,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '01/05/2020'\r\n\t}, {\r\n\t\t'id': 95,\r\n\t\t'carId': 32,\r\n\t\t'text': 'in tempus sit amet sem fusce consequat',\r\n\t\t'_userId': 2,\r\n\t\t'_createdDate': '09/15/2014',\r\n\t\t'_updatedDate': '05/21/2017',\r\n\t\t'type': 1,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '03/31/2019'\r\n\t}, {\r\n\t\t'id': 96,\r\n\t\t'carId': 32,\r\n\t\t'text': 'eros elementum pellentesque quisque porta volutpat erat quisque erat eros viverra eget congue eget semper',\r\n\t\t'_userId': 2,\r\n\t\t'_createdDate': '06/04/2014',\r\n\t\t'_updatedDate': '08/12/2010',\r\n\t\t'type': 0,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '10/10/2019'\r\n\t}, {\r\n\t\t'id': 97,\r\n\t\t'carId': 33,\r\n\t\t'text': 'eu pede',\r\n\t\t'_userId': 2,\r\n\t\t'_createdDate': '03/21/2011',\r\n\t\t'_updatedDate': '07/18/2012',\r\n\t\t'type': 2,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '03/29/2020'\r\n\t}, {\r\n\t\t'id': 98,\r\n\t\t'carId': 33,\r\n\t\t'text': 'tempus vivamus in felis eu sapien cursus vestibulum proin',\r\n\t\t'_userId': 2,\r\n\t\t'_createdDate': '09/17/2017',\r\n\t\t'_updatedDate': '11/29/2013',\r\n\t\t'type': 1,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '04/01/2019'\r\n\t}, {\r\n\t\t'id': 99,\r\n\t\t'carId': 33,\r\n\t\t'text': 'velit eu est congue elementum in hac habitasse platea dictumst morbi vestibulum velit id pretium iaculis diam erat fermentum',\r\n\t\t'_userId': 1,\r\n\t\t'_createdDate': '03/27/2013',\r\n\t\t'_updatedDate': '09/26/2014',\r\n\t\t'type': 1,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '09/14/2019'\r\n\t}, {\r\n\t\t'id': 100,\r\n\t\t'carId': 34,\r\n\t\t'text': 'luctus et ultrices posuere cubilia curae nulla dapibus dolor vel',\r\n\t\t'_userId': 2,\r\n\t\t'_createdDate': '03/07/2017',\r\n\t\t'_updatedDate': '08/14/2012',\r\n\t\t'type': 0,\r\n\t\t'_isEditMode': false,\r\n\t\t'dueDate': '08/11/2019',\r\n\t}];\r\n}\r\n","// Angular\r\nimport { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\n// RxJS\r\nimport { Observable, forkJoin, of } from 'rxjs';\r\nimport { mergeMap, delay } from 'rxjs/operators';\r\n// Lodash\r\nimport { each } from 'lodash';\r\n// CRUD\r\nimport { HttpUtilsService, QueryParamsModel, QueryResultsModel } from '../../_base/crud';\r\n// Models\r\nimport { CustomerModel } from '../_models/customer.model';\r\n\r\nconst API_CUSTOMERS_URL = 'api/customers';\r\n\r\n// Fake REST API (Mock)\r\n// This code emulates server calls\r\n@Injectable()\r\nexport class CustomersService {\r\n\tconstructor(private http: HttpClient, private httpUtils: HttpUtilsService) { }\r\n\r\n\t// CREATE => POST: add a new customer to the server\r\n\tcreateCustomer(customer: CustomerModel): Observable {\r\n\t\t// Note: Add headers if needed (tokens/bearer)\r\n\t\tconst httpHeaders = this.httpUtils.getHTTPHeaders();\r\n\t\treturn this.http.post(API_CUSTOMERS_URL, customer, { headers: httpHeaders});\r\n\t}\r\n\r\n\t// READ\r\n\tgetAllCustomers(): Observable {\r\n\t\treturn this.http.get(API_CUSTOMERS_URL);\r\n\t}\r\n\r\n\tgetCustomerById(customerId: number): Observable {\r\n\t\treturn this.http.get(API_CUSTOMERS_URL + `/${customerId}`);\r\n\t}\r\n\r\n\t// Method from server should return QueryResultsModel(items: any[], totalsCount: number)\r\n\t// items => filtered/sorted result\r\n\tfindCustomers(queryParams: QueryParamsModel): Observable {\r\n\t\t// This code imitates server calls\r\n\t\tconst url = API_CUSTOMERS_URL;\r\n\t\treturn this.http.get(API_CUSTOMERS_URL).pipe(\r\n\t\t\tmergeMap(res => {\r\n\t\t\t\tconst result = this.httpUtils.baseFilter(res, queryParams, ['status', 'type']);\r\n\t\t\t\treturn of(result);\r\n\t\t\t})\r\n\t\t);\r\n\t}\r\n\r\n\r\n\t// UPDATE => PUT: update the customer on the server\r\n\tupdateCustomer(customer: CustomerModel): Observable {\r\n\t\tconst httpHeader = this.httpUtils.getHTTPHeaders();\r\n\t\treturn this.http.put(API_CUSTOMERS_URL, customer, { headers: httpHeader });\r\n\t}\r\n\r\n\t// UPDATE Status\r\n\tupdateStatusForCustomer(customers: CustomerModel[], status: number): Observable {\r\n\t\tconst tasks$ = [];\r\n\t\teach(customers, element => {\r\n\t\t\tconst _customer = Object.assign({}, element);\r\n\t\t\t_customer.status = status;\r\n\t\t\ttasks$.push(this.updateCustomer(_customer));\r\n\t\t});\r\n\t\treturn forkJoin(tasks$);\r\n\t}\r\n\r\n\t// DELETE => delete the customer from the server\r\n\tdeleteCustomer(customerId: number): Observable {\r\n\t\tconst url = `${API_CUSTOMERS_URL}/${customerId}`;\r\n\t\treturn this.http.delete(url);\r\n\t}\r\n\r\n\tdeleteCustomers(ids: number[] = []): Observable {\r\n\t\tconst tasks$ = [];\r\n\t\tconst length = ids.length;\r\n\t\t// tslint:disable-next-line:prefer-const\r\n\t\tfor (let i = 0; i < length; i++) {\r\n\t\t\ttasks$.push(this.deleteCustomer(ids[i]));\r\n\t\t}\r\n\t\treturn forkJoin(tasks$);\r\n\t}\r\n}\r\n","\r\n// Services\r\nexport { CustomersService } from './customers.service.fake'; // You have to comment this, when your real back-end is done\r\n// export { CustomersService } from './customers.service'; // You have to uncomment this, when your real back-end is done\r\nexport { ProductsService } from './products.service.fake'; // You have to comment this, when your real back-end is done\r\n// export { ProductsService } from './products.service'; // You have to uncomment this, when your real back-end is done\r\nexport { ProductRemarksService }\r\nfrom './product-remarks.service.fake'; // You have to comment this, when your real back-end is done\r\n// export { ProductRemarksService }\r\n// from './product-remarks.service'; // You have to uncomment this, when your real back-end is done\r\nexport { ProductSpecificationsService }\r\nfrom './product-specifications.service.fake'; // You have to comment this, when your real back-end is done\r\n// export { ProductSpecificationsService }\r\n// from './product-specifications.service'; // You have to uncomment this, when your real back-end is done\r\n","// Angular\r\nimport { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\n// RxJS\r\nimport { Observable, of, forkJoin } from 'rxjs';\r\nimport { map, mergeMap } from 'rxjs/operators';\r\n// CRUD\r\nimport { HttpUtilsService, QueryParamsModel, QueryResultsModel } from '../../_base/crud';\r\n// Models\r\nimport { ProductRemarkModel } from '../_models/product-remark.model';\r\n\r\nconst API_PRODUCTREMARKS_URL = 'api/productRemarks';\r\n// Fake REST API (Mock)\r\n// This code emulates server calls\r\n@Injectable()\r\nexport class ProductRemarksService {\r\n\tconstructor(\r\n\t\tprivate http: HttpClient,\r\n\t\tprivate httpUtils: HttpUtilsService\r\n\t) {}\r\n\r\n\t// CREATE => POST: add a new product remark to the server\r\n\tcreateProductRemark(productRemark): Observable {\r\n\t\t// Note: Add headers if needed (tokens/bearer)\r\n\t\tconst httpHeaders = this.httpUtils.getHTTPHeaders();\r\n\t\treturn this.http.post(\r\n\t\t\tAPI_PRODUCTREMARKS_URL,\r\n\t\t\tproductRemark,\r\n\t\t\t{ headers: httpHeaders }\r\n\t\t);\r\n\t}\r\n\r\n\t// READ\r\n\tgetAllProductRemarksByProductId(\r\n\t\tproductId: number\r\n\t): Observable {\r\n\t\treturn this.http\r\n\t\t\t.get(API_PRODUCTREMARKS_URL)\r\n\t\t\t.pipe(\r\n\t\t\t\tmap(productRemarks => {\r\n\t\t\t\t\treturn productRemarks.filter(rem => rem.carId === productId);\r\n\t\t\t\t})\r\n\t\t\t);\r\n\t}\r\n\r\n\tgetProductRemarkById(productRemarkId: number): Observable {\r\n\t\treturn this.http.get(\r\n\t\t\tAPI_PRODUCTREMARKS_URL + `/${productRemarkId}`\r\n\t\t);\r\n\t}\r\n\r\n\tfindProductRemarks(\r\n\t\tqueryParams: QueryParamsModel,\r\n\t\tproductId: number\r\n\t): Observable {\r\n\t\treturn this.getAllProductRemarksByProductId(productId).pipe(\r\n\t\t\tmergeMap(res => {\r\n\t\t\t\tconst result = this.httpUtils.baseFilter(res, queryParams, []);\r\n\t\t\t\treturn of(result);\r\n\t\t\t})\r\n\t\t);\r\n\t}\r\n\r\n\t// UPDATE => PUT: update the product remark\r\n\tupdateProductRemark(productRemark: ProductRemarkModel): Observable {\r\n\t\t// Note: Add headers if needed (tokens/bearer)\r\n\t\tconst httpHeaders = this.httpUtils.getHTTPHeaders();\r\n\t\treturn this.http.put(API_PRODUCTREMARKS_URL, productRemark, {\r\n\t\t\theaders: httpHeaders\r\n\t\t});\r\n\t}\r\n\r\n\t// DELETE => delete the product remark\r\n\tdeleteProductRemark(productRemarkId: number): Observable {\r\n\t\tconst url = `${API_PRODUCTREMARKS_URL}/${productRemarkId}`;\r\n\t\treturn this.http.delete(url);\r\n\t}\r\n\r\n\tdeleteProductRemarks(ids: number[] = []): Observable {\r\n\t\tconst tasks$ = [];\r\n\t\tconst length = ids.length;\r\n\t\t// tslint:disable-next-line:prefer-const\r\n\t\tfor (let i = 0; i < length; i++) {\r\n\t\t\ttasks$.push(this.deleteProductRemark(ids[i]));\r\n\t\t}\r\n\t\treturn forkJoin(tasks$);\r\n\t}\r\n}\r\n","// Angular\r\nimport { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\n// RxJS\r\nimport { Observable, forkJoin, of } from 'rxjs';\r\nimport { map, mergeMap, tap } from 'rxjs/operators';\r\n// CRUD\r\nimport { HttpUtilsService, QueryParamsModel, QueryResultsModel } from '../../_base/crud';\r\n// Models and Consts\r\nimport { ProductSpecificationModel } from '../_models/product-specification.model';\r\nimport { SPECIFICATIONS_DICTIONARY } from '../_consts/specification.dictionary';\r\n\r\nconst API_PRODUCTSPECS_URL = 'api/productSpecs';\r\n\r\n// Fake REST API (Mock)\r\n// This code emulates server calls\r\n@Injectable()\r\nexport class ProductSpecificationsService {\r\n\tconstructor(private http: HttpClient, private httpUtils: HttpUtilsService) {}\r\n\r\n\t// CREATE => POST: add a new product specification to the server\r\n\tcreateProductSpec(productSpec): Observable {\r\n\t\t// Note: Add headers if needed (tokens/bearer)\r\n\t\tconst httpHeaders = this.httpUtils.getHTTPHeaders();\r\n\t\treturn this.http.post(\r\n\t\t\tAPI_PRODUCTSPECS_URL,\r\n\t\t\tproductSpec,\r\n\t\t\t{ headers: httpHeaders }\r\n\t\t);\r\n\t}\r\n\r\n\t// READ\r\n\tgetAllProductSpecsByProductId(\r\n\t\tproductId: number\r\n\t): Observable {\r\n\t\tconst prodSpecs = this.http\r\n\t\t\t.get(API_PRODUCTSPECS_URL)\r\n\t\t\t.pipe(\r\n\t\t\t\tmap(productSpecifications =>\r\n\t\t\t\t\tproductSpecifications.filter(ps => ps.carId === productId)\r\n\t\t\t\t)\r\n\t\t\t);\r\n\r\n\t\treturn prodSpecs.pipe(\r\n\t\t\tmap(res => {\r\n\t\t\t\tconst _prodSpecs = res;\r\n\t\t\t\tconst result: ProductSpecificationModel[] = [];\r\n\t\t\t\t_prodSpecs.forEach(item => {\r\n\t\t\t\t\tconst _item = Object.assign({}, item);\r\n\t\t\t\t\tconst specName = SPECIFICATIONS_DICTIONARY[_item.specId];\r\n\t\t\t\t\tif (specName) {\r\n\t\t\t\t\t\t_item._specificationName = specName;\r\n\t\t\t\t\t}\r\n\t\t\t\t\tresult.push(_item);\r\n\t\t\t\t});\r\n\t\t\t\treturn result;\r\n\t\t\t})\r\n\t\t);\r\n\t}\r\n\r\n\tgetProductSpecById(productSpecId: number): Observable {\r\n\t\treturn this.http.get(\r\n\t\t\tAPI_PRODUCTSPECS_URL + `/${productSpecId}`\r\n\t\t);\r\n\t}\r\n\r\n\tfindProductSpecs(\r\n\t\tqueryParams: QueryParamsModel,\r\n\t\tproductId: number): Observable {\r\n\t\treturn this.getAllProductSpecsByProductId(productId).pipe(\r\n\t\t\tmergeMap(res => {\r\n\t\t\t\tconst result = this.httpUtils.baseFilter(\r\n\t\t\t\t\tres,\r\n\t\t\t\t\tqueryParams,\r\n\t\t\t\t\t[]\r\n\t\t\t\t);\r\n\t\t\t\treturn of(result);\r\n\t\t\t})\r\n\t\t);\r\n\t}\r\n\r\n\t// UPDATE => PUT: update the product specification on the server\r\n\tupdateProductSpec(productSpec: ProductSpecificationModel): Observable {\r\n\t\treturn this.http.put(API_PRODUCTSPECS_URL, productSpec, {\r\n\t\t\theaders: this.httpUtils.getHTTPHeaders()\r\n\t\t});\r\n\t}\r\n\r\n\t// DELETE => delete the product specification from the server\r\n\tdeleteProductSpec(productSpecId: number): Observable {\r\n\t\tconst url = `${API_PRODUCTSPECS_URL}/${productSpecId}`;\r\n\t\treturn this.http.delete(url);\r\n\t}\r\n\r\n\tdeleteProductSpecifications(ids: number[] = []): Observable {\r\n\t\tconst tasks$ = [];\r\n\t\tconst length = ids.length;\r\n\t\t// tslint:disable-next-line:prefer-const\r\n\t\tfor (let i = 0; i < length; i++) {\r\n\t\t\ttasks$.push(this.deleteProductSpec(ids[i]));\r\n\t\t}\r\n\t\treturn forkJoin(tasks$);\r\n\t}\r\n\r\n\tgetSpecs(): string[] {\r\n\t\treturn SPECIFICATIONS_DICTIONARY;\r\n\t}\r\n}\r\n","// Angular\r\nimport { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\n// RxJS\r\nimport { Observable, forkJoin, BehaviorSubject, of } from 'rxjs';\r\nimport { mergeMap } from 'rxjs/operators';\r\n// CRUD\r\nimport { HttpUtilsService, QueryParamsModel, QueryResultsModel } from '../../_base/crud';\r\n// Models\r\nimport { ProductModel } from '../_models/product.model';\r\nimport { each } from 'lodash';\r\n\r\nconst API_PRODUCTS_URL = 'api/products';\r\n// Fake REST API (Mock)\r\n// This method emulates server calls\r\n@Injectable()\r\nexport class ProductsService {\r\n\tlastFilter$: BehaviorSubject = new BehaviorSubject(new QueryParamsModel({}, 'asc', '', 0, 10));\r\n\r\n\tconstructor(private http: HttpClient,\r\n\t\tprivate httpUtils: HttpUtilsService) { }\r\n\r\n\t// CREATE => POST: add a new product to the server\r\n\tcreateProduct(product): Observable {\r\n\t\tconst httpHeaders = this.httpUtils.getHTTPHeaders();\r\n\t\treturn this.http.post(API_PRODUCTS_URL, product, { headers: httpHeaders });\r\n\t}\r\n\r\n\t// READ\r\n\tgetAllProducts(): Observable {\r\n\t\treturn this.http.get(API_PRODUCTS_URL);\r\n\t}\r\n\r\n\tgetProductById(productId: number): Observable {\r\n\t\treturn this.http.get(API_PRODUCTS_URL + `/${productId}`);\r\n\t}\r\n\r\n\tfindProducts(queryParams: QueryParamsModel): Observable {\r\n\t\treturn this.getAllProducts().pipe(\r\n\t\t\tmergeMap(res => {\r\n\t\t\t\tconst result = this.httpUtils.baseFilter(res, queryParams, ['status', 'condition']);\r\n\t\t\t\treturn of(result);\r\n\t\t\t})\r\n\t\t);\r\n\t}\r\n\r\n\t// UPDATE => PUT: update the product on the server\r\n\tupdateProduct(product: ProductModel): Observable {\r\n\t\t// Note: Add headers if needed (tokens/bearer)\r\n\t\tconst httpHeaders = this.httpUtils.getHTTPHeaders();\r\n\t\treturn this.http.put(API_PRODUCTS_URL, product, { headers: httpHeaders });\r\n\t}\r\n\r\n\t// UPDATE Status\r\n\t// Comment this when you start work with real server\r\n\t// This code imitates server calls\r\n\tupdateStatusForProduct(products: ProductModel[], status: number): Observable {\r\n\t\tconst tasks$ = [];\r\n\t\teach(products, element => {\r\n\t\t\tconst _product = Object.assign({}, element);\r\n\t\t\t_product.status = status;\r\n\t\t\ttasks$.push(this.updateProduct(_product));\r\n\t\t});\r\n\t\treturn forkJoin(tasks$);\r\n\t}\r\n\r\n\t// DELETE => delete the product from the server\r\n\tdeleteProduct(productId: number): Observable {\r\n\t\tconst url = `${API_PRODUCTS_URL}/${productId}`;\r\n\t\treturn this.http.delete(url);\r\n\t}\r\n\r\n\tdeleteProducts(ids: number[] = []): Observable {\r\n\t\tconst tasks$ = [];\r\n\t\tconst length = ids.length;\r\n\t\t// tslint:disable-next-line:prefer-const\r\n\t\tfor (let i = 0; i < length; i++) {\r\n\t\t\ttasks$.push(this.deleteProduct(ids[i]));\r\n\t\t}\r\n\t\treturn forkJoin(tasks$);\r\n\t}\r\n}\r\n","// Context\r\nexport { ECommerceDataContext } from './_server/_e-commerce.data-context';\r\n\r\n// Models and Consts\r\nexport { CustomerModel } from './_models/customer.model';\r\nexport { ProductRemarkModel } from './_models/product-remark.model';\r\nexport { ProductSpecificationModel } from './_models/product-specification.model';\r\nexport { ProductModel } from './_models/product.model';\r\nexport { SPECIFICATIONS_DICTIONARY } from './_consts/specification.dictionary';\r\n\r\n// DataSources\r\nexport { CustomersDataSource } from './_data-sources/customers.datasource';\r\nexport { ProductRemarksDataSource } from './_data-sources/product-remarks.datasource';\r\nexport { ProductSpecificationsDataSource } from './_data-sources/product-specifications.datasource';\r\nexport { ProductsDataSource } from './_data-sources/products.datasource';\r\n\r\n// Actions\r\n// Customer Actions =>\r\nexport {\r\n CustomerActionTypes,\r\n CustomerActions,\r\n CustomerOnServerCreated,\r\n CustomerCreated,\r\n CustomerUpdated,\r\n CustomersStatusUpdated,\r\n OneCustomerDeleted,\r\n ManyCustomersDeleted,\r\n CustomersPageRequested,\r\n CustomersPageLoaded,\r\n CustomersPageCancelled,\r\n CustomersPageToggleLoading\r\n} from './_actions/customer.actions';\r\n// Product actions =>\r\nexport {\r\n ProductActionTypes,\r\n ProductActions,\r\n ProductOnServerCreated,\r\n ProductCreated,\r\n ProductUpdated,\r\n ProductsStatusUpdated,\r\n OneProductDeleted,\r\n ManyProductsDeleted,\r\n ProductsPageRequested,\r\n ProductsPageLoaded,\r\n ProductsPageCancelled,\r\n ProductsPageToggleLoading,\r\n ProductsActionToggleLoading\r\n} from './_actions/product.actions';\r\n// ProductRemark Actions =>\r\nexport {\r\n ProductRemarkActionTypes,\r\n ProductRemarkActions,\r\n ProductRemarkCreated,\r\n ProductRemarkUpdated,\r\n ProductRemarkStoreUpdated,\r\n OneProductRemarkDeleted,\r\n ManyProductRemarksDeleted,\r\n ProductRemarksPageRequested,\r\n ProductRemarksPageLoaded,\r\n ProductRemarksPageCancelled,\r\n ProductRemarksPageToggleLoading,\r\n ProductRemarkOnServerCreated\r\n} from './_actions/product-remark.actions';\r\n// ProductSpecification Actions =>\r\nexport {\r\n ProductSpecificationActionTypes,\r\n ProductSpecificationActions,\r\n ProductSpecificationCreated,\r\n ProductSpecificationUpdated,\r\n OneProductSpecificationDeleted,\r\n ManyProductSpecificationsDeleted,\r\n ProductSpecificationsPageRequested,\r\n ProductSpecificationsPageLoaded,\r\n ProductSpecificationsPageCancelled,\r\n ProductSpecificationsPageToggleLoading,\r\n ProductSpecificationOnServerCreated\r\n} from './_actions/product-specification.actions';\r\n\r\n\r\n// Effects\r\nexport { CustomerEffects } from './_effects/customer.effects';\r\nexport { ProductEffects } from './_effects/product.effects';\r\nexport { ProductRemarkEffects } from './_effects/product-remark.effects';\r\nexport { ProductSpecificationEffects } from './_effects/product-specification.effects';\r\n\r\n// Reducers\r\nexport { customersReducer } from './_reducers/customer.reducers';\r\nexport { productsReducer } from './_reducers/product.reducers';\r\nexport { productRemarksReducer } from './_reducers/product-remark.reducers';\r\nexport { productSpecificationsReducer } from './_reducers/product-specification.reducers';\r\n\r\n// Selectors\r\n// Customer selectors =>\r\nexport {\r\n selectCustomerById,\r\n selectCustomersInStore,\r\n selectCustomersPageLoading,\r\n selectLastCreatedCustomerId,\r\n selectCustomersActionLoading,\r\n selectCustomersShowInitWaitingMessage\r\n} from './_selectors/customer.selectors';\r\n// Product selectors\r\nexport {\r\n selectProductById,\r\n selectProductsInStore,\r\n selectProductsPageLoading,\r\n selectProductsPageLastQuery,\r\n selectLastCreatedProductId,\r\n selectHasProductsInStore,\r\n selectProductsActionLoading,\r\n selectProductsInitWaitingMessage\r\n} from './_selectors/product.selectors';\r\n// ProductRemark selectors =>\r\nexport {\r\n selectProductRemarkById,\r\n selectProductRemarksInStore,\r\n selectProductRemarksPageLoading,\r\n selectCurrentProductIdInStoreForProductRemarks,\r\n selectLastCreatedProductRemarkId,\r\n selectPRShowInitWaitingMessage\r\n} from './_selectors/product-remark.selectors';\r\n// ProductSpecification selectors =>\r\nexport {\r\n selectProductSpecificationById,\r\n selectProductSpecificationsInStore,\r\n selectProductSpecificationsPageLoading,\r\n selectCurrentProductIdInStoreForProductSpecs,\r\n selectProductSpecificationsState,\r\n selectLastCreatedProductSpecificationId,\r\n selectPSShowInitWaitingMessage\r\n} from './_selectors/product-specification.selectors';\r\n\r\n// Services\r\nexport { CustomersService } from './_services/';\r\nexport { ProductsService } from './_services/';\r\nexport { ProductRemarksService } from './_services/';\r\nexport { ProductSpecificationsService } from './_services/';\r\n","import { NgModule } from '@angular/core';\r\nimport { MatSlideToggleModule } from '@angular/material/slide-toggle';\r\nimport { MatRippleModule } from '@angular/material/core';\r\nimport { MatDialogModule } from '@angular/material/dialog';\r\nimport { MatIconRegistry } from '@angular/material/icon';\r\nimport {\r\n\tMatAutocompleteModule,\r\n\tMatNativeDateModule,\r\n\tMatFormFieldModule,\r\n\tMatInputModule,\r\n\tMatRadioModule,\r\n\tMatButtonModule,\r\n\tMatCardModule,\r\n\tMatChipsModule,\r\n\tMatSelectModule,\r\n\tMatProgressBarModule,\r\n\tMatProgressSpinnerModule,\r\n\tMatIconModule,\r\n\tMatSliderModule,\r\n\tMatPaginatorModule,\r\n\tMatSortModule,\r\n\tMatSidenavModule,\r\n\tMatSnackBarModule,\r\n\tMatStepperModule,\r\n\tMatToolbarModule,\r\n\tMatDividerModule,\r\n\tMatTabsModule,\r\n\tMatTableModule,\r\n\tMatTooltipModule,\r\n\tMatGridListModule,\r\n\tMatButtonToggleModule,\r\n\tMatBottomSheetModule,\r\n\tMatExpansionModule,\r\n\tMatMenuModule,\r\n\tMatTreeModule,\r\n\tMAT_BOTTOM_SHEET_DATA,\r\n\tMatBottomSheetRef,\r\n\tMAT_DATE_LOCALE,\r\n\r\n} from '@angular/material';\r\nimport { MatListModule } from '@angular/material/list';\r\nimport { MatCheckboxModule } from '@angular/material/checkbox';\r\nimport { MatDatepickerModule } from '@angular/material/datepicker';\r\nimport { MAT_MOMENT_DATE_ADAPTER_OPTIONS } from '@angular/material-moment-adapter';\r\n\r\n\r\n@NgModule({\r\n\timports: [\r\n\t\t// material modules\r\n\t\tMatInputModule,\r\n\t\tMatFormFieldModule,\r\n\t\tMatDatepickerModule,\r\n\t\tMatAutocompleteModule,\r\n\t\tMatListModule,\r\n\t\tMatSliderModule,\r\n\t\tMatCardModule,\r\n\t\tMatSelectModule,\r\n\t\tMatButtonModule,\r\n\t\tMatIconModule,\r\n\t\tMatNativeDateModule,\r\n\t\tMatSlideToggleModule,\r\n\t\tMatCheckboxModule,\r\n\t\tMatMenuModule,\r\n\t\tMatTabsModule,\r\n\t\tMatTooltipModule,\r\n\t\tMatSidenavModule,\r\n\t\tMatProgressBarModule,\r\n\t\tMatProgressSpinnerModule,\r\n\t\tMatSnackBarModule,\r\n\t\tMatTableModule,\r\n\t\tMatGridListModule,\r\n\t\tMatToolbarModule,\r\n\t\tMatBottomSheetModule,\r\n\t\tMatExpansionModule,\r\n\t\tMatDividerModule,\r\n\t\tMatSortModule,\r\n\t\tMatStepperModule,\r\n\t\tMatChipsModule,\r\n\t\tMatPaginatorModule,\r\n\t\tMatDialogModule,\r\n\t\tMatRippleModule,\r\n\t\tMatRadioModule,\r\n\t\tMatTreeModule,\r\n\t\tMatButtonToggleModule,\r\n\t],\r\n\texports: [\r\n\t\tMatInputModule,\r\n\t\tMatFormFieldModule,\r\n\t\tMatDatepickerModule,\r\n\t\tMatAutocompleteModule,\r\n\t\tMatListModule,\r\n\t\tMatSliderModule,\r\n\t\tMatCardModule,\r\n\t\tMatSelectModule,\r\n\t\tMatButtonModule,\r\n\t\tMatIconModule,\r\n\t\tMatNativeDateModule,\r\n\t\tMatSlideToggleModule,\r\n\t\tMatCheckboxModule,\r\n\t\tMatMenuModule,\r\n\t\tMatTabsModule,\r\n\t\tMatTooltipModule,\r\n\t\tMatSidenavModule,\r\n\t\tMatProgressBarModule,\r\n\t\tMatProgressSpinnerModule,\r\n\t\tMatSnackBarModule,\r\n\t\tMatTableModule,\r\n\t\tMatGridListModule,\r\n\t\tMatToolbarModule,\r\n\t\tMatBottomSheetModule,\r\n\t\tMatExpansionModule,\r\n\t\tMatDividerModule,\r\n\t\tMatSortModule,\r\n\t\tMatStepperModule,\r\n\t\tMatChipsModule,\r\n\t\tMatPaginatorModule,\r\n\t\tMatDialogModule,\r\n\t\tMatRippleModule,\r\n\t\tMatRadioModule,\r\n\t\tMatTreeModule,\r\n\t\tMatButtonToggleModule,\r\n\t],\r\n\tproviders: [\r\n\t\tMatIconRegistry,\r\n\t\t{ provide: MatBottomSheetRef, useValue: {} },\r\n\t\t{ provide: MAT_BOTTOM_SHEET_DATA, useValue: {} },\r\n\t\t{ provide: MAT_DATE_LOCALE, useValue: 'en-GB'},\r\n\t\t{ provide: MAT_MOMENT_DATE_ADAPTER_OPTIONS, useValue: { useUtc: true } },\r\n\r\n\t]\r\n})\r\nexport class MaterialModule {}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { MaterialModule } from './material.module';\r\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\r\nimport { HttpClientModule } from '@angular/common/http';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [],\r\n imports: [\r\n CommonModule,\r\n MaterialModule,\r\n ReactiveFormsModule,\r\n FormsModule,\r\n HttpClientModule\r\n ],\r\n exports: [\r\n MaterialModule,\r\n ReactiveFormsModule,\r\n FormsModule,\r\n HttpClientModule\r\n ]\r\n})\r\nexport class SharedModule { }\r\n","
\r\n\t
\r\n
\r\n","// Angular\r\nimport { ChangeDetectorRef, Component, OnDestroy, OnInit, Output } from '@angular/core';\r\n// RxJS\r\nimport { Subscription } from 'rxjs';\r\n// Auth\r\nimport { AuthNotice, AuthNoticeService } from '../../../core/auth/';\r\n\r\n@Component({\r\n\tselector: 'kt-auth-notice',\r\n\ttemplateUrl: './auth-notice.component.html',\r\n})\r\nexport class AuthNoticeComponent implements OnInit, OnDestroy {\r\n\t@Output() type: any;\r\n\t@Output() message: any = '';\r\n\r\n\t// Private properties\r\n\tprivate subscriptions: Subscription[] = [];\r\n\r\n\t/**\r\n\t * Component Constructure\r\n\t *\r\n\t * @param authNoticeService\r\n\t * @param cdr\r\n\t */\r\n\tconstructor(public authNoticeService: AuthNoticeService, private cdr: ChangeDetectorRef) {\r\n\t}\r\n\r\n\t/*\r\n\t * @ Lifecycle sequences => https://angular.io/guide/lifecycle-hooks\r\n */\r\n\r\n\t/**\r\n\t * On init\r\n\t */\r\n\tngOnInit() {\r\n\t\tthis.subscriptions.push(this.authNoticeService.onNoticeChanged$.subscribe(\r\n\t\t\t(notice: AuthNotice) => {\r\n\t\t\t\tnotice = Object.assign({}, {message: '', type: ''}, notice);\r\n\t\t\t\tthis.message = notice.message;\r\n\t\t\t\tthis.type = notice.type;\r\n\t\t\t\tthis.cdr.markForCheck();\r\n\t\t\t}\r\n\t\t));\r\n\t}\r\n\r\n\t/**\r\n\t * On destroy\r\n\t */\r\n\tngOnDestroy(): void {\r\n\t\tthis.subscriptions.forEach(sb => sb.unsubscribe());\r\n\t}\r\n}\r\n","
\r\n\t
\r\n\t\t\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\r\n\r\n\t\t\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t
\r\n\t\t\r\n\t
\r\n
","// Angular\r\nimport { Component, ElementRef, OnInit, Renderer2, ViewEncapsulation } from '@angular/core';\r\n// Layout\r\nimport { LayoutConfigService, SplashScreenService, TranslationService } from '../../core/_base/layout';\r\n// Auth\r\nimport { AuthNoticeService } from '../../core/auth';\r\n\r\n@Component({\r\n\tselector: 'kt-auth',\r\n\ttemplateUrl: './auth.component.html',\r\n\tstyleUrls: ['./auth.component.scss'],\r\n\tencapsulation: ViewEncapsulation.None\r\n})\r\nexport class AuthComponent implements OnInit {\r\n\t// Public properties\r\n\ttoday: number = Date.now();\r\n\theaderLogo: string;\r\n\r\n\t/**\r\n\t * Component constructor\r\n\t *\r\n\t * @param el\r\n\t * @param render\r\n\t * @param layoutConfigService: LayoutConfigService\r\n\t * @param authNoticeService: authNoticeService\r\n\t * @param translationService: TranslationService\r\n\t * @param splashScreenService: SplashScreenService\r\n\t */\r\n\tconstructor(\r\n\t\tprivate el: ElementRef,\r\n\t\tprivate render: Renderer2,\r\n\t\tprivate layoutConfigService: LayoutConfigService,\r\n\t\tpublic authNoticeService: AuthNoticeService,\r\n\t\tprivate translationService: TranslationService,\r\n\t\tprivate splashScreenService: SplashScreenService) {\r\n\t}\r\n\r\n\t/**\r\n\t * @ Lifecycle sequences => https://angular.io/guide/lifecycle-hooks\r\n\t */\r\n\r\n\t/**\r\n\t * On init\r\n\t */\r\n\tngOnInit(): void {\r\n\t\tthis.translationService.setLanguage(this.translationService.getSelectedLanguage());\r\n\t\tthis.headerLogo = this.layoutConfigService.getLogo();\r\n\r\n\t\tthis.splashScreenService.hide();\r\n\r\n\t\t// load default styles\r\n\t\tthis.loadCSS('./assets/css/style.bundle.css');\r\n\t}\r\n\r\n\t/**\r\n\t * Load CSS for this specific page only, and destroy when navigate away\r\n\t * @param styleUrl\r\n\t */\r\n\tprivate loadCSS(styleUrl: string) {\r\n\t\treturn new Promise((resolve, reject) => {\r\n\t\t\tconst styleElement = document.createElement('link');\r\n\t\t\tstyleElement.href = styleUrl;\r\n\t\t\tstyleElement.type = 'text/css';\r\n\t\t\tstyleElement.rel = 'stylesheet';\r\n\t\t\tstyleElement.onload = resolve;\r\n\t\t\tthis.render.appendChild(this.el.nativeElement, styleElement);\r\n\t\t});\r\n\t}\r\n}\r\n","// Angular\r\nimport { ModuleWithProviders, NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { RouterModule, Routes } from '@angular/router';\r\nimport { HTTP_INTERCEPTORS } from '@angular/common/http';\r\n// Material\r\nimport { MatButtonModule, MatCheckboxModule, MatDividerModule, MatFormFieldModule, MatHorizontalStepper, MatIconModule, MatInputModule, MatStepperModule } from '@angular/material';\r\n// Translate\r\nimport { TranslateModule } from '@ngx-translate/core';\r\n// NGRX\r\nimport { StoreModule } from '@ngrx/store';\r\nimport { EffectsModule } from '@ngrx/effects';\r\n// CRUD\r\nimport { InterceptService } from '../../core/_base/crud/';\r\n// Module components\r\nimport { AuthComponent } from './auth.component';\r\nimport { LoginComponent } from './login/login.component';\r\nimport { RegisterComponent } from './register/register.component';\r\nimport { ForgotPasswordComponent } from './forgot-password/forgot-password.component';\r\nimport { AuthNoticeComponent } from './auth-notice/auth-notice.component';\r\n// Auth\r\nimport { AuthEffects, AuthGuard, authReducer, AuthService } from '../../core/auth';\r\nimport { ResetPasswordComponent } from './reset-password/reset-password.component';\r\nimport { CambiarContrasenaComponent } from './cambiar-contrasena/cambiar-contrasena.component';\r\nimport { RegistroPasajeroComponent } from './registro-pasajero/registro-pasajero.component';\r\nimport { DxDateBoxModule } from 'devextreme-angular';\r\nimport { MonitoreoModule } from '../monitoreo/monitoreo.module';\r\nimport { MaterialModule } from '../../shared_modules/material.module';\r\n\r\nconst routes: Routes = [\r\n\t{\r\n\t\tpath: '',\r\n\t\tcomponent: AuthComponent,\r\n\t\tchildren: [\r\n\t\t\t{\r\n\t\t\t\tpath: '',\r\n\t\t\t\tredirectTo: 'login',\r\n\t\t\t\tpathMatch: 'full'\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: 'login',\r\n\t\t\t\tcomponent: LoginComponent,\r\n\t\t\t\tdata: {returnUrl: window.location.pathname}\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: 'register',\r\n\t\t\t\tcomponent: RegisterComponent\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: 'forgot-password',\r\n\t\t\t\tcomponent: ForgotPasswordComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: 'reiniciarPassword',\r\n\t\t\t\tcomponent: ResetPasswordComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath:'registrarse',\r\n\t\t\t\tcomponent:RegistroPasajeroComponent\r\n\t\t\t}\r\n\t\t]\r\n\t}\r\n];\r\n\r\n\r\n@NgModule({\r\n\timports: [\r\n\t\tCommonModule,\r\n\t\tFormsModule,\r\n\t\tReactiveFormsModule,\r\n\t\tMatButtonModule,\r\n\t\tRouterModule.forChild(routes),\r\n\t\tMatInputModule,\r\n\t\tMatFormFieldModule,\r\n\t\tMatCheckboxModule,\r\n\t\tMatDividerModule,\r\n\t\tMatIconModule,\r\n\t\tMatStepperModule,\r\n\t\tTranslateModule.forChild(),\r\n\t\tStoreModule.forFeature('auth', authReducer),\r\n\t\tEffectsModule.forFeature([AuthEffects]),\r\n\t\tMonitoreoModule,\r\n\t\tMaterialModule,\r\n\t\tDxDateBoxModule\r\n\t],\r\n\tproviders: [\r\n\t\tInterceptService,\r\n\t\t{\r\n\t\t\tprovide: HTTP_INTERCEPTORS,\r\n\t\t\tuseClass: InterceptService,\r\n\t\t\tmulti: true\r\n\t\t},\r\n\t],\r\n\texports: [AuthComponent],\r\n\tdeclarations: [\r\n\t\tAuthComponent,\r\n\t\tLoginComponent,\r\n\t\tRegisterComponent,\r\n\t\tForgotPasswordComponent,\r\n\t\tAuthNoticeComponent,\r\n\t\tResetPasswordComponent,\r\n\t\tCambiarContrasenaComponent,\r\n\t\tRegistroPasajeroComponent,\r\n\t\r\n\t],\r\n\tentryComponents: [\r\n\t\tCambiarContrasenaComponent\r\n\t]\r\n})\r\n\r\nexport class AuthModule {\r\n\tstatic forRoot(): ModuleWithProviders {\r\n\t\treturn {\r\n\t\t\tngModule: AuthModule,\r\n\t\t\tproviders: [\r\n\t\t\t\tAuthService,\r\n\t\t\t\tAuthGuard\r\n\t\t\t]\r\n\t\t};\r\n\t}\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { User } from '../../_entities/User';\r\nimport { HttpClient, HttpHeaders, HttpParams } from '@angular/common/http';\r\nimport { Subject, Observable } from 'rxjs';\r\nimport { Credentials } from '../../_entities/Credentials';\r\nimport { environment } from '../../../environments/environment';\r\nimport { ChangePassword } from '../../_entities/ChangePassword';\r\nimport { ResetPassword } from '../../_entities/ResetPassword';\r\nimport BaseService from '../../base.service';\r\nimport { catchError } from 'rxjs/operators';\r\nimport { ChangeEmail } from '../../_entities/ChangeEmail';\r\nimport { Register } from '../../_entities/Register';\r\nimport { RequestChangeEmail } from '../../_entities/RequestChangeEmail';\r\nimport { AssignPermission } from '../../_entities/AssignPermission';\r\nimport { RefeshToken } from '../../_entities/RefreshToken';\r\nimport { NgxPermissionsService } from 'ngx-permissions';\r\n\r\n\r\n@Injectable({\r\n\tprovidedIn: 'root'\r\n})\r\nexport class AuthService extends BaseService {\r\n\r\n\tprivate authenticationChanged = new Subject();\r\n\tprivate user = new User();\r\n\tconstructor(private http: HttpClient,\r\n\t\tprivate permissionsService: NgxPermissionsService) {\r\n\t\tsuper();\r\n\t}\r\n\r\n\tpublic isAuthenticated(): boolean {\r\n\t\treturn (!(sessionStorage.getItem('token') === undefined ||\r\n\t\t\tsessionStorage.getItem('token') === null ||\r\n\t\t\tsessionStorage.getItem('token') === 'null' ||\r\n\t\t\tsessionStorage.getItem('token') === 'undefined' ||\r\n\t\t\tsessionStorage.getItem('token') === ''));\r\n\t}\r\n\r\n\tpublic isAuthenticationChanged(): any {\r\n\t\treturn this.authenticationChanged.asObservable();\r\n\t}\r\n\r\n\tpublic getToken(): any {\r\n\t\tif (sessionStorage.getItem('token') === undefined ||\r\n\t\t\tsessionStorage.getItem('token') === null ||\r\n\t\t\tsessionStorage.getItem('token') === 'null' ||\r\n\t\t\tsessionStorage.getItem('token') === 'undefined' ||\r\n\t\t\tsessionStorage.getItem('token') === '') {\r\n\t\t\treturn '';\r\n\t\t}\r\n\r\n\t\treturn JSON.parse(sessionStorage.getItem('token'));\r\n\t}\r\n\r\n\tpublic setData(data: User): void {\r\n\t\tthis.setStorageToken(data.token);\r\n\t\tthis.setStorageUser(data);\r\n\t\tthis.setStoragePermissions(data.permisos);\r\n\t\tthis.setStorageTokenHw(data.tokenHW);\r\n\t}\r\n\r\n\tpublic failToken(): void {\r\n\t\tthis.cleanSession();\r\n\t}\r\n\r\n\tpublic logout(): void {\r\n\t\tthis.cleanSession();\r\n\t}\r\n\tprivate setStorageTokenHw(value: any): void {\r\n\t\tlet _value = JSON.stringify(value);\r\n\t\tsessionStorage.setItem('tokenHW', _value);\r\n\t\tthis.authenticationChanged.next(this.isAuthenticated());\r\n\t}\r\n\r\n\tprivate setStorageToken(value: any): void {\r\n\t\tlet _value = JSON.stringify(value);\r\n\t\tsessionStorage.setItem('token', _value);\r\n\t\tthis.authenticationChanged.next(this.isAuthenticated());\r\n\t}\r\n\r\n\tpublic setStorageHWToken(hwtoken: any): void {\r\n\t\tlet _value = JSON.stringify(hwtoken);\r\n\t\tsessionStorage.setItem('hwtoken', _value);\r\n\r\n\t}\r\n\r\n\tprivate setStorageUser(value: any): void {\r\n\t\tlet _value = JSON.stringify(value);\r\n\t\tsessionStorage.setItem('user', _value);\r\n\t\tthis.authenticationChanged.next(this.isAuthenticated());\r\n\t}\r\n\r\n\tpublic setStorageCoordinate(coordinates): void {\r\n\t\tlet coords = JSON.stringify(coordinates);\r\n\t\tsessionStorage.setItem('coordinates', coords);\r\n\t}\r\n\r\n\r\n\r\n\tprivate setStoragePermissions(permissions: Array): void {\r\n\t\tlet _value = JSON.stringify(permissions);\r\n\t\tsessionStorage.setItem('permissions', _value);\r\n\t\tthis.permissionsService.loadPermissions(permissions);\r\n\t\tthis.authenticationChanged.next(this.isAuthenticated());\r\n\t}\r\n\r\n\tpublic cleanSession() {\r\n\t\tsessionStorage.clear();\r\n\t}\r\n\r\n\tpublic getUser(): User {\r\n\t\t//console.log(JSON.parse(sessionStorage.getItem('user')));\r\n\t\treturn JSON.parse(sessionStorage.getItem('user'));\r\n\t}\r\n\r\n\tpublic getHWUser() {\r\n\t\treturn JSON.parse(sessionStorage.getItem('hwtoken'));\r\n\t}\r\n\r\n\tpublic getCoordinates() {\r\n\t\treturn JSON.parse(sessionStorage.getItem('coordinates'))\r\n\t}\r\n\r\n\tpublic getPermissions(): string[] {\r\n\t\treturn JSON.parse(sessionStorage.getItem('permissions'));\r\n\t}\r\n\r\n\tpublic authenticate(body: Credentials): Observable {\r\n\t\treturn this.http.post(environment.API_SECURITY + '/api/Authentication/Token', body)\r\n\t\t\t.pipe(catchError(this.handleError));\r\n\t}\r\n\r\n\tpublic hwAuthenticate(): Observable {\r\n\t\treturn this.http.get(environment.API_SECURITY + '/api/Howen', { responseType: 'text' })\r\n\t\t.pipe(catchError(this.handleError));\r\n\t}\r\n\r\n\tpublic resetPassword(body: ResetPassword): Observable {\r\n\t\treturn this.http.post(environment.API_SECURITY + '/api/Authentication/ReiniciarPassword', body)\r\n\t\t\t.pipe(catchError(this.handleError));\r\n\t}\r\n\r\n\tpublic requestPassword(email: string): Observable {\r\n\t\treturn this.http.get(environment.API_SECURITY + '/api/Authentication/SolicitarReiniciarPassword/' + email)\r\n\t}\r\n\tpublic register(body: Register): Observable {\r\n\t\treturn this.http.post(environment.API_SECURITY + '/api/Authentication/InsertarUsuario', body);\r\n\t}\r\n\r\n\tpublic registrarPasajero(body: Register): Observable {\r\n\t\treturn this.http.post(environment.API_SECURITY + '/api/Authentication/InsertarUsuarioPasajero', body);\r\n\t}\r\n\r\n\r\n\tpublic changeEmail(body: ChangeEmail): Observable {\r\n\t\treturn this.http.post(environment.API_SECURITY + '/api/Authentication/CambiarCorreo', body);\r\n\t}\r\n\r\n\tpublic deleteUser(userId: string): Observable {\r\n\t\treturn this.http.delete(environment.API_SECURITY + '/api/Authentication/EliminarUsuario/' + userId);\r\n\t}\r\n\r\n\tpublic changePassword(body: ChangePassword): Observable {\r\n\t\treturn this.http.put(environment.API_SECURITY + '/api/Authentication/CambiarPassword', body)\r\n\t}\r\n\r\n\tpublic requestChangeEmail(body: RequestChangeEmail): Observable {\r\n\t\treturn this.http.post(environment.API_SECURITY + '/api/Authentication/SolicitarCambioCorreo', body);\r\n\t}\r\n\r\n\tpublic refreshToken(body: RefeshToken): Observable {\r\n\t\treturn this.http.post(environment.API_SECURITY + '/api/Authentication/RefrescarToken', body);\r\n\t}\r\n\r\n\tpublic assignPermission(body: AssignPermission): Observable {\r\n\t\treturn this.http.post(environment.API_SECURITY + '/api/Authentication/AsignarPermiso', body)\r\n\t}\r\n\r\n\tpublic removePermission(idUsuario: string, nombrePermiso: string): Observable {\r\n\t\treturn this.http.delete(environment.API_SECURITY + '/api/Authentication/QuitarPermiso/' + idUsuario + '/' + nombrePermiso);\r\n\t}\r\n}\r\n","
\r\n\t\r\n\t\r\n\t\r\n\t\r\n\t
\r\n\t\t\r\n\t\t

Modificar Contraseña

\r\n\t
\r\n\t\r\n
\r\n
\r\n\t
\r\n\t\t
\r\n\t\t\t

{{user.nombreCompleto}}

\r\n\t\t
\r\n\t
\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\tContraseña Actual\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t \r\n\t\t\t\t\t\tCampo requerido\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\tNueva Contraseña\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t \r\n\t\t\t\t\t\tCampo requerido\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\tConfirmar Contraseña\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t \r\n\t\t\t\t\t\tLas contraseñas no coinciden\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t* La contraseña no debe ser menor a 6 caracteres y no mayor a 15 caracteres.
\r\n\t\t\t\t\t** Se recomienda por seguridad use combinacion de letras mayúsculas, minúsculas, números,\r\n\t\t\t\t\t\tsímbolos.\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { MatDialogRef } from '@angular/material';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { finalize } from 'rxjs/operators';\r\nimport { AuthService } from '../auth.service';\r\n\r\n@Component({\r\n\tselector: 'kt-cambiar-contrasena',\r\n\ttemplateUrl: './cambiar-contrasena.component.html',\r\n\tstyleUrls: ['./cambiar-contrasena.component.scss']\r\n})\r\nexport class CambiarContrasenaComponent implements OnInit {\r\n\tpublic usuarioForm: FormGroup;\r\n\tpublic user;\r\n\r\n\tconstructor(private dialogRef: MatDialogRef, private fb: FormBuilder,\r\n\t\tprivate toastService: ToastrService,\r\n\t\tprivate authService: AuthService) { }\r\n\r\n\tngOnInit() {\r\n\t\tthis.user = this.authService.getUser();\r\n\t\tthis.initForm();\r\n\t}\r\n\r\n\tinitForm() {\r\n\t\tconst pattern = /^(?=.*\\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[a-zA-Z]).{6,}$/\r\n\t\tthis.usuarioForm = this.fb.group({\r\n\t\t\tPasswordActual: ['', [\r\n\t\t\t\tValidators.required,\r\n\t\t\t\tValidators.min(6),\r\n\t\t\t\tValidators.max(15),\r\n\t\t\t\tValidators.pattern(pattern)]],\r\n\t\t\tPasswordNuevo: ['', [\r\n\t\t\t\tValidators.required,\r\n\t\t\t\tValidators.min(6),\r\n\t\t\t\tValidators.max(15),\r\n\t\t\t\tValidators.pattern(pattern)]],\r\n\t\t\tConfirmarPassword: ['', Validators.required]\r\n\t\t});\r\n\t} s\r\n\r\n\tmodificarDatos() {\r\n\t\tif (this.usuarioForm.get('PasswordNuevo').value === this.usuarioForm.get('ConfirmarPassword').value) {\r\n\r\n\t\t\tthis.authService.changePassword(this.usuarioForm.value).pipe(\r\n\t\t\t\tfinalize(() => {\r\n\t\t\t\t\tthis.dialogRef.close();\r\n\t\t\t\t\tthis.toastService.success('Actualización correcta');\r\n\t\t\t\t})\r\n\t\t\t).subscribe(\r\n\t\t\t\t(response) => {\r\n\t\t\t\t}\r\n\t\t\t)\r\n\t\t} else {\r\n\t\t\tthis.toastService.error('Las contraseñas no coincieden')\r\n\t\t}\r\n\t}\r\n\r\n\tpublic minimizarPopup() {\r\n\t\tthis.dialogRef.addPanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic maximizarPopup() {\r\n\t\tthis.dialogRef.removePanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic cerrarPopup() {\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n\r\n}\r\n","\r\n\r\n","// Angular\r\nimport { ChangeDetectorRef, Component, OnDestroy, OnInit, ViewEncapsulation } from '@angular/core';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { Router } from '@angular/router';\r\n// RxJS\r\nimport { finalize, takeUntil, tap } from 'rxjs/operators';\r\nimport { Subject, Observable, Subscription } from 'rxjs';\r\n// Translate\r\nimport { TranslateService } from '@ngx-translate/core';\r\n// Auth\r\nimport { AuthNoticeService } from '../../../core/auth';\r\nimport { AuthService } from '../auth.service';\r\nimport { interval } from 'rxjs';\r\n\r\n@Component({\r\n\tselector: 'kt-forgot-password',\r\n\ttemplateUrl: './forgot-password.component.html',\r\n\tencapsulation: ViewEncapsulation.None\r\n})\r\nexport class ForgotPasswordComponent implements OnInit, OnDestroy {\r\n\t// Public params\r\n\tforgotPasswordForm: FormGroup;\r\n\tloading = false;\r\n\terrors: any = [];\r\n\tsegundos: number = 60;\r\n\tprivate subscription: Subscription;\r\n\tpublic disableLabel: boolean = false;\r\n\r\n\tprivate unsubscribe: Subject; // Read more: => https://brianflove.com/2016/12/11/anguar-2-unsubscribe-observables/\r\n\r\n\tconstructor(\r\n\t\tprivate authService: AuthService,\r\n\t\tpublic authNoticeService: AuthNoticeService,\r\n\t\tprivate translate: TranslateService,\r\n\t\tprivate router: Router,\r\n\t\tprivate fb: FormBuilder,\r\n\t\tprivate cdr: ChangeDetectorRef\r\n\t) {\r\n\t\tthis.unsubscribe = new Subject();\r\n\t}\r\n\r\n\tngOnInit() {\r\n\t\tthis.initRegistrationForm();\r\n\t}\r\n\r\n\tngOnDestroy(): void {\r\n\t\tthis.unsubscribe.next();\r\n\t\tthis.unsubscribe.complete();\r\n\t\tthis.loading = false;\r\n\t}\r\n\r\n\t/**\r\n\t * Form initalization\r\n\t */\r\n\tinitRegistrationForm() {\r\n\t\tthis.forgotPasswordForm = this.fb.group({\r\n\t\t\temail: ['', Validators.compose([\r\n\t\t\t\tValidators.required,\r\n\t\t\t\tValidators.email,\r\n\t\t\t\tValidators.minLength(3),\r\n\t\t\t\tValidators.maxLength(320)\r\n\t\t\t])\r\n\t\t\t]\r\n\t\t});\r\n\t}\r\n\r\n\t/**\r\n\t * Form Submit\r\n\t */\r\n\tsubmit() {\r\n\t\tconst controls = this.forgotPasswordForm.controls;\r\n\t\t/** check form */\r\n\t\tif (this.forgotPasswordForm.invalid) {\r\n\t\t\tObject.keys(controls).forEach(controlName =>\r\n\t\t\t\tcontrols[controlName].markAsTouched()\r\n\t\t\t);\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tthis.loading = true;\r\n\t\tconst email = controls['email'].value;\r\n\t\t// console.log(email)\r\n\t\tthis.authService.requestPassword(email).pipe(\r\n\t\t\ttap(response => {\r\n\t\t\t\tif (response) {\r\n\t\t\t\t\tthis.authNoticeService.setNotice(response, 'success');\r\n\t\t\t\t\tthis.contador();\r\n\t\t\t\t\tthis.disableLabel = true;\r\n\t\t\t\t\t//this.router.navigateByUrl('/login');\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis.authNoticeService.setNotice(this.translate.instant('AUTH.VALIDATION.NOT_FOUND', { name: this.translate.instant('AUTH.INPUT.EMAIL') }), 'danger');\r\n\t\t\t\t}\r\n\t\t\t}),\r\n\t\t\ttakeUntil(this.unsubscribe),\r\n\t\t\tfinalize(() => {\r\n\t\t\t\tthis.loading = false;\r\n\t\t\t\tthis.cdr.markForCheck();\r\n\t\t\t})\r\n\t\t).subscribe(\r\n\t\t\t//result => console.log(result)\r\n\t\t);\r\n\t}\r\n\r\n\t/**\r\n\t * Checking control validation\r\n\t *\r\n\t * @param controlName: string => Equals to formControlName\r\n\t * @param validationType: string => Equals to valitors name\r\n\t */\r\n\tisControlHasError(controlName: string, validationType: string): boolean {\r\n\t\tconst control = this.forgotPasswordForm.controls[controlName];\r\n\t\tif (!control) {\r\n\t\t\treturn false;\r\n\t\t}\r\n\r\n\t\tconst result =\r\n\t\t\tcontrol.hasError(validationType) &&\r\n\t\t\t(control.dirty || control.touched);\r\n\t\treturn result;\r\n\t}\r\n\r\n\tcontador() {\r\n\t\tthis.subscription = interval(1000).subscribe(\r\n\t\t\t() => {\r\n\t\t\t\tthis.segundos = this.segundos - 1;\r\n\t\t\t\tif (this.segundos == 0) {\r\n\t\t\t\t\tthis.subscription.unsubscribe();\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t}\r\n\r\n\r\n}\r\n","\r\n\r\n\r\n","// Angular\r\nimport { ChangeDetectorRef, Component, OnDestroy, OnInit, ViewEncapsulation } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\n// RxJS\r\nimport { Observable, Subject } from 'rxjs';\r\nimport { finalize, takeUntil, tap } from 'rxjs/operators';\r\n// Translate\r\nimport { TranslateService } from '@ngx-translate/core';\r\n// Store\r\nimport { Store } from '@ngrx/store';\r\nimport { AppState } from '../../../core/reducers';\r\n// Auth\r\nimport { AuthNoticeService, Login } from '../../../core/auth';\r\nimport { Credentials } from '../../../_entities/Credentials';\r\nimport { AuthService } from '../auth.service';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { RegistroPasajeroComponent } from '../registro-pasajero/registro-pasajero.component';\r\nimport { MatDialog, MatDialogConfig, MatDialogRef } from '@angular/material';\r\n\r\n/**\r\n * ! Just example => Should be removed in development\r\n */\r\nconst DEMO_PARAMS = {\r\n\tEMAIL: 'admin@demo.com',\r\n\tPASSWORD: 'demo'\r\n};\r\n\r\n@Component({\r\n\tselector: 'kt-login',\r\n\ttemplateUrl: './login.component.html',\r\n\tencapsulation: ViewEncapsulation.None\r\n})\r\nexport class LoginComponent implements OnInit, OnDestroy {\r\n\t//MIO\r\n\tpublic credentials: Credentials;\r\n\r\n\t// Public params\r\n\tloginForm: FormGroup;\r\n\tloading = false;\r\n\tisLoggedIn$: Observable;\r\n\terrors: any = [];\r\n\r\n\tinputType = 'password'\r\n\r\n\tprivate unsubscribe: Subject;\r\n\r\n\tprivate returnUrl: any;\r\n\r\n\t// Read more: => https://brianflove.com/2016/12/11/anguar-2-unsubscribe-observables/\r\n\r\n\t/**\r\n\t * Component constructor\r\n\t *\r\n\t * @param router: Router\r\n\t * @param auth: AuthService\r\n\t * @param authNoticeService: AuthNoticeService\r\n\t * @param translate: TranslateService\r\n\t * @param store: Store\r\n\t * @param fb: FormBuilder\r\n\t * @param cdr\r\n\t * @param route\r\n\t */\r\n\tconstructor(\r\n\t\tprivate router: Router,\r\n\t\tprivate auth: AuthService,\r\n\t\tprivate authNoticeService: AuthNoticeService,\r\n\t\tprivate translate: TranslateService,\r\n\t\tprivate store: Store,\r\n\t\tprivate fb: FormBuilder,\r\n\t\tprivate cdr: ChangeDetectorRef,\r\n\t\tprivate route: ActivatedRoute,\r\n\t\tprivate toastr: ToastrService,\r\n\r\n\t) {\r\n\t\tthis.unsubscribe = new Subject();\r\n\t}\r\n\r\n\t/**\r\n\t * @ Lifecycle sequences => https://angular.io/guide/lifecycle-hooks\r\n\t */\r\n\r\n\t/**\r\n\t * On init\r\n\t */\r\n\tngOnInit(): void {\r\n\t\tthis.credentials = new Credentials();\r\n\r\n\t\t// this.initLoginForm();\r\n\r\n\t\t// // redirect back to the returnUrl before login\r\n\t\t// this.route.queryParams.subscribe(params => {\r\n\t\t// \tthis.returnUrl = params['returnUrl'] || '/';\r\n\t\t// \tconsole.log(this.returnUrl);\r\n\t\t// });\r\n\t}\r\n\r\n\t/**\r\n\t * On destroy\r\n\t */\r\n\tngOnDestroy(): void {\r\n\t\t// this.authNoticeService.setNotice(null);\r\n\t\t// this.unsubscribe.next();\r\n\t\t// this.unsubscribe.complete();\r\n\t\t// this.loading = false;\r\n\t}\r\n\r\n\t/**\r\n\t * Form initalization\r\n\t * Default params, validators\r\n\t */\r\n\tinitLoginForm() {\r\n\t\t// demo message to show\r\n\t\t// if (!this.authNoticeService.onNoticeChanged$.getValue()) {\r\n\t\t// \tconst initialNotice = `Use account\r\n\t\t// \t${DEMO_PARAMS.EMAIL} and password\r\n\t\t// \t${DEMO_PARAMS.PASSWORD} to continue.`;\r\n\t\t// \tthis.authNoticeService.setNotice(initialNotice, 'info');\r\n\t\t// }\r\n\r\n\t\t// this.loginForm = this.fb.group({\r\n\t\t// \temail: [DEMO_PARAMS.EMAIL, Validators.compose([\r\n\t\t// \t\tValidators.required,\r\n\t\t// \t\tValidators.email,\r\n\t\t// \t\tValidators.minLength(3),\r\n\t\t// \t\tValidators.maxLength(320) // https://stackoverflow.com/questions/386294/what-is-the-maximum-length-of-a-valid-email-address\r\n\t\t// \t])\r\n\t\t// \t],\r\n\t\t// \tpassword: [DEMO_PARAMS.PASSWORD, Validators.compose([\r\n\t\t// \t\tValidators.required,\r\n\t\t// \t\tValidators.minLength(3),\r\n\t\t// \t\tValidators.maxLength(100)\r\n\t\t// \t])\r\n\t\t// \t]\r\n\t\t// });\r\n\t}\r\n\r\n\t/**\r\n\t * Form Submit\r\n\t */\r\n\tsubmit() {\r\n\t\tthis.loading = true;\r\n\t\tthis.auth.authenticate(this.credentials)\r\n\t\t.pipe(\r\n\t\t\tfinalize(() => {\r\n\t\t\t\tthis.loading = false;\r\n\t\t\t})\r\n\t\t)\r\n\t\t.subscribe(\r\n\t\t\tresult => {\r\n\t\t\t\tresult.pic = './assets/media/users/default.jpg';\r\n\t\t\t//\tthis.HWLogin();\r\n\t\t\t\tthis.auth.setData(result);\r\n\t\t\t\tthis.router.navigate(['/home']);\r\n\t\t\t\tthis.toastr.success('Bienvenido');\r\n\t\t\t}, error => {\r\n\t\t\t\tthis.toastr.error('Credenciales Incorrectas');\r\n\t\t\t});\r\n\r\n\t\t// const controls = this.loginForm.controls;\r\n\t\t// /** check form */\r\n\t\t// if (this.loginForm.invalid) {\r\n\t\t// \tObject.keys(controls).forEach(controlName =>\r\n\t\t// \t\tcontrols[controlName].markAsTouched()\r\n\t\t// \t);\r\n\t\t// \treturn;\r\n\t\t// }\r\n\r\n\t\t// this.loading = true;\r\n\r\n\t\t// const authData = {\r\n\t\t// \temail: controls['email'].value,\r\n\t\t// \tpassword: controls['password'].value\r\n\t\t// };\r\n\t\t// this.auth\r\n\t\t// \t.login(authData.email, authData.password)\r\n\t\t// \t.pipe(\r\n\t\t// \t\ttap(user => {\r\n\t\t// \t\t\tif (user) {\r\n\t\t// \t\t\t\tthis.store.dispatch(new Login({ authToken: user.accessToken }));\r\n\t\t// \t\t\t\t// this.router.navigateByUrl(this.returnUrl); // Main page\r\n\t\t// \t\t\t\tthis.router.navigate(['/home']);\r\n\t\t// \t\t\t} else {\r\n\t\t// \t\t\t\tthis.authNoticeService.setNotice(this.translate.instant('AUTH.VALIDATION.INVALID_LOGIN'), 'danger');\r\n\t\t// \t\t\t}\r\n\t\t// \t\t}),\r\n\t\t// \t\ttakeUntil(this.unsubscribe),\r\n\t\t// \t\tfinalize(() => {\r\n\t\t// \t\t\tthis.loading = false;\r\n\t\t// \t\t\tthis.cdr.markForCheck();\r\n\t\t// \t\t})\r\n\t\t// \t)\r\n\t\t// \t.subscribe();\r\n\t}\r\n\r\n\tHWLogin(){\r\n\t\tthis.auth.hwAuthenticate().subscribe(\r\n\t\t(response) => {\r\n\t\t\tresponse = JSON.parse(response)\r\n\t\t\t//console.log('Howen: ', response);\r\n\t\t\tthis.auth.setStorageHWToken(response.data);\r\n\t\t});\r\n\t}\r\n\r\n\tchangeTypeText() {\r\n\t\tif(this.inputType === 'password'){\r\n\t\t\tthis.inputType = 'text';\r\n\t\t} else {\r\n\t\t\tthis.inputType = 'password';\r\n\t\t}\r\n\t}\r\n\r\n\t/**\r\n\t * Checking control validation\r\n\t *\r\n\t * @param controlName: string => Equals to formControlName\r\n\t * @param validationType: string => Equals to valitors name\r\n\t */\r\n\t// isControlHasError(controlName: string, validationType: string): boolean {\r\n\t// \tconst control = this.loginForm.controls[controlName];\r\n\t// \tif (!control) {\r\n\t// \t\treturn false;\r\n\t// \t}\r\n\r\n\t// \tconst result = control.hasError(validationType) && (control.dirty || control.touched);\r\n\t// \treturn result;\r\n\t// }\r\n\r\n\tregistrarPasajero(){\r\n\t\t\r\n\t}\r\n}\r\n","import { AbstractControl } from '@angular/forms';\r\n\r\nexport class ConfirmPasswordValidator {\r\n\t/**\r\n\t * Check matching password with confirm password\r\n\t * @param control AbstractControl\r\n\t */\r\n\tstatic MatchPassword(control: AbstractControl) {\r\n\t\tconst password = control.get('password').value;\r\n\r\n\t\tconst confirmPassword = control.get('confirmPassword').value;\r\n\r\n\t\tif (password !== confirmPassword) {\r\n\t\t\tcontrol.get('confirmPassword').setErrors({ConfirmPassword: true});\r\n\t\t} else {\r\n\t\t\treturn null;\r\n\t\t}\r\n\t}\r\n}\r\n","\r\n\r\n","// Angular\r\nimport { ChangeDetectorRef, Component, OnDestroy, OnInit, ViewEncapsulation } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\n// RxJS\r\nimport { finalize, takeUntil, tap } from 'rxjs/operators';\r\n// Translate\r\nimport { TranslateService } from '@ngx-translate/core';\r\n// NGRX\r\nimport { Store } from '@ngrx/store';\r\nimport { AppState } from '../../../core/reducers';\r\n// Auth\r\nimport { AuthNoticeService, AuthService, Register, User } from '../../../core/auth/';\r\nimport { Subject } from 'rxjs';\r\nimport { ConfirmPasswordValidator } from './confirm-password.validator';\r\n\r\n@Component({\r\n\tselector: 'kt-register',\r\n\ttemplateUrl: './register.component.html',\r\n\tencapsulation: ViewEncapsulation.None\r\n})\r\nexport class RegisterComponent implements OnInit, OnDestroy {\r\n\tregisterForm: FormGroup;\r\n\tloading = false;\r\n\terrors: any = [];\r\n\r\n\tprivate unsubscribe: Subject; // Read more: => https://brianflove.com/2016/12/11/anguar-2-unsubscribe-observables/\r\n\r\n\t/**\r\n\t * Component constructor\r\n\t *\r\n\t * @param authNoticeService: AuthNoticeService\r\n\t * @param translate: TranslateService\r\n\t * @param router: Router\r\n\t * @param auth: AuthService\r\n\t * @param store: Store\r\n\t * @param fb: FormBuilder\r\n\t * @param cdr\r\n\t */\r\n\tconstructor(\r\n\t\tprivate authNoticeService: AuthNoticeService,\r\n\t\tprivate translate: TranslateService,\r\n\t\tprivate router: Router,\r\n\t\tprivate auth: AuthService,\r\n\t\tprivate store: Store,\r\n\t\tprivate fb: FormBuilder,\r\n\t\tprivate cdr: ChangeDetectorRef\r\n\t) {\r\n\t\tthis.unsubscribe = new Subject();\r\n\t}\r\n\r\n\t/*\r\n\t * @ Lifecycle sequences => https://angular.io/guide/lifecycle-hooks\r\n */\r\n\r\n\t/**\r\n\t * On init\r\n\t */\r\n\tngOnInit() {\r\n\t\tthis.initRegisterForm();\r\n\t}\r\n\r\n\t/*\r\n * On destroy\r\n */\r\n\tngOnDestroy(): void {\r\n\t\tthis.unsubscribe.next();\r\n\t\tthis.unsubscribe.complete();\r\n\t\tthis.loading = false;\r\n\t}\r\n\r\n\t/**\r\n\t * Form initalization\r\n\t * Default params, validators\r\n\t */\r\n\tinitRegisterForm() {\r\n\t\tthis.registerForm = this.fb.group({\r\n\t\t\tfullname: ['', Validators.compose([\r\n\t\t\t\tValidators.required,\r\n\t\t\t\tValidators.minLength(3),\r\n\t\t\t\tValidators.maxLength(100)\r\n\t\t\t])\r\n\t\t\t],\r\n\t\t\temail: ['', Validators.compose([\r\n\t\t\t\tValidators.required,\r\n\t\t\t\tValidators.email,\r\n\t\t\t\tValidators.minLength(3),\r\n\t\t\t\t// https://stackoverflow.com/questions/386294/what-is-the-maximum-length-of-a-valid-email-address\r\n\t\t\t\tValidators.maxLength(320)\r\n\t\t\t]),\r\n\t\t\t],\r\n\t\t\tusername: ['', Validators.compose([\r\n\t\t\t\tValidators.required,\r\n\t\t\t\tValidators.minLength(3),\r\n\t\t\t\tValidators.maxLength(100)\r\n\t\t\t]),\r\n\t\t\t],\r\n\t\t\tpassword: ['', Validators.compose([\r\n\t\t\t\tValidators.required,\r\n\t\t\t\tValidators.minLength(3),\r\n\t\t\t\tValidators.maxLength(100)\r\n\t\t\t])\r\n\t\t\t],\r\n\t\t\tconfirmPassword: ['', Validators.compose([\r\n\t\t\t\tValidators.required,\r\n\t\t\t\tValidators.minLength(3),\r\n\t\t\t\tValidators.maxLength(100)\r\n\t\t\t])\r\n\t\t\t],\r\n\t\t\tagree: [false, Validators.compose([Validators.required])]\r\n\t\t}, {\r\n\t\t\tvalidator: ConfirmPasswordValidator.MatchPassword\r\n\t\t});\r\n\t}\r\n\r\n\t/**\r\n\t * Form Submit\r\n\t */\r\n\tsubmit() {\r\n\t\tconst controls = this.registerForm.controls;\r\n\r\n\t\t// check form\r\n\t\tif (this.registerForm.invalid) {\r\n\t\t\tObject.keys(controls).forEach(controlName =>\r\n\t\t\t\tcontrols[controlName].markAsTouched()\r\n\t\t\t);\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tthis.loading = true;\r\n\r\n\t\tif (!controls['agree'].value) {\r\n\t\t\t// you must agree the terms and condition\r\n\t\t\t// checkbox cannot work inside mat-form-field https://github.com/angular/material2/issues/7891\r\n\t\t\tthis.authNoticeService.setNotice('You must agree the terms and condition', 'danger');\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tconst _user: User = new User();\r\n\t\t_user.clear();\r\n\t\t_user.email = controls['email'].value;\r\n\t\t_user.username = controls['username'].value;\r\n\t\t_user.fullname = controls['fullname'].value;\r\n\t\t_user.password = controls['password'].value;\r\n\t\t_user.roles = [];\r\n\t\tthis.auth.register(_user).pipe(\r\n\t\t\ttap(user => {\r\n\t\t\t\tif (user) {\r\n\t\t\t\t\tthis.store.dispatch(new Register({authToken: user.accessToken}));\r\n\t\t\t\t\t// pass notice message to the login page\r\n\t\t\t\t\tthis.authNoticeService.setNotice(this.translate.instant('AUTH.REGISTER.SUCCESS'), 'success');\r\n\t\t\t\t\tthis.router.navigateByUrl('/login');\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis.authNoticeService.setNotice(this.translate.instant('AUTH.VALIDATION.INVALID_LOGIN'), 'danger');\r\n\t\t\t\t}\r\n\t\t\t}),\r\n\t\t\ttakeUntil(this.unsubscribe),\r\n\t\t\tfinalize(() => {\r\n\t\t\t\tthis.loading = false;\r\n\t\t\t\tthis.cdr.markForCheck();\r\n\t\t\t})\r\n\t\t).subscribe();\r\n\t}\r\n\r\n\t/**\r\n\t * Checking control validation\r\n\t *\r\n\t * @param controlName: string => Equals to formControlName\r\n\t * @param validationType: string => Equals to valitors name\r\n\t */\r\n\tisControlHasError(controlName: string, validationType: string): boolean {\r\n\t\tconst control = this.registerForm.controls[controlName];\r\n\t\tif (!control) {\r\n\t\t\treturn false;\r\n\t\t}\r\n\r\n\t\tconst result = control.hasError(validationType) && (control.dirty || control.touched);\r\n\t\treturn result;\r\n\t}\r\n}\r\n","\r\n","import { UsuarioService } from './../../usuarios/services/usuario.service';\r\nimport { ClienteVM } from './../../../_entities/clientes/ClienteVM';\r\nimport { AppState } from './../../../core/reducers/index';\r\nimport { ChangeDetectorRef, Component, OnInit } from '@angular/core';\r\nimport { debounceTime, finalize, takeUntil, tap } from 'rxjs/operators';\r\nimport { AbstractControl, FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { Store } from '@ngrx/store';\r\nimport { Subject, Subscription } from 'rxjs';\r\nimport { ConfirmPasswordValidator } from '../register/confirm-password.validator';\r\nimport { AuthService } from './../../auth/auth.service';\r\nimport { ToastrService } from 'ngx-toastr';\r\n\r\n@Component({\r\n selector: 'kt-registro-pasajero',\r\n templateUrl: './registro-pasajero.component.html',\r\n styleUrls: ['./registro-pasajero.component.scss']\r\n})\r\nexport class RegistroPasajeroComponent implements OnInit {\r\n\tpublic usuarioForm: FormGroup;\r\n\tpublic clientesRegistros: ClienteVM[];\r\n\tpublic idUsuarioMod: string;\r\n\tpublic param: Subscription;\r\n\tpublic loading: boolean = false;\r\n\tpublic titulo: string = 'Agregar Usuario';\r\n\tpublic permisosActuales: string[] = [];\r\n\tpublic mensajes = {\r\n\t\tnombre: '',\r\n\t\tapellidoPaterno: '',\r\n\t\tapellidoMaterno: '',\r\n\t\tcorreo: '',\r\n\t\tpassword: '',\r\n\t\tconfirmPassword: '',\r\n\t\tpermisos: ''\r\n\t};\r\n\tpublic listaTiposUsuario=[{id:'156', nombre:'Pasajero'},{id:'158',nombre:'Conductor'}]\r\n\tpublic tiempoEspera: number = 1000;\r\n\r\n\tconstructor(\r\n\t\tprivate auth: AuthService,\r\n\t\tprivate fb: FormBuilder,\r\n\t\tprivate route: ActivatedRoute,\r\n\t\tprivate authService: AuthService,\r\n\t\tprivate usuarioService: UsuarioService,\r\n\t\tprivate toastr: ToastrService,\r\n\t\tprivate router: Router,\r\n\t) { }\r\n\r\n\tngOnInit() {\r\n\t\tthis.initForm();\r\n\t\r\n\t}\r\n\r\n\r\n\tinitForm() {\r\n\t\tthis.usuarioForm = this.fb.group({\r\n\t\t\tnombre: ['', [Validators.required, Validators.maxLength(200)]],\r\n\t\t\tapellidoPaterno: ['', [Validators.maxLength(200)]],\r\n\t\t\tapellidoMaterno: ['', [Validators.maxLength(200)]],\r\n\t\t\tcorreo: ['', [Validators.required, Validators.email]],\r\n\t\t\tpasswordGroup: this.fb.group({\r\n\t\t\t\tpassword: ['',\r\n\t\t\t\t\tValidators.compose([Validators.required, Validators.minLength(8),\r\n\t\t\t\t\tValidators.maxLength(16),\r\n\t\t\t\t\tValidators.pattern('^(?=\\\\w*\\\\d)(?=\\\\w*[A-Z])(?=\\\\w*[a-z])\\\\S{8,16}$')])],\r\n\t\t\t\tconfirmPassword: ['', Validators.compose([Validators.required, Validators.minLength(8),\r\n\t\t\t\t\tValidators.maxLength(16),\r\n\t\t\t\t\tValidators.pattern('^(?=\\\\w*\\\\d)(?=\\\\w*[A-Z])(?=\\\\w*[a-z])\\\\S{8,16}$')])]\r\n\t\t\t}, { validators: passwordMatcher }),\r\n\t\t\tpermisos: [['']],\r\n\t\t\tidCliente: [4],\r\n \t fechaNacimiento:[]\r\n\t\t});\r\n\t\tthis.initFormValidation();\r\n\t}\r\n\r\n\tinitFormValidation() {\r\n\t\tconst nombreControl = this.usuarioForm.get('nombre');\r\n\t\tconst apellidoPaternoControl = this.usuarioForm.get('apellidoPaterno');\r\n\t\tconst apellidoMaternoControl = this.usuarioForm.get('apellidoMaterno');\r\n\t\tconst correoControl = this.usuarioForm.get('correo');\r\n\t\tconst passwordControl = this.usuarioForm.get('passwordGroup.password');\r\n\t\tconst confirmPasswordControl = this.usuarioForm.get('passwordGroup.confirmPassword');\r\n\t\tconst permisosControl = this.usuarioForm.get('permisos');\r\n\t\tconst idClienteControl = this.usuarioForm.get('idCliente');\r\n\t\tnombreControl.valueChanges.pipe(\r\n\t\t\tdebounceTime(this.tiempoEspera)\r\n\t\t).subscribe(\r\n\t\t\tvalue => this.setMessage(nombreControl, 'nombre', 'Nombre')\r\n\t\t);\r\n\t\tapellidoPaternoControl.valueChanges.pipe(\r\n\t\t\tdebounceTime(this.tiempoEspera)\r\n\t\t).subscribe(\r\n\t\t\tvalue => this.setMessage(apellidoPaternoControl, 'apellidoPaterno', 'Apellido Paterno')\r\n\t\t);\r\n\t\tapellidoMaternoControl.valueChanges.pipe(\r\n\t\t\tdebounceTime(this.tiempoEspera)\r\n\t\t).subscribe(\r\n\t\t\tvalue => this.setMessage(apellidoMaternoControl, 'apellidoMaterno', 'Apellido Materno')\r\n\t\t);\r\n\t\tif (!this.idUsuarioMod) {\r\n\t\t\tcorreoControl.valueChanges.pipe(\r\n\t\t\t\tdebounceTime(this.tiempoEspera)\r\n\t\t\t).subscribe(\r\n\t\t\t\tvalue => this.setMessage(correoControl, 'correo', 'Correo')\r\n\t\t\t);\r\n\t\t\tpasswordControl.valueChanges.pipe(\r\n\t\t\t\tdebounceTime(this.tiempoEspera)\r\n\t\t\t).subscribe(\r\n\t\t\t\tvalue => this.setMessage(passwordControl, 'password', 'Contraseña')\r\n\t\t\t);\r\n\t\t\tconfirmPasswordControl.valueChanges.pipe(\r\n\t\t\t\tdebounceTime(this.tiempoEspera)\r\n\t\t\t).subscribe(\r\n\t\t\t\tvalue => this.setMessage(confirmPasswordControl, 'confirmPassword', 'Confirmación Contraseña')\r\n\t\t\t);\r\n\t\t}\r\n\t\tpermisosControl.valueChanges.pipe(\r\n\t\t\tdebounceTime(this.tiempoEspera)\r\n\t\t).subscribe(\r\n\t\t\tvalue => this.setMessage(permisosControl, 'permisos', 'Permisos')\r\n\t\t);\r\n\t\tif (this.idUsuarioMod) {\r\n\t\t\tidClienteControl.valueChanges.pipe(\r\n\t\t\t\tdebounceTime(this.tiempoEspera)\r\n\t\t\t).subscribe(\r\n\t\t\t\tvalue => this.setMessage(idClienteControl, 'idCliente', 'Cliente')\r\n\t\t\t);\r\n\t\t}\r\n\t}\r\n\r\n\tsetMessage(c: AbstractControl, campo: string, campoVisual: string): void {\r\n\t\tthis.mensajes[campo] = '';\r\n\t\tif ((c.touched || c.dirty) && c.errors) {\r\n\t\t\tthis.mensajes[campo] = Object.keys(c.errors).map(\r\n\t\t\t\tkey => this.generateMessage(c, key, campoVisual)\r\n\t\t\t).join(' ');\r\n\t\t}\r\n\t}\r\n\r\n\tgenerateMessage(c: AbstractControl, key: string, campoVisual: string): string {\r\n\t\tswitch (key) {\r\n\t\t\tcase 'required':\r\n\t\t\t\treturn `El campo ${campoVisual} es requerido`;\r\n\t\t\tcase 'match':\r\n\t\t\t\treturn 'Las contraseñas no coinciden'\r\n\t\t\tcase 'email':\r\n\t\t\t\treturn 'Ingrese un correo válido';\r\n\t\t\tcase 'minlength':\r\n\t\t\t\treturn `El campo ${campoVisual} tiene una longitud mínima de ${c.errors[key].requiredLength} caracteres`;\r\n\t\t\tcase 'maxlength':\r\n\t\t\t\treturn `El campo ${campoVisual} tiene una longitud máxima de ${c.errors[key].requiredLength} caracteres`;\r\n\t\t\tcase 'pattern':\r\n\t\t\t\treturn 'La contraseña debe ser de 6 o más caracteres y contener mayúsculas y minúsculas, por lo menos un número y un símbolo'\r\n\t\t\tdefault:\r\n\t\t\t\treturn `El campo ${campoVisual} es inválido`;\r\n\t\t}\r\n\t}\r\n\r\n\tonCancel() {\r\n\t\tthis.router.navigateByUrl('/login');\r\n\t}\r\n\r\n\tonSubmit() {\r\n\t\tthis.loading = true;\r\n\t this.registrarUsuario()\r\n\t}\r\n\tpublic permiso;\r\n\tregistrarUsuario() {\r\n\t\tthis.permisosActuales.push(this.usuarioForm.get('permisos').value)\r\n\t this.usuarioForm.patchValue({\r\n\t\t permisos:this.permisosActuales\r\n\t })\r\n\t var usuario = { ...this.usuarioForm.value };\r\n\r\n\t\tusuario = { ...usuario, ...this.usuarioForm.get('passwordGroup').value }\r\n\t\tthis.authService.registrarPasajero(usuario).subscribe(success => {\r\n\t\t\tthis.usuarioForm.reset();\r\n\t\t\tthis.toastr.success('Usuario registrado correctamente', 'Operación Exitosa');\r\n this.loading = false;\r\n\t\tthis.router.navigateByUrl('/login');\r\n\t\t},\r\n\t\t\terr => {\r\n\t\t\t\tthis.toastr.error('Ocurrió un error al intentar registrar el usuario: ' + err, 'Error en la Operación');\r\n\t\t\t\tthis.loading = false;\r\n\t\t\t\tthis.usuarioForm.reset();\r\n\t\t\t},\r\n\t\t\t() => this.onSubmitComplete());\r\n\r\n\t}\r\n\r\n\r\n\r\n\tonSubmitComplete() {\r\n\t\tthis.router.navigateByUrl('/login');\r\n\t\tthis.loading = false;\r\n\t}\r\n\r\n\r\n\r\n\tcheckedBox(permiso) {\r\n\t\tlet checked = false;\r\n\t\tlet permisos: string[] = this.usuarioForm.get('permisos').value;\r\n\r\n\t\tif (permisos.includes(permiso.nombre)) {\r\n\t\t\tchecked = true;\r\n\t\t}\r\n\t\treturn checked;\r\n\t}\r\n\r\n\r\n\t/**Pasar el valor del mat-slide de boolean a number */\r\n\tpublic checado: boolean = false;\r\n\tonChange(value, permiso) {\r\n\t\tif (value.checked === true) {\r\n\t\t\tthis.permisosActuales.push(permiso);\r\n\t\t} else {\r\n\t\t\tthis.permisosActuales.splice(this.permisosActuales.findIndex(item => item === permiso), 1)\r\n\t\t}\r\n\r\n\t\tthis.usuarioForm.patchValue({\r\n\t\t\tpermisos: this.permisosActuales\r\n\t\t})\r\n\t}\r\n\r\n}\r\n\r\nfunction passwordMatcher(c: AbstractControl): { [key: string]: boolean } | null {\r\n\tconst passwordControl = c.get('password');\r\n\tconst confirmPasswordControl = c.get('confirmPassword');\r\n\r\n\tif (passwordControl.pristine || confirmPasswordControl.pristine) {\r\n\t\tconfirmPasswordControl.setErrors(null);\r\n\t\treturn null;\r\n\t}\r\n\r\n\tif (passwordControl.value === confirmPasswordControl.value) {\r\n\t\tconfirmPasswordControl.setErrors(null);\r\n\t\treturn null;\r\n\t}\r\n\r\n\tconfirmPasswordControl.setErrors({ 'match': true });\r\n\r\n\treturn { 'match': true };\r\n\r\n}\r\n","\r\n\r\n","import { Component, OnInit, ChangeDetectorRef } from '@angular/core';\r\n// Auth\r\nimport { AuthNoticeService } from '../../../core/auth';\r\nimport { AuthService } from '../auth.service';\r\nimport { FormGroup, FormBuilder, Validators } from '@angular/forms';\r\nimport { Subject } from 'rxjs';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { tap, takeUntil, finalize } from 'rxjs/operators';\r\nimport { ResetPassword } from '../../../_entities/ResetPassword';\r\nimport { ToastrService } from 'ngx-toastr';\r\n\r\n@Component({\r\n selector: 'kt-reset-password',\r\n templateUrl: './reset-password.component.html',\r\n styleUrls: ['./reset-password.component.scss']\r\n})\r\nexport class ResetPasswordComponent implements OnInit {\r\n\r\n forgotPasswordForm: FormGroup;\r\n loading = false;\r\n errors: any = [];\r\n email: string;\r\n token: string;\r\n private unsubscribe: Subject;\r\n\r\n constructor(private authService: AuthService,\r\n public authNoticeService: AuthNoticeService,\r\n\tprivate toastService: ToastrService,\r\n private router: Router,\r\n private fb: FormBuilder,\r\n private cdr: ChangeDetectorRef,\r\n private route: ActivatedRoute, ) { }\r\n\r\n ngOnInit() {\r\n this.route.queryParamMap.subscribe(queryParams => {\r\n this.email = queryParams.get(\"correo\");\r\n this.token = queryParams.get(\"token\").split(' ').join('+');\r\n //console.log(decodeURI(queryParams.get(\"token\")));\r\n //console.log(queryParams.get(\"token\").split(' ').join('+'));\r\n })\r\n this.initRegistrationForm();\r\n }\r\n\r\n /*ngOnDestroy(): void {\r\n this.unsubscribe.next();\r\n this.unsubscribe.complete();\r\n this.loading = false;\r\n }*/\r\n\r\n initRegistrationForm() {\r\n this.forgotPasswordForm = this.fb.group({\r\n password: ['', Validators.compose([\r\n Validators.required,\r\n ])],\r\n passwordConfirmation: ['', Validators.compose([\r\n Validators.required\r\n ])],\r\n });\r\n }\r\n\r\n submit() {\r\n const controls = this.forgotPasswordForm.controls;\r\n if (this.forgotPasswordForm.invalid) {\r\n Object.keys(controls).forEach(controlName =>\r\n controls[controlName].markAsTouched()\r\n );\r\n return;\r\n }\r\n this.loading = true;\r\n const password = controls['password'].value;\r\n const passwordConfirmation = controls['passwordConfirmation'].value;\r\n\r\n const resetPassword: any = {\r\n Correo: this.email,\r\n Token: this.token,\r\n Password: password,\r\n ConfirmPassword: passwordConfirmation,\r\n }\r\n\r\n\tconsole.log(resetPassword);\r\n\r\n\r\n this.authService.resetPassword(resetPassword).pipe(\r\n /*tap(response => {\r\n if (response) {\r\n this.authNoticeService.setNotice(response, 'success');\r\n this.router.navigateByUrl('/login');\r\n } else {\r\n this.authNoticeService.setNotice('error', 'danger');\r\n }\r\n }),\r\n takeUntil(this.unsubscribe),*/\r\n finalize(() => {\r\n this.loading = false;\r\n this.cdr.markForCheck();\r\n })\r\n ).subscribe(\r\n result => {\r\n\t\t //console.log(result)\r\n\t this.router.navigateByUrl('/login');\r\n\t this.toastService.success('Contraseña actualizada')\r\n\t}\r\n\r\n );\r\n }\r\n\r\n isControlHasError(controlName: string, validationType: string): boolean {\r\n\tconst control = this.forgotPasswordForm.controls[controlName];\r\n\tif (!control) {\r\n\t\treturn false;\r\n\t}\r\n\r\n\tconst result =\r\n\t\tcontrol.hasError(validationType) &&\r\n\t\t(control.dirty || control.touched);\r\n\treturn result;\r\n}\r\n\r\n}\r\n","
\r\n\t
\r\n\t\t
\r\n\t\t\t

 {{titulo}}

\r\n\t\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t\t \r\n\t\t\t \r\n\t\t\t \r\n\t\t\t \r\n\t\t\t\r\n\t\t\t\r\n\t\t
\r\n\t
\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n\r\n\r\n","import { ToastrService } from 'ngx-toastr';\r\nimport { DatePipe } from '@angular/common';\r\nimport { finalize } from 'rxjs/operators';\r\nimport { Alertado } from './../../../../_entities/consola/alertados';\r\nimport { AlertadosService } from './../../services/alertados.service';\r\nimport { Router } from '@angular/router';\r\nimport { FormGroup, FormBuilder } from '@angular/forms';\r\nimport { Component, OnInit, AfterContentInit } from '@angular/core';\r\nimport { MatDialog, MatDialogConfig } from '@angular/material';\r\nimport { ImprimirPdfComponent } from '../imprimir-pdf/imprimir-pdf.component';\r\nimport { ALERTAS } from './../../../../_entities/estados';\r\nimport { environment } from './../../../../../environments/environment';\r\n\r\n\r\n@Component({\r\n\tselector: 'kt-alertados',\r\n\ttemplateUrl: './alertados.component.html',\r\n\tstyleUrls: ['./alertados.component.scss']\r\n})\r\nexport class AlertadosComponent implements OnInit, AfterContentInit {\r\n\tpublic busquedaForm: FormGroup;\r\n\tpublic listaAlertados: Alertado[] = [];\r\n\tpublic titulo: String = 'Alertados';\r\n\tpublic showFilterRow: boolean;\r\n\tpublic showHeaderFilter: boolean;\r\n\tpublic loadingVisible: boolean = false;\r\n\tpublic isDisabled: boolean = true;\r\n\tpublic datosReporte = [];\r\n\tpublic mensajeAgrupar: string = \"Arrastre un encabezado de columna aquí para agrupar por esa columna\"\r\n\tpublic loadingMessage: string = 'Cargando...';\r\n\r\n\r\n\tpublic interval = null;\r\n\r\n\tconstructor(private alertadosService: AlertadosService,\r\n\t\tprivate toastService: ToastrService,\r\n\t\tpublic dialog: MatDialog,\r\n\t\tprivate router: Router,\r\n\t\tprivate fb: FormBuilder,\r\n\t\tprivate datepipe: DatePipe) {\r\n\t\tthis.showFilterRow = true;\r\n\t\tthis.showHeaderFilter = true;\r\n\r\n\t}\r\n\r\n\tngOnInit() {\r\n\t\tthis.obtenerListaAlertados();\r\n\t}\r\n\r\n\tngAfterContentInit() {\r\n\t\tthis.interval = setInterval(async () => {\r\n\t\t\tthis.loadingMessage = 'Actualizando...';\r\n\t\t\tthis.obtenerListaAlertados();\r\n\t\t}, 30000);\r\n\t}\r\n\r\n\tngOnDestroy() {\r\n\t\tclearInterval(this.interval);\r\n\t}\r\n\r\n\tobtenerListaAlertados() {\r\n\t\tthis.loadingVisible = true;\r\n\t\tthis.alertadosService.obtenerAlertados().pipe(\r\n\t\t\tfinalize(\r\n\t\t\t\t() => this.loadingVisible = false\r\n\t\t\t)\r\n\t\t).subscribe(\r\n\t\t\t(alertados: Alertado[]) => {\r\n\t\t\t\tif (alertados.length === 0) {\r\n\t\t\t\t\tthis.toastService.warning('Sin datos existentes');\r\n\t\t\t\t}\r\n\t\t\t\talertados.map(alertado => {\r\n\t\t\t\t\talertado.fechaHora = this.datepipe.transform(alertado.fechaHora, 'HH:mm:ss a');\r\n\r\n\t\t\t\t\tconst estado = ALERTAS.find(alerta => alerta.id == alertado.estado);\r\n\t\t\t\t\talertado.estado = estado.nombre;\r\n\r\n\t\t\t\t\tif (alertado.velocidad !== null) {\r\n\t\t\t\t\t\talertado.velocidad = alertado.velocidad + ' Km/h'\r\n\t\t\t\t\t}\r\n\t\t\t\t})\r\n\r\n\t\t\t\tthis.listaAlertados = alertados.sort(function (a, b) {\r\n\t\t\t\t\tif (a.fechaHora > b.fechaHora) {\r\n\t\t\t\t\t\treturn 1;\r\n\t\t\t\t\t}\r\n\t\t\t\t\tif (a.fechaHora < b.fechaHora) {\r\n\t\t\t\t\t\treturn -1;\r\n\t\t\t\t\t}\r\n\t\t\t\t\treturn 0;\r\n\t\t\t\t});\r\n\r\n\t\t\t\tthis.listaAlertados.forEach(alertado => {\r\n\t\t\t\t\tlet link = `${environment.EXTERNAL_MAP}/ubicar?lat=${alertado.lat}&lng=${alertado.lng}`\r\n\r\n\t\t\t\t\tthis.datosReporte.push({\r\n\t\t\t\t\t\t'Ubicacion': {\r\n\t\t\t\t\t\t\tf: '=HYPERLINK(\"' + link + '\",\"Ubicar\")',\r\n\t\t\t\t\t\t\tv: link\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\t'IMEI': alertado.imei.toString(),\r\n\t\t\t\t\t\t'Económio': alertado.economico,\r\n\t\t\t\t\t\t'Placas': alertado.nombreCliente,\r\n\t\t\t\t\t\t'Latitud': alertado.lat,\r\n\t\t\t\t\t\t'Longitud': alertado.lng,\r\n\t\t\t\t\t\t'Fecha y Hora': alertado.fechaHora,\r\n\t\t\t\t\t\t'Velocidad': alertado.velocidad,\r\n\t\t\t\t\t\t'Marca': alertado.marca,\r\n\t\t\t\t\t\t'Modelo': alertado.modelo,\r\n\t\t\t\t\t\t'Estado': alertado.estado\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\r\n\t\t\t\tif (this.datosReporte.length > 0) {\r\n\t\t\t\t\tthis.isDisabled = false;\r\n\t\t\t\t}\r\n\r\n\t\t\t}, (error) => {\r\n\t\t\t\tthis.toastService.error('Ocurrio un error al obtener datos')\r\n\t\t\t}\r\n\t\t)\r\n\t}\r\n\r\n\r\n\tnavegarMaqueta() {\r\n\t\tthis.router.navigateByUrl('/home/administracion/consola/reportes/maqueta');\r\n\t}\r\n\r\n\tnavegarTranmisiones() {\r\n\t\tthis.router.navigateByUrl('/home/administracion/consola/reportes/transmisiones');\r\n\t}\r\n\r\n\tnavegarSinTransmitir() {\r\n\t\tthis.router.navigateByUrl('/home/administracion/consola/reportes/sin-transmitir');\r\n\t}\r\n\r\n\tnavegarGaleria() {\r\n\t\tthis.router.navigateByUrl('/home/administracion/consola/clientes')\r\n\t}\r\n\r\n\tnavegarFoto() {\r\n\t\tthis.router.navigateByUrl('/home/administracion/consola/fotografias')\r\n\t}\r\n\r\n\tonRowPrepared(e) {\r\n\t\tif (e.rowType == 'data') {\r\n\t\t\tswitch (e.data.estado) {\r\n\t\t\t\tcase 'Alerta Primaria': //'Alerta Primaria'; roj0\r\n\t\t\t\t\te.rowElement.style.backgroundColor = 'rgb(220 20 60 / 70%)';\r\n\t\t\t\t\te.rowElement.style.color = 'white'\r\n\t\t\t\t\te.rowElement.className = e.rowElement.className.replace(\"dx-row-alt\", \"\");\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase 'Alerta Secundaria': // 'Alerta Secundaria'; amarillo\r\n\t\t\t\t\te.rowElement.style.backgroundColor = 'rgb(249 249 70 / 70%)';\r\n\t\t\t\t\t//e.rowElement.style.color = 'white'\r\n\t\t\t\t\te.rowElement.className = e.rowElement.className.replace(\"dx-row-alt\", \"\");\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase 'Bateria Baja': //'Bateria Baja'; cafe\r\n\t\t\t\t\te.rowElement.style.backgroundColor = 'rgb(138 93 19 / 70%)';\r\n\t\t\t\t\te.rowElement.style.color = 'white'\r\n\t\t\t\t\te.rowElement.className = e.rowElement.className.replace(\"dx-row-alt\", \"\");\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase 'Falta de Energía': //'Falta de Energía'; rosa\r\n\t\t\t\t\te.rowElement.style.backgroundColor = 'rgb(202 51 255 / 70%)';\r\n\t\t\t\t\te.rowElement.style.color = 'white'\r\n\t\t\t\t\te.rowElement.className = e.rowElement.className.replace(\"dx-row-alt\", \"\");\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase 'Alerta de Movimiento': //'Alerta de Movimiento'; verde\r\n\t\t\t\t\te.rowElement.style.backgroundColor = 'rgb(25 156 23 / 70%)';\r\n\t\t\t\t\te.rowElement.style.color = 'white'\r\n\t\t\t\t\te.rowElement.className = e.rowElement.className.replace(\"dx-row-alt\", \"\");\r\n\t\t\t\t\tbreak;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\tabrirImprimir(rowData) {\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.autoFocus = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\t\tdialogConfig.width = \"70%\";\r\n\t\tdialogConfig.panelClass = 'custom-modalbox';\r\n\t\tdialogConfig.closeOnNavigation = true;\r\n\t\tdialogConfig.hasBackdrop = false;\r\n\t\tdialogConfig.data = rowData\r\n\t\tthis.dialog.open(ImprimirPdfComponent, dialogConfig).afterClosed().subscribe(() => {\r\n\t\t});\r\n\t}\r\n}\r\n","
\r\n\t
\r\n\t\t
\r\n\t\t\t

 Fotografias

\r\n\t\t
\r\n\t
\r\n\t\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t \r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t{{imei}}\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t \r\n\t\t\t\t \r\n\t\t\t\t\r\n\r\n\t\t\t
\r\n\t\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\r\n\t
\r\n
\r\n\r\n\r\n\r\n","import { DatePipe } from '@angular/common';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { FormControl } from '@angular/forms';\r\nimport { MatDialog, MatDialogConfig } from '@angular/material';\r\nimport { Router } from '@angular/router';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { Observable } from 'rxjs';\r\nimport { finalize, map, startWith } from 'rxjs/operators';\r\nimport { FotografiasService } from '../../services/fotografias.service';\r\nimport { VerFotoComponent } from './ver-foto/ver-foto.component';\r\n\r\n@Component({\r\n\tselector: 'kt-fotografias',\r\n\ttemplateUrl: './fotografias.component.html',\r\n\tstyleUrls: ['./fotografias.component.scss']\r\n})\r\nexport class FotografiasComponent implements OnInit {\r\n\tpublic imeiList: string[] = [];\r\n\tpublic imagesList = [];\r\n\tpublic imeiControl = new FormControl();\r\n\tpublic mensajeAgrupar: string = \"Arrastre un encabezado de columna aquí para agrupar por esa columna\"\r\n\r\n\tpublic showFilterRow: boolean;\r\n\tpublic showHeaderFilter: boolean;\r\n\tpublic filterValue: string;\r\n\tpublic filteredOptions: Observable;\r\n\r\n\tpublic loadingVisible: boolean = false;\r\n\r\n\tconstructor(private fotografiasService: FotografiasService,\r\n\t\tprivate dialog: MatDialog,\r\n\t\tprivate toastService: ToastrService,\r\n\t\tprivate datepipe: DatePipe,\r\n\t\tprivate router: Router) {\r\n\t\tthis.showFilterRow = true;\r\n\t\tthis.showHeaderFilter = true;\r\n\t}\r\n\r\n\tngOnInit() {\r\n\t\tthis.getImeiList();\r\n\t\tthis.filteredOptions = this.imeiControl.valueChanges.pipe(\r\n\t\t\tstartWith(''),\r\n\t\t\tmap(value => this._filter(value))\r\n\t\t);\r\n\t}\r\n\r\n\r\n\tprivate _filter(name: string): string[] {\r\n\t\tconst filterValue = name.toLowerCase();\r\n\t\treturn this.imeiList.filter(option => option.toLowerCase().indexOf(filterValue) === 0);\r\n\t}\r\n\r\n\tgetImeiList() {\r\n\t\tthis.fotografiasService.getImeiList().subscribe(\r\n\t\t\t(imeis: string[]) => {\r\n\t\t\t\tthis.imeiList = imeis;\r\n\t\t\t}, (err) => {\r\n\t\t\t\tconsole.log('Error al obtener imeis');\r\n\r\n\t\t\t}\r\n\t\t)\r\n\t}\r\n\r\n\tgetImagesList() {\r\n\t\tthis.loadingVisible = true;\r\n\t\tconst imei = this.imeiControl.value;\r\n\t\tconst today = new Date();\r\n\t\tthis.filterValue = this.datepipe.transform(today, 'dd/MM/yy');\r\n\r\n\t\tthis.fotografiasService.getImagesList(imei).pipe(\r\n\t\t\tfinalize(\r\n\t\t\t\t() => this.loadingVisible = false\r\n\t\t\t)\r\n\t\t).subscribe(\r\n\t\t\t(images: string[]) => {\r\n\t\t\t\tif (images.length > 0) {\r\n\t\t\t\t\timages.forEach(image => {\r\n\t\t\t\t\t\tlet data = image.split(' ');\r\n\t\t\t\t\t\tlet id = data[0].substring(0, data[0].length - 1)\r\n\t\t\t\t\t\tlet imageData = {\r\n\t\t\t\t\t\t\tid: id,\r\n\t\t\t\t\t\t\tfecha: data[2],\r\n\t\t\t\t\t\t\thora: data[3] + ' ' + data[4]\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tthis.imagesList.push(imageData);\r\n\t\t\t\t\t});\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis.toastService.warning('No hay imagenes para mostrar');\r\n\t\t\t\t}\r\n\r\n\r\n\t\t\t}, (err) => {\r\n\t\t\t\tconsole.log('Error al obtener lista de imagenes');\r\n\r\n\t\t\t}\r\n\t\t)\r\n\t}\r\n\r\n\tgetImage(imagenData) {\r\n\t\tthis.loadingVisible = true;\r\n\t\tthis.fotografiasService.getImage(this.imeiControl.value, imagenData.id).pipe(\r\n\t\t\tfinalize(\r\n\t\t\t\t() => {\r\n\t\t\t\t\tthis.loadingVisible = false\r\n\t\t\t\t}\r\n\t\t\t)\r\n\t\t).subscribe(\r\n\t\t\t(imagen) => {\r\n\t\t\t\tconst data = {\r\n\t\t\t\t\tid: imagenData.id,\r\n\t\t\t\t\timei: this.imeiControl.value,\r\n\t\t\t\t\tfechaHora: imagenData.fecha + ' ' + imagenData.hora,\r\n\t\t\t\t\timagen: window.URL.createObjectURL(imagen)\r\n\t\t\t\t}\r\n\r\n\t\t\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\t\t\tdialogConfig.autoFocus = true;\r\n\t\t\t\tdialogConfig.disableClose = true;\r\n\t\t\t\tdialogConfig.width = \"30%\";\r\n\t\t\t\tdialogConfig.closeOnNavigation = true;\r\n\t\t\t\tdialogConfig.hasBackdrop = false;\r\n\t\t\t\tdialogConfig.panelClass = 'custom-modalbox';\r\n\t\t\t\tdialogConfig.data = data\r\n\t\t\t\tthis.dialog.open(VerFotoComponent, dialogConfig).afterClosed().subscribe(() => {\r\n\t\t\t\t});\r\n\r\n\t\t\t}, (err) => {\r\n\t\t\t\tthis.toastService.error('Error al obtener imagen');\r\n\r\n\t\t\t}\r\n\t\t);\r\n\t}\r\n\r\n\tregresar() {\r\n\t\tthis.router.navigateByUrl('/home/administracion/consola/alertados');\r\n\t}\r\n\r\n\r\n\r\n}\r\n","
\r\n\t\r\n\t\r\n\t\r\n\t\r\n\t
\r\n\t\t\r\n\t\t

Foto: {{id}}

\r\n\t
\r\n\t\r\n\t\r\n\t\t\r\n\t\t
{{fechaImagen}}
\r\n\t
\r\n
\r\n\r\n","import { Component, ElementRef, Inject, OnInit, ViewChild } from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { finalize } from 'rxjs/operators';\r\nimport { FotografiasService } from '../../../services/fotografias.service';\r\n\r\n@Component({\r\n\tselector: 'kt-ver-foto',\r\n\ttemplateUrl: './ver-foto.component.html',\r\n\tstyleUrls: ['./ver-foto.component.scss']\r\n})\r\nexport class VerFotoComponent implements OnInit {\r\n\t@ViewChild('myImage', { static: true }) image: ElementRef\r\n\r\n\tpublic imei: string;\r\n\tpublic id: string;\r\n\tpublic fechaImagen;\r\n\r\n\tpublic loadingVisible: boolean = false;\r\n\tpublic hiddenImg: boolean = true;\r\n\r\n\tconstructor(private dialogRef: MatDialogRef,\r\n\t\t@Inject(MAT_DIALOG_DATA) public data) { }\r\n\r\n\tngOnInit() {\r\n\t\tthis.fechaImagen = this.data.fechaHora;\r\n\t\tthis.id = this.data.id\r\n\t\tthis.image.nativeElement.src = this.data.imagen\r\n\t}\r\n\r\n\tpublic minimizarPopup() {\r\n\t\tthis.dialogRef.addPanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic maximizarPopup() {\r\n\t\tthis.dialogRef.removePanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic cerrarPopup() {\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n\r\n}\r\n","
\r\n\t
\r\n\t\t
\r\n\t\t\t

 Clientes

\r\n\t\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t
\r\n\t
\r\n\t\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { GaleriaService } from '../../../services/galeria.service';\r\nimport { Router } from '@angular/router';\r\nimport { ClienteConsola } from './../../../../../_entities/consola/cliente-consola';\r\n\r\n@Component({\r\n\tselector: 'kt-clientes',\r\n\ttemplateUrl: './clientes.component.html',\r\n\tstyleUrls: ['./clientes.component.scss']\r\n})\r\nexport class ClientesComponent implements OnInit {\r\n\tpublic clientes: ClienteConsola[];\r\n\tpublic datosReporte = []\r\n\tpublic showFilterRow: boolean;\r\n\tpublic showHeaderFilter: boolean;\r\n\tpublic showNavigationButtons: boolean;\r\n\tpublic showPageSizeSelector: boolean;\r\n\tpublic mensajeAgrupar: string = \"Arrastre un encabezado de columna aquí para agrupar por esa columna\"\r\n\r\n\tconstructor(private galeriaService: GaleriaService,\r\n\t\tprivate toastService: ToastrService,\r\n\t\tprivate router: Router) {\r\n\t\t\tthis.showFilterRow = true;\r\n\t\t\tthis.showHeaderFilter = true;\r\n\t\t\tthis.showNavigationButtons = true;\r\n\t\t\tthis.showPageSizeSelector = true;\r\n\t\t}\r\n\r\n\tngOnInit() {\r\n\t\tthis.obtenerClientes();\r\n\t}\r\n\r\n\tobtenerClientes() {\r\n\t\tthis.galeriaService.obtenerClientes().subscribe(\r\n\t\t\t(clientes: ClienteConsola[]) => {\r\n\t\t\t\tthis.clientes = clientes;\r\n\t\t\t\tthis.clientes.forEach(cliente => {\r\n\t\t\t\t\tthis.datosReporte.push({\r\n\t\t\t\t\t\t'ID': cliente.id,\r\n\t\t\t\t\t\t'Nombre': cliente.nombre\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t\t}, (err) => {\r\n\t\t\t\tthis.toastService.error('ocurrio un error al obtener los clientes');\r\n\t\t\t}\r\n\t\t);\r\n\t}\r\n\r\n\tverGaleria(idCliente) {\r\n\t\tthis.router.navigateByUrl('/home/administracion/consola/clientes/galeria-vehiculos/' + idCliente)\r\n\t}\r\n\r\n\tregresar(){\r\n\t\tthis.router.navigateByUrl('/home/administracion/consola/alertados') ///home/administracion/consola/clientes\r\n\t}\r\n\r\n\r\n}\r\n","
\r\n\t
\r\n\t\t
\r\n\t\t\t

 Galeria

\r\n\t\t
\r\n\t\t
\r\n\t\t\t \r\n\t\t\t \r\n\t\t\t\r\n\t\t
\r\n\t
\r\n\t\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\tSin imagenes disponibles\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t \r\n\t\t\t\t\t\tFecha: \r\n\t\t\t\t\t\t{{imagen.fecha}}
\r\n\t\t\t\t\t\t \r\n\t\t\t\t\t\tEconomico: \r\n\t\t\t\t\t\t{{imagen.economico}}\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\r\n\t
\r\n
\r\n\r\n\r\n\r\n\r\n\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { GaleriaService } from '../../../services/galeria.service';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { DomSanitizer } from '@angular/platform-browser';\r\nimport { VehiculoCliente } from './../../../../../_entities/consola/vehiculo-cliente';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { DatePipe } from '@angular/common';\r\nimport { finalize } from 'rxjs/operators';\r\nimport { jsPDF } from 'jspdf';\r\nimport html2canvas from 'html2canvas';\r\n\r\n@Component({\r\n\tselector: 'kt-galeria-vehiculos',\r\n\ttemplateUrl: './galeria-vehiculos.component.html',\r\n\tstyleUrls: ['./galeria-vehiculos.component.scss']\r\n})\r\nexport class GaleriaVehiculosComponent implements OnInit {\r\n\tpublic vehiculos: VehiculoCliente[]\r\n\tpublic listaImagenes = [];\r\n\tpublic idCliente: number;\r\n\tpublic loading: boolean = false;\r\n\tpublic loadingVisible: boolean = false;\r\n\r\n\tconstructor(private galeriaService: GaleriaService,\r\n\t\tprivate toastService: ToastrService,\r\n\t\tprivate datepipe: DatePipe,\r\n\t\tprivate router: Router,\r\n\t\tprivate activatedRoute: ActivatedRoute,\r\n\t\tprivate sanitizer: DomSanitizer\r\n\t) { }\r\n\r\n\tngOnInit() {\r\n\t\tthis.activatedRoute.params.subscribe(\r\n\t\t\t(params) => {\r\n\t\t\t\tthis.idCliente = params['idCliente'];\r\n\t\t\t\tthis.obtenerVehiculos();\r\n\r\n\t\t\t}\r\n\t\t)\r\n\t}\r\n\r\n\tobtenerVehiculos() {\r\n\t\tthis.loading = true;\r\n\t\tthis.listaImagenes = [];\r\n\t\tthis.galeriaService.obtenerVehiculos(this.idCliente).subscribe(\r\n\t\t\t(vehiculos: VehiculoCliente[]) => {\r\n\t\t\t\tif (vehiculos.length) {\r\n\t\t\t\t\tthis.vehiculos = vehiculos;\r\n\t\t\t\t\tthis.obtenerListaImagenes();\r\n\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis.toastService.warning('No existen vehiculos')\r\n\t\t\t\t\tthis.loading = false;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t)\r\n\t}\r\n\r\n\t obtenerListaImagenes(){\r\n\t\tconst promise = new Promise((resolve, reject) => {\r\n\t\t\tthis.vehiculos.forEach((vehiculo, index, array) => {\r\n\t\t\t\tthis.galeriaService.obtenerListaImagenes(vehiculo.imei).subscribe(result => {\r\n\t\t\t\t\tif (result.length) {\r\n\t\t\t\t\t\tthis.obtenerImagen(result[0].imei, result[0].foto, result[0].fecha, result[0].economico);\r\n\t\t\t\t\t}\r\n\t\t\t\t\tif (index === array.length -1) {\r\n\t\t\t\t\t\tresolve(null);\r\n\t\t\t\t\t}\r\n\t\t\t\t}, (error) => {\r\n\t\t\t\t\t//console.log(('Error al obtener lista de imagenes'));\r\n\r\n\t\t\t\t})\r\n\t\t\t})\r\n\t\t})\r\n\r\n\t\tpromise.then(() => {\r\n\t\t\tthis.loading = false\r\n\t\t})\r\n\t}\r\n\r\n\t/**Obtener imagen especifica */\r\n\tobtenerImagen(imei, foto, fecha, economico) {\r\n\t\tthis.galeriaService.obtenerImagenEspecifica(imei, foto).subscribe(result => {\r\n\t\t\tlet url = this.sanitizer.bypassSecurityTrustUrl(URL.createObjectURL(result))\r\n\t\t\tlet properties = {\r\n\t\t\t\turl: url,\r\n\t\t\t\tfecha: this.datepipe.transform(fecha, 'dd-MM-yyyy h:MM a'),\r\n\t\t\t\teconomico: economico\r\n\t\t\t}\r\n\t\t\tthis.listaImagenes.push(properties);\r\n\t\t}, (error) => {\r\n\t\t\t//console.log('Imagen no disponibles');\r\n\t\t})\r\n\t}\r\n\r\n\timprimirGaleria(){\r\n\t\tthis.loadingVisible = true;\r\n\t\tconst galeriaElement = document.getElementById('cards');\r\n\r\n\t\thtml2canvas(galeriaElement, {useCORS: true}).then(\r\n\t\t\t(canvas) => {\r\n\t\t\t\tlet pdf = new jsPDF('p', 'pt', 'a4');\r\n\t\t\t\tconst mapa = canvas.toDataURL('image/PNG');\r\n\t\t\t\tconst mapaX = 15;\r\n\t\t\t\tconst mapaY = 100;\r\n\t\t\t\tconst mapaProps = (pdf as any).getImageProperties(mapa);\r\n\t\t\t\tconst mapaWidth = pdf.internal.pageSize.getWidth() - 2 * mapaX;\r\n\t\t\t\tconst mapaHeight = (mapaProps.height * mapaWidth) / mapaProps.width;\r\n\r\n\t\t\t\tpdf.addImage(mapa, 'PNG', mapaX, mapaY, mapaWidth, mapaHeight, 'FAST');\r\n\r\n\t\t\t\tpdf.setFontSize(12);\r\n\t\t\t\tpdf.setFont('sans-serif', 'bold')\r\n\t\t\t\tpdf.text('GTM Tecnología S.A. de C.V.', 220, 795);\r\n\t\t\t\tpdf.text('Carr. Temixco - Emiliano Zapata ext. 17 int. 3B Col. Palo Escrito, Emiliano Zapata, Mor, Mex. C.P. 62760', 22, 810);\r\n\t\t\t\tpdf.text('Tel. +52 7773200301, Whatsapp: +52 7771351886, soporte.star@growtec.com.mx', 65, 825);\r\n\r\n\t\t\t\treturn pdf;\r\n\r\n\t\t\t}\r\n\t\t).then(\r\n\t\t\t(pdf) => {\r\n\t\t\t\tpdf.save('galeria.pdf');\r\n\t\t\t\tthis.loadingVisible = false;\r\n\t\t\t}\r\n\t\t)\r\n\t}\r\n\r\n\tregresar() {\r\n\t\tthis.router.navigateByUrl('/home/administracion/consola/clientes');\r\n\t}\r\n\r\n\r\n}\r\n\r\n","
\r\n\t\r\n\t\r\n\t\r\n\t
\r\n\t\t\r\n\t\t

Alertado

\r\n\t
\r\n\t\r\n
\r\n
\r\n\t\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t

{{vehiculosData.nombreCliente}}

\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\tA quien corresponda\r\n\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t{{fecha}}\r\n\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\tPresente,\r\n\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{{mensaje}}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\tDatos del Vehículo\r\n\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\tVehículo:\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t{{vehiculosData.marca}}\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t{{vehiculosData.modelo}}\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\tEconómico:\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t{{vehiculosData.economico}}\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\tPlacas:\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t{{vehiculosData.placas}}\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\tFecha y hora:\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t{{vehiculosData.fechaHora}}\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\tLugar:\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\tSituación:\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\tContacto:\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\tInicio de llamada:\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\tFin de llamada:\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\tSin más por el momento, estoy a sus órdenes\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\tA T E N T A M E N T E
\r\n\t\t\t\t\t\t\t\t{{usuario}}
\r\n\t\t\t\t\t\t\t\tGTM Tecnología S.A. de C.V.\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t \r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\tGTM Tecnología S.A. de C.V.\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\tCarr. Temixco - Emiliano Zapata # ext. 17 # int. 3B Col. Palo Escrito, Emiliano Zapata, Morelos, Mex. C.P. 62760\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\tTel. +52 7773200301, Whatsapp: +52 7771351886, monitoreo@gtmtec.mx\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n\r\n\r\n","import { Component, Inject, OnInit, LOCALE_ID, ViewChild, OnDestroy } from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material';\r\nimport { jsPDF } from 'jspdf';\r\nimport { DatePipe, registerLocaleData } from '@angular/common';\r\nimport localEs from '@angular/common/locales/es';\r\nimport { AuthService } from './../../../../views/auth/auth.service';\r\nimport { MapaConsolaService } from '../../services/mapa-consola.service';\r\nimport { DxValidationGroupComponent } from 'devextreme-angular/ui/validation-group';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport html2canvas from 'html2canvas';\r\n\r\nregisterLocaleData(localEs, 'es')\r\n\r\n@Component({\r\n\tselector: 'kt-imprimir-pdf',\r\n\ttemplateUrl: './imprimir-pdf.component.html',\r\n\tstyleUrls: ['./imprimir-pdf.component.scss'],\r\n\tproviders: [{\r\n\t\tprovide: LOCALE_ID, useValue: 'es-MX'\r\n\t}]\r\n})\r\nexport class ImprimirPdfComponent implements OnInit {\r\n\t@ViewChild('targetGroup', { static: false }) validationGroup: DxValidationGroupComponent\r\n\r\n\tpublic fecha: string;\r\n\tpublic vehiculosData: any;\r\n\tpublic maxLength = null;\r\n\tpublic lugar: string;\r\n\tpublic situacion: string;\r\n\tpublic contacto: string;\r\n\tpublic usuario: string;\r\n\tpublic inicioLlamada: Date;\r\n\tpublic finLlamada: Date;\r\n\tpublic mensaje: string = 'El motivo del presente reporte es informar que uno de sus vehículos se alarmó, por tal motivo le enviamos todos los datos:'\r\n\tpublic imagenMapa;\r\n\tpublic loadingVisible: boolean = false;\r\n\r\n\r\n\tconstructor(private userService: AuthService,\r\n\t\tprivate mapaConsolaService: MapaConsolaService,\r\n\t\tprivate toastService: ToastrService,\r\n\t\tprivate dialogRef: MatDialogRef,\r\n\t\tprivate datepipe: DatePipe,\r\n\t\t@Inject(MAT_DIALOG_DATA) public data: any) { }\r\n\r\n\tngOnInit() {\r\n\t\tthis.obtenerLugar();\r\n\t\tthis.fecha = this.datepipe.transform(new Date(), 'EEEE, d MMMM y', '', 'es-MX');\r\n\t\tthis.mapaConsolaService.inicializarMapa()\r\n\t\tthis.mapaConsolaService.pintarMarcadores(this.data);\r\n\t\tthis.vehiculosData = this.data;\r\n\t\tthis.usuario = this.userService.getUser().nombreCompleto;\r\n\t\tvar botonesRecorrido = document.getElementById('botonesRecorrido');\r\n\t\tbotonesRecorrido.style.display = 'block';\r\n\t}\r\n\r\n\timprimirPdf() {\r\n\t\tif (this.validationGroup.instance.validate().isValid) {\r\n\t\t\tthis.loadingVisible = true;\r\n\t\t\tvar mapElement = document.getElementById('map-marker');\r\n\t\t\thtml2canvas(mapElement, { useCORS: true }\r\n\t\t\t).then((canvas) => {\r\n\r\n\t\t\t\tvar pdf = new jsPDF('p', 'pt', 'a4');\r\n\t\t\t\tconst mapa = canvas.toDataURL('image/PNG');\r\n\t\t\t\tconst mapaX = 15;\r\n\t\t\t\tconst mapaY = 130;\r\n\t\t\t\tconst mapaProps = (pdf as any).getImageProperties(mapa);\r\n\t\t\t\tconst mapaWidth = pdf.internal.pageSize.getWidth() - 2 * mapaX;\r\n\t\t\t\tconst mapaHeight = (mapaProps.height * mapaWidth) / mapaProps.width;\r\n\r\n\t\t\t\tlet dir = '';\r\n\t\t\t\tlet dir2= '';\r\n\r\n\t\t\t\tconst fragmentDirection = this.lugar.split(',');\r\n\t\t\t\tlet cont = 0;\r\n\t\t\t\twhile (cont <= 1) {\r\n\t\t\t\t\tdir = dir + fragmentDirection[cont] + ', '\r\n\t\t\t\t\tcont++;\r\n\t\t\t\t}\r\n\r\n\t\t\t\twhile (cont < fragmentDirection.length) {\r\n\t\t\t\t\tdir2 = dir2 + fragmentDirection[cont] + ', '\r\n\t\t\t\t\tcont++;\r\n\t\t\t\t}\r\n\r\n\r\n\t\t\t\tconst logoGTM = './assets/media/logos/logo-gtm.png'\r\n\t\t\t\tconst logoGTMX = 20;\r\n\t\t\t\tconst logoGTMY = 15;\r\n\t\t\t\tconst logoGTMWidth = 180;\r\n\t\t\t\tconst logoGTMHeight = 80;\r\n\r\n\t\t\t\tpdf.addImage(logoGTM, 'PNG', logoGTMX, logoGTMY, logoGTMWidth, logoGTMHeight, 'MEDIUM');\r\n\r\n\r\n\t\t\t\tconst logoGTMWater = './assets/media/logos/marca-de-agua.png'\r\n\t\t\t\tconst logoGTMWaterX = 15;\r\n\t\t\t\tconst logoGTMWaterY = 130;\r\n\t\t\t\tconst logoGTMWaterProp = (pdf as any).getImageProperties(logoGTMWater);\r\n\t\t\t\tconst logoGTMWaterWidth = pdf.internal.pageSize.getWidth() - 2 * logoGTMWaterX;\r\n\t\t\t\tconst logoGTMWaterHeight = (logoGTMWaterProp.height * logoGTMWaterWidth) / logoGTMWaterProp.width;\r\n\t\t\t\tpdf.addImage(logoGTMWater, 'PNG', logoGTMWaterX, logoGTMWaterY, logoGTMWaterWidth, logoGTMWaterHeight, 'SLOW');\r\n\r\n\t\t\t\tpdf.setFontSize(14);\r\n\t\t\t\tpdf.setFont('sans-serif', 'bold')\r\n\t\t\t\tpdf.text(this.fecha, 410, 110);\r\n\r\n\t\t\t\tpdf.setFontSize(18);\r\n\t\t\t\tpdf.text(this.vehiculosData.nombreCliente, 40, 150);\r\n\t\t\t\tpdf.setFontSize(12);\r\n\r\n\t\t\t\tpdf.setFont('sans-serif', 'normal')\r\n\t\t\t\tpdf.text('A quien corresponda', 40, 165);\r\n\t\t\t\tpdf.text('Presente,', 40, 205);\r\n\t\t\t\tpdf.text('El motivo del presente reporte es informar que uno de sus vehículos se alarmó, por tal motivo le', 40, 220);\r\n\t\t\t\tpdf.text('enviamos todos los datos:', 40, 235);\r\n\r\n\t\t\t\tpdf.setFont('sans-serif', 'bold')\r\n\t\t\t\tpdf.text('Datos del Vehículo:', 40, 280);\r\n\r\n\t\t\t\tpdf.setFont('sans-serif', 'normal')\r\n\t\t\t\tpdf.text('Vehículo:', 40, 295);\r\n\t\t\t\tpdf.text(this.vehiculosData.marca + ', ' + this.vehiculosData.modelo, 250, 295);\r\n\r\n\t\t\t\tpdf.text('Económico:', 40, 310);\r\n\t\t\t\tpdf.text(this.vehiculosData.economico, 250, 310);\r\n\r\n\t\t\t\tpdf.text('Placas:', 40, 325);\r\n\t\t\t\tpdf.text(this.vehiculosData.placas, 250, 325);\r\n\r\n\t\t\t\tpdf.text('Fecha y Hora:', 40, 340);\r\n\t\t\t\tpdf.text(this.vehiculosData.fechaHora, 250, 340);\r\n\r\n\t\t\t\tpdf.text('Situación:', 40, 355);\r\n\t\t\t\tpdf.text(this.situacion, 250, 355);\r\n\r\n\t\t\t\tpdf.text('Contacto:', 40, 370);\r\n\t\t\t\tpdf.text(this.contacto, 250, 370);\r\n\r\n\t\t\t\tpdf.text('Inicio de Llamada:', 40, 385);\r\n\t\t\t\tpdf.text(this.datepipe.transform(this.inicioLlamada, 'hh:mm a'), 250, 385);\r\n\r\n\t\t\t\tpdf.text('Fin de Llamada:', 40, 400);\r\n\t\t\t\tpdf.text(this.datepipe.transform(this.finLlamada, 'hh:mm a'), 250, 400);\r\n\r\n\t\t\t\tpdf.text('Lugar:', 40, 415);\r\n\t\t\t\tpdf.text(dir, 250, 415);\r\n\t\t\t\tpdf.text(dir2, 35, 430);\r\n\r\n\t\t\t\tpdf.text('Sin más por el momento, estoy a sus órdenes', 40, 580);\r\n\t\t\t\tpdf.text('A T E N T A M E N T E', 40, 610);\r\n\t\t\t\tpdf.setFont('sans-serif', 'bold')\r\n\t\t\t\tpdf.text(this.usuario, 40, 625);\r\n\t\t\t\tpdf.text('Monitoreo', 40, 640);\r\n\t\t\t\tpdf.text('GTM Tecnolgía S.A. de C.V.', 40, 655);\r\n\r\n\t\t\t\tpdf.text('GTM Tecnología S.A. de C.V.', 220, 795);\r\n\t\t\t\tpdf.text('Carr. Temixco - Emiliano Zapata ext. 17 int. 3B Col. Palo Escrito, Emiliano Zapata, Mor, Mex. C.P. 62760', 22, 810);\r\n\t\t\t\tpdf.text('Tel. +52 7773200301, Whatsapp: +52 7771351886, monitoreo@gtmtec.mx', 65, 825);\r\n\r\n\t\t\t\tpdf.addPage();\r\n\t\t\t\tpdf.addImage(logoGTM, 'PNG', logoGTMX, logoGTMY, logoGTMWidth, logoGTMHeight, 'MEDIUM');\r\n\r\n\t\t\t\tpdf.addImage(mapa, 'PNG', mapaX, mapaY, mapaWidth, mapaHeight, 'FAST');\r\n\r\n\t\t\t\tpdf.text('GTM Tecnología S.A. de C.V.', 220, 795);\r\n\t\t\t\tpdf.text('Carr. Temixco - Emiliano Zapata ext. 17 int. 3B Col. Palo Escrito, Emiliano Zapata, Mor, Mex. C.P. 62760', 22, 810);\r\n\t\t\t\tpdf.text('Tel. +52 7773200301, Whatsapp: +52 7771351886, monitoreo@gtmtec.mx', 65, 825);\r\n\r\n\t\t\t\treturn pdf;\r\n\t\t\t}).then(\r\n\t\t\t\t(pdf) => {\r\n\t\t\t\t\tconst fechaHora = this.vehiculosData.fechaHora.split(' ');\r\n\t\t\t\t\tlet fecha = fechaHora[0].replaceAll('/', '');\r\n\t\t\t\t\tconst hora = fechaHora[1].replaceAll(':', '');\r\n\t\t\t\t\tlet nombreArchivo = this.vehiculosData.nombreCliente + ' ' + this.vehiculosData.economico + ' ' + fecha + ' ' + hora;\r\n\t\t\t\t\tpdf.save(nombreArchivo + '.pdf');\r\n\t\t\t\t\tthis.loadingVisible = false;\r\n\t\t\t\t});\r\n\r\n\t\t} else {\r\n\t\t\tthis.toastService.error('Existe uno o mas campos vacios')\r\n\t\t}\r\n\t}\r\n\r\n\tobtenerLugar() {\r\n\t\tthis.mapaConsolaService.getDireccion([this.data.lng, this.data.lat]).then(\r\n\t\t\t(data: any) => {\r\n\t\t\t\tthis.lugar = data.display_name || \"Dirección Desconocida\";\r\n\t\t\t},\r\n\t\t\t() => {\r\n\t\t\t\tthis.lugar = \"Dirección Desconocida\";\r\n\t\t\t}\r\n\t\t);\r\n\t}\r\n\r\n\r\n\troadmap() {\r\n\t\tthis.mapaConsolaService.roadmap();\r\n\t}\r\n\r\n\thybrid() {\r\n\t\tthis.mapaConsolaService.hybrid();\r\n\t}\r\n\r\n\tcerrarPopup() {\r\n\t\tthis.dialogRef.close()\r\n\t}\r\n\r\n\tmaximizarPopup() {\r\n\t\tthis.dialogRef.removePanelClass('displayNone');\r\n\t}\r\n\r\n\tminimizarPopup() {\r\n\t\tthis.dialogRef.addPanelClass('displayNone');\r\n\t}\r\n\r\n}\r\n","
\r\n\t
\r\n\t\t
\r\n\t\t\t

 {{titulo}}

\r\n\t\t
\r\n\t
\r\n\t\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t{{x.nombre}}\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t

Led Verde Encendido

\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t

Led Verde Apagado

\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t

Led Verde Encendido

\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t

Led Verde Apagado

\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t= 1 && x.errorGeneral <=4\">\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\"\"\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t

 Fallo

\r\n\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t= 13 && x.errorGeneral <=16\">\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\"\"\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t

 Fallo

\r\n\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t= 9 && x.errorGeneral <=12\">\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\"\"\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t

 Fallo

\r\n\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t{{x.nombre}}\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t

Led Verde Encendido

\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t

Led Verde Apagado

\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t

Led Verde Encendido

\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t

Led Verde Apagado

\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t

Motor Encendido

\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t

Motor Apagado

\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\"\"\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t

 Fallo en Motor

\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t= 6 && x.errorGeneral <= 8\">\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\"\"\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t

 Fallo

\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\tTipos de Fallo en : {{x.nombre}}\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\"\"\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t

 Fallo

\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\"\"\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t

 Fallo

\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\"\"\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t

 Fallo

\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\"\"\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t

 Fallo

\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\"\"\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t

 Fallo

\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\"\"\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t

 Fallo

\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\"\"\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t

 Fallo

\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\"\"\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t

 Fallo

\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\"\"\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t

 Fallo

\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\"\"\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t

 Fallo

\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\"\"\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t

 Fallo

\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\"\"\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t

 Fallo

\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\"\"\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t

 Fallo

\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\"\"\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t

 Fallo

\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\"\"\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t

 Fallo

\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { MaquetaServiceService } from '../../services/maqueta-service.service';\r\nimport { Maqueta } from '../../../../_entities/Maqueta/Maqueta';\r\nimport { ToastrService } from 'ngx-toastr';\r\n\r\n@Component({\r\n\tselector: 'kt-maqueta',\r\n\ttemplateUrl: './maqueta.component.html',\r\n\tstyleUrls: ['./maqueta.component.scss']\r\n})\r\nexport class MaquetaComponent implements OnInit {\r\n\tpublic titulo: String = 'Control de Manufactura';\r\n\tpublic listaMaqueta: Maqueta[];\r\n\tpublic interval = null;\r\n\r\n\tconstructor(private maquetaService: MaquetaServiceService, private toast: ToastrService) { }\r\n\r\n\tngOnInit() {\r\n\t\tthis.obtenerDatosMaqueta();\r\n\r\n\t\tthis.interval = setInterval(() => {\r\n\t\t\tthis.obtenerDatosMaqueta()\r\n\t\t}, 2000)\r\n\r\n\t}\r\n\r\n\tngOnDestroy() {\r\n\t\t\tclearInterval(this.interval);\r\n\t}\r\n\r\n\tobtenerDatosMaqueta() {\r\n\t\tthis.maquetaService.obtenerMaqueta().subscribe(result => {\r\n\t\t\tthis.listaMaqueta = result;\r\n\t\t}, err => {\r\n\t\t\tthis.toast.error('Error al obtener los datos')\r\n\t\t})\r\n\t}\r\n\r\n}\r\n","
\r\n\t
\r\n\t\t
\r\n\t\t\t

 {{titulo}}

\r\n\t\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\r\n\t\t
\r\n\t
\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t \r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t \r\n\t\t\t\t\t\r\n\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t\t\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n\r\n\r\n\r\n","import { ToastrService } from 'ngx-toastr';\r\nimport { finalize } from 'rxjs/operators';\r\nimport { Router } from '@angular/router';\r\nimport { SinTransmitir } from './../../../../_entities/consola/sin-transmitir';\r\nimport { SinTransmitirService } from './../../services/sin-transmitir.service';\r\nimport { FormGroup, FormBuilder } from '@angular/forms';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { DatePipe } from '@angular/common';\r\nimport { ALERTAS } from './../../../../_entities/estados';\r\nimport { environment } from './../../../../../environments/environment';\r\n\r\n\r\n@Component({\r\n\tselector: 'kt-sin-transmitir',\r\n\ttemplateUrl: './sin-transmitir.component.html',\r\n\tstyleUrls: ['./sin-transmitir.component.scss']\r\n})\r\nexport class SinTransmitirComponent implements OnInit {\r\n\tpublic titulo: string = 'Vehículos Sin Transmitir';\r\n\tpublic listaSinTransmitir: SinTransmitir[];\r\n\tpublic datosReporte = [];\r\n\tpublic busquedaForm: FormGroup;\r\n\tpublic loadingVisible: boolean\r\n\tpublic showFilterRow: boolean;\r\n\tpublic mensajeAgrupar: string = \"Arrastre un encabezado de columna aquí para agrupar por esa columna\"\r\n\t isDisabled: boolean = true;\r\n\r\n\tpublic showHeaderFilter: boolean;\r\n\r\n\tconstructor(private sinTransmitirService: SinTransmitirService,\r\n\t\tprivate fb: FormBuilder,\r\n\t\tprivate router: Router,\r\n\t\tprivate toastService: ToastrService,\r\n\t\tprivate datepipe: DatePipe) {\r\n\t\tthis.showFilterRow = true;\r\n\t\tthis.showHeaderFilter = true;\r\n\t}\r\n\r\n\tngOnInit() {\r\n\t\tthis.listaSinTransmitir = [];\r\n\t\tthis.initForm();\r\n\t}\r\n\r\n\tinitForm() {\r\n\t\tthis.busquedaForm = this.fb.group({\r\n\t\t\tcantidadDias: ['']\r\n\t\t})\r\n\t}\r\n\r\n\tobtenerListaSinTransmitir() {\r\n\t\tthis.loadingVisible = true;\r\n\t\tthis.sinTransmitirService.obtenerSinTransmitir(this.busquedaForm.get('cantidadDias').value).pipe(\r\n\t\t\tfinalize(\r\n\t\t\t\t() => {\r\n\t\t\t\t\tthis.loadingVisible = false;\r\n\t\t\t\t\tthis.busquedaForm.reset();\r\n\t\t\t\t}\r\n\t\t\t)\r\n\t\t).subscribe(\r\n\t\t\t(sinTransmitir: SinTransmitir[]) => {\r\n\t\t\t\tif (sinTransmitir.length === 0) {\r\n\t\t\t\t\tthis.toastService.warning('Sin datos existentes');\r\n\t\t\t\t}\r\n\t\t\t\tsinTransmitir.map(producto => {\r\n\t\t\t\t\tproducto.fechaHora = this.datepipe.transform(producto.fechaHora, 'dd/MM/yyyy HH:mm:ss a')\r\n\r\n\t\t\t\t\tconst estado = ALERTAS.find(alerta => alerta.id == producto.estado);\r\n\t\t\t\t\tproducto.estado = estado.nombre;\r\n\r\n\t\t\t\t\tif(producto.velocidad !== null){\r\n\t\t\t\t\t\tproducto.velocidad = producto.velocidad + ' Km/h'\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t});\r\n\t\t\t\tthis.listaSinTransmitir = sinTransmitir;\r\n\t\t\t\tthis.listaSinTransmitir.forEach(producto => {\r\n\t\t\t\t\tlet link = `${environment.EXTERNAL_MAP}/ubicar?lat=${producto.lat}&lng=${producto.lng}`\r\n\t\t\t\t\tthis.datosReporte.push({\r\n\t\t\t\t\t\t'Ubicacion': {\r\n\t\t\t\t\t\t\tf: '=HYPERLINK(\"' + link + '\",\"Ubicar\")',\r\n\t\t\t\t\t\t\tv: link\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\t'IMEI': producto.imei.toString(),\r\n\t\t\t\t\t\t'Económico': producto.economico,\r\n\t\t\t\t\t\t'Placas': producto.placas,\r\n\t\t\t\t\t\t'Cliente': producto.nombreCliente,\r\n\t\t\t\t\t\t'Estado': producto.estado,\r\n\t\t\t\t\t\t'Fecha y Hora': producto.fechaHora,\r\n\t\t\t\t\t\t'Tiempo sin Transmitir': producto.diasSinTransmitir,\r\n\t\t\t\t\t\t'Latitud': producto.lat,\r\n\t\t\t\t\t\t'Longitud': producto.lng,\r\n\t\t\t\t\t\t'Velocidad': producto.velocidad,\r\n\t\t\t\t\t\t'Marca': producto.marca,\r\n\t\t\t\t\t\t'Modelo': producto.modelo\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t\t\tif(this.datosReporte.length > 0){\r\n\t\t\t\t\tthis.isDisabled = false;\r\n\t\t\t\t}\r\n\t\t\t}, (error) => {\r\n\t\t\t\tthis.toastService.error('Ocurrio un error al obtener datos')\r\n\t\t\t}\r\n\t\t)\r\n\t}\r\n\r\n\tregresar() {\r\n\t\tthis.router.navigateByUrl('/home/administracion/consola/alertados');\r\n\t}\r\n\r\n}\r\n","
\r\n\t\r\n\t\r\n\t\r\n\t\r\n\t
\r\n\t\t\r\n\t\t

Mapa

\r\n\t
\r\n\t\r\n
\r\n\r\n\t\t
\r\n
\r\n","import { Component, Inject, OnInit } from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material';\r\nimport { MapaMarkerService } from './.././../../../monitoreo/services/mapa-marker.service';\r\nimport { MapaConsolaService } from '../../../services/mapa-consola.service';\r\nimport StreetViewService = google.maps.StreetViewService;\r\nimport StreetViewPanorama = google.maps.StreetViewPanorama;\r\nimport StreetViewPanoramaData = google.maps.StreetViewPanoramaData;\r\nimport StreetViewStatus = google.maps.StreetViewStatus;\r\n\r\n@Component({\r\n\tselector: 'kt-mapa-modal',\r\n\ttemplateUrl: './mapa-modal.component.html',\r\n\tstyleUrls: ['./mapa-modal.component.scss']\r\n})\r\nexport class MapaModalComponent implements OnInit {\r\n\tpublic panorama: StreetViewPanorama;\r\n\tpublic sv: StreetViewService;\r\n\tpublic isStreetView: boolean = true;\r\n\tpublic isAvailable: boolean = true;\r\n\r\n\tconstructor(private dialogRef: MatDialogRef, private mapaConsolaService: MapaConsolaService,\r\n\t\tprivate mapaMarkerService: MapaMarkerService,\r\n\t\t@Inject(MAT_DIALOG_DATA) public data) { }\r\n\r\n\tngOnInit() {\r\n\t\t//this.mapaMarkerService.inicializarMapa();\r\n\t\t//this.mapaMarkerService.pintarMarcadores(this.data);\r\n\t\tthis.mapaConsolaService.inicializarMapa();\r\n\t\tthis.mapaConsolaService.pintarMarcadores(this.data);\r\n\r\n\t}\r\n\r\n\r\n\tverStreetView() {\r\n\t\tconst { lat, lng } = this.data;\r\n\t\tconst coordinates = { lat, lng };\r\n\t\tthis.sv = new StreetViewService();\r\n\t\tthis.panorama = new StreetViewPanorama(document.getElementById('pano'));\r\n\r\n\t\tthis.sv.getPanorama({\r\n\t\t\tlocation: coordinates,\r\n\t\t\tradius: 50\r\n\t\t}, (data, status) => {\r\n\t\t\tthis.processSVData(data, status);\r\n\t\t\tthis.panorama.setVisible(true);\r\n\t\t\tthis.isStreetView = false;\r\n\t\t}\r\n\t\t);\r\n\t}\r\n\r\n\tpublic processSVData(data: StreetViewPanoramaData, status: StreetViewStatus): void {\r\n\t\tif (data != null) {\r\n\t\t\tthis.panorama.setPano(data.location.pano);\r\n\t\t\tthis.panorama.setPov({\r\n\t\t\t\theading: 270,\r\n\t\t\t\tpitch: 0\r\n\t\t\t});\r\n\t\t} else {\r\n\t\t\tthis.isAvailable = false;\r\n\t\t}\r\n\t}\r\n\r\n\r\n\tpublic minimizarPopup() {\r\n\t\tthis.dialogRef.addPanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic maximizarPopup() {\r\n\t\tthis.dialogRef.removePanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic cerrarPopup() {\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n\r\n\r\n}\r\n","
\r\n\t
\r\n\t\t
\r\n\t\t\t

 {{titulo}}

\r\n\t\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\r\n\t\t
\r\n\t
\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t \r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t \r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t \r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t\t\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t

{{p.data.estado}}

\r\n\t\t\t\t\t\t\t\t

{{p.data.estado}}

\r\n\t\t\t\t\t\t\t\t

{{p.data.estado}}

\r\n\t\t\t\t\t\t\t\t

{{p.data.estado}}

\r\n\t\t\t\t\t\t\t\t

{{p.data.estado}}

\r\n\t\t\t\t\t\t\t\t

{{p.data.estado}}

\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n\r\n\r\n\r\n","import { ToastrService } from 'ngx-toastr';\r\nimport { Router } from '@angular/router';\r\nimport { finalize } from 'rxjs/operators';\r\nimport { DatePipe } from '@angular/common';\r\nimport { TransmisionesService } from './../../services/transmisiones.service';\r\nimport { Transmision } from './../../../../_entities/consola/transmision';\r\nimport { FormGroup, FormBuilder } from '@angular/forms';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { MatDialog, MatDialogConfig } from '@angular/material';\r\nimport { MapaModalComponent } from './mapa-modal/mapa-modal.component';\r\nimport { ALERTAS } from './../../../../_entities/estados';\r\nimport { environment } from './../../../../../environments/environment';\r\n\r\n@Component({\r\n\tselector: 'kt-transmisiones',\r\n\ttemplateUrl: './transmisiones.component.html',\r\n\tstyleUrls: ['./transmisiones.component.scss']\r\n})\r\nexport class TransmisionesComponent implements OnInit {\r\n\tpublic busquedaForm: FormGroup;\r\n\tpublic listaTransmisiones: Transmision[];\r\n\tpublic datosReporte = [];\r\n\tpublic titulo: String = 'Transmisiones';\r\n\tpublic showFilterRow: boolean;\r\n\tpublic showHeaderFilter: boolean;\r\n\tpublic loadingVisible: boolean = false;\r\n\tpublic verMapa: boolean = true;\r\n\tpublic mensajeAgrupar: string = \"Arrastre un encabezado de columna aquí para agrupar por esa columna\"\r\n\tisDisabled: boolean = true;\r\n\r\n\tconstructor(private transmisionesService: TransmisionesService,\r\n\t\tprivate fb: FormBuilder,\r\n\t\tprivate datepipe: DatePipe,\r\n\t\tprivate router: Router,\r\n\t\tprivate toastService: ToastrService,\r\n\t\tprivate dialog: MatDialog) { }\r\n\r\n\tngOnInit() {\r\n\t\tthis.initForm();\r\n\t}\r\n\r\n\tinitForm() {\r\n\t\tthis.busquedaForm = this.fb.group({\r\n\t\t\timei: [''],\r\n\t\t\tcantidadRegistros: [''],\r\n\t\t})\r\n\t}\r\n\r\n\tobtenerListaTransmisiones() {\r\n\t\tthis.loadingVisible = true;\r\n\t\tthis.verMapa = true;\r\n\t\tconst imei = this.busquedaForm.get('imei').value;\r\n\t\tconst cantidadRegistros = this.busquedaForm.get('cantidadRegistros').value;\r\n\r\n\t\tthis.transmisionesService.obtenerTransmisiones(imei, cantidadRegistros).pipe(\r\n\t\t\tfinalize(\r\n\t\t\t\t() => {\r\n\t\t\t\t\tthis.loadingVisible = false;\r\n\t\t\t\t\tthis.busquedaForm.reset();\r\n\t\t\t\t}\r\n\t\t\t)\r\n\t\t).subscribe(\r\n\t\t\t(transmisiones: Transmision[]) => {\r\n\t\t\t\tif (transmisiones.length === 0) {\r\n\t\t\t\t\tthis.toastService.warning('Sin datos existentes');\r\n\t\t\t\t}\r\n\t\t\t\ttransmisiones.map(transmision => {\r\n\t\t\t\t\ttransmision.fechaHora = this.datepipe.transform(transmision.fechaHora, 'dd/MM/yyyy HH:mm:ss a');\r\n\r\n\t\t\t\t\tconst estado = ALERTAS.find(alerta => alerta.id == transmision.estado);\r\n\t\t\t\t\ttransmision.estado = estado.nombre;\r\n\r\n\t\t\t\t})\r\n\t\t\t\tthis.listaTransmisiones = transmisiones\r\n\t\t\t\tthis.listaTransmisiones.forEach(transmision => {\r\n\t\t\t\t\tlet link = `${environment.EXTERNAL_MAP}/ubicar?lat=${transmision.lat}&lng=${transmision.lng}`\r\n\r\n\t\t\t\t\tthis.datosReporte.push({\r\n\t\t\t\t\t\t'Ubicacion': {\r\n\t\t\t\t\t\t\tf: '=HYPERLINK(\"' + link + '\",\"Ubicar\")',\r\n\t\t\t\t\t\t\tv: link\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\t'IMEI': transmision.imei.toString(),\r\n\t\t\t\t\t\t'Cliente': transmision.nombreCliente,\r\n\t\t\t\t\t\t'Latitud': transmision.lat,\r\n\t\t\t\t\t\t'Longitud': transmision.lng,\r\n\t\t\t\t\t\t'Fecha y Hora': transmision.fechaHora,\r\n\t\t\t\t\t\t'Estado': transmision.estado\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\r\n\t\t\t\tif (this.datosReporte.length > 0) {\r\n\t\t\t\t\tthis.isDisabled = false;\r\n\t\t\t\t}\r\n\r\n\t\t\t}, (error) => {\r\n\t\t\t\tthis.toastService.error('Ocurrio un error al obtener datos')\r\n\t\t\t}\r\n\t\t)\r\n\t}\r\n\r\n\tregresar() {\r\n\t\tthis.router.navigateByUrl('/home/administracion/consola/alertados');\r\n\t}\r\n\r\n\r\n\tubicarMapa(data) {\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.autoFocus = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\t\tdialogConfig.hasBackdrop = false;\r\n\t\tdialogConfig.width = \"58%\";\r\n\t\tdialogConfig.height = \"60%\";\r\n\t\tdialogConfig.panelClass = 'custom-modalbox';\r\n\t\tdialogConfig.data = data;\r\n\t\tthis.dialog.open(MapaModalComponent, dialogConfig);\r\n\t}\r\n\r\n\r\n\r\n}\r\n","import { AlertadosComponent } from './components/alertados/alertados.component';\r\nimport { SinTransmitirComponent } from './components/sin-transmitir/sin-transmitir.component';\r\nimport { TransmisionesComponent } from './components/transmisiones/transmisiones.component';\r\nimport { NgModule } from '@angular/core';\r\nimport { Routes, RouterModule } from '@angular/router';\r\nimport { ClientesComponent } from './components/galeria/clientes/clientes.component';\r\nimport { GaleriaVehiculosComponent } from './components/galeria/galeria-vehiculos/galeria-vehiculos.component';\r\nimport { MaquetaComponent } from './components/maqueta/maqueta.component';\r\nimport { FotografiasComponent } from './components/fotografias/fotografias.component';\r\n\r\nconst routes: Routes = [\r\n\t{\r\n\t\tpath: '',\r\n\t\tchildren: [\r\n\t\t\t{\r\n\t\t\t\tpath: 'alertados',\r\n\t\t\t\tcomponent: AlertadosComponent\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: 'clientes',\r\n\t\t\t\tcomponent: ClientesComponent\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: 'clientes/galeria-vehiculos/:idCliente',\r\n\t\t\t\tcomponent: GaleriaVehiculosComponent\r\n\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: 'fotografias',\r\n\t\t\t\tcomponent: FotografiasComponent\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: 'reportes/transmisiones',\r\n\t\t\t\tcomponent: TransmisionesComponent\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath: 'reportes/sin-transmitir',\r\n\t\t\t\tcomponent: SinTransmitirComponent,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tpath:'maqueta',\r\n\t\t\t\tcomponent:MaquetaComponent\r\n\t\t\t}\r\n\t\t]\r\n\t}\r\n];\r\n\r\n@NgModule({\r\n\timports: [RouterModule.forChild(routes)],\r\n\texports: [RouterModule]\r\n})\r\nexport class ConsolaRoutingModule { }\r\n","import { NgbModalModule } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NgxPermissionsModule } from 'ngx-permissions';\r\nimport { GoogleChartsModule } from 'angular-google-charts';\r\nimport { MatSlideToggleModule } from '@angular/material/slide-toggle';\r\nimport { DxTemplateModule, DxButtonModule, DxDataGridModule, DxCheckBoxModule, DxSelectBoxModule, DxTreeListModule, DxFormModule, DxPopoverModule, DxPopupModule, DxLoadPanelModule, DxTextAreaComponent, DxTextAreaModule, DxTextBoxModule, DxDateBoxModule, DxValidatorModule, DxValidationGroupModule } from 'devextreme-angular';\r\nimport { MatDividerModule, MatInputModule, MatFormFieldModule, MatButtonModule, MatOptionModule, MatSelectModule, MatListModule, MatCheckboxModule, MatCardModule, MatProgressSpinnerModule, MatAutocompleteModule } from '@angular/material';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\nimport { ConsolaRoutingModule } from './consola-routing.module';\r\nimport { ConsolaComponent } from './consola.component';\r\nimport { TransmisionesComponent } from './components/transmisiones/transmisiones.component';\r\nimport { SinTransmitirComponent } from './components/sin-transmitir/sin-transmitir.component';\r\nimport { AlertadosComponent } from './components/alertados/alertados.component';\r\nimport { ImprimirPdfComponent } from './components/imprimir-pdf/imprimir-pdf.component';\r\nimport { DragDropModule } from '@angular/cdk/drag-drop';\r\nimport { ClientesComponent } from './components/galeria/clientes/clientes.component';\r\nimport { GaleriaVehiculosComponent } from './components/galeria/galeria-vehiculos/galeria-vehiculos.component';\r\nimport { MapaModalComponent } from './components/transmisiones/mapa-modal/mapa-modal.component';\r\nimport { SafeUrlPipe } from './components/galeria/safe-url.pipe';\r\nimport { ReutilizablesModule } from '../reutilizables/reutilizables.module';\r\nimport { MaquetaComponent } from './components/maqueta/maqueta.component';\r\nimport { FotografiasComponent } from './components/fotografias/fotografias.component';\r\nimport { VerFotoComponent } from './components/fotografias/ver-foto/ver-foto.component';\r\n\r\n@NgModule({\r\n\tdeclarations: [ConsolaComponent,\r\n\t\tTransmisionesComponent,\r\n\t\tSinTransmitirComponent,\r\n\t\tAlertadosComponent,\r\n\t\tImprimirPdfComponent,\r\n\t\tClientesComponent,\r\n\t\tGaleriaVehiculosComponent,\r\n\t\tMapaModalComponent,\r\n\t\tSafeUrlPipe,\r\n\t\tMaquetaComponent,\r\n\t\tFotografiasComponent,\r\n\t\tVerFotoComponent\r\n\t],\r\n\timports: [\r\n\t\tCommonModule,\r\n\t\tConsolaRoutingModule,\r\n\t\tMatDividerModule,\r\n\t\tDxTemplateModule,\r\n\t\tDxButtonModule,\r\n\t\tDxDataGridModule,\r\n\t\tDxCheckBoxModule,\r\n\t\tDxSelectBoxModule,\r\n\t\tDxTreeListModule,\r\n\t\tDxFormModule,\r\n\t\tDxPopoverModule,\r\n\t\tDxPopupModule,\r\n\t\tDxLoadPanelModule,\r\n\t\tDxTextAreaModule,\r\n\t\tDxTextBoxModule,\r\n\t\tDxDateBoxModule,\r\n\t\tDxValidatorModule,\r\n\t\tDxValidationGroupModule,\r\n\t\tFormsModule,\r\n\t\tMatInputModule,\r\n\t\tMatFormFieldModule,\r\n\t\tReactiveFormsModule,\r\n\t\tMatButtonModule,\r\n\t\tMatOptionModule,\r\n\t\tMatSelectModule,\r\n\t\tMatListModule,\r\n\t\tMatAutocompleteModule,\r\n\t\tMatSlideToggleModule,\r\n\t\tDragDropModule,\r\n\t\tGoogleChartsModule.forRoot(),\r\n\t\tNgxPermissionsModule,\r\n\t\tMatCheckboxModule,\r\n\t\tNgbModalModule,\r\n\t\tMatCardModule,\r\n\t\tMatDividerModule,\r\n\t\tMatProgressSpinnerModule,\r\n\t\tReutilizablesModule\r\n\r\n\t],\r\n\texports: [\r\n\t\tFormsModule,\r\n\t\tDragDropModule,\r\n\t\tReactiveFormsModule\r\n\t],\r\n\tentryComponents: [\r\n\t\tImprimirPdfComponent,\r\n\t\tMapaModalComponent,\r\n\t\tVerFotoComponent\r\n\t]\r\n})\r\nexport class ConsolaModule { }\r\n","import { Observable } from 'rxjs';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Alertado } from './../../../_entities/consola/alertados';\r\nimport { environment } from './../../../../environments/environment';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class AlertadosService {\r\n\r\n constructor(private http: HttpClient) { }\r\n\r\n obtenerAlertados(): Observable{\r\n return this.http.get(environment.API_SECURITY + '/api/Consola/VehiculosAlertados');\r\n }\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { environment } from './../../../../environments/environment';\r\n\r\n@Injectable({\r\n\tprovidedIn: 'root'\r\n})\r\nexport class FotografiasService {\r\n\r\n\tconstructor(private http: HttpClient) { }\r\n\r\n\tgetImeiList(): Observable {\r\n\t\treturn this.http.get(`${environment.API_SECURITY}/api/Imagenes/ListaImei`);\r\n\t}\r\n\r\n\tgetImagesList(imei: string): Observable {\r\n\t\treturn this.http.get(`${environment.API_SECURITY}/api/Imagenes/ObtenerListaImagenes`, {\r\n\t\t\tparams: {\r\n\t\t\t\timei\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\tgetImage(imei, imagen) {\r\n\t\treturn this.http.get(environment.API_SECURITY + '/api/Imagenes/ObtenerFoto?imei=' + imei + '&imagen=' + imagen, { responseType: 'blob' })\r\n\t}\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { environment } from './../../../../environments/environment';\r\nimport { ListaImagenes } from './../../../_entities/galeria/ListaImagenes';\r\nimport { Autos } from './../../../_entities/autos/Autos';\r\nimport { ClienteConsola } from './../../../_entities/consola/cliente-consola';\r\nimport { VehiculoCliente } from './../../../_entities/consola/vehiculo-cliente';\r\n\r\n@Injectable({\r\n\tprovidedIn: 'root'\r\n})\r\nexport class GaleriaService {\r\n\r\n\tconstructor(private http: HttpClient) { }\r\n\r\n\tobtenerClientes(): Observable {\r\n\t\treturn this.http.get(environment.API_SECURITY + '/api/Consola/ClientesConsola');\r\n\t}\r\n\r\n\tobtenerVehiculos(idCliente): Observable {\r\n\t\treturn this.http.get(environment.API_SECURITY + '/api/Consola/VehiculosFoto/' + idCliente);\r\n\t}\r\n\r\n\t/*Obtener Todas las imagenes-*/\r\n\tobtenerListaImagenes(imei): Observable {\r\n\t\treturn this.http.get(environment.API_SECURITY + '/api/Imagenes', {\r\n\t\t\tparams: {\r\n\t\t\t\timei: imei\r\n\t\t\t}\r\n\t\t})\r\n\t}\r\n\r\n\t/**Obtener Imagen Especifica */\r\n\tobtenerImagenEspecifica(imei, foto) {\r\n\t\treturn this.http.get(environment.API_SECURITY + '/api/Imagenes/ObtenerImagen', {\r\n\t\t\tresponseType: 'blob', params: {\r\n\t\t\t\timei: imei,\r\n\t\t\t\timagen: foto\r\n\t\t\t}\r\n\t\t})\r\n\t}\r\n\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport Map from 'ol/Map.js';\r\nimport { defaults as defaultInteractions } from 'olgm/interaction.js';\r\nimport { transform, fromLonLat } from 'ol/proj.js';\r\nimport GoogleLayer from 'olgm/layer/Google.js';\r\nimport TileLayer from 'ol/layer/Tile.js';\r\nimport View from 'ol/View.js';\r\nimport OLGoogleMaps from 'olgm/OLGoogleMaps.js';\r\nimport OSMSource from 'ol/source/OSM.js';\r\nimport Feature from 'ol/Feature.js';\r\nimport Style from 'ol/style/Style.js';\r\nimport VectorLayer from 'ol/layer/Vector.js';\r\nimport VectorSource from 'ol/source/Vector.js';\r\nimport Point from 'ol/geom/Point.js';\r\nimport Icon from 'ol/style/Icon.js';\r\nimport { Transmision } from './../../../_entities/consola/transmision';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { defaults as defaultControls, ScaleLine, FullScreen } from 'ol/control';\r\n\r\n@Injectable({\r\n\tprovidedIn: 'root'\r\n})\r\nexport class MapaConsolaService {\r\n\tpublic map: Map;\r\n\tpublic olGM: OLGoogleMaps;\r\n\tpublic googleLayer = new GoogleLayer();\r\n\tpublic osmLayer: TileLayer;\r\n\tpublic center = [-101.3770056, 23.8636449];\r\n\r\n\tpublic iconoMarcadorFeature: Feature\r\n\tpublic iconoMarcadorStyle: Style;\r\n\tpublic vectorMarcadorSource: VectorSource;\r\n\tpublic vectorMarcadorLayer: VectorLayer;\r\n\r\n\tconstructor(private http: HttpClient) { }\r\n\r\n\tpublic inicializarMapa = () => {\r\n\t\tthis.osmLayer = new TileLayer({\r\n\t\t\tsource: new OSMSource(),\r\n\t\t\tvisible: false\r\n\t\t});\r\n\r\n\t\tthis.vectorMarcadorSource = new VectorSource({});\r\n\t\tthis.vectorMarcadorLayer = new VectorLayer({\r\n\t\t\tsource: this.vectorMarcadorSource,\r\n\t\t\tupdateWhileAnimating: true,\r\n\t\t\tupdateWhileInteracting: true,\r\n\t\t});\r\n\r\n\t\tthis.map = new Map({\r\n\t\t\t// use las interacciones predeterminadas recomendadas de OL3-Google-Maps\r\n\t\t\tinteractions: defaultInteractions(),\r\n\t\t\tlayers: [\r\n\t\t\t\tthis.googleLayer,\r\n\t\t\t\tthis.vectorMarcadorLayer\r\n\t\t\t],\r\n\t\t\toverlays: [\r\n\t\t\t],\r\n\t\t\ttarget: 'map-marker',\r\n\t\t\tview: new View({\r\n\t\t\t\tcenter: fromLonLat(this.center),\r\n\t\t\t\tzoom: 16,\r\n\t\t\t}),\r\n\t\t\tcontrols: defaultControls({ attribution: true, zoom: true }).extend([\r\n\t\t\t\tnew ScaleLine(),\r\n\t\t\t\tnew FullScreen()\r\n\t\t\t])\r\n\t\t});\r\n\t\tthis.olGM = new OLGoogleMaps({\r\n\t\t\tmap: this.map,\r\n\t\t\tmapIconOptions: {\r\n\t\t\t\tuseCanvas: true\r\n\t\t\t},\r\n\t\t\tgmapOptions: {\r\n\t\t\t\tstreetViewControl: true,\r\n\r\n\t\t\t},\r\n\t\t\twatch: {\r\n\t\t\t\t'vector': false\r\n\t\t\t}\r\n\t\t});\r\n\t\tthis.olGM.activate();\r\n\t\tthis.map.updateSize();\r\n\t}\r\n\r\n\tpublic pintarMarcadores = (producto: Transmision) => {\r\n\t\tthis.vectorMarcadorSource.clear();\r\n\t\tconst coordinate = [producto.lng, producto.lat];\r\n\r\n\t\tthis.iconoMarcadorFeature = new Feature({\r\n\t\t\ttype: 'activo',\r\n\t\t\tidActivo: producto.imei,\r\n\t\t\tdata: producto,\r\n\t\t\tdataTooltip: `div${producto.imei}`,\r\n\t\t\tgeometry: new Point(transform(coordinate, 'EPSG:4326', 'EPSG:3857'))\r\n\t\t});\r\n\r\n\t\tthis.iconoMarcadorStyle = new Style({\r\n\t\t\timage: new Icon({\r\n\t\t\t\tanchor: [0.5, 0.5],\r\n\t\t\t\tanchorXUnits: 'fraction',\r\n\t\t\t\tanchorYUnits: 'fraction',\r\n\t\t\t\tsrc: './assets/media/marcadores/MarkerReportesRojo.png'\r\n\t\t\t}),\r\n\t\t\tzIndex: 10\r\n\t\t});\r\n\r\n\t\tthis.iconoMarcadorFeature.setStyle(this.iconoMarcadorStyle);\r\n\t\tthis.vectorMarcadorSource.addFeature(this.iconoMarcadorFeature);\r\n\t\tthis.vectorMarcadorLayer.setVisible(true);\r\n\t\tthis.map.getView().setCenter(fromLonLat([producto.lng, producto.lat]));\r\n\t}\r\n\r\n\r\n\tpublic roadmap() {\r\n\t\tthis.map.getLayers().push(new GoogleLayer({\r\n\t\t\tmapTypeId: 'roadmap'\r\n\t\t}));\r\n\t}\r\n\r\n\tpublic hybrid() {\r\n\t\tthis.map.getLayers().push(new GoogleLayer({\r\n\t\t\tmapTypeId: 'hybrid'\r\n\t\t}));\r\n\t}\r\n\r\n\tpublic getDireccion(coords: any) {\r\n\t\tconst endpoint = `https://nominatim.openstreetmap.org/reverse?format=json&lon=${coords[0]}&lat=${coords[1]}`;\r\n\t\treturn this.http.get(endpoint).toPromise();;\r\n\t}\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Observable } from 'rxjs';\r\nimport { Maqueta } from '../../../_entities/Maqueta/Maqueta';\r\nimport { environment } from '../../../../environments/environment';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class MaquetaServiceService {\r\n\r\n constructor(private http:HttpClient) { }\r\n\r\n obtenerMaqueta():Observable{\r\n return this.http.get(environment.API_SECURITY+'/api/Maqueta');\r\n }\r\n}\r\n","import { Observable } from 'rxjs';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { SinTransmitir } from './../../../_entities/consola/sin-transmitir';\r\nimport { environment } from './../../../../environments/environment';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SinTransmitirService {\r\n\r\n constructor(private http: HttpClient) { }\r\n\r\n obtenerSinTransmitir(dias): Observable{\r\n //api/Consola/EquiposSinTransmision?dias=10\r\n return this.http.get(environment.API_SECURITY + '/api/Consola/EquiposSinTransmision', {\r\n params: {\r\n dias\r\n }\r\n });\r\n }\r\n}\r\n","import { Observable } from 'rxjs';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Transmision } from './../../../_entities/consola/transmision';\r\nimport { environment } from './../../../../environments/environment';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class TransmisionesService {\r\n\r\n constructor(private http: HttpClient) { }\r\n\r\n obtenerTransmisiones(imei, numero): Observable {\r\n return this.http.get(environment.API_SECURITY + '/api/Consola', {\r\n params: {\r\n imei,\r\n numero\r\n }\r\n });\r\n }\r\n}\r\n","
\r\n\t
\r\n\t\t
\r\n\t\t\t

 {{titulo}}

\r\n\t\t
\r\n\t
\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t \r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{{imei}}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\tCampo requerido\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t \r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\tCampo requerido\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t \r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\tCampo requerido\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t \r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\tCampo requerido\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t \r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{{simOption.numeroTelefonico}}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\tCampo requerido\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t \r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\tCampo requerido\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\r\n\t\t\t
\r\n\t\t
\r\n\t\t\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t \r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n","import { FormDataDispositivoVM } from './../../../../../_entities/dispositivos/DispositivoVM';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { ListaMarcas, ListaModelos } from '../../../../../_entities/dispositivos/AgregarDispositivoVM';\r\nimport { SimVM } from '../../../../../_entities/sims/SimVM';\r\nimport { ClienteVM } from '../../../../../_entities/clientes/ClienteVM'\r\nimport { FormGroup, FormBuilder, Validators, FormControl } from '@angular/forms';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { DispositivoService } from '../../../services/dispositivo.service';\r\nimport { DispositivosDisponibles } from './../../../../../_entities/Administracion/DispositivosDisponibles';\r\nimport { Observable } from 'rxjs';\r\nimport { startWith, map } from 'rxjs/operators';\r\n\r\n@Component({\r\n\tselector: 'kt-alta-dispositivo',\r\n\ttemplateUrl: './alta-dispositivo.component.html',\r\n\tstyleUrls: ['./alta-dispositivo.component.scss']\r\n})\r\nexport class AltaDispositivoComponent implements OnInit {\r\n\tpublic marcasDispositivo: ListaMarcas[];\r\n\tpublic modeloDispositivo: ListaModelos;\r\n\tpublic simsDisponibles = [];\r\n\tpublic clientesRegistros: ClienteVM[];\r\n\tpublic titulo: string = 'Agregar Dispositivo'\r\n\tpublic dispositivoForm: FormGroup;\r\n\tpublic imeisDisponibles = [];\r\n\tpublic filteredImeis: Observable;\r\n\tpublic filteredSims: Observable;\r\n\r\n\tpublic simControl = new FormControl();\r\n\r\n\tpublic loading: boolean = false;\r\n\tpublic readonly: boolean = false;\r\n\r\n\r\n\tpublic param: any;\r\n\tpublic imei: any;\r\n\r\n\tconstructor(private dispositivoService: DispositivoService,\r\n\t\tprivate toastService: ToastrService,\r\n\t\tprivate activatedRoute: ActivatedRoute,\r\n\t\tprivate router: Router,\r\n\t\tprivate fb: FormBuilder) { }\r\n\r\n\tngOnInit() {\r\n\t\tthis.initForm();\r\n\t\tthis.obtenerClientes();\r\n\t\tthis.obtenerImeisDisponibles();\r\n\t\tthis.obtenerMarcas();\r\n\t\tthis.obtenerSimsDisponibles();\r\n\r\n\t\tthis.activatedRoute.params.subscribe(\r\n\t\t\tasync (param) => {\r\n\t\t\t\tthis.imei = param['imei'];\r\n\t\t\t\tif (this.imei) {\r\n\t\t\t\t\tthis.titulo = 'Editar Dispositivo'\r\n\t\t\t\t\tawait this.obtenerDispositivo(this.imei);\r\n\t\t\t\t\tthis.readonly = true;\r\n\t\t\t\t} else {\r\n\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t);\r\n\r\n\r\n\t\tthis.filteredImeis = this.dispositivoForm.get('IMEI').valueChanges.pipe(\r\n\t\t\tstartWith(''),\r\n\t\t\tmap(value => this.filterImeis(value))\r\n\t\t);\r\n\r\n\t\tthis.filteredSims = this.simControl.valueChanges.pipe(\r\n\t\t\tstartWith(''),\r\n\t\t\tmap(value => this.filterSims(value))\r\n\t\t);\r\n\t}\r\n\r\n\tinitForm() {\r\n\t\tthis.dispositivoForm = this.fb.group({\r\n\t\t\tIMEI: ['', Validators.required],\r\n\t\t\tNumeroSerie: ['', Validators.required],\r\n\t\t\tIdMarca: ['', Validators.required],\r\n\t\t\tIdModelo: ['', Validators.required],\r\n\t\t\tIdSim: ['', Validators.required],\r\n\t\t\tIdCliente: ['', Validators.required]\r\n\t\t});\r\n\t}\r\n\r\n\tprivate filterImeis(value: string): string[] {\r\n\t\tconst filterValue = value.toLowerCase();\r\n\t\treturn this.imeisDisponibles.filter(option => option.toLowerCase().indexOf(filterValue) === 0);\r\n\t}\r\n\r\n\tprivate filterSims(value: string): string[] {\r\n\t\tconst filterValue = value.toLowerCase();\r\n\t\treturn this.simsDisponibles.filter(option => option.numeroTelefonico.toLowerCase().indexOf(filterValue) === 0);\r\n\t}\r\n\r\n\r\n\tobtenerDispositivo(imei) {\r\n\t\tthis.dispositivoService.obtenerDispositivo(imei).subscribe(\r\n\t\t\tasync (res: FormDataDispositivoVM) => {\r\n\t\t\t\tawait this.obtenerModelo(res.idMarca);\r\n\t\t\t\tawait this.obtenerSimByImei(res.idSim);\r\n\r\n\t\t\t\tthis.dispositivoForm.setValue({\r\n\t\t\t\t\tIMEI: res.imei,\r\n\t\t\t\t\tNumeroSerie: res.numeroSerie,\r\n\t\t\t\t\tIdMarca: res.idMarca,\r\n\t\t\t\t\tIdModelo: res.idModelo,\r\n\t\t\t\t\tIdSim: res.idSim,\r\n\t\t\t\t\tIdCliente: res.idCliente\r\n\t\t\t\t});\r\n\t\t\t}, (err) => { });\r\n\t}\r\n\r\n\tobtenerSimsDisponibles() {\r\n\t\tthis.dispositivoService.obtenerSimsDisponibles().subscribe((res: SimVM[]) => {\r\n\t\t\tthis.simsDisponibles = res;\r\n\t\t}, (err) => {\r\n\t\t\tthis.toastService.error('Ocurrio un error al consultar los sims');\r\n\t\t});\r\n\t}\r\n\r\n\tobtenerImeisDisponibles() {\r\n\t\tthis.dispositivoService.getImeisDisponibles().subscribe(\r\n\t\t\t(imeis: DispositivosDisponibles[]) => {\r\n\t\t\t\timeis.forEach(imei => {\r\n\t\t\t\t\tthis.imeisDisponibles.push(imei.id);\r\n\t\t\t\t})\r\n\r\n\t\t\t}, (err) => {\r\n\t\t\t\tthis.toastService.error('Ocurrio un error al consultar los imeis');\r\n\t\t\t});\r\n\t}\r\n\r\n\tasignarSim(valor) {\r\n\t\tconst sim = this.simsDisponibles.find(s => s.numeroTelefonico === valor);\r\n\t\tthis.dispositivoForm.get('IdSim').setValue(sim.id);\r\n\r\n\t}\r\n\r\n\tobtenerSimByImei(idSim) {\r\n\t\tthis.dispositivoService.obtenerSimById(idSim).subscribe((res: SimVM) => {\r\n\t\t\tthis.simControl.setValue(res.numeroTelefonico);\r\n\r\n\t\t\tthis.simsDisponibles.push(res);\r\n\t\t}, (err) => {\r\n\t\t\tthis.toastService.error('Error al obtener sim');\r\n\t\t});\r\n\t}\r\n\r\n\tobtenerClientes(): void {\r\n\t\tthis.dispositivoService.obtenerClientes(true).subscribe(\r\n\t\t\t(res) => {\r\n\t\t\t\tthis.clientesRegistros = res;\r\n\t\t\t}, (err) => {\r\n\t\t\t\tconsole.log('Error al Obtener los clientes');\r\n\t\t\t}\r\n\t\t);\r\n\t}\r\n\r\n\tobtenerMarcas() {\r\n\t\tthis.dispositivoService.obtenerMarcas().subscribe(\r\n\t\t\t(res: ListaMarcas[]) => {\r\n\t\t\t\tthis.marcasDispositivo = res;\r\n\t\t\t}, (err) => { });\r\n\t}\r\n\r\n\tobtenerModelo(idMarca) {\r\n\t\tthis.dispositivoService.obtenerModeloByMarca(idMarca).subscribe(\r\n\t\t\t(res: ListaModelos) => {\r\n\t\t\t\tthis.modeloDispositivo = res;\r\n\t\t\t}, (err) => { });\r\n\t}\r\n\r\n\r\n\tonSubmit() {\r\n\t\tif (this.imei) {\r\n\t\t\tthis.dispositivoService.actualizarDispositivo(this.imei, this.dispositivoForm.value).subscribe(\r\n\t\t\t\t(res) => {\r\n\t\t\t\t\tthis.toastService.success('Dispositivo actualizado correctamente', 'Operación exitosa');\r\n\t\t\t\t\tthis.router.navigateByUrl('home/administracion/dispositivos/dispositivo');\r\n\t\t\t\t}, (err) => {\r\n\t\t\t\t\tconsole.log('Error al actualizar el dispositivo', err);\r\n\t\t\t\t});\r\n\t\t} else {\r\n\t\t\tthis.dispositivoService.agregarDispositivo(this.dispositivoForm.value).subscribe(\r\n\t\t\t\t(success) => {\r\n\t\t\t\t\tthis.toastService.success('Dispositivo guardado correctamente', 'Operación exitosa');\r\n\t\t\t\t\tthis.router.navigateByUrl('home/administracion/dispositivos/dispositivo');\r\n\t\t\t\t}, (err) => {\r\n\t\t\t\t\tconsole.log('Error', err);\r\n\t\t\t\t});\r\n\t\t}\r\n\t}\r\n\r\n\tonCancel() {\r\n\t\tthis.router.navigateByUrl('home/administracion/dispositivos/dispositivo');\r\n\t}\r\n\r\n}\r\n","
\r\n\t
\r\n\t\t
\r\n\t\t\t

 Dispositivos

\r\n\t\t
\r\n\t\t
\r\n\t\t\t\r\n\r\n\t\t\t\r\n\t\t\t\r\n\t\t
\r\n\t
\r\n\t\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t

{{p.data.estatus}}

\r\n\t\t\t\t\t\t\t\t

{{p.data.estatus}}

\r\n\t\t\t\t\t\t\t\t

{{p.data.estatus}}

\r\n\t\t\t\t\t\t\t\t

{{p.data.estatus}}

\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n","import { SimService } from './../../../sims/services/sim.service';\r\nimport { Permiso } from './../../../../_entities/Enums/permiso.enum';\r\nimport { Router } from '@angular/router';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { DispositivoVM } from './../../../../_entities/dispositivos/DispositivoVM';\r\nimport { DispositivoService } from './../../services/dispositivo.service';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport Swal from 'sweetalert2';\r\n\r\n\r\n@Component({\r\n\tselector: 'kt-dispositivo',\r\n\ttemplateUrl: './dispositivo.component.html',\r\n\tstyleUrls: ['./dispositivo.component.scss']\r\n})\r\nexport class DispositivoComponent implements OnInit {\r\n\tpublic dispositivosRegistros: DispositivoVM[];\r\n\tpublic datosReporte = [];\r\n\r\n\tpublic showFilterRow: boolean;\r\n\tpublic showHeaderFilter: boolean;\r\n\tpublic showNavigationButtons: boolean;\r\n\tpublic showPageSizeSelector: boolean;\r\n\tpublic seElimina: boolean = true;\r\n\tpublic isDisabled: boolean = true;\r\n\tpublic mensajeAgrupar: string = \"Arrastre un encabezado de columna aquí para agrupar por esa columna\";\r\n\r\n\tpublic permisoConsultarDispositivos: string;\r\n\tpublic permisoAgregarDispositivo: string;\r\n\tpublic permisoActualizarDispositivo: string;\r\n\tpublic permisoEliminarDispositivo: string;\r\n\r\n\tconstructor(private dispositivoService: DispositivoService,\r\n\t\tprivate simService: SimService,\r\n\t\tprivate toastService: ToastrService,\r\n\t\tprivate router: Router) {\r\n\t\tthis.showFilterRow = true;\r\n\t\tthis.showHeaderFilter = true;\r\n\t\tthis.showNavigationButtons = true;\r\n\t\tthis.showPageSizeSelector = true;\r\n\t}\r\n\r\n\tngOnInit() {\r\n\t\tthis.obtenerPermisos();\r\n\t\tthis.obtenerDispositivos();\r\n\t}\r\n\r\n\t/**Obtienes todos los dispositivos */\r\n\tobtenerDispositivos() {\r\n\t\tthis.dispositivoService.obtenerDispositivos().subscribe(\r\n\t\t\t(response: DispositivoVM[]) => {\r\n\t\t\t\tthis.dispositivosRegistros = response.map(x => {\r\n\t\t\t\t\tlet imei = '';\r\n\t\t\t\t\tlet sim = ''\r\n\t\t\t\t\tif (x.imei) {\r\n\t\t\t\t\t\timei = x.imei.toString()\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tif (x.sim) {\r\n\t\t\t\t\t\tsim = x.sim.toString()\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tthis.datosReporte.push(\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t'IMEI': imei,\r\n\t\t\t\t\t\t\t'Teléfono': x.numeroTelefonico,\r\n\t\t\t\t\t\t\t'Número de Serie': x.numeroSerie,\r\n\t\t\t\t\t\t\t'Marca': x.marca,\r\n\t\t\t\t\t\t\t'Modelo': x.modelo,\r\n\t\t\t\t\t\t\t'Sim': sim,\r\n\t\t\t\t\t\t\t'Estatus': this.obtenerEstatus(x.estatus)\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t)\r\n\r\n\t\t\t\t\treturn {\r\n\t\t\t\t\t\timei: x.imei,\r\n\t\t\t\t\t\tnumeroSerie: x.numeroSerie,\r\n\t\t\t\t\t\tmodelo: x.modelo,\r\n\t\t\t\t\t\tmarca: x.marca,\r\n\t\t\t\t\t\tsim: x.sim,\r\n\t\t\t\t\t\testatus: this.obtenerEstatus(x.estatus),\r\n\t\t\t\t\t\tidCliente: x.idCliente,\r\n\t\t\t\t\t\tnumeroTelefonico: x.numeroTelefonico\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\r\n\t\t\t\tif (this.datosReporte.length > 0) {\r\n\t\t\t\t\tthis.isDisabled = false\r\n\t\t\t\t}\r\n\t\t\t}, (error) => {\r\n\t\t\t\tthis.toastService.error('Ocurrio un error al intentar obtener los dispositivos gps', '');\r\n\t\t\t}\r\n\t\t)\r\n\t}\r\n\r\n\t/**Alta dispositivo */\r\n\taltaDispositivo() {\r\n\t\tthis.router.navigateByUrl('/home/administracion/dispositivos/dispositivo/alta');\r\n\t}\r\n\r\n\t/**Editar dispositivo*/\r\n\teditarDispositivo(imei) {\r\n\t\tthis.router.navigateByUrl('/home/administracion/dispositivos/dispositivo/editar/' + imei);\r\n\t}\r\n\r\n\t/**Valida el estatus */\r\n\tobtenerEstatus(estatus) {\r\n\t\tlet estado = '';\r\n\t\tswitch (estatus) {\r\n\t\t\tcase 0:\r\n\t\t\t\testado = 'Baja';\r\n\t\t\t\tbreak;\r\n\t\t\tcase 1:\r\n\t\t\t\testado = 'Disponible';\r\n\t\t\t\tbreak;\r\n\t\t\tcase 2:\r\n\t\t\t\testado = 'Asignado';\r\n\t\t\t\tbreak;\r\n\t\t\tcase 3:\r\n\t\t\t\testado = 'Revisión';\r\n\t\t\t\tbreak;\r\n\t\t}\r\n\t\treturn estado;\r\n\t}\r\n\r\n\t/**\r\n * Se realiza el consumo de servicios de eliminación\r\n * Modificado:Luis Enrique\r\n * @param dispositivo\r\n */\r\n\teliminarDispositivo(dispositivo) {\r\n\t\tif (dispositivo.sim === null) {\r\n\t\t\tSwal.fire({\r\n\t\t\t\ttitle: 'Eliminar',\r\n\t\t\t\ttext: `¿Está seguro que desea eliminar el dispositivo ` + dispositivo.imei + ' ?',\r\n\t\t\t\ticon: 'warning',\r\n\t\t\t\tshowCancelButton: true,\r\n\t\t\t\tconfirmButtonColor: '#3085d6',\r\n\t\t\t\tcancelButtonColor: '#d33',\r\n\t\t\t\tconfirmButtonText: 'Confirmar',\r\n\t\t\t\tcancelButtonText: \"Cancelar\"\r\n\t\t\t}).then((result) => {\r\n\t\t\t\tif (result.value) {\r\n\t\t\t\t\tthis.dispositivoService.eliminarSinSim(dispositivo.imei).subscribe(res => {\r\n\t\t\t\t\t\tthis.toastService.success(\"Dispositivo Eliminado\")\r\n\t\t\t\t\t\tthis.obtenerDispositivos();\r\n\t\t\t\t\t}, err => {\r\n\t\t\t\t\t\tthis.toastService.error(err.error)\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t} else if (dispositivo.sim != '' || dispositivo.sim != null) {\r\n\t\t\tSwal.fire({\r\n\t\t\t\ttitle: 'Eliminar',\r\n\t\t\t\ttext: `¿Está seguro que desea eliminar el dispositivo ` + dispositivo.imei + ' ?',\r\n\t\t\t\ticon: 'warning',\r\n\t\t\t\tshowCancelButton: true,\r\n\t\t\t\tconfirmButtonColor: '#3085d6',\r\n\t\t\t\tcancelButtonColor: '#d33',\r\n\t\t\t\tconfirmButtonText: 'Confirmar',\r\n\t\t\t\tcancelButtonText: \"Cancelar\"\r\n\t\t\t}).then((result) => {\r\n\t\t\t\tif (result.value) {\r\n\t\t\t\t\tSwal.fire({\r\n\t\t\t\t\t\ttitle: 'Eliminar',\r\n\t\t\t\t\t\ttext: '¿Deseas dejar disponible el SIM?',\r\n\t\t\t\t\t\ticon: 'warning',\r\n\t\t\t\t\t\tshowCancelButton: true,\r\n\t\t\t\t\t\tconfirmButtonColor: '#3085d6',\r\n\t\t\t\t\t\tcancelButtonColor: '#d33',\r\n\t\t\t\t\t\tconfirmButtonText: 'Si',\r\n\t\t\t\t\t\tcancelButtonText: \"No\"\r\n\t\t\t\t\t}).then((result) => {\r\n\t\t\t\t\t\tif (result.value === true) {\r\n\t\t\t\t\t\t\tthis.dispositivoService.eliminarSim(dispositivo.imei, this.seElimina).subscribe(result => {\r\n\t\t\t\t\t\t\t\tthis.obtenerDispositivos();\r\n\t\t\t\t\t\t\t\tthis.toastService.success(\"Dispositivo Eliminado\")\r\n\t\t\t\t\t\t\t})\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tthis.seElimina = false;\r\n\t\t\t\t\t\t\tthis.dispositivoService.eliminarNoSim(dispositivo.imei, this.seElimina).subscribe(result => {\r\n\t\t\t\t\t\t\t\tthis.obtenerDispositivos();\r\n\t\t\t\t\t\t\t\tthis.toastService.success(\"Dispositivo Eliminado\")\r\n\t\t\t\t\t\t\t})\r\n\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tthis.obtenerDispositivos();\r\n\t\t\t\t\t})\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t}\r\n\t}\r\n\r\n\t/**Obtener permisos para dispositivos */\r\n\tpublic get Permiso() {\r\n\t\treturn Permiso;\r\n\t}\r\n\r\n\tcambiarEstatus(imei, estatus) {\r\n\t\t/**\r\n\t\t * 0 = baja\r\n\t\t * 1 = disponible\r\n\t\t * 2 = asignado\r\n\t\t * 3 = revision\r\n\t\t */\r\n\r\n\t\tthis.dispositivoService.cambiarEstatus(imei, estatus).subscribe(\r\n\t\t\t(response) => {\r\n\t\t\t\tthis.obtenerDispositivos();\r\n\t\t\t\tthis.toastService.success('Estatus actualizado');\r\n\t\t\t}, (error) => {\r\n\t\t\t\tthis.toastService.error('Error al actualizar estatus');\r\n\t\t\t}\r\n\t\t)\r\n\r\n\t}\r\n\r\n\tobtenerPermisos() {\r\n\t\tthis.permisoConsultarDispositivos = Permiso.ConsultarDispositivos;\r\n\t\tthis.permisoAgregarDispositivo = Permiso.AgregarDispositivo;\r\n\t\tthis.permisoActualizarDispositivo = Permiso.ActualizarDispositivo;\r\n\t\tthis.permisoEliminarDispositivo = Permiso.EliminarDispositivo;\r\n\t}\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n

Agregar Marca de Dispositivo

\r\n

Editar Marca de Dispositivo

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n Nombre\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { ToastrService } from 'ngx-toastr';\r\nimport { MarcaDispositivoService } from './../../../services/marca-dispositivo.service';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { FormGroup, FormBuilder } from '@angular/forms';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { ListaMarcas } from '../../../../../_entities/dispositivos/AgregarDispositivoVM';\r\n\r\n\r\n@Component({\r\n selector: 'kt-alta-marca-dispositivo',\r\n templateUrl: './alta-marca-dispositivo.component.html',\r\n styleUrls: ['./alta-marca-dispositivo.component.scss']\r\n})\r\nexport class AltaMarcaDispositivoComponent implements OnInit {\r\n public marcaDispositivoForm: FormGroup;\r\n public param: any;\r\n public idMarca: any;\r\n public loading = false;\r\n\r\n constructor(private marcaDispositivoService: MarcaDispositivoService,\r\n private toastService: ToastrService,\r\n private activatedRoute: ActivatedRoute,\r\n private router: Router,\r\n private fb: FormBuilder) { }\r\n\r\n ngOnInit() {\r\n this.initForm();\r\n this.param = this.activatedRoute.params.subscribe(\r\n param => {\r\n this.idMarca = param[\"idMarca\"];\r\n if (this.idMarca) {\r\n this.obtenerMarca(this.idMarca);\r\n }\r\n }\r\n );\r\n }\r\n\r\n initForm() {\r\n this.marcaDispositivoForm = this.fb.group({\r\n Id: [''],\r\n Nombre: ['']\r\n });\r\n }\r\n\r\n obtenerMarca(idMarca: any) {\r\n this.marcaDispositivoService.obtenerMarca(idMarca).subscribe((res: ListaMarcas) => {\r\n this.marcaDispositivoForm.setValue({\r\n Id: res.id,\r\n Nombre: res.nombre\r\n });\r\n }, err => {\r\n\r\n });\r\n }\r\n\r\n onSubmit() {\r\n this.loading = true;\r\n if (this.idMarca) {\r\n this.marcaDispositivoService.actualizarMarca(this.marcaDispositivoForm.value).subscribe(res => {\r\n this.toastService.success('Marca actualizada correctamente','Operación exitosa');\r\n this.router.navigateByUrl('/home/administracion/marca');\r\n }, err => {\r\n this.toastService.error('Ocurrio un error al intentar guardar la marca');\r\n this.router.navigateByUrl('home/administracion/marca');\r\n },\r\n () => this.onSubmitComplete());\r\n } else {\r\n this.marcaDispositivoService.agregarMarca({nombre: this.marcaDispositivoForm.value.Nombre}).subscribe(res => {\r\n this.toastService.success('Marca guardada correctamente','Operación exitosa');\r\n this.router.navigateByUrl('/home/administracion/marca');\r\n }, err => {\r\n this.toastService.error('Ourrio un error al registrar la marca');\r\n },\r\n () => this.onSubmitComplete());\r\n }\r\n }\r\n\r\n onCancel() {\r\n this.router.navigateByUrl('home/administracion/dispositivos/marca');\r\n }\r\n\r\n onSubmitComplete() : void {\r\n this.loading = false;\r\n }\r\n\r\n\r\n}\r\n","
\r\n
\r\n
\r\n

Marca

\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
","import { Permiso } from './../../../../_entities/Enums/permiso.enum';\r\nimport { Router } from '@angular/router';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { MarcaDispositivoService } from './../../services/marca-dispositivo.service';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport Swal from 'sweetalert2';\r\n\r\n\r\n@Component({\r\n selector: 'kt-marca-dispositivo',\r\n templateUrl: './marca-dispositivo.component.html',\r\n styleUrls: ['./marca-dispositivo.component.scss']\r\n})\r\nexport class MarcaDispositivoComponent implements OnInit {\r\n public marcaRegistros: any[];\r\n\r\n public showFilterRow: boolean;\r\n public showHeaderFilter: boolean;\r\n public showNavigationButtons: boolean;\r\n public showPageSizeSelector: boolean;\r\n\r\n public permisoConsultarMarcasDispositivos: string;\r\n public permisoAgregarMarcaDispositivo: string;\r\n public permisoActualizarMarcaDispositivo: string;\r\n public permisoEliminarMarcaDispositivo: string;\r\n\r\n public currentFilter: any;\r\n\r\n constructor(\r\n private marcaDispositivoService: MarcaDispositivoService,\r\n private toastService: ToastrService,\r\n private router: Router) { \r\n this.showFilterRow = true;\r\n this.showHeaderFilter = true;\r\n this.showNavigationButtons = true;\r\n this.showPageSizeSelector = true;\r\n }\r\n\r\n ngOnInit() {\r\n this.obtenerPermisos();\r\n this.obtenerMarcas();\r\n }\r\n\r\n obtenerMarcas() {\r\n this.marcaDispositivoService.obtenerMarcas().subscribe(\r\n (res) => {\r\n this.marcaRegistros = res;\r\n }, (err) => {\r\n this.toastService.error('ocurrio un error al obtener los sims');\r\n });\r\n }\r\n\r\n altaMarcaDispositivo() {\r\n this.router.navigateByUrl('/home/administracion/dispositivos/marca/alta');\r\n }\r\n\r\n editarMarca(idMarca) {\r\n this.router.navigateByUrl('/home/administracion/dispositivos/marca/editar/' + idMarca);\r\n }\r\n\r\n eliminarMarca(data) {\r\n Swal.fire({\r\n title: 'Eliminar',\r\n text: `¿Está seguro que desea eliminar la marca ` + data.nombre,\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonColor: '#3085d6',\r\n cancelButtonColor: '#d33',\r\n confirmButtonText: 'Confirmar',\r\n cancelButtonText: \"Cancelar\"\r\n }).then((result) => {\r\n if (result.value) {\r\n this.marcaDispositivoService.eliminarMarca(data.id).subscribe(res => {\r\n Swal.fire(\r\n 'Eliminado!',\r\n 'La marca ha sido eliminada.',\r\n 'success'\r\n );\r\n this.ngOnInit();\r\n }, err => {\r\n Swal.fire(\r\n 'Ops!',\r\n 'Error al intentar eliminar la marca del dispositivo.',\r\n 'error'\r\n );\r\n });\r\n }\r\n })\r\n }\r\n\r\n /**Obtener Permisos para marca dispositivos */\r\n public get Permiso() {\r\n return Permiso;\r\n }\r\n\r\n obtenerPermisos(){\r\n this.permisoConsultarMarcasDispositivos = Permiso.ConsultarMarcasDispositivos;\r\n this.permisoAgregarMarcaDispositivo = Permiso.AgregarMarcaDispositivo;\r\n this.permisoActualizarMarcaDispositivo = Permiso.ActualizarMarcaDispositivo;\r\n this.permisoEliminarMarcaDispositivo = Permiso.EliminarMarcaDispositivo;\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n

Agregar Modelo

\r\n

Editar Modelo

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n Nombre\r\n \r\n \r\n \r\n Marca\r\n \r\n \r\n {{marca.nombre}}\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { ListaMarcas, ListaModelos } from './../../../../../_entities/dispositivos/AgregarDispositivoVM';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { ModeloDispositivoService } from './../../../services/modelo-dispositivo.service';\r\nimport { FormGroup, FormBuilder } from '@angular/forms';\r\nimport { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'kt-alta-modelo-dispositivo',\r\n templateUrl: './alta-modelo-dispositivo.component.html',\r\n styleUrls: ['./alta-modelo-dispositivo.component.scss']\r\n})\r\nexport class AltaModeloDispositivoComponent implements OnInit {\r\n public marcasDispositivo: ListaMarcas[];\r\n public loading: boolean = false;\r\n public modeloForm: FormGroup;\r\n public param: any;\r\n public idModelo: any;\r\n\r\n constructor(private modeloDispositivoService: ModeloDispositivoService,\r\n private toastService: ToastrService,\r\n private activatedRoute: ActivatedRoute,\r\n private router: Router,\r\n private fb: FormBuilder) { }\r\n\r\n ngOnInit() {\r\n this.initForm();\r\n this.obetenerMarcas();\r\n this.param = this.activatedRoute.params.subscribe(\r\n param => {\r\n this.idModelo = param['idModelo'];\r\n if (this.idModelo) {\r\n this.obtenerModelo(this.idModelo);\r\n }\r\n }\r\n );\r\n }\r\n\r\n initForm(){\r\n this.modeloForm = this.fb.group({\r\n Id: [0],\r\n Nombre: [''],\r\n IdMarca: ['']\r\n })\r\n }\r\n\r\n obetenerMarcas() {\r\n this.modeloDispositivoService.obtenerMarcas().subscribe(\r\n (res: ListaMarcas[]) => {\r\n this.marcasDispositivo = res;\r\n },(err)=>{this.toastService.error('Ocurrio un error al consultar las marcas')});\r\n }\r\n\r\n obtenerModelo(idModelo: any) {\r\n this.modeloDispositivoService.obtenerModelo(idModelo).subscribe((res: ListaModelos)=>{\r\n this.modeloForm.setValue({\r\n Id: res.id,\r\n Nombre: res.nombre,\r\n IdMarca: res.idMarca\r\n });\r\n },err=>{this.toastService.error('Ocurrio un error al consultar la información del modelo')});\r\n }\r\n\r\n onSubmit(){\r\n if(this.idModelo){\r\n this.modeloDispositivoService.actualizarModelo(this.modeloForm.value).subscribe((res)=>{\r\n this.toastService.success('Se Actualizo el modelo correctamente','Bien hecho');\r\n },(err)=>{\r\n this.toastService.error('Ocurrio un erro al actualizar el modelo')\r\n this.router.navigateByUrl('home/administracion/modelo');\r\n },\r\n () => this.onSubmitComplete());\r\n }else{\r\n this.modeloDispositivoService.agregarModelo(this.modeloForm.value).subscribe((res) =>{\r\n this.toastService.success('Se guardo el modelo correctamente','Bien hecho');\r\n this.modeloForm.reset();\r\n this.router.navigateByUrl('home/administracion/modelo');\r\n },(err)=>{this.toastService.error('Ocurrio un error al guardar el modelo')},\r\n () => this.onSubmitComplete());\r\n }\r\n }\r\n\r\n onCancel(){\r\n this.router.navigateByUrl('home/administracion/dispositivos/modelo');\r\n }\r\n onSubmitComplete() : void {\r\n this.loading = false;\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n

Modelo

\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
","import { Permiso } from './../../../../_entities/Enums/permiso.enum';\r\nimport { Router } from '@angular/router';\r\nimport { ModeloDispositivoService } from './../../services/modelo-dispositivo.service';\r\nimport { ListaModelos } from './../../../../_entities/dispositivos/AgregarDispositivoVM';\r\nimport { Component, OnInit, ViewChild, ElementRef } from '@angular/core';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'kt-modelo-dispositivo',\r\n templateUrl: './modelo-dispositivo.component.html',\r\n styleUrls: ['./modelo-dispositivo.component.scss']\r\n})\r\nexport class ModeloDispositivoComponent implements OnInit {\r\n @ViewChild('gridContainer', { static: false }) gridContainer: ElementRef;\r\n \r\n public modeloRegistros: ListaModelos[];\r\n public showFilterRow: boolean;\r\n public showHeaderFilter: boolean;\r\n\r\n public permisoConsultarModelosDispositivos: string;\r\n public permisoAgregarModeloDispositivo: string;\r\n public permisoActualizarModeloDispositivo: string;\r\n public permisoEliminarModeloDispositivo: string;\r\n\r\n constructor(private modeloDispositivoService: ModeloDispositivoService,\r\n private router: Router) { }\r\n\r\n ngOnInit() {\r\n this.obtenerModelos();\r\n this.obtenerPermisosModelosDispositivos();\r\n }\r\n\r\n obtenerModelos() {\r\n this.modeloDispositivoService.obtenerModelos().subscribe(\r\n (res: ListaModelos[]) => {\r\n this.modeloRegistros = res;\r\n }, (err) => { console.log('Error al obtener los modelos', err) });\r\n }\r\n\r\n altaModeloDispositivo(){\r\n this.router.navigateByUrl('/home/administracion/dispositivos/modelo/alta');\r\n }\r\n\r\n editarModeloDispositivo(idModelo) {\r\n this.router.navigateByUrl('/home/administracion/dispositivos/modelo/editar/' + idModelo);\r\n }\r\n\r\n eliminarModelo(data) {\r\n Swal.fire({\r\n title: 'Eliminar',\r\n text: `¿Está seguro que desea eliminar el modelo ` + data.nombre,\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonColor: '#3085d6',\r\n cancelButtonColor: '#d33',\r\n confirmButtonText: 'Confirmar',\r\n cancelButtonText: \"Cancelar\"\r\n }).then((result) => {\r\n if (result.value) {\r\n this.modeloDispositivoService.eliminarModelo(data.id).subscribe(res => {\r\n Swal.fire(\r\n 'Eliminado!',\r\n 'El modelo ha sido eliminado.',\r\n 'success'\r\n );\r\n this.ngOnInit();\r\n }, err => {\r\n Swal.fire(\r\n 'Ops!',\r\n 'Error al intentar eliminar el modelo del dispositivo.',\r\n 'error'\r\n );\r\n });\r\n }\r\n })\r\n }\r\n\r\n \r\n /**Obtener permisos para Modelos Dispositivos */\r\n public get Permiso() {\r\n return Permiso;\r\n }\r\n\r\n obtenerPermisosModelosDispositivos() {\r\n this.permisoConsultarModelosDispositivos = Permiso.ConsultarModelosDispositivos;\r\n this.permisoAgregarModeloDispositivo = Permiso.AgregarModeloDispositivo;\r\n this.permisoActualizarModeloDispositivo = Permiso.ActualizarModeloDispositivo;\r\n this.permisoEliminarModeloDispositivo = Permiso.EliminarModeloDispositivo;\r\n }\r\n\r\n}\r\n","import { AltaModeloDispositivoComponent } from './components/modelo-dispositivo/alta-modelo-dispositivo/alta-modelo-dispositivo.component';\r\nimport { AltaMarcaDispositivoComponent } from './components/marca-dispositivo/alta-marca-dispositivo/alta-marca-dispositivo.component';\r\nimport { AltaDispositivoComponent } from './components/dispositivo/alta-dispositivo/alta-dispositivo.component';\r\nimport { DispositivoComponent } from './components/dispositivo/dispositivo.component';\r\nimport { NgModule } from '@angular/core';\r\nimport { Routes, RouterModule } from '@angular/router';\r\n\r\nimport { DispositivosComponent } from './dispositivos.component';\r\nimport { MarcaDispositivoComponent } from './components/marca-dispositivo/marca-dispositivo.component';\r\nimport { ModeloDispositivoComponent } from './components/modelo-dispositivo/modelo-dispositivo.component';\r\n\r\nconst routes: Routes = [\r\n {\r\n\tpath: '',\r\n children: [\r\n {\r\n path: 'dispositivo',\r\n component: DispositivoComponent,\r\n },\r\n {\r\n path: 'dispositivo/alta',\r\n component: AltaDispositivoComponent\r\n },\r\n {\r\n path: 'dispositivo/editar/:imei',\r\n component: AltaDispositivoComponent\r\n },\r\n {\r\n path: 'marca',\r\n component: MarcaDispositivoComponent\r\n },\r\n {\r\n path: 'marca/alta',\r\n component: AltaMarcaDispositivoComponent\r\n },\r\n {\r\n path: 'marca/editar/:idMarca',\r\n component: AltaMarcaDispositivoComponent\r\n },\r\n {\r\n path: 'modelo',\r\n component: ModeloDispositivoComponent\r\n },\r\n {\r\n path: 'modelo/alta',\r\n component: AltaModeloDispositivoComponent\r\n },\r\n {\r\n path: 'modelo/editar/:idModelo',\r\n component: AltaModeloDispositivoComponent\r\n }\r\n ]\r\n },\r\n\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes)],\r\n exports: [RouterModule]\r\n})\r\nexport class DispositivosRoutingModule { }\r\n","import { NgxPermissionsModule } from 'ngx-permissions';\r\nimport { GoogleChartsModule } from 'angular-google-charts';\r\nimport { MatSlideToggleModule } from '@angular/material/slide-toggle';\r\nimport { DxTemplateModule, DxButtonModule, DxDataGridModule, DxCheckBoxModule, DxSelectBoxModule, DxTreeListModule, DxFormModule, DxPopoverModule, DxPopupModule } from 'devextreme-angular';\r\nimport { MatDividerModule, MatInputModule, MatFormFieldModule, MatButtonModule, MatOptionModule, MatSelectModule, MatListModule, MatCheckboxModule, MatIconModule, MatAutocompleteModule, MatTooltipModule } from '@angular/material';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { NgModule, CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\nimport { DispositivosRoutingModule } from './dispositivos-routing.module';\r\nimport { DispositivosComponent } from './dispositivos.component';\r\nimport { DispositivoComponent } from './components/dispositivo/dispositivo.component';\r\nimport { AltaDispositivoComponent } from './components/dispositivo/alta-dispositivo/alta-dispositivo.component';\r\nimport { MarcaDispositivoComponent } from './components/marca-dispositivo/marca-dispositivo.component';\r\nimport { ModeloDispositivoComponent } from './components/modelo-dispositivo/modelo-dispositivo.component';\r\nimport { AltaMarcaDispositivoComponent } from './components/marca-dispositivo/alta-marca-dispositivo/alta-marca-dispositivo.component';\r\nimport { AltaModeloDispositivoComponent } from './components/modelo-dispositivo/alta-modelo-dispositivo/alta-modelo-dispositivo.component';\r\nimport { BotonExportarTablaComponent } from '../reutilizables/components/boton-exportar-tabla/boton-exportar-tabla.component';\r\nimport { ReutilizablesModule } from '../reutilizables/reutilizables.module';\r\n\r\n\r\n@NgModule({\r\n\tdeclarations: [\r\n\t\tDispositivosComponent,\r\n\t\tDispositivoComponent,\r\n\t\tAltaDispositivoComponent,\r\n\t\tMarcaDispositivoComponent,\r\n\t\tModeloDispositivoComponent,\r\n\t\tAltaMarcaDispositivoComponent,\r\n\t\tAltaModeloDispositivoComponent\r\n\t],\r\n\timports: [\r\n\t\tCommonModule,\r\n\t\tDispositivosRoutingModule,\r\n\t\tMatDividerModule,\r\n\t\tDxTemplateModule,\r\n\t\tDxButtonModule,\r\n\t\tDxDataGridModule,\r\n\t\tDxCheckBoxModule,\r\n\t\tDxSelectBoxModule,\r\n\t\tDxTreeListModule,\r\n\t\tDxFormModule,\r\n\t\tDxPopoverModule,\r\n\t\tDxPopupModule,\r\n\t\tFormsModule,\r\n\t\tMatInputModule,\r\n\t\tMatIconModule,\r\n\t\tMatFormFieldModule,\r\n\t\tReactiveFormsModule,\r\n\t\tMatButtonModule,\r\n\t\tMatOptionModule,\r\n\t\tMatSelectModule,\r\n\t\tMatListModule,\r\n\t\tMatTooltipModule,\r\n\t\tMatAutocompleteModule,\r\n\t\tMatSlideToggleModule,\r\n\t\tGoogleChartsModule.forRoot(),\r\n\t\tNgxPermissionsModule,\r\n\t\tMatCheckboxModule,\r\n\t\tReutilizablesModule\r\n\t],\r\n\texports: [\r\n\t\tFormsModule,\r\n\t\tReactiveFormsModule\r\n\t]\r\n})\r\nexport class DispositivosModule { }\r\n","import { ListaModelos } from './../../../_entities/dispositivos/AgregarDispositivoVM';\r\nimport { ListaMarcas } from './../../../_entities/medidores/MarcasMedidores';\r\nimport { SimVM } from './../../../_entities/sims/SimVM';\r\nimport { AgregarDispositivoSinSimVM } from './../../../_entities/dispositivos/AgregarDispositivoVM';\r\nimport { ClienteVM } from './../../../_entities/clientes/ClienteVM';\r\nimport { environment } from './../../../../environments/environment';\r\nimport { DispositivoVM, FormDataDispositivoVM } from './../../../_entities/dispositivos/DispositivoVM';\r\nimport { Observable } from 'rxjs';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { DispositivosDisponibles } from './../../../_entities/Administracion/DispositivosDisponibles';\r\n\r\n@Injectable({\r\n\tprovidedIn: 'root'\r\n})\r\nexport class DispositivoService {\r\n\r\n\tconstructor(private http: HttpClient) { }\r\n\r\n\tobtenerDispositivos(): Observable {\r\n\t\treturn this.http.get(`${environment.API_SECURITY}/api/dispositivos`);\r\n\t}\r\n\r\n\tobtenerDispositivo(imei): Observable {\r\n\t\treturn this.http.get(`${environment.API_SECURITY}/api/dispositivos/${imei}`);\r\n\t}\r\n\r\n\tobtenerSimsDisponibles(): Observable {\r\n\t\treturn this.http.get(`${environment.API_SECURITY}/api/sims/disponibles`);\r\n\t}\r\n\r\n\tobtenerSimById(idSim): Observable {\r\n\t\treturn this.http.get(`${environment.API_SECURITY}/api/sims/${idSim}`);\r\n\t}\r\n\r\n\tobtenerMarcas(): Observable {\r\n\t\treturn this.http.get(`${environment.API_SECURITY}/api/marcasEquipo`);\r\n\t}\r\n\r\n\tobtenerModeloByMarca(idMarca): Observable {\r\n\t\treturn this.http.get(`${environment.API_SECURITY}/api/ModelosEquipo/getmodelos/${idMarca}`);\r\n\t}\r\n\r\n\tgetImeisDisponibles(): Observable {\r\n\t\treturn this.http.get(environment.API_SECURITY + '/api/dispositivos/getbyestatus/1');\r\n\t}\r\n\r\n\tobtenerClientes(incluirClientePropietario: boolean = false): Observable {\r\n\t\treturn this.http.get(`${environment.API_SECURITY}/api/Reportes/ClientesReportes`);\r\n\t}\r\n\r\n\tactualizarDispositivo(imei, form): Observable {\r\n\t\treturn this.http.put(`${environment.API_SECURITY}/api/dispositivos/${imei}`, form);\r\n\t}\r\n\r\n\tagregarDispositivo(form): Observable {\r\n\t\treturn this.http.post(`${environment.API_SECURITY}/api/dispositivos`, form);\r\n\t}\r\n\r\n\tcambiarEstatus(imei, estatus) {\r\n\t\treturn this.http.put(environment.API_SECURITY + '/api/dispositivos/CambiarEstatus', null, {\r\n\t\t\tparams: {\r\n\t\t\t\timei,\r\n\t\t\t\testatus\r\n\t\t\t}\r\n\t\t})\r\n\t}\r\n\r\n\t/**Eliminar sin sim\r\n\t* Luis Enrique\r\n */\r\n\teliminarSinSim(imei) {\r\n\t\treturn this.http.delete(environment.API_SECURITY + '/api/dispositivos/' + imei);\r\n\t}\r\n\r\n\t/**Eliminar con sim y se elimina sim\r\n\t* Luis Enrique\r\n\t*/\r\n\teliminarSim(imei, seElimina) {\r\n\t\treturn this.http.delete(environment.API_SECURITY + '/api/dispositivos/' + imei, {\r\n\t\t\tparams: {\r\n\t\t\t\tseElimina\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\t/**Eliminar con sim y se deja sim\r\n\t* Luis Enrique\r\n\t*/\r\n\teliminarNoSim(imei, seElimina) {\r\n\t\treturn this.http.delete(environment.API_SECURITY + '/api/dispositivos/' + imei, {\r\n\t\t\tparams: {\r\n\t\t\t\tseElimina\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n}\r\n","import { Observable } from 'rxjs';\r\nimport { environment } from './../../../../environments/environment';\r\nimport { ListaMarcas } from './../../../_entities/dispositivos/AgregarDispositivoVM';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class MarcaDispositivoService {\r\n\r\n constructor(private http: HttpClient) { }\r\n\r\n obtenerMarcas() {\r\n return this.http.get(`${environment.API_SECURITY}/api/marcasEquipo`);\r\n }\r\n\r\n obtenerMarca(idMarca): Observable{\r\n return this.http.get(`${environment.API_SECURITY}/api/marcasEquipo/${idMarca}`);\r\n }\r\n\r\n agregarMarca(form):Observable{\r\n return this.http.post(`${environment.API_SECURITY}/api/marcasEquipo`,form);\r\n }\r\n\r\n actualizarMarca(form):Observable{\r\n return this.http.put(`${environment.API_SECURITY}/api/marcasEquipo`,form);\r\n }\r\n\r\n\r\n eliminarMarca(idMarca): Observable{\r\n return this.http.delete(`${environment.API_SECURITY}/api/marcasEquipo/${idMarca}`);\r\n }\r\n}\r\n","import { environment } from './../../../../environments/environment';\r\nimport { ListaMarcas, ListaModelos } from './../../../_entities/dispositivos/AgregarDispositivoVM';\r\nimport { Observable } from 'rxjs';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ModeloDispositivoService {\r\n\r\n constructor(private http: HttpClient) { }\r\n\r\n obtenerModelos(): Observable{\r\n return this.http.get(`${environment.API_SECURITY}/api/ModelosEquipo`);\r\n }\r\n\r\n obtenerMarcas(): Observable {\r\n return this.http.get(`${environment.API_SECURITY}/api/marcasEquipo`);\r\n }\r\n\r\n obtenerModelo(idModelo): Observable {\r\n return this.http.get(`${environment.API_SECURITY}/api/ModelosEquipo/${idModelo}`);\r\n }\r\n\r\n agregarModelo(form):Observable{\r\n return this.http.post(`${environment.API_SECURITY}/api/ModelosEquipo`,form);\r\n }\r\n\r\n actualizarModelo(form):Observable{\r\n return this.http.put(`${environment.API_SECURITY}/api/ModelosEquipo`,form);\r\n }\r\n\r\n eliminarModelo(idModelo):Observable {\r\n return this.http.delete(`${environment.API_SECURITY}/api/ModelosEquipo/${idModelo}`);\r\n }\r\n\r\n}\r\n","
\r\n\t\r\n\t\r\n\t\r\n\t\r\n\t
\r\n\t\t\r\n\t\t

Activos

\r\n\t
\r\n\t\r\n
\r\n
\r\n\t
\r\n\t\t
\r\n\t\t\t

\r\n\t\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\r\n\t\t
\r\n\t
\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n
\r\n\r\n
\r\n","import { DatePipe } from '@angular/common';\r\nimport { MapaService } from './../../../../services/mapa.service';\r\nimport { HistoricoPosicionesActivoComponent } from './../../../popups/activos/historico-posiciones-activo/historico-posiciones-activo.component';\r\nimport { ActivosService } from './../../../../services/activos.service';\r\nimport { ActivoUltimaTransmision } from './../../../../../../_entities/activos/activo';\r\nimport { MatDialogRef, MatDialogConfig, MatDialog } from '@angular/material';\r\nimport { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n\tselector: 'kt-activo-modal',\r\n\ttemplateUrl: './activo-modal.component.html',\r\n\tstyleUrls: ['./activo-modal.component.scss']\r\n})\r\nexport class ActivoModalComponent implements OnInit {\r\n\tpublic activos: ActivoUltimaTransmision[];\r\n\tpublic applyFilterTypes: any;\r\n\tpublic currentFilter: any;\r\n\tpublic showFilterRow: boolean;\r\n\tpublic showHeaderFilter: boolean;\r\n\t isDiabled: boolean = true;\r\n\tpublic datosReporte = [];\r\n\r\n\tconstructor(private activosService: ActivosService,\r\n\t\tprivate mapaService: MapaService,\r\n\t\tpublic dialogRef: MatDialogRef,\r\n\t\tpublic dialog: MatDialog) {\r\n\t\tthis.showFilterRow = true;\r\n\t\tthis.showHeaderFilter = true;\r\n\t\tthis.orderHeaderFilter = this.orderHeaderFilter.bind(this);\r\n\t}\r\n\r\n\tngOnInit() {\r\n\t\tthis.obtenerActivos();\r\n\t}\r\n\r\n\tobtenerActivos() {\r\n\t\tthis.activosService.obtenerUltimaTransmisionActivos().subscribe(\r\n\t\t\t(activos: ActivoUltimaTransmision[]) => {\r\n\t\t\t\tactivos.map(activo => {\r\n\t\t\t\t\t\r\n\t\t\t\t\tif(activo.bateria === null){\r\n\t\t\t\t\t\tactivo.bateria = 'Sin Datos'\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tactivo.bateria = activo.bateria + '%'\r\n\t\t\t\t\t}\r\n\t\t\t\t\tswitch (activo.estatus) {\r\n\t\t\t\t\t\tcase 0:\r\n\t\t\t\t\t\t\tactivo.estatus = 'Inactivo';\r\n\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\tcase 1:\r\n\t\t\t\t\t\t\tactivo.estatus = 'Activo';\r\n\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\tdefault:\r\n\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t}\r\n\t\t\t\t})\r\n\t\t\t\tthis.activos = activos;\r\n\t\t\t\tthis.activos.forEach(activo => {\r\n\t\t\t\t\tthis.datosReporte.push({\r\n\t\t\t\t\t\t'Batería': activo.bateria,\r\n\t\t\t\t\t\t'Económico': activo.economico,\r\n\t\t\t\t\t\t'Número de Serie': activo.numeroSerie,\r\n\t\t\t\t\t\t'Estatus': activo.estatus,\r\n\t\t\t\t\t\t'Descripcion': activo.descripcion,\r\n\t\t\t\t\t\t'Modelo': activo.modelo,\r\n\t\t\t\t\t\t'IMEI': activo.imei.toString()\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t\t\tif(this.datosReporte.length > 0) {\r\n\t\t\t\t\tthis.isDiabled = false;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t)\r\n\t}\r\n\r\n\torderHeaderFilter(data) {\r\n\t\tdata.dataSource.postProcess = (results) => {\r\n\t\t\tresults.push({\r\n\t\t\t\ttext: \"Weekends\",\r\n\t\t\t\tvalue: \"weekends\"\r\n\t\t\t});\r\n\t\t\treturn results;\r\n\t\t};\r\n\t}\r\n\r\n\treportePosiciones(data: any) {\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.autoFocus = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\t\tdialogConfig.hasBackdrop = false;\r\n\t\tdialogConfig.width = \"58%\";\r\n\t\tdialogConfig.data = data;\r\n\t\tthis.dialogRef.close();\r\n\t\tthis.dialog.open(HistoricoPosicionesActivoComponent, dialogConfig);\r\n\t}\r\n\r\n\tubicarPuntoHistorico(data) {\r\n\t\tthis.mapaService.ocultarUbicadorLayer();\r\n\t\tthis.dialogRef.close();\r\n\t\tthis.mapaService.verActivo(data);\r\n\t}\r\n\r\n\r\n\tpublic minimizarPopup() {\r\n\t\tthis.dialogRef.addPanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic maximizarPopup() {\r\n\t\tthis.dialogRef.removePanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic cerrarPopup() {\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n\r\n\r\n}\r\n","
\r\n\t\r\n\t\r\n\t\r\n\t\r\n\t
\r\n\t\t\r\n\t\t

Activos Ultima Transmisión

\r\n\t
\r\n\t\r\n
\r\n
\r\n\t
\r\n\t\t
\r\n\t\t\t

\r\n\t\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\r\n\t\t
\r\n\t
\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n","import { finalize } from 'rxjs/operators';\r\nimport { DatePipe } from '@angular/common';\r\nimport { MatDialogRef } from '@angular/material';\r\nimport { MapaService } from './../../../../services/mapa.service';\r\nimport { ActivosService } from './../../../../services/activos.service';\r\nimport { ActivoUltimaTransmision } from './../../../../../../_entities/activos/activo';\r\nimport { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n\tselector: 'kt-activo-ultima-transmision',\r\n\ttemplateUrl: './activo-ultima-transmision.component.html',\r\n\tstyleUrls: ['./activo-ultima-transmision.component.scss']\r\n})\r\nexport class ActivoUltimaTransmisionComponent implements OnInit {\r\n\tpublic activos: ActivoUltimaTransmision[];\r\n\tpublic applyFilterTypes: any;\r\n\tpublic currentFilter: any;\r\n\tpublic showFilterRow: boolean;\r\n\tpublic showHeaderFilter: boolean;\r\n\tpublic datosReporte = [];\r\n\t isDisabled: boolean = true;\r\n\r\n\tconstructor(private activosService: ActivosService,\r\n\t\tprivate mapaService: MapaService,\r\n\t\tprivate datepipe: DatePipe,\r\n\t\tpublic dialogRef: MatDialogRef) {\r\n\t\tthis.showFilterRow = true;\r\n\t\tthis.showHeaderFilter = true;\r\n\t\tthis.orderHeaderFilter = this.orderHeaderFilter.bind(this);\r\n\t}\r\n\r\n\tngOnInit() {\r\n\t\tthis.obtenerActivosUltimaTransmision();\r\n\t}\r\n\r\n\tobtenerActivosUltimaTransmision() {\r\n\t\tthis.activosService.obtenerUltimaTransmisionActivos().subscribe(\r\n\t\t\t(activos: ActivoUltimaTransmision[]) => {\r\n\t\t\t\tactivos.map(activo => {\r\n\t\t\t\t\tactivo.fechaHora = this.datepipe.transform(activo.fechaHora, 'dd/MM/yyyy HH:mm:ss a');\r\n\t\t\t\t\tif (activo.bateria) {\r\n\t\t\t\t\t\tactivo.bateria = activo.bateria + '%'\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tactivo.bateria = 'Sin Datos'\r\n\t\t\t\t\t}\r\n\t\t\t\t\tswitch (activo.estatus) {\r\n\t\t\t\t\t\tcase 0:\r\n\t\t\t\t\t\t\tactivo.estatus = 'Inactivo';\r\n\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\tcase 1:\r\n\t\t\t\t\t\t\tactivo.estatus = 'Activo';\r\n\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\tdefault:\r\n\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t\tthis.activos = activos;\r\n\t\t\t\tthis.activos.forEach(activo => {\r\n\t\t\t\t\tthis.datosReporte.push({\r\n\t\t\t\t\t\t'Batería': activo.bateria,\r\n\t\t\t\t\t\t'Económico': activo.economico,\r\n\t\t\t\t\t\t'Número de Serie': activo.numeroSerie,\r\n\t\t\t\t\t\t'Estatus': activo.estatus,\r\n\t\t\t\t\t\t'Descripcion': activo.descripcion,\r\n\t\t\t\t\t\t'Modelo': activo.modelo,\r\n\t\t\t\t\t\t'Fecha y Hora': activo.fechaHora,\r\n\t\t\t\t\t\t'IMEI': activo.imei.toString()\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t\t\tif (this.datosReporte.length > 0) {\r\n\t\t\t\t\tthis.isDisabled = false;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t)\r\n\t}\r\n\r\n\torderHeaderFilter(data) {\r\n\t\tdata.dataSource.postProcess = (results) => {\r\n\t\t\tresults.push({\r\n\t\t\t\ttext: \"Weekends\",\r\n\t\t\t\tvalue: \"weekends\"\r\n\t\t\t});\r\n\t\t\treturn results;\r\n\t\t};\r\n\t}\r\n\r\n\tubicarPuntoHistorico(data) {\r\n\t\tthis.mapaService.ocultarUbicadorLayer();\r\n\t\tthis.dialogRef.close();\r\n\t\tthis.mapaService.verActivo(data);\r\n\t}\r\n\r\n\r\n\tpublic minimizarPopup() {\r\n\t\tthis.dialogRef.addPanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic maximizarPopup() {\r\n\t\tthis.dialogRef.removePanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic cerrarPopup() {\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n\r\n}\r\n","
\r\n\t\r\n\t\r\n\t\r\n\t\r\n\t
\r\n\t\t\r\n\t\t

{{datosAlertado.titulo}}

\r\n\t\t

Alerta Botón Ciudadano

\r\n\t
\r\n\t\r\n
\r\n
\r\n\t
\r\n\t\t
\r\n\t\t\t

\r\n\t\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\r\n\t\t
\r\n\t
\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t

Tapa Restaurada

\r\n\t\t\t\t\t\t\t\t\t

Tapa Abierta

\r\n\t\t\t\t\t\t\t\t\t

Alarma de Pánico

\r\n\t\t\t\t\t\t\t\t\t

Alarma Silenciada

\r\n\t\t\t\t\t\t\t\t\t

Dispositivo Restaurado

\r\n\t\t\t\t\t\t\t\t\t

Dirección IP Utilizada

\r\n\t\t\t\t\t\t\t\t\t

Dirección IP Normal

\r\n\t\t\t\t\t\t\t\t\t

Armado

\r\n\t\t\t\t\t\t\t\t\t

Desarmado

\r\n\r\n\t\t\t\t\t\t\t\t\t

Pérdida de Alimentación

\r\n\t\t\t\t\t\t\t\t\t

Alarma Sensor de Movimiento

\r\n\t\t\t\t\t\t\t\t\t

Fallo de Red

\r\n\t\t\t\t\t\t\t\t\t

Dispositivo Sin Conexión

\r\n\r\n\t\t\t\t\t\t\t\t\t

Fallo de Celular

\r\n\t\t\t\t\t\t\t\t\t

Celular Resturado

\r\n\t\t\t\t\t\t\t\t\t

Perdida de Alimentación de Red

\r\n\t\t\t\t\t\t\t\t\t

Interferencia Detectada

\r\n\t\t\t\t\t\t\t\t\t

Interferencia Restaurada

\r\n\t\t\t\t\t\t\t\t\t

Dispositivo Inscrito

\r\n\t\t\t\t\t\t\t\t\t

Dispositivo Eliminado

\r\n\r\n\t\t\t\t\t\t\t\t\t

Red Eléctrica Restaurada

\r\n\t\t\t\t\t\t\t\t\t

Red Restaurada

\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
","import { Component, Inject, OnInit } from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material';\r\nimport { MapaService } from '../../../services/mapa.service';\r\nimport { PanelAdministracionService } from '../../../../panel-vigilancia/services/panel-administracion.service';\r\nimport { ToastrService } from 'ngx-toastr';\r\n\r\n@Component({\r\n\tselector: 'kt-alertas',\r\n\ttemplateUrl: './alertas.component.html',\r\n\tstyleUrls: ['./alertas.component.scss']\r\n})\r\nexport class AlertasComponent implements OnInit {\r\n\tpublic datosAlertado;\r\n\tpublic showFilterRow: boolean;\r\n\tpublic showHeaderFilter: boolean;\r\n\tpublic showNavigationButtons: boolean;\r\n\tpublic showPageSizeSelector: boolean;\r\n\tpublic isDisabled: boolean = true;\r\n\tpublic datosReporte = [];\r\n\r\n\tconstructor(private panelService: PanelAdministracionService, private mapaService: MapaService,\r\n\t\tprivate dialogRef: MatDialogRef,\r\n\t\t@Inject(MAT_DIALOG_DATA) private data, private toastr: ToastrService) {\r\n\t\tthis.showFilterRow = true;\r\n\t\tthis.showHeaderFilter = true;\r\n\t}\r\n\r\n\tngOnInit() {\r\n\t\tthis.datosAlertado = this.data[0];\r\n\t\tthis.datosAlertado.datos.forEach(dato => {\r\n\t\t\tthis.datosReporte.push({\r\n\t\t\t\t'Vehiculo': dato.descripcion,\r\n\t\t\t\t'Placas': dato.placas\r\n\t\t\t});\r\n\t\t});\r\n\t\tthis.datosAlertado.datos.forEach(p => {\r\n\t\t \tthis.datosReporte.push({\r\n\t\t \t\t'Evento': p.descripcionAlarma,\r\n\t\t \t\t'Nombre':p.nombre,\r\n\t\t \t\t'Modelo':p.modelo,\r\n\t\t \t\t'Número Seríe':p.numeroSerie,\r\n\t\t \t\t'Descripción':p.descripcion,\r\n\t\t\t});\r\n\t\t});\r\n\t\tif (this.datosReporte.length > 0) {\r\n\t\t\tthis.isDisabled = false;\r\n\t\t}\r\n\t}\r\n\r\n\tsilenciarAlarma(data) {\r\n\t\tconsole.log(data)\r\n\t\tthis.panelService.apagarAlarmaPanel(data.devIndex).subscribe(result => {\r\n\t\t\tthis.toastr.success(\"Alarma Silenciada\")\r\n\t\t\tthis.dialogRef.close();\r\n\t\t})\r\n\t}\r\n\r\n\tubicarVehiculo(data) {\r\n\t\tthis.dialogRef.close();\r\n\t\tthis.mapaService.verVehiculo(data);\r\n\t}\r\n\r\n\tubicarPanel(data) {\r\n\t\tthis.dialogRef.close();\r\n\t\tthis.mapaService.verPanel(data);\r\n\t}\r\n\r\n\tpublic minimizarPopup() {\r\n\t\tthis.dialogRef.addPanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic maximizarPopup() {\r\n\t\tthis.dialogRef.removePanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic cerrarPopup() {\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n\r\n}\r\n","
\r\n\t\r\n\t\r\n\t\r\n\t\r\n\t
\r\n\t\t\r\n\t\t

Bóton Ciudadano

\r\n\t
\r\n\t\r\n
\r\n
\r\n\t
\r\n\t\t
\r\n\t\t\t

\r\n\t\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\r\n\t\t
\r\n\t
\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n \r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
","import { Component, OnInit } from '@angular/core';\r\nimport { PanelCiudadano } from '../../../../../_entities/panelCiudadano/panelCiudadano';\r\nimport { PanelAdministracionService } from '../../../../panel-vigilancia/services/panel-administracion.service';\r\nimport { MatDialog, MatDialogConfig, MatDialogRef } from '@angular/material';\r\nimport { MapaService } from '../../../services/mapa.service';\r\nimport { HistoricoPanelComponent } from '../../popups/paneles/historico-panel/historico-panel.component';\r\n\r\n@Component({\r\n selector: 'kt-boton-ciudadano',\r\n templateUrl: './boton-ciudadano.component.html',\r\n styleUrls: ['./boton-ciudadano.component.scss']\r\n})\r\nexport class BotonCiudadanoComponent implements OnInit {\r\n public paneles: PanelCiudadano[];\r\n\tpublic applyFilterTypes: any;\r\n\tpublic currentFilter: any;\r\n\tpublic showFilterRow: boolean;\r\n\tpublic showHeaderFilter: boolean;\r\n\t isDiabled: boolean = true;\r\n\tpublic datosReporte = [];\r\n\r\n constructor(private mapaService:MapaService,private panelService:PanelAdministracionService,public dialogRef: MatDialogRef,\r\n\t\tpublic dialog: MatDialog) { \r\n this.showFilterRow = true;\r\n this.showHeaderFilter = true;\r\n }\r\n\r\n ngOnInit(): void {\r\n this.obtenerPaneles();\r\n }\r\n\r\n obtenerPaneles(){\r\n this.panelService.obtenerPaneles().subscribe((result:PanelCiudadano[])=>{\r\n this.paneles = result;\r\n\r\n this.paneles.forEach(panel => {\r\n this.datosReporte.push({\r\n 'Nombre':panel.nombre,\r\n 'Modelo':panel.modelo,\r\n 'Número Seríe':panel.numeroSerie,\r\n 'Descripción':panel.descripcion,\r\n 'Nombre Contacto': panel.nombreContacto,\r\n 'Teléfono Contacto': panel.telefonoContacto,\r\n 'Código Protocolo': panel.codigoProtocolo\r\n });\r\n });\r\n if(this.datosReporte.length > 0) {\r\n this.isDiabled = false;\r\n }\r\n })\r\n }\r\n\r\n public minimizarPopup() {\r\n\t\tthis.dialogRef.addPanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic maximizarPopup() {\r\n\t\tthis.dialogRef.removePanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic cerrarPopup() {\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n\tubicarPuntoHistorico(data) {\r\n\t\tthis.mapaService.ocultarUbicadorPanelesLayer();\r\n\t\tthis.dialogRef.close();\r\n\t\tthis.mapaService.verPanel(data);\r\n\t}\r\n\r\n historicoPanel(data){\r\n const dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.autoFocus = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\t\tdialogConfig.hasBackdrop = false;\r\n\t\tdialogConfig.width = \"58%\";\r\n\t\tdialogConfig.data = data;\r\n\t\tthis.dialogRef.close();\r\n\t\tthis.dialog.open(HistoricoPanelComponent, dialogConfig);\r\n }\r\n\r\n}\r\n","
\r\n\t\r\n\t\r\n\t\r\n\t\r\n\t
\r\n\t\t\r\n\t\t

Usuarios

\r\n\t
\r\n\t\r\n
\r\n
\r\n\t
\r\n\t\t
\r\n\t\t\t
Clientes:
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\r\n\t\t
\r\n\t
\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n","import { Component, Inject, OnInit } from '@angular/core';\r\nimport { FiltroProductosService } from '../../../services/filtro-productos.service';\r\nimport { ClienteVM } from './../../../../../_entities/clientes/ClienteVM';\r\nimport { UsuarioVM } from './../../../../../_entities/usuarios/UsuarioVM';\r\nimport { FiltroProductos } from './../../../../../_entities/productos/filtro-productos';\r\nimport { MapaService } from '../../../services/mapa.service';\r\nimport { MatDialog, MatDialogRef, MAT_DIALOG_DATA } from '@angular/material';\r\nimport { finalize } from 'rxjs/operators';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { GPS, GSM } from './../../../../../_entities/estados';\r\n\r\n@Component({\r\n\tselector: 'kt-filtro-productos',\r\n\ttemplateUrl: './filtro-productos.component.html',\r\n\tstyleUrls: ['./filtro-productos.component.scss']\r\n})\r\nexport class FiltroProductosComponent implements OnInit {\r\n\tpublic clientes: ClienteVM[];\r\n\tpublic usuarios: UsuarioVM[];\r\n\tpublic usuariosSeleccionados = [];\r\n\tpublic activosDisponibles = [];\r\n\tpublic lectorasDisponibles = [];\r\n\tpublic medidoresDisponibles = [];\r\n\tpublic micromedidoresDisponibles = [];\r\n\tpublic telefonosDisponibles = [];\r\n\tpublic vehiculosDisponibles = [];\r\n\tpublic datosReporte = [];\r\n\tpublic productosGeneral = [];\r\n\tpublic isDisabled = true;\r\n\tpublic productosDisponibles = false;\r\n\tpublic idCliente;\r\n\r\n\tpublic currentFilter: any;\r\n\tpublic showFilterRow: boolean;\r\n\tpublic showHeaderFilter: boolean;\r\n\r\n\tconstructor(private filtroProductosService: FiltroProductosService,\r\n\t\tprivate mapaService: MapaService,\r\n\t\tprivate toastService: ToastrService,\r\n\t\tprivate dialogRef: MatDialogRef) {\r\n\t\tthis.showFilterRow = true;\r\n\t\tthis.showHeaderFilter = true;\r\n\t\tthis.orderHeaderFilter = this.orderHeaderFilter.bind(this);\r\n\t}\r\n\r\n\tngOnInit() {\r\n\t\tthis.obtenerClientes();\r\n\t}\r\n\r\n\tobtenerClientes() {\r\n\t\tthis.filtroProductosService.obtenerClientes().subscribe(\r\n\t\t\t(clientes: ClienteVM[]) => {\r\n\t\t\t\tthis.clientes = clientes;\r\n\t\t\t}, (error) => {\r\n\t\t\t\tconsole.log(error);\r\n\r\n\t\t\t}\r\n\t\t);\r\n\t}\r\n\r\n\tobtenerUsuariosCliente() {\r\n\t\tthis.filtroProductosService.obtenerUsuariosIdCliente(this.idCliente).subscribe(\r\n\t\t\t(usuarios: UsuarioVM[]) => {\r\n\t\t\t\tthis.usuarios = usuarios;\r\n\t\t\t\tusuarios.forEach(usuario => {\r\n\t\t\t\t\tthis.datosReporte.push({\r\n\t\t\t\t\t\t'Nombre': usuario.nombreCompleto,\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\r\n\t\t\t\tif (this.datosReporte.length > 0) {\r\n\t\t\t\t\tthis.isDisabled = false;\r\n\t\t\t\t}\r\n\t\t\t}, (error) => {\r\n\t\t\t\tconsole.log(error);\r\n\r\n\t\t\t}\r\n\t\t);\r\n\t}\r\n\r\n\tchangeValue(checked, usuario) {\r\n\t\tif (checked) {\r\n\t\t\tthis.usuariosSeleccionados.push(usuario.id);\r\n\t\t} else {\r\n\t\t\tthis.usuariosSeleccionados.splice(this.clientes.indexOf(usuario.id), 1);\r\n\t\t}\r\n\t}\r\n\r\n\tobtenerProductosUsuario() {\r\n\t\tthis.mapaService.usuariosFlitro = this.usuariosSeleccionados;\r\n\t\tthis.reiniciarArreglos();\r\n\t\tthis.mapaService.registroVehiculos = [];\r\n\t\tconst promise = new Promise((resolve, reject) => {\r\n\t\t\tthis.usuariosSeleccionados.forEach((usuario, index, array) => {\r\n\t\t\t\tthis.filtroProductosService.obtenerProductosIdUsuario(usuario).pipe(\r\n\t\t\t\t\tfinalize(\r\n\t\t\t\t\t\t() => {\r\n\t\t\t\t\t\t\tif (index === array.length - 1) {\r\n\t\t\t\t\t\t\t\tresolve(null);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t)\r\n\t\t\t\t).subscribe(\r\n\t\t\t\t\t(productos: any[]) => {\r\n\r\n\t\t\t\t\t\tif (productos.length > 0) {\r\n\t\t\t\t\t\t\tthis.mapaService.limpiarMapa();\r\n\t\t\t\t\t\t\tthis.mapaService.containerEtiquetas = false;\r\n\t\t\t\t\t\t\tthis.productosDisponibles = true;\r\n\t\t\t\t\t\t\tthis.mapaService.registroVehiculos = productos;\r\n\t\t\t\t\t\t\t//this.mapaService.limpiarDispositivos();\r\n\t\t\t\t\t\t\tproductos.forEach(producto => {\r\n\t\t\t\t\t\t\t\tswitch (producto.idProducto) {\r\n\t\t\t\t\t\t\t\t\tcase 2:\r\n\t\t\t\t\t\t\t\t\t\tthis.vehiculosDisponibles.push(producto);\r\n\t\t\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\t\t\tcase 3:\r\n\t\t\t\t\t\t\t\t\t\tif (producto.bateria == null || producto.bateria == '') {\r\n\t\t\t\t\t\t\t\t\t\t\tproducto.bateria = 'Sin Batería'\r\n\t\t\t\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\t\t\t\tproducto.bateria = producto.bateria + '%'\r\n\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\tconst alertaGSMA = GSM.find(gsm => producto.gsm == gsm.id);\r\n\t\t\t\t\t\t\t\t\t\tproducto.gsm = alertaGSMA.nombre;\r\n\t\t\t\t\t\t\t\t\t\ttry {\r\n\t\t\t\t\t\t\t\t\t\t\tconst alertaGPS = GPS.find(gps => producto.gps == gps.id);\r\n\t\t\t\t\t\t\t\t\t\t\tproducto.gps = alertaGPS.nombre;\r\n\t\t\t\t\t\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\t\t\t\t\t\tproducto.gps = 'Mala';\r\n\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\tthis.activosDisponibles.push(producto);\r\n\t\t\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\t\t\tcase 4:\r\n\t\t\t\t\t\t\t\t\t\tif (producto.bateria == null || producto.bateria == '') {\r\n\t\t\t\t\t\t\t\t\t\t\tproducto.bateria = 'Sin Batería'\r\n\t\t\t\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\t\t\t\tproducto.bateria = producto.bateria + '%'\r\n\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\tconst alertaGSMT = GSM.find(gsm => producto.gsm == gsm.id);\r\n\t\t\t\t\t\t\t\t\t\tproducto.gsm = alertaGSMT.nombre;\r\n\t\t\t\t\t\t\t\t\t\ttry {\r\n\t\t\t\t\t\t\t\t\t\t\tconst alertaGPS = GPS.find(gps => producto.gps == gps.id);\r\n\t\t\t\t\t\t\t\t\t\t\tproducto.gps = alertaGPS.nombre;\r\n\t\t\t\t\t\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\t\t\t\t\t\tproducto.gps = 'Mala';\r\n\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\tswitch (producto.estatus) {\r\n\t\t\t\t\t\t\t\t\t\t\tcase 0:\r\n\t\t\t\t\t\t\t\t\t\t\t\tproducto.estatus = 'Inactivo';\r\n\t\t\t\t\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\t\t\t\t\tcase 1:\r\n\t\t\t\t\t\t\t\t\t\t\t\tproducto.estatus = 'Activo';\r\n\t\t\t\t\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\t\t\t\t\tdefault:\r\n\t\t\t\t\t\t\t\t\t\t\t\tproducto.estatus = 'Sin datos';\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\tthis.telefonosDisponibles.push(producto);\r\n\t\t\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\t\t\tcase 5:\r\n\t\t\t\t\t\t\t\t\t\tthis.medidoresDisponibles.push(producto);\r\n\t\t\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\t\t\tcase 6:\r\n\t\t\t\t\t\t\t\t\t\tthis.micromedidoresDisponibles.push(producto);\r\n\t\t\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\t\t\tcase 7:\r\n\t\t\t\t\t\t\t\t\t\tthis.lectorasDisponibles.push(producto);\r\n\t\t\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\t\t\tdefault:\r\n\t\t\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tthis.toastService.warning('Sin productos disponibles', 'Información');\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}, (error) => {\r\n\t\t\t\t\t\tconsole.log(error);\r\n\t\t\t\t\t}\r\n\t\t\t\t)\r\n\t\t\t});\r\n\t\t});\r\n\r\n\t\tpromise.then(() => {\r\n\t\t\tif (this.productosDisponibles) {\r\n\t\t\t\tthis.mapaService.sonProductosFiltrados = true;\r\n\t\t\t\tthis.mapaService.clusterActivo = false;\r\n\t\t\t\tthis.mapaService.pintarMarcadoresPuntoInteres();\r\n\t\t\t\tthis.pintarProductos();\r\n\t\t\t\tthis.mapaService.mostrarParaSiempre();\r\n\t\t\t\tthis.mapaService.regresarMapa();\r\n\t\t\t}\r\n\t\t\tthis.dialogRef.close();\r\n\t\t});\r\n\t}\r\n\r\n\tpintarProductos() {\r\n\t\tif (this.activosDisponibles.length > 0) {\r\n\t\t\tconsole.log(this.activosDisponibles);\r\n\r\n\t\t\tthis.mapaService.activosDisponibles = this.activosDisponibles;\r\n\t\t\tthis.mapaService.pintarClusterActivos();\r\n\t\t\tthis.mapaService.pintarMarcadoresActivos();\r\n\t\t\tthis.mapaService.ocultarClusterActivo();\r\n\t\t}\r\n\r\n\t\tif (this.lectorasDisponibles.length > 0) {\r\n\t\t\tthis.mapaService.lectorasDisponibles = this.lectorasDisponibles;\r\n\t\t\tthis.mapaService.pintarClusterLectoras();\r\n\t\t\tthis.mapaService.ocultarClusterLectoras();\r\n\t\t\tthis.mapaService.pintarMarcadoresLectoras();\r\n\t\t}\r\n\r\n\t\tif (this.medidoresDisponibles.length > 0) {\r\n\t\t\tthis.mapaService.medidoresDisponibles = this.medidoresDisponibles;\r\n\t\t\tthis.mapaService.pintarClusterMedidores();\r\n\t\t\tthis.mapaService.ocultarClusterMedidores();\r\n\t\t\tthis.mapaService.pintarMarcadoresMedidores();\r\n\t\t}\r\n\r\n\t\tif (this.micromedidoresDisponibles.length > 0) {\r\n\t\t\tthis.mapaService.micromedidoresDisponibles = this.micromedidoresDisponibles;\r\n\t\t\tthis.mapaService.pintarClusterMicromedidores();\r\n\t\t\tthis.mapaService.ocultarClusterMicromedidores();\r\n\t\t\tthis.mapaService.pintarMarcadoresMicromedidores();\r\n\t\t}\r\n\r\n\t\tif (this.telefonosDisponibles.length > 0) {\r\n\t\t\tthis.mapaService.telefonosDisponibles = this.telefonosDisponibles;\r\n\t\t\tthis.mapaService.pintarClusterTelefonos();\r\n\t\t\tthis.mapaService.ocultarClusterTelefonos();\r\n\t\t\tthis.mapaService.pintarMarcadoresTelefonos();\r\n\t\t}\r\n\r\n\t\tif (this.vehiculosDisponibles.length > 0) {\r\n\t\t\tthis.mapaService.vehiculosDisponibles = this.vehiculosDisponibles;\r\n\t\t\tthis.mapaService.pintarClusterVehiculos();\r\n\t\t\tthis.mapaService.ocultarClusterVehiculos();\r\n\t\t\tthis.mapaService.pintarMarcadoresVehiculos();\r\n\t\t}\r\n\t}\r\n\r\n\treiniciarArreglos() {\r\n\t\tthis.activosDisponibles = [];\r\n\t\tthis.lectorasDisponibles = [];\r\n\t\tthis.medidoresDisponibles = [];\r\n\t\tthis.micromedidoresDisponibles = [];\r\n\t\tthis.telefonosDisponibles = [];\r\n\t\tthis.vehiculosDisponibles = [];\r\n\t}\r\n\r\n\torderHeaderFilter(data) {\r\n\t\tdata.dataSource.postProcess = (results) => {\r\n\t\t\tresults.push({\r\n\t\t\t\ttext: \"Weekends\",\r\n\t\t\t\tvalue: \"weekends\"\r\n\t\t\t});\r\n\t\t\treturn results;\r\n\t\t};\r\n\t}\r\n\r\n\tpublic minimizarPopup() {\r\n\t\tthis.dialogRef.addPanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic maximizarPopup() {\r\n\t\tthis.dialogRef.removePanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic cerrarPopup() {\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n\r\n}\r\n","
\r\n\t\r\n\t\r\n\t\r\n\t
\r\n\t\t\r\n\t\t

{{titulo}}

\r\n\t
\r\n\t\r\n
\r\n
\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\tNombre \r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\tCampo Requerido\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n
\r\n \r\n  \r\n\t\t\t\t\r\n\t\t\t\r\n
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n\r\n
\r\n\t
\r\n\t\t\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n \r\n \r\n \r\n \r\n
\r\n\t\t\t\t\t\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n\r\n","import { Categorias } from './../../../../../../_entities/geocerca/Categorias';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { FormGroup, FormBuilder, Validators } from '@angular/forms';\r\nimport { MatDialogRef } from '@angular/material';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { CategoriasService } from '../../../../services/categorias.service';\r\n\r\n@Component({\r\n selector: 'kt-categorias',\r\n templateUrl: './categorias.component.html',\r\n styleUrls: ['./categorias.component.scss']\r\n})\r\nexport class CategoriasComponent implements OnInit {\r\n public titulo = ' Categorías Geocerca';\r\n public catForm: FormGroup;\r\n public showFilterRow: boolean;\r\n public showHeaderFilter: boolean;\r\n public categoriasDataSource: any;\r\n\tpublic datosReporte = [];\r\n\r\n constructor(private fb: FormBuilder, public dialogRef: MatDialogRef, private toast: ToastrService, private categoriaService: CategoriasService) {\r\n this.showFilterRow = true;\r\n this.showHeaderFilter = true;\r\n }\r\n\r\n ngOnInit() {\r\n this.initForm();\r\n this.obtenerCategorias();\r\n }\r\n\r\n initForm() {\r\n this.catForm = this.fb.group({\r\n id: [0],\r\n nombre: ['',[Validators.required]]\r\n })\r\n }\r\n\r\n /**Agregar categorías */\r\n agregarCategorias(){\r\n this.categoriaService.agregarCategoria(this.catForm.value).subscribe(result=>{\r\n this.toast.success(\"Categoría Registrada\")\r\n this.obtenerCategorias();\r\n this.initForm();\r\n },err=>{\r\n this.toast.error(\"No se pudo registrar la categoría\")\r\n })\r\n }\r\n\r\n actualizarCategoria(){\r\n this.categoriaService.actualizarCategoria(this.catForm.value).subscribe(result=>{\r\n this.toast.success(\"Categoría Actualizada\")\r\n this.obtenerCategorias();\r\n this.initForm();\r\n },err=>{\r\n this.toast.error(\"No se pudo actualizar la categoría\")\r\n })\r\n }\r\n\r\n /**Obtener Categorías */\r\n obtenerCategorias() {\r\n this.categoriaService.obtenerCategorias().subscribe((result: Categorias[]) => {\r\n this.categoriasDataSource = result;\r\n this.categoriasDataSource.forEach(geocerca => {\r\n\t\t\t\tthis.datosReporte.push({\r\n\t\t\t\t\t'Nombre': geocerca.nombre,\r\n\t\t\t\t});\r\n\t\t\t});\r\n\r\n })\r\n }\r\n\r\n\r\n /**Eliminar Categorías */\r\n eliminarCategoria(id) {\r\n this.categoriaService.eliminarCategoria(id).subscribe(() => {\r\n this.toast.success(\"Categoría Eliminada\");\r\n this.obtenerCategorias();\r\n }, err => {\r\n this.toast.error(\"No se pudo eliminar la categoría\")\r\n })\r\n }\r\n /**Obtener categoria por ID */\r\n obtenerCategoriaId(id) {\r\n this.categoriaService.obtenerCategoriaId(id).subscribe((result: Categorias) => {\r\n this.catForm.patchValue(result);\r\n })\r\n }\r\n\r\n \r\n\tpublic minimizarPopup() {\r\n\t\tthis.dialogRef.addPanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic maximizarPopup() {\r\n\t\tthis.dialogRef.removePanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic cerrarPopup() {\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n}\r\n","
\r\n\t\r\n\t\r\n\t\r\n\t\r\n\t
\r\n\t\t\r\n\t\t

Geocercas

\r\n\t
\r\n\t\r\n
\r\n
\r\n\t
\r\n\t\t
\r\n\t\t\t

\r\n\t\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\r\n\t\t
\r\n\t
\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n\t
\r\n\t\t
\r\n\t\t\t

\r\n\t\t
\r\n\t\t
\r\n\t\t\t \r\n\t\t\t\t \r\n\r\n\t\t
\r\n\t
\r\n
\r\n","import { Permiso } from './../../../../../../_entities/Enums/permiso.enum';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { GeocercasService } from './../../../../services/geocercas.service';\r\nimport { MapaService } from './../../../../services/mapa.service';\r\nimport { MatDialog, MatDialogRef } from '@angular/material';\r\nimport { Component, OnInit, ElementRef, ViewChild } from '@angular/core';\r\nimport Swal from 'sweetalert2';\r\nimport { CategoriasComponent } from '../categorias/categorias.component';\r\n\r\n\r\n@Component({\r\n\tselector: 'kt-geocerca-modal',\r\n\ttemplateUrl: './geocerca-modal.component.html',\r\n\tstyleUrls: ['./geocerca-modal.component.scss']\r\n})\r\nexport class GeocercaModalComponent implements OnInit {\r\n\t@ViewChild('gridContainer', { static: false }) gridContainer: ElementRef;\r\n\tpublic geoCercas: any[];\r\n\tpublic showFilterRow: boolean;\r\n\tpublic showHeaderFilter: boolean;\r\n\tpublic currentFilter: any;\r\n\tpublic permisoConsultarGeocercas: string;\r\n\tpublic permisoAgregarGeocerca: string;\r\n\tpublic permisoActualizarGeocerca: string;\r\n\tpublic permisoEliminarGeocerca: string;\r\n\tpublic permisoCategoriaGeocerca:string;\r\n\t isDisabled: boolean = true;\r\n\tpublic datosReporte = [];\r\n\r\n\tpublic header = 'Descripción';\r\n\r\n\r\n\tconstructor(public dialogRef: MatDialogRef,\r\n\t\tprivate mapaServicio: MapaService,\r\n\t\tprivate geoService: GeocercasService,\r\n\t\tprivate toastr: ToastrService,\r\n\t\tprivate dialog:MatDialog) {\r\n\t\tthis.showFilterRow = true;\r\n\t\tthis.showHeaderFilter = true;\r\n\r\n\t}\r\n\r\n\tasync ngOnInit() {\r\n\t\tconsole.log('´´');\r\n\r\n\t\tawait this.obtenerGeoCercas();\r\n\t\tthis.obtenerPermisoGeoCercas();\r\n\t}\r\n\r\n\tdevExtreme() {\r\n\t}\r\n\r\n\tagregar() {\r\n\t\tthis.dialogRef.close();\r\n\t\tthis.mapaServicio.agregarGeoCerca();\r\n\t}\r\n\r\n\r\n\tobtenerGeoCercas() {\r\n\t\tthis.geoService.getGeoCercas().subscribe((res: any[]) => {\r\n\t\t\tthis.geoCercas = res;\r\n\t\t\tthis.geoCercas.forEach(geocerca => {\r\n\t\t\t\tif(geocerca.descripcion == 'NA'){\r\n\t\t\t\t\tgeocerca.descripcion = geocerca.categoriaNombre;\r\n\t\t\t\t\tthis.header = 'Categoría';\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.datosReporte.push({\r\n\t\t\t\t\t'Nombre': geocerca.nombre,\r\n\t\t\t\t\t'Descripción': geocerca.descripcion\r\n\t\t\t\t});\r\n\t\t\t});\r\n\t\t\tif (this.datosReporte.length > 0) {\r\n\t\t\t\tthis.isDisabled = false;\r\n\t\t\t}\r\n\t\t}, err => {\r\n\t\t\tthis.toastr.error('Error', err)\r\n\t\t});\r\n\t}\r\n\r\n\tverGoeCerca(data: any) {\r\n\t\tthis.mapaServicio.ubicarGeocerca(data);\r\n\t}\r\n\r\n\teliminarGoeCerca(data: any) {\r\n\t\tSwal.fire({\r\n\t\t\ttitle: 'Eliminar',\r\n\t\t\ttext: `¿Está seguro que desea eliminar la geocerca ${data.nombre}?`,\r\n\t\t\ticon: 'warning',\r\n\t\t\tshowCancelButton: true,\r\n\t\t\tconfirmButtonColor: '#3085d6',\r\n\t\t\tcancelButtonColor: '#d33',\r\n\t\t\tconfirmButtonText: 'Confirmar',\r\n\t\t\tcancelButtonText: \"Cancelar\"\r\n\t\t}).then((result) => {\r\n\t\t\tif (result.value) {\r\n\t\t\t\tthis.geoService.deleteGeoCerca(data.id).subscribe(() => {\r\n\t\t\t\t\tSwal.fire(\r\n\t\t\t\t\t\t'Eliminado!',\r\n\t\t\t\t\t\t'La geocerca ha sido eliminada.',\r\n\t\t\t\t\t\t'success'\r\n\t\t\t\t\t).then((resultok) => { if (resultok.value) location.reload(); });\r\n\t\t\t\t}, err => {\r\n\t\t\t\t\tSwal.fire(\r\n\t\t\t\t\t\t'Ops!',\r\n\t\t\t\t\t\t'Error al intentar eliminar la geocerca.',\r\n\t\t\t\t\t\t'error'\r\n\t\t\t\t\t);\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t})\r\n\r\n\t}\r\n\r\n\tupdateGoeCerca(data: any) {\r\n\t\tthis.mapaServicio.ubicarGeocerca(data);\r\n\t\tthis.mapaServicio.updateGeocerca();\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n\r\n\tpublic minimizarPopup() {\r\n\t\tthis.dialogRef.addPanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic maximizarPopup() {\r\n\t\tthis.dialogRef.removePanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic cerrarPopup() {\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n\r\n\t/**Obtener permisos de geocercas */\r\n\tpublic get Permiso() {\r\n\t\treturn Permiso;\r\n\t}\r\n\r\n\tobtenerPermisoGeoCercas() {\r\n\t\tthis.permisoConsultarGeocercas = Permiso.VisualizarGeocercas;\r\n\t\tthis.permisoAgregarGeocerca = Permiso.AgregarGeocerca;\r\n\t\tthis.permisoActualizarGeocerca = Permiso.ActualizarGeocerca;\r\n\t\tthis.permisoEliminarGeocerca = Permiso.EliminarGeocerca;\r\n\t\tthis.permisoCategoriaGeocerca = Permiso.CategoriasGeocerca;\r\n\t}\r\n\r\n\r\n\tabrirModalCategoria(){\r\n\t\tthis.dialog.open(CategoriasComponent).afterClosed().subscribe(result=>{\r\n\t\t\tthis.obtenerGeoCercas();\r\n\t\t })\r\n\t}\r\n}\r\n","
\r\n\t\r\n\t\r\n\t\r\n\t\r\n\t
\r\n\t\t\r\n\t\t

{{titulo}}

\r\n\t
\r\n\t\r\n
\r\n
\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\tCampo requerido\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\tCategorias\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{{categoria.nombre}}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t \r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n
\r\n\t
\r\n\t\t\r\n\t\t\t
\r\n\t\t\t\t

Activos

\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n\t
\r\n\t\t\r\n\t\t\t
\r\n\t\t\t\t

Vehículos

\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n\t
\r\n\t\t\r\n\t\t\t
\r\n\t\t\t\t

Teléfonos

\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n\t
\r\n\t\t\r\n\t\t\t
\r\n\t\t\t\t

Micromedidores

\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n\t
\r\n\t\t\r\n\t\t\t
\r\n\t\t\t\t

Medidores

\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n","import { Telefono } from './../../../../../../_entities/telefonos/telefono';\r\nimport { Micromedidor } from './../../../../../../_entities/micromedidores/micromedidor';\r\nimport { Medidores } from './../../../../../../_entities/medidores/Medidores';\r\nimport { TelefonosService } from './../../../../services/telefonos.service';\r\nimport { MicromedidoresService } from './../../../../services/micromedidores.service';\r\nimport { MedidoresService } from './../../../../services/medidores.service';\r\nimport { async } from '@angular/core/testing';\r\nimport { Permiso } from './../../../../../../_entities/Enums/permiso.enum';\r\nimport { Activo } from './../../../../../../_entities/activos/activo';\r\nimport { ActivosService } from './../../../../services/activos.service';\r\nimport { MatDialogRef } from '@angular/material';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { GeocercasService } from './../../../../services/geocercas.service';\r\nimport { VehiculosService } from './../../../../services/vehiculos.service';\r\nimport { MapaService } from './../../../../services/mapa.service';\r\nimport { Autos } from './../../../../../../_entities/autos/Autos';\r\nimport { FormGroup, FormBuilder, Validators } from '@angular/forms';\r\nimport { SelectionModel } from '@angular/cdk/collections';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { AuthService } from './../../../../../auth/auth.service';\r\nimport {Categorias} from '../../../../../../_entities/geocerca/Categorias';\r\n@Component({\r\n\tselector: 'kt-guardar-geocerca',\r\n\ttemplateUrl: './guardar-geocerca.component.html',\r\n\tstyleUrls: ['./guardar-geocerca.component.scss']\r\n})\r\nexport class GuardarGeocercaComponent implements OnInit {\r\n\r\n\tpublic permisoVisualizarVehiculos: string;\r\n\tpublic permisoVisualizarActivos: string;\r\n\tpublic permisoVisualizarMedidores: string;\r\n\tpublic permisoVisualizarMicromedidores: string;\r\n\tpublic permisoVisualizarTelefonos: string;\r\n\r\n\tpublic categorias;\r\n\tpublic over: string = '*';\r\n\tpublic esCasaLey: boolean = false;\r\n\tpublic geoJson: any;\r\n\tpublic geoJson4326: any;\r\n\tpublic selection = new SelectionModel(true, []);\r\n\tpublic geoForm: FormGroup;\r\n\tpublic displayedColumns: string[] = ['id'];\r\n\tpublic vehiculosDataSource: any;\r\n\tpublic activosDataSource: any;\r\n\tpublic medidoresDataSource: any;\r\n\tpublic micromedidoresDataSource: any;\r\n\tpublic telefonosDataSource: any;\r\n\tpublic dataFeature: any;\r\n\tpublic eventoAPI = 'POST';\r\n\tpublic titulo = 'Agregar Geocerca';\r\n\tpublic elementos = [];\r\n\tpublic showFilterRow: boolean;\r\n\tpublic showHeaderFilter: boolean;\r\n\tpublic HWuser;\r\n\r\n\tconstructor(private mapaServicio: MapaService,\r\n\t\tprivate authService: AuthService,\r\n\t\tprivate fb: FormBuilder,\r\n\t\tprivate serviceAuto: VehiculosService,\r\n\t\tprivate activosService: ActivosService,\r\n\t\tprivate medidoresService: MedidoresService,\r\n\t\tprivate micromedidoresService: MicromedidoresService,\r\n\t\tprivate telefonosService: TelefonosService,\r\n\t\tprivate geoService: GeocercasService,\r\n\t\tprivate toastr: ToastrService,\r\n\t\tpublic dialogRef: MatDialogRef) {\r\n\t\tthis.showFilterRow = true;\r\n\t\tthis.showHeaderFilter = true;\r\n\t}\r\n\r\n\tasync ngOnInit() {\r\n\t\tthis.HWuser = this.authService.getHWUser();\r\n\t\tlet user = this.authService.getUser();\r\n\r\n\t\tif(user.id == '74bc5a50-65cd-4fa3-9a68-99886b468b6b') {\r\n\t\t\tthis.esCasaLey = true;\r\n\t\t\tthis.obtenerCategorias();\r\n\t\t} else {\r\n\t\t\tthis.inicializarFormularios();\r\n\t\t}\r\n\r\n\t\tthis.obtenerPermisos();\r\n\t\tthis.geoJson = this.mapaServicio.nuevaGeoCerca;\r\n\t\tthis.geoJson4326 = this.mapaServicio.nuevaGeoCerca4326;\r\n\t\tthis.dataFeature = this.mapaServicio.dataFeature;\r\n\r\n\t\tif (this.dataFeature != undefined) {\r\n\t\t\tthis.eventoAPI = 'PUT';\r\n\t\t\tthis.titulo = 'Guardar Geocerca';\r\n\t\t}\r\n\r\n\t\tthis.inicializarFormularios();\r\n\r\n\t\tawait this.obtenerAutos().then(() => {});\r\n\t\tawait this.obtenerActivos().then(() => { });\r\n\t\tawait this.obtenerMedidores().then(() => { });\r\n\t\tawait this.obtenerMicromedidores().then(() => { });\r\n\t\tawait this.obtenerTelefonos().then(() => { });\r\n\r\n\t\tthis.dialogRef.afterClosed().subscribe(() => {\r\n\t\t\tthis.mapaServicio.mostrarVehiculos();\r\n\t\t});\r\n\t}\r\n\r\n\tinicializarFormularios() {\r\n\t\tif (this.eventoAPI == 'PUT') {\r\n\t\t\tthis.updateForm();\r\n\t\t} else if (this.eventoAPI == 'POST') {\r\n\t\t\tthis.initForm();\r\n\t\t}\r\n\t}\r\n\r\n\tpublic initForm() {\r\n\t\tthis.mapaServicio.esGeocerca = false;\r\n\t\tthis.geoForm = this.fb.group(\r\n\t\t\t{\r\n\t\t\t\tnombre: ['', Validators.compose([\r\n\t\t\t\t\tValidators.required,\r\n\t\t\t\t\tValidators.minLength(1),\r\n\t\t\t\t\tValidators.maxLength(100)\r\n\t\t\t\t])],\r\n\t\t\t\tdescripcion: [''],\r\n\t\t\t\tIdCategoriaGeo:[''],\r\n\t\t\t\tgeoJSON: [this.geoJson],\r\n\t\t\t\tgeoJSON4326: [this.geoJson4326],\r\n\t\t\t\tvehiculos: [this.elementos]\r\n\t\t\t}\r\n\t\t);\r\n\t}\r\n\r\n\tupdateForm() {\r\n\t\tthis.elementos = this.dataFeature.vehiculos;\r\n\t\tthis.geoForm = this.fb.group(\r\n\t\t\t{\r\n\t\t\t\tnombre: [this.dataFeature.nombre],\r\n\t\t\t\tdescripcion: [this.dataFeature.descripcion],\r\n\t\t\t\tIdCategoriaGeo : [''],\r\n\t\t\t\tgeoJSON: [this.geoJson],\r\n\t\t\t\tgeoJSON4326: [this.geoJson4326],\r\n\t\t\t\tvehiculos: [this.elementos]\r\n\t\t\t}\r\n\t\t);\r\n\t}\r\n\r\n\r\n\tobtenerCategorias() {\r\n\t\tthis.geoService.obtenerCategorias().subscribe(\r\n\t\t\t(categorias: Categorias[]) => {\r\n\t\t\t\tthis.categorias = categorias;\r\n\t\t\t}\r\n\t\t)\r\n\t}\r\n\r\n\tpublic async obtenerAutos() {\r\n\t\t/*let token = '';\r\n\t\tif(this.HWuser) {\r\n\t\t\ttoken = this.HWuser.token\r\n\t\t}*/\r\n\t\tthis.serviceAuto.obtenerAutos().subscribe(\r\n\t\t\t(datosAuto: Autos[]) => {\r\n\t\t\t\tthis.vehiculosDataSource = datosAuto;\r\n\t\t\t}, err => {\r\n\t\t\t\tconsole.log(err);\r\n\t\t\t}\r\n\t\t);\r\n\t}\r\n\r\n\tpublic async obtenerActivos() {\r\n\t\tthis.activosService.obtenerActivos().subscribe(\r\n\t\t\t(activos: Activo[]) => {\r\n\t\t\t\tthis.activosDataSource = activos;\r\n\t\t\t}, err => {\r\n\t\t\t\tconsole.log(err);\r\n\t\t\t}\r\n\t\t);\r\n\t}\r\n\r\n\tpublic async obtenerMedidores() {\r\n\t\tthis.medidoresService.obtenerMedidores().subscribe(\r\n\t\t\t(medidores: Medidores[]) => {\r\n\t\t\t\tthis.medidoresDataSource = medidores;\r\n\t\t\t}, (error) => {\r\n\t\t\t\tconsole.log(error);\r\n\t\t\t}\r\n\t\t)\r\n\t}\r\n\r\n\tpublic async obtenerMicromedidores() {\r\n\t\tthis.micromedidoresService.obtenerMicromedidores().subscribe(\r\n\t\t\t(micromedidores: Micromedidor[]) => {\r\n\t\t\t\tthis.micromedidoresDataSource = micromedidores;\r\n\t\t\t}, (error) => {\r\n\t\t\t\tconsole.log(error);\r\n\t\t\t}\r\n\t\t)\r\n\t}\r\n\r\n\tpublic async obtenerTelefonos() {\r\n\t\tthis.telefonosService.obtenerTelefonos().subscribe(\r\n\t\t\t(telefonos: Telefono[]) => {\r\n\t\t\t\tthis.telefonosDataSource = telefonos;\r\n\t\t\t}, (error) => {\r\n\t\t\t\tconsole.log(error);\r\n\t\t\t}\r\n\t\t)\r\n\t}\r\n\r\n\tonSubmit() {\r\n\t\tif (this.geoForm.valid) {\r\n\t\t\tif (this.eventoAPI == 'POST') {\r\n\t\t\t\tthis.geoService.postGeoCerca(this.geoForm.value).subscribe(success => {\r\n\t\t\t\t\tthis.toastr.success('Se guardaron los datos', 'Éxito');\r\n\t\t\t\t\tthis.resetForm();\r\n\t\t\t\t\tthis.mapaServicio.mostrarVehiculos();\r\n\t\t\t\t\tlocation.reload()\r\n\t\t\t\t\tthis.dialogRef.close();\r\n\t\t\t\t}, err => {\r\n\t\t\t\t\tif (this.elementos.length == 0) {\r\n\t\t\t\t\t\tthis.toastr.error('Se necesita al menos registrar un dato', 'Error')\r\n\t\t\t\t\t}\r\n\t\t\t\t\tthis.toastr.error('' + err, 'Error');\r\n\t\t\t\t\t//this.dialogRef.close();\r\n\t\t\t\t});\r\n\t\t\t} else if (this.eventoAPI == 'PUT') {\r\n\t\t\t\tthis.geoService.putGeoCerca(this.geoForm.value, this.dataFeature.id).subscribe(success => {\r\n\t\t\t\t\tthis.toastr.success('Se guardaron los datos', 'Éxito');\r\n\t\t\t\t\tthis.resetForm();\r\n\t\t\t\t\tthis.mapaServicio.mostrarVehiculos();\r\n\t\t\t\t\tthis.dialogRef.close();\r\n\t\t\t\t\tlocation.reload()\r\n\t\t\t\t}, err => {\r\n\t\t\t\t\tif (this.elementos.length == 0) {\r\n\t\t\t\t\t\tthis.toastr.error('Se necesita al menos registrar un dato', 'Error')\r\n\t\t\t\t\t}\r\n\t\t\t\t\tthis.toastr.error('' + err, 'Error')\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\tthis.toastr.error('Faltan campos requeridos por llenar')\r\n\t\t}\r\n\r\n\t}\r\n\r\n\tpublic async agregarElemento(id: number) {\r\n\t\tif (this.elementos.includes(id)) {\r\n\t\t\tlet idx = this.elementos.findIndex(x => x == id);\r\n\t\t\tthis.elementos.splice(idx, 1);\r\n\t\t} else {\r\n\t\t\tthis.elementos.push(id);\r\n\t\t}\r\n\t}\r\n\r\n\ttoggleCheckBox(elementId) {\r\n\t\treturn (this.elementos.findIndex(x => x == elementId) == -1) ? false : true;\r\n\t}\r\n\r\n\r\n\tresetForm() {\r\n\t\tthis.geoForm = this.fb.group(\r\n\t\t\t{\r\n\t\t\t\tnombre: [''\r\n\t\t\t\t],\r\n\t\t\t\tdescripcion: [''\r\n\t\t\t\t],\r\n\t\t\t\tgeoJSON: [[]],\r\n\t\t\t\tvehiculos: [[]]\r\n\t\t\t}\r\n\t\t);\r\n\t}\r\n\r\n\tpublic minimizarPopup() {\r\n\t\tthis.dialogRef.addPanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic maximizarPopup() {\r\n\t\tthis.dialogRef.removePanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic cerrarPopup() {\r\n\t\tthis.mapaServicio.mostrarVehiculos();\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n\r\n\tpublic get Permiso() {\r\n\t\treturn Permiso;\r\n\t}\r\n\r\n\tobtenerPermisos() {\r\n\t\tthis.permisoVisualizarActivos = Permiso.ConsultarActivo;\r\n\t\tthis.permisoVisualizarVehiculos = Permiso.VisualizarVehiculos;\r\n\t\tthis.permisoVisualizarMedidores = Permiso.VisualizarMedidores;\r\n\t\tthis.permisoVisualizarMicromedidores = Permiso.ConsultarMicromedidor;\r\n\t\tthis.permisoVisualizarTelefonos = Permiso.ConsultarTelefono;\r\n\t}\r\n\r\n}\r\n","
\r\n\t\r\n\t\r\n\t\r\n\t\r\n\t
\r\n\t\t\r\n\t\t

Macromedidores

\r\n\t
\r\n\t\r\n
\r\n
\r\n\t
\r\n\t\t
\r\n\t\t\t

\r\n\t\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\r\n\t\t
\r\n\t
\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n","import { HistoricoPosicionesMedidorComponent } from './../../../popups/medidores/historico-posiciones-medidor/historico-posiciones-medidor.component';\r\nimport { MedidoresService } from './../../../../services/medidores.service';\r\nimport { MatDialog, MatDialogRef, MatDialogConfig } from '@angular/material';\r\nimport { MapaService } from './../../../../services/mapa.service';\r\nimport { Medidores } from './../../../../../../_entities/medidores/Medidores';\r\nimport { DxDataGridComponent } from 'devextreme-angular';\r\nimport { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { toUpper } from 'lodash';\r\n\r\n@Component({\r\n\tselector: 'kt-medidor-modal',\r\n\ttemplateUrl: './medidor-modal.component.html',\r\n\tstyleUrls: ['./medidor-modal.component.scss']\r\n})\r\nexport class MedidorModalComponent implements OnInit {\r\n\t@ViewChild(DxDataGridComponent, { static: false }) dataGrid: DxDataGridComponent\r\n\tapplyFilterTypes: any;\r\n\tcurrentFilter: any;\r\n\tshowFilterRow: boolean;\r\n\tshowHeaderFilter: boolean;\r\n\tusuario;\r\n\tmedidores: Medidores[];\r\n\tpublic datosReporte = [];\r\n\tpublic isDisabled: boolean = true;\r\n\t//user = this.auth.getUser();\r\n\r\n\tconstructor(private medidoresService: MedidoresService,\r\n\t\tprivate dialogRef: MatDialogRef,\r\n\t\t//private auth: AuthService,\r\n\t\tprivate dialog: MatDialog,\r\n\t\tprivate mapaService: MapaService) {\r\n\t\tthis.showFilterRow = true;\r\n\t\tthis.showHeaderFilter = true;\r\n\t\tthis.orderHeaderFilter = this.orderHeaderFilter.bind(this);\r\n\t}\r\n\r\n\tngOnInit() {\r\n\t\tthis.obtenerListaMedidores()\r\n\t}\r\n\r\n\tobtenerListaMedidores() {\r\n\t\tthis.medidoresService.obtenerMedidores().subscribe(\r\n\t\t\t(medidores: Medidores[]) => {\r\n\t\t\t\tmedidores.map(function (medidor) {\r\n\t\t\t\t\tif (medidor.estatus === 1) {\r\n\t\t\t\t\t\tmedidor.estatus = ' Activo'\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tmedidor.estatus = 'Inactivo'\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t\tthis.medidores = medidores;\r\n\r\n\t\t\t\tthis.medidores.forEach(medidor => {\r\n\t\t\t\t\tthis.datosReporte.push({\r\n\t\t\t\t\t\t'Descripción': medidor.descripcion,\r\n\t\t\t\t\t\t'IMEI': medidor.imei.toString(),\r\n\t\t\t\t\t\t'Estatus': medidor.estatus,\r\n\t\t\t\t\t\t'Modelo': medidor.modelo,\r\n\t\t\t\t\t\t'Cliente': medidor.cliente\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\r\n\t\t\t\tif (this.datosReporte.length > 0) {\r\n\t\t\t\t\tthis.isDisabled = false;\r\n\t\t\t\t}\r\n\r\n\t\t\t}, (error) => {\r\n\t\t\t\tconsole.error(error);\r\n\r\n\t\t\t}\r\n\t\t)\r\n\t}\r\n\r\n\treportePosiciones(data: any) {\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.autoFocus = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\t\tdialogConfig.hasBackdrop = false;\r\n\t\tdialogConfig.width = \"58%\";\r\n\t\tdialogConfig.data = data;\r\n\t\tthis.dialogRef.close();\r\n\t\tthis.dialog.open(HistoricoPosicionesMedidorComponent, dialogConfig);\r\n\t}\r\n\r\n\tprivate static getOrderDay(rowData) {\r\n\t\treturn (new Date(rowData.OrderDate)).getDay();\r\n\t}\r\n\r\n\tcalculateFilterExpression(value, selectedFilterOperations, target) {\r\n\t\tlet column = this as any;\r\n\t\tif (target === \"headerFilter\" && value === \"weekends\") {\r\n\t\t\treturn [[MedidorModalComponent.getOrderDay, \"=\", 0], \"or\", [MedidorModalComponent.getOrderDay, \"=\", 6]];\r\n\t\t}\r\n\t\treturn column.defaultCalculateFilterExpression.apply(this, arguments);\r\n\t}\r\n\r\n\tclearFilter() {\r\n\t\tthis.dataGrid.instance.clearFilter();\r\n\t}\r\n\r\n\torderHeaderFilter(data) {\r\n\t\tdata.dataSource.postProcess = (results) => {\r\n\t\t\tresults.push({\r\n\t\t\t\ttext: \"Weekends\",\r\n\t\t\t\tvalue: \"weekends\"\r\n\t\t\t});\r\n\t\t\treturn results;\r\n\t\t};\r\n\t}\r\n\r\n\tpublic minimizarPopup() {\r\n\t\tthis.dialogRef.addPanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic maximizarPopup() {\r\n\t\tthis.dialogRef.removePanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic cerrarPopup() {\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n\r\n\tubicarPuntoHistorico(data) {\r\n\t\tthis.mapaService.verMedidor(data);\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n\r\n}\r\n","
\r\n\t\r\n\t\r\n\t\r\n\t\r\n\t
\r\n\t\t\r\n\t\t

Última Transmisión

\r\n\t
\r\n\t\r\n
\r\n
\r\n\t
\r\n\t\t
\r\n\t\t\t

\r\n\t\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\r\n\t\t
\r\n\t
\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t{{cellData.value | number: '1.4-4'}}\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t{{cellData.value | number: '1.4-4'}}\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n","import { MedidoresService } from './../../../../services/medidores.service';\r\nimport { MatDialogRef } from '@angular/material';\r\nimport { MapaService } from './../../../../services/mapa.service';\r\nimport { DatePipe } from '@angular/common';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { MedidorUltimaTransmision } from './../../../../../../_entities/medidores/medidorUltimaTransmision';\r\n\r\n@Component({\r\n\tselector: 'kt-medidor-ultima-transmision',\r\n\ttemplateUrl: './medidor-ultima-transmision.component.html',\r\n\tstyleUrls: ['./medidor-ultima-transmision.component.scss']\r\n})\r\nexport class MedidorUltimaTransmisionComponent implements OnInit {\r\n\r\n\tpublic medidoresDataSource;\r\n\r\n\tpublic showFilterRow: boolean;\r\n\tpublic showHeaderFilter: boolean;\r\n\tpublic fecha: any;\r\n\tpublic hora: any;\r\n\t isDisabled: boolean = true;\r\n\tpublic datosReporte = [];\r\n\r\n\r\n\tconstructor(private mapaService: MapaService,\r\n\t\tprivate datepipe: DatePipe,\r\n\t\tpublic dialogRef: MatDialogRef,\r\n\t\tprivate medidoresService: MedidoresService) { }\r\n\r\n\tngOnInit() {\r\n\t\tthis.obtenerMedidor();\r\n\t}\r\n\r\n\tobtenerMedidor() {\r\n\t\tthis.medidoresService.obtenerUltimoMedidor().subscribe(\r\n\t\t\t(ultimaTransmision: MedidorUltimaTransmision[]) => {\r\n\t\t\t\tultimaTransmision.map(ultima => {\r\n\t\t\t\t\tultima.fechaHora = this.datepipe.transform(ultima.fechaHora, 'dd/MM/yyyy HH:mm a');\r\n\t\t\t\t})\r\n\t\t\t\tthis.medidoresDataSource = ultimaTransmision;\r\n\t\t\t\tthis.medidoresDataSource.forEach(medidor => {\r\n\t\t\t\t\tthis.datosReporte.push({\r\n\t\t\t\t\t\t'Descripción': medidor.descripcion,\r\n\t\t\t\t\t\t'IMEI': medidor.imei.toString(),\r\n\t\t\t\t\t\t'Fecha y Hora': medidor.fechaHora,\r\n\t\t\t\t\t\t'Gasto': medidor.gasto + ' m3/h'\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t\t\tif (this.datosReporte.length > 0) {\r\n\t\t\t\t\tthis.isDisabled = false;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t)\r\n\t}\r\n\r\n\tubicarPuntoHistorico(data) {\r\n\t\tthis.mapaService.verMedidor(data);\r\n\t\tthis.cerrarPopup();\r\n\t}\r\n\r\n\r\n\tpublic minimizarPopup() {\r\n\t\tthis.dialogRef.addPanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic maximizarPopup() {\r\n\t\tthis.dialogRef.removePanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic cerrarPopup() {\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\n\r\nexport class Customer {\r\n ID: number;\r\n\r\n image: string;\r\n\r\n numSerie: string;\r\n\r\n fechaHora: string;\r\n\r\n modelo: string;\r\n\r\n descripcion: string;\r\n\r\n}\r\n\r\nconst сustomers: Customer[] = [{\r\n ID: 1,\r\n image: './assets/image/garzaimage.jpg',\r\n numSerie: 'BEPYNSN',\r\n fechaHora: '01/04/2021 4:44',\r\n modelo: 'Garza',\r\n descripcion: 'Milpa Alta',\r\n}];\r\n\r\n@Injectable()\r\nexport class Service {\r\n getCustomers() {\r\n return сustomers;\r\n }\r\n}\r\n","
\r\n\t\r\n\t\r\n\t\r\n\t\r\n\t
\r\n\t\t\r\n\t\t

Micromedidores

\r\n\t
\r\n\t\r\n
\r\n
\r\n\t
\r\n\t\t
\r\n\t\t\t

\r\n\t\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\r\n\t\t
\r\n\t
\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t{{cellData.value | date: 'dd/MM/yyyy HH:mm a'}}\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n\r\n\r\n
\r\n\t\r\n\t\r\n\t\r\n\t\r\n\t
\r\n\t\t\r\n\t\t

Garzas

\r\n\t
\r\n\t\r\n
\r\n
\r\n\t
\r\n\t\t
\r\n\t\t\t

\r\n\t\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\r\n\t\t
\r\n\t
\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t{{cellData.value | date: 'dd/MM/yyyy HH:mm a'}}\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n\r\n","import { MicromedidoresService } from './../../../../services/micromedidores.service';\r\nimport { MapaService } from './../../../../services/mapa.service';\r\nimport { DatePipe } from '@angular/common';\r\nimport { MatDialog, MatDialogConfig, MatDialogRef } from '@angular/material';\r\nimport { Micromedidor, MicromedidorUltimaTransmision } from './../../../../../../_entities/micromedidores/micromedidor';\r\nimport { DxDataGridComponent } from 'devextreme-angular';\r\nimport { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { InformacionMicromedidorComponent } from '../../../popups/micromedidores/informacion-micromedidor/informacion-micromedidor.component';\r\nimport { Service, Customer } from './app.service'; /*este es una prueba del demo*/\r\nimport { User } from '../../../../../../_entities/User'; /*este es una prueba del demo*/\r\nimport { AuthService } from '../../../../../auth/auth.service';\r\n\r\n@Component({\r\n\tselector: 'kt-micromedidor-modal',\r\n\ttemplateUrl: './micromedidor-modal.component.html',\r\n\tstyleUrls: ['./micromedidor-modal.component.scss'],\r\n\tproviders: [Service] /*este es una prueba del demo*/\r\n})\r\nexport class MicromedidorModalComponent implements OnInit {\r\n\t_user: User;\r\n\tpublic usuarioDemo: boolean = true;\r\n\tcustomers: Customer[]; /*este es una prueba del demo*/\r\n\t@ViewChild(DxDataGridComponent, { static: false }) dataGrid: DxDataGridComponent\r\n\tpublic applyFilterTypes: any;\r\n\tpublic currentFilter: any;\r\n\tpublic showFilterRow: boolean;\r\n\tpublic showHeaderFilter: boolean;\r\n\tpublic usuario; dataSource: MicromedidorUltimaTransmision[];\r\n\tpublic datosReporte = [];\r\n\t isDisabled: boolean = true;\r\n\r\n\tconstructor(private micromedidorService: MicromedidoresService, service: Service /*este es una prueba del demo*/, private auth: AuthService /*este es una prueba del demo*/,\r\n\t\tprivate dialogRef: MatDialogRef,\r\n\t\tprivate dialog: MatDialog, private mapaService: MapaService, private datePipe: DatePipe) { \r\n\t\t\tthis.customers = service.getCustomers(); /*este es una prueba del demo*/\r\n\t\t}\r\n\r\n\tngOnInit() {\r\n\t\tthis.obtenerListaMicromedidores();\r\n\t\t// demo\r\n\t\tthis._user = this.auth.getUser();\r\n\t\tif(this._user.id === \"6cac2e07-cb6d-4725-93d7-ed7ad39f5ade\"){\r\n\t\t\tthis.usuarioDemo = false;\r\n\t\t}\r\n\t\t// demo\r\n\t}\r\n\r\n\tobtenerListaMicromedidores() {\r\n\t\tlet temNumSeries = [];\r\n\t\tlet newResponse = []\r\n\t\tthis.micromedidorService.obtenerMicromedidoresUltimaTransmision().subscribe(\r\n\t\t\t(response: MicromedidorUltimaTransmision[]) => {\r\n\t\t\t\tresponse.map(function (micrommedidor) {\r\n\t\t\t\t\tif (micrommedidor.tamper == null || micrommedidor.tamper == '') {\r\n\t\t\t\t\t\tmicrommedidor.tamper = 'Sin datos'\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tif (micrommedidor.observacion == null || micrommedidor.observacion == '') {\r\n\t\t\t\t\t\tmicrommedidor.observacion = 'Sin datos'\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tif (micrommedidor.contador == null || micrommedidor.contador == '') {\r\n\t\t\t\t\t\tmicrommedidor.contador = 'Sin datos'\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\r\n\t\t\t\tresponse.forEach(\r\n\t\t\t\t\tmicromedidor => {\r\n\t\t\t\t\t\tlet numeroSerie = micromedidor.numeroSerie;\r\n\t\t\t\t\t\tif (!(temNumSeries.includes(numeroSerie))) {\r\n\t\t\t\t\t\t\ttemNumSeries.push(numeroSerie);\r\n\t\t\t\t\t\t\tnewResponse.push(micromedidor);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t);\r\n\t\t\t\tthis.dataSource = newResponse;\r\n\r\n\t\t\t\tthis.dataSource.forEach(micromedidor => {\r\n\t\t\t\t\tthis.datosReporte.push({\r\n\t\t\t\t\t\t'Número de Serie': micromedidor.numeroSerie,\r\n\t\t\t\t\t\t'Última Transmisión': this.datePipe.transform(micromedidor.fechaHora, 'dd/MM/yyyy HH:mm a'),\r\n\t\t\t\t\t\t'Contador L': micromedidor.contador,\r\n\t\t\t\t\t\t'Observación': micromedidor.observacion\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t\t\tif (this.datosReporte.length > 0) {\r\n\t\t\t\t\tthis.isDisabled = false;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t)\r\n\t}\r\n\r\n\tinformacionMicromedidor(data) {\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.autoFocus = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\t\tdialogConfig.hasBackdrop = false;\r\n\t\tdialogConfig.width = \"40%\";\r\n\t\tdialogConfig.data = data;\r\n\t\tthis.dialog.open(InformacionMicromedidorComponent, dialogConfig)\r\n\t}\r\n\r\n\tubicarPuntoHistorico(data) {\r\n\t\tthis.mapaService.verMedidor(data);\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n\r\n\tubicarPuntoHistoricoDemo(data) {\r\n\t\tthis.mapaService.verMedidorDemo(data);\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n\r\n\tpublic minimizarPopup() {\r\n\t\tthis.dialogRef.addPanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic maximizarPopup() {\r\n\t\tthis.dialogRef.removePanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic cerrarPopup() {\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n\r\n}\r\n","
\r\n\t\r\n\t\r\n\t\r\n\t\r\n\t
\r\n\t\t\r\n\t\t

Última Transmisión

\r\n\t
\r\n\t\r\n
\r\n
\r\n\t
\r\n\t\t
\r\n\t\t\t

\r\n\t\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\r\n\t\t
\r\n\t
\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t{{cellData.value | date: 'dd/MM/yyyy HH:mm a'}}\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n","import { MicromedidoresService } from './../../../../services/micromedidores.service';\r\nimport { MatDialogRef } from '@angular/material';\r\nimport { MapaService } from './../../../../services/mapa.service';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { DatePipe } from '@angular/common';\r\n\r\n@Component({\r\n\tselector: 'kt-micromedidor-ultima-transmision',\r\n\ttemplateUrl: './micromedidor-ultima-transmision.component.html',\r\n\tstyleUrls: ['./micromedidor-ultima-transmision.component.scss']\r\n})\r\nexport class MicromedidorUltimaTransmisionComponent implements OnInit {\r\n\tpublic micromedidoresDataSource: any;\r\n\tpublic showFilterRow: boolean;\r\n\tpublic showHeaderFilter: boolean;\r\n\tpublic fecha: any;\r\n\tpublic hora: any;\r\n\tpublic datosReporte = [];\r\n\t isDisabled: boolean = true;\r\n\r\n\tconstructor(private mapaService: MapaService,\r\n\t\tpublic dialogRef: MatDialogRef,\r\n\t\tprivate datePipe: DatePipe,\r\n\t\tprivate micromedidoresService: MicromedidoresService) {\r\n\t\tthis.showFilterRow = true;\r\n\t\tthis.showHeaderFilter = true\r\n\t}\r\n\r\n\tngOnInit() {\r\n\t\tthis.obtenerMicromedidores();\r\n\t}\r\n\r\n\tobtenerMicromedidores() {\r\n\t\tlet temNumSeries = [];\r\n\t\tlet newResponse = []\r\n\t\tthis.micromedidoresService.obtenerMicromedidoresUltimaTransmision().subscribe(\r\n\t\t\t(response) => {\r\n\t\t\t\tresponse.map(function (micrommedidor) {\r\n\t\t\t\t\tif (micrommedidor.tamper == null || micrommedidor.tamper == '') {\r\n\t\t\t\t\t\tmicrommedidor.tamper = 'Sin datos'\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tif (micrommedidor.observacion == null || micrommedidor.observacion == '') {\r\n\t\t\t\t\t\tmicrommedidor.observacion = 'Sin datos'\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tif (micrommedidor.contador == null || micrommedidor.contador == '') {\r\n\t\t\t\t\t\tmicrommedidor.contador = 'Sin datos'\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\r\n\t\t\t\tresponse.forEach(\r\n\t\t\t\t\tmicromedidor => {\r\n\t\t\t\t\t\tlet numeroSerie = micromedidor.numeroSerie;\r\n\t\t\t\t\t\tif (!(temNumSeries.includes(numeroSerie))) {\r\n\t\t\t\t\t\t\ttemNumSeries.push(numeroSerie);\r\n\t\t\t\t\t\t\tnewResponse.push(micromedidor);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t);\r\n\t\t\t\tthis.micromedidoresDataSource = newResponse;\r\n\r\n\t\t\t\tthis.micromedidoresDataSource.forEach(micromedidor => {\r\n\t\t\t\t\tthis.datosReporte.push({\r\n\t\t\t\t\t\t'Número de Serie': micromedidor.numeroSerie,\r\n\t\t\t\t\t\t'Última Transmisión': this.datePipe.transform(micromedidor.fechaHora, 'dd/MM/yyyy HH:mm a'),\r\n\t\t\t\t\t\t'Contador L': micromedidor.contador,\r\n\t\t\t\t\t\t'Observación': micromedidor.observacion\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t\t\tif(this.datosReporte.length > 0){\r\n\t\t\t\t\tthis.isDisabled = false;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t)\r\n\t}\r\n\r\n\treportePosiciones() { }\r\n\r\n\tubicarPuntoHistorico(data) {\r\n\t\tthis.mapaService.verMedidor(data);\r\n\t\tthis.dialogRef.close();\r\n\r\n\t}\r\n\r\n\r\n\tpublic minimizarPopup() {\r\n\t\tthis.dialogRef.addPanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic maximizarPopup() {\r\n\t\tthis.dialogRef.removePanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic cerrarPopup() {\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n\r\n}\r\n","
\r\n\t\r\n\t\r\n\t\r\n\t\r\n\t
\r\n\t\t\r\n\t\t

Portátiles

\r\n\t
\r\n\t\r\n
\r\n
\r\n\t
\r\n\t\t
\r\n\t\t\t

\r\n\t\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\r\n\t\t
\r\n\t
\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n
\r\n\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { MatDialog, MatDialogRef, MatDialogConfig } from '@angular/material';\r\nimport { PortatilUltimaTransmision } from '../../../../../../_entities/Portatiles/Portatil';\r\nimport { MapaService } from '../../../../services/mapa.service';\r\nimport { PortatilesService } from '../../../../services/portatiles.service';\r\nimport { HistoricoPosicionesPortatilesComponent } from '../../../popups/portatiles/historico-posiciones-portatiles/historico-posiciones-portatiles.component';\r\n\r\n@Component({\r\n selector: 'kt-portatil-modal',\r\n templateUrl: './portatil-modal.component.html',\r\n styleUrls: ['./portatil-modal.component.scss']\r\n})\r\nexport class PortatilModalComponent implements OnInit {\r\n\r\n public portatiles: PortatilUltimaTransmision[];\r\n\tpublic applyFilterTypes: any;\r\n\tpublic currentFilter: any;\r\n\tpublic showFilterRow: boolean;\r\n\tpublic showHeaderFilter: boolean;\r\n\t isDiabled: boolean = true;\r\n\tpublic datosReporte = [];\r\n\r\n\tconstructor(private activosService: PortatilesService,\r\n\t\tprivate mapaService: MapaService,\r\n\t\tpublic dialogRef: MatDialogRef,\r\n\t\tpublic dialog: MatDialog) {\r\n\t\tthis.showFilterRow = true;\r\n\t\tthis.showHeaderFilter = true;\r\n\t\tthis.orderHeaderFilter = this.orderHeaderFilter.bind(this);\r\n\t}\r\n\r\n\tngOnInit() {\r\n\t\tthis.obtenerActivos();\r\n\t}\r\n\r\n\tobtenerActivos() {\r\n\t\tthis.activosService.obtenerUltimaTransmisionPortatiles().subscribe(\r\n\t\t\t(portatiles: PortatilUltimaTransmision[]) => {\r\n\t\t\t\tportatiles.map(activo => {\r\n\t\t\t\t\tactivo.bateria = activo.bateria + '%'\r\n\t\t\t\t\tswitch (activo.estatus) {\r\n\t\t\t\t\t\tcase 0:\r\n\t\t\t\t\t\t\tactivo.estatus = 'Inactivo';\r\n\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\tcase 1:\r\n\t\t\t\t\t\t\tactivo.estatus = 'Activo';\r\n\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\tdefault:\r\n\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t}\r\n\t\t\t\t})\r\n\t\t\t\tthis.portatiles = portatiles;\r\n\t\t\t\tthis.portatiles.forEach(activo => {\r\n\t\t\t\t\tthis.datosReporte.push({\r\n\t\t\t\t\t\t'Batería': activo.bateria,\r\n\t\t\t\t\t\t'Económico': activo.economico,\r\n\t\t\t\t\t\t'Número de Serie': activo.numeroSerie,\r\n\t\t\t\t\t\t'Estatus': activo.estatus,\r\n\t\t\t\t\t\t'Descripcion': activo.descripcion,\r\n\t\t\t\t\t\t'Modelo': activo.modelo,\r\n\t\t\t\t\t\t'IMEI': activo.imei.toString()\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t\t\tif(this.datosReporte.length > 0) {\r\n\t\t\t\t\tthis.isDiabled = false;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t)\r\n\t}\r\n\r\n\torderHeaderFilter(data) {\r\n\t\tdata.dataSource.postProcess = (results) => {\r\n\t\t\tresults.push({\r\n\t\t\t\ttext: \"Weekends\",\r\n\t\t\t\tvalue: \"weekends\"\r\n\t\t\t});\r\n\t\t\treturn results;\r\n\t\t};\r\n\t}\r\n\r\n\treportePosiciones(data: any) {\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.autoFocus = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\t\tdialogConfig.hasBackdrop = false;\r\n\t\tdialogConfig.width = \"58%\";\r\n\t\tdialogConfig.data = data;\r\n\t\tthis.dialogRef.close();\r\n\t\tthis.dialog.open(HistoricoPosicionesPortatilesComponent, dialogConfig);\r\n\t}\r\n\r\n\tubicarPuntoHistorico(data) {\r\n\t\tthis.mapaService.ocultarUbicadorLayer();\r\n\t\tthis.dialogRef.close();\r\n\t\tthis.mapaService.verActivo(data);\r\n\t}\r\n\r\n\r\n\tpublic minimizarPopup() {\r\n\t\tthis.dialogRef.addPanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic maximizarPopup() {\r\n\t\tthis.dialogRef.removePanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic cerrarPopup() {\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n}\r\n\r\n\r\n","
\r\n\t\r\n\t\r\n\t\r\n\t\r\n\t
\r\n\t\t\r\n\t\t

Portátiles Última Transmisión

\r\n\t
\r\n\t\r\n
\r\n
\r\n\t
\r\n\t\t
\r\n\t\t\t

\r\n\t\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\r\n\t\t
\r\n\t
\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n","import { DatePipe } from '@angular/common';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { MatDialogRef } from '@angular/material';\r\nimport { PortatilUltimaTransmision } from '../../../../../../_entities/Portatiles/Portatil';\r\nimport { PortatilesService } from '../../../../services/portatiles.service';\r\nimport { MapaService } from '../../../../services/mapa.service';\r\n\r\n@Component({\r\n selector: 'kt-portatil-ultima-transmision',\r\n templateUrl: './portatil-ultima-transmision.component.html',\r\n styleUrls: ['./portatil-ultima-transmision.component.scss']\r\n})\r\nexport class PortatilUltimaTransmisionComponent implements OnInit {\r\n\r\n public portatiles: PortatilUltimaTransmision[];\r\n\tpublic applyFilterTypes: any;\r\n\tpublic currentFilter: any;\r\n\tpublic showFilterRow: boolean;\r\n\tpublic showHeaderFilter: boolean;\r\n\tpublic datosReporte = [];\r\n\t isDisabled: boolean = true;\r\n\r\n\tconstructor(private activosService: PortatilesService,\r\n\t\tprivate mapaService: MapaService,\r\n\t\tprivate datepipe: DatePipe,\r\n\t\tpublic dialogRef: MatDialogRef) {\r\n\t\tthis.showFilterRow = true;\r\n\t\tthis.showHeaderFilter = true;\r\n\t\tthis.orderHeaderFilter = this.orderHeaderFilter.bind(this);\r\n\t}\r\n\r\n\tngOnInit() {\r\n\t\tthis.obtenerActivosUltimaTransmision();\r\n\t}\r\n\r\n\tobtenerActivosUltimaTransmision() {\r\n\t\tthis.activosService.obtenerUltimaTransmisionPortatiles().subscribe(\r\n\t\t\t(portatiles: PortatilUltimaTransmision[]) => {\r\n\t\t\t\tportatiles.map(activo => {\r\n\t\t\t\t\tactivo.fechaHora = this.datepipe.transform(activo.fechaHora, 'dd/MM/yyyy HH:mm:ss a');\r\n\t\t\t\t\tif (activo.bateria) {\r\n\t\t\t\t\t\tactivo.bateria = activo.bateria + '%'\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tactivo.bateria = 'Sin Datos'\r\n\t\t\t\t\t}\r\n\t\t\t\t\tswitch (activo.estatus) {\r\n\t\t\t\t\t\tcase 0:\r\n\t\t\t\t\t\t\tactivo.estatus = 'Inactivo';\r\n\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\tcase 1:\r\n\t\t\t\t\t\t\tactivo.estatus = 'Activo';\r\n\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\tdefault:\r\n\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t\tthis.portatiles = portatiles;\r\n\t\t\t\tthis.portatiles.forEach(activo => {\r\n\t\t\t\t\tthis.datosReporte.push({\r\n\t\t\t\t\t\t'Batería': activo.bateria,\r\n\t\t\t\t\t\t'Económico': activo.economico,\r\n\t\t\t\t\t\t'Número de Serie': activo.numeroSerie,\r\n\t\t\t\t\t\t'Estatus': activo.estatus,\r\n\t\t\t\t\t\t'Descripcion': activo.descripcion,\r\n\t\t\t\t\t\t'Modelo': activo.modelo,\r\n\t\t\t\t\t\t'Fecha y Hora': activo.fechaHora,\r\n\t\t\t\t\t\t'IMEI': activo.imei.toString()\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t\t\tif (this.datosReporte.length > 0) {\r\n\t\t\t\t\tthis.isDisabled = false;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t)\r\n\t}\r\n\r\n\torderHeaderFilter(data) {\r\n\t\tdata.dataSource.postProcess = (results) => {\r\n\t\t\tresults.push({\r\n\t\t\t\ttext: \"Weekends\",\r\n\t\t\t\tvalue: \"weekends\"\r\n\t\t\t});\r\n\t\t\treturn results;\r\n\t\t};\r\n\t}\r\n\r\n\tubicarPuntoHistorico(data) {\r\n\t\tthis.mapaService.ocultarUbicadorLayer();\r\n\t\tthis.dialogRef.close();\r\n\t\tthis.mapaService.verActivo(data);\r\n\t}\r\n\r\n\r\n\tpublic minimizarPopup() {\r\n\t\tthis.dialogRef.addPanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic maximizarPopup() {\r\n\t\tthis.dialogRef.removePanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic cerrarPopup() {\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n\r\n}\r\n","
\r\n\t\r\n\t\r\n\t\r\n\t\r\n\t
\r\n\t\t\r\n\t\t

{{titulo}}

\r\n\t
\r\n\t\r\n
\r\n
\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t \r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t \r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t \r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t {{item.nombre}}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t\t\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t \r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n","import { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material';\r\nimport { Router } from '@angular/router';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { PuntosInteresService } from './../../../../services/puntos-interes.service';\r\nimport { MapaService } from './../../../../services/mapa.service';\r\nimport { FormGroup, FormBuilder, Validators } from '@angular/forms';\r\nimport { Component, Inject, OnInit } from '@angular/core';\r\nimport { finalize } from 'rxjs/operators';\r\n\r\n@Component({\r\n\tselector: 'kt-guardar-punto-interes',\r\n\ttemplateUrl: './guardar-punto-interes.component.html',\r\n\tstyleUrls: ['./guardar-punto-interes.component.scss']\r\n})\r\nexport class GuardarPuntoInteresComponent implements OnInit {\r\n\tpublic formPInteres: FormGroup;\r\n\tpublic coordenadas;\r\n\tpublic titulo: string = 'Agregar Punto de Interés';\r\n\tpublic esEditable: boolean = false;\r\n\tpublic idPunto: number;\r\n\r\n\tmarcadores: any[] = [\r\n\t\t{ url: './assets/media/puntosInteres/punto_de_interes.png', nombre: 'Punto de Interés' },\r\n\t\t{ url: './assets/media/puntosInteres/fabricas_y_talleres.png', nombre: 'Fabricas y Talleres' },\r\n\t\t{ url: './assets/media/puntosInteres/supermercado.png', nombre: 'Supermercado' },\r\n\t\t{ url: './assets/media/puntosInteres/negocios_miscelaneos.png', nombre: 'Negocios y Miscelaneos' },\r\n\t\t{ url: './assets/media/puntosInteres/restaurantes.png', nombre: 'Restaurantes' },\r\n\t\t{ url: './assets/media/puntosInteres/bancos.png', nombre: 'Bancos' },\r\n\t\t{ url: './assets/media/puntosInteres/gimnacios_y_clubes_deportivos.png', nombre: 'Gimnacios y Clubes Deportivos' },\r\n\t\t{ url: './assets/media/puntosInteres/laboratorios_y_clinicas.png', nombre: 'Laboratorios y clínicas' },\r\n\t\t{ url: './assets/media/puntosInteres/libriotecas_librerias_y_escuelas.png', nombre: 'Bibliotecas, Librerias y Escuelas' },\r\n\t\t{ url: './assets/media/puntosInteres/teatros_cines_y_cabaret.png', nombre: 'Teatros, Cines y Cabaret' },\r\n\t\t{ url: './assets/media/puntosInteres/vigilancia.png', nombre: 'Vigilancia' },\r\n\t\t{ url: './assets/media/puntosInteres/casetas_de_peaje.png', nombre: 'Casetas de Peaje' },\r\n\t\t{ url: './assets/media/puntosInteres/gasolinerias_y_casetas_de_servicio.png', nombre: 'Gasolineras y Casetas de Servicio' },\r\n\t\t{ url: './assets/media/puntosInteres/constructores_y_minas.png', nombre: 'Constructores y Minas' },\r\n\t\t{ url: './assets/media/puntosInteres/oficinas_de_gobierno.png', nombre: 'Oficinas de Gobierno' },\r\n\t\t{ url: './assets/media/puntosInteres/comunicacion_y_control.png', nombre: 'Comunicación y control' },\r\n\t\t{ url: './assets/media/puntosInteres/sitios_turisticos_y_monumentos.png', nombre: 'Sitios Turisticos y Monumentos' },\r\n\t\t{ url: './assets/media/puntosInteres/edificios_publicos_y_hoteles.png', nombre: 'Edificios Públicos y Hoteles' },\r\n\t\t{ url: './assets/media/puntosInteres/parques_viveros_y_bosques.png', nombre: 'Parques, Viveros y Bosques' },\r\n\t\t{ url: './assets/media/puntosInteres/estaciones_y_cruces_de_ferrocarril.png', nombre: 'Estaciones y Cruces de Ferrocarril' },\r\n\t\t{ url: './assets/media/puntosInteres/muelles.png', nombre: 'Muelles' },\r\n\t\t{ url: './assets/media/puntosInteres/aeropuertos.png', nombre: 'Aeropuertos' },\r\n\t\t{ url: './assets/media/puntosInteres/puntos_de_inspeccion_y_retenciones.png', nombre: 'Puntos de Insepección y Retenciones' },\r\n\t\t{ url: './assets/media/puntosInteres/policia_y_aduanas.png', nombre: 'Policia y Aduanas' },\r\n\t\t{ url: './assets/media/puntosInteres/bases_militares.png', nombre: 'Bases Militares' },\r\n\t\t{ url: './assets/media/puntosInteres/bodegas.png', nombre: 'Bodegas' },\r\n\t\t{ url: './assets/media/puntosInteres/administracion_y_monitoreo.png', nombre: 'Administración y Monitoreo' },\r\n\t\t{ url: './assets/media/puntosInteres/templos_y_sinagogas.png', nombre: 'Templos y Sinagogas' },\r\n\t\t{ url: './assets/media/puntosInteres/hospitales_y_servicios_medicos.png', nombre: 'Hospitales y Servicios Medicos' },\r\n\t\t{ url: './assets/media/puntosInteres/bases_fronteras_y_poblados.png', nombre: 'Bases, Fronteras y Poblados' },\r\n\t\t{ url: './assets/media/puntosInteres/ganaderia_y_ranchos.png', nombre: 'Ganadería y Ranchos' },\r\n\t\t{ url: './assets/media/puntosInteres/iglesias_y_cementerios.png', nombre: 'Iglesias y Cementerios' },\r\n\t\t{ url: './assets/media/puntosInteres/edificaciones_diversas.png', nombre: 'Edificaciones Diversas' },\r\n\t\t{ url: './assets/media/puntosInteres/puntos_de_control.png', nombre: 'Puntos de Control' },\r\n\t\t{ url: './assets/media/puntosInteres/edificios_condominios_y_departamentos.png', nombre: 'Edificios, Condominios y Departamentos' },\r\n\t\t{ url: './assets/media/puntosInteres/bares_y_cantinas.png', nombre: 'Bares y Cantinas' },\r\n\t\t{ url: './assets/media/puntosInteres/playas_y_balnearios.png', nombre: 'Playas y Balnearios' },\r\n\t\t{ url: './assets/media/puntosInteres/telefonia_y_telegrafos.png', nombre: 'Telefonía y Telegrafos' },\r\n\t\t{ url: './assets/media/puntosInteres/estadios_palenques_y_plazas.png', nombre: 'Estadios, Palenques y Plazas' },\r\n\t\t{ url: './assets/media/puntosInteres/talleres_y_refaccionarias.png', nombre: 'Talleres y Refaccionarias' },\r\n\t\t{ url: './assets/media/puntosInteres/estetica_peluquerias_y_spas.png', nombre: 'Estetica, Peluquerias y Spas' },\r\n\t\t{ url: './assets/media/puntosInteres/nc.png', nombre: 'NC'},\r\n\t\t{ url: './assets/media/puntosInteres/gtac.png', nombre: 'GTAC'},\r\n\t\t{ url: './assets/media/puntosInteres/sacmex.png', nombre: 'SACMEX'},\r\n\t];\r\n\r\n\tconstructor(private mapaService: MapaService,\r\n\t\tprivate puntosInteresService: PuntosInteresService,\r\n\t\tprivate toastService: ToastrService,\r\n\t\tprivate formBuilder: FormBuilder,\r\n\t\tpublic dialogRef: MatDialogRef,\r\n\t\t@Inject(MAT_DIALOG_DATA) public data: any) { }\r\n\r\n\tngOnInit() {\r\n\t\tthis.initForm();\r\n\t\tif (this.data !== null) {\r\n\t\t\tthis.titulo = 'Editar Punto de Interés';\r\n\t\t\tthis.esEditable = true;\r\n\t\t\tthis.idPunto = this.data.id;\r\n\t\t\tthis.obtenerDatos(this.data);\r\n\t\t}\r\n\t}\r\n\r\n\tinitForm() {\r\n\t\tthis.formPInteres = this.formBuilder.group({\r\n\t\t\tnombre: ['', Validators.compose([\r\n\t\t\t\tValidators.required\r\n\t\t\t])],\r\n\t\t\tdescripcion: ['', Validators.compose([\r\n\t\t\t\tValidators.required\r\n\t\t\t])],\r\n\t\t\ticono: ['', Validators.compose([Validators.required])],\r\n\t\t\tcoordenadas: [this.mapaService.coordenadaPI]\r\n\t\t});\r\n\t}\r\n\r\n\tobtenerDatos(datosPunto) {\r\n\t\tthis.formPInteres.patchValue(datosPunto);\r\n\t}\r\n\r\n\tonSubmit() {\r\n\t\tlet datos = this.formPInteres.value;\r\n\r\n\t\tif (this.esEditable) {\r\n\t\t\tthis.actualizarPuntosInteres(datos);\r\n\t\t} else {\r\n\t\t\tthis.guardarPuntoInteres(datos);\r\n\t\t}\r\n\r\n\t}\r\n\r\n\tguardarPuntoInteres(datos) {\r\n\t\tthis.puntosInteresService.postPinteres(datos).pipe(\r\n\t\t\tfinalize(\r\n\t\t\t\t() => {\r\n\t\t\t\t\tthis.pintarMarcadoresPuntosInteres();\r\n\t\t\t\t}\r\n\t\t\t)\r\n\t\t).subscribe(success => {\r\n\t\t\t//location.reload();\r\n\t\t\tthis.toastService.success('Se guardaron los datos', 'Éxito');\r\n\t\t\tthis.resetForm();\r\n\t\t\tthis.dialogRef.close();\r\n\t\t}, error => {\r\n\t\t\tthis.toastService.error('' + error, 'Error');\r\n\t\t\tthis.dialogRef.close();\r\n\t\t});\r\n\t}\r\n\r\n\tactualizarPuntosInteres(datos) {\r\n\t\tthis.puntosInteresService.updatedPunto(this.idPunto, datos).pipe(\r\n\t\t\tfinalize(\r\n\t\t\t\t() => {\r\n\t\t\t\t\tthis.pintarMarcadoresPuntosInteres();\r\n\t\t\t\t}\r\n\t\t\t)\r\n\t\t).subscribe(success => {\r\n\t\t\t//location.reload();\r\n\t\t\tthis.toastService.success('Se actualizaron los datos', 'Éxito');\r\n\t\t\tthis.resetForm();\r\n\t\t\tthis.dialogRef.close();\r\n\t\t}, error => {\r\n\t\t\tthis.toastService.error('' + error, 'Error');\r\n\t\t\tthis.dialogRef.close();\r\n\t\t});\r\n\t}\r\n\r\n\tpublic pintarMarcadoresPuntosInteres() {\r\n\t\tthis.puntosInteresService.getPuntos().subscribe(\r\n\t\t\t(res: any[]) => {\r\n\t\t\t\tthis.mapaService.pintarPuntosInteres(res);\r\n\t\t\t}, err => {\r\n\t\t\t});\r\n\t}\r\n\r\n\tresetForm() {\r\n\t\tthis.formPInteres = this.formBuilder.group({\r\n\t\t\tnombre: [''],\r\n\t\t\tdescripcion: [''],\r\n\t\t\ticono: [''],\r\n\t\t\tcoordenadas: [[]]\r\n\t\t});\r\n\t}\r\n\r\n\tpublic minimizarPopup() {\r\n\t\tthis.dialogRef.addPanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic maximizarPopup() {\r\n\t\tthis.dialogRef.removePanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic cerrarPopup() {\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n\r\n\r\n}\r\n","
\r\n\t\r\n\t\r\n\t\r\n\t
\r\n\t\t\r\n\t\t

Puntos de Interés

\r\n\t
\r\n\t\r\n
\r\n
\r\n\t
\r\n\t\t
\r\n\t\t\t

\r\n\t\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\r\n\t\t
\r\n\t
\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n","import { Permiso } from './../../../../../../_entities/Enums/permiso.enum';\r\nimport { MatDialog, MatDialogConfig, MatDialogRef } from '@angular/material';\r\nimport { MapaService } from './../../../../services/mapa.service';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { PuntosInteresService } from './../../../../services/puntos-interes.service';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport Swal from 'sweetalert2';\r\nimport { GuardarPuntoInteresComponent } from '../guardar-punto-interes/guardar-punto-interes.component';\r\n\r\n\r\n@Component({\r\n\tselector: 'kt-puntos-interes-modal',\r\n\ttemplateUrl: './puntos-interes-modal.component.html',\r\n\tstyleUrls: ['./puntos-interes-modal.component.scss']\r\n})\r\nexport class PuntosInteresModalComponent implements OnInit {\r\n\tpublic currentFilter: any;\r\n\tpublic puntosInteres: any[];\r\n\tpublic showFilterRow: boolean;\r\n\tpublic showHeaderFilter: boolean;\r\n\tpublic permisoConsultarPuntosInteres: string;\r\n\tpublic permisoEliminarPuntosInteres: string;\r\n\tpublic datosReporte = [];\r\n\tpublic isDisabled: boolean = true;\r\n\r\n\tconstructor(private puntosService: PuntosInteresService,\r\n\t\tprivate dialog: MatDialog,\r\n\t\tprivate mapaService: MapaService,\r\n\t\tpublic dialogRef: MatDialogRef) {\r\n\t\tthis.showFilterRow = true;\r\n\t\tthis.showHeaderFilter = true;\r\n\t}\r\n\r\n\tasync ngOnInit() {\r\n\t\tawait this.obtenerPuntos();\r\n\t\tthis.obtenerPermisosPuntosInteres();\r\n\t}\r\n\r\n\tpublic obtenerPuntos = () => {\r\n\t\tthis.puntosService.getPuntos().subscribe((res: any[]) => {\r\n\t\t\tthis.puntosInteres = res;\r\n\t\t\tthis.puntosInteres.forEach(punto => {\r\n\t\t\t\tthis.datosReporte.push({\r\n\t\t\t\t\t'Nombre': punto.nombre,\r\n\t\t\t\t\t'Descripción': punto.descripcion\r\n\t\t\t\t});\r\n\t\t\t});\r\n\t\t\tif (this.datosReporte.length > 0) {\r\n\t\t\t\tthis.isDisabled = false;\r\n\t\t\t}\r\n\t\t}, error => {\r\n\t\t\tconsole.log('Ocurrio un error', error);\r\n\t\t});\r\n\t}\r\n\r\n\r\n\tpublic get Permiso() {\r\n\t\treturn Permiso;\r\n\t}\r\n\r\n\r\n\teliminarPunto(data: any) {\r\n\t\tSwal.fire({\r\n\t\t\ttitle: 'Eliminar',\r\n\t\t\ttext: `¿Está seguro que desea eliminar el punto de interés ${data.nombre}?`,\r\n\t\t\ticon: 'warning',\r\n\t\t\tshowCancelButton: true,\r\n\t\t\tconfirmButtonColor: '#3085d6',\r\n\t\t\tcancelButtonColor: '#d33',\r\n\t\t\tconfirmButtonText: 'Confirmar',\r\n\t\t\tcancelButtonText: \"Cancelar\"\r\n\t\t}).then((result) => {\r\n\t\t\tif (result.value) {\r\n\t\t\t\tthis.puntosService.deletePunto(data.id).subscribe(() => {\r\n\t\t\t\t\tSwal.fire(\r\n\t\t\t\t\t\t'Eliminado!',\r\n\t\t\t\t\t\t'El punto de interés ha sido eliminado.',\r\n\t\t\t\t\t\t'success'\r\n\t\t\t\t\t).then((resultok) => {\r\n\t\t\t\t\t\tif (resultok.value) {\r\n\t\t\t\t\t\t\tthis.pintarMarcadoresPuntosInteres();\r\n\t\t\t\t\t\t\tthis.obtenerPuntos();\r\n\t\t\t\t\t\t\t//location.reload();\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t\t\t}, error => {\r\n\t\t\t\t\tSwal.fire(\r\n\t\t\t\t\t\t'Ops!',\r\n\t\t\t\t\t\t'Error al intentar eliminar el punto de interés.',\r\n\t\t\t\t\t\t'error'\r\n\t\t\t\t\t);\r\n\t\t\t\t})\r\n\t\t\t}\r\n\t\t})\r\n\r\n\t}\r\n\r\n\tpublic pintarMarcadoresPuntosInteres() {\r\n\t\tthis.puntosService.getPuntos().subscribe(\r\n\t\t\t(res: any[]) => {\r\n\t\t\t\tthis.mapaService.pintarPuntosInteres(res);\r\n\t\t\t}, err => {\r\n\t\t\t});\r\n\t}\r\n\r\n\tverPunto(data: any) {\r\n\t\tthis.puntosService.getPutoByID(data.id).subscribe(res => {\r\n\t\t\tconsole.log('service punto:', res);\r\n\t\t\t//this.mapaService.pintarPunto(data);\r\n\t\t\tthis.mapaService.verPunto(data);\r\n\t\t}, err => {\r\n\t\t\tconsole.log('error', err);\r\n\t\t})\r\n\t}\r\n\r\n\teditarPuntoInteres(data) {\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.autoFocus = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\t\tdialogConfig.width = \"30%\";\r\n\t\tdialogConfig.closeOnNavigation = true;\r\n\t\tdialogConfig.hasBackdrop = false;\r\n\t\tdialogConfig.panelClass = 'custom-modalbox';\r\n\t\tdialogConfig.data = data;\r\n\t\tconst dialogRef = this.dialog.open(GuardarPuntoInteresComponent, dialogConfig);\r\n\t\tdialogRef.afterClosed().subscribe(() => {\r\n\t\t\t//this.vectorPInteresSource.clear();\r\n\t\t\tthis.obtenerPuntos();\r\n\t\t});\r\n\t}\r\n\r\n\tpublic minimizarPopup() {\r\n\t\tthis.dialogRef.addPanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic maximizarPopup() {\r\n\t\tthis.dialogRef.removePanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic cerrarPopup() {\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n\r\n\t/**Obtener permisos de punto de interes */\r\n\tobtenerPermisosPuntosInteres() {\r\n\t\tthis.permisoConsultarPuntosInteres = Permiso.VisualizarPuntosInteres;\r\n\t\tthis.permisoEliminarPuntosInteres = Permiso.EliminarPuntoInteres;\r\n\t}\r\n\r\n\r\n}\r\n","
\r\n\t\r\n\t\r\n\t\r\n\t\r\n\t
\r\n\t\t\r\n\t\t

{{titulo}}

\r\n\t
\r\n\t\r\n
\r\n
\r\n\t
\r\n\t\t
\r\n\t\t\t

\r\n\t\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\r\n\t\t
\r\n\t
\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n","import { MapaService } from './../../../../services/mapa.service';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material';\r\nimport { Autos } from './../../../../../../_entities/autos/Autos';\r\nimport { Component, Inject, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n\tselector: 'kt-semaforo-modal',\r\n\ttemplateUrl: './semaforo-modal.component.html',\r\n\tstyleUrls: ['./semaforo-modal.component.scss']\r\n})\r\nexport class SemaforoModalComponent implements OnInit {\r\n\tpublic vehiculosRegistros: Autos[];\r\n\tpublic titulo: string;\r\n\tpublic icono: string;\r\n\tpublic showFilterRow: boolean;\r\n\tpublic showHeaderFilter: boolean;\r\n\tpublic showNavigationButtons: boolean;\r\n\tpublic showPageSizeSelector: boolean;\r\n\tpublic datosReporte = [];\r\n\tpublic isDisabled: boolean = true;\r\n\r\n\tconstructor(public dialogRef: MatDialogRef,\r\n\t\t@Inject(MAT_DIALOG_DATA) public data: any,\r\n\t\tprivate mapaServicio: MapaService) {\r\n\t\tthis.showFilterRow = true;\r\n\t\tthis.showHeaderFilter = true;\r\n\t}\r\n\r\n\tngOnInit() {\r\n\t\tthis.titulo = this.data[0].titulo;\r\n\t\tthis.vehiculosRegistros = this.data[0].datos;\r\n\t\tthis.icono = this.data[0].icono;\r\n\t\tthis.vehiculosRegistros.forEach(vehiculo => {\r\n\t\t\tif(vehiculo.placas === null || vehiculo.placas === ''){\r\n\t\t\t\tvehiculo.placas = 'Sin Placa'\r\n\t\t\t}\r\n\t\t\tthis.datosReporte.push({\r\n\t\t\t\t'Vehículo': vehiculo.descripcion,\r\n\t\t\t\t'Placa': vehiculo.placas\r\n\t\t\t});\r\n\t\t});\r\n\t\tif(this.datosReporte.length > 0){\r\n\t\t\tthis.isDisabled = false;\r\n\t\t}\r\n\t}\r\n\r\n\tngOnDestroy(): void {\r\n\t\t//Called once, before the instance is destroyed.\r\n\t\t//Add 'implements OnDestroy' to the class.\r\n\t\tthis.vehiculosRegistros = [];\r\n\r\n\t}\r\n\r\n\tpublic minimizarPopup() {\r\n\t\tthis.dialogRef.addPanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic maximizarPopup() {\r\n\t\tthis.dialogRef.removePanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic cerrarPopup() {\r\n\t\tthis.dialogRef.close();\r\n\t\tthis.vehiculosRegistros = [];\r\n\t\tthis.mapaServicio.alertaPrincipal = [];\r\n\t\tthis.mapaServicio.alertaSecundaria = [];\r\n\t\tthis.mapaServicio.alertaBateria = [];\r\n\t\tthis.mapaServicio.alertaGeocerca = [];\r\n\t\tthis.mapaServicio.alertaEnergia = [];\r\n\r\n\r\n\t}\r\n\r\n\tubicarVehiculo(data) {\r\n\t\tthis.mapaServicio.verVehiculo(data);\r\n\t\tthis.cerrarPopup();\r\n\t}\r\n\r\n}\r\n","
\r\n\t\r\n\t\r\n\t\r\n\t\r\n\t
\r\n\t\t\r\n\t\t

Teléfonos

\r\n\t
\r\n\t\r\n
\r\n
\r\n\t
\r\n\t\t
\r\n\t\t\t

\r\n\t\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\r\n\t\t
\r\n\t
\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n\r\n\r\n\r\n","import { finalize } from 'rxjs/operators';\r\nimport { MatDialog, MatDialogRef, MatDialogConfig } from '@angular/material';\r\nimport { MapaService } from './../../../../services/mapa.service';\r\nimport { TelefonosService } from './../../../../services/telefonos.service';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { TelefonoUltimaTransmision } from './../../../../../../_entities/telefonos/telefono';\r\nimport { HistoricoPosicionesTelefonoComponent } from '../../../popups/telefonos/historico-posiciones-telefono/historico-posiciones-telefono.component';\r\n\r\n@Component({\r\n\tselector: 'kt-telefono-modal',\r\n\ttemplateUrl: './telefono-modal.component.html',\r\n\tstyleUrls: ['./telefono-modal.component.scss']\r\n})\r\nexport class TelefonoModalComponent implements OnInit {\r\n\tpublic telefonos: TelefonoUltimaTransmision[];\r\n\tpublic applyFilterTypes: any;\r\n\tpublic currentFilter: any;\r\n\tpublic showFilterRow: boolean;\r\n\tpublic showHeaderFilter: boolean;\r\n\tpublic loadingVisible: boolean = false;\r\n\tpublic datosReporte = [];\r\n\t isDisabled: boolean = true;\r\n\r\n\tconstructor(private telefonosService: TelefonosService,\r\n\t\tprivate mapaService: MapaService,\r\n\t\tpublic dialogRef: MatDialogRef,\r\n\t\tpublic dialog: MatDialog) {\r\n\t\tthis.showFilterRow = true;\r\n\t\tthis.showHeaderFilter = true;\r\n\t\tthis.orderHeaderFilter = this.orderHeaderFilter.bind(this);\r\n\t}\r\n\r\n\tngOnInit() {\r\n\t\tthis.obtenerTelefonos();\r\n\t}\r\n\r\n\tobtenerTelefonos() {\r\n\t\tthis.loadingVisible = true;\r\n\t\tthis.telefonosService.obtenerUltimaTransmisionTelefonos().pipe(\r\n\t\t\tfinalize(() => this.loadingVisible = false)\r\n\t\t).subscribe(\r\n\t\t\t(telefonos: TelefonoUltimaTransmision[]) => {\r\n\t\t\t\ttelefonos.map(telefono => {\r\n\t\t\t\t\tif(telefono.bateria){\r\n\t\t\t\t\t\ttelefono.bateria = telefono.bateria + '%';\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\ttelefono.bateria = null;\r\n\t\t\t\t\t}\r\n\t\t\t\t\tswitch (telefono.estatus) {\r\n\t\t\t\t\t\tcase 0:\r\n\t\t\t\t\t\t\ttelefono.estatus = 'Inactivo';\r\n\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\tcase 1:\r\n\t\t\t\t\t\t\ttelefono.estatus = 'Activo';\r\n\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\tdefault:\r\n\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\r\n\t\t\t\tthis.telefonos = telefonos;\r\n\r\n\t\t\t\tthis.telefonos.forEach(telefono => {\r\n\t\t\t\t\tthis.datosReporte.push({\r\n\t\t\t\t\t\t'Batería': telefono.bateria,\r\n\t\t\t\t\t\t'Económico': telefono.economico,\r\n\t\t\t\t\t\t'Número de Serie': telefono.numeroSerie,\r\n\t\t\t\t\t\t'Estatus': telefono.estatus,\r\n\t\t\t\t\t\t'Descripción': telefono.descripcion,\r\n\t\t\t\t\t\t'Modelo': telefono.modelo,\r\n\t\t\t\t\t\t'IMEI': telefono.imei.toString()\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t\t\tif(this.datosReporte.length > 0){\r\n\t\t\t\t\tthis.isDisabled = false;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t)\r\n\t}\r\n\r\n\treportePosiciones(data: any) {\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.autoFocus = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\t\tdialogConfig.hasBackdrop = false;\r\n\t\tdialogConfig.width = \"80%\";\r\n\t\tdialogConfig.data = data;\r\n\t\tthis.dialogRef.close();\r\n\t\tthis.dialog.open(HistoricoPosicionesTelefonoComponent, dialogConfig);\r\n\t}\r\n\r\n\tubicarPuntoHistorico(data) {\r\n\t\tthis.dialogRef.close();\r\n\t\tthis.mapaService.verTelefono(data);\r\n\t}\r\n\r\n\torderHeaderFilter(data) {\r\n\t\tdata.dataSource.postProcess = (results) => {\r\n\t\t\tresults.push({\r\n\t\t\t\ttext: \"Weekends\",\r\n\t\t\t\tvalue: \"weekends\"\r\n\t\t\t});\r\n\t\t\treturn results;\r\n\t\t};\r\n\t}\r\n\r\n\r\n\tpublic minimizarPopup() {\r\n\t\tthis.dialogRef.addPanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic maximizarPopup() {\r\n\t\tthis.dialogRef.removePanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic cerrarPopup() {\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n\r\n\r\n\r\n}\r\n","
\r\n\t\r\n\t\r\n\t\r\n\t\r\n\t
\r\n\t\t\r\n\t\t

Teléfonos Última Transmisión

\r\n\t
\r\n\t\r\n
\r\n
\r\n\t
\r\n\t\t
\r\n\t\t\t

\r\n\t\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\r\n\t\t
\r\n\t
\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t{{cellData.value | date: 'dd/MM/yyyy h:mm a'}}\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n\r\n\r\n\r\n","import { finalize } from 'rxjs/operators';\r\nimport { MatDialogRef } from '@angular/material';\r\nimport { MapaService } from './../../../../services/mapa.service';\r\nimport { TelefonosService } from './../../../../services/telefonos.service';\r\nimport { TelefonoUltimaTransmision } from './../../../../../../_entities/telefonos/telefono';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { DatePipe } from '@angular/common';\r\n\r\n@Component({\r\n\tselector: 'kt-telefono-ultima-transmision',\r\n\ttemplateUrl: './telefono-ultima-transmision.component.html',\r\n\tstyleUrls: ['./telefono-ultima-transmision.component.scss']\r\n})\r\nexport class TelefonoUltimaTransmisionComponent implements OnInit {\r\n\tpublic telefonos: TelefonoUltimaTransmision[];\r\n\tpublic applyFilterTypes: any;\r\n\tpublic currentFilter: any;\r\n\tpublic showFilterRow: boolean;\r\n\tpublic showHeaderFilter: boolean;\r\n\tpublic loadingVisible: boolean = false;\r\n\tpublic datosReporte = [];\r\n\t isDisabled: boolean = true;\r\n\r\n\tconstructor(private telefonosService: TelefonosService,\r\n\t\tprivate mapaService: MapaService,\r\n\t\tprivate datepipe: DatePipe,\r\n\t\tpublic dialogRef: MatDialogRef) {\r\n\t\tthis.showFilterRow = true;\r\n\t\tthis.showHeaderFilter = true;\r\n\t\tthis.orderHeaderFilter = this.orderHeaderFilter.bind(this);\r\n\t}\r\n\r\n\tngOnInit() {\r\n\t\tthis.obtenerTelefonosUltimaTransmision();\r\n\t}\r\n\r\n\tobtenerTelefonosUltimaTransmision() {\r\n\t\tthis.loadingVisible = true;\r\n\t\tthis.telefonosService.obtenerUltimaTransmisionTelefonos().pipe(\r\n\t\t\tfinalize(() => this.loadingVisible = false)\r\n\t\t).subscribe(\r\n\t\t\t(telefonos: TelefonoUltimaTransmision[]) => {\r\n\t\t\t\ttelefonos.map(telefono => {\r\n\r\n\t\t\t\t\tif (telefono.bateria) {\r\n\t\t\t\t\t\ttelefono.bateria = telefono.bateria + '%';\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\ttelefono.bateria = 'Sin Datos';\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tswitch (telefono.estatus) {\r\n\t\t\t\t\t\tcase 0:\r\n\t\t\t\t\t\t\ttelefono.estatus = 'Inactivo';\r\n\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\tcase 1:\r\n\t\t\t\t\t\t\ttelefono.estatus = 'Activo';\r\n\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\tdefault:\r\n\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t\tthis.telefonos = telefonos;\r\n\r\n\t\t\t\tthis.telefonos.forEach(telefono => {\r\n\t\t\t\t\tthis.datosReporte.push({\r\n\t\t\t\t\t\t'Batería': telefono.bateria,\r\n\t\t\t\t\t\t'Económico': telefono.economico,\r\n\t\t\t\t\t\t'Número de Serie': telefono.numeroSerie,\r\n\t\t\t\t\t\t'Estatus': telefono.estatus,\r\n\t\t\t\t\t\t'Descripción': telefono.descripcion,\r\n\t\t\t\t\t\t'Modelo': telefono.modelo,\r\n\t\t\t\t\t\t'Fecha y Hora': this.datepipe.transform(telefono.fechaHora, 'dd/MM/yyyy h:mm a'),\r\n\t\t\t\t\t\t'IMEI': telefono.imei.toString()\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t\t\tif (this.datosReporte.length > 0) {\r\n\t\t\t\t\tthis.isDisabled = false;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t)\r\n\t}\r\n\r\n\torderHeaderFilter(data) {\r\n\t\tdata.dataSource.postProcess = (results) => {\r\n\t\t\tresults.push({\r\n\t\t\t\ttext: \"Weekends\",\r\n\t\t\t\tvalue: \"weekends\"\r\n\t\t\t});\r\n\t\t\treturn results;\r\n\t\t};\r\n\t}\r\n\r\n\tubicarPuntoHistorico(data) {\r\n\t\tthis.dialogRef.close();\r\n\t\tthis.mapaService.verTelefono(data);\r\n\t}\r\n\r\n\r\n\tpublic minimizarPopup() {\r\n\t\tthis.dialogRef.addPanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic maximizarPopup() {\r\n\t\tthis.dialogRef.removePanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic cerrarPopup() {\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n\r\n\r\n}\r\n","
\r\n\t\r\n\t\r\n\t\r\n\t\r\n\t
\r\n\t\t\r\n\t\t

Última Transmisión Panel

\r\n\t
\r\n\t\r\n
\r\n
\r\n\t
\r\n\t\t
\r\n\t\t\t

\r\n\t\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\r\n\t\t
\r\n\t
\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t

Tapa Restaurada

\r\n\t\t\t\t\t\t\t\t\t

Tapa Abierta

\r\n\t\t\t\t\t\t\t\t\t

Alarma de Pánico

\r\n\t\t\t\t\t\t\t\t\t

Alarma Silenciada

\r\n\t\t\t\t\t\t\t\t\t

Dispositivo Restaurado

\r\n\t\t\t\t\t\t\t\t\t

Dirección IP Utilizada

\r\n\t\t\t\t\t\t\t\t\t

Dirección IP Normal

\r\n\t\t\t\t\t\t\t\t\t

Armado

\r\n\t\t\t\t\t\t\t\t\t

Desarmado

\r\n\r\n\t\t\t\t\t\t\t\t\t

Pérdida de Alimentación

\r\n\t\t\t\t\t\t\t\t\t

Alarma Sensor de Movimiento

\r\n\t\t\t\t\t\t\t\t\t

Fallo de Red

\r\n\t\t\t\t\t\t\t\t\t

Dispositivo Sin Conexión

\r\n\r\n\t\t\t\t\t\t\t\t\t

Fallo de Celular

\r\n\t\t\t\t\t\t\t\t\t

Celular Resturado

\r\n\t\t\t\t\t\t\t\t\t

Perdida de Alimentación de Red

\r\n\t\t\t\t\t\t\t\t\t

Interferencia Detectada

\r\n\t\t\t\t\t\t\t\t\t

Interferencia Restaurada

\r\n\t\t\t\t\t\t\t\t\t

Dispositivo Inscrito

\r\n\t\t\t\t\t\t\t\t\t

Dispositivo Eliminado

\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t

Red Eléctrica Restaurada

\r\n\t\t\t\t\t\t\t\t\t

Red Restaurada

\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
","import { Component, OnInit } from '@angular/core';\r\nimport { PanelAdministracionService } from '../../../../panel-vigilancia/services/panel-administracion.service';\r\nimport { PanelCiudadano } from '../../../../../_entities/panelCiudadano/panelCiudadano';\r\nimport { MatDialog, MatDialogConfig, MatDialogRef } from '@angular/material';\r\nimport { MapaService } from '../../../services/mapa.service';\r\nimport { HistoricoPanelComponent } from '../../popups/paneles/historico-panel/historico-panel.component';\r\n\r\n@Component({\r\n selector: 'kt-ultima-transmision-boton-ciudadano',\r\n templateUrl: './ultima-transmision-boton-ciudadano.component.html',\r\n styleUrls: ['./ultima-transmision-boton-ciudadano.component.scss']\r\n})\r\nexport class UltimaTransmisionBotonCiudadanoComponent implements OnInit {\r\n public paneles: PanelCiudadano[];\r\n\tpublic applyFilterTypes: any;\r\n\tpublic currentFilter: any;\r\n\tpublic showFilterRow: boolean;\r\n\tpublic showHeaderFilter: boolean;\r\n\t isDiabled: boolean = true;\r\n\tpublic datosReporte = [];\r\n constructor(private mapaService:MapaService,private panelService:PanelAdministracionService,public dialogRef: MatDialogRef,\r\n\t\tpublic dialog: MatDialog) { \r\n this.showFilterRow = true;\r\n\t\tthis.showHeaderFilter = true;\r\n}\r\n\r\n ngOnInit(): void {\r\n this.obtenerPaneles();\r\n }\r\n\r\n obtenerPaneles(){\r\n this.panelService.obtenerUltimaPaneles().subscribe((result:PanelCiudadano[])=>{\r\n this.paneles = result;\r\n result.map(p => {\r\n if(p.boton == null || p.boton == \"\"){\r\n p.boton = 'Sin registro'\r\n } else{\r\n p.boton = p.boton\r\n }\r\n })\r\n result.map(q => {\r\n if(q.codigoProtocolo == null){\r\n q.codigoProtocolo = 'Sin registro'\r\n } else {\r\n q.codigoProtocolo = q.codigoProtocolo\r\n }\r\n })\r\n\r\n this.paneles.forEach(panel => {\r\n this.datosReporte.push({\r\n 'Evento': this.obtenerEvento(panel.descripcionAlarma),\r\n 'Nombre':panel.nombre,\r\n 'Nombre del Botón': panel.boton,\r\n 'Código': panel.codigoProtocolo,\r\n 'Modelo':panel.modelo,\r\n 'Número Seríe':panel.numeroSerie,\r\n 'Descripción':panel.descripcion,\r\n });\r\n });\r\n if(this.datosReporte.length > 0) {\r\n this.isDiabled = false;\r\n }\r\n })\r\n }\r\n\r\n obtenerEvento(descripcionAlarma) { \r\n\t\tlet evento = '';\r\n\t\tswitch (descripcionAlarma) {\r\n\t\t\tcase 'Lid Restored':\r\n\t\t\t\tevento = 'Tapa Restaurada';\r\n\t\t\t\tbreak;\r\n\t\t\tcase 'Lid Opened':\r\n\t\t\t\tevento = 'Tapa Abierta';\r\n\t\t\t\tbreak;\r\n case 'Audible Panic Alarm':\r\n evento = 'Alarma de Pánico';\r\n break;\r\n case 'Alarm Silenced':\r\n evento = 'Alarma Silenciada';\r\n break;\r\n case 'Device Restored':\r\n evento = 'Dispositivo Restaurado';\r\n break;\r\n case 'IP Address Already Used':\r\n evento = 'Dirección IP Utilizada';\r\n break;\r\n case 'Normal IP address':\r\n evento = 'DIrección IP Normal';\r\n break;\r\n case 'Armed':\r\n evento = 'Armado';\r\n break;\r\n case 'Disarmed':\r\n evento = 'Desarmado';\r\n break;\r\n\r\n case 'Expander AC Power Loss':\r\n\t\t\t\tevento = 'Perdida de Alimentación';\r\n\t\t\t\tbreak;\r\n case '24H Alarm':\r\n evento = 'Alarma Sensor de Movimiento'\r\n break;\r\n case 'Network Fault':\r\n evento = 'Fallo de Red';\r\n break;\r\n case 'Device Offline':\r\n evento = 'Dispositivo Sin Conexión';\r\n break;\r\n\r\n case 'Cellular Fault':\r\n evento = 'Fallo de Celular';\r\n break;\r\n case 'Cellular Restored':\r\n evento = 'Celular Restaurado';\r\n break;\r\n case 'Mains Power Lost':\r\n evento = 'Perdida de Alimentación de Red'\r\n break;\r\n case 'Jamming Detected':\r\n evento = 'Interferencia Detectada';\r\n break;\r\n case 'Jamming Restored':\r\n evento = 'Interferencia Restaurada';\r\n break;\r\n case 'Device Enrolled':\r\n evento = 'Dispositivo Inscrito';\r\n break;\r\n case 'Device Deleted':\r\n evento = 'Dispositivo Eliminado'\r\n break;\r\n\r\n case 'Mains Power Restored':\r\n evento = 'Red Eléctrica Restaurada';\r\n break;\r\n case 'Network Restored':\r\n evento = 'Red Restaurada';\r\n break;\r\n\r\n case null:\r\n evento = 'Sin Datos';\r\n break;\r\n\t\t}\r\n\t\treturn evento;\r\n\t}\r\n\r\n public minimizarPopup() {\r\n\t\tthis.dialogRef.addPanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic maximizarPopup() {\r\n\t\tthis.dialogRef.removePanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic cerrarPopup() {\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n\r\n\tubicarPuntoHistorico(data) {\r\n\t\tthis.mapaService.ocultarUbicadorPanelesLayer();\r\n\t\tthis.dialogRef.close();\r\n\t\tthis.mapaService.verPanel(data);\r\n\t}\r\n\r\n historicoPanel(data){\r\n const dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.autoFocus = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\t\tdialogConfig.hasBackdrop = false;\r\n\t\tdialogConfig.width = \"58%\";\r\n\t\tdialogConfig.data = data;\r\n\t\tthis.dialogRef.close();\r\n\t\tthis.dialog.open(HistoricoPanelComponent, dialogConfig);\r\n }\r\n\r\n}\r\n","
\r\n\t\r\n\t\r\n\t\r\n\t\r\n\t
\r\n\t\t\r\n\t\t

Dentro de Geocerca

\r\n\t
\r\n\t\r\n
\r\n
\r\n\t
\r\n\t\t

Dispositivos

\r\n\t\t

Especifique un rango de tiempo para obtener información

\r\n\t\t\r\n\t\t\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t \r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t{{d.data.descripcion}}\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t

{{estado.data.estado}}

\r\n\t\t\t\t\t\t\t\t

{{estado.data.estado}}

\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n\r\n\r\n","import { DatePipe } from '@angular/common';\r\nimport { Component, OnInit, Inject, ViewChild } from '@angular/core';\r\nimport { GeocercasService } from './../../../../../../views/monitoreo/services/geocercas.service';\r\nimport { VehiculoGeocerca } from './../../../../../../_entities/geocerca/vehiculo-geocerca';\r\nimport { MatDialog, MatDialogConfig, MatDialogRef, MAT_DIALOG_DATA } from '@angular/material';\r\nimport { finalize } from 'rxjs/operators';\r\nimport { MapaMarkerComponent } from '../../../mapa-marker/mapa-marker.component';\r\nimport * as FileSaver from 'file-saver';\r\nimport * as XLSX from 'xlsx';\r\nimport { IGNICIONES, ALERTAS } from './../../../../../../_entities/estados';\r\nimport { DxValidationGroupComponent } from 'devextreme-angular';\r\nimport { ToastrService } from 'ngx-toastr';\r\nconst EXCEL_EXTENSION = '.xlsx';\r\nconst EXCEL_TYPE = 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n\r\n@Component({\r\n\tselector: 'kt-dentro-geocerca-modal',\r\n\ttemplateUrl: './dentro-geocerca-modal.component.html',\r\n\tstyleUrls: ['./dentro-geocerca-modal.component.scss']\r\n})\r\nexport class DentroGeocercaModalComponent implements OnInit {\r\n\t@ViewChild('targetGroup', { static: false }) validationGroup: DxValidationGroupComponent\r\n\r\n\tpublic reporteDentroGeocerca: VehiculoGeocerca[] = []\r\n\tpublic fechaInicio;\r\n\tpublic fechaFin;\r\n\tpublic showFilterRow: boolean;\r\n\tpublic idVehiculo: number;\r\n\tpublic loadingVisible: boolean = false;\r\n\r\n\r\n\r\n\tconstructor(private geocercasService: GeocercasService,\r\n\t\tprivate toastService: ToastrService,\r\n\t\tprivate dialog: MatDialog,\r\n\t\tprivate datepipe: DatePipe,\r\n\t\tprivate dialogRef: MatDialogRef,\r\n\t\t@Inject(MAT_DIALOG_DATA) public vehiculo) {\r\n\t\tthis.showFilterRow = true;\r\n\t\tthis.orderHeaderFilter = this.orderHeaderFilter.bind(this);\r\n\t}\r\n\r\n\r\n\tngOnInit() {\r\n\t}\r\n\r\n\tobtenerDentroGeocerca(fechaInicio, fechaFin) {\r\n\t\tif (this.validationGroup.instance.validate().isValid) {\r\n\t\t\tthis.loadingVisible = true;\r\n\t\t\tconst fechaInicial = this.datepipe.transform(fechaInicio, \"yyyy-MM-dd\");\r\n\t\t\tconst fechaFinal = this.datepipe.transform(fechaFin, \"yyyy-MM-dd\");\r\n\r\n\t\t\tthis.geocercasService.obtenerVehiculosDentroGeocerca(fechaInicial, fechaFinal).pipe(\r\n\t\t\t\tfinalize(\r\n\t\t\t\t\t() => { this.loadingVisible = false; }\r\n\t\t\t\t)\r\n\t\t\t).subscribe(\r\n\t\t\t\t(vehiculos: VehiculoGeocerca[]) => {\r\n\t\t\t\t\tvehiculos.map(vehiculo => {\r\n\r\n\t\t\t\t\t\tconst ignicion = IGNICIONES.find(ignicion => ignicion.id == vehiculo.ignicion);\r\n\t\t\t\t\t\tvehiculo.ignicion = ignicion.nombre;\r\n\r\n\t\t\t\t\t\tconst estado = ALERTAS.find(alerta => alerta.id == vehiculo.estado);\r\n\t\t\t\t\t\tvehiculo.estado = estado.nombre;\r\n\r\n\t\t\t\t\t\tvehiculo.fecha = this.datepipe.transform(vehiculo.fecha, 'dd/MM/yyyy HH:mm');\r\n\t\t\t\t\t});\r\n\r\n\t\t\t\t\tthis.reporteDentroGeocerca = vehiculos;\r\n\t\t\t\t}\r\n\t\t\t);\r\n\t\t} else {\r\n\t\t\tthis.toastService.warning('Existen uno o mas campos vacios');\r\n\t\t}\r\n\t}\r\n\r\n\tpublic exportarExcel(json: any[], nombreArchivo: string): void {\r\n\t\tlet hojaCalculo: XLSX.WorkSheet = XLSX.utils.json_to_sheet(json);\r\n\t\tconst libroTrabajo: XLSX.WorkBook = { Sheets: { 'data': hojaCalculo }, SheetNames: ['data'] };\r\n\t\tconst excelBuffer: any = XLSX.write(libroTrabajo, { bookType: 'xlsx', type: 'array' });\r\n\t\tthis.guardarExcel(excelBuffer, nombreArchivo);\r\n\t}\r\n\r\n\tprivate guardarExcel(buffer: any, nombreArchivo: string): void {\r\n\t\tconst data: Blob = new Blob([buffer], { type: EXCEL_TYPE });\r\n\t\tFileSaver.saveAs(data, nombreArchivo + EXCEL_EXTENSION);\r\n\t}\r\n\r\n\texportar() {\r\n\t\tlet vehiculos = [];\r\n\t\tthis.reporteDentroGeocerca.forEach(function (vehiculo) {\r\n\t\t\tlet link = `http://www.gtmtec.mx/devsion/home/monitoreo/mapa?lat=${vehiculo.lat}&lng=${vehiculo.lng}`\r\n\t\t\tlet vehiculoForm = {\r\n\t\t\t\t\"Vehículo\": {\r\n\t\t\t\t\tf: 'HYPERLINK(\"' + link + '\",' + vehiculo.descripcion + ')',\r\n\t\t\t\t\tt: 'n',\r\n\t\t\t\t\tv: link\r\n\t\t\t\t},\r\n\t\t\t\t'Placas': vehiculo.placas,\r\n\t\t\t\t'Estado': vehiculo.estado,\r\n\t\t\t\t'Ignición': vehiculo.ignicion,\r\n\t\t\t\t'Fecha Y Hora': vehiculo.fecha\r\n\t\t\t}\r\n\t\t\tvehiculos.push(vehiculoForm);\r\n\t\t});\r\n\r\n\t\tthis.exportarExcel(vehiculos, 'Vehiculos_Dentro_Geocerca');\r\n\r\n\t}\r\n\r\n\r\n\tubicarPunto(data) {\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.autoFocus = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\t\tdialogConfig.hasBackdrop = false;\r\n\t\tdialogConfig.width = \"50%\";\r\n\t\tdialogConfig.height = \"60%\"\r\n\t\tdialogConfig.data = data;\r\n\t\tdialogConfig.panelClass = 'custom-modalbox';\r\n\t\tthis.dialogRef.close();\r\n\t\tthis.dialog.open(MapaMarkerComponent, dialogConfig);\r\n\t}\r\n\r\n\torderHeaderFilter(data) {\r\n\t\tdata.dataSource.postProcess = (results) => {\r\n\t\t\tresults.push({\r\n\t\t\t\ttext: \"Weekends\",\r\n\t\t\t\tvalue: \"weekends\"\r\n\t\t\t});\r\n\t\t\treturn results;\r\n\t\t};\r\n\t}\r\n\r\n\tpublic minimizarPopup() {\r\n\t\tthis.dialogRef.addPanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic maximizarPopup() {\r\n\t\tthis.dialogRef.removePanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic cerrarPopup() {\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n}\r\n\r\n\r\n","
\r\n\t\r\n\t\r\n\t\r\n\t\r\n\t
\r\n\t\t\r\n\t\t

Paso Punto

\r\n\t
\r\n\t\r\n
\r\n
\r\n\t
\r\n\t\t

Paso por punto

\r\n\t\t

Especifique un rango de tiempo en el cual desea obtener ubicaciones del vehiculo seleccionado.

\r\n\t\t\r\n\t\t\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t{{d.data.descripcion}}\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t

{{estado.data.estado}}

\r\n\t\t\t\t\t\t\t\t

{{estado.data.estado}}

\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n\r\n\r\n","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { MatDialog, MatDialogConfig, MatDialogRef } from '@angular/material';\r\nimport { VehiculoPasoPunto } from './../../../../../../_entities/paso-punto/vehiculo-paso-punto';\r\nimport { PuntoInteres } from './../../../../../../_entities/puntos-interes/puntoInteres';\r\nimport { PasoPuntoService } from './../../../../../monitoreo/services/paso-punto.service';\r\nimport { finalize } from 'rxjs/operators';\r\nimport { DatePipe } from '@angular/common';\r\nimport { MapaMarkerComponent } from '../../../mapa-marker/mapa-marker.component';\r\nimport { IGNICIONES, ALERTAS } from './../../../../../../_entities/estados';\r\nimport { DxValidationGroupComponent } from 'devextreme-angular';\r\nimport { ToastrService } from 'ngx-toastr';\r\n\r\n@Component({\r\n\tselector: 'kt-paso-punto',\r\n\ttemplateUrl: './paso-punto.component.html',\r\n\tstyleUrls: ['./paso-punto.component.scss']\r\n})\r\nexport class PasoPuntoComponent implements OnInit {\r\n\t@ViewChild('targetGroup', { static: false }) validationGroup: DxValidationGroupComponent\r\n\r\n\tpublic fechaInicio;\r\n\tpublic fechaFin;\r\n\tpublic puntosInteres: PuntoInteres[];\r\n\tpublic puntoInteres: Number;\r\n\tpublic reportePasoPunto: VehiculoPasoPunto[] = [];\r\n\tpublic showFilterRow: boolean;\r\n\tpublic loadingVisible: boolean = false;\r\n\r\n\tconstructor(private dialogRef: MatDialogRef,\r\n\t\tprivate pasoPuntoService: PasoPuntoService,\r\n\t\tprivate toastService: ToastrService,\r\n\t\tprivate datepipe: DatePipe,\r\n\t\tprivate dialog: MatDialog) {\r\n\t\tthis.showFilterRow = true;\r\n\t\tthis.orderHeaderFilter = this.orderHeaderFilter.bind(this);\r\n\t}\r\n\r\n\tngOnInit() {\r\n\t\tthis.obtenerPuntosInteres();\r\n\t}\r\n\r\n\torderHeaderFilter(data) {\r\n\t\tdata.dataSource.postProcess = (results) => {\r\n\t\t\tresults.push({\r\n\t\t\t\ttext: \"Weekends\",\r\n\t\t\t\tvalue: \"weekends\"\r\n\t\t\t});\r\n\t\t\treturn results;\r\n\t\t};\r\n\t}\r\n\r\n\tobtenerPasoPunto(idPunto, fechaInicio, fechaFin) {\r\n\t\tif(this.validationGroup.instance.validate().isValid){\r\n\t\t\tthis.loadingVisible = true;\r\n\t\t\tconst fechaInicial = this.datepipe.transform(fechaInicio, \"yyyy-MM-dd HH:mm:ss\");\r\n\t\t\tconst fechaFinal = this.datepipe.transform(fechaFin, \"yyyy-MM-dd HH:mm:ss\");\r\n\r\n\t\t\tthis.pasoPuntoService.obtenerPasoPunto(idPunto, fechaInicial, fechaFinal).pipe(\r\n\t\t\t\tfinalize(\r\n\t\t\t\t\t() => this.loadingVisible = false\r\n\t\t\t\t)\r\n\t\t\t).subscribe(\r\n\t\t\t\t(vehiculos: VehiculoPasoPunto[]) => {\r\n\t\t\t\t\tvehiculos.map(vehiculo => {\r\n\r\n\t\t\t\t\t\tconst ignicion = IGNICIONES.find(ignicion => ignicion.id == vehiculo.ignicion);\r\n\t\t\t\t\t\tvehiculo.ignicion = ignicion.nombre;\r\n\r\n\t\t\t\t\t\tconst estado = ALERTAS.find(alerta => alerta.id == vehiculo.estado);\r\n\t\t\t\t\t\tvehiculo.estado = estado.nombre;\r\n\r\n\t\t\t\t\t\tvehiculo.fechaHora = this.datepipe.transform(vehiculo.fechaHora, 'dd/MM/yyyy HH:mm');\r\n\t\t\t\t\t})\r\n\t\t\t\t\tthis.reportePasoPunto = vehiculos;\r\n\t\t\t\t}\r\n\t\t\t)\r\n\t\t} else {\r\n\t\t\tthis.toastService.warning('Existen uno o mas campos vacios');\r\n\t\t}\r\n\r\n\t}\r\n\r\n\tobtenerPuntosInteres() {\r\n\t\tthis.pasoPuntoService.obtenerPuntosInteres().subscribe(\r\n\t\t\t(puntosInteres: PuntoInteres[]) => {\r\n\t\t\t\tthis.puntosInteres = puntosInteres;\r\n\t\t\t}\r\n\t\t)\r\n\t}\r\n\r\n\tubicarPunto(data) {\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.autoFocus = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\t\tdialogConfig.hasBackdrop = false;\r\n\t\tdialogConfig.width = \"50%\";\r\n\t\tdialogConfig.height = \"60%\"\r\n\t\tdialogConfig.data = data;\r\n\t\tdialogConfig.panelClass = 'custom-modalbox';\r\n\t\tthis.dialogRef.close();\r\n\t\tthis.dialog.open(MapaMarkerComponent, dialogConfig);\r\n\t}\r\n\r\n\tpublic minimizarPopup() {\r\n\t\tthis.dialogRef.addPanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic maximizarPopup() {\r\n\t\tthis.dialogRef.removePanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic cerrarPopup() {\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n\r\n}\r\n","
\r\n\t\r\n\t\r\n\t\r\n\t\r\n\t
\r\n\t\t\r\n\t\t

Vehículos

\r\n\t
\r\n\t\r\n
\r\n
\r\n\t
\r\n\t\t
\r\n\t\t\t

\r\n\t\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\r\n\t\t
\r\n\t
\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n\r\n\r\n","import { Permiso } from '../../../../../../_entities/Enums/permiso.enum';\r\nimport { HistoricoPosicionesVehiculoComponent } from '../../../popups/vehiculos/historico-posiciones-vehiculo/historico-posiciones-vehiculo.component';\r\nimport { MapaService } from '../../../../services/mapa.service';\r\nimport { MatDialog, MatDialogRef, MatDialogConfig } from '@angular/material';\r\nimport { VehiculosService } from '../../../../services/vehiculos.service';\r\nimport { Autos } from '../../../../../../_entities/autos/Autos';\r\nimport { DxDataGridComponent } from 'devextreme-angular';\r\nimport { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { DatePipe } from '@angular/common';\r\nimport { AuthService } from './../../../../../../views/auth/auth.service';\r\nimport { finalize } from 'rxjs/operators';\r\n\r\n@Component({\r\n\tselector: 'kt-vehiculo-modal',\r\n\ttemplateUrl: './vehiculo-modal.component.html',\r\n\tstyleUrls: ['./vehiculo-modal.component.scss']\r\n})\r\nexport class VehiculoModalComponent implements OnInit {\r\n\t@ViewChild(DxDataGridComponent, { static: false }) dataGrid: DxDataGridComponent;\r\n\t// orders: Order[];\r\n\tpublic applyFilterTypes: any;\r\n\tpublic datosReporte = [];\r\n\t isDisabled: boolean = true;\r\n\tpublic currentFilter: any;\r\n\tpublic showFilterRow: boolean;\r\n\tpublic showHeaderFilter: boolean;\r\n\tpublic usuario;\r\n\tpublic vehiculos: Autos[];\r\n\tpublic permisoVisualizarVehiculos: string;\r\n\tpublic mensajeAgrupar: string = \"Para agrupar columnas, arrastre un encabezado aquí\";\r\n\tprivate HWUser;\r\n\tprivate HWAutos;\r\n\tloadingVisible\r\n\r\n\r\n\tconstructor(private vehiculosService: VehiculosService,\r\n\t\tprivate authService: AuthService,\r\n\t\tprivate dialogRef: MatDialogRef,\r\n\t\tprivate dialog: MatDialog,\r\n\t\tprivate datepipe: DatePipe,\r\n\t\tprivate mapaService: MapaService) {\r\n\t\tthis.showFilterRow = true;\r\n\t\tthis.showHeaderFilter = true;\r\n\t\tthis.orderHeaderFilter = this.orderHeaderFilter.bind(this);\r\n\t}\r\n\r\n\tngOnInit() {\r\n\t\tthis.HWUser = this.authService.getHWUser();\r\n\t\tthis.obtenerPermisosVehiculos();\r\n\t\tthis.obtenerHWAutos();\r\n\t\t//this.getVehiculos();\r\n\t}\r\n\r\n\tpublic get Permiso() {\r\n\t\treturn Permiso;\r\n\t}\r\n\tprivate static getOrderDay(rowData) {\r\n\t\treturn (new Date(rowData.OrderDate)).getDay();\r\n\t}\r\n\r\n\tcalculateFilterExpression(value, selectedFilterOperations, target) {\r\n\t\tlet column = this as any;\r\n\t\tif (target === \"headerFilter\" && value === \"weekends\") {\r\n\t\t\treturn [[VehiculoModalComponent.getOrderDay, \"=\", 0], \"or\", [VehiculoModalComponent.getOrderDay, \"=\", 6]];\r\n\t\t}\r\n\t\treturn column.defaultCalculateFilterExpression.apply(this, arguments);\r\n\t}\r\n\r\n\torderHeaderFilter(data) {\r\n\t\tdata.dataSource.postProcess = (results) => {\r\n\t\t\tresults.push({\r\n\t\t\t\ttext: \"Weekends\",\r\n\t\t\t\tvalue: \"weekends\"\r\n\t\t\t});\r\n\t\t\treturn results;\r\n\t\t};\r\n\t}\r\n\r\n\tclearFilter() {\r\n\t\tthis.dataGrid.instance.clearFilter();\r\n\t}\r\n\r\n\tgetVehiculos() {\r\n\t\t/*let token = '';\r\n\t\tif(this.HWUser) {\r\n\t\t\ttoken = this.HWUser.token;\r\n\t\t}*/\r\n\r\n\t\tthis.loadingVisible = true;\r\n\t\tthis.vehiculosService.obtenerAutos().pipe(\r\n\t\t\tfinalize(\r\n\t\t\t\t() => {\r\n\t\t\t\t\tthis.loadingVisible = false;\r\n\t\t\t\t}\r\n\t\t\t)\r\n\t\t).subscribe((vehiculos: Autos[]) => {\r\n\t\t\tthis.vehiculos = vehiculos;\r\n\t\t\tthis.vehiculos.forEach(vehiculo => {\r\n\t\t\t\tthis.datosReporte.push({\r\n\t\t\t\t\t'IMEI': vehiculo.imeiFk.toString(),\r\n\t\t\t\t\t'Placas': vehiculo.placas,\r\n\t\t\t\t\t'Económico': vehiculo.economico,\r\n\t\t\t\t\t'Numero de Serie': vehiculo.numeroSerie,\r\n\t\t\t\t\t'Color': vehiculo.color,\r\n\t\t\t\t\t'Descripción': vehiculo.descripcion,\r\n\t\t\t\t\t'Modelo': vehiculo.modelo,\r\n\t\t\t\t\t'Año': vehiculo.anio\r\n\t\t\t\t});\r\n\t\t\t});\r\n\t\t\tif(this.datosReporte.length > 0){\r\n\t\t\t\tthis.isDisabled = false;\r\n\t\t\t}\r\n\t\t\t//this.pintarMarcadoresAutos(vehiculos);\r\n\t\t})\r\n\t}\r\n\r\n\t/*public pintarMarcadoresAutos(autos: Autos[]) {\r\n\t\t/*if(this.HWAutos.data != null) {\r\n\t\t\tautos.forEach(auto => {\r\n\t\t\t\tlet value = this.HWAutos.data.dataList.filter(function (data) { return data.deviceguid === auto.imeiFk.toString() })\r\n\t\t\t\tif (value.length) {\r\n\t\t\t\t\tlet autoHW = value[0];\r\n\r\n\t\t\t\t\tlet ignicion = 0;\r\n\t\t\t\t\tlet estado = 0\r\n\t\t\t\t\tif (Number(autoHW.speed) > 5) {\r\n\t\t\t\t\t\tignicion = 1;\r\n\t\t\t\t\t\testado = 1;\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tauto.id = Number(autoHW.deviceguid)\r\n\t\t\t\t\tauto.lat = Number(autoHW.latitude);\r\n\t\t\t\t\tauto.lng = Number(autoHW.longitude);\r\n\t\t\t\t\tauto.estado = estado;\r\n\t\t\t\t\tauto.ignicion = ignicion;\r\n\t\t\t\t\tauto.velocidad = Number(autoHW.speed);\r\n\t\t\t\t\tauto.fechaHoraUltimaPosicion = autoHW.dtu\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\tthis.vehiculos = autos;\r\n\t\t} else {\r\n\t\t\tthis.vehiculos = autos;\r\n\r\n\t\t}*\r\n\t\tif (this.HWAutos) {\r\n\t\t\tautos.forEach(auto => {\r\n\t\t\t\tlet value = this.HWAutos.filter(function (data) { return data.id === auto.imeiFk.toString() })\r\n\t\t\t\tif (value.length) {\r\n\t\t\t\t\tlet autoHW = value[0];\r\n\r\n\t\t\t\t\tlet ignicion = 0;\r\n\t\t\t\t\tlet estado = 0\r\n\t\t\t\t\tif (Number(autoHW.ignicion) > 5) {\r\n\t\t\t\t\t\tignicion = 1;\r\n\t\t\t\t\t\testado = 1;\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tauto.id = Number(autoHW.id)\r\n\t\t\t\t\tauto.lat = Number(autoHW.lat);\r\n\t\t\t\t\tauto.lng = Number(autoHW.lng);\r\n\t\t\t\t\tauto.estado = estado;\r\n\t\t\t\t\tauto.ignicion = ignicion;\r\n\t\t\t\t\tauto.velocidad = Number(autoHW.velocidad);\r\n\t\t\t\t\tauto.fechaHoraUltimaPosicion = autoHW.fechaHoraUltimaPosicion\r\n\t\t\t\t}\r\n\r\n\t\t\t});\r\n\t\t\t//this.mapaService.registroVehiculos = autos;\r\n\r\n\t\t\tthis.vehiculos = autos;\r\n\r\n\t\t} else {\r\n\t\t\tthis.vehiculos = autos;\r\n\r\n\t\t}\r\n\r\n\r\n\r\n\t}*/\r\n\r\n\tobtenerHWAutos() {\r\n\t\tthis.vehiculosService.obtenerUltimaPosicionAutosCamara('-1', -1,).subscribe(\r\n\t\t\t(response: any) => {\r\n\t\t\t\t//this.HWAutos = response\r\n\t\t\t\tthis.getVehiculos();\r\n\t\t\t}, (error) => {\r\n\t\t\t\tthis.getVehiculos()\r\n\t\t\t\t//console.log('error::::: ', error);\r\n\t\t\t}\r\n\t\t)\r\n\t}\r\n\r\n\r\n\treportePosiciones(data: any) {\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.autoFocus = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\t\tdialogConfig.hasBackdrop = false;\r\n\t\tdialogConfig.width = \"58%\";\r\n\t\tdialogConfig.data = data;\r\n\t\tthis.dialogRef.close();\r\n\t\tthis.dialog.open(HistoricoPosicionesVehiculoComponent, dialogConfig);\r\n\t}\r\n\r\n\tpublic minimizarPopup() {\r\n\t\tthis.dialogRef.addPanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic maximizarPopup() {\r\n\t\tthis.dialogRef.removePanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic cerrarPopup() {\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n\r\n\tubicarPuntoHistorico(data) {\r\n\t\tthis.mapaService.verVehiculo(data);\r\n\t\tthis.cerrarPopup();\r\n\t}\r\n\r\n\t/**Obtener permisos vehiculos */\r\n\tobtenerPermisosVehiculos() {\r\n\t\tthis.permisoVisualizarVehiculos = Permiso.VisualizarVehiculos;\r\n\t}\r\n\r\n}\r\n","
\r\n\t\r\n\t\r\n\t\r\n\t\r\n\t
\r\n\t\t\r\n\t\t

Última Transmisión

\r\n\t
\r\n\t\r\n
\r\n
\r\n\t
\r\n\t\t
\r\n\t\t\t

\r\n\t\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\r\n\t\t
\r\n\t
\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n","import { DatePipe } from '@angular/common';\r\nimport { VehiculosService } from './../../../../services/vehiculos.service';\r\nimport { MatDialogRef } from '@angular/material';\r\nimport { MapaService } from './../../../../services/mapa.service';\r\nimport { Autos } from './../../../../../../_entities/autos/Autos';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { AuthService } from './../../../../../../views/auth/auth.service';\r\n\r\n\r\n@Component({\r\n\tselector: 'kt-vehiculo-ultima-transmision',\r\n\ttemplateUrl: './vehiculo-ultima-transmision.component.html',\r\n\tstyleUrls: ['./vehiculo-ultima-transmision.component.scss']\r\n})\r\nexport class VehiculoUltimaTransmisionComponent implements OnInit {\r\n\tpublic applyFilterTypes: any;\r\n\tpublic currentFilter: any;\r\n\tpublic showFilterRow: boolean;\r\n\tpublic showHeaderFilter: boolean;\r\n\tpublic datosReporte = [];\r\n\tpublic mensajeAgrupar: string = \"Arrastre un encabezado de columna aquí para agrupar por esa columna\"\r\n\tprivate HWUser;\r\n\tprivate HWAutos;\r\n\t isDisabled: boolean = true;\r\n\tvehiculos: Autos[];\r\n\r\n\tconstructor(private vehiculosService: VehiculosService,\r\n\t\tprivate authService: AuthService,\r\n\t\tprivate mapaService: MapaService,\r\n\t\tprivate datepipe: DatePipe,\r\n\t\tpublic dialogRef: MatDialogRef) {\r\n\t\tthis.showFilterRow = true;\r\n\t\tthis.showHeaderFilter = true;\r\n\t\tthis.orderHeaderFilter = this.orderHeaderFilter.bind(this);\r\n\r\n\t}\r\n\r\n\tngOnInit() {\r\n\t\tthis.HWUser = this.authService.getHWUser();\r\n\t\tthis.obtenerHWAutos();\r\n\t\tthis.getVehiculos();\r\n\r\n\t}\r\n\r\n\tgetVehiculos() {\r\n\t\t/*let token = ''\r\n\t\tif (this.HWUser) {\r\n\t\t\ttoken = this.HWUser.token;\r\n\t\t}*/\r\n\t\tthis.vehiculosService.obtenerAutos().subscribe(\r\n\t\t\t(vehiculos: Autos[]) => {\r\n\t\t\t\tvehiculos.map(vehiculo => {\r\n\t\t\t\t\tvehiculo.fechaHoraUltimaPosicion = this.datepipe.transform(vehiculo.fechaHoraUltimaPosicion, 'yyyy-MM-dd h:mm a');\r\n\t\t\t\t})\r\n\t\t\t\tthis.vehiculos = vehiculos;\r\n\t\t\t\tthis.vehiculos.forEach(vehiculo => {\r\n\t\t\t\t\tthis.datosReporte.push({\r\n\t\t\t\t\t\t'ID': vehiculo.id,\r\n\t\t\t\t\t\t'Placa': vehiculo.placas,\r\n\t\t\t\t\t\t'Económico': vehiculo.economico,\r\n\t\t\t\t\t\t'Última Transmisión': vehiculo.fechaHoraUltimaPosicion,\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t\t\tif(this.datosReporte.length > 0){\r\n\t\t\t\t\tthis.isDisabled = false;\r\n\t\t\t\t}\r\n\t\t\t\t//this.pintarMarcadoresAutos(vehiculos);\r\n\t\t\t})\r\n\t}\r\n\r\n\tobtenerHWAutos() {\r\n\t\t//this.HWAutos = this.ultima;\r\n\t\tthis.vehiculosService.obtenerUltimaPosicionAutosCamara('-1', -1).subscribe(\r\n\t\t\t(response: any) => {\r\n\t\t\t\tthis.HWAutos = response\r\n\t\t\t}, (error) => {\r\n\t\t\t\tconsole.log('error::::: ', error);\r\n\r\n\t\t\t});\r\n\t}\r\n\r\n\r\n\tpublic pintarMarcadoresAutos(autos: Autos[]) {\r\n\t\tif (this.HWAutos) {\r\n\t\t\tautos.forEach(auto => {\r\n\t\t\t\tlet value = this.HWAutos.filter(function (data) { return data.id === auto.imeiFk.toString() })\r\n\t\t\t\tif (value.length) {\r\n\t\t\t\t\tlet autoHW = value[0];\r\n\r\n\t\t\t\t\tlet ignicion = 0;\r\n\t\t\t\t\tlet estado = 0\r\n\t\t\t\t\tif (Number(autoHW.ignicion) > 5) {\r\n\t\t\t\t\t\tignicion = 1;\r\n\t\t\t\t\t\testado = 1;\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tauto.id = Number(autoHW.id)\r\n\t\t\t\t\tauto.lat = Number(autoHW.lat);\r\n\t\t\t\t\tauto.lng = Number(autoHW.lng);\r\n\t\t\t\t\tauto.estado = estado;\r\n\t\t\t\t\tauto.ignicion = ignicion;\r\n\t\t\t\t\tauto.velocidad = Number(autoHW.velocidad);\r\n\t\t\t\t\tauto.fechaHoraUltimaPosicion = autoHW.fechaHoraUltimaPosicion\r\n\t\t\t\t}\r\n\r\n\t\t\t});\r\n\t\t\t//this.mapaService.registroVehiculos = autos;\r\n\r\n\t\t\tthis.vehiculos = autos;\r\n\r\n\t\t} else {\r\n\t\t\tthis.vehiculos = autos;\r\n\r\n\t\t}\r\n\r\n\r\n\t}\r\n\r\n\tubicarPuntoHistorico(data) {\r\n\t\tthis.mapaService.verVehiculo(data);\r\n\t\tthis.cerrarPopup();\r\n\t}\r\n\r\n\r\n\tpublic minimizarPopup() {\r\n\t\tthis.dialogRef.addPanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic maximizarPopup() {\r\n\t\tthis.dialogRef.removePanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic cerrarPopup() {\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n\r\n\r\n\torderHeaderFilter(data) {\r\n\t\tdata.dataSource.postProcess = (results) => {\r\n\t\t\tresults.push({\r\n\t\t\t\ttext: \"Weekends\",\r\n\t\t\t\tvalue: \"weekends\"\r\n\t\t\t});\r\n\t\t\treturn results;\r\n\t\t};\r\n\t}\r\n\r\n}\r\n","
\r\n\t\r\n\t\r\n\t\r\n\t\r\n\t
\r\n\t\t\r\n\t\t

Ubicación

\r\n\t
\r\n\t\r\n
\r\n\r\n\t
\r\n\t\t
\r\n\t\t
\r\n\t
\r\n\t\r\n\t\r\n
\r\n","import { Component, OnInit, Inject } from '@angular/core';\r\nimport { MatDialog, MatDialogConfig, MatDialogRef, MAT_DIALOG_DATA } from '@angular/material';\r\nimport { MapaMarkerService } from '../../services/mapa-marker.service';\r\nimport { StreetViewComponent } from '../popups/street-view/street-view.component';\r\nimport StreetViewService = google.maps.StreetViewService;\r\nimport StreetViewPanorama = google.maps.StreetViewPanorama;\r\nimport StreetViewPanoramaData = google.maps.StreetViewPanoramaData;\r\nimport StreetViewStatus = google.maps.StreetViewStatus;\r\n\r\n@Component({\r\n\tselector: 'kt-mapa-marker',\r\n\ttemplateUrl: './mapa-marker.component.html',\r\n\tstyleUrls: ['./mapa-marker.component.scss']\r\n})\r\nexport class MapaMarkerComponent implements OnInit {\r\n\tpublic isStreetView: boolean = true;\r\n\tpublic panorama: StreetViewPanorama;\r\n\tpublic sv: StreetViewService;\r\n\tpublic isAvailable: boolean = true;\r\n\r\n\tconstructor(private mapaMarkerService: MapaMarkerService,\r\n\t\tprivate dialog: MatDialog,\r\n\t\tprivate dialogRef: MatDialogRef,\r\n\t\t@Inject(MAT_DIALOG_DATA) public data) {\r\n\t}\r\n\r\n\tverMapa(){\r\n\t\tthis.isStreetView = true;\r\n\r\n\t}\r\n\r\n\tverStreetView() {\r\n\t\tconst { lat, lng } = this.data;\r\n\t\tconst coordinates = { lat, lng };\r\n\t\tthis.sv = new StreetViewService();\r\n\t\tthis.panorama = new StreetViewPanorama(document.getElementById('pano'));\r\n\r\n\t\tthis.sv.getPanorama({\r\n\t\t\tlocation: coordinates,\r\n\t\t\tradius: 50\r\n\t\t}, (data, status) => {\r\n\t\t\tthis.processSVData(data, status);\r\n\t\t\tthis.panorama.setVisible(true);\r\n\t\t\tthis.isStreetView = false;\r\n\t\t}\r\n\t\t);\r\n\t}\r\n\r\n\tpublic processSVData(data: StreetViewPanoramaData, status: StreetViewStatus): void {\r\n\t\tif (data != null) {\r\n\t\t\tthis.panorama.setPano(data.location.pano);\r\n\t\t\tthis.panorama.setPov({\r\n\t\t\t\theading: 270,\r\n\t\t\t\tpitch: 0\r\n\t\t\t});\r\n\t\t} else {\r\n\t\t\tthis.isAvailable = false;\r\n\t\t}\r\n\t}\r\n\r\n\r\n\tngOnInit() {\r\n\t\tthis.mapaMarkerService.inicializarMapa();\r\n\t\tthis.mapaMarkerService.pintarMarcadores(this.data);\r\n\t}\r\n\r\n\tpublic minimizarPopup() {\r\n\t\tthis.dialogRef.addPanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic maximizarPopup() {\r\n\t\tthis.dialogRef.removePanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic cerrarPopup() {\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n\r\n}\r\n","
\r\n\t\r\n\t\r\n\t\r\n\t\r\n\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t\t

Histórico de Posiciones

\r\n\t\t
\r\n\t\t\r\n\t
\r\n
\r\n\r\n\t\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t

{{activo.descripcion}}

\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\tEspecifique un rango de tiempo en el cual desea obtener ubicaciones del activo\r\n\t\t\t\t\tseleccionado.\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t\t
\r\n\t\t\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t \r\n\t\t\t\t\t\t\t\t \r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t\t\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
{{descripcion.value}}
\r\n\t\t\t\t\t
Sin datos
\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
{{bateria.value}}
\r\n\t\t\t\t\t
Sin datos
\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t{{ celltemplate.data.alimentacion }}\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t{{movimiento.value}}\r\n\t\t\t\t\t\r\n\t\t\t\t\t{{movimiento.value}}\r\n\t\t\t\t\t\r\n\t\t\t\t\tSin datos\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t{{gps.value}}\r\n\t\t\t\t\t{{gps.value}}\r\n\t\t\t\t\t{{gps.value}}\r\n\t\t\t\t\tSin datos\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t{{gsm.value}}\r\n\t\t\t\t\tSin datos\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n\r\n\r\n\r\n\r\n","import { finalize } from 'rxjs/operators';\r\nimport { ActivosService } from './../../../../services/activos.service';\r\nimport { MatDialog, MAT_DIALOG_DATA, MatDialogRef } from '@angular/material';\r\nimport { MapaService } from './../../../../services/mapa.service';\r\nimport { DatePipe } from '@angular/common';\r\nimport { ActivoHistoricoPosiciones } from './../../../../../../_entities/activos/activo';\r\nimport { Component, Inject, OnInit, ViewChild } from '@angular/core';\r\nimport { DxDataGridComponent, DxValidationGroupComponent } from 'devextreme-angular';\r\nimport { GSM, GPS } from './../../../../../../_entities/estados';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { environment } from './../../../../../../../environments/environment';\r\n\r\n\r\n@Component({\r\n\tselector: 'kt-historico-posiciones-activo',\r\n\ttemplateUrl: './historico-posiciones-activo.component.html',\r\n\tstyleUrls: ['./historico-posiciones-activo.component.scss']\r\n})\r\nexport class HistoricoPosicionesActivoComponent implements OnInit {\r\n\t@ViewChild(DxDataGridComponent, { static: false }) dataGrid: DxDataGridComponent;\r\n\t@ViewChild('targetGroup', { static: false }) validationGroup: DxValidationGroupComponent;\r\n\r\n\tpublic reportePos: ActivoHistoricoPosiciones[];\r\n\tloadingVisible = false;\r\n\r\n\tpublic usuario;\r\n\tpublic idVehiculo;\r\n\tpublic activo;\r\n\tpublic idUsuario;\r\n\tpublic reporteQ: any;\r\n\tpublic fechaInicial;\r\n\tpublic fechaFinal;\r\n\tpublic fechaFin;\r\n\tpublic fechaInicio;\r\n\r\n\tpublic datosReporte = [];\r\n\tpublic showTable = false;\r\n\tpublic showFilterRow: boolean;\r\n\tisDisabled: boolean = true;\r\n\r\n\tconstructor(private activosService: ActivosService,\r\n\t\tprivate datepipe: DatePipe,\r\n\t\tprivate mapaService: MapaService,\r\n\t\tprivate toastService: ToastrService,\r\n\t\tprivate dialog: MatDialog,\r\n\t\t@Inject(MAT_DIALOG_DATA) public data: any,\r\n\t\tpublic dialogRef: MatDialogRef) {\r\n\t\tthis.showFilterRow = true;\r\n\t\tthis.orderHeaderFilter = this.orderHeaderFilter.bind(this);\r\n\t}\r\n\r\n\tngOnInit() {\r\n\t\tif (JSON.parse(sessionStorage.getItem('historico'))) {\r\n\t\t\tthis.reportePos = JSON.parse(sessionStorage.getItem('historico'))\r\n\t\t\tthis.activo = JSON.parse(sessionStorage.getItem('data'));\r\n\t\t\tthis.reportePos.forEach(reporte => {\r\n\t\t\t\tlet link = `${environment.EXTERNAL_MAP}/ubicar?lat=${reporte.lat}&lng=${reporte.lng}`\r\n\r\n\t\t\t\tthis.datosReporte.push({\r\n\t\t\t\t\t'Ubicacion': {\r\n\t\t\t\t\t\tf: '=HYPERLINK(\"' + link + '\",\"Ubicar\")',\r\n\t\t\t\t\t\tv: link\r\n\t\t\t\t\t},\r\n\t\t\t\t\t'Fecha y Hora': reporte.fechaHora,\r\n\t\t\t\t\t'IMEI': reporte.imei,\r\n\t\t\t\t\t'Descripción': reporte.descripcion,\r\n\t\t\t\t\t'Batería': reporte.bateria,\r\n\t\t\t\t\t'Alimentación': reporte.alimentacion,\r\n\t\t\t\t\t'Movimiento': reporte.movimiento,\r\n\t\t\t\t\t'GPS': reporte.gps,\r\n\t\t\t\t\t'GSM': reporte.gsm,\r\n\t\t\t\t\t'Latitud': reporte.lat,\r\n\t\t\t\t\t'Longitud': reporte.lng\r\n\t\t\t\t});\r\n\t\t\t});\r\n\r\n\t\t\tif (this.reportePos.length > 0) {\r\n\t\t\t\tthis.isDisabled = false;\r\n\t\t\t\tthis.showTable = true;\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\tthis.activo = this.data;\r\n\t\t}\r\n\r\n\t}\r\n\r\n\tobtenerReportePosiciones(fechaInicio, fechaFin) {\r\n\t\tif (this.validationGroup.instance.validate().isValid) {\r\n\t\t\tthis.loadingVisible = true;\r\n\t\t\tthis.fechaInicial = this.datepipe.transform(fechaInicio, \"yyyy-MM-dd HH:mm:ss\");\r\n\t\t\tthis.fechaFinal = this.datepipe.transform(fechaFin, \"yyyy-MM-dd HH:mm:ss\");\r\n\t\t\tthis.mapaService.historicoFechas = [this.fechaInicial, this.fechaFinal]\r\n\t\t\tthis.reportePos = [];\r\n\t\t\tthis.activosService.obtenerReportePosiciones(this.activo.imei, this.fechaInicial, this.fechaFinal).pipe(\r\n\t\t\t\tfinalize(() => {\r\n\t\t\t\t\tthis.loadingVisible = false;\r\n\t\t\t\t})\r\n\t\t\t).subscribe(\r\n\t\t\t\t(response: ActivoHistoricoPosiciones[]) => {\r\n\t\t\t\t\tif (response.length > 0) {\r\n\t\t\t\t\t\tresponse.map(activo => {\r\n\t\t\t\t\t\t\tactivo.tipo = 'activo';\r\n\t\t\t\t\t\t\tactivo.estado = activo.estatus;\r\n\t\t\t\t\t\t\tactivo.fechaHora = this.datepipe.transform(activo.fechaHora, \"dd/MM/yyyy hh:mm:ss a\")\r\n\r\n\t\t\t\t\t\t\tif (activo.estatus == 0) {\r\n\t\t\t\t\t\t\t\tactivo.estatus = 'Inactivo';\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tactivo.estatus = 'Activo';\r\n\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\tif (activo.bateria == null || activo.bateria == '') {\r\n\t\t\t\t\t\t\t\tactivo.bateria = 'Sin Batería'\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tactivo.bateria = activo.bateria + '%'\r\n\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\tswitch (activo.alimentacion) {\r\n\t\t\t\t\t\t\t\tcase 0:\r\n\t\t\t\t\t\t\t\t\tactivo.alimentacion = 'Sin Energía';\r\n\t\t\t\t\t\t\t\t\tactivo.color = 'gris'\r\n\t\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\t\tcase 1:\r\n\t\t\t\t\t\t\t\t\tactivo.alimentacion = 'Energizado';\r\n\t\t\t\t\t\t\t\t\tactivo.color = 'verde';\r\n\t\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\t\tdefault:\r\n\t\t\t\t\t\t\t\t\tactivo.alimentacion = 'Sin Datos';\r\n\t\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\tswitch (activo.movimiento) {\r\n\t\t\t\t\t\t\t\tcase 0:\r\n\t\t\t\t\t\t\t\t\tactivo.movimiento = 'Sin Movimiento';\r\n\t\t\t\t\t\t\t\t\tactivo.icono = './assets/media/marcadores/flechaGris.png';\r\n\t\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\t\tcase 1:\r\n\t\t\t\t\t\t\t\t\tactivo.movimiento = 'En Movimiento';\r\n\t\t\t\t\t\t\t\t\tactivo.icono = './assets/media/marcadores/flechaVerde.png';\r\n\t\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\t\tdefault:\r\n\t\t\t\t\t\t\t\t\tactivo.movimiento = 'Sin Movimiento';\r\n\t\t\t\t\t\t\t\t\tactivo.icono = './assets/media/marcadores/flechaGris.png'\r\n\t\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\t}\r\n\r\n\r\n\t\t\t\t\t\t\tconst alertaGSM = GSM.find(gsm => activo.gsm == gsm.id);\r\n\t\t\t\t\t\t\tactivo.gsm = alertaGSM.nombre;\r\n\t\t\t\t\t\t\ttry {\r\n\t\t\t\t\t\t\t\tconst alertaGPS = GPS.find(gps => activo.gps == gps.id);\r\n\t\t\t\t\t\t\t\tactivo.gps = alertaGPS.nombre;\r\n\t\t\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\t\t\tactivo.gps = 'Pésima';\r\n\t\t\t\t\t\t\t}\r\n\r\n\r\n\t\t\t\t\t\t})\r\n\r\n\t\t\t\t\t\tthis.reportePos = response\r\n\t\t\t\t\t\tsessionStorage.setItem('historico', JSON.stringify(this.reportePos));\r\n\t\t\t\t\t\tsessionStorage.setItem('data', JSON.stringify(this.activo))\r\n\t\t\t\t\t\tthis.mapaService.posicionesReporte = response;\r\n\t\t\t\t\t\tthis.mapaService.tipoProducto = 'activo'\r\n\t\t\t\t\t\tthis.mapaService.datosGenerales = this.activo;\r\n\t\t\t\t\t\tthis.mapaService.pintarMarcadoresHistorico();\r\n\t\t\t\t\t\tvar botonesRecorrido = document.getElementById('botonesRecorrido');\r\n\t\t\t\t\t\t//\tbotonesRecorrido.style.display = 'block';\r\n\t\t\t\t\t\tthis.mapaService.estadoHistorico = true;\r\n\t\t\t\t\t\tthis.mapaService.validarEstadoHistorico();\r\n\t\t\t\t\t\tthis.mapaService.abrirPopupRecorrido();\r\n\t\t\t\t\t\tthis.cerrarPopup()\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tthis.toastService.info('No existen datos disponibles')\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t);\r\n\t\t} else {\r\n\t\t\tthis.toastService.warning('Existen campos requerídos vacíos');\r\n\r\n\t\t}\r\n\r\n\t}\r\n\r\n\treporteAlDia() {\r\n\t\tthis.loadingVisible = true;\r\n\t\tlet fechaInicial = new Date().toString();\r\n\t\tfechaInicial = this.datepipe.transform(fechaInicial, \"yyyy-MM-dd 00:00:00\");\r\n\r\n\t\tlet fechaFinal = new Date().toString();\r\n\t\tfechaFinal = this.datepipe.transform(fechaFinal, 'yyyy-MM-dd HH:mm:ss');\r\n\r\n\t\tthis.mapaService.historicoFechas = [fechaInicial, fechaFinal]\r\n\t\tthis.reportePos = [];\r\n\r\n\t\tthis.activosService.obtenerReportePosiciones(this.activo.imei, fechaInicial, fechaFinal).pipe(\r\n\t\t\tfinalize(() => {\r\n\t\t\t\tthis.loadingVisible = false;\r\n\t\t\t})\r\n\t\t).subscribe(\r\n\t\t\t(response: ActivoHistoricoPosiciones[]) => {\r\n\t\t\t\tif (response.length > 0) {\r\n\t\t\t\t\tresponse.map(activo => {\r\n\t\t\t\t\t\tactivo.tipo = 'activo';\r\n\t\t\t\t\t\tactivo.estado = activo.estatus;\r\n\t\t\t\t\t\tactivo.fechaHora = this.datepipe.transform(activo.fechaHora, \"dd/MM/yyyy hh:mm:ss a\")\r\n\r\n\t\t\t\t\t\tif (activo.estatus == 0) {\r\n\t\t\t\t\t\t\tactivo.estatus = 'Inactivo';\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tactivo.estatus = 'Activo';\r\n\t\t\t\t\t\t}\r\n\r\n\r\n\t\t\t\t\t\tif (activo.bateria == null || activo.bateria == '') {\r\n\t\t\t\t\t\t\tactivo.bateria = 'Sin Batería'\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tactivo.bateria = activo.bateria + '%'\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\tswitch (activo.alimentacion) {\r\n\t\t\t\t\t\t\tcase 0:\r\n\t\t\t\t\t\t\t\tactivo.alimentacion = 'Sin Energía';\r\n\t\t\t\t\t\t\t\tactivo.color = 'gris'\r\n\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\tcase 1:\r\n\t\t\t\t\t\t\t\tactivo.alimentacion = 'Energizado';\r\n\t\t\t\t\t\t\t\tactivo.color = 'verde';\r\n\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\tdefault:\r\n\t\t\t\t\t\t\t\tactivo.alimentacion = 'Sin Datos';\r\n\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\tswitch (activo.movimiento) {\r\n\t\t\t\t\t\t\tcase 0:\r\n\t\t\t\t\t\t\t\tactivo.movimiento = 'Sin Movimiento';\r\n\t\t\t\t\t\t\t\tactivo.icono = './assets/media/marcadores/flechaGris.png'\r\n\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\tcase 1:\r\n\t\t\t\t\t\t\t\tactivo.movimiento = 'En Movimiento';\r\n\t\t\t\t\t\t\t\tactivo.icono = './assets/media/marcadores/flechaVerde.png';\r\n\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\tdefault:\r\n\t\t\t\t\t\t\t\tactivo.movimiento = 'Sin Movimiento';\r\n\t\t\t\t\t\t\t\tactivo.icono = './assets/media/marcadores/flechaGris.png'\r\n\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t}\r\n\r\n\r\n\t\t\t\t\t\tconst alertaGSM = GSM.find(gsm => activo.gsm == gsm.id);\r\n\t\t\t\t\t\tactivo.gsm = alertaGSM.nombre;\r\n\t\t\t\t\t\ttry {\r\n\t\t\t\t\t\t\tconst alertaGPS = GPS.find(gps => activo.gps == gps.id);\r\n\t\t\t\t\t\t\tactivo.gps = alertaGPS.nombre;\r\n\t\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\t\tactivo.gps = 'Pésima';\r\n\t\t\t\t\t\t}\r\n\r\n\r\n\t\t\t\t\t})\r\n\r\n\t\t\t\t\tthis.reportePos = response\r\n\t\t\t\t\tsessionStorage.setItem('historico', JSON.stringify(this.reportePos));\r\n\t\t\t\t\tsessionStorage.setItem('data', JSON.stringify(this.activo))\r\n\t\t\t\t\tthis.mapaService.posicionesReporte = response;\r\n\t\t\t\t\tthis.mapaService.tipoProducto = 'activo'\r\n\t\t\t\t\tthis.mapaService.datosGenerales = this.activo;\r\n\t\t\t\t\tthis.mapaService.pintarMarcadoresHistorico();\r\n\t\t\t\t\tvar botonesRecorrido = document.getElementById('botonesRecorrido');\r\n\t\t\t\t\t//botonesRecorrido.style.display = 'block';\r\n\t\t\t\t\tthis.mapaService.estadoHistorico = true;\r\n\t\t\t\t\tthis.mapaService.validarEstadoHistorico();\r\n\t\t\t\t\tthis.mapaService.abrirPopupRecorrido();\r\n\t\t\t\t\tthis.cerrarPopup()\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis.toastService.info('No existen datos disponibles')\r\n\t\t\t\t}\r\n\r\n\r\n\t\t\t}\r\n\t\t);\r\n\r\n\t}\r\n\r\n\tclearFilter() {\r\n\t\tthis.dataGrid.instance.clearFilter();\r\n\t}\r\n\r\n\r\n\tpublic ubicarPuntoHistorico(data) {\r\n\t\tthis.mapaService.ubicarPuntoHistorico(data);\r\n\t}\r\n\r\n\tpublic minimizarPopup() {\r\n\t\tthis.dialogRef.addPanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic maximizarPopup() {\r\n\t\tthis.dialogRef.removePanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic cerrarPopup() {\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n\r\n\torderHeaderFilter(data) {\r\n\t\tdata.dataSource.postProcess = (results) => {\r\n\t\t\tresults.push({\r\n\t\t\t\ttext: \"Weekends\",\r\n\t\t\t\tvalue: \"weekends\"\r\n\t\t\t});\r\n\t\t\treturn results;\r\n\t\t};\r\n\t}\r\n\r\n}\r\n","
\r\n\t\r\n\t\r\n\t\r\n\t\r\n\t
\r\n\t\t\r\n\t\t

{{activo.descripcion}}

\r\n\t
\r\n\t\r\n
\r\n
\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\tCliente: {{activo.cliente}}
\r\n\t\t\t\tDescripción: {{activo.descripcion}}
\r\n\t\t\t\tIMEI: {{activo.imei}}
\r\n\t\t\t\tEconómico: {{activo.economico}}
\r\n\t\t\t\tSerie: {{activo.numeroSerie}}
\r\n\t\t\t\t
\r\n\t\t\t\t\tGPS: \r\n\t\t\t\t\t{{activo.gps}}
\r\n\t\t\t\t\t{{activo.gps}}
\r\n\t\t\t\t\t{{activo.gps}}
\r\n\t\t\t\t
\r\n\t\t\t\tGSM: {{activo.gsm}}
\r\n\t\t\t\tModelo: {{activo.modelo}}
\r\n\t\t\t\tBateria: {{activo.bateria}}
\r\n\t\t\t\tEstatus: {{activo.estatus}}
\r\n\t\t\t\tGeocerca:\r\n\t\t\t\t{{geocercaAsignada}}
\r\n\t\t\t\tFecha y\r\n\t\t\t\t\tHora: {{fechaHora}}
\r\n\t\t\t\tÚltima\r\n\t\t\t\t\tPosición: [{{activo.lat\r\n\t\t\t\t\t|\r\n\t\t\t\t\tnumber: '1.1-4'}},\r\n\t\t\t\t\t{{activo.lng | number: '1.1-4'}}]
\r\n\t\t\t\tDirección: {{direccion}}\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t \r\n\t\t\t\t \r\n\t\t\t\t \r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n","import { HistoricoPosicionesActivoComponent } from './../historico-posiciones-activo/historico-posiciones-activo.component';\r\nimport { StreetViewComponent } from './../../street-view/street-view.component';\r\nimport { MapaService } from './../../../../services/mapa.service';\r\nimport { DatePipe } from '@angular/common';\r\nimport { ActivoUltimaTransmision } from './../../../../../../_entities/activos/activo';\r\nimport { MAT_DIALOG_DATA, MatDialog, MatDialogRef, MatDialogConfig } from '@angular/material';\r\nimport { Component, OnInit, Inject } from '@angular/core';\r\n\r\n@Component({\r\n\tselector: 'kt-informacion-activo',\r\n\ttemplateUrl: './informacion-activo.component.html',\r\n\tstyleUrls: ['./informacion-activo.component.scss']\r\n})\r\nexport class InformacionActivoComponent implements OnInit {\r\n\tpublic fechaHora: any;\r\n\tpublic activo: ActivoUltimaTransmision;\r\n\tpublic imagen: string;\r\n\tpublic direccion: string;\r\n\tpublic geocercaAsignada: string = '';\r\n\r\n\tconstructor(private mapaService: MapaService,\r\n\t\tpublic datepipe: DatePipe,\r\n\t\tpublic dialog: MatDialog,\r\n\t\tpublic dialogRef: MatDialogRef,\r\n\t\t@Inject(MAT_DIALOG_DATA) public data: ActivoUltimaTransmision) { }\r\n\r\n\tngOnInit() {\r\n\t\tthis.obtenerDatosActivo(this.data);\r\n\t}\r\n\r\n\tobtenerDatosActivo(activo) {\r\n\t\tthis.imagen = activo.imagen;\r\n\t\tthis.fechaHora = this.datepipe.transform(activo.fechaHora, 'yyyy-MM-dd h:mma');\r\n\t\tthis.mapaService.getDireccion([activo.lng, activo.lat]).then(\r\n\t\t\t(data: any) => {\r\n\t\t\t\tthis.direccion = data.display_name || \"Dirección Desconocida\";\r\n\t\t\t},\r\n\t\t\t() => {\r\n\t\t\t\tthis.direccion = \"Dirección Desconocida\";\r\n\t\t\t});\r\n\r\n\t\tif (activo.geocercas != null) {\r\n\t\t\tif (activo.geocercas.length > 0) {\r\n\t\t\t\tactivo.geocercas.forEach(geocerca => {\r\n\t\t\t\t\tthis.geocercaAsignada = this.geocercaAsignada + geocerca.nombre + ', ';\r\n\t\t\t\t});\r\n\r\n\t\t\t\tthis.geocercaAsignada = this.geocercaAsignada.slice(0, -1);\r\n\t\t\t\tthis.geocercaAsignada = this.geocercaAsignada.slice(0, -1);\r\n\r\n\t\t\t} else {\r\n\t\t\t\tthis.geocercaAsignada = 'Sin asignación';\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\tthis.geocercaAsignada = 'Sin asignación';\r\n\r\n\t\t}\r\n\r\n\t\tthis.activo = activo;\r\n\r\n\t}\r\n\r\n\tubicarActivo() {\r\n\t\tthis.mapaService.verActivo(this.activo);\r\n\t}\r\n\r\n\tpublic minimizarPopup() {\r\n\t\tthis.dialogRef.addPanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic maximizarPopup() {\r\n\t\tthis.dialogRef.removePanelClass('displayNone');\r\n\t}\r\n\r\n\tverStreet() {\r\n\t\t/*StreetView Popup*/\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.autoFocus = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\t\tdialogConfig.panelClass = 'custom-modalbox';\r\n\t\tdialogConfig.width = \"40%\";\r\n\t\tdialogConfig.closeOnNavigation = true;\r\n\t\tdialogConfig.hasBackdrop = false;\r\n\t\tdialogConfig.data = this.data;\r\n\t\tthis.dialog.open(StreetViewComponent, dialogConfig);\r\n\t}\r\n\r\n\tverHistorico() {\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.autoFocus = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\t\tdialogConfig.width = \"50%\";\r\n\t\tdialogConfig.panelClass = 'custom-modalbox';\r\n\t\tdialogConfig.closeOnNavigation = true;\r\n\t\tdialogConfig.hasBackdrop = false;\r\n\t\tdialogConfig.data = this.data\r\n\t\tthis.dialog.open(HistoricoPosicionesActivoComponent, dialogConfig);\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n\r\n\r\n\tpublic cerrarPopup() {\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n\r\n}\r\n","
\r\n\t
\r\n\t\t\r\n\t\t\r\n\t\t\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t

GRAFICA DEL HISTORIAL DE MEDICIONES

\r\n\t\t\t
\r\n\t\t\t\r\n\t\t
\r\n\t
\r\n
\r\n
\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n","import { DatePipe } from '@angular/common';\r\nimport { MatDialog, MatDialogRef, MAT_DIALOG_DATA } from '@angular/material';\r\nimport { Component, Inject, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'kt-grafica-estadistica-medidor',\r\n templateUrl: './grafica-estadistica-medidor.component.html',\r\n styleUrls: ['./grafica-estadistica-medidor.component.scss']\r\n})\r\nexport class GraficaEstadisticaMedidorComponent implements OnInit {\r\n public dataGrafica = []\r\n public legend: boolean = true;\r\n public showLabels: boolean = true;\r\n public animations: boolean = true;\r\n public xAxis: boolean = true;\r\n public yAxis: boolean = true;\r\n public showYAxisLabel: boolean = false;\r\n public showXAxisLabel: boolean = false;\r\n public timeline: boolean = true;\r\n public autoScale: boolean = true;\r\n public showGrafica: boolean = false;\r\n\r\n public legendTitle: string = \"\"\r\n\r\n colorScheme = {\r\n domain: ['#166BA2', '#5AA454']\r\n };\r\n\r\n constructor(public dialog: MatDialog,\r\n private datepipe: DatePipe,\r\n public dialogRef: MatDialogRef,\r\n @Inject(MAT_DIALOG_DATA) public data: any) { }\r\n\r\n ngOnInit() {\r\n const gasto = this.obtenerGraficaGasto();\r\n const totalizador = this.obtenerGraficaTotalizador();\r\n\r\n this.dataGrafica.push(gasto);\r\n this.dataGrafica.push(totalizador);\r\n }\r\n\r\n obtenerGraficaGasto() {\r\n let array = []\r\n\r\n for (let d of this.data) {\r\n let gasto = d.gasto\r\n let fecha = new Date(d.fechaHora)\r\n \r\n const aux = { \"name\": fecha, \"value\": gasto.toFixed(4) }\r\n array.push(aux)\r\n \r\n }\r\n\r\n const dataGraficaGasto = {\r\n \"name\": \"Gasto m3/h\",\r\n \"series\": array\r\n } \r\n return dataGraficaGasto\r\n }\r\n\r\n\r\n obtenerGraficaTotalizador() {\r\n let array = []\r\n\r\n for (let d of this.data) {\r\n let totalizador = d.totalizador\r\n let fecha = new Date(d.fechaHora)\r\n const aux = { \"name\": fecha, \"value\": totalizador.toFixed(4) }\r\n array.push(aux)\r\n }\r\n\r\n const dataGraficaTotalizador = {\r\n \"name\": \"Totalizador m3\",\r\n \"series\": array\r\n }\r\n\r\n return dataGraficaTotalizador\r\n }\r\n\r\n public minimizarPopup() {\r\n this.dialogRef.addPanelClass('displayNone');\r\n }\r\n\r\n public maximizarPopup() {\r\n this.dialogRef.removePanelClass('displayNone');\r\n }\r\n\r\n public cerrarPopup() {\r\n this.dialogRef.close();\r\n }\r\n\r\n public tickFormatting(date: any) {\r\n const options = {\r\n year: 'numeric',\r\n month: 'numeric',\r\n day: 'numeric',\r\n hour: 'numeric',\r\n minute: 'numeric',\r\n second: 'numeric'\r\n\r\n };\r\n if (date.constructor.name === 'Date') {\r\n return date.toLocaleDateString('en-US', options);\r\n }\r\n return date.toLocaleString('en-US', options);\r\n }\r\n\r\n onSelect(data): void {\r\n //console.log('Item clicked', JSON.parse(JSON.stringify(data)));\r\n }\r\n\r\n onActivate(data): void {\r\n //console.log('Activate', JSON.parse(JSON.stringify(data)));\r\n }\r\n\r\n onDeactivate(data): void {\r\n //console.log('Deactivate', JSON.parse(JSON.stringify(data)));\r\n }\r\n\r\n}\r\n","
\r\n\t\r\n\t\r\n\t\r\n\t\r\n\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t\t

Histórico de Mediciones

\r\n\t\t
\r\n\t\t\r\n\t
\r\n
\r\n\r\n\t\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t

Macromedidor de: {{descripcion.cliente}}

\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\tEspecifique un rango de tiempo en el cual desea generar la grafica.\r\n\t\t\t
\r\n\t\t
\r\n\t\t\r\n\t\t\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t \r\n\t\t\t\t\t\t\t\t \r\n\t\t\t\t\t\t\t\t \r\n\t\t\t\t\t\t\t\t \r\n\t\t\t\t\t\t\t\t \r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t \r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t\t\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t{{grafica.titulo}}\r\n\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\tLectura inicial\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t{{gastoInicial}} m3  \r\n\t\t\t\t\t\t\t\t\t\t\t\t{{fechaInicial}}\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\tGasto Promedio\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t{{gastoPromedio}} m3\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\tLectura final\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t{{gastoFinal}} m3  \r\n\t\t\t\t\t\t\t\t\t\t\t\t{{fechaFinal}}\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\tLectura inicial\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t{{totalizadorIncial}} m3  \r\n\t\t\t\t\t\t\t\t\t\t\t\t{{fechaInicial}}\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\tLectura final\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t{{totalizadorFinal}} m3  \r\n\t\t\t\t\t\t\t\t\t\t\t\t{{fechaFinal}}\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n\r\n\r\n\r\n","import { GraficaEstadisticaMedidorComponent } from './grafica-estadistica-medidor/grafica-estadistica-medidor.component';\r\nimport { MedidoresService } from './../../../../services/medidores.service';\r\nimport { MapaService } from './../../../../services/mapa.service';\r\nimport { DatePipe } from '@angular/common';\r\nimport { MAT_DIALOG_DATA, MatDialog, MatDialogRef, MatDialogConfig } from '@angular/material';\r\nimport { ReporteMedidores } from './../../../../../../_entities/medidores/ReporteMedidores';\r\nimport { Component, Inject, OnInit } from '@angular/core';\r\nimport { finalize } from 'rxjs/operators';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport moment from 'moment';\r\n\r\nconst MESES = [\r\n\t{ valor: 0, etiqueta: 'Enero', dias: 31 },\r\n\t{ valor: 1, etiqueta: 'Febrero', dias: 29 },\r\n\t{ valor: 2, etiqueta: 'Marzo', dias: 31 },\r\n\t{ valor: 3, etiqueta: 'Abril', dias: 30 },\r\n\t{ valor: 4, etiqueta: 'Mayo', dias: 31 },\r\n\t{ valor: 5, etiqueta: 'Junio', dias: 30 },\r\n\t{ valor: 6, etiqueta: 'Julio', dias: 31 },\r\n\t{ valor: 7, etiqueta: 'Agosto', dias: 31 },\r\n\t{ valor: 8, etiqueta: 'Septiembre', dias: 30 },\r\n\t{ valor: 9, etiqueta: 'Octubre', dias: 31 },\r\n\t{ valor: 10, etiqueta: 'Noviembre', dias: 30 },\r\n\t{ valor: 11, etiqueta: 'Diciembre', dias: 31 }\r\n]\r\n\r\n\r\n@Component({\r\n\tselector: 'kt-historico-posiciones-medidor',\r\n\ttemplateUrl: './historico-posiciones-medidor.component.html',\r\n\tstyleUrls: ['./historico-posiciones-medidor.component.scss']\r\n})\r\nexport class HistoricoPosicionesMedidorComponent implements OnInit {\r\n\tpublic currentFilter: any;\r\n\tpublic showFilterRow: boolean;\r\n\tpublic disabledButtonGraficas: boolean = true;\r\n\tpublic fechaInicio;\r\n\tpublic fechaFin;\r\n\tpublic descripcion;\r\n\tpublic dataSourceReportePosiciones: ReporteMedidores[]\r\n\tpublic datosReporte = [];\r\n\tpublic isDisabled: boolean = true;\r\n\tpublic showGrafica: boolean = false;\r\n\tpublic verGasto: boolean = false;\r\n\tpublic verTotalizador: boolean = false;\r\n\tpublic verGeneral: boolean = false;\r\n\tpublic loadingVisible: boolean = false;\r\n\tpublic chart_visualRange;\r\n\tpublic gastoPromedio;\r\n\r\n\tpublic gastoInicial;\r\n\tpublic fechaInicial;\r\n\r\n\tpublic gastoFinal;\r\n\tpublic fechaFinal\r\n\r\n\tpublic totalizadorIncial;\r\n\tpublic totalizadorFinal;\r\n\r\n\tpublic mesValue = new Date().getMonth();\r\n\tpublic anio = new Date().getFullYear();\r\n\tpublic mesActual;\r\n\tpublic mesAnterior;\r\n\r\n\tpublic medidorMes;\r\n\tpublic mediorAño;\r\n\r\n\tpublic visualRange = {};\r\n\r\n\tlongtabs = [\r\n\t\t{ titulo: \"Gasto\" },\r\n\t\t{ titulo: \"Totalizador\"},\r\n\t\t{ titulo: \"General\" }\r\n\t];\r\n\r\n\tconstructor(public medidoresService: MedidoresService,\r\n\t\tpublic dialogRef: MatDialogRef,\r\n\t\tprivate toastService: ToastrService,\r\n\t\tpublic dialog: MatDialog,\r\n\t\tpublic mapaService: MapaService,\r\n\t\tprivate datepipe: DatePipe,\r\n\t\t@Inject(MAT_DIALOG_DATA) public data: any) {\r\n\t\tthis.showFilterRow = true;\r\n\t\tthis.orderHeaderFilter = this.orderHeaderFilter.bind(this);\r\n\t}\r\n\r\n\tngOnInit() {\r\n\t\tthis.descripcion = this.data;\r\n\t\tthis.mesActual = MESES.find(mes => this.mesValue === mes.valor);\r\n\t\tthis.mesAnterior = MESES.find(mes => this.mesValue - 1 === mes.valor);\r\n\t}\r\n\r\n\tcustomizeEtiqueta(arg) {\r\n\t\treturn arg.valueText + ' m3';\r\n\t}\r\n\r\n\treportePosicion(fechaInicio, fechaFin, tipoConsulta) {\r\n\t\tthis.showGrafica = false;\r\n\t\tthis.loadingVisible = true;\r\n\r\n\t\tconst fechaInicial = this.datepipe.transform(fechaInicio, \"yyyy-MM-dd HH:mm:ss\");\r\n\t\tconst fechaFinal = this.datepipe.transform(fechaFin, \"yyyy-MM-dd HH:mm:ss\");\r\n\r\n\t\tconst fecha1 = moment(this.datepipe.transform(fechaInicial, 'yyyy-MM-dd'));\r\n\t\tconst fecha2 = moment(this.datepipe.transform(fechaFinal, 'yyyy-MM-dd'))\r\n\r\n\t\tconst difereciaDias = fecha2.diff(fecha1, 'days');\r\n\r\n\t\tif(difereciaDias < 3) {\r\n\t\t\ttipoConsulta = 'dia';\r\n\t\t} else {\r\n\t\t\ttipoConsulta = 'mes';\r\n\t\t}\r\n\r\n\t\tthis.medidoresService.obtenerReportePosicionesMedidores(this.data.imei, fechaInicial, fechaFinal).pipe(\r\n\t\t\tfinalize(\r\n\t\t\t\t() => { this.loadingVisible = false; }\r\n\t\t\t)\r\n\t\t).subscribe(\r\n\t\t\t(medidores: ReporteMedidores[]) => {\r\n\t\t\t\tif (medidores.length > 0) {\r\n\t\t\t\t\tmedidores.map(medidor => {\r\n\t\t\t\t\t\tif (medidor.gasto == \"NaN\") {\r\n\t\t\t\t\t\t\tmedidor.gasto = 0;\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\tif (medidor.totalizador == \"NaN\") {\r\n\t\t\t\t\t\t\tmedidor.totalizador = 0;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tmedidor.fechaHora = this.datepipe.transform(medidor.fechaHora, 'yyyy-MM-dd HH:mm');\r\n\t\t\t\t\t});\r\n\r\n\t\t\t\t\tthis.fechaInicial = fechaInicial;\r\n\t\t\t\t\tthis.fechaFinal = fechaFinal;\r\n\r\n\t\t\t\t\tswitch (tipoConsulta) {\r\n\t\t\t\t\t\tcase 'rango':\r\n\t\t\t\t\t\t\tthis.dataSourceReportePosiciones = medidores;\r\n\t\t\t\t\t\t\tthis.obtenerGastoPromedio(this.dataSourceReportePosiciones);\r\n\r\n\t\t\t\t\t\t\tthis.gastoInicial = this.dataSourceReportePosiciones[0].gasto;\r\n\t\t\t\t\t\t\tthis.gastoFinal = this.dataSourceReportePosiciones[this.dataSourceReportePosiciones.length -1].gasto;\r\n\r\n\t\t\t\t\t\t\tthis.totalizadorIncial = this.dataSourceReportePosiciones[0].totalizador;\r\n\t\t\t\t\t\t\tthis.totalizadorFinal = this.dataSourceReportePosiciones[this.dataSourceReportePosiciones.length - 1].totalizador;\r\n\r\n\t\t\t\t\t\t\tthis.showGrafica = true;\r\n\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\tcase 'dia':\r\n\t\t\t\t\t\t\tmedidores.map(medidor => {\r\n\t\t\t\t\t\t\t\tmedidor.fechaHora = this.datepipe.transform(medidor.fechaHora, 'HH:00:00');\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\tthis.dataSourceReportePosiciones = this.sumarGastoDia(medidores);\r\n\t\t\t\t\t\t\tthis.obtenerGastoPromedio(this.dataSourceReportePosiciones);\r\n\t\t\t\t\t\t\tthis.gastoInicial = this.dataSourceReportePosiciones[0].gasto;\r\n\t\t\t\t\t\t\tthis.gastoFinal = this.dataSourceReportePosiciones[this.dataSourceReportePosiciones.length -1].gasto;\r\n\r\n\t\t\t\t\t\t\tthis.totalizadorIncial = this.dataSourceReportePosiciones[0].totalizador;\r\n\t\t\t\t\t\t\tthis.totalizadorFinal = this.dataSourceReportePosiciones[this.dataSourceReportePosiciones.length - 1].totalizador;\r\n\r\n\t\t\t\t\t\t\tthis.showGrafica = true;\r\n\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\tcase 'mes':\r\n\t\t\t\t\t\t\tmedidores.map(medidor => {\r\n\t\t\t\t\t\t\t\tmedidor.fechaHora = this.datepipe.transform(medidor.fechaHora, 'yyyy-MM-dd');\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\tthis.dataSourceReportePosiciones = this.sumarGastoDia(medidores);\r\n\t\t\t\t\t\t\tthis.obtenerGastoPromedio(this.dataSourceReportePosiciones);\r\n\t\t\t\t\t\t\tthis.gastoInicial = this.dataSourceReportePosiciones[0].gasto;\r\n\t\t\t\t\t\t\tthis.gastoFinal = this.dataSourceReportePosiciones[this.dataSourceReportePosiciones.length -1].gasto;\r\n\r\n\t\t\t\t\t\t\tthis.totalizadorIncial = this.dataSourceReportePosiciones[0].totalizador;\r\n\t\t\t\t\t\t\tthis.totalizadorFinal = this.dataSourceReportePosiciones[this.dataSourceReportePosiciones.length - 1].totalizador;\r\n\r\n\t\t\t\t\t\t\tthis.showGrafica = true;\r\n\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\tcase 'año':\r\n\t\t\t\t\t\t\tmedidores.map(medidor => {\r\n\t\t\t\t\t\t\t\tmedidor.fechaHora = this.datepipe.transform(medidor.fechaHora, 'yyyy-MM-dd');\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\tlet gastoDiario = this.sumarGastoDia(medidores);\r\n\t\t\t\t\t\t\tthis.sumarGastoSemana(gastoDiario);\r\n\t\t\t\t\t\t\tthis.obtenerGastoPromedio(this.dataSourceReportePosiciones);\r\n\t\t\t\t\t\t\tthis.gastoInicial = this.dataSourceReportePosiciones[0].gasto;\r\n\t\t\t\t\t\t\tthis.gastoFinal = this.dataSourceReportePosiciones[this.dataSourceReportePosiciones.length -1].gasto;\r\n\r\n\t\t\t\t\t\t\tthis.totalizadorIncial = this.dataSourceReportePosiciones[0].totalizador;\r\n\t\t\t\t\t\t\tthis.totalizadorFinal = this.dataSourceReportePosiciones[this.dataSourceReportePosiciones.length - 1].totalizador;\r\n\r\n\t\t\t\t\t\t\tthis.showGrafica = true;\r\n\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t}\r\n\t\t\t\t\tthis.visualRange = {\r\n\t\t\t\t\t\tstartValue: this.dataSourceReportePosiciones[0].fechaHora,\r\n\t\t\t\t\t\tendValue: this.dataSourceReportePosiciones[2].fechaHora\r\n\t\t\t\t\t};\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis.toastService.info('Sin datos disponibles');\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t);\r\n\t}\r\n\r\n\r\n\t//Obtenemos el consumo diario del medidor\r\n\tsumarGastoDia(datos) {\r\n\t\tlet nuevoObjeto = {}\r\n\t\tlet gastoTotal;\r\n\t\tlet totalizadorTotal;\r\n\t\tlet nuevaRespuesta = [];\r\n\t\t//Recorremos el arreglo\r\n\t\tdatos.forEach(x => {\r\n\t\t\t//Si la fecha no existe en nuevoObjeto, entonces la creamos e inicializamos el arreglo de datos.\r\n\t\t\tif (!nuevoObjeto.hasOwnProperty(x.fechaHora)) {\r\n\t\t\t\tnuevoObjeto[x.fechaHora] = {\r\n\t\t\t\t\tdatos: []\r\n\t\t\t\t}\r\n\t\t\t} else {\r\n\t\t\t\t//Agregamos los datos al arreglo datos.\r\n\t\t\t\tnuevoObjeto[x.fechaHora].datos.push({\r\n\t\t\t\t\tfechaHora: x.fechaHora,\r\n\t\t\t\t\tgasto: x.gasto,\r\n\t\t\t\t\ttotalizador: x.totalizador\r\n\t\t\t\t})\r\n\t\t\t}\r\n\t\t})\r\n\r\n\t\tconst keys = Object.keys(nuevoObjeto)\r\n\r\n\t\tkeys.forEach(key => {\r\n\t\t\tgastoTotal = 0;\r\n\t\t\ttotalizadorTotal = 0;\r\n\t\t\tnuevoObjeto[key].datos.forEach(dato => {\r\n\t\t\t\tgastoTotal = gastoTotal + dato.gasto;\r\n\t\t\t\ttotalizadorTotal = totalizadorTotal + dato.totalizador;\r\n\t\t\t});\r\n\r\n\t\t\tlet form = {\r\n\t\t\t\tfechaHora: key,\r\n\t\t\t\tgasto: Number(gastoTotal.toFixed(2)),\r\n\t\t\t\ttotalizador: Number(totalizadorTotal.toFixed(2))\r\n\t\t\t}\r\n\r\n\t\t\tnuevaRespuesta.push(form)\r\n\t\t});\r\n\t\treturn nuevaRespuesta\r\n\t}\r\n\r\n\tobtenerGastoPromedio(datos) {\r\n\t\tlet gastoTotal = 0;\r\n\r\n\t\tdatos.forEach(dato => {\r\n\t\t\tgastoTotal = gastoTotal + dato.gasto;\r\n\t\t});\r\n\r\n\t\tthis.gastoPromedio = (gastoTotal / (datos.length)).toFixed(4);\r\n\t}\r\n\r\n\tsumarGastoSemana(gastoDiario) {\r\n\t\tlet nuevaRespuesta;\r\n\t\tlet gastoTotal = 0;\r\n\r\n\r\n\r\n\t\tif(gastoDiario.length > 7) {\r\n\t\t} else {\r\n\t\t\tgastoDiario.forEach(dato => {\r\n\t\t\t\tgastoTotal = gastoTotal + dato.gasto\r\n\t\t\t});\r\n\r\n\t\t\tlet form = {\r\n\t\t\t\tfechaHora: 'semana 1',\r\n\t\t\t\tgasto: Number(gastoTotal.toFixed(2))\r\n\t\t\t}\r\n\t\t\tnuevaRespuesta.push(form);\r\n\t\t}\r\n\t\treturn nuevaRespuesta\r\n\t}\r\n\r\n\tobtenerReporteHoy() {\r\n\t\tconst fechaInicio = this.datepipe.transform(new Date(), 'yyyy-MM-dd 00:00:00');\r\n\t\tconst fechaFinal = this.datepipe.transform(new Date(), 'yyyy-MM-dd HH:mm:ss');\r\n\r\n\t\tthis.reportePosicion(fechaInicio, fechaFinal, 'hoy');\r\n\t}\r\n\r\n\tobtenerReporteMes() {\r\n\t\tconst fechaInicio = this.datepipe.transform(new Date(), 'yyyy-MM-01 00:00:00');\r\n\t\tconst fechaFinal = this.datepipe.transform(new Date(), 'yyyy-MM-dd HH:mm:ss');\r\n\r\n\t\tthis.reportePosicion(fechaInicio, fechaFinal, 'mes');\r\n\t}\r\n\r\n\tobtenerReporteMesAnterior() {\r\n\t\tconst fecha = new Date();\r\n\t\tconst mesValue = fecha.getMonth() - 1;\r\n\r\n\t\tfecha.setMonth(mesValue);\r\n\r\n\t\tconst mes = MESES.find(mes => mes.valor === mesValue);\r\n\t\tconst fechaInicio = `${fecha.getFullYear()}-${(fecha.getMonth() + 1)}-01 00:00:00`;\r\n\t\tconst fechaFinal = `${fecha.getFullYear()}-${(fecha.getMonth() + 1)}-${mes.dias} 23:59:59`;\r\n\r\n\t\tthis.reportePosicion(fechaInicio, fechaFinal, 'mes');\r\n\r\n\t}\r\n\r\n\tobtenerReporteTresMeses() {\r\n\t\tconst fecha = new Date();\r\n\t\tconst mesValue = fecha.getMonth() - 3;\r\n\r\n\t\tfecha.setMonth(mesValue);\r\n\r\n\t\tconst fechaInicio = `${fecha.getFullYear()}-${(fecha.getMonth() + 1)}-01 00:00:00`;\r\n\t\tconst fechaFinal = this.datepipe.transform(new Date(), 'yyyy-MM-dd HH:mm:ss');\r\n\r\n\t\tthis.reportePosicion(fechaInicio, fechaFinal, 'mes');\r\n\r\n\t}\r\n\r\n\tobteneReporteAnio() {\r\n\t\tconst fechaInicio = this.datepipe.transform(new Date(), 'yyyy-01-01 00:00:00');\r\n\t\tconst fechaFinal = this.datepipe.transform(new Date(), 'yyyy-MM-dd HH:mm:ss');\r\n\r\n\t\tthis.reportePosicion(fechaInicio, fechaFinal, 'año');\r\n\t}\r\n\r\n\torderHeaderFilter(data) {\r\n\t\tdata.dataSource.postProcess = (results) => {\r\n\t\t\tresults.push({\r\n\t\t\t\ttext: \"Weekends\",\r\n\t\t\t\tvalue: \"weekends\"\r\n\t\t\t});\r\n\t\t\treturn results;\r\n\t\t};\r\n\t}\r\n\r\n\tselectTab(e){\r\n\t\tif(e.name === \"changedProperty\") {\r\n\t\t\tconsole.log('alv');\r\n\t\t}\r\n\t}\r\n\r\n\tverGraficas() {\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.autoFocus = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\t\tdialogConfig.width = \"58%\";\r\n\t\t//dialogConfig.closeOnNavigation = true;\r\n\t\tdialogConfig.hasBackdrop = false;\r\n\t\tdialogConfig.panelClass = 'custom-modalbox';\r\n\t\tdialogConfig.data = this.dataSourceReportePosiciones\r\n\t\tthis.dialog.open(GraficaEstadisticaMedidorComponent, dialogConfig);\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n\r\n\tpublic minimizarPopup() {\r\n\t\tthis.dialogRef.addPanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic maximizarPopup() {\r\n\t\tthis.dialogRef.removePanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic cerrarPopup() {\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n\r\n}\r\n","
\r\n\t\r\n\t\r\n\t\r\n\t\r\n\t
\r\n\t\t\r\n\t\t

Macromedidor

\r\n\t
\r\n\t\r\n
\r\n
\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\tIMEI: {{datos.imei}}
\r\n\t\t\t\tDescripcion:\r\n\t\t\t\t{{datos.descripcion}}
\r\n\t\t\t\tGasto: {{datos.gasto | number:\r\n\t\t\t\t'1.4-4'}} m3/h
\r\n\t\t\t\tTotalizador: \r\n\t\t\t\t{{datos.totalizador | number: '1.4-4'}} m3
\r\n\t\t\t\tEstatus: \r\n\t\t\t\t{{datos.estatus}}
\r\n\t\t\t\tModelo: {{datos.modelo}}
\r\n\t\t\t\tGeocerca:\r\n\t\t\t\t{{geocercaAsignada}}
\r\n\t\t\t\tFecha y\r\n\t\t\t\t\thora: {{fecha}} {{hora}}
\r\n\t\t\t\tCliente: {{datos.cliente}}
\r\n\t\t\t\tDireccion: {{direccion}}
\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t \r\n\t\t\t\t \r\n\t\t\t\t \r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n","import { HistoricoPosicionesMedidorComponent } from './../historico-posiciones-medidor/historico-posiciones-medidor.component';\r\nimport { MedidoresService } from './../../../../services/medidores.service';\r\nimport { DatePipe } from '@angular/common';\r\nimport { MatDialog, MAT_DIALOG_DATA, MatDialogRef, MatDialogConfig } from '@angular/material';\r\nimport { MapaService } from './../../../../services/mapa.service';\r\nimport { MedidorModal } from './../../../../../../_entities/medidores/MedidorModal';\r\nimport { Component, Inject, OnInit } from '@angular/core';\r\nimport { StreetViewComponent } from '../../street-view/street-view.component';\r\n\r\n@Component({\r\n\tselector: 'kt-informacion-medidor',\r\n\ttemplateUrl: './informacion-medidor.component.html',\r\n\tstyleUrls: ['./informacion-medidor.component.scss']\r\n})\r\nexport class InformacionMedidorComponent implements OnInit {\r\n\tpublic loading: boolean = false;\r\n\r\n\tpublic datos: MedidorModal;\r\n\tpublic direccion: string = '';\r\n\tpublic fecha: string = '';\r\n\tpublic hora: string = '';\r\n\tpublic imagen: string;\r\n\tpublic geocercaAsignada: string = '';\r\n\r\n\tconstructor(private mapaService: MapaService,\r\n\t\tprivate medidoresService: MedidoresService,\r\n\t\tpublic dialog: MatDialog,\r\n\t\t@Inject(MAT_DIALOG_DATA) public data,\r\n\t\tpublic dialogRef: MatDialogRef,\r\n\t\tprivate datePipe: DatePipe) { }\r\n\r\n\tngOnInit() {\r\n\t\tthis.imagen = this.data.imagen;\r\n\t\tthis.obtenerTabla();\r\n\t}\r\n\r\n\tobtenerTabla() {\r\n\t\tthis.medidoresService.obtenerMedidor(this.data.imei).subscribe(\r\n\t\t\tasync (response: MedidorModal) => {\r\n\t\t\t\tthis.datos = response;\r\n\t\t\t\tthis.fecha = this.datePipe.transform(this.data.fechaAlta, \"yyyy-MM-dd\");\r\n\t\t\t\tthis.hora = this.datePipe.transform(this.data.fechaAlta, \"h:mma\");\r\n\r\n\t\t\t\tif (response.estatus == 1) {\r\n\t\t\t\t\tresponse.estatus = 'Activo';\r\n\t\t\t\t} else {\r\n\t\t\t\t\tresponse.estatus = 'Inacivo'\r\n\t\t\t\t}\r\n\r\n\t\t\t\tawait this.mapaService.getDireccion([this.data.lng, this.data.lat]).then(\r\n\t\t\t\t\t(data: any) => {\r\n\t\t\t\t\t\tthis.direccion = data.display_name || \"Dirección Desconocida\";\r\n\r\n\t\t\t\t\t},\r\n\t\t\t\t\t() => {\r\n\t\t\t\t\t\tthis.direccion = \"Dirección Desconocida\";\r\n\r\n\t\t\t\t\t}\r\n\t\t\t\t);\r\n\r\n\t\t\t\tif (this.datos.geocercas.length > 0) {\r\n\t\t\t\t\tthis.datos.geocercas.forEach(geocerca => {\r\n\t\t\t\t\t\tthis.geocercaAsignada = this.geocercaAsignada + geocerca.nombre + ', ';\r\n\t\t\t\t\t});\r\n\r\n\t\t\t\t\tthis.geocercaAsignada = this.geocercaAsignada.slice(0, -1);\r\n\t\t\t\t\tthis.geocercaAsignada = this.geocercaAsignada.slice(0, -1);\r\n\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis.geocercaAsignada = 'Sin asignación';\r\n\t\t\t\t}\r\n\r\n\t\t\t});\r\n\t}\r\n\r\n\r\n\tubicarMedidor() {\r\n\t\tthis.mapaService.verMedidor(this.data)\r\n\t\tthis.dialogRef.close()\r\n\t}\r\n\r\n\tverHistorico() {\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.autoFocus = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\t\tdialogConfig.width = \"58%\";\r\n\t\tdialogConfig.closeOnNavigation = true;\r\n\t\tdialogConfig.hasBackdrop = false;\r\n\t\tdialogConfig.panelClass = 'custom-modalbox';\r\n\t\tdialogConfig.data = this.data\r\n\t\tthis.dialog.open(HistoricoPosicionesMedidorComponent, dialogConfig);\r\n\t\tthis.dialogRef.close()\r\n\r\n\t}\r\n\r\n\tverCalle() {\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.autoFocus = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\t\tdialogConfig.width = \"40%\";\r\n\t\tdialogConfig.closeOnNavigation = true;\r\n\t\tdialogConfig.hasBackdrop = false;\r\n\t\tdialogConfig.panelClass = 'custom-modalbox';\r\n\t\tdialogConfig.data = this.data;\r\n\t\tthis.dialog.open(StreetViewComponent, dialogConfig)\r\n\t\tthis.dialogRef.close()\r\n\r\n\t}\r\n\r\n\tverGrafica() {\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.autoFocus = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\t\tdialogConfig.width = \"58%\";\r\n\t\tdialogConfig.closeOnNavigation = true;\r\n\t\tdialogConfig.hasBackdrop = false;\r\n\t\tdialogConfig.data = this.data\r\n\t\t//this.dialog.open(VerGraficaComponent, dialogConfig);\r\n\t\tthis.dialogRef.close()\r\n\r\n\t}\r\n\r\n\tverFoto() { }\r\n\r\n\r\n\r\n\r\n\tpublic minimizarPopup() {\r\n\t\tthis.dialogRef.addPanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic maximizarPopup() {\r\n\t\tthis.dialogRef.removePanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic cerrarPopup() {\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\n\r\nexport class SolarSystemObject {\r\n name: string;\r\n\r\n mass: number;\r\n}\r\n\r\nconst data: SolarSystemObject[] = [{\r\n name: 'Enero',\r\n mass: 15000,\r\n}, {\r\n name: 'Febrero',\r\n mass: 80000,\r\n}, {\r\n name: 'Marzo',\r\n mass: 44444,\r\n}, {\r\n name: 'Abril',\r\n mass: 67890,\r\n}, {\r\n name: 'Mayo',\r\n mass: 13000,\r\n}, {\r\n name: 'Junio',\r\n mass: 19900,\r\n}, {\r\n name: 'Julio',\r\n mass: 40000,\r\n}, {\r\n name: 'Agosto',\r\n mass: 34120,\r\n}];\r\n\r\n@Injectable()\r\nexport class Service {\r\n getData(): SolarSystemObject[] {\r\n return data;\r\n }\r\n}\r\n","
\r\n\t\r\n\t\r\n\t\r\n\t\r\n\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t\t

Histórico de Mediciones

\r\n\t\t
\r\n\t\t\r\n\t
\r\n
\r\n\r\n\t\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t

Micromedidor de: {{micromedidor.idCliente}}

\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\tEspecifique un rango de tiempo en el cual desea generar la grafica.\r\n\t\t\t
\r\n\t\t
\r\n\t\t\r\n\t\t\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t \r\n\t\t\t\t\t\t\t\t \r\n\t\t\t\t\t\t\t\t \r\n\t\t\t\t\t\t\t\t \r\n\t\t\t\t\t\t\t\t \r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t \r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t\t\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t{{grafica.titulo}}\r\n\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\tLectura inicial\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t{{volumenInicial}} Litros  \r\n\t\t\t\t\t\t\t\t\t\t\t\t{{fechaInicial}}\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\tVolumen Promedio\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t{{volumenPromedio}} Litros\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\tLectura final\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t{{volumenFinal}} Litros  \r\n\t\t\t\t\t\t\t\t\t\t\t\t{{fechaFinal}}\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n\r\n\r\n
\r\n\t\r\n\t\r\n\t\r\n\t\r\n\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t\t

Histórico de Garzas

\r\n\t\t
\r\n\t\t\r\n\t
\r\n
\r\n\r\n\t\r\n\t\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\t \r\n\t\t\t\t\t\r\n\t\t\t\t\t \r\n\t\t\t\t\t\r\n\t\t\t\t\t \r\n\t\t\t\t\t \r\n\t\t\t\t \r\n\t\t\t
\r\n\t\t
\r\n\t\t
\r\n
","import { DatePipe } from '@angular/common';\r\nimport { Component, Inject, OnInit } from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material';\r\nimport { finalize } from 'rxjs/operators';\r\nimport { MicromedidoresService } from './../../../../../monitoreo/services/micromedidores.service';\r\nimport { Micromedidor } from './../../../../../../_entities/micromedidores/micromedidor';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport moment from 'moment';\r\nimport { SolarSystemObject, Service } from './app.service'; /*este es una prueba del demo*/\r\nimport { AuthService } from '../../../../../auth/auth.service'; /*este es una prueba del demo*/\r\nimport { User } from '../../../../../../_entities/User'; /*este es una prueba del demo*/\r\n\r\nconst MESES = [\r\n\t{ valor: 0, etiqueta: 'Enero', dias: 31 },\r\n\t{ valor: 1, etiqueta: 'Febrero', dias: 29 },\r\n\t{ valor: 2, etiqueta: 'Marzo', dias: 31 },\r\n\t{ valor: 3, etiqueta: 'Abril', dias: 30 },\r\n\t{ valor: 4, etiqueta: 'Mayo', dias: 31 },\r\n\t{ valor: 5, etiqueta: 'Junio', dias: 30 },\r\n\t{ valor: 6, etiqueta: 'Julio', dias: 31 },\r\n\t{ valor: 7, etiqueta: 'Agosto', dias: 31 },\r\n\t{ valor: 8, etiqueta: 'Septiembre', dias: 30 },\r\n\t{ valor: 9, etiqueta: 'Octubre', dias: 31 },\r\n\t{ valor: 10, etiqueta: 'Noviembre', dias: 30 },\r\n\t{ valor: 11, etiqueta: 'Diciembre', dias: 31 }\r\n]\r\n@Component({\r\n\tselector: 'kt-historico-mediciones-micromedidor',\r\n\ttemplateUrl: './historico-mediciones-micromedidor.component.html',\r\n\tstyleUrls: ['./historico-mediciones-micromedidor.component.scss'],\r\n\tproviders: [Service] /*este es una prueba del demo*/\r\n})\r\nexport class HistoricoMedicionesMicromedidorComponent implements OnInit {\r\n/*este es una prueba del demo*/\r\n_user: User;\r\n\tpublic usuarioDemo: boolean = true;\r\n\tdato: SolarSystemObject[];\r\n\tlineStyles: Array = ['waved', 'straight'];\r\n\r\n breaksCount: Array = [1, 2, 3, 4];\r\n\r\n lineStyleValue: string;\r\n\r\n autoBreaksEnabledValue = true;\r\n\r\n breaksCountValue: number;\r\n\r\n title = 'Consumo de agua por mes (en Litros)';\r\n\r\n/*este es una prueba del demo*/\r\n\tpublic micromedidor: Micromedidor;\r\n\tpublic mediciones;\r\n\tpublic fechaInicio;\r\n\tpublic fechaFin;\r\n\tpublic mesValue = new Date().getMonth();\r\n\tpublic anio = new Date().getFullYear();\r\n\tpublic mesActual;\r\n\tpublic mesAnterior;\r\n\r\n\tpublic volumenInicial;\r\n\tpublic fechaInicial;\r\n\tpublic volumenFinal;\r\n\tpublic fechaFinal;\r\n\r\n\tpublic volumenPromedio;\r\n\r\n\tpublic visualRange = {};\r\n\r\n\tpublic showGrafica: boolean = false;\r\n\tpublic loadingVisible: boolean = false;\r\n\r\n\tlongtabs = [\r\n\t\t{ titulo: 'Volumen' }\r\n\t];\r\n\r\n\tconstructor(private dialogRef: MatDialogRef,\r\n\t\t@Inject(MAT_DIALOG_DATA) public data: any,\r\n\t\tprivate micromedidoresService: MicromedidoresService, service: Service /*este es una prueba del demo*/,private auth: AuthService /*este es una prueba del demo*/, \r\n\t\tprivate toastService: ToastrService,\r\n\t\tprivate datepipe: DatePipe) { \r\n\t\t\tthis.dato = service.getData();/*este es una prueba del demo*/\r\n this.lineStyleValue = this.lineStyles[0];/*este es una prueba del demo*/\r\n this.breaksCountValue = this.breaksCount[2];/*este es una prueba del demo*/\r\n\t\t}\r\n\r\n\tngOnInit() {\r\n\t\t/*este es una prueba del demo*/\r\n\t\tthis._user = this.auth.getUser();\r\n\t\tif(this._user.id === \"6cac2e07-cb6d-4725-93d7-ed7ad39f5ade\"){\r\n\t\t\tthis.usuarioDemo = false;\r\n\t\t}\r\n\t\t/*este es una prueba del demo*/\r\n\t\tthis.micromedidor = this.data;\r\n\t\tconsole.log(\"mes actual\" , this.mesValue)\r\n\t\tthis.mesActual = MESES.find(mes => this.mesValue === mes.valor);\r\n\t\tif(this.mesValue == 0){\r\n\t\t\tthis.mesValue = 11;\r\n\t\t\tthis.mesAnterior = MESES.find(mes => this.mesValue === mes.valor);\r\n\t\t}else{\r\n\t\t\tthis.mesAnterior = MESES.find(mes => this.mesValue - 1 === mes.valor);\r\n\t\t}\r\n\t}\r\n\r\n\tvalueItems(arg) {\r\n\t\treturn arg.valueText + ' Litros';\r\n\t}\r\n\r\n\tobtenerHistorico(fechaInicio, fechaFin, tipoConsulta) {\r\n\t\tthis.showGrafica = false;\r\n\t\tthis.loadingVisible = true;\r\n\t\tlet fechaInicial = this.datepipe.transform(fechaInicio, \"yyyy-MM-dd HH:mm:ss\");\r\n\t\tlet fechaFinal = this.datepipe.transform(fechaFin, \"yyyy-MM-dd HH:mm:ss\");\r\n\r\n\t\t/**\r\n\t\t * Contador = Volumen\r\n\t\t * Gasto = Consumo\r\n\t\t * */\r\n\r\n\t\tthis.micromedidoresService.obtenerHistoricoMediciones(this.micromedidor.numeroSerie, fechaInicial, fechaFinal).pipe(\r\n\t\t\tfinalize(\r\n\t\t\t\t() => this.loadingVisible = false\r\n\t\t\t)\r\n\t\t).subscribe(\r\n\t\t\t(micromedidores: Micromedidor[]) => {\r\n\t\t\t\tif (micromedidores.length > 0) {\r\n\r\n\t\t\t\t\tmicromedidores.map(micromedidor => {\r\n\t\t\t\t\t\tif (micromedidor.contador == \"NaN\") {\r\n\t\t\t\t\t\t\tmicromedidor.contador = 0;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tif (micromedidor.tamper == \"NaN\") {\r\n\t\t\t\t\t\t\tmicromedidor.tamper = 0;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tmicromedidor.fhRegistro = this.datepipe.transform(micromedidor.fhRegistro, 'yyyy-MM-dd HH:mm');\r\n\t\t\t\t\t});\r\n\r\n\t\t\t\t\tconst fecha1 = moment(this.datepipe.transform(fechaInicial, 'yyyy-MM-dd'));\r\n\t\t\t\t\tconst fecha2 = moment(this.datepipe.transform(fechaFinal, 'yyyy-MM-dd'));\r\n\r\n\t\t\t\t\tconst difereciaDias = fecha2.diff(fecha1, 'days');\r\n\r\n\t\t\t\t\tif (difereciaDias < 3) {\r\n\t\t\t\t\t\ttipoConsulta = 'dia';\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\ttipoConsulta = 'mes';\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tthis.fechaInicial = fechaInicial;\r\n\t\t\t\t\tthis.fechaFinal = fechaFinal;\r\n\r\n\t\t\t\t\tthis.volumenInicial = micromedidores[0].contador;\r\n\t\t\t\t\tthis.volumenFinal = micromedidores[micromedidores.length - 1].contador;\r\n\r\n\t\t\t\t\tthis.mediciones = this.sumarGastoDia(micromedidores);\r\n\t\t\t\t\tthis.obtenerGastoPromedio(this.mediciones);\r\n\r\n\t\t\t\t\tthis.showGrafica = true;\r\n\r\n\t\t\t\t\t/*switch (tipoConsulta) {\r\n\t\t\t\t\t\tcase 'rango':\r\n\t\t\t\t\t\t\tthis.mediciones = micromedidores;\r\n\t\t\t\t\t\t\tthis.obtenerGastoPromedio(this.mediciones);\r\n\r\n\t\t\t\t\t\t\tthis.volumenInicial = micromedidores[0].contador;\r\n\t\t\t\t\t\t\tthis.volumenFinal = micromedidores[micromedidores.length - 1].contador;\r\n\r\n\t\t\t\t\t\t\tthis.showGrafica = true;\r\n\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\tcase 'dia':\r\n\t\t\t\t\t\t\tmicromedidores.map(micromedidor => {\r\n\t\t\t\t\t\t\t\tmicromedidor.fhRegistro = this.datepipe.transform(micromedidor.fhRegistro, 'HH:00:00')\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\tthis.mediciones = this.sumarGastoDia(micromedidores);\r\n\t\t\t\t\t\t\tconsole.log(this.mediciones);\r\n\r\n\t\t\t\t\t\t\tthis.obtenerGastoPromedio(this.mediciones);\r\n\r\n\t\t\t\t\t\t\tthis.volumenInicial = micromedidores[0].contador;\r\n\t\t\t\t\t\t\tthis.volumenFinal = micromedidores[micromedidores.length - 1].contador;\r\n\r\n\t\t\t\t\t\t\tthis.showGrafica = true;\r\n\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\tcase 'mes':\r\n\t\t\t\t\t\t\tmicromedidores.map(medidor => {\r\n\t\t\t\t\t\t\t\tmedidor.fhRegistro = this.datepipe.transform(medidor.fhRegistro, 'yyyy-MM-dd');\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\tthis.mediciones = this.sumarGastoDia(micromedidores);\r\n\t\t\t\t\t\t\tthis.obtenerGastoPromedio(this.mediciones);\r\n\r\n\t\t\t\t\t\t\tthis.volumenInicial = micromedidores[0].contador;\r\n\t\t\t\t\t\t\tthis.volumenFinal = micromedidores[micromedidores.length - 1].contador;\r\n\r\n\t\t\t\t\t\t\tthis.showGrafica = true;\r\n\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\tcase 'año':\r\n\t\t\t\t\t\t\tmicromedidores.map(medidor => {\r\n\t\t\t\t\t\t\t\tmedidor.fhRegistro = this.datepipe.transform(medidor.fhRegistro, 'yyyy-MM-dd');\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\tlet gastoDiario = this.sumarGastoDia(micromedidores);\r\n\t\t\t\t\t\t\tthis.sumarGastoSemana(gastoDiario);\r\n\r\n\t\t\t\t\t\t\tthis.volumenInicial = micromedidores[0].contador;\r\n\t\t\t\t\t\t\tthis.volumenFinal = micromedidores[micromedidores.length - 1].contador;\r\n\t\t\t\t\t\t\tthis.showGrafica = true;\r\n\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t}*/\r\n\r\n\t\t\t\t\tif (this.mediciones.length > 1) {\r\n\t\t\t\t\t\tthis.visualRange = {\r\n\t\t\t\t\t\t\tstartValue: this.mediciones[0].fhRegistro,\r\n\t\t\t\t\t\t\tendValue: this.mediciones[2].fhRegistro\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis.toastService.info('No hay información de esta consulta');\r\n\r\n\t\t\t\t}\r\n\t\t\t}, (error) => {\r\n\t\t\t\tthis.toastService.info(error.error)\r\n\t\t\t}\r\n\t\t)\r\n\r\n\t}\r\n\r\n\tobtenerGastoPromedio(datos) {\r\n\t\tlet volumenTotal = 0;\r\n\r\n\t\tdatos.forEach(dato => {\r\n\t\t\tvolumenTotal = volumenTotal + dato.contador;\r\n\t\t});\r\n\r\n\t\tthis.volumenPromedio = (volumenTotal / (datos.length)).toFixed(2);\r\n\t}\r\n\r\n\t//Obtenemos el consumo diario del medidor\r\n\tsumarGastoDia(datos) {\r\n\t\tlet nuevoObjeto = {}\r\n\t\tlet gastoTotal;\r\n\t\tlet nuevaRespuesta = [];\r\n\r\n\t\t//Recorremos el arreglo\r\n\t\tdatos.forEach(x => {\r\n\t\t\t//Si la fecha no existe en nuevoObjeto, entonces la creamos e inicializamos el arreglo de datos.\r\n\t\t\tx.fhRegistro = this.datepipe.transform(x.fhRegistro, 'yyyy-MM-dd');\r\n\r\n\t\t\tif (!nuevoObjeto.hasOwnProperty(x.fhRegistro)) {\r\n\t\t\t\tnuevoObjeto[x.fhRegistro] = {\r\n\t\t\t\t\tdatos: []\r\n\t\t\t\t}\r\n\r\n\t\t\t\tnuevoObjeto[x.fhRegistro].datos.push({\r\n\t\t\t\t\tfhRegistro: x.fhRegistro,\r\n\t\t\t\t\tcontador: x.contador\r\n\t\t\t\t});\r\n\r\n\t\t\t} else {\r\n\t\t\t\t//Agregamos los datos al arreglo datos.\r\n\t\t\t\tnuevoObjeto[x.fhRegistro].datos.push({\r\n\t\t\t\t\tfhRegistro: x.fhRegistro,\r\n\t\t\t\t\tcontador: x.contador\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t})\r\n\r\n\t\tconst keys = Object.keys(nuevoObjeto);\r\n\r\n\t\tkeys.forEach(key => {\r\n\t\t\tgastoTotal = 0;\r\n\r\n\t\t\tlet totalDatos = nuevoObjeto[key].datos.length;\r\n\r\n\t\t\tlet datoInicial = nuevoObjeto[key].datos[0].contador;\r\n\t\t\tlet datoFinal = nuevoObjeto[key].datos[totalDatos - 1].contador;\r\n\t\t\t/*nuevoObjeto[key].datos.forEach(dato => {\r\n\t\t\t\tgastoTotal = gastoTotal + dato.contador\r\n\t\t\t});*/\r\n\r\n\t\t\tgastoTotal = datoFinal - datoInicial\r\n\t\t\tlet form = {\r\n\t\t\t\tfhRegistro: key,\r\n\t\t\t\tcontador: Number(gastoTotal.toFixed(2))\r\n\t\t\t}\r\n\t\t\tnuevaRespuesta.push(form);\r\n\t\t});\r\n\t\treturn nuevaRespuesta\r\n\t}\r\n\r\n\tsumarGastoSemana(gastoDiario) {\r\n\t\tlet nuevaRespuesta;\r\n\t\tlet gastoTotal = 0;\r\n\r\n\t\tif (gastoDiario.length > 7) {\r\n\t\t} else {\r\n\t\t\tgastoDiario.forEach(dato => {\r\n\t\t\t\tgastoTotal = gastoTotal + dato.gasto\r\n\t\t\t});\r\n\r\n\t\t\tlet form = {\r\n\t\t\t\tfechaHora: 'semana 1',\r\n\t\t\t\tgasto: Number(gastoTotal.toFixed(2))\r\n\t\t\t}\r\n\t\t\tnuevaRespuesta.push(form);\r\n\t\t}\r\n\t\treturn nuevaRespuesta\r\n\t}\r\n\r\n\tobtenerReporteHoy() {\r\n\t\tconst fechaInicio = this.datepipe.transform(new Date(), 'yyyy-MM-dd 00:00:00');\r\n\t\tconst fechaFinal = this.datepipe.transform(new Date(), 'yyyy-MM-dd HH:mm:ss');\r\n\r\n\t\tthis.obtenerHistorico(fechaInicio, fechaFinal, 'hoy');\r\n\t}\r\n\r\n\tobtenerReporteMes() {\r\n\t\tconst fechaInicio = this.datepipe.transform(new Date(), 'yyyy-MM-01 00:00:00');\r\n\t\tconst fechaFinal = this.datepipe.transform(new Date(), 'yyyy-MM-dd HH:mm:ss');\r\n\r\n\t\tthis.obtenerHistorico(fechaInicio, fechaFinal, 'mes');\r\n\t}\r\n\r\n\tobtenerReporteMesAnterior() {\r\n\t\tconst fecha = new Date();\r\n\t\tconst mesValue = fecha.getMonth() - 1;\r\n\r\n\t\tfecha.setMonth(mesValue);\r\n\r\n\t\tconst mes = MESES.find(mes => mes.valor === mesValue);\r\n\t\tconst fechaInicio = `${fecha.getFullYear()}-${(fecha.getMonth() + 1)}-01 00:00:00`;\r\n\t\tconst fechaFinal = `${fecha.getFullYear()}-${(fecha.getMonth() + 1)}-${mes.dias} 23:59:59`;\r\n\r\n\t\tthis.obtenerHistorico(fechaInicio, fechaFinal, 'mes');\r\n\r\n\t}\r\n\r\n\tobtenerReporteTresMeses() {\r\n\t\tconst fecha = new Date();\r\n\t\tconst mesValue = fecha.getMonth() - 3;\r\n\r\n\t\tfecha.setMonth(mesValue);\r\n\r\n\t\tconst fechaInicio = `${fecha.getFullYear()}-${(fecha.getMonth() + 1)}-01 00:00:00`;\r\n\t\tconst fechaFinal = this.datepipe.transform(new Date(), 'yyyy-MM-dd HH:mm:ss');\r\n\r\n\t\tthis.obtenerHistorico(fechaInicio, fechaFinal, 'mes');\r\n\r\n\t}\r\n\r\n\tobteneReporteAnio() {\r\n\t\tconst fechaInicio = this.datepipe.transform(new Date(), 'yyyy-01-01 00:00:00');\r\n\t\tconst fechaFinal = this.datepipe.transform(new Date(), 'yyyy-MM-dd HH:mm:ss');\r\n\r\n\t\tthis.obtenerHistorico(fechaInicio, fechaFinal, 'año');\r\n\t}\r\n\r\n\tetiquetaModificada(arg) {\r\n\t\treturn {\r\n text: arg.valueText + ' Litros'\r\n };\r\n\t}\r\n\r\n\tpublic minimizarPopup() {\r\n\t\tthis.dialogRef.addPanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic maximizarPopup() {\r\n\t\tthis.dialogRef.removePanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic cerrarPopup() {\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\n\r\nexport class Customer {\r\n ID: number;\r\n\r\n image: string;\r\n\r\n numSerie: string;\r\n\r\n fechaHora: string;\r\n\r\n modelo: string;\r\n\r\n descripcion: string;\r\n\r\n}\r\n\r\nconst сustomers: Customer[] = [{\r\n ID: 1,\r\n image: './assets/image/garzaimage.jpg',\r\n numSerie: 'BEPYNSN',\r\n fechaHora: '01/04/2021 4:44',\r\n modelo: 'Garza',\r\n descripcion: 'Este es un demo',\r\n}];\r\n\r\n@Injectable()\r\nexport class Service {\r\n getCustomers() {\r\n return сustomers;\r\n }\r\n}\r\n","
\r\n\t\r\n\t\r\n\t\r\n\t\r\n\t
\r\n\t\t\r\n\t\t

Micromedidores

\r\n\t
\r\n\t\r\n
\r\n
\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\tNumero de Serie:\r\n\t\t\t\t{{micromedidor.numeroSerie}}
\r\n\t\t\t\tObservación:\r\n\t\t\t\t{{micromedidor.observacion}}
\r\n\t\t\t\tContador: {{micromedidor.contador}}\r\n\t\t\t\tl
\r\n\t\t\t\t\r\n\t\t\t\tEstatus: {{micromedidor.estatus}}
\r\n\t\t\t\tGeocerca:\r\n\t\t\t\t
\r\n\t\t\t\tFecha y hora:\r\n\t\t\t\t{{micromedidor.fechaHora | date: 'yyy-MM-dd HH:MM a'}}
\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t \r\n\t\t\t\t \r\n\t\t\t\t \r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n\r\n
\r\n\t\r\n\t\r\n\t\r\n\t\r\n\t
\r\n\t\t\r\n\t\t

Garzas

\r\n\t
\r\n\t\r\n
\r\n
\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t  Numero de Serie:\r\n\t\t\t\tBEPYNS\r\n\t\t\t\t
\r\n\t\t\t\t Descripción:\r\n\t\t\t\tEste es un demo\r\n\t\t\t\t
\r\n\t\t\t\t Modelo: \r\n\t\t\t\tGarza
\r\n\t\t\t\t\r\n\t\t\t\t Estatus:\r\n\t\t\t\tActivo
\r\n\t\t\t\t\r\n\t\t\t\t Fecha y hora:\r\n\t\t\t\t01/04/2022 4:44\r\n\t\t\t\t
\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t \r\n\t\t\t\t \r\n\t\t\t\t \r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n","import { MatDialog, MatDialogConfig, MatDialogRef, MAT_DIALOG_DATA } from '@angular/material';\r\nimport { DatePipe } from '@angular/common';\r\nimport { MapaService } from './../../../../services/mapa.service';\r\nimport { Micromedidor } from './../../../../../../_entities/micromedidores/micromedidor';\r\nimport { DxDataGridComponent } from 'devextreme-angular';\r\nimport { Component, Inject, OnInit, ViewChild } from '@angular/core';\r\nimport { MicromedidoresService } from './../../../../services/micromedidores.service';\r\nimport { StreetViewComponent } from '../../street-view/street-view.component';\r\nimport { HistoricoMedicionesMicromedidorComponent } from '../historico-mediciones-micromedidor/historico-mediciones-micromedidor.component';\r\nimport { Service, Customer } from './app.service';/*este es una prueba del demo*/\r\nimport { User } from '../../../../../../_entities/User'; /*este es una prueba del demo*/\r\nimport { AuthService } from '../../../../../auth/auth.service'; /*este es una prueba del demo*/\r\n\r\n@Component({\r\n\tselector: 'kt-informacion-micromedidor',\r\n\ttemplateUrl: './informacion-micromedidor.component.html',\r\n\tstyleUrls: ['./informacion-micromedidor.component.scss'],\r\n\tproviders: [Service],/*este es una prueba del demo*/\r\n})\r\nexport class InformacionMicromedidorComponent implements OnInit {\r\n\t_user: User;\r\n\tpublic usuarioDemo: boolean = true;\r\n\tcustomers: Customer[];/*este es una prueba del demo*/\r\n\t@ViewChild(DxDataGridComponent, { static: false }) dataGrid: DxDataGridComponent\r\n\tpublic micromedidorId: number;\r\n\tpublic micromedidor;\r\n\tpublic applyFilterTypes: any;\r\n\tpublic currentFilter: any;\r\n\tpublic showFilterRow: boolean;\r\n\tpublic showHeaderFilter: boolean;\r\n\tpublic direccion: string;\r\n\tpublic usuario;\r\n\tpublic fechaHora;\r\n\tpublic imagen;\r\n\tpublic imagenDemo;\r\n\r\n\tpublic geocercaAsignada: string = '';\r\n\r\n\tconstructor(private micromedidoresService: MicromedidoresService, service: Service /*este es una prueba del demo*/,private auth: AuthService /*este es una prueba del demo*/,\r\n\t\tprivate dialogRef: MatDialogRef,\r\n\t\tprivate dialog: MatDialog,\r\n\t\tprivate mapaService: MapaService,\r\n\t\tprivate datePipe: DatePipe,\r\n\t\t@Inject(MAT_DIALOG_DATA) public data: Micromedidor) { \r\n\t\t\tthis.customers = service.getCustomers();/*este es una prueba del demo*/\r\n\t\t}\r\n\r\n\tngOnInit() {\r\n\t\t// this.obtenerDatosMicromedidor(this.data); original\r\n\t\t// demo\r\n\t\tthis._user = this.auth.getUser();\r\n\t\tif(this._user.id === \"6cac2e07-cb6d-4725-93d7-ed7ad39f5ade\"){\r\n\t\t\tthis.usuarioDemo = false;\r\n\t\t\tthis.obtenerDatosMicromedidorDemo(this.data);\r\n\t\t}else{\r\n\t\t\tthis.obtenerDatosMicromedidor(this.data);\r\n\t\t}\r\n\t\t// demo\r\n\t}\r\n\r\n\tobtenerDatosMicromedidor(micromedidor) {\r\n\t\tthis.imagen = this.data.imagen;\r\n\r\n\t\tif (micromedidor.geocercas.length > 0) {\r\n\t\t\tmicromedidor.geocercas.forEach(geocerca => {\r\n\t\t\t\tthis.geocercaAsignada = this.geocercaAsignada + geocerca.nombre + ', ';\r\n\t\t\t});\r\n\r\n\t\t\tthis.geocercaAsignada = this.geocercaAsignada.slice(0, -1);\r\n\t\t\tthis.geocercaAsignada = this.geocercaAsignada.slice(0, -1);\r\n\r\n\t\t} else {\r\n\t\t\tthis.geocercaAsignada = 'Sin asignación';\r\n\t\t}\r\n\r\n\t\tthis.micromedidor = micromedidor;\r\n\t}\r\n\r\n\tobtenerDatosMicromedidorDemo(micromedidor) {\r\n\t\t/*esta es una prueba del demo*/\r\n\t\tthis.imagenDemo = './assets/image/garzaimage.jpg'\r\n\t\t/*esta es una pruea del demo*/\r\n\t}\r\n\r\n\r\n\tubicarMedidor() {\r\n\t\tthis.mapaService.verMedidor(this.micromedidor);\r\n\t\tthis.dialogRef.close()\r\n\t}\r\n\r\n\tubicarMedidorDemo() {\r\n\t\tthis.mapaService.verMedidorDemo(this.micromedidor);\r\n\t\tthis.dialogRef.close()\r\n\t}\r\n\r\n\tverHistorico() {\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.autoFocus = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\t\tdialogConfig.width = \"58%\";\r\n\t\tdialogConfig.closeOnNavigation = true;\r\n\t\tdialogConfig.hasBackdrop = false;\r\n\t\tdialogConfig.panelClass = 'custom-modalbox';\r\n\t\tdialogConfig.data = this.micromedidor;\r\n\t\tthis.dialog.open(HistoricoMedicionesMicromedidorComponent, dialogConfig);\r\n\t\tthis.dialogRef.close()\r\n\t\t// this.dialog.open(HistoricoMedicionesMicromedidorComponent);/*este es una prueba del demo*/\r\n\t}\r\n\r\n\tverHistoricoDemo() {\r\n\t\t// const dialogConfig = new MatDialogConfig();\r\n\t\t// dialogConfig.autoFocus = true;\r\n\t\t// dialogConfig.disableClose = true;\r\n\t\t// dialogConfig.width = \"58%\";\r\n\t\t// dialogConfig.closeOnNavigation = true;\r\n\t\t// dialogConfig.hasBackdrop = false;\r\n\t\t// dialogConfig.panelClass = 'custom-modalbox';\r\n\t\t// dialogConfig.data = this.micromedidor;\r\n\t\t// this.dialog.open(HistoricoMedicionesMicromedidorComponent, dialogConfig);\r\n\t\tthis.dialogRef.close()\r\n\t\tthis.dialog.open(HistoricoMedicionesMicromedidorComponent);/*este es una prueba del demo*/\r\n\t}\r\n\r\n\tverCalle() {\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.autoFocus = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\t\tdialogConfig.width = \"40%\";\r\n\t\tdialogConfig.closeOnNavigation = true;\r\n\t\tdialogConfig.hasBackdrop = false;\r\n\t\tdialogConfig.panelClass = 'custom-modalbox';\r\n\t\tdialogConfig.data = this.data;\r\n\t\tthis.dialog.open(StreetViewComponent, dialogConfig)\r\n\t\tthis.dialogRef.close()\r\n\t}\r\n\r\n\tpublic minimizarPopup() {\r\n\t\tthis.dialogRef.addPanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic maximizarPopup() {\r\n\t\tthis.dialogRef.removePanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic cerrarPopup() {\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n\r\n}\r\n","
\r\n\t\r\n\t\r\n\t\r\n\t\r\n\t
\r\n\t\t\r\n\t\t

Histórico de Eventos

\r\n\t
\r\n\t\r\n
\r\n
\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n  \r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t

Tapa Restaurada

\r\n\t\t\t\t\t\t\t\t\t

Tapa Abierta

\r\n\t\t\t\t\t\t\t\t\t

Alarma de Pánico

\r\n\t\t\t\t\t\t\t\t\t

Alarma Silenciada

\r\n\t\t\t\t\t\t\t\t\t

Dispositivo Restaurado

\r\n\t\t\t\t\t\t\t\t\t

Dirección IP Utilizada

\r\n\t\t\t\t\t\t\t\t\t

Dirección IP Normal

\r\n\t\t\t\t\t\t\t\t\t

Armado

\r\n\t\t\t\t\t\t\t\t\t

Desarmado

\r\n\r\n\t\t\t\t\t\t\t\t\t

Pérdida de Alimentación

\r\n\t\t\t\t\t\t\t\t\t

Alarma Sensor de Movimiento

\r\n\t\t\t\t\t\t\t\t\t

Fallo de Red

\r\n\t\t\t\t\t\t\t\t\t

Dispositivo Sin Conexión

\r\n\r\n\t\t\t\t\t\t\t\t\t

Fallo de Celular

\r\n\t\t\t\t\t\t\t\t\t

Celular Resturado

\r\n\t\t\t\t\t\t\t\t\t

Perdida de Alimentación de Red

\r\n\t\t\t\t\t\t\t\t\t

Interferencia Detectada

\r\n\t\t\t\t\t\t\t\t\t

Interferencia Restaurada

\r\n\t\t\t\t\t\t\t\t\t

Dispositivo Inscrito

\r\n\t\t\t\t\t\t\t\t\t

Dispositivo Eliminado

\r\n\r\n\t\t\t\t\t\t\t\t\t

Red Eléctrica Restaurada

\r\n\t\t\t\t\t\t\t\t\t

Red Restaurada

\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n\r\n\r\n","import { Component, Inject, OnInit, ViewChild } from '@angular/core';\r\nimport { PanelCiudadano } from '../../../../../../_entities/panelCiudadano/panelCiudadano';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { MAT_DIALOG_DATA, MatDialog, MatDialogRef } from '@angular/material';\r\nimport { DatePipe } from '@angular/common';\r\nimport { PanelAdministracionService } from '../../../../../panel-vigilancia/services/panel-administracion.service';\r\nimport { DxValidationGroupComponent } from 'devextreme-angular';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'kt-historico-panel',\r\n templateUrl: './historico-panel.component.html',\r\n styleUrls: ['./historico-panel.component.scss']\r\n})\r\nexport class HistoricoPanelComponent implements OnInit {\r\n @ViewChild('targetGroup', { static: false }) validationGroup: DxValidationGroupComponent;\r\n\tpublic reportePos: PanelCiudadano[];\r\n\r\n\tpublic fechaInicial;\r\n\tpublic fechaFinal;\r\n\tpublic fechaFin;\r\n\tpublic fechaInicio;\r\n\tpublic datosReporte = [];\r\n\tpublic isDisabled: boolean = true;\r\n\tpublic showTable: boolean = false;\r\n public loadingMessage: string = 'Cargando...';\r\n public loadingVisible: boolean = false;\r\n\r\n\tpublic currentFilter: any;\r\n\r\n\tpublic showFilterRow: boolean;\r\n constructor(private panelService:PanelAdministracionService,private toastService: ToastrService,\r\n\t\tprivate dialog: MatDialog,\r\n\t\t@Inject(MAT_DIALOG_DATA) public data,\r\n\t\tpublic dialogRef: MatDialogRef,\r\n\t\tprivate datepipe: DatePipe) { \r\n this.showFilterRow = true;\r\n }\r\n\r\n ngOnInit(): void {\r\n console.log(this.data)\r\n }\r\n\r\n obtenerHistorico(fechaInicio,fechaFinal){\r\n if (this.validationGroup.instance.validate().isValid) {\r\n this.loadingVisible = true;\r\n this.fechaInicial = this.datepipe.transform(fechaInicio, \"yyyy-MM-dd HH:mm:ss\");\r\n this.fechaFinal = this.datepipe.transform(fechaFinal, \"yyyy-MM-dd HH:mm:ss\");\r\n setTimeout(() => {\r\n this.loadingMessage = 'Esto puede tardar unos segundos...';\r\n }, 10000);\r\n this.panelService.obtenerPanelesHistorico(this.data.id, this.fechaInicial,this.fechaFinal).subscribe((result: PanelCiudadano[])=>{\r\n this.reportePos = result;\r\n console.log(this.reportePos)\r\n result.map(p => {\r\n if(p.boton == null || p.boton == \"\"){\r\n p.boton = 'Sin registro'\r\n } else{\r\n p.boton = p.boton\r\n }\r\n })\r\n result.map(q => {\r\n if(q.codigoProtocolo == null){\r\n q.codigoProtocolo = 'Sin registro'\r\n } else {\r\n q.codigoProtocolo = q.codigoProtocolo\r\n }\r\n })\r\n\r\n if (this.reportePos.length > 0) {\r\n this.crearReporte(result);\r\n }\r\n else {\r\n this.isDisabled = true;\r\n this.showTable = false;\r\n this.loadingVisible = false;\r\n\t\t\t\t\tthis.toastService.info(\"No existen datos en ese rango de fechas\")\r\n }\r\n if(this.datosReporte.length > 0) {\r\n this.isDisabled = false;\r\n }\r\n if (this.reportePos.length > 0) {\r\n this.loadingVisible = false;\r\n this.showTable = true;\r\n }\r\n },err=>{\r\n console.log(err);\r\n })\r\n }\r\n }\r\n\r\n crearReporte(reporte: PanelCiudadano[]) {\r\n\t\tthis.datosReporte = [];\r\n\t\treporte.forEach(q => {\r\n\t\t\tthis.datosReporte.push({\r\n\t\t\t\t'Evento': this.obtenerEstatus(q.descripcionAlarma),\r\n 'Nombre': q.nombre,\r\n 'Nombre del Botón': q.boton,\r\n 'Número de Serie': q.numeroSerie,\r\n 'Modelo': q.modelo,\r\n 'Descripción': q.descripcion,\r\n 'DevIndex': q.devIndex,\r\n 'Lat': q.lat,\r\n 'Lng': q.lng,\r\n 'Imagen': q.imagen,\r\n // 'Nombre Contacto': q.nombreContacto,\r\n // 'Teléfono Contacto': q.telefonoContacto,\r\n // 'Código de Protolo': q.codigoProtocolo\r\n\t\t\t});\r\n\t\t\tif (this.datosReporte.length > 0) {\r\n\t\t\t\tthis.isDisabled = false;\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n obtenerEstatus(descripcionAlarma) {\r\n\t\tlet evento = '';\r\n\t\tswitch (descripcionAlarma) {\r\n\t\t\tcase 'Lid Restored':\r\n\t\t\t\tevento = 'Tapa Restaurada';\r\n\t\t\t\tbreak;\r\n\t\t\tcase 'Lid Opened':\r\n\t\t\t\tevento = 'Tapa Abierta';\r\n\t\t\t\tbreak;\r\n case 'Audible Panic Alarm':\r\n evento = 'Alarma de Pánico';\r\n break;\r\n case 'Alarm Silenced':\r\n evento = 'Alarma Silenciada';\r\n break;\r\n case 'Device Restored':\r\n evento = 'Dispositivo Restaurado';\r\n break;\r\n case 'IP Address Already Used':\r\n evento = 'Dirección IP Utilizada';\r\n break;\r\n case 'Normal IP address':\r\n evento = 'DIrección IP Normal';\r\n break;\r\n case 'Armed':\r\n evento = 'Armado';\r\n break;\r\n case 'Disarmed':\r\n evento = 'Desarmado';\r\n break;\r\n\r\n case 'Expander AC Power Loss':\r\n\t\t\t\tevento = 'Perdida de Alimentación';\r\n\t\t\t\tbreak;\r\n case '24H Alarm':\r\n evento = 'Alarma Sensor de Movimiento'\r\n break;\r\n case 'Network Fault':\r\n evento = 'Fallo de Red';\r\n break;\r\n case 'Device Offline':\r\n evento = 'Dispositivo Sin Conexión';\r\n break;\r\n\r\n case 'Cellular Fault':\r\n evento = 'Fallo de Celular';\r\n break;\r\n case 'Cellular Restored':\r\n evento = 'Celular Restaurado';\r\n break;\r\n case 'Mains Power Lost':\r\n evento = 'Perdida de Alimentación de Red'\r\n break;\r\n case 'Jamming Detected':\r\n evento = 'Interferencia Detectada';\r\n break;\r\n case 'Jamming Restored':\r\n evento = 'Interferencia Restaurada';\r\n break;\r\n case 'Device Enrolled':\r\n evento = 'Dispositivo Inscrito';\r\n break;\r\n case 'Device Deleted':\r\n evento = 'Dispositivo Eliminado'\r\n break;\r\n \r\n case 'Mains Power Restored':\r\n evento = 'Red Eléctrica Restaurada';\r\n break;\r\n case 'Network Restored':\r\n evento = 'Red Restaurada';\r\n break;\r\n\r\n case null:\r\n evento = 'Sin Datos';\r\n break;\r\n\t\t}\r\n\t\treturn evento;\r\n\t}\r\n\r\n public minimizarPopup() {\r\n\t\tthis.dialogRef.addPanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic maximizarPopup() {\r\n\t\tthis.dialogRef.removePanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic cerrarPopup() {\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n}\r\n","
\r\n\t\r\n\t\r\n\t\r\n\t\r\n\t
\r\n\t\t\r\n\t\t

Botón Ciudadano

\r\n\t
\r\n\t\r\n
\r\n
\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\tId: {{panel.id}}
\r\n\t\t\t\tNúmero Serie: {{panel.numeroSerie}}
\r\n\t\t\t\tDescripcion: {{panel.descripcion}}
\r\n\t\t\t\tNombre: {{panel.nombre}} m3
\r\n\t\t\t\tModelo: {{panel.modelo}}
\r\n\t\t\t\tLatitud: {{panel.lat | number}}
\r\n\t\t\t\tLongitud: {{panel.lng | number}}
\r\n\t\t\t\tNombre del Contacto: {{panel.nombreContacto}}
\r\n\t\t\t\tTeléfono del Contacto: {{panel.telefonoContacto}}
\r\n\t\t\t\tCódigo de Protocolo: {{panel.codigoProtocolo}}
\r\n\t\t\t\tDirección: {{direccion}}
\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t \r\n\t\t\t\t \r\n\t\t\t\t \r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n","import { StreetViewComponent } from './../../street-view/street-view.component';\r\nimport { Component, OnInit, Inject } from '@angular/core';\r\nimport { PanelCiudadano } from '../../../../../../_entities/panelCiudadano/panelCiudadano';\r\nimport { PanelAdministracionService } from '../../../../../panel-vigilancia/services/panel-administracion.service';\r\nimport { MAT_DIALOG_DATA, MatDialog, MatDialogConfig, MatDialogRef } from '@angular/material';\r\nimport { MapaService } from '../../../../services/mapa.service';\r\nimport { HistoricoPanelComponent } from '../historico-panel/historico-panel.component';\r\n\r\n@Component({\r\n selector: 'kt-informacion-panel',\r\n templateUrl: './informacion-panel.component.html',\r\n styleUrls: ['./informacion-panel.component.scss']\r\n})\r\nexport class InformacionPanelComponent implements OnInit {\r\n public panel:PanelCiudadano;\r\n public direccion: string;\r\n constructor(private mapaService:MapaService,\r\n private panelService:PanelAdministracionService,\r\n public dialog: MatDialog,\r\n\t\tpublic dialogRef: MatDialogRef,\r\n\t\t@Inject(MAT_DIALOG_DATA) public data: PanelCiudadano,\r\n\t\t) { }\r\n\r\n ngOnInit() {\r\n this.obtenerPanel(this.data)\r\n }\r\n \r\n obtenerPanel(panel){\r\n\t\tthis.mapaService.getDireccion([panel.lng, panel.lat]).then(\r\n\t\t\t(data: any) => {\r\n\t\t\t\tthis.direccion = data.display_name || \"Dirección Desconocida\";\r\n\t\t\t},\r\n\t\t\t() => {\r\n\t\t\t\tthis.direccion = \"Dirección Desconocida\";\r\n\t\t\t});\r\n\r\n\t\tthis.panel = panel;\r\n }\r\n\r\n ubicarPanel(){\r\n this.dialogRef.close();\r\n\t\tthis.mapaService.verPanel(this.data);\r\n }\r\n public minimizarPopup() {\r\n\t\tthis.dialogRef.addPanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic maximizarPopup() {\r\n\t\tthis.dialogRef.removePanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic cerrarPopup() {\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n\r\n\tverStreet() {\r\n\t\t/*StreetView Popup*/\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.autoFocus = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\t\tdialogConfig.panelClass = 'custom-modalbox';\r\n\t\tdialogConfig.width = \"45%\";\r\n\t\tdialogConfig.closeOnNavigation = true;\r\n\t\tdialogConfig.hasBackdrop = false;\r\n\t\tdialogConfig.data = this.data;\r\n\t\tthis.dialog.open(StreetViewComponent, dialogConfig);\r\n\t}\r\n historicoPanel(){\r\n const dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.autoFocus = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\t\tdialogConfig.width = \"50%\";\r\n\t\tdialogConfig.panelClass = 'custom-modalbox';\r\n\t\tdialogConfig.closeOnNavigation = true;\r\n\t\tdialogConfig.hasBackdrop = false;\r\n\t\tdialogConfig.data = this.data;\r\n\t\tthis.dialog.open(HistoricoPanelComponent, dialogConfig);\r\n\t\tthis.dialogRef.close();\r\n }\r\n}\r\n","
\r\n\t\r\n\t
\r\n\t\t\r\n\t\tIMEI: {{informacionPunto.datos.imei}}\r\n\t
\r\n\t
\r\n\t\t\r\n\t\tUsuario: {{informacionPunto.datos.descripcion}}\r\n\t
\r\n
\r\n\r\n\t
\r\n\t\t
\r\n\t\t\t{{informacionPunto.numeroActual}}/{{informacionPunto.longitud}}\r\n\t\t
\r\n\t\t\r\n\t\t
\r\n\t\t\t Descripción: {{informacionPunto.datos.descripcion}}
\r\n\t\t\t Económico: {{informacionPunto.datos.economico}}
\r\n\t\t\t Número de\r\n\t\t\t\t\tserie: {{informacionPunto.datos.numeroSerie}}
\r\n\t\t\t Estatus {{informacionPunto.datos.estatus}}
\r\n\t\t\t GPS: {{informacionPunto.datos.gps}} 
\r\n\t\t\t Modelo: {{informacionPunto.datos.modelo}}
\r\n\t\t\t Fecha y\r\n\t\t\t\t\thora: {{informacionPunto.datos.fechaHora}}
\r\n\t\t\t Cliente: {{informacionPunto.datos.cliente}}
\r\n\t\t\t Ubicación: [ {{informacionPunto.datos.lat\r\n\t\t\t\t| number: '1.1-4'}},  {{informacionPunto.datos.lng | number: '1.1-4'}} ]
\r\n\t\t
\r\n\t\t\r\n\t\t
\r\n\t\t\t Descripción: {{informacionPunto.datos.descripcion}}
\r\n\t\t\t Económico: {{informacionPunto.datos.economico}}
\r\n\t\t\t Número de\r\n\t\t\t\t\tserie: {{informacionPunto.datos.numeroSerie}}
\r\n\t\t\t Estatus: {{informacionPunto.datos.estatus}}
\r\n\t\t\t GPS: {{informacionPunto.datos.gps}} 
\r\n\t\t\t Modelo: {{informacionPunto.datos.modelo}}
\r\n\t\t\t Fecha y\r\n\t\t\t\t\thora: {{informacionPunto.datos.fechaHora}}
\r\n\t\t\t Cliente: {{informacionPunto.datos.cliente}}
\r\n\t\t\t Ubicación: [ {{informacionPunto.datos.lat\r\n\t\t\t\t| number: '1.1-4'}},  {{informacionPunto.datos.lng | number: '1.1-4'}} ]
\r\n\t\t
\r\n\t\t\r\n\t\t
\r\n\t\t\t Placa: {{informacionPunto.datos.placas}}
\r\n\t\t\t Económico: {{informacionPunto.datos.economico}}
\r\n\t\t\t Marca: {{informacionPunto.datos.marca}}
\r\n\t\t\t Modelo: {{informacionPunto.datos.modelo}}
\r\n\t\t\t Ignición: {{informacionPunto.datos.ignicion}}
\r\n\t\t\t Velocidad: {{informacionPunto.datos.velocidad}} km/h
\r\n\t\t\t Fecha y\r\n\t\t\t\t\thora: {{informacionPunto.datos.fecha}}
\r\n\t\t\t Ubicación: [ {{informacionPunto.datos.lat\r\n\t\t\t\t| number: '1.1-4'}},  {{informacionPunto.datos.lng | number: '1.1-4'}} ]
\r\n\t\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t
\r\n\t
\r\n
\r\n","import { Component, OnDestroy, OnInit } from '@angular/core';\r\nimport { MatDialog, MatDialogRef } from '@angular/material';\r\nimport { MapaService } from '../../../services/mapa.service';\r\nimport { Observable, Subject, Subscription } from 'rxjs';\r\nimport { IGNICIONES } from './../../../../../_entities/estados';\r\nimport {DatePipe} from '@angular/common';\r\n@Component({\r\n\tselector: 'kt-popup-recorrido-historico',\r\n\ttemplateUrl: './popup-recorrido-historico.component.html',\r\n\tstyleUrls: ['./popup-recorrido-historico.component.scss']\r\n})\r\nexport class PopupRecorridoHistoricoComponent implements OnInit {\r\n\tpublic permanentOverlayPopup: Observable;\r\n\tpublic informacionPunto;\r\n\tpublic ignicion;\r\n\r\n\tconstructor(public dialog: MatDialog,\r\n\t\tpublic mapaService: MapaService,\r\n\t\tprivate datepipe: DatePipe,\r\n\t\tpublic dialogRef: MatDialogRef) { }\r\n\r\n\tngOnInit() {\r\n\t\tthis.obtenerInformacionInicial();\r\n\t\tthis.obtenerInformacionPunto();\r\n\t}\r\n\r\n\tobtenerInformacionPunto() {\r\n\t\tthis.permanentOverlayPopup = this.mapaService.permanentOverlayPopup();\r\n\t\tthis.permanentOverlayPopup.subscribe((info) => {\r\n\t\t\tthis.informacionPunto = info;\r\n\t\t});\r\n\t}\r\n\r\n\tobtenerInformacionInicial() {\r\n\t\tthis.informacionPunto = this.mapaService.informacionInicial;\r\n\t}\r\n\r\n\thistoricoStreetView() {\r\n\t\tthis.mapaService.historicoStreetView();\r\n\t}\r\n\r\n\tpublic minimizarPopup() {\r\n\t\tthis.dialogRef.addPanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic maximizarPopup() {\r\n\t\tthis.dialogRef.removePanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic cerrarPopup() {\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n\r\n\r\n}\r\n","
\r\n\t\r\n\t\r\n\t\r\n\t\r\n\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t\t

Histórico de Posiciones

\r\n\t\t
\r\n\t\t\r\n\t
\r\n
\r\n\r\n\t\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t

{{activo.descripcion}}

\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\tEspecifique un rango de tiempo en el cual desea obtener ubicaciones del activo\r\n\t\t\t\t\tseleccionado.\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t\t
\r\n\t\t\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t \r\n\t\t\t\t\t\t\t\t \r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t\t\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
{{descripcion.value}}
\r\n\t\t\t\t\t
Sin datos
\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
{{bateria.value}}
\r\n\t\t\t\t\t
Sin datos
\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t{{alimentacion.value}}\r\n\t\t\t\t\t\r\n\t\t\t\t\t{{alimentacion.value}}\r\n\t\t\t\t\t\r\n\t\t\t\t\tSin datos\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t{{movimiento.value}}\r\n\t\t\t\t\t\r\n\t\t\t\t\t{{movimiento.value}}\r\n\t\t\t\t\t\r\n\t\t\t\t\tSin datos\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t{{gps.value}}\r\n\t\t\t\t\t{{gps.value}}\r\n\t\t\t\t\t{{gps.value}}\r\n\t\t\t\t\tSin datos\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t{{gsm.value}}\r\n\t\t\t\t\tSin datos\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n\r\n\r\n\r\n\r\n","import { DatePipe } from '@angular/common';\r\nimport { Component, Inject, OnInit, ViewChild } from '@angular/core';\r\nimport { DxDataGridComponent, DxValidationGroupComponent } from 'devextreme-angular';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { finalize } from 'rxjs/operators';\r\nimport { GPS, GSM } from '../../../../../../_entities/estados';\r\nimport { PortatilHistoricoPosiciones } from '../../../../../../_entities/Portatiles/Portatil';\r\nimport { PortatilesService } from '../../../../services/portatiles.service';\r\nimport { MapaService } from '../../../../services/mapa.service';\r\nimport { MatDialog, MatDialogRef, MAT_DIALOG_DATA } from '@angular/material';\r\nimport { environment } from '../../../../../../../environments/environment';\r\n\r\n@Component({\r\n selector: 'kt-historico-posiciones-portatiles',\r\n templateUrl: './historico-posiciones-portatiles.component.html',\r\n styleUrls: ['./historico-posiciones-portatiles.component.scss']\r\n})\r\nexport class HistoricoPosicionesPortatilesComponent implements OnInit {\r\n\r\n @ViewChild(DxDataGridComponent, { static: false }) dataGrid: DxDataGridComponent;\r\n\t@ViewChild('targetGroup', { static: false }) validationGroup: DxValidationGroupComponent;\r\n\r\n\tpublic reportePos: PortatilHistoricoPosiciones[];\r\n\tloadingVisible = false;\r\n\r\n\tpublic usuario;\r\n\tpublic idVehiculo;\r\n\tpublic activo;\r\n\tpublic idUsuario;\r\n\tpublic reporteQ: any;\r\n\tpublic fechaInicial;\r\n\tpublic fechaFinal;\r\n\tpublic fechaFin;\r\n\tpublic fechaInicio;\r\n\r\n\tpublic datosReporte = [];\r\n\tpublic showTable = false;\r\n\tpublic showFilterRow: boolean;\r\n\tisDisabled: boolean = true;\r\n\r\n\tconstructor(private activosService: PortatilesService,\r\n\t\tprivate datepipe: DatePipe,\r\n\t\tprivate mapaService: MapaService,\r\n\t\tprivate toastService: ToastrService,\r\n\t\tprivate dialog: MatDialog,\r\n\t\t@Inject(MAT_DIALOG_DATA) public data: any,\r\n\t\tpublic dialogRef: MatDialogRef) {\r\n\t\tthis.showFilterRow = true;\r\n\t\tthis.orderHeaderFilter = this.orderHeaderFilter.bind(this);\r\n\t}\r\n\r\n\tngOnInit() {\r\n\t\tif (JSON.parse(sessionStorage.getItem('historico'))) {\r\n\t\t\tthis.reportePos = JSON.parse(sessionStorage.getItem('historico'))\r\n\t\t\tthis.activo = JSON.parse(sessionStorage.getItem('data'));\r\n\t\t\tthis.reportePos.forEach(reporte => {\r\n\t\t\t\tlet link = `${environment.EXTERNAL_MAP}/ubicar?lat=${reporte.lat}&lng=${reporte.lng}`\r\n\r\n\t\t\t\tthis.datosReporte.push({\r\n\t\t\t\t\t'Ubicacion': {\r\n\t\t\t\t\t\tf: '=HYPERLINK(\"' + link + '\",\"Ubicar\")',\r\n\t\t\t\t\t\tv: link\r\n\t\t\t\t\t},\r\n\t\t\t\t\t'Fecha y Hora': reporte.fechaHora,\r\n\t\t\t\t\t'IMEI': reporte.imei,\r\n\t\t\t\t\t'Descripción': reporte.descripcion,\r\n\t\t\t\t\t'Batería': reporte.bateria,\r\n\t\t\t\t\t'Alimentación': reporte.alimentacion,\r\n\t\t\t\t\t'Movimiento': reporte.movimiento,\r\n\t\t\t\t\t'GPS': reporte.gps,\r\n\t\t\t\t\t'GSM': reporte.gsm,\r\n\t\t\t\t\t'Latitud': reporte.lat,\r\n\t\t\t\t\t'Longitud': reporte.lng\r\n\t\t\t\t});\r\n\t\t\t});\r\n\r\n\t\t\tif (this.reportePos.length > 0) {\r\n\t\t\t\tthis.isDisabled = false;\r\n\t\t\t\tthis.showTable = true;\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\tthis.activo = this.data;\r\n\t\t}\r\n\r\n\t}\r\n\r\n\tobtenerReportePosiciones(fechaInicio, fechaFin) {\r\n\t\tif (this.validationGroup.instance.validate().isValid) {\r\n\t\t\tthis.loadingVisible = true;\r\n\t\t\tthis.fechaInicial = this.datepipe.transform(fechaInicio, \"yyyy-MM-dd HH:mm:ss\");\r\n\t\t\tthis.fechaFinal = this.datepipe.transform(fechaFin, \"yyyy-MM-dd HH:mm:ss\");\r\n\t\t\tthis.mapaService.historicoFechas = [this.fechaInicial, this.fechaFinal]\r\n\t\t\tthis.reportePos = [];\r\n\t\t\tthis.activosService.obtenerReportePosiciones(this.activo.imei, this.fechaInicial, this.fechaFinal).pipe(\r\n\t\t\t\tfinalize(() => {\r\n\t\t\t\t\tthis.loadingVisible = false;\r\n\t\t\t\t})\r\n\t\t\t).subscribe(\r\n\t\t\t\t(response: PortatilHistoricoPosiciones[]) => {\r\n\t\t\t\t\tif (response.length > 0) {\r\n\t\t\t\t\t\tresponse.map(activo => {\r\n\t\t\t\t\t\t\tactivo.tipo = 'Portatil';\r\n\t\t\t\t\t\t\tactivo.estado = activo.estatus;\r\n\t\t\t\t\t\t\tactivo.fechaHora = this.datepipe.transform(activo.fechaHora, \"dd/MM/yyyy hh:mm:ss a\")\r\n\r\n\t\t\t\t\t\t\tif (activo.estatus == 0) {\r\n\t\t\t\t\t\t\t\tactivo.estatus = 'Inactivo';\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tactivo.estatus = 'Activo';\r\n\t\t\t\t\t\t\t}\r\n\r\n\r\n\t\t\t\t\t\t\tif (activo.bateria == null || activo.bateria == '') {\r\n\t\t\t\t\t\t\t\tactivo.bateria = 'Sin Batería'\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tactivo.bateria = activo.bateria + '%'\r\n\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\tswitch (activo.alimentacion) {\r\n\t\t\t\t\t\t\t\tcase 0:\r\n\t\t\t\t\t\t\t\t\tactivo.alimentacion = 'Sin Energía';\r\n\t\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\t\tcase 1:\r\n\t\t\t\t\t\t\t\t\tactivo.alimentacion = 'Energizado';\r\n\t\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\t\tdefault:\r\n\t\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\t}\r\n\r\n\r\n\t\t\t\t\t\t\tswitch (activo.movimiento) {\r\n\t\t\t\t\t\t\t\tcase 0:\r\n\t\t\t\t\t\t\t\t\tactivo.movimiento = 'Sin Movimiento';\r\n\t\t\t\t\t\t\t\t\tactivo.icono = './assets/media/marcadores/flechaGris.png';\r\n\t\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\t\tcase 1:\r\n\t\t\t\t\t\t\t\t\tactivo.movimiento = 'En Movimiento';\r\n\t\t\t\t\t\t\t\t\tactivo.icono = './assets/media/marcadores/flechaVerde.png';\r\n\t\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\t\tdefault:\r\n\t\t\t\t\t\t\t\t\tactivo.movimiento = 'Sin Movimiento';\r\n\t\t\t\t\t\t\t\t\tactivo.icono = './assets/media/marcadores/flechaGris.png'\r\n\t\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\t}\r\n\r\n\r\n\t\t\t\t\t\t\tconst alertaGSM = GSM.find(gsm => activo.gsm == gsm.id);\r\n\t\t\t\t\t\t\tactivo.gsm = alertaGSM.nombre;\r\n\t\t\t\t\t\t\ttry {\r\n\t\t\t\t\t\t\t\tconst alertaGPS = GPS.find(gps => activo.gps == gps.id);\r\n\t\t\t\t\t\t\t\tactivo.gps = alertaGPS.nombre;\r\n\t\t\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\t\t\tactivo.gps = 'Pésima';\r\n\t\t\t\t\t\t\t}\r\n\r\n\r\n\t\t\t\t\t\t})\r\n\r\n\t\t\t\t\t\tthis.reportePos = response\r\n\t\t\t\t\t\tsessionStorage.setItem('historico', JSON.stringify(this.reportePos));\r\n\t\t\t\t\t\tsessionStorage.setItem('data', JSON.stringify(this.activo))\r\n\t\t\t\t\t\tthis.mapaService.posicionesReporte = response;\r\n\t\t\t\t\t\tthis.mapaService.tipoProducto = 'activo'\r\n\t\t\t\t\t\tthis.mapaService.datosGenerales = this.activo;\r\n\t\t\t\t\t\tthis.mapaService.pintarMarcadoresHistorico();\r\n\t\t\t\t\t\tvar botonesRecorrido = document.getElementById('botonesRecorrido');\r\n\t\t\t\t\t\t//\tbotonesRecorrido.style.display = 'block';\r\n\t\t\t\t\t\tthis.mapaService.estadoHistorico = true;\r\n\t\t\t\t\t\tthis.mapaService.validarEstadoHistorico();\r\n\t\t\t\t\t\tthis.mapaService.abrirPopupRecorrido();\r\n\t\t\t\t\t\tthis.cerrarPopup()\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tthis.toastService.info('No existen datos disponibles')\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t);\r\n\t\t} else {\r\n\t\t\tthis.toastService.warning('Existen campos requerídos vacíos');\r\n\r\n\t\t}\r\n\r\n\t}\r\n\r\n\treporteAlDia() {\r\n\t\tthis.loadingVisible = true;\r\n\t\tlet fechaInicial = new Date().toString();\r\n\t\tfechaInicial = this.datepipe.transform(fechaInicial, \"yyyy-MM-dd 00:00:00\");\r\n\r\n\t\tlet fechaFinal = new Date().toString();\r\n\t\tfechaFinal = this.datepipe.transform(fechaFinal, 'yyyy-MM-dd HH:mm:ss');\r\n\r\n\t\tthis.mapaService.historicoFechas = [fechaInicial, fechaFinal]\r\n\t\tthis.reportePos = [];\r\n\r\n\t\tthis.activosService.obtenerReportePosiciones(this.activo.imei, fechaInicial, fechaFinal).pipe(\r\n\t\t\tfinalize(() => {\r\n\t\t\t\tthis.loadingVisible = false;\r\n\t\t\t})\r\n\t\t).subscribe(\r\n\t\t\t(response: PortatilHistoricoPosiciones[]) => {\r\n\t\t\t\tif (response.length > 0) {\r\n\t\t\t\t\tresponse.map(activo => {\r\n\t\t\t\t\t\tactivo.tipo = 'activo';\r\n\t\t\t\t\t\tactivo.estado = activo.estatus;\r\n\t\t\t\t\t\tactivo.fechaHora = this.datepipe.transform(activo.fechaHora, \"dd/MM/yyyy hh:mm:ss a\")\r\n\r\n\t\t\t\t\t\tif (activo.estatus == 0) {\r\n\t\t\t\t\t\t\tactivo.estatus = 'Inactivo';\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tactivo.estatus = 'Activo';\r\n\t\t\t\t\t\t}\r\n\r\n\r\n\t\t\t\t\t\tif (activo.bateria == null || activo.bateria == '') {\r\n\t\t\t\t\t\t\tactivo.bateria = 'Sin Batería'\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tactivo.bateria = activo.bateria + '%'\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\tswitch (activo.alimentacion) {\r\n\t\t\t\t\t\t\tcase 0:\r\n\t\t\t\t\t\t\t\tactivo.alimentacion = 'Sin Energía';\r\n\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\tcase 1:\r\n\t\t\t\t\t\t\t\tactivo.alimentacion = 'Energizado';\r\n\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\tdefault:\r\n\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t}\r\n\r\n\r\n\t\t\t\t\t\tswitch (activo.movimiento) {\r\n\t\t\t\t\t\t\tcase 0:\r\n\t\t\t\t\t\t\t\tactivo.movimiento = 'Sin Movimiento';\r\n\t\t\t\t\t\t\t\tactivo.icono = './assets/media/marcadores/flechaGris.png'\r\n\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\tcase 1:\r\n\t\t\t\t\t\t\t\tactivo.movimiento = 'En Movimiento';\r\n\t\t\t\t\t\t\t\tactivo.icono = './assets/media/marcadores/flechaVerde.png';\r\n\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\tdefault:\r\n\t\t\t\t\t\t\t\tactivo.movimiento = 'Sin Movimiento';\r\n\t\t\t\t\t\t\t\tactivo.icono = './assets/media/marcadores/flechaGris.png'\r\n\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t}\r\n\r\n\r\n\t\t\t\t\t\tconst alertaGSM = GSM.find(gsm => activo.gsm == gsm.id);\r\n\t\t\t\t\t\tactivo.gsm = alertaGSM.nombre;\r\n\t\t\t\t\t\ttry {\r\n\t\t\t\t\t\t\tconst alertaGPS = GPS.find(gps => activo.gps == gps.id);\r\n\t\t\t\t\t\t\tactivo.gps = alertaGPS.nombre;\r\n\t\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\t\tactivo.gps = 'Pésima';\r\n\t\t\t\t\t\t}\r\n\r\n\r\n\t\t\t\t\t})\r\n\r\n\t\t\t\t\tthis.reportePos = response\r\n\t\t\t\t\tsessionStorage.setItem('historico', JSON.stringify(this.reportePos));\r\n\t\t\t\t\tsessionStorage.setItem('data', JSON.stringify(this.activo))\r\n\t\t\t\t\tthis.mapaService.posicionesReporte = response;\r\n\t\t\t\t\tthis.mapaService.tipoProducto = 'activo'\r\n\t\t\t\t\tthis.mapaService.datosGenerales = this.activo;\r\n\t\t\t\t\tthis.mapaService.pintarMarcadoresHistorico();\r\n\t\t\t\t\tvar botonesRecorrido = document.getElementById('botonesRecorrido');\r\n\t\t\t\t\t//botonesRecorrido.style.display = 'block';\r\n\t\t\t\t\tthis.mapaService.estadoHistorico = true;\r\n\t\t\t\t\tthis.mapaService.validarEstadoHistorico();\r\n\t\t\t\t\tthis.mapaService.abrirPopupRecorrido();\r\n\t\t\t\t\tthis.cerrarPopup()\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis.toastService.info('No existen datos disponibles')\r\n\t\t\t\t}\r\n\r\n\r\n\t\t\t}\r\n\t\t);\r\n\r\n\t}\r\n\r\n\tclearFilter() {\r\n\t\tthis.dataGrid.instance.clearFilter();\r\n\t}\r\n\r\n\r\n\tpublic ubicarPuntoHistorico(data) {\r\n\t\tthis.mapaService.ubicarPuntoHistorico(data);\r\n\t}\r\n\r\n\tpublic minimizarPopup() {\r\n\t\tthis.dialogRef.addPanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic maximizarPopup() {\r\n\t\tthis.dialogRef.removePanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic cerrarPopup() {\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n\r\n\torderHeaderFilter(data) {\r\n\t\tdata.dataSource.postProcess = (results) => {\r\n\t\t\tresults.push({\r\n\t\t\t\ttext: \"Weekends\",\r\n\t\t\t\tvalue: \"weekends\"\r\n\t\t\t});\r\n\t\t\treturn results;\r\n\t\t};\r\n\t}\r\n\r\n\r\n}\r\n","
\r\n\t\r\n\t\r\n\t\r\n\t\r\n\t
\r\n\t\t\r\n\t\t

{{activo.descripcion}}

\r\n\t
\r\n\t\r\n
\r\n
\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\tCliente: {{activo.cliente}}
\r\n\t\t\t\tDescripción: {{activo.descripcion}}
\r\n\t\t\t\tIMEI: {{activo.imei}}
\r\n\t\t\t\tEconómico: {{activo.economico}}
\r\n\t\t\t\tSerie: {{activo.numeroSerie}}
\r\n\t\t\t\t
\r\n\t\t\t\t\tGPS: \r\n\t\t\t\t\t{{activo.gps}}
\r\n\t\t\t\t\t{{activo.gps}}
\r\n\t\t\t\t\t{{activo.gps}}
\r\n\t\t\t\t
\r\n\t\t\t\tGSM: {{activo.gsm}}
\r\n\t\t\t\tModelo: {{activo.modelo}}
\r\n\t\t\t\tBateria: {{activo.bateria}}
\r\n\t\t\t\tEstatus: {{activo.estatus}}
\r\n\t\t\t\tGeocerca:\r\n\t\t\t\t{{geocercaAsignada}}
\r\n\t\t\t\tFecha y\r\n\t\t\t\t\tHora: {{fechaHora}}
\r\n\t\t\t\tÚltima\r\n\t\t\t\t\tPosición: [{{activo.lat\r\n\t\t\t\t\t|\r\n\t\t\t\t\tnumber: '1.1-4'}},\r\n\t\t\t\t\t{{activo.lng | number: '1.1-4'}}]
\r\n\t\t\t\tDirección: {{direccion}}\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t \r\n\t\t\t\t \r\n\t\t\t\t \r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n","import { Component, Inject, OnInit } from '@angular/core';\r\nimport { MatDialog, MatDialogConfig, MatDialogRef, MAT_DIALOG_DATA } from '@angular/material';\r\nimport { StreetViewComponent } from '../../street-view/street-view.component';\r\nimport { HistoricoPosicionesPortatilesComponent } from '../historico-posiciones-portatiles/historico-posiciones-portatiles.component';\r\nimport { MapaService } from '../../../../services/mapa.service';\r\nimport { DatePipe } from '@angular/common';\r\nimport { PortatilUltimaTransmision } from '../../../../../../_entities/Portatiles/Portatil';\r\n\r\n@Component({\r\n selector: 'kt-informacion-portatil',\r\n templateUrl: './informacion-portatil.component.html',\r\n styleUrls: ['./informacion-portatil.component.scss']\r\n})\r\nexport class InformacionPortatilComponent implements OnInit {\r\n\r\n public fechaHora: any;\r\n\tpublic activo:PortatilUltimaTransmision;\r\n\tpublic imagen: string;\r\n\tpublic direccion: string;\r\n\tpublic geocercaAsignada: string = '';\r\n\r\n\tconstructor(private mapaService: MapaService,\r\n\t\tpublic datepipe: DatePipe,\r\n\t\tpublic dialog: MatDialog,\r\n\t\tpublic dialogRef: MatDialogRef,\r\n\t\t@Inject(MAT_DIALOG_DATA) public data: PortatilUltimaTransmision) { }\r\n\r\n\tngOnInit() {\r\n\t\tthis.obtenerDatosActivo(this.data);\r\n\t}\r\n\r\n\tobtenerDatosActivo(activo) {\r\n\t\tthis.imagen = activo.imagen;\r\n\t\tthis.fechaHora = this.datepipe.transform(activo.fechaHora, 'yyyy-MM-dd h:mma');\r\n\t\tthis.mapaService.getDireccion([activo.lng, activo.lat]).then(\r\n\t\t\t(data: any) => {\r\n\t\t\t\tthis.direccion = data.display_name || \"Dirección Desconocida\";\r\n\t\t\t},\r\n\t\t\t() => {\r\n\t\t\t\tthis.direccion = \"Dirección Desconocida\";\r\n\t\t\t});\r\n\r\n\t\tif (activo.geocercas != null) {\r\n\t\t\tif (activo.geocercas.length > 0) {\r\n\t\t\t\tactivo.geocercas.forEach(geocerca => {\r\n\t\t\t\t\tthis.geocercaAsignada = this.geocercaAsignada + geocerca.nombre + ', ';\r\n\t\t\t\t});\r\n\r\n\t\t\t\tthis.geocercaAsignada = this.geocercaAsignada.slice(0, -1);\r\n\t\t\t\tthis.geocercaAsignada = this.geocercaAsignada.slice(0, -1);\r\n\r\n\t\t\t} else {\r\n\t\t\t\tthis.geocercaAsignada = 'Sin asignación';\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\tthis.geocercaAsignada = 'Sin asignación';\r\n\r\n\t\t}\r\n\r\n\t\tthis.activo = activo;\r\n\r\n\t}\r\n\r\n\tubicarActivo() {\r\n\t\tthis.mapaService.verPortatil(this.activo);\r\n\t}\r\n\r\n\tpublic minimizarPopup() {\r\n\t\tthis.dialogRef.addPanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic maximizarPopup() {\r\n\t\tthis.dialogRef.removePanelClass('displayNone');\r\n\t}\r\n\r\n\tverStreet() {\r\n\t\t/*StreetView Popup*/\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.autoFocus = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\t\tdialogConfig.panelClass = 'custom-modalbox';\r\n\t\tdialogConfig.width = \"40%\";\r\n\t\tdialogConfig.closeOnNavigation = true;\r\n\t\tdialogConfig.hasBackdrop = false;\r\n\t\tdialogConfig.data = this.data;\r\n\t\tthis.dialog.open(StreetViewComponent, dialogConfig);\r\n\t}\r\n\r\n\tverHistorico() {\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.autoFocus = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\t\tdialogConfig.width = \"50%\";\r\n\t\tdialogConfig.panelClass = 'custom-modalbox';\r\n\t\tdialogConfig.closeOnNavigation = true;\r\n\t\tdialogConfig.hasBackdrop = false;\r\n\t\tdialogConfig.data = this.data\r\n\t\tthis.dialog.open(HistoricoPosicionesPortatilesComponent, dialogConfig);\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n\r\n\r\n\tpublic cerrarPopup() {\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n\r\n\r\n}\r\n","
\r\n\t\r\n\t\r\n\t\r\n\t
\r\n\t\t\r\n\t\t

Vista Street View

\r\n\t
\r\n
\r\n\r\n
\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
No se encuentra disponible la función street view en esta zona
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n","import { MatDialog, MAT_DIALOG_DATA, MatDialogRef } from '@angular/material';\r\nimport { Component, Inject, OnInit } from '@angular/core';\r\nimport StreetViewService = google.maps.StreetViewService;\r\nimport StreetViewPanorama = google.maps.StreetViewPanorama;\r\nimport StreetViewPanoramaData = google.maps.StreetViewPanoramaData;\r\nimport StreetViewStatus = google.maps.StreetViewStatus;\r\n\r\n@Component({\r\n\tselector: 'kt-street-view-vehiculo',\r\n\ttemplateUrl: './street-view.component.html',\r\n\tstyleUrls: ['./street-view.component.scss']\r\n})\r\nexport class StreetViewComponent implements OnInit {\r\n\tpublic panorama: StreetViewPanorama;\r\n\tpublic sv: StreetViewService;\r\n\tpublic isAvailable: boolean = true;\r\n\r\n\tconstructor(public dialog: MatDialog,\r\n\t\tpublic dialogRef: MatDialogRef,\r\n\t\t@Inject(MAT_DIALOG_DATA) public data: any) { }\r\n\r\n\tngOnInit() {\r\n\t\tconst { lat, lng } = this.data;\r\n\t\tconst coordinates = { lat, lng };\r\n\t\tthis.sv = new StreetViewService();\r\n\t\tthis.panorama = new StreetViewPanorama(document.getElementById('pano'));\r\n\r\n\t\tthis.sv.getPanorama({\r\n\t\t\tlocation: coordinates,\r\n\t\t\tradius: 50\r\n\t\t}, (data, status) => {\r\n\t\t\tthis.processSVData(data, status);\r\n\t\t }\r\n\t\t);\r\n\t}\r\n\r\n\r\n\tpublic minimizarPopup() {\r\n\t\tthis.dialogRef.addPanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic processSVData(data: StreetViewPanoramaData, status: StreetViewStatus): void {\r\n\t\tif (data != null) {\r\n\t\t\tthis.panorama.setPano(data.location.pano);\r\n\t\t\tthis.panorama.setPov({\r\n\t\t\t\theading: 270,\r\n\t\t\t\tpitch: 0\r\n\t\t\t});\r\n\t\t\tthis.panorama.setVisible(true);\r\n\t\t} else {\r\n\t\t\tthis.isAvailable = false;\r\n\t\t}\r\n\t}\r\n\r\n\tpublic maximizarPopup() {\r\n\t\tthis.dialogRef.removePanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic cerrarPopup() {\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n\r\n\r\n}\r\n","
\r\n\t\r\n\t\r\n\t\r\n\t\r\n\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t\t

Histórico de Posiciones

\r\n\t\t
\r\n\t\t\r\n\t
\r\n
\r\n\r\n\t\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t

{{telefono.descripcion}}

\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\tEspecifique un rango de tiempo en el cual desea obtener ubicaciones del teléfono\r\n\t\t\t\t\tseleccionado.\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t\t
\r\n\t\t\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t \r\n\t\t\t\t\t\t\t\t \r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t\t\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t\t{{p.data.alimentacion}}\r\n\t\t\t\t\t\r\n\t\t\t\t\t{{p.data.alimentacion}}\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t{{p.data.movimiento}}\r\n\t\t\t\t\t{{p.data.movimiento}}\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t{{p.data.gps}}\r\n\t\t\t\t\t{{p.data.gps}}\r\n\t\t\t\t\t{{p.data.gps}}\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n\r\n\r\n\r\n","import { finalize } from 'rxjs/operators';\r\nimport { DxDataGridComponent, DxValidationGroupComponent } from 'devextreme-angular';\r\nimport { MatDialog, MAT_DIALOG_DATA, MatDialogRef } from '@angular/material';\r\nimport { MapaService } from './../../../../services/mapa.service';\r\nimport { DatePipe } from '@angular/common';\r\nimport { TelefonosService } from './../../../../services/telefonos.service';\r\nimport { TelefonoHistoricoPosiciones } from './../../../../../../_entities/telefonos/telefono';\r\nimport { Component, Inject, OnInit, ViewChild } from '@angular/core';\r\nimport { GPS, GSM } from './../../../../../../_entities/estados';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { environment } from './../../../../../../../environments/environment';\r\n\r\n@Component({\r\n\tselector: 'kt-historico-posiciones-telefono',\r\n\ttemplateUrl: './historico-posiciones-telefono.component.html',\r\n\tstyleUrls: ['./historico-posiciones-telefono.component.scss']\r\n})\r\nexport class HistoricoPosicionesTelefonoComponent implements OnInit {\r\n\t@ViewChild(DxDataGridComponent, { static: false }) dataGrid: DxDataGridComponent;\r\n\t@ViewChild('targetGroup', { static: false }) validationGroup: DxValidationGroupComponent;\r\n\r\n\tloadingVisible = false;\r\n\r\n\tpublic reportePos: TelefonoHistoricoPosiciones[];\r\n\tpublic usuario;\r\n\tpublic idTelefono;\r\n\tpublic telefono;\r\n\tpublic idUsuario;\r\n\tpublic reporteQ: any;\r\n\tpublic fechaInicial;\r\n\tpublic fechaFinal;\r\n\tpublic fechaFin;\r\n\tpublic fechaInicio;\r\n\tpublic datosReporte = [];\r\n\tpublic isDisabled: boolean = true;\r\n\tpublic showTable: boolean = false;\r\n\r\n\r\n\tpublic showFilterRow: boolean;\r\n\tconstructor(private telefonosService: TelefonosService,\r\n\t\tprivate mapaService: MapaService,\r\n\t\tprivate toastService: ToastrService,\r\n\t\tprivate dialog: MatDialog,\r\n\t\t@Inject(MAT_DIALOG_DATA) public data,\r\n\t\tpublic dialogRef: MatDialogRef,\r\n\t\tprivate datepipe: DatePipe) {\r\n\t\tthis.showFilterRow = true;\r\n\t\tthis.orderHeaderFilter = this.orderHeaderFilter.bind(this);\r\n\t}\r\n\r\n\tngOnInit() {\r\n\t\tif (JSON.parse(sessionStorage.getItem('historico'))) {\r\n\t\t\tthis.reportePos = JSON.parse(sessionStorage.getItem('historico'));\r\n\t\t\tthis.telefono = JSON.parse(sessionStorage.getItem('data'));\r\n\t\t\tthis.reportePos.forEach(reporte => {\r\n\t\t\t\tlet link = `${environment.EXTERNAL_MAP}/ubicar?lat=${reporte.lat}&lng=${reporte.lng}`\r\n\r\n\t\t\t\tthis.datosReporte.push({\r\n\t\t\t\t\t'Ubicacion': {\r\n\t\t\t\t\t\tf: '=HYPERLINK(\"' + link + '\",\"Ubicar\")',\r\n\t\t\t\t\t\tv: link\r\n\t\t\t\t\t},\r\n\t\t\t\t\t'Fecha y Hora': reporte.fechaHora,\r\n\t\t\t\t\t'IMEI': reporte.imei,\r\n\t\t\t\t\t'Descripción': reporte.descripcion,\r\n\t\t\t\t\t'Batería': reporte.bateria,\r\n\t\t\t\t\t'Alimentación': reporte.alimentacion,\r\n\t\t\t\t\t'Movimiento': reporte.movimiento,\r\n\t\t\t\t\t'GPS': reporte.gps,\r\n\t\t\t\t\t'GSM': reporte.gsm,\r\n\t\t\t\t\t'Latitud': reporte.lat,\r\n\t\t\t\t\t'Longitus': reporte.lng\r\n\t\t\t\t});\r\n\t\t\t});\r\n\t\t\tif (this.datosReporte.length > 0) {\r\n\t\t\t\tthis.isDisabled = false;\r\n\t\t\t\tthis.showTable = true;\r\n\t\t\t}\r\n\r\n\t\t} else {\r\n\t\t\tthis.telefono = this.data;\r\n\t\t}\r\n\t}\r\n\r\n\tobtenerReportePosiciones(fechaInicio, fechaFin) {\r\n\t\tif (this.validationGroup.instance.validate().isValid) {\r\n\t\t\tthis.loadingVisible = true;\r\n\t\t\tthis.fechaInicial = this.datepipe.transform(fechaInicio, \"yyyy-MM-dd HH:mm:ss\");\r\n\t\t\tthis.fechaFinal = this.datepipe.transform(fechaFin, \"yyyy-MM-dd HH:mm:ss\");\r\n\t\t\tthis.mapaService.historicoFechas = [this.fechaInicial, this.fechaFinal]\r\n\t\t\tthis.mapaService.tipoProducto = 'telefono';\r\n\t\t\tthis.reportePos = [];\r\n\t\t\tthis.telefonosService.obtenerReportePosiciones(this.telefono.imei, this.fechaInicial, this.fechaFinal).pipe(\r\n\t\t\t\tfinalize(() => this.loadingVisible = false)\r\n\t\t\t).subscribe(\r\n\t\t\t\t(telefonos: TelefonoHistoricoPosiciones[]) => {\r\n\t\t\t\t\tif (telefonos.length > 0) {\r\n\t\t\t\t\t\ttelefonos.map(telefono => {\r\n\t\t\t\t\t\t\ttelefono.estado = telefono.estatus;\r\n\t\t\t\t\t\t\ttelefono.tipo = 'telefono';\r\n\t\t\t\t\t\t\ttelefono.direccion = 1;\r\n\t\t\t\t\t\t\ttelefono.fechaHora = this.datepipe.transform(telefono.fechaHora, 'dd/MM/yyyy hh:mm:ss a');\r\n\t\t\t\t\t\t\ttelefono.bateria = telefono.bateria + '%'\r\n\r\n\t\t\t\t\t\t\tswitch (telefono.alimentacion) {\r\n\t\t\t\t\t\t\t\tcase 0:\r\n\t\t\t\t\t\t\t\t\ttelefono.alimentacion = 'Sin Energía';\r\n\t\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\t\tcase 1:\r\n\t\t\t\t\t\t\t\t\ttelefono.alimentacion = 'Energizado';\r\n\t\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\t\tdefault:\r\n\t\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\tif (telefono.estatus == 0) {\r\n\t\t\t\t\t\t\t\ttelefono.estatus = 'Inactivo';\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\ttelefono.estatus = 'Activo';\r\n\t\t\t\t\t\t\t}\r\n\r\n\r\n\t\t\t\t\t\t\tswitch (telefono.movimiento) {\r\n\t\t\t\t\t\t\t\tcase 0:\r\n\t\t\t\t\t\t\t\t\ttelefono.movimiento = 'Sin Movimiento';\r\n\t\t\t\t\t\t\t\t\ttelefono.icono = './assets/media/marcadores/flechaGris.png'\r\n\r\n\t\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\t\tcase 1:\r\n\t\t\t\t\t\t\t\t\ttelefono.movimiento = 'En Movimiento';\r\n\t\t\t\t\t\t\t\t\ttelefono.icono = './assets/media/marcadores/flechaVerde.png';\r\n\t\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\t\tdefault:\r\n\t\t\t\t\t\t\t\t\ttelefono.movimiento = 'Sin Movimiento';\r\n\t\t\t\t\t\t\t\t\ttelefono.icono = './assets/media/marcadores/flechaGris.png'\r\n\t\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\t}\r\n\r\n\r\n\t\t\t\t\t\t\tconst alertaGSM = GSM.find(gsm => telefono.gsm == gsm.id);\r\n\t\t\t\t\t\t\ttelefono.gsm = alertaGSM.nombre;\r\n\t\t\t\t\t\t\ttry {\r\n\t\t\t\t\t\t\t\tconst alertaGPS = GPS.find(gps => telefono.gps == gps.id);\r\n\t\t\t\t\t\t\t\ttelefono.gps = alertaGPS.nombre;\r\n\t\t\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\t\t\ttelefono.gps = 'Mala';\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t})\r\n\r\n\t\t\t\t\t\tthis.reportePos = telefonos;\r\n\t\t\t\t\t\tsessionStorage.setItem('historico', JSON.stringify(this.reportePos));\r\n\t\t\t\t\t\tsessionStorage.setItem('data', JSON.stringify(this.telefono))\r\n\r\n\t\t\t\t\t\tthis.mapaService.posicionesReporte = telefonos;\r\n\t\t\t\t\t\tthis.mapaService.datosGenerales = this.telefono;\r\n\t\t\t\t\t\tthis.mapaService.pintarMarcadoresHistorico();\r\n\t\t\t\t\t\tvar botonesRecorrido = document.getElementById('botonesRecorrido');\r\n\t\t\t\t\t\t//botonesRecorrido.style.display = 'block';\r\n\t\t\t\t\t\tthis.mapaService.estadoHistorico = true;\r\n\t\t\t\t\t\tthis.mapaService.validarEstadoHistorico();\r\n\t\t\t\t\t\tthis.mapaService.abrirPopupRecorrido();\r\n\t\t\t\t\t\tthis.cerrarPopup();\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tthis.toastService.info('No existen datos disponibles')\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t}\r\n\t\t\t);\r\n\t\t} else {\r\n\t\t\tthis.toastService.warning('Existen campos requerídos vacíos')\r\n\t\t}\r\n\t}\r\n\r\n\treporteAlDia() {\r\n\t\tthis.loadingVisible = true;\r\n\r\n\t\tlet fechaInicial = new Date().toString();\r\n\t\tfechaInicial = this.datepipe.transform(fechaInicial, 'yyyy-MM-dd 00:00:00');\r\n\r\n\t\tlet fechaFinal = new Date().toString();\r\n\t\tfechaFinal = this.datepipe.transform(fechaFinal, 'yyyy-MM-dd HH:mm:ss');\r\n\r\n\t\tthis.mapaService.historicoFechas = [fechaInicial, fechaFinal]\r\n\t\tthis.mapaService.tipoProducto = 'telefono';\r\n\t\tthis.reportePos = [];\r\n\r\n\t\tthis.telefonosService.obtenerReportePosiciones(this.telefono.imei, fechaInicial, fechaFinal).pipe(\r\n\t\t\tfinalize(() => this.loadingVisible = false)\r\n\t\t).subscribe(\r\n\t\t\t(telefonos: TelefonoHistoricoPosiciones[]) => {\r\n\t\t\t\tif (telefonos.length > 0) {\r\n\t\t\t\t\ttelefonos.map(telefono => {\r\n\t\t\t\t\t\ttelefono.estado = telefono.estatus;\r\n\t\t\t\t\t\ttelefono.tipo = 'telefono';\r\n\t\t\t\t\t\ttelefono.direccion = 1;\r\n\t\t\t\t\t\ttelefono.fechaHora = this.datepipe.transform(telefono.fechaHora, 'dd/MM/yyyy hh:mm:ss a');\r\n\t\t\t\t\t\ttelefono.bateria = telefono.bateria + '%'\r\n\r\n\t\t\t\t\t\tswitch (telefono.alimentacion) {\r\n\t\t\t\t\t\t\tcase 0:\r\n\t\t\t\t\t\t\t\ttelefono.alimentacion = 'Sin Energía';\r\n\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\tcase 1:\r\n\t\t\t\t\t\t\t\ttelefono.alimentacion = 'Energizado';\r\n\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\tdefault:\r\n\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\tif (telefono.estatus == 0) {\r\n\t\t\t\t\t\t\ttelefono.estatus = 'Inactivo';\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\ttelefono.estatus = 'Activo';\r\n\t\t\t\t\t\t}\r\n\r\n\r\n\t\t\t\t\t\tswitch (telefono.movimiento) {\r\n\t\t\t\t\t\t\tcase 0:\r\n\t\t\t\t\t\t\t\ttelefono.movimiento = 'Sin Movimiento';\r\n\t\t\t\t\t\t\t\ttelefono.icono = './assets/media/marcadores/flechaGris.png'\r\n\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\tcase 1:\r\n\t\t\t\t\t\t\t\ttelefono.movimiento = 'En Movimiento';\r\n\t\t\t\t\t\t\t\ttelefono.icono = './assets/media/marcadores/flechaVerde.png';\r\n\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\tdefault:\r\n\t\t\t\t\t\t\t\ttelefono.movimiento = 'Sin Movimiento';\r\n\t\t\t\t\t\t\t\ttelefono.icono = './assets/media/marcadores/flechaGris.png'\r\n\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t}\r\n\r\n\r\n\t\t\t\t\t\tconst alertaGSM = GSM.find(gsm => telefono.gsm == gsm.id);\r\n\t\t\t\t\t\ttelefono.gsm = alertaGSM.nombre;\r\n\t\t\t\t\t\ttry {\r\n\t\t\t\t\t\t\tconst alertaGPS = GPS.find(gps => telefono.gps == gps.id);\r\n\t\t\t\t\t\t\ttelefono.gps = alertaGPS.nombre;\r\n\t\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\t\ttelefono.gps = 'Mala';\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t})\r\n\r\n\t\t\t\t\tthis.reportePos = telefonos;\r\n\t\t\t\t\tsessionStorage.setItem('historico', JSON.stringify(this.reportePos));\r\n\t\t\t\t\tsessionStorage.setItem('data', JSON.stringify(this.telefono))\r\n\r\n\t\t\t\t\tthis.mapaService.posicionesReporte = telefonos;\r\n\t\t\t\t\tthis.mapaService.datosGenerales = this.telefono;\r\n\t\t\t\t\tthis.mapaService.pintarMarcadoresHistorico();\r\n\t\t\t\t\tvar botonesRecorrido = document.getElementById('botonesRecorrido');\r\n\t\t\t\t\t//botonesRecorrido.style.display = 'block';\r\n\t\t\t\t\tthis.mapaService.estadoHistorico = true;\r\n\t\t\t\t\tthis.mapaService.validarEstadoHistorico();\r\n\t\t\t\t\tthis.mapaService.abrirPopupRecorrido();\r\n\t\t\t\t\tthis.cerrarPopup();\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis.toastService.info('No existen datos disponibles')\r\n\t\t\t\t}\r\n\r\n\t\t\t}\r\n\t\t);\r\n\r\n\t}\r\n\r\n\tclearFilter() {\r\n\t\tthis.dataGrid.instance.clearFilter();\r\n\t}\r\n\r\n\tpublic ubicarPuntoHistorico(data) {\r\n\t\tthis.mapaService.ubicarPuntoHistorico(data);\r\n\t}\r\n\r\n\tpublic minimizarPopup() {\r\n\t\tthis.dialogRef.addPanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic maximizarPopup() {\r\n\t\tthis.dialogRef.removePanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic cerrarPopup() {\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n\torderHeaderFilter(data) {\r\n\t\tdata.dataSource.postProcess = (results) => {\r\n\t\t\tresults.push({\r\n\t\t\t\ttext: \"Weekends\",\r\n\t\t\t\tvalue: \"weekends\"\r\n\t\t\t});\r\n\t\t\treturn results;\r\n\t\t};\r\n\t}\r\n\r\n}\r\n","
\r\n\t\r\n\t\r\n\t\r\n\t\r\n\t
\r\n\t\t\r\n\t\t

{{telefono.descripcion}}

\r\n\t
\r\n\t\r\n
\r\n\r\n
\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\tDescripción:{{telefono.descripcion}}
\r\n\t\t\t\tIMEI: {{telefono.imei}}
\r\n\t\t\t\tEconómico: {{telefono.economico}}
\r\n\t\t\t\tSerie: {{telefono.numeroSerie}}
\r\n\t\t\t\t
\r\n\t\t\t\t\tGPS: \r\n\t\t\t\t\t{{telefono.gps}}\r\n\t\t\t\t\t{{telefono.gps}}\r\n\t\t\t\t\t{{telefono.gps}}\r\n\t\t\t\t
\r\n\t\t\t\tGSM: {{telefono.gsm}}
\r\n\t\t\t\tModelo: {{telefono.modelo}}
\r\n\t\t\t\tCliente: \r\n\t\t\t\t{{telefono.cliente}}
\r\n\t\t\t\tBatería: {{telefono.bateria}}\r\n\t\t\t\t
\r\n\t\t\t\tEstatus: \r\n\t\t\t\t{{telefono.estatus}}
\r\n\t\t\t\tGeocerca:\r\n\t\t\t\t{{geocercaAsignada}}
\r\n\t\t\t\tFecha y\r\n\t\t\t\t\tHora: {{fechaHora}}
\r\n\t\t\t\tÚltima\r\n\t\t\t\t\tPosición: [{{telefono.lat | number: '1.1-4'}},\r\n\t\t\t\t\t\t{{telefono.lng | number: '1.1-4'}}]
\r\n\t\t\t\t\tDirección: {{direccion}}\r\n\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t \r\n\t\t\t\t \r\n\t\t\t\t \r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n","import { StreetViewComponent } from './../../street-view/street-view.component';\r\nimport { MatDialog, MatDialogRef, MAT_DIALOG_DATA, MatDialogConfig } from '@angular/material';\r\nimport { DatePipe } from '@angular/common';\r\nimport { MapaService } from './../../../../services/mapa.service';\r\nimport { Component, OnInit, Inject } from '@angular/core';\r\nimport { TelefonoUltimaTransmision } from './../../../../../../_entities/telefonos/telefono';\r\nimport { HistoricoPosicionesTelefonoComponent } from '../historico-posiciones-telefono/historico-posiciones-telefono.component';\r\n\r\n@Component({\r\n\tselector: 'kt-informacion-telefono',\r\n\ttemplateUrl: './informacion-telefono.component.html',\r\n\tstyleUrls: ['./informacion-telefono.component.scss']\r\n})\r\nexport class InformacionTelefonoComponent implements OnInit {\r\n\tpublic fechaHora: any;\r\n\tpublic telefono: TelefonoUltimaTransmision;\r\n\tpublic imagen: string;\r\n\tpublic direccion: string;\r\n\tpublic geocercaAsignada: string = '';\r\n\r\n\tconstructor(private mapaService: MapaService,\r\n\t\tpublic datepipe: DatePipe, public dialog: MatDialog,\r\n\t\tpublic dialogRef: MatDialogRef,\r\n\t\t@Inject(MAT_DIALOG_DATA) public data: TelefonoUltimaTransmision) { }\r\n\r\n\tngOnInit() {\r\n\t\tthis.obtenerDatosTelefono(this.data);\r\n\t}\r\n\r\n\tobtenerDatosTelefono(telefono) {\r\n\t\tthis.imagen = telefono.imagen;\r\n\t\tthis.fechaHora = this.datepipe.transform(telefono.fechaHora, 'yyyy-MM-dd hh:mma');\r\n\r\n\t\tthis.mapaService.getDireccion([telefono.lng, telefono.lat]).then(\r\n\t\t\t(data: any) => {\r\n\t\t\t\tthis.direccion = data.display_name || \"Dirección Desconocida\";\r\n\t\t\t},\r\n\t\t\t() => {\r\n\t\t\t\tthis.direccion = \"Dirección Desconocida\";\r\n\t\t\t});\r\n\r\n\t\tif (telefono.geocerca != null) {\r\n\t\t\tif (telefono.geocercas.length > 0) {\r\n\t\t\t\ttelefono.geocercas.forEach(geocerca => {\r\n\t\t\t\t\tthis.geocercaAsignada = this.geocercaAsignada + geocerca.nombre + ', ';\r\n\t\t\t\t});\r\n\r\n\t\t\t\tthis.geocercaAsignada = this.geocercaAsignada.slice(0, -1);\r\n\t\t\t\tthis.geocercaAsignada = this.geocercaAsignada.slice(0, -1);\r\n\r\n\t\t\t} else {\r\n\t\t\t\tthis.geocercaAsignada = 'Sin asignación';\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\tthis.geocercaAsignada = 'Sin asignación';\r\n\t\t}\r\n\r\n\t\tthis.telefono = telefono;\r\n\t}\r\n\r\n\tobtenerDireccion() {\r\n\r\n\t}\r\n\r\n\tubicarTelefono() {\r\n\t\tthis.mapaService.verTelefono(this.telefono);\r\n\t}\r\n\r\n\tverStreet() {\r\n\t\t/*StreetView Popup*/\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.autoFocus = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\t\tdialogConfig.panelClass = 'custom-modalbox';\r\n\t\tdialogConfig.width = \"40%\";\r\n\t\tdialogConfig.closeOnNavigation = true;\r\n\t\tdialogConfig.hasBackdrop = false;\r\n\t\tdialogConfig.data = this.data;\r\n\t\tthis.dialog.open(StreetViewComponent, dialogConfig);\r\n\t}\r\n\r\n\tverHistorico() {\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.autoFocus = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\t\tdialogConfig.width = \"50%\";\r\n\t\tdialogConfig.panelClass = 'custom-modalbox';\r\n\t\tdialogConfig.closeOnNavigation = true;\r\n\t\tdialogConfig.hasBackdrop = false;\r\n\t\tdialogConfig.data = this.data\r\n\t\tthis.dialog.open(HistoricoPosicionesTelefonoComponent, dialogConfig);\r\n\t\tthis.dialogRef.close()\r\n\t}\r\n\r\n\r\n\tpublic cerrarPopup() {\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n\r\n\tpublic minimizarPopup() {\r\n\t\tthis.dialogRef.addPanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic maximizarPopup() {\r\n\t\tthis.dialogRef.removePanelClass('displayNone');\r\n\t}\r\n\r\n\r\n}\r\n","
\r\n\t\r\n\t\r\n\t\r\n\t\r\n\t
\r\n\t\t\r\n\t\t

Dentro Geocerca

\r\n\t
\r\n\t\r\n
\r\n
\r\n\t
\r\n\t\t

Geocerca

\r\n\t\t

Especifique un rango de tiempo en el cual desea obtener ubicaciones del vehiculo seleccionado.

\r\n\t\t\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t{{d.data.descripcion}}\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n\r\n\r\n\r\n","import { DatePipe } from '@angular/common';\r\nimport { Component, Inject, OnInit } from '@angular/core';\r\nimport { MatDialog, MatDialogConfig, MatDialogRef, MAT_DIALOG_DATA } from '@angular/material';\r\nimport { finalize } from 'rxjs/operators';\r\nimport { GeocercasService } from './../../../../../monitoreo/services/geocercas.service';\r\nimport { VehiculoGeocerca } from './../../../../../../_entities/geocerca/vehiculo-geocerca';\r\nimport { IGNICIONES, ALERTAS } from './../../../../../../_entities/estados';\r\nimport { MapaMarkerComponent } from '../../../mapa-marker/mapa-marker.component';\r\n\r\n@Component({\r\n\tselector: 'kt-dentro-geocerca',\r\n\ttemplateUrl: './dentro-geocerca.component.html',\r\n\tstyleUrls: ['./dentro-geocerca.component.scss']\r\n})\r\nexport class DentroGeocercaComponent implements OnInit {\r\n\tpublic reporteDentroGeocerca: VehiculoGeocerca[]\r\n\tpublic geocercas;\r\n\tpublic geocerca;\r\n\tpublic fechaInicio;\r\n\tpublic fechaFin;\r\n\tpublic showFilterRow: boolean;\r\n\tpublic idVehiculo: number;\r\n\tpublic loadingVisible: boolean = false;\r\n\r\n\tconstructor(private geocercasService: GeocercasService,\r\n\t\tprivate datepipe: DatePipe,\r\n\t\tprivate dialog: MatDialog,\r\n\t\tprivate dialogRef: MatDialogRef,\r\n\t\t@Inject(MAT_DIALOG_DATA) public vehiculo) {\r\n\t\tthis.showFilterRow = true;\r\n\t\tthis.orderHeaderFilter = this.orderHeaderFilter.bind(this);\r\n\t}\r\n\r\n\tngOnInit() {\r\n\t\tthis.idVehiculo = this.vehiculo.id\r\n\t\tthis.obtenerGeocercas()\r\n\t}\r\n\r\n\tobtenerDentroGeocerca(fechaInicio, fechaFin, idGeocerca) {\r\n\t\tthis.loadingVisible = true;\r\n\t\tconst fechaInicial = this.datepipe.transform(fechaInicio, \"yyyy-MM-dd\");\r\n\t\tconst fechaFinal = this.datepipe.transform(fechaFin, \"yyyy-MM-dd\");\r\n\r\n\t\tthis.geocercasService.obtenerVehiculoDentroGeocerca(this.idVehiculo, idGeocerca, fechaInicial, fechaFinal).pipe(\r\n\t\t\tfinalize(\r\n\t\t\t\t() => { this.loadingVisible = false; }\r\n\t\t\t)\r\n\t\t).subscribe(\r\n\t\t\t(posiciones: VehiculoGeocerca[]) => {\r\n\t\t\t\tposiciones.map(vehiculo => {\r\n\t\t\t\t\tconst ignicion = IGNICIONES.find(ignicion => ignicion.id == vehiculo.ignicion);\r\n\t\t\t\t\tvehiculo.ignicion = ignicion.nombre;\r\n\r\n\t\t\t\t\tconst estado = ALERTAS.find(alerta => alerta.id == vehiculo.estado);\r\n\t\t\t\t\tvehiculo.estado = estado.nombre;\r\n\r\n\t\t\t\t\tvehiculo.fecha = this.datepipe.transform(vehiculo.fecha, 'dd/MM/yyyy HH:mm');\r\n\r\n\t\t\t\t});\r\n\r\n\t\t\t\tthis.reporteDentroGeocerca = posiciones;\r\n\t\t\t}\r\n\t\t)\r\n\r\n\t}\r\n\r\n\tobtenerGeocercas() {\r\n\t\tthis.geocercasService.getGeoCercas().subscribe(\r\n\t\t\t(geocerca) => {\r\n\t\t\t\tthis.geocercas = geocerca;\r\n\t\t\t}\r\n\t\t)\r\n\r\n\t}\r\n\r\n\tubicarPunto(data) {\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.autoFocus = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\t\tdialogConfig.panelClass = 'custom-modalbox';\r\n\t\tdialogConfig.width = \"40%\";\r\n\t\tdialogConfig.closeOnNavigation = true;\r\n\t\tdialogConfig.hasBackdrop = false;\r\n\t\tdialogConfig.data = this.vehiculo;\r\n\t\tthis.dialog.open(MapaMarkerComponent, dialogConfig);\r\n\t}\r\n\r\n\torderHeaderFilter(data) {\r\n\t\tdata.dataSource.postProcess = (results) => {\r\n\t\t\tresults.push({\r\n\t\t\t\ttext: \"Weekends\",\r\n\t\t\t\tvalue: \"weekends\"\r\n\t\t\t});\r\n\t\t\treturn results;\r\n\t\t};\r\n\t}\r\n\r\n\tpublic minimizarPopup() {\r\n\t\tthis.dialogRef.addPanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic maximizarPopup() {\r\n\t\tthis.dialogRef.removePanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic cerrarPopup() {\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n\r\n\r\n}\r\n","
\r\n\t\r\n\t\r\n\t\r\n\t\r\n\t
\r\n\t\t\r\n\t\t

Fuera Geocerca

\r\n\t
\r\n\t\r\n
\r\n\r\n\t\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t

Geocerca

\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\tEspecifique un rango de tiempo en el cual desea obtener ubicaciones del vehiculo\r\n\t\t\t\t\tseleccionado.\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t\t\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t \r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t\t\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t\t{{d.data.descripcion}}\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t{{p.data.estado}}\r\n\t\t\t\t\t{{p.data.estado}}\r\n\t\t\t\t\t{{p.data.estado}}\r\n\t\t\t\t\t{{p.data.estado}}\r\n\t\t\t\t\t\r\n\t\t\t\t\t{{p.data.estado}}\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n\r\n\r\n","import { DatePipe } from '@angular/common';\r\nimport { Component, Inject, OnInit } from '@angular/core';\r\nimport { MatDialog, MatDialogConfig, MatDialogRef, MAT_DIALOG_DATA } from '@angular/material';\r\nimport { finalize } from 'rxjs/operators';\r\nimport { GeocercasService } from './../../../../../monitoreo/services/geocercas.service';\r\nimport { VehiculoGeocerca } from './../../../../../../_entities/geocerca/vehiculo-geocerca';\r\nimport { IGNICIONES, ALERTAS } from './../../../../../../_entities/estados';\r\nimport { MapaMarkerComponent } from '../../../mapa-marker/mapa-marker.component';\r\nimport { ToastrService } from 'ngx-toastr';\r\n\r\n\r\n@Component({\r\n\tselector: 'kt-fuera-geocerca',\r\n\ttemplateUrl: './fuera-geocerca.component.html',\r\n\tstyleUrls: ['./fuera-geocerca.component.scss']\r\n})\r\nexport class FueraGeocercaComponent implements OnInit {\r\n\tpublic reporteFueraGeocerca: VehiculoGeocerca[]\r\n\tpublic geocercas;\r\n\tpublic geocerca;\r\n\tpublic fechaInicio;\r\n\tpublic fechaFin;\r\n\tpublic showFilterRow: boolean;\r\n\tpublic idVehiculo: number;\r\n\tpublic datosReporte = [];\r\n\tpublic loadingVisible: boolean = false;\r\n\tpublic isDisabled: boolean = true;\r\n\tpublic showTable: boolean = false;\r\n\r\n\tconstructor(private geocercasService: GeocercasService,\r\n\t\tprivate datepipe: DatePipe,\r\n\t\tprivate dialog: MatDialog,\r\n\t\tprivate toastService: ToastrService,\r\n\t\tprivate dialogRef: MatDialogRef,\r\n\t\t@Inject(MAT_DIALOG_DATA) public vehiculo) {\r\n\t\tthis.showFilterRow = true;\r\n\t\tthis.orderHeaderFilter = this.orderHeaderFilter.bind(this);\r\n\t}\r\n\r\n\tngOnInit() {\r\n\t\tthis.idVehiculo = this.vehiculo.id\r\n\t\tthis.obtenerGeocercas()\r\n\t}\r\n\r\n\tobtenerFueraGeocerca(fechaInicio, fechaFin, idGeocerca){\r\n\t\tthis.loadingVisible = true;\r\n\t\tconst fechaInicial = this.datepipe.transform(fechaInicio, \"yyyy-MM-dd\");\r\n\t\tconst fechaFinal = this.datepipe.transform(fechaFin, \"yyyy-MM-dd\");\r\n\r\n\t\tthis.geocercasService.obtenerVehiculoFueraGeocerca(this.idVehiculo, idGeocerca, fechaInicial, fechaFinal).pipe(\r\n\t\t\tfinalize(\r\n\t\t\t\t() => { this.loadingVisible = false; }\r\n\t\t\t)\r\n\t\t).subscribe(\r\n\t\t\t(posiciones: VehiculoGeocerca[]) => {\r\n\t\t\t\tposiciones.map(posicion => {\r\n\r\n\t\t\t\t\tconst ignicion = IGNICIONES.find(ignicion => ignicion.id == posicion.ignicion);\r\n\t\t\t\t\tposicion.ignicion = ignicion.nombre;\r\n\r\n\t\t\t\t\tconst estado = ALERTAS.find(alerta => alerta.id == posicion.estado);\r\n\t\t\t\t\tposicion.estado = estado.nombre;\r\n\r\n\t\t\t\t\tposicion.fecha = this.datepipe.transform(posicion.fecha, 'dd/MM/yyyy HH:mm');\r\n\r\n\t\t\t\t});\r\n\r\n\t\t\t\tthis.reporteFueraGeocerca = posiciones;\r\n\t\t\t\tthis.reporteFueraGeocerca.forEach(vehiculo => {\r\n\t\t\t\t\tthis.datosReporte.push({\r\n\t\t\t\t\t\t'Vehiculo': vehiculo.descripcion,\r\n\t\t\t\t\t\t'Placas': vehiculo.placas,\r\n\t\t\t\t\t\t'Estado': vehiculo.estado,\r\n\t\t\t\t\t\t'Ignición': vehiculo.ignicion,\r\n\t\t\t\t\t\t'Fecha': vehiculo.fecha\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t\t\tif(this.datosReporte.length){\r\n\t\t\t\t\tthis.isDisabled = false;\r\n\t\t\t\t\tthis.showTable = true;\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis.toastService.info('No se encontraron datos');\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t)\r\n\t}\r\n\r\n\tobtenerGeocercas() {\r\n\t\tthis.geocercasService.getGeoCercas().subscribe(\r\n\t\t\t(geocerca) => {\r\n\t\t\t\tthis.geocercas = geocerca;\r\n\t\t\t}\r\n\t\t)\r\n\r\n\t}\r\n\r\n\tubicarPunto(data) {\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.autoFocus = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\t\tdialogConfig.panelClass = 'custom-modalbox';\r\n\t\tdialogConfig.width = \"40%\";\r\n\t\tdialogConfig.closeOnNavigation = true;\r\n\t\tdialogConfig.hasBackdrop = false;\r\n\t\tdialogConfig.data = this.vehiculo;\r\n\t\tthis.dialog.open(MapaMarkerComponent, dialogConfig);\r\n\t}\r\n\r\n\torderHeaderFilter(data) {\r\n\t\tdata.dataSource.postProcess = (results) => {\r\n\t\t\tresults.push({\r\n\t\t\t\ttext: \"Weekends\",\r\n\t\t\t\tvalue: \"weekends\"\r\n\t\t\t});\r\n\t\t\treturn results;\r\n\t\t};\r\n\t}\r\n\r\n\tpublic minimizarPopup() {\r\n\t\tthis.dialogRef.addPanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic maximizarPopup() {\r\n\t\tthis.dialogRef.removePanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic cerrarPopup() {\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n\r\n}\r\n","
\r\n\t\r\n\t\r\n\t\r\n\t\r\n\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t\t

Galería

\r\n\t\t
\r\n\t
\r\n
\r\n
\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t \r\n\t\t\t
\r\n\t\t
\r\n\t\t\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t{{i}} / {{galeria.length}}\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t
{{fecha | date:'dd/MM/yyyyh:mm:ss'}}
\r\n\t\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n","import { DatePipe } from '@angular/common';\r\nimport { Component, ElementRef, Inject, OnInit, ViewChild } from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { finalize } from 'rxjs/operators';\r\nimport { GaleriaVehiculoService } from './../../../../services/galeria-vehiculo.service';\r\nimport { Directorios } from './../../../../../../_entities/galeria/Directorios';\r\nimport { ListaImagenes } from './../../../../../../_entities/galeria/ListaImagenes';\r\n\r\n@Component({\r\n selector: 'kt-galeria-nuevo-dispositivo',\r\n templateUrl: './galeria-nuevo-dispositivo.component.html',\r\n styleUrls: ['./galeria-nuevo-dispositivo.component.scss']\r\n})\r\nexport class GaleriaNuevoDispositivoComponent implements OnInit {\r\n\r\n\t@ViewChild('myImage', { static: true }) image: ElementRef\r\n\r\n\tpublic fechaImagen;\r\n\tpublic lista: ListaImagenes[];\r\n\tpublic directorios: Directorios[];\r\n\tpublic fotosCarpeta: ListaImagenes[];\r\n\r\n\tpublic imagen: boolean = false;\r\n\tpublic bloqueo: boolean = false;\r\n\tpublic atras: boolean = false;\r\n\tpublic showDirectorios: boolean = true;\r\n\tpublic loading: boolean = false;\r\n\tpublic showFilterRow: boolean;\r\n\r\n\tpublic img: any;\r\n\r\n\tpublic listado;\r\n\tpublic fechaInicial;\r\n\tpublic fechaFinal;\r\n\tpublic fechaInicio;\r\n\tpublic idVehiculo;\r\n\tpublic fechaFin;\r\n\tpublic imei;\r\n\tpublic carpeta;\r\n\tpublic galeria;\r\n\tpublic i: number = 0;\r\n\r\n\tconstructor(private toastService: ToastrService,\r\n\t\tprivate datepipe: DatePipe,\r\n\t\t@Inject(MAT_DIALOG_DATA) public data: any,\r\n\t\tpublic dialogRef: MatDialogRef,\r\n\t\tprivate galeriaVehiculoService: GaleriaVehiculoService) { }\r\n\r\n\tngOnInit() {\r\n\t\tthis.imei = this.data;\r\n\t\t//this.obtenerListaImagenes(this.imei);\r\n\t\tthis.obtenerDirectoriosImei(this.imei);\r\n\t\tthis.reporteFotos(new Date(), new Date())\r\n\t}\r\n\r\n\t\r\n\r\n\t\t/**Obtener directorios por imei */\r\n\t\tobtenerDirectoriosImei(imei) {\r\n\t\t\tthis.galeriaVehiculoService.obtenerDirectoriosNuevo(imei).subscribe(result => {\r\n\t\t\t\tthis.directorios = result;\r\n\t\t\t})\r\n\t\t}\r\n\r\n \r\n\r\n\r\n\t/**Obtener imagen especifica */\r\n\tobtenerImagen(imei, foto, fecha?) {\r\n\t\tthis.loading = true;\r\n\t\tthis.galeriaVehiculoService.obtenerImagenEspecifica(imei, foto).pipe((finalize(() => this.loading = false))).subscribe(result => {\r\n\t\t\tthis.image.nativeElement.src = window.URL.createObjectURL(result)\r\n\t\t\tthis.fechaImagen = this.datepipe.transform(fecha, \"yyyy-MM-dd H:mm a\");\r\n\r\n\t\t})\r\n\t}\r\n\r\n\r\n\t/**Obtener Archivos de la carpeta */\r\n\tobtenerCarpetas(nombre) {\r\n\t\tthis.carpeta = nombre;\r\n\t\tthis.galeriaVehiculoService.obtenerArchivosDirectorio(this.imei, nombre).subscribe(result => {\r\n\t\t\tthis.showDirectorios = false;\r\n\t\t\tthis.fotosCarpeta = result\r\n\t\t})\r\n\t}\r\n\r\n\r\n obtenerArchivos(carpeta){\r\n this.carpeta = carpeta;\r\n\tconsole.log(\"HOLA\", this.carpeta)\r\n\t\tthis.galeriaVehiculoService.obtenerFotosDirectorioNuevo(this.imei, this.carpeta).subscribe(result => {\r\n\t\t\tthis.showDirectorios = false;\r\n\t\t\tthis.fotosCarpeta = result;\r\n\t\t})\r\n }\r\n\r\n\t/**Obtener Foto de una carpeta seleccionada */\r\n\tpublic fecha;\r\n\tobtenerFotoCarpeta(nombre,fecha) {\r\n this.fechaImagen = nombre;\r\n\tthis.fecha=fecha;\r\n\t}\r\n\r\n\t/**Obtener Reporte Velocidad */\r\n\treporteFotos(fechaInicio: Date, fechaFin: Date) {\r\n\t\tthis.loading = true;\r\n\t\tthis.fechaInicial = this.datepipe.transform(fechaInicio, \"yyyy-MM-dd HH:mm:ss\");\r\n\t\tthis.fechaFinal = this.datepipe.transform(fechaFin, \"yyyy-MM-dd HH:mm:ss\");\r\n\t\tthis.galeriaVehiculoService.obtenerFoldersPorfecha(this.data, this.fechaInicial, this.fechaFinal).pipe(\r\n\t\t\tfinalize(\r\n\t\t\t\t() => { this.loading = false}\r\n\t\t\t)\r\n\t\t).subscribe(res => {\r\n\t\t\tthis.galeria = res;\r\n\t\t\tthis.fechaImagen = this.galeria[0].foto;\r\n\t\t\t//this.obtenerImagen(this.galeria[0].imei, this.galeria[0].foto, this.galeria[0].fecha)\r\n\t\t})\r\n\t}\r\n\r\n\r\n\tregresarCarpetas() {\r\n\t\tthis.showDirectorios = true;\r\n\t}\r\n\r\n\tprev() {\r\n\t\tif (this.i <= 0)\r\n\t\t\tthis.i = this.galeria.length;\r\n\t\tthis.i--;\r\n\t\t//return this.obtenerImagen(this.galeria[this.i].imei, this.galeria[this.i].foto, this.galeria[this.i].fecha);\r\n\t\treturn this.fechaImagen = this.galeria[this.i].foto;\r\n\t}\r\n\r\n\tnext() {\r\n\t\tif (this.i >= this.galeria.length - 1)\r\n\t\t\tthis.i = -1;\r\n\t\tthis.i++;\r\n\t\treturn this.fechaImagen = this.galeria[this.i].foto;\r\n\r\n\t\t//return this.obtenerImagen(this.galeria[this.i].imei, this.galeria[this.i].foto, this.galeria[this.i].fecha);\r\n\t}\r\n\r\n\r\n\tpublic minimizarPopup() {\r\n\t\tthis.dialogRef.addPanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic maximizarPopup() {\r\n\t\tthis.dialogRef.removePanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic cerrarPopup() {\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n\r\n\r\n\r\n}\r\n","
\r\n\t\r\n\t\r\n\t\r\n\t\r\n\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t\t

Galería

\r\n\t\t
\r\n\t
\r\n
\r\n
\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t \r\n\t\t\t
\r\n\t\t
\r\n\t\t\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t{{i}} / {{galeria.length}}\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t
{{fechaImagen}}
\r\n\t\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n","import { finalize } from 'rxjs/operators';\r\nimport { GaleriaVehiculoService } from './../../../../services/galeria-vehiculo.service';\r\nimport { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material';\r\nimport { DatePipe } from '@angular/common';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { Directorios } from './../../../../../../_entities/galeria/Directorios';\r\nimport { ListaImagenes } from './../../../../../../_entities/galeria/ListaImagenes';\r\nimport { Component, OnInit, ElementRef, ViewChild, Inject } from '@angular/core';\r\n\r\n@Component({\r\n\tselector: 'kt-galeria-vehiculo',\r\n\ttemplateUrl: './galeria-vehiculo.component.html',\r\n\tstyleUrls: ['./galeria-vehiculo.component.scss']\r\n})\r\nexport class GaleriaVehiculoComponent implements OnInit {\r\n\t@ViewChild('myImage', { static: true }) image: ElementRef\r\n\r\n\tpublic fechaImagen;\r\n\tpublic lista: ListaImagenes[];\r\n\tpublic directorios: Directorios[];\r\n\tpublic fotosCarpeta: ListaImagenes[];\r\n\r\n\tpublic imagen: boolean = false;\r\n\tpublic bloqueo: boolean = false;\r\n\tpublic atras: boolean = false;\r\n\tpublic showDirectorios: boolean = true;\r\n\tpublic loading: boolean = false;\r\n\tpublic showFilterRow: boolean;\r\n\r\n\tpublic img: any;\r\n\r\n\tpublic listado;\r\n\tpublic fechaInicial;\r\n\tpublic fechaFinal;\r\n\tpublic fechaInicio;\r\n\tpublic idVehiculo;\r\n\tpublic fechaFin;\r\n\tpublic imei;\r\n\tpublic carpeta;\r\n\tpublic galeria;\r\n\tpublic i: number = 0;\r\n\r\n\tconstructor(private toastService: ToastrService,\r\n\t\tprivate datepipe: DatePipe,\r\n\t\t@Inject(MAT_DIALOG_DATA) public data: any,\r\n\t\tpublic dialogRef: MatDialogRef,\r\n\t\tprivate galeriaVehiculoService: GaleriaVehiculoService) { }\r\n\r\n\tngOnInit() {\r\n\t\tthis.imei = this.data;\r\n\t\tthis.obtenerListaImagenes(this.imei);\r\n\t\tthis.obtenerDirectoriosImei(this.imei);\r\n\t}\r\n\r\n\t/**Lista de imagenes */\r\n\tobtenerListaImagenes(imei) {\r\n\t\tthis.galeriaVehiculoService.obtenerListaImagenes(imei).subscribe(result => {\r\n\t\t\tthis.lista = result;\r\n\t\t\tthis.obtenerImagen(this.lista[0].imei, this.lista[0].foto, this.lista[0].fecha)\r\n\t\t})\r\n\t}\r\n\r\n\t\t/**Obtener directorios por imei */\r\n\t\tobtenerDirectoriosImei(imei) {\r\n\t\t\tthis.galeriaVehiculoService.obtenerDirectorios(imei).subscribe(result => {\r\n\t\t\t\tthis.directorios = result;\r\n\t\t\t})\r\n\t\t}\r\n\r\n\r\n\t/**Obtener imagen especifica */\r\n\tobtenerImagen(imei, foto, fecha?) {\r\n\t\tthis.loading = true;\r\n\t\tthis.galeriaVehiculoService.obtenerImagenEspecifica(imei, foto).pipe((finalize(() => this.loading = false))).subscribe(result => {\r\n\t\t\tthis.image.nativeElement.src = window.URL.createObjectURL(result)\r\n\t\t\tthis.fechaImagen = this.datepipe.transform(fecha, \"yyyy-MM-dd H:mm a\");\r\n\r\n\t\t})\r\n\t}\r\n\r\n\t/**Obtener Reporte Velocidad */\r\n\treporteFotos(fechaInicio: Date, fechaFin: Date) {\r\n\t\tthis.loading = true;\r\n\t\tthis.fechaInicial = this.datepipe.transform(fechaInicio, \"yyyy-MM-dd HH:mm:ss\");\r\n\t\tthis.fechaFinal = this.datepipe.transform(fechaFin, \"yyyy-MM-dd HH:mm:ss\");\r\n\t\tthis.galeriaVehiculoService.obtenerGaleria(this.data, this.fechaInicial, this.fechaFinal).pipe(\r\n\t\t\tfinalize(\r\n\t\t\t\t() => { this.loading = false}\r\n\t\t\t)\r\n\t\t).subscribe(res => {\r\n\t\t\tthis.galeria = res;\r\n\t\t\tthis.obtenerImagen(this.galeria[0].imei, this.galeria[0].foto, this.galeria[0].fecha)\r\n\t\t})\r\n\t}\r\n\r\n\t/**Obtener Archivos de la carpeta */\r\n\tobtenerArchivos(nombre) {\r\n\t\tthis.carpeta = nombre;\r\n\t\tthis.galeriaVehiculoService.obtenerArchivosDirectorio(this.imei, nombre).subscribe(result => {\r\n\t\t\tthis.showDirectorios = false;\r\n\t\t\tthis.fotosCarpeta = result\r\n\t\t})\r\n\t}\r\n\r\n\r\n\t/**Obtener Foto de una carpeta seleccionada */\r\n\tobtenerFotoCarpeta(nombre) {\r\n\t\tthis.loading = true;\r\n\t\tthis.galeriaVehiculoService.obtenerFotoCarpeta(this.imei, this.carpeta, nombre).pipe((finalize(() => this.loading = false))).subscribe(result => {\r\n\t\t\tthis.image.nativeElement.src = window.URL.createObjectURL(result)\r\n\t\t}, err => {\r\n\t\t\t//this.toastService.error(\"No se encontro la foto seleccionada\")\r\n\t\t})\r\n\t}\r\n\tregresarCarpetas() {\r\n\t\tthis.showDirectorios = true;\r\n\t}\r\n\r\n\tprev() {\r\n\t\tif (this.i <= 0)\r\n\t\t\tthis.i = this.galeria.length;\r\n\t\tthis.i--;\r\n\t\treturn this.obtenerImagen(this.galeria[this.i].imei, this.galeria[this.i].foto, this.galeria[this.i].fecha);\r\n\t}\r\n\r\n\tnext() {\r\n\t\tif (this.i >= this.galeria.length - 1)\r\n\t\t\tthis.i = -1;\r\n\t\tthis.i++;\r\n\t\treturn this.obtenerImagen(this.galeria[this.i].imei, this.galeria[this.i].foto, this.galeria[this.i].fecha);\r\n\t}\r\n\r\n\r\n\tpublic minimizarPopup() {\r\n\t\tthis.dialogRef.addPanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic maximizarPopup() {\r\n\t\tthis.dialogRef.removePanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic cerrarPopup() {\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n\r\n\r\n}\r\n","
\r\n\t\r\n\t\r\n\t\r\n\t\r\n\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t\t

Videos

\r\n\t\t
\r\n\t
\r\n
\r\n\r\n\t\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\tEspecifique un rango de tiempo y el tipo de alerta para obtener la lista de videos del vehiculo\r\n\t\t\t\t\tseleccionado.\r\n\t\t\t
\r\n\t\t
\r\n\t\t\r\n\t\t\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t{{alarma.nombre}}\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t \r\n\t\t\t\t\t\t\t\t \r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t{{alarma.nombre}}\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t \r\n\t\t\t\t\t\t\t\t \r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t\t\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t\t{{cellData.value | date: 'yyyy-MM-dd h:mm a'}}\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\tCH{{c.value}}\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\tAlmacenamiento Interno\r\n\t\t\t\t\tPuerta Abierta\r\n\t\t\t\t\tAuto Descargas\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t
\r\n\t
\r\n
\r\n\r\n\r\n\r\n","import { Component, Inject, OnInit } from '@angular/core';\r\nimport { MatDialog, MatDialogConfig, MatDialogRef, MAT_DIALOG_DATA } from '@angular/material';\r\nimport { DomSanitizer } from '@angular/platform-browser';\r\nimport { GaleriaVideoService } from './../../../../../monitoreo/services/galeria-video.service';\r\nimport { AuthService } from './../../../../../auth/auth.service';\r\nimport { DatePipe } from '@angular/common';\r\nimport { finalize } from 'rxjs/operators';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { PlayVideoComponent } from './play-video/play-video.component';\r\nimport { StreamVideoComponent } from './stream-video/stream-video.component';\r\nimport { InformacionVideo } from './../../../../../../_entities/galeria-videos/informacion-videos';\r\nimport { MapaService } from './../../../../../monitoreo/services/mapa.service';\r\n\r\n\r\n@Component({\r\n\tselector: 'kt-galeria-videos',\r\n\ttemplateUrl: './galeria-videos.component.html',\r\n\tstyleUrls: ['./galeria-videos.component.scss']\r\n})\r\n\r\nexport class GaleriaVideosComponent implements OnInit {\r\n\tprivate token: string;\r\n\tpublic loadingVisible: boolean = false;\r\n\tpublic arrayVideos = [];\r\n\tpublic listaAlarmas = [\r\n\t\t{ id: 1, fileType: 1, location: 1 , nombre: 'Almacenamiento Dispositivo' },\r\n\t\t{ id: 2, fileType: 2, location: 4, nombre: 'Puerta Abierta' },\r\n\t\t{ id: 3, fileType: 1, location: 3, nombre: 'Auto Descargas' }\r\n\t]\r\n\r\n\tpublic alarma;\r\n\tpublic startTime;\r\n\tpublic endTime;\r\n\tpublic videoArchivos;\r\n\tpublic deviceID;\r\n\tpublic showFilterRow: boolean;\r\n\tpublic showHeaderFilter: boolean;\r\n\tpublic showTable: boolean;\r\n\tpublic esReproduccion: boolean = false;\r\n\tpublic timeline = [];\r\n\r\n\tcustomizeText (e) {\r\n return 'Total de videos: ' + e.value;\r\n };\r\n\r\n\tconstructor(public dialogRef: MatDialogRef,\r\n\t\tprivate galeriaVideoService: GaleriaVideoService,\r\n\t\tprivate mapaService: MapaService,\r\n\t\tprivate dialog: MatDialog,\r\n\t\tprivate toastservice: ToastrService,\r\n\t\tprivate datepipe: DatePipe,\r\n\t\tprivate authService: AuthService,\r\n\t\t@Inject(MAT_DIALOG_DATA) public data: any,\r\n\t\tprivate sanitizer: DomSanitizer\r\n\t) {\r\n\t\tthis.showFilterRow = true;\r\n\t\tthis.showHeaderFilter = true;\r\n\t}\r\n\r\n\ttransform(url) {\r\n\t\treturn this.sanitizer.bypassSecurityTrustResourceUrl(url);\r\n\t}\r\n\r\n\tngOnInit() {\r\n\t\tthis.token = this.authService.getUser().tokenHW;\r\n\t\tif(this.data !== null) {\r\n\t\t\tthis.deviceID = this.data;\r\n\t\t} else {\r\n\t\t\tthis.esReproduccion = true;\r\n\t\t\t//const DATA = JSON.parse(sessionStorage.getItem('data'));\r\n\t\t\tthis.deviceID = this.data;\r\n\t\t\tthis.startTime = this.mapaService.historicoFechas[0];\r\n\t\t\tthis.endTime = this.mapaService.historicoFechas[1];\r\n\t\t\tthis.alarma = 1;\r\n\t\t\tthis.obtenerArchivos()\r\n\t\t}\r\n\t}\r\n\r\n\tobtenerArchivos() {\r\n\t\tthis.videoArchivos = [];\r\n\t\tthis.loadingVisible = true;\r\n\t\tconst startTime = this.datepipe.transform(this.startTime, 'yyyy-MM-dd HH:MM:SS');\r\n\t\tconst endTime = this.datepipe.transform(this.endTime, 'yyyy-MM-dd HH:MM:SS');\r\n\t\tconst channelList = '1;2';\r\n\r\n\t\tconst ALARM = this.listaAlarmas.find(alarma => alarma.id === this.alarma);\r\n\t\tconst location = ALARM.location;\r\n\t\tconst fileType = ALARM.fileType;\r\n\r\n\t\tthis.galeriaVideoService.obtenerArchivosVideo(startTime, endTime, channelList, fileType, location, this.deviceID).pipe(\r\n\t\t\tfinalize(\r\n\t\t\t\t() => this.loadingVisible = false\r\n\t\t\t)\r\n\t\t).subscribe(\r\n\t\t\t(response) => {\r\n\t\t\t\tlet archivos: InformacionVideo = JSON.parse(response);\r\n\t\t\t\tif (archivos.data != null) {\r\n\t\t\t\t\tthis.videoArchivos = archivos.data.files;\r\n\r\n\t\t\t\t\tif(ALARM.id == 3) {\r\n\t\t\t\t\t\tthis.videoArchivos.map(archivo => {\r\n\t\t\t\t\t\t\tarchivo.type = 3;\r\n\t\t\t\t\t\t})\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tthis.videoArchivos.forEach(video => {\r\n\t\t\t\t\t\tlet timelineForm = {\r\n\t\t\t\t\t\t\tdeviceID: video.deviceID,\r\n\t\t\t\t\t\t\tstart: new Date (video.start),\r\n\t\t\t\t\t\t\tchannel: video.channel,\r\n\t\t\t\t\t\t\tstop: new Date(video.stop)\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\tthis.timeline.push(timelineForm);\r\n\r\n\t\t\t\t\t});\r\n\t\t\t\t\tthis.showTable = true;\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis.timeline = [];\r\n\t\t\t\t\tthis.videoArchivos = [];\r\n\t\t\t\t\tthis.showTable = false;\r\n\t\t\t\t\tthis.toastservice.warning('No existen archivos disponibles')\r\n\t\t\t\t}\r\n\t\t\t}, (error) => {\r\n\t\t\t\tthis.toastservice.error('Error al obtener lista de archivos')\r\n\t\t\t}\r\n\t\t);\r\n\t}\r\n\r\n\tcustomizeTooltip(arg: any) {\r\n\t\t//let inicio = this.datepipe.transform(arg.rangeValue1Text, 'dd-MM-yyyy HH:mm a');\r\n return {\r\n text: arg.rangeValue1Text\r\n };\r\n }\r\n\r\n\tpointClick(event){\r\n\t\tconst data = event.target.data;\r\n\r\n\t\tdata.start = this.datepipe.transform(data.start, 'yyyy-MM-dd HH:MM:SS');\r\n\t\tdata.stop = this.datepipe.transform(data.stop, 'yyyy-MM-dd HH:MM:SS');\r\n\r\n\t\tthis.abrirVideo(data);\r\n\t}\r\n\r\n\tabrirVideo(videoInfo) {\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.autoFocus = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\t\tdialogConfig.width = \"40%\";\r\n\t\tdialogConfig.closeOnNavigation = true;\r\n\t\tdialogConfig.hasBackdrop = false;\r\n\t\tdialogConfig.panelClass = 'custom-modalbox';\r\n\t\tdialogConfig.data = videoInfo\r\n\t\tthis.dialog.open(PlayVideoComponent, dialogConfig);\r\n\t}\r\n\r\n\tabrirStream() {\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.autoFocus = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\t\tdialogConfig.width = \"40%\";\r\n\t\tdialogConfig.closeOnNavigation = true;\r\n\t\tdialogConfig.hasBackdrop = false;\r\n\t\tdialogConfig.panelClass = 'custom-modalbox';\r\n\t\tdialogConfig.data = this.deviceID\r\n\t\tthis.dialog.open(StreamVideoComponent, dialogConfig);\r\n\r\n\t}\r\n\r\n\tpublic minimizarPopup() {\r\n\t\tthis.dialogRef.addPanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic maximizarPopup() {\r\n\t\tthis.dialogRef.removePanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic cerrarPopup() {\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n\r\n}\r\n","
\r\n\t\r\n\t\r\n\t\r\n\t\r\n\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t\t

Videos

\r\n\t\t
\r\n\t
\r\n
\r\n\r\n\t\r\n\r\n\r\n\r\n","import { Component, Inject, OnInit } from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material';\r\nimport { environment } from './../../../../../../../../environments/environment';\r\nimport { AuthService } from './../../../../../../auth/auth.service';\r\n\r\n\r\n@Component({\r\n\tselector: 'kt-play-video',\r\n\ttemplateUrl: './play-video.component.html',\r\n\tstyleUrls: ['./play-video.component.scss']\r\n})\r\nexport class PlayVideoComponent implements OnInit {\r\n\tprivate token: string;\r\n\tpublic link;\r\n\tpublic loadingVisible: boolean\r\n\r\n\tconstructor(public dialogRef: MatDialogRef,\r\n\t\tprivate authService: AuthService,\r\n\t\t@Inject(MAT_DIALOG_DATA) private data: any) { }\r\n\r\n\tngOnInit() {\r\n\t\tthis.loadingVisible = true;\r\n\t\tthis.token = this.authService.getUser().tokenHW;\r\n\t\tthis.obtenerVideo(this.data);\r\n\r\n\t\tsetTimeout(() => {\r\n\t\t\tthis.loadingVisible = false;\r\n\r\n\t\t}, 4000);\r\n\t}\r\n\r\n\tobtenerVideo(file) {\r\n\t\tlet startTime = file.start.replace('-', '').replace(' ', '').replace(':', '');\r\n\t\tstartTime = startTime.replace('-', '').replace(' ', '').replace(':', '');\r\n\r\n\t\tlet endTime = file.stop.replace('-', '').replace(' ', '').replace(':', '');\r\n\t\tendTime = endTime.replace('-', '').replace(' ', '').replace(':', '');\r\n\r\n\t\tthis.link = `${environment.HOWEN_API}/vss/apiPage/ReplayVideo.html?token=${this.token}&deviceId=${file.deviceID}&chs=${file.channel}&st=${startTime}&et=${endTime}&wnum=1&panel=0`;\r\n\t}\r\n\r\n\r\n\tpublic minimizarPopup() {\r\n\t\tthis.dialogRef.addPanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic maximizarPopup() {\r\n\t\tthis.dialogRef.removePanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic cerrarPopup() {\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n\r\n}\r\n","/*import { Pipe, PipeTransform } from '@angular/core';\r\nimport { DomSanitizer } from '@angular/platform-browser';\r\n*/\r\nimport { Pipe, PipeTransform } from '@angular/core';\r\nimport { DomSanitizer } from '@angular/platform-browser';\r\nimport DOMPurify from 'dompurify';\r\n\r\n@Pipe({\r\n\tname: 'safeUrl'\r\n\t//name: 'safeHtml'\r\n})\r\nexport class SafeUrlPipe implements PipeTransform {\r\n\r\n\tconstructor(private domSanitizer: DomSanitizer) { }\r\n\r\n\ttransform(value: string, url: string = ''): any {\r\n\t\treturn this.domSanitizer.bypassSecurityTrustResourceUrl(url + value);\r\n\t\t//const sanitizedContent = DOMPurify.sanitize(value);\r\n\t\t//return this.domSanitizer.bypassSecurityTrustHtml(value);\r\n\r\n\r\n\t}\r\n\r\n}\r\n","
\r\n\t\r\n\t\r\n\t\r\n\t\r\n\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t\t

Stream

\r\n\t\t
\r\n\t
\r\n
\r\n\r\n\r\n\r\n\t\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t\t{{canal.titulo}}\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n\r\n\r\n\r\n\r\n","import { Component, Inject, OnDestroy, OnInit } from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material';\r\nimport { AuthService } from './../../../../../../../views/auth/auth.service';\r\nimport { environment } from './../../../../../../../../environments/environment';\r\nimport { GaleriaVideoService } from './../../../../../services/galeria-video.service';\r\n\r\n@Component({\r\n\tselector: 'kt-stream-video',\r\n\ttemplateUrl: './stream-video.component.html',\r\n\tstyleUrls: ['./stream-video.component.scss']\r\n})\r\nexport class StreamVideoComponent implements OnInit, OnDestroy {\r\n\tprivate token: string;\r\n\tpublic link1;\r\n\tpublic link2;\r\n\tlongtabs = [\r\n\t\t{ titulo: \"Canal 1\" },\r\n\t\t{ titulo: \"Canal 2\" },\r\n\t];\r\n\r\n\r\n\tpublic loadingVisible: boolean\r\n\tpublic verStream1: boolean = false;\r\n\tpublic verStream2: boolean = false;\r\n\r\n\tconstructor(public dialogRef: MatDialogRef,\r\n\t\tprivate authService: AuthService,\r\n\t\tprivate galeriVideoService: GaleriaVideoService,\r\n\t\t@Inject(MAT_DIALOG_DATA) private data: any) { }\r\n\r\n\tngOnInit() {\r\n\t\tthis.token = this.authService.getUser().tokenHW;\r\n\t\tthis.obtenerVideo({itemIndex: 0});\r\n\t}\r\n\r\n\tobtenerVideo(tab) {\r\n\t\tthis.loadingVisible = true;\r\n\t\t//const chs = 1;\r\n\t\tconst stream = 0;\r\n\t\tconst wnum = 1;\r\n\t\tconst panel = 0;\r\n\t\tswitch (tab.itemIndex) {\r\n\t\t\tcase 0:\r\n\t\t\t\tthis.verStream1 = true;\r\n\t\t\t\tthis.verStream2 = false;\r\n\t\t\t\tthis.link1 = `${environment.HOWEN_API}/vss/apiPage/RealVideo.html?token=${this.token}&deviceId=${this.data}&chs=1&stream=${stream}&wnum=${wnum}&panel=${panel}`\r\n\t\t\t\tbreak;\r\n\t\t\tcase 1:\r\n\t\t\t\tthis.verStream1 = false;\r\n\t\t\t\tthis.verStream2 = true;\r\n\t\t\t\tthis.link2 = `${environment.HOWEN_API}/vss/apiPage/RealVideo.html?token=${this.token}&deviceId=${this.data}&chs=2&stream=${stream}&wnum=${wnum}&panel=${panel}`\r\n\r\n\t\t}\r\n\r\n\t\tsetTimeout(() => {\r\n\t\t\tthis.loadingVisible = false;\r\n\r\n\t\t}, 4000);\r\n\r\n\t}\r\n\r\n\tngOnDestroy() {\r\n\t\tthis.verStream1 = false;\r\n\t\tthis.verStream2 = false;\r\n\t}\r\n\r\n\r\n\r\n\tpublic minimizarPopup() {\r\n\t\tthis.dialogRef.addPanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic maximizarPopup() {\r\n\t\tthis.dialogRef.removePanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic cerrarPopup() {\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n\r\n}\r\n","
\r\n\t\r\n\t\r\n\t\r\n\t\r\n\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t\t

Consumo de Combustible

\r\n\t\t
\r\n\t
\r\n
\r\n\r\n\t\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t

Ecónomico: {{this.vehiculo}}

\r\n\t\t\t\tA continuación se presenta la evolución del consumo de combustible.\r\n\t\t\t\t \r\n\t\t\t
\r\n\t\t
\r\n\t\t\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\tCombustible: {{ info.point.data.combustible }} L    Velocidad: {{ info.point.data.velocidad }} km/h\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\tFecha: {{ info.point.data.fecha }}\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n\r\n\r\n","import { DatePipe } from '@angular/common';\r\nimport { Component, Inject, OnInit } from '@angular/core';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { ReporteHistoricoComponent } from '../../../../../reportes/reporte-historico/reporte-historico.component';\r\nimport { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material';\r\nimport { ReporteCombustibleHistorico } from '../../../../../../_entities/vehiculos/ReporteCombustibleHistorico';\r\nimport html2canvas from 'html2canvas';\r\nimport jsPDF from 'jspdf';\r\nimport { MapaService } from '../../../../services/mapa.service';\r\n\r\n@Component({\r\n selector: 'kt-grafica-historico-combustible',\r\n templateUrl: './grafica-historico-combustible.component.html',\r\n styleUrls: ['./grafica-historico-combustible.component.scss']\r\n})\r\nexport class GraficaHistoricoCombustibleComponent implements OnInit {\r\n\tdatos:ReporteCombustibleHistorico[];\r\n\tdatosN: ReporteCombustibleHistorico[];\r\n\tcolorScheme = {\r\n\t\tdomain: ['#166BA2']\r\n\t};\t\r\n\tpublic loadingVisible: boolean = false;\r\n\tpublic legend: boolean = true;\r\n\tpublic showLabels: boolean = true;\r\n\tpublic animations: boolean = true;\r\n\tpublic xAxis: boolean = true;\r\n\tpublic yAxis: boolean = true;\r\n\tpublic showYAxisLabel: boolean = true;\r\n\tpublic showXAxisLabel: boolean = true;\r\n\tpublic timeline: boolean = true;\r\n\tpublic showGrafica = false;\r\n\tpublic vehiculo;\r\n\r\n\tconstructor(\r\n\t\tprivate datepipe: DatePipe,\r\n\t\tprivate toastService: ToastrService,\r\n\t\tpublic dialogRef: MatDialogRef,\r\n\t\t@Inject(MAT_DIALOG_DATA) public data:any,\r\n\t\tprivate mapaService:MapaService\r\n\t) { }\r\n\r\n\tngOnInit(): void {\r\n\t\tconsole.log(this.data,\"DATA\")\r\n\t\tthis.datos = this.data.datos;\r\n\t\tthis.vehiculo = this.data.info.descripcion\r\n\t\t// this.datos.sort(function (a, b) {\r\n\t\t// \tif (b.fecha < a.fecha)\r\n\t\t// \t\treturn -1;\r\n\t\t// \telse if (a.fecha > b.fecha)\r\n\t\t// \t\treturn +1;\r\n\t\t// \telse \r\n\t\t// \t\treturn 0;\r\n\t\t// });\r\n\t\t\r\n\t}\r\n\r\n\tcustomizeText(arg: any) {\r\n\t\treturn `${arg.valueText} L`;\r\n\t}\r\n\r\n \tpublic minimizarPopup() {\r\n\t\tthis.dialogRef.addPanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic maximizarPopup() {\r\n\t\tthis.dialogRef.removePanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic cerrarPopup() {\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n\r\n\t\t/**Obtener Reporte Velocidad */\r\n\r\n\t\tvalidarInfo(valor) {\r\n\t\t\tlet value = 'Sin Datos';\r\n\t\r\n\t\t\tif (valor) {\r\n\t\t\t\tvalue = valor\r\n\t\t\t}\r\n\t\r\n\t\t\treturn value;\r\n\t\t}\r\n\r\n\t\timprimirPdf() {\r\n\t\t\tthis.loadingVisible = true;\r\n\t\t\tvar grafica = document.getElementById('grafica')\r\n\t\t\tconst PLACA = this.validarInfo(this.data.info.placas);\r\n\t\t\tconst ECONOMICO = this.validarInfo(this.data.info.economico);\r\n\t\t\tconst SERIE = this.validarInfo(this.data.info.numeroSerie)\r\n\t\t\tconst MARCA = this.validarInfo(this.data.info.marca);\r\n\t\t\tconst MODELO = this.validarInfo(this.data.infomodelo);\r\n\t\t\tconst ANIO = this.validarInfo(this.data.infoanio);\r\n\t\t\tconst COLOR = this.validarInfo(this.data.infocolor);\r\n\t\t\tconst DESCRIPCION = this.validarInfo(this.data.infodescripcion);\r\n\t\t\tlet fechaHora = this.data.info.fechaHoraUltimaPosicion;\r\n\t\r\n\t\t\tconst FECHA_INICIAL = this.datepipe.transform(this.data.fechaInicio, 'dd/MM/yyyy h:MM a');\r\n\t\t const FECHA_FINAL = this.datepipe.transform(this.data.fechaFinal, 'dd/MM/yyyy h:MM a');\r\n\t\r\n\t\t\tfechaHora = this.datepipe.transform(fechaHora, 'yyyy-MM-dd h:mma');\r\n\t\t\tlet direccion;\r\n\t\r\n\t\t\tthis.mapaService.getDireccion([this.data.info.lat, this.data.info.lng]).then(\r\n\t\t\t\t(data: any) => {\r\n\t\t\t\t\tdireccion = data.display_name || \"Dirección Desconocida\";\r\n\t\t\t\t},\r\n\t\t\t\t() => {\r\n\t\t\t\t\tdireccion = \"Dirección Desconocida\";\r\n\t\t\t\t}\r\n\t\t\t);\r\n\t\r\n\t\t\tsetTimeout(async () => {\r\n\t\t\t\tawait html2canvas(grafica).then(\r\n\t\t\t\t\t(canvas) => {\r\n\t\t\t\t\t\tconst graficaImagen = canvas.toDataURL('image/png');\r\n\t\r\n\t\t\t\t\t\tvar pdf = new jsPDF('p', 'pt', 'a4');\r\n\t\r\n\t\t\t\t\t\tconst logoGTM = './assets/media/logos/logo-gtm.png'\r\n\t\t\t\t\t\tconst logoGTMX = 20;\r\n\t\t\t\t\t\tconst logoGTMY = 15;\r\n\t\t\t\t\t\tconst logoGTMWidth = 180;\r\n\t\t\t\t\t\tconst logoGTMHeight = 80;\r\n\t\t\t\t\t\tpdf.addImage(logoGTM, 'PNG', logoGTMX, logoGTMY, logoGTMWidth, logoGTMHeight, 'MEDIUM');\r\n\t\r\n\t\t\t\t\t\tconst logoGTMWater = './assets/media/logos/marca-de-agua.png'\r\n\t\t\t\t\t\tconst logoGTMWaterX = 15;\r\n\t\t\t\t\t\tconst logoGTMWaterY = 130;\r\n\t\t\t\t\t\tconst logoGTMWaterProp = (pdf as any).getImageProperties(logoGTMWater);\r\n\t\t\t\t\t\tconst logoGTMWaterWidth = pdf.internal.pageSize.getWidth() - 2 * logoGTMWaterX;\r\n\t\t\t\t\t\tconst logoGTMWaterHeight = (logoGTMWaterProp.height * logoGTMWaterWidth) / logoGTMWaterProp.width;\r\n\t\t\t\t\t\tpdf.addImage(logoGTMWater, 'PNG', logoGTMWaterX, logoGTMWaterY, logoGTMWaterWidth, logoGTMWaterHeight, 'SLOW');\r\n\t\r\n\t\t\t\t\t\tpdf.setFontSize(18);\r\n\t\t\t\t\t\tpdf.setFont('', 'bold')\r\n\t\t\t\t\t\tpdf.text('Historial de Combustible', 215, 120);\r\n\t\t\t\t\t\tpdf.text('Inicio: ' + FECHA_INICIAL + ' - Fin: ' + FECHA_FINAL, 90, 145)\r\n\t\r\n\t\t\t\t\t\tconst PROPERTIES = (pdf as any).getImageProperties(graficaImagen);\r\n\t\t\t\t\t\tconst WIDTH = pdf.internal.pageSize.getWidth() - 2 * 15;\r\n\t\t\t\t\t\tconst HEIGHT = (PROPERTIES.height * WIDTH) / PROPERTIES.width;\r\n\t\t\t\t\t\tpdf.addImage(graficaImagen, 'PNG', 15, 170, WIDTH, 250);\r\n\t\r\n\t\t\t\t\t\tpdf.setFontSize(14);\r\n\t\t\t\t\t\tpdf.setFont('', 'bold')\r\n\t\t\t\t\t\tpdf.text('Datos del Dispositivo', 90, 470,);\r\n\t\r\n\t\t\t\t\t\tpdf.setFont('', 'normal')\r\n\t\t\t\t\t\tpdf.text('Vehículo:', 90, 485);\r\n\t\t\t\t\t\tpdf.text(MARCA + ', ' + MODELO, 340, 485);\r\n\t\r\n\t\t\t\t\t\tpdf.text('Placa:', 90, 500);\r\n\t\t\t\t\t\tpdf.text(PLACA, 340, 500);\r\n\t\r\n\t\t\t\t\t\tpdf.text('Económico:', 90, 515);\r\n\t\t\t\t\t\tpdf.text(ECONOMICO, 340, 515);\r\n\t\r\n\t\t\t\t\t\tpdf.text('Número de Serie:', 90, 530);\r\n\t\t\t\t\t\tpdf.text(SERIE, 340, 530);\r\n\t\r\n\t\t\t\t\t\tpdf.text('Año:', 90, 545);\r\n\t\t\t\t\t\tpdf.text(ANIO + '', 340, 545);\r\n\t\r\n\t\t\t\t\t\tpdf.text('Color:', 90, 560);\r\n\t\t\t\t\t\tpdf.text(COLOR, 340, 560);\r\n\t\r\n\t\t\t\t\t\tpdf.text('Descripción:', 90, 575);\r\n\t\t\t\t\t\tpdf.text(DESCRIPCION, 340, 575);\r\n\t\r\n\t\t\t\t\t\tpdf.text('Dirección:', 90, 590);\r\n\t\t\t\t\t\tpdf.text(direccion + '', 340, 590);\r\n\t\r\n\t\t\t\t\t\tpdf.setFontSize(12);\r\n\t\t\t\t\t\tpdf.setFont('', 'bold')\r\n\t\t\t\t\t\tpdf.text('GTM Tecnología S.A. de C.V.', 220, 795);\r\n\t\t\t\t\t\tpdf.text('Carr. Temixco - Emiliano Zapata ext. 17 int. 3B Col. Palo Escrito, Emiliano Zapata, Mor, Mex. C.P. 62760', 22, 810);\r\n\t\t\t\t\t\tpdf.text('Tel. +52 7773200301, Whatsapp: +52 7771351886, soporte.star@growtec.com.mx', 65, 825);\r\n\t\r\n\t\t\t\t\t\tconst nombreArchivo = 'Historial_Combustible';\r\n\t\t\t\t\t\tpdf.save(nombreArchivo + '.pdf');\r\n\t\t\t\t\t\tthis.loadingVisible = false;\r\n\t\r\n\t\t\t\t\t}\r\n\t\t\t\t)\r\n\t\t\t}, 1)\r\n\t\t}\t\r\n}\r\n","
\r\n\t\r\n\t\r\n\t\r\n\t\r\n\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t\t

Historial de Velocidades

\r\n\t\t
\r\n\t
\r\n
\r\n\r\n\t\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t

{{vehiculoInfo.descripcion}}

\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\tEspecifique un rango de tiempo en el cual desea obtener información del vehiculo\r\n\t\t\t\t\tseleccionado.\r\n\t\t\t
\r\n\t\t
\r\n\t\t\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t \r\n\t\t\t\t\t\t\t\t \r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t\t\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n\r\n\r\n\r\n","import { reportePosiciones } from './../../../../../../_entities/coordenadas/ReportePosiciones';\r\nimport { HistorialVelocidadesVehiculoService } from './../../../../services/historial-velocidades-vehiculo.service';\r\nimport { MapaService } from './../../../../../../views/monitoreo/services/mapa.service';\r\nimport { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material';\r\nimport { DatePipe } from '@angular/common';\r\nimport { Component, Inject, OnInit, ViewChild } from '@angular/core';\r\nimport { jsPDF } from 'jspdf';\r\nimport html2canvas from 'html2canvas';\r\nimport { AuthService } from './../../../../../../views/auth/auth.service';\r\nimport { finalize } from 'rxjs/operators';\r\nimport { DxValidationGroupComponent } from 'devextreme-angular';\r\nimport { ToastrService } from 'ngx-toastr';\r\n\r\n@Component({\r\n\tselector: 'kt-historial-velocidades-vehiculo',\r\n\ttemplateUrl: './historial-velocidades-vehiculo.component.html',\r\n\tstyleUrls: ['./historial-velocidades-vehiculo.component.scss']\r\n})\r\nexport class HistorialVelocidadesVehiculoComponent implements OnInit {\r\n\t@ViewChild('targetGroup', { static: false }) validationGroup: DxValidationGroupComponent;\r\n\r\n\tpublic reporte: any = [];\r\n\tpublic dataGrafica = [];\r\n\tpublic datos = [[1, 1]];\r\n\tpublic type = \"line\"\r\n\tpublic energySources = [\r\n\t\t{ value: \"velocidad\", name: \"Velocidad\" }\r\n\t];\r\n\tpublic vehiculoInfo;\r\n\tpublic idCliente;\r\n\tpublic fechaInicial;\r\n\tpublic fechaFinal;\r\n\tpublic fechaInicio;\r\n\tpublic idVehiculo;\r\n\tpublic fechaFin;\r\n\tpublic showFilterRow: boolean;\r\n\tpublic loadingVisible: boolean = false;\r\n\tpublic showPDFButton: boolean = false;\r\n\tpublic HWUser;\r\n\r\n\tpublic showForm: boolean = true;\r\n\r\n\tcolorScheme = {\r\n\t\tdomain: ['#166BA2']\r\n\t};\r\n\r\n\r\n\tpublic legend: boolean = true;\r\n\tpublic showLabels: boolean = true;\r\n\tpublic animations: boolean = true;\r\n\tpublic xAxis: boolean = true;\r\n\tpublic yAxis: boolean = true;\r\n\tpublic showYAxisLabel: boolean = true;\r\n\tpublic showXAxisLabel: boolean = true;\r\n\tpublic timeline: boolean = true;\r\n\tpublic showGrafica = false;\r\n\r\n\tconstructor(@Inject(MAT_DIALOG_DATA) public data: any,\r\n\t\tprivate authService: AuthService,\r\n\t\tprivate datepipe: DatePipe,\r\n\t\tprivate toastService: ToastrService,\r\n\t\tpublic dialogRef: MatDialogRef,\r\n\t\tprivate historialVelocidadesVehiculoService: HistorialVelocidadesVehiculoService,\r\n\t\tprivate mapaService: MapaService) { }\r\n\r\n\tngOnInit() {\r\n\t\tthis.HWUser = this.authService.getHWUser();\r\n\t\tif (this.data !== null) {\r\n\t\t\tthis.idCliente = this.data.idCliente;\r\n\t\t\tthis.idVehiculo = this.data.id;\r\n\t\t\tthis.vehiculoInfo = this.data;\r\n\t\t} else {\r\n\t\t\tthis.showForm = false;\r\n\t\t\tconst lista = JSON.parse(sessionStorage.getItem('historico'));\r\n\t\t\tthis.data = this.mapaService.datosGenerales\r\n\t\t\t//this.idVehiculo = this.mapaService.datosGenerales.id\r\n\t\t\tconst len = lista.length - 1;\r\n\t\t\tthis.fechaInicial = this.mapaService.historicoFechas[0];\r\n\t\t\tthis.fechaFinal = this.mapaService.historicoFechas[1];\r\n\t\t\tthis.reportePosicionDefault(this.fechaInicial, this.fechaFinal);\r\n\t\t}\r\n\r\n\t}\r\n\r\n\t/**Obtener Reporte Velocidad */\r\n\tetiquetaModificada(arg) {\r\n\r\n\t\treturn {\r\n text: arg.valueText + ' km/h'\r\n };\r\n\t}\r\n\r\n\treportePosicion(fechaInicio: Date, fechaFin: Date) {\r\n\t\tif (this.validationGroup.instance.validate().isValid) {\r\n\t\t\tthis.loadingVisible = true;\r\n\t\t\tthis.fechaInicial = this.datepipe.transform(fechaInicio, \"yyyy-MM-dd HH:mm:ss\");\r\n\t\t\tthis.fechaFinal = this.datepipe.transform(fechaFin, \"yyyy-MM-dd HH:mm:ss\");\r\n\r\n\t\t\tif (this.idCliente != 39) {\r\n\t\t\t\tthis.reporte = [];\r\n\t\t\t\tthis.historialVelocidadesVehiculoService.graficarVelocidad(this.idVehiculo, this.fechaInicial, this.fechaFinal).pipe(\r\n\t\t\t\t\tfinalize(\r\n\t\t\t\t\t\t() => this.loadingVisible = false\r\n\t\t\t\t\t)\r\n\t\t\t\t).subscribe((res: reportePosiciones[]) => {\r\n\t\t\t\t\tthis.reporte = res;\r\n\r\n\t\t\t\t\tthis.reporte.map(rep => {\r\n\t\t\t\t\t\trep.fecha = this.datepipe.transform(rep.fecha, 'yyyy-MM-dd HH:mm')\r\n\t\t\t\t\t});\r\n\r\n\t\t\t\t\tthis.showGrafica = true;\r\n\t\t\t\t\tthis.showPDFButton = true;\r\n\t\t\t\t});\r\n\t\t\t} else {\r\n\t\t\t\tconst pageNum = '-1';\r\n\t\t\t\tconst pageCount = -1\r\n\t\t\t\tthis.historialVelocidadesVehiculoService.obtenerAutosCamara(pageNum, pageCount, this.fechaInicial, this.fechaFinal, this.data.imeiFk).pipe(\r\n\t\t\t\t\tfinalize(\r\n\t\t\t\t\t\t() => { this.loadingVisible = false }\r\n\t\t\t\t\t)\r\n\t\t\t\t).subscribe(\r\n\t\t\t\t\t(response) => {\r\n\r\n\t\t\t\t\t\tlet locations = [];\r\n\t\t\t\t\t\tif (response.data != null) {\r\n\t\t\t\t\t\t\tresponse.data.forEach(dato => {\r\n\t\t\t\t\t\t\t\tlet ignicion = 0;\r\n\t\t\t\t\t\t\t\tlet estado = 0\r\n\t\t\t\t\t\t\t\tif (Number(dato.speed) > 5) {\r\n\t\t\t\t\t\t\t\t\tignicion = 1;\r\n\t\t\t\t\t\t\t\t\testado = 1;\r\n\t\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\t\tlet formAux = {\r\n\t\t\t\t\t\t\t\t\tanio: response.vehiculo.anio,\r\n\t\t\t\t\t\t\t\t\tplacas: response.vehiculo.placas,\r\n\t\t\t\t\t\t\t\t\teconomico: response.vehiculo.economico,\r\n\t\t\t\t\t\t\t\t\tnumeroSerie: response.vehiculo.numeroSerie,\r\n\t\t\t\t\t\t\t\t\tcolor: response.vehiculo.color,\r\n\t\t\t\t\t\t\t\t\tdescripcion: response.vehiculo.descripcion,\r\n\t\t\t\t\t\t\t\t\timagen: response.vehiculo.imagen,\r\n\t\t\t\t\t\t\t\t\tmodelo: response.vehiculo.modelo,\r\n\t\t\t\t\t\t\t\t\testatus: response.vehiculo.estatus,\r\n\t\t\t\t\t\t\t\t\timeiFk: response.vehiculo.imeiFk,\r\n\t\t\t\t\t\t\t\t\tlat: Number(dato.latitude),\r\n\t\t\t\t\t\t\t\t\tlng: Number(dato.longitude),\r\n\t\t\t\t\t\t\t\t\testado: estado,\r\n\t\t\t\t\t\t\t\t\tignicion: ignicion,\r\n\t\t\t\t\t\t\t\t\tvelocidad: Math.round(dato.speed),\r\n\t\t\t\t\t\t\t\t\tdireccion: response.vehiculo.direccion,\r\n\t\t\t\t\t\t\t\t\todometro: response.vehiculo.odometro,\r\n\t\t\t\t\t\t\t\t\tmarca: response.vehiculo.marca,\r\n\t\t\t\t\t\t\t\t\tfechaHoraUltimaPosicion: response.vehiculo.fechaHoraUltimaPosicion,\r\n\t\t\t\t\t\t\t\t\testaEnMovimiento: response.vehiculo.estaEnMovimiento,\r\n\t\t\t\t\t\t\t\t\tfecha: dato.dtu,\r\n\t\t\t\t\t\t\t\t\tidPosicion: response.vehiculo.idPosicion,\r\n\t\t\t\t\t\t\t\t\tidCliente: response.vehiculo.idCliente\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\tlocations.push(formAux);\r\n\t\t\t\t\t\t\t});\r\n\r\n\t\t\t\t\t\t\tthis.reporte = locations;\r\n\r\n\t\t\t\t\t\t\tthis.reporte.map(rep => {\r\n\t\t\t\t\t\t\t\trep.fecha = this.datepipe.transform(rep.fecha, 'yyyy-MM-dd HH:mm:ss')\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\tthis.showGrafica = true;\r\n\t\t\t\t\t\t\tthis.showPDFButton = true;\r\n\r\n\t\t\t\t\t\t} else {\r\n\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t)\r\n\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\tthis.toastService.warning('Existen campos requerídos vacíos')\r\n\t\t}\r\n\r\n\t}\r\n\r\n\treportePosicionDefault(fechaInicio: Date, fechaFin: Date) {\r\n\t\tthis.loadingVisible = true;\r\n\t\tthis.fechaInicial = this.datepipe.transform(fechaInicio, \"yyyy-MM-dd HH:mm:ss\");\r\n\t\tthis.fechaFinal = this.datepipe.transform(fechaFin, \"yyyy-MM-dd HH:mm:ss\");\r\n\r\n\t\tconst pageNum = '-1';\r\n\t\tconst pageCount = -1\r\n\t\tthis.historialVelocidadesVehiculoService.obtenerAutosCamara(pageNum, pageCount, this.fechaInicial, this.fechaFinal, this.data.imeiFk).pipe(\r\n\t\t\tfinalize(\r\n\t\t\t\t() => { this.loadingVisible = false }\r\n\t\t\t)\r\n\t\t).subscribe(\r\n\t\t\t(response) => {\r\n\r\n\t\t\t\tlet locations = [];\r\n\t\t\t\tif (response.data != null) {\r\n\t\t\t\t\tresponse.data.forEach(dato => {\r\n\t\t\t\t\t\tlet ignicion = 0;\r\n\t\t\t\t\t\tlet estado = 0\r\n\t\t\t\t\t\tif (Number(dato.speed) > 5) {\r\n\t\t\t\t\t\t\tignicion = 1;\r\n\t\t\t\t\t\t\testado = 1;\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\tlet formAux = {\r\n\t\t\t\t\t\t\tanio: response.vehiculo.anio,\r\n\t\t\t\t\t\t\tplacas: response.vehiculo.placas,\r\n\t\t\t\t\t\t\teconomico: response.vehiculo.economico,\r\n\t\t\t\t\t\t\tnumeroSerie: response.vehiculo.numeroSerie,\r\n\t\t\t\t\t\t\tcolor: response.vehiculo.color,\r\n\t\t\t\t\t\t\tdescripcion: response.vehiculo.descripcion,\r\n\t\t\t\t\t\t\timagen: response.vehiculo.imagen,\r\n\t\t\t\t\t\t\tmodelo: response.vehiculo.modelo,\r\n\t\t\t\t\t\t\testatus: response.vehiculo.estatus,\r\n\t\t\t\t\t\t\timeiFk: response.vehiculo.imeiFk,\r\n\t\t\t\t\t\t\tlat: Number(dato.latitude),\r\n\t\t\t\t\t\t\tlng: Number(dato.longitude),\r\n\t\t\t\t\t\t\testado: estado,\r\n\t\t\t\t\t\t\tignicion: ignicion,\r\n\t\t\t\t\t\t\tvelocidad: Math.round(dato.speed),\r\n\t\t\t\t\t\t\tdireccion: response.vehiculo.direccion,\r\n\t\t\t\t\t\t\todometro: response.vehiculo.odometro,\r\n\t\t\t\t\t\t\tmarca: response.vehiculo.marca,\r\n\t\t\t\t\t\t\tfechaHoraUltimaPosicion: response.vehiculo.fechaHoraUltimaPosicion,\r\n\t\t\t\t\t\t\testaEnMovimiento: response.vehiculo.estaEnMovimiento,\r\n\t\t\t\t\t\t\tfecha: dato.dtu,\r\n\t\t\t\t\t\t\tidPosicion: response.vehiculo.idPosicion,\r\n\t\t\t\t\t\t\tidCliente: response.vehiculo.idCliente\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tlocations.push(formAux);\r\n\t\t\t\t\t});\r\n\r\n\t\t\t\t\tthis.reporte = locations;\r\n\r\n\t\t\t\t\tthis.reporte.map(rep => {\r\n\t\t\t\t\t\trep.fecha = this.datepipe.transform(rep.fecha, 'yyyy-MM-dd HH:mm:ss')\r\n\t\t\t\t\t});\r\n\t\t\t\t\tthis.showGrafica = true;\r\n\t\t\t\t\tthis.showPDFButton = true;\r\n\r\n\t\t\t\t} else {\r\n\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t)\r\n\r\n\r\n\t}\r\n\r\n\timprimirPdf() {\r\n\t\tthis.loadingVisible = true;\r\n\t\tvar grafica = document.getElementById('grafica')\r\n\t\tconst PLACA = this.validarInfo(this.vehiculoInfo.placas);\r\n\t\tconst ECONOMICO = this.validarInfo(this.vehiculoInfo.economico);\r\n\t\tconst SERIE = this.validarInfo(this.vehiculoInfo.numeroSerie)\r\n\t\tconst MARCA = this.validarInfo(this.vehiculoInfo.marca);\r\n\t\tconst MODELO = this.validarInfo(this.vehiculoInfo.modelo);\r\n\t\tconst ANIO = this.validarInfo(this.vehiculoInfo.anio);\r\n\t\tconst COLOR = this.validarInfo(this.vehiculoInfo.color);\r\n\t\tconst DESCRIPCION = this.validarInfo(this.vehiculoInfo.descripcion);\r\n\t\tlet fechaHora = this.vehiculoInfo.fechaHoraUltimaPosicion;\r\n\r\n\t\tconst FECHA_INICIAL = this.datepipe.transform(this.fechaInicial, 'dd/MM/yyyy h:MM a');\r\n\t\tconst FECHA_FINAL = this.datepipe.transform(this.fechaFinal, 'dd/MM/yyyy h:MM a');\r\n\r\n\t\tfechaHora = this.datepipe.transform(fechaHora, 'yyyy-MM-dd h:mma');\r\n\t\tlet direccion;\r\n\r\n\t\tthis.mapaService.getDireccion([this.vehiculoInfo.lat, this.vehiculoInfo.lng]).then(\r\n\t\t\t(data: any) => {\r\n\t\t\t\tdireccion = data.display_name || \"Dirección Desconocida\";\r\n\t\t\t},\r\n\t\t\t() => {\r\n\t\t\t\tdireccion = \"Dirección Desconocida\";\r\n\t\t\t}\r\n\t\t);\r\n\r\n\t\tsetTimeout(async () => {\r\n\t\t\tawait html2canvas(grafica).then(\r\n\t\t\t\t(canvas) => {\r\n\t\t\t\t\tconst graficaImagen = canvas.toDataURL('image/png');\r\n\r\n\t\t\t\t\tvar pdf = new jsPDF('p', 'pt', 'a4');\r\n\r\n\t\t\t\t\tconst logoGTM = './assets/media/logos/logo-gtm.png'\r\n\t\t\t\t\tconst logoGTMX = 20;\r\n\t\t\t\t\tconst logoGTMY = 15;\r\n\t\t\t\t\tconst logoGTMWidth = 180;\r\n\t\t\t\t\tconst logoGTMHeight = 80;\r\n\t\t\t\t\tpdf.addImage(logoGTM, 'PNG', logoGTMX, logoGTMY, logoGTMWidth, logoGTMHeight, 'MEDIUM');\r\n\r\n\t\t\t\t\tconst logoGTMWater = './assets/media/logos/marca-de-agua.png'\r\n\t\t\t\t\tconst logoGTMWaterX = 15;\r\n\t\t\t\t\tconst logoGTMWaterY = 130;\r\n\t\t\t\t\tconst logoGTMWaterProp = (pdf as any).getImageProperties(logoGTMWater);\r\n\t\t\t\t\tconst logoGTMWaterWidth = pdf.internal.pageSize.getWidth() - 2 * logoGTMWaterX;\r\n\t\t\t\t\tconst logoGTMWaterHeight = (logoGTMWaterProp.height * logoGTMWaterWidth) / logoGTMWaterProp.width;\r\n\t\t\t\t\tpdf.addImage(logoGTMWater, 'PNG', logoGTMWaterX, logoGTMWaterY, logoGTMWaterWidth, logoGTMWaterHeight, 'SLOW');\r\n\r\n\t\t\t\t\tpdf.setFontSize(18);\r\n\t\t\t\t\tpdf.setFont('', 'bold')\r\n\t\t\t\t\tpdf.text('Historial de Velocidades', 215, 120);\r\n\t\t\t\t\tpdf.text('Inicio: ' + FECHA_INICIAL + ' - Fin: ' + FECHA_FINAL, 90, 145)\r\n\r\n\t\t\t\t\tconst PROPERTIES = (pdf as any).getImageProperties(graficaImagen);\r\n\t\t\t\t\tconst WIDTH = pdf.internal.pageSize.getWidth() - 2 * 15;\r\n\t\t\t\t\tconst HEIGHT = (PROPERTIES.height * WIDTH) / PROPERTIES.width;\r\n\t\t\t\t\tpdf.addImage(graficaImagen, 'PNG', 15, 170, WIDTH, 250);\r\n\r\n\t\t\t\t\tpdf.setFontSize(14);\r\n\t\t\t\t\tpdf.setFont('', 'bold')\r\n\t\t\t\t\tpdf.text('Datos del Dispositivo', 90, 470,);\r\n\r\n\t\t\t\t\tpdf.setFont('', 'normal')\r\n\t\t\t\t\tpdf.text('Vehículo:', 90, 485);\r\n\t\t\t\t\tpdf.text(MARCA + ', ' + MODELO, 340, 485);\r\n\r\n\t\t\t\t\tpdf.text('Placa:', 90, 500);\r\n\t\t\t\t\tpdf.text(PLACA, 340, 500);\r\n\r\n\t\t\t\t\tpdf.text('Económico:', 90, 515);\r\n\t\t\t\t\tpdf.text(ECONOMICO, 340, 515);\r\n\r\n\t\t\t\t\tpdf.text('Número de Serie:', 90, 530);\r\n\t\t\t\t\tpdf.text(SERIE, 340, 530);\r\n\r\n\t\t\t\t\tpdf.text('Año:', 90, 545);\r\n\t\t\t\t\tpdf.text(ANIO + '', 340, 545);\r\n\r\n\t\t\t\t\tpdf.text('Color:', 90, 560);\r\n\t\t\t\t\tpdf.text(COLOR, 340, 560);\r\n\r\n\t\t\t\t\tpdf.text('Descripción:', 90, 575);\r\n\t\t\t\t\tpdf.text(DESCRIPCION, 340, 575);\r\n\r\n\t\t\t\t\tpdf.text('Dirección:', 90, 590);\r\n\t\t\t\t\tpdf.text(direccion + '', 340, 590);\r\n\r\n\t\t\t\t\tpdf.setFontSize(12);\r\n\t\t\t\t\tpdf.setFont('', 'bold')\r\n\t\t\t\t\tpdf.text('GTM Tecnología S.A. de C.V.', 220, 795);\r\n\t\t\t\t\tpdf.text('Carr. Temixco - Emiliano Zapata ext. 17 int. 3B Col. Palo Escrito, Emiliano Zapata, Mor, Mex. C.P. 62760', 22, 810);\r\n\t\t\t\t\tpdf.text('Tel. +52 7773200301, Whatsapp: +52 7771351886, soporte.star@growtec.com.mx', 65, 825);\r\n\r\n\t\t\t\t\tconst nombreArchivo = 'Historial_Velocidades';\r\n\t\t\t\t\tpdf.save(nombreArchivo + '.pdf');\r\n\t\t\t\t\tthis.loadingVisible = false;\r\n\r\n\t\t\t\t}\r\n\t\t\t)\r\n\t\t}, 1)\r\n\t}\r\n\r\n\tvalidarInfo(valor) {\r\n\t\tlet value = 'Sin Datos';\r\n\r\n\t\tif (valor) {\r\n\t\t\tvalue = valor\r\n\t\t}\r\n\r\n\t\treturn value;\r\n\t}\r\n\r\n\tpublic tickFormatting(date: any) {\r\n\t\tconst options = {\r\n\t\t\thour: 'numeric',\r\n\t\t\tminute: 'numeric',\r\n\t\t};\r\n\t\tif (date.constructor.name === 'Date') {\r\n\t\t\treturn date.toLocaleString('es-MX', options);\r\n\t\t}\r\n\t\treturn date.toLocaleString('es-MX', options);\r\n\t}\r\n\r\n\tpublic minimizarPopup() {\r\n\t\tthis.dialogRef.addPanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic maximizarPopup() {\r\n\t\tthis.dialogRef.removePanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic cerrarPopup() {\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n\r\n\r\n}\r\n","
\r\n\t\r\n\t\r\n\t\r\n\t\r\n\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t\t

Historial de Combustible

\r\n\t\t
\r\n\t
\r\n
\r\n\r\n\t\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t

{{vehiculoInfo.descripcion}}

\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\tEspecifique un rango de tiempo en el cual desea obtener información del vehiculo\r\n\t\t\t\t\tseleccionado.\r\n\t\t\t
\r\n\t\t
\r\n\t\t\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t \r\n\t\t\t\t\t\t\t\t \r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t

\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n \t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t{{d.data.combustible}} L\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t{{v.data.velocidad}} km/h\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n\r\n\r\n\r\n","import { DatePipe } from '@angular/common';\r\nimport { Component, Inject, OnInit, ViewChild } from '@angular/core';\r\nimport { MAT_DIALOG_DATA, MatDialog, MatDialogConfig, MatDialogRef } from '@angular/material';\r\nimport { DxValidationGroupComponent } from 'devextreme-angular';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { MapaService } from '../../../../services/mapa.service';\r\nimport html2canvas from 'html2canvas';\r\nimport jsPDF from 'jspdf';\r\nimport { VehiculosService } from '../../../../services/vehiculos.service';\r\nimport { ReporteCombustibleHistorico } from '../../../../../../_entities/vehiculos/ReporteCombustibleHistorico';\r\nimport { IGNICIONES, ALERTAS } from '../../../../../../_entities/estados';\r\nimport { GraficaHistoricoCombustibleComponent } from '../grafica-historico-combustible/grafica-historico-combustible.component';\r\nimport { HistoricoPosicionesActivoComponent } from '../../activos/historico-posiciones-activo/historico-posiciones-activo.component';\r\nimport { MapaMarkerComponent } from '../../../mapa-marker/mapa-marker.component';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'kt-historico-combustible',\r\n templateUrl: './historico-combustible.component.html',\r\n styleUrls: ['./historico-combustible.component.scss']\r\n})\r\nexport class HistoricoCombustibleComponent implements OnInit {\r\n\r\n @ViewChild('targetGroup', { static: false }) validationGroup: DxValidationGroupComponent;\r\n public reportePos: ReporteCombustibleHistorico[];\r\n public reportePosd: ReporteCombustibleHistorico;\r\n\r\n\tpublic reporte: any = [];\r\n\tpublic dataGrafica = [];\r\n\tpublic datos = [[1, 1]];\r\n\tpublic type = \"line\"\r\n\tpublic energySources = [\r\n\t\t{ value: \"velocidad\", name: \"Velocidad\" }\r\n\t];\r\n\tpublic showFilterRow: boolean;\r\n public showHeaderFilter: boolean;\r\n\tpublic vehiculoInfo;\r\n\tpublic idCliente;\r\n\tpublic fechaInicial;\r\n\tpublic fechaFinal;\r\n\tpublic fechaInicio;\r\n\tpublic idVehiculo;\r\n\tpublic fechaFin;\r\n\tpublic loadingVisible: boolean = false;\r\n\tpublic loadingMessage: string;\r\n\tpublic showPDFButton: boolean = false;\r\n\tpublic HWUser;\r\n\tpublic isDisable: boolean = false;\r\n\tpublic showTable: boolean = false;\r\n\r\n\tpublic showForm: boolean = true;\r\n\r\n\tcolorScheme = {\r\n\t\tdomain: ['#166BA2']\r\n\t};\r\n\r\n\r\n\tpublic legend: boolean = true;\r\n\tpublic showLabels: boolean = true;\r\n\tpublic animations: boolean = true;\r\n\tpublic xAxis: boolean = true;\r\n\tpublic yAxis: boolean = true;\r\n\tpublic showYAxisLabel: boolean = true;\r\n\tpublic showXAxisLabel: boolean = true;\r\n\tpublic timeline: boolean = true;\r\n\tpublic showGrafica = false;\r\n\tpublic datosReporte = [];\r\n\tpublic isDisabled: boolean = true;\r\n\r\n\tconstructor(@Inject(MAT_DIALOG_DATA) public data: any,\r\n\t\tprivate datepipe: DatePipe,\r\n\t\tprivate toastService: ToastrService,\r\n\t\tpublic dialogRef: MatDialogRef,\r\n\t\tprivate mapaService: MapaService,\r\n\t\tprivate vehiculoService:VehiculosService,\r\n\t\tpublic dialog: MatDialog,\r\n\t\t) {this.showFilterRow = true;\r\n\t\t\tthis.showHeaderFilter = true; }\r\n\r\n\tngOnInit() {\r\n\t\t\tthis.idCliente = this.data.idCliente;\r\n\t\t\tthis.idVehiculo = this.data.id;\r\n\t\t\tthis.vehiculoInfo = this.data;\r\n\r\n\t}\r\n\r\n\r\n\treportePosicion(fechaInicio: Date, fechaFinal: Date) {\r\n\t\tif (this.validationGroup.instance.validate().isValid) {\r\n\t\t\tthis.loadingVisible = true;\r\n\t\t\tthis.loadingMessage = 'Cargando...'\r\n\t\t\tthis.fechaInicial = this.datepipe.transform(fechaInicio, \"yyyy-MM-dd HH:mm:ss\");\r\n\t\t\tthis.fechaFinal = this.datepipe.transform(fechaFinal, \"yyyy-MM-dd HH:mm:ss\");\r\n\t\t\tsetTimeout(() => {\r\n\t\t\t\tthis.loadingMessage = 'Esto puede tardar unos segundos...';\r\n\t\t\t}, 15000);\r\n\t\t\tthis.vehiculoService.getReporteHistoricoCombustible(this.idVehiculo,this.fechaInicial,this.fechaFinal).subscribe((result: ReporteCombustibleHistorico[]) =>{\r\n\t\t\t\tthis.reportePos = result;\r\n\t\t\t\tif (this.reportePos.length > 0) {\r\n\t\t\t\t\tthis.crearReporte(result);\r\n\t\t\t\t\tthis.reportePos.map(dato => {\r\n\t\t\t\t\t\tlet ignicion = IGNICIONES.find(ignicion => ignicion.id === dato.ignicion);\r\n\t\t\t\t\t\tdato.ignicionNombre = ignicion.nombre;\r\n\r\n\t\t\t\t\t\tlet estado = ALERTAS.find(alerta => alerta.id == dato.estado);\r\n\t\t\t\t\t\tdato.estadoNombre = estado.nombre;\r\n\t\t\t\t\t\tdato.icono = estado.icono;\r\n\r\n\t\t\t\t\t\tdato.fecha = this.datepipe.transform(dato.fecha, 'dd/MM/yyyy hh:mm:ss a');\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t\telse {\r\n\t\t\t\t\tthis.isDisabled = true;\r\n\t\t\t\t\tthis.showTable = false;\r\n\t\t\t\t\tthis.loadingVisible = false;\r\n\t\t\t\t\tthis.toastService.info(\"No existen datos en ese rango de fechas\")\r\n\t\t\t\t}\r\n\t\t\t\tif(this.datosReporte.length > 0) {\r\n\t\t\t\t\tthis.isDisabled = false;\r\n\t\t\t\t}\r\n\t\t\t\tif (this.reportePos.length > 0) {\r\n\t\t\t\t\tthis.loadingVisible = false;\r\n\t\t\t\t\tthis.showTable = true;\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t}\r\n\t\r\n\t}\r\n\r\n\r\n\tcrearReporte(reporte: ReporteCombustibleHistorico[]) {\r\n\t\tthis.datosReporte = [];\r\n\t\treporte.forEach(p => {\r\n\t\t\tthis.datosReporte.push({\r\n\t\t\t\t'Fecha': this.datepipe.transform(p.fecha, 'dd-MM-yyyy - HH:mm a'),\r\n\t\t\t\t'Combustible': (p.combustible + ' L'),\r\n\t\t\t\t'Ignición': this.obtenerIgnicion(p.ignicion),\r\n\t\t\t\t'Estado': this.obtenerEstado(p.estado),\r\n\t\t\t\t'Velocidad Km/h': (p.velocidad + ' km/h' ),\r\n\t\t\t});\r\n\t\t\tif (this.datosReporte.length > 0) {\r\n\t\t\t\tthis.isDisabled = false;\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\tobtenerIgnicion(ignicion) {\r\n\t\tlet tipoIgnicion = '';\r\n\t\tswitch (ignicion) {\r\n\t\t\tcase 0:\r\n\t\t\t\ttipoIgnicion = 'Apagado';\r\n\t\t\t\tbreak;\r\n\t\t\tcase 1:\r\n\t\t\t\ttipoIgnicion = 'Encendido';\r\n\t\t\t\tbreak;\r\n\t\t\tcase null:\r\n\t\t\t\ttipoIgnicion = 'Sin datos';\r\n\t\t}\r\n\t\treturn tipoIgnicion;\r\n\t}\r\n\r\n\tobtenerEstado(estado) {\r\n\t\tlet tipoEstado = '';\r\n\t\tswitch (estado) {\r\n\t\t\tcase 0:\r\n\t\t\t\ttipoEstado = 'Detenido';\r\n\t\t\t\tbreak;\r\n\t\t\tcase 1:\r\n\t\t\t\ttipoEstado = 'Movimiento';\r\n\t\t\t\tbreak;\r\n\t\t\tcase 2: \r\n\t\t\t\ttipoEstado = 'Alerta Primaria';\r\n\t\t\t\tbreak;\r\n\t\t\tcase 3:\r\n\t\t\t\ttipoEstado = 'Alerta Secundaria';\r\n\t\t\t\tbreak;\r\n\t\t\tcase 4:\r\n\t\t\t\ttipoEstado = 'Detenido Más de 30 min';\r\n\t\t\t\tbreak\r\n\t\t\tcase 5:\r\n\t\t\t\ttipoEstado = 'Detenido Más de 60 min';\r\n\t\t\t\tbreak;\r\n\t\t\tcase 6:\r\n\t\t\t\ttipoEstado = 'Detenido Más de 90 min';\r\n\t\t\t\tbreak;\r\n\t\t\tcase 7:\r\n\t\t\t\ttipoEstado = 'Exceso de Velocidad';\r\n\t\t\t\tbreak;\r\n\t\t\tcase 8:\r\n\t\t\t\ttipoEstado = 'Fuera de Geocerca';\r\n\t\t\t\tbreak;\r\n\t\t\tcase 9:\r\n\t\t\t\ttipoEstado = 'Batería Baja';\r\n\t\t\t\tbreak;\r\n\t\t\tcase 10:\r\n\t\t\t\ttipoEstado = 'Falta de Energía';\r\n\t\t\t\tbreak;\r\n\t\t\tcase 11:\r\n\t\t\t\ttipoEstado = 'Alerta de Movimiento';\r\n\t\t\t\tbreak;\r\n\t\t\tcase null:\r\n\t\t\t\ttipoEstado = 'Sin Datos';\r\n\t\t\t\tbreak;\r\n\t\t}\r\n\t\treturn tipoEstado;\r\n\t}\t\r\n\r\n\timprimirPdf() {\r\n\t\tthis.loadingVisible = true;\r\n\t\tvar grafica = document.getElementById('grafica')\r\n\t\tconst PLACA = this.validarInfo(this.vehiculoInfo.placas);\r\n\t\tconst ECONOMICO = this.validarInfo(this.vehiculoInfo.economico);\r\n\t\tconst SERIE = this.validarInfo(this.vehiculoInfo.numeroSerie)\r\n\t\tconst MARCA = this.validarInfo(this.vehiculoInfo.marca);\r\n\t\tconst MODELO = this.validarInfo(this.vehiculoInfo.modelo);\r\n\t\tconst ANIO = this.validarInfo(this.vehiculoInfo.anio);\r\n\t\tconst COLOR = this.validarInfo(this.vehiculoInfo.color);\r\n\t\tconst DESCRIPCION = this.validarInfo(this.vehiculoInfo.descripcion);\r\n\t\tlet fechaHora = this.vehiculoInfo.fechaHoraUltimaPosicion;\r\n\r\n\t\tconst FECHA_INICIAL = this.datepipe.transform(this.fechaInicial, 'dd/MM/yyyy h:MM a');\r\n\t\tconst FECHA_FINAL = this.datepipe.transform(this.fechaFinal, 'dd/MM/yyyy h:MM a');\r\n\r\n\t\tfechaHora = this.datepipe.transform(fechaHora, 'yyyy-MM-dd h:mma');\r\n\t\tlet direccion;\r\n\r\n\t\tthis.mapaService.getDireccion([this.vehiculoInfo.lat, this.vehiculoInfo.lng]).then(\r\n\t\t\t(data: any) => {\r\n\t\t\t\tdireccion = data.display_name || \"Dirección Desconocida\";\r\n\t\t\t},\r\n\t\t\t() => {\r\n\t\t\t\tdireccion = \"Dirección Desconocida\";\r\n\t\t\t}\r\n\t\t);\r\n\r\n\t\tsetTimeout(async () => {\r\n\t\t\tawait html2canvas(grafica).then(\r\n\t\t\t\t(canvas) => {\r\n\t\t\t\t\tconst graficaImagen = canvas.toDataURL('image/png');\r\n\r\n\t\t\t\t\tvar pdf = new jsPDF('p', 'pt', 'a4');\r\n\r\n\t\t\t\t\tconst logoGTM = './assets/media/logos/logo-gtm.png'\r\n\t\t\t\t\tconst logoGTMX = 20;\r\n\t\t\t\t\tconst logoGTMY = 15;\r\n\t\t\t\t\tconst logoGTMWidth = 180;\r\n\t\t\t\t\tconst logoGTMHeight = 80;\r\n\t\t\t\t\tpdf.addImage(logoGTM, 'PNG', logoGTMX, logoGTMY, logoGTMWidth, logoGTMHeight, 'MEDIUM');\r\n\r\n\t\t\t\t\tconst logoGTMWater = './assets/media/logos/marca-de-agua.png'\r\n\t\t\t\t\tconst logoGTMWaterX = 15;\r\n\t\t\t\t\tconst logoGTMWaterY = 130;\r\n\t\t\t\t\tconst logoGTMWaterProp = (pdf as any).getImageProperties(logoGTMWater);\r\n\t\t\t\t\tconst logoGTMWaterWidth = pdf.internal.pageSize.getWidth() - 2 * logoGTMWaterX;\r\n\t\t\t\t\tconst logoGTMWaterHeight = (logoGTMWaterProp.height * logoGTMWaterWidth) / logoGTMWaterProp.width;\r\n\t\t\t\t\tpdf.addImage(logoGTMWater, 'PNG', logoGTMWaterX, logoGTMWaterY, logoGTMWaterWidth, logoGTMWaterHeight, 'SLOW');\r\n\r\n\t\t\t\t\tpdf.setFontSize(18);\r\n\t\t\t\t\tpdf.setFont('', 'bold')\r\n\t\t\t\t\tpdf.text('Historial de Velocidades', 215, 120);\r\n\t\t\t\t\tpdf.text('Inicio: ' + FECHA_INICIAL + ' - Fin: ' + FECHA_FINAL, 90, 145)\r\n\r\n\t\t\t\t\tconst PROPERTIES = (pdf as any).getImageProperties(graficaImagen);\r\n\t\t\t\t\tconst WIDTH = pdf.internal.pageSize.getWidth() - 2 * 15;\r\n\t\t\t\t\tconst HEIGHT = (PROPERTIES.height * WIDTH) / PROPERTIES.width;\r\n\t\t\t\t\tpdf.addImage(graficaImagen, 'PNG', 15, 170, WIDTH, 250);\r\n\r\n\t\t\t\t\tpdf.setFontSize(14);\r\n\t\t\t\t\tpdf.setFont('', 'bold')\r\n\t\t\t\t\tpdf.text('Datos del Dispositivo', 90, 470,);\r\n\r\n\t\t\t\t\tpdf.setFont('', 'normal')\r\n\t\t\t\t\tpdf.text('Vehículo:', 90, 485);\r\n\t\t\t\t\tpdf.text(MARCA + ', ' + MODELO, 340, 485);\r\n\r\n\t\t\t\t\tpdf.text('Placa:', 90, 500);\r\n\t\t\t\t\tpdf.text(PLACA, 340, 500);\r\n\r\n\t\t\t\t\tpdf.text('Económico:', 90, 515);\r\n\t\t\t\t\tpdf.text(ECONOMICO, 340, 515);\r\n\r\n\t\t\t\t\tpdf.text('Número de Serie:', 90, 530);\r\n\t\t\t\t\tpdf.text(SERIE, 340, 530);\r\n\r\n\t\t\t\t\tpdf.text('Año:', 90, 545);\r\n\t\t\t\t\tpdf.text(ANIO + '', 340, 545);\r\n\r\n\t\t\t\t\tpdf.text('Color:', 90, 560);\r\n\t\t\t\t\tpdf.text(COLOR, 340, 560);\r\n\r\n\t\t\t\t\tpdf.text('Descripción:', 90, 575);\r\n\t\t\t\t\tpdf.text(DESCRIPCION, 340, 575);\r\n\r\n\t\t\t\t\tpdf.text('Dirección:', 90, 590);\r\n\t\t\t\t\tpdf.text(direccion + '', 340, 590);\r\n\r\n\t\t\t\t\tpdf.setFontSize(12);\r\n\t\t\t\t\tpdf.setFont('', 'bold')\r\n\t\t\t\t\tpdf.text('GTM Tecnología S.A. de C.V.', 220, 795);\r\n\t\t\t\t\tpdf.text('Carr. Temixco - Emiliano Zapata ext. 17 int. 3B Col. Palo Escrito, Emiliano Zapata, Mor, Mex. C.P. 62760', 22, 810);\r\n\t\t\t\t\tpdf.text('Tel. +52 7773200301, Whatsapp: +52 7771351886, soporte.star@growtec.com.mx', 65, 825);\r\n\r\n\t\t\t\t\tconst nombreArchivo = 'Historial_Velocidades';\r\n\t\t\t\t\tpdf.save(nombreArchivo + '.pdf');\r\n\t\t\t\t\tthis.loadingVisible = false;\r\n\r\n\t\t\t\t}\r\n\t\t\t)\r\n\t\t}, 1)\r\n\t}\r\n\r\n\tvalidarInfo(valor) {\r\n\t\tlet value = 'Sin Datos';\r\n\r\n\t\tif (valor) {\r\n\t\t\tvalue = valor\r\n\t\t}\r\n\r\n\t\treturn value;\r\n\t}\r\n\r\n\tpublic tickFormatting(date: any) {\r\n\t\tconst options = {\r\n\t\t\thour: 'numeric',\r\n\t\t\tminute: 'numeric',\r\n\t\t};\r\n\t\tif (date.constructor.name === 'Date') {\r\n\t\t\treturn date.toLocaleString('es-MX', options);\r\n\t\t}\r\n\t\treturn date.toLocaleString('es-MX', options);\r\n\t}\r\n\r\n\tpublic minimizarPopup() {\r\n\t\tthis.dialogRef.addPanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic maximizarPopup() {\r\n\t\tthis.dialogRef.removePanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic cerrarPopup() {\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n\r\n\t\r\n\tmostrarGrafica() {\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.autoFocus = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\t\tdialogConfig.width = \"50%\";\r\n\t\tdialogConfig.closeOnNavigation = true;\r\n\t\tdialogConfig.hasBackdrop = false;\r\n\t\tdialogConfig.panelClass = 'custom-modalbox';\r\n\t\tdialogConfig.data = {datos:this.reportePos,info:this.vehiculoInfo, fechaInicio:this.fechaInicial,fechaFinal:this.fechaFinal};\r\n\t\tthis.dialog.open(GraficaHistoricoCombustibleComponent,dialogConfig);\r\n\t\r\n\t\t}\r\n\r\n\t/**Obtener Reporte Velocidad */\r\n\tetiquetaModificada(arg) {\r\n\r\n\t\treturn {\r\n text: arg.valueText + 'L'\r\n };\r\n\t}\r\n\r\n\tubicar(data) {\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.autoFocus = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\t\tdialogConfig.hasBackdrop = false;\r\n\t\tdialogConfig.width = \"50%\";\r\n\t\tdialogConfig.height = \"60%\"\r\n\t\tdialogConfig.data = data;\r\n\t\tdialogConfig.panelClass = 'custom-modalbox';\r\n\t\tthis.dialog.open(MapaMarkerComponent, dialogConfig);\r\n\t}\r\n\r\n}\r\n","
\r\n\t\r\n\t\r\n\t\r\n\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t\t

Estadísticas del Dispositivo

\r\n\t\t
\r\n\t
\r\n
\r\n
\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\tAnálisis estadístico de la velocidad máxima y promedio de la operación del\r\n\t\t\t\t\t\t\t\t\tvehículo con el económico: {{vehiculoInfo.economico}}\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t \r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n\r\n\r\n\r\n","import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material';\r\nimport { posiciones, reportePosiciones } from './../../../../../../../_entities/coordenadas/ReportePosiciones';\r\nimport { Component, Inject, OnInit } from '@angular/core';\r\nimport { MapaService } from './../../../../../../../views/monitoreo/services/mapa.service';\r\nimport { jsPDF } from 'jspdf';\r\nimport html2canvas from 'html2canvas';\r\nimport { DatePipe } from '@angular/common';\r\nimport { ReportesService } from './../../../../../../reportes/service/reportes.service';\r\nimport { ReporteVelocidad } from './../../../../../../../_entities/Reportes/ReporteVelocidad';\r\n\r\n@Component({\r\n\tselector: 'kt-grafica-estadistica-vehiculo',\r\n\ttemplateUrl: './grafica-estadistica-vehiculo.component.html',\r\n\tstyleUrls: ['./grafica-estadistica-vehiculo.component.scss']\r\n})\r\nexport class GraficaEstadisticaVehiculoComponent implements OnInit {\r\n\tpublic lista: posiciones[];\r\n\tpublic vehiculoInfo;\r\n\tpublic fin;\r\n\tpublic canvasWidth = 300\r\n\tpublic centralLabel = ''\r\n\tpublic name;\r\n\tpublic options;\r\n\tpublic canvasWidth2 = 300\r\n\tpublic centralLabel2 = ''\r\n\tpublic name2;\r\n\tpublic options2;\r\n\tpublic graficaVelocidad = [];\r\n\r\n\tpublic fechaInicial;\r\n\tpublic fechaFinal;\r\n\r\n\tpublic final;\r\n\tpublic latini = 0.0;\r\n\tpublic lngini = 0.0;\r\n\tpublic latfin = 0.0;\r\n\tpublic lngfin = 0.0;\r\n\tpublic i = 0;\r\n\tpublic velocidad = 0;\r\n\tpublic val = 0;\r\n\tpublic minimoChar = 999999;\r\n\tpublic maximochar = 0;\r\n\tpublic totalDistance = 0.0;\r\n\tpublic operacion = 0.00;\r\n\tpublic promedio = 0.00;\r\n\r\n\tpublic loadingVisible: boolean = false;\r\n\r\n\tcolorVelPromedio = {\r\n\t\tdomain: ['#46be8a']\r\n\t};\r\n\r\n\tcolorVelMax = {\r\n\t\tdomain: ['#fb434a']\r\n\t};\r\n\r\n\tcolorDistancia = {\r\n\t\tdomain: ['#166ba2']\r\n\t};\r\n\r\n\tvelPromedio = [];\r\n\tvelMaxima = []\r\n\tmulti = []\r\n\tviewVel: any[] = [400, 300];\r\n\tlegendVel: boolean = true;\r\n\tlegendPositionVel: string = 'below';\r\n\r\n\tviewLine: any[] = [500, 300];\r\n\r\n\t// options\r\n\tlegend: boolean = true;\r\n\tshowLabels: boolean = true;\r\n\tanimations: boolean = true;\r\n\txAxis: boolean = true;\r\n\tyAxis: boolean = true;\r\n\tshowYAxisLabel: boolean = true;\r\n\tshowXAxisLabel: boolean = true;\r\n\t//xAxisLabel: string = 'Year';\r\n\t//yAxisLabel: string = 'Population';\r\n\ttimeline: boolean = true;\r\n\tpublic intervalo;\r\n\tpublic tituloRecorrido: string;\r\n\tgaugeUnits: string = 'km/h'\r\n\r\n\tconstructor(@Inject(MAT_DIALOG_DATA) public data: any, public dialogRef: MatDialogRef,\r\n\t\tprivate mapaService: MapaService,\r\n\t\tprivate datepipe: DatePipe) {\r\n\t\tObject.assign(this.velPromedio);\r\n\t\tObject.assign(this.velMaxima);\r\n\t\tObject.assign(this.multi);\r\n\t}\r\n\r\n\tngOnInit() {\r\n\t\tif (this.data !== null) {\r\n\t\t\tthis.lista = this.data.posiciones;\r\n\t\t\tconst len = this.data.posiciones.length - 1;\r\n\t\t\tthis.vehiculoInfo = this.mapaService.datosGenerales\r\n\r\n\t\t\tthis.fechaInicial = this.data.posiciones[0].fecha;\r\n\t\t\tthis.fechaFinal = this.data.posiciones[len].fecha;\r\n\r\n\t\t\tthis.totalDistance = this.data.totalDistancia;\r\n\r\n\t\t\tthis.consultarCharts();\r\n\t\t} else {\r\n\t\t\tthis.lista = JSON.parse(sessionStorage.getItem('historico'));\r\n\r\n\t\t\tconst len = this.lista.length - 1;\r\n\t\t\tthis.vehiculoInfo = this.mapaService.datosGenerales\r\n\r\n\t\t\tthis.fechaInicial = this.lista[0].fecha;\r\n\t\t\tthis.fechaFinal = this.lista[len].fecha;\r\n\t\t\t//this.obtenerReporteDistancia()\r\n\r\n\t\t\tthis.consultarCharts();\r\n\t\t}\r\n\r\n\r\n\t}\r\n\r\n\tvelocidades(arg: any) {\r\n\t\treturn arg.valueText + \" km/h\";\r\n\t}\r\n\r\n\tdistancia(arg: any) {\r\n\t\treturn arg.valueText + \" km\";\r\n\t}\r\n\r\n\t/**Formulas calculate distance No se usa actualmente*\r\n\tcalculateDistance(lat1, lng1, lat2, lng2) {\r\n\t\t/*var p = 0.017453292519943295;\r\n\t\tvar c = Math.cos;\r\n\t\tvar a = 0.5 - c((lat2 - lat1) * p) / 2 +\r\n\t\t\tc(lat1 * p) * c(lat2 * p) *\r\n\t\t\t(1 - c((lon2 - lon1) * p)) / 2;\r\n\t\treturn 6371 * Math.asin(Math.sqrt(a));*\r\n\r\n\t\tlet distance = 0;\r\n\t\tlet Lat = (lat2 - lat1) * (Math.PI / 180);\r\n\t\tlet Lon = (lng2 - lng1) * (Math.PI / 180);\r\n\t\tlet a = Math.sin(Lat / 2) * Math.sin(Lat / 2) + Math.cos(lat1 * (Math.PI / 180)) * Math.cos(lat2 * (Math.PI / 180)) * Math.sin(Lon / 2) * Math.sin(Lon / 2);\r\n\t\tlet c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1 - a));\r\n\t\tdistance = 6371 * c;\r\n\t\treturn distance;\r\n\t}*/\r\n\r\n\tconsultarCharts() {\r\n\t\tthis.lista.forEach(element => {\r\n\t\t\tif (this.i == 0) {\r\n\t\t\t\tthis.latini = element.lat;\r\n\t\t\t\tthis.lngini = element.lng;\r\n\t\t\t}\r\n\r\n\t\t\tthis.latfin = element.lat;\r\n\t\t\tthis.lngfin = element.lng;\r\n\r\n\t\t\tthis.intervalo = (this.totalDistance / 5);\r\n\r\n\t\t\tlet velocidad = Number(element.velocidad.toString().replace(' Km/h', ''));\r\n\r\n\r\n\t\t\tif (velocidad > 0) {\r\n\t\t\t\tthis.velocidad = this.velocidad + velocidad;\r\n\t\t\t\tconst minimo = velocidad;\r\n\t\t\t\tconst maximo = velocidad;\r\n\r\n\t\t\t\tthis.val++;\r\n\t\t\t\tif (this.minimoChar > minimo) {\r\n\t\t\t\t\tthis.minimoChar = minimo;\r\n\t\t\t\t}\r\n\t\t\t\telse if (this.maximochar < maximo) {\r\n\t\t\t\t\tthis.maximochar = maximo;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\tthis.latini = this.latfin;\r\n\t\t\tthis.lngini = this.lngfin;\r\n\t\t\tthis.i++;\r\n\t\t})\r\n\t\tthis.tituloRecorrido = 'Distancia Recorrida: ' + this.totalDistance.toFixed(2) + ' km'\r\n\t\tthis.promedio = this.velocidad / this.val;\r\n\t}\r\n\r\n\tvalueFormatting(value: number): string {\r\n\t\t//Retorna el valor redondeado con punto decimal de las graficas de velocidad\r\n\t\treturn `${value.toFixed(2)}`;\r\n\t}\r\n\r\n\tpublic minimizarPopup() {\r\n\t\tthis.dialogRef.addPanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic maximizarPopup() {\r\n\t\tthis.dialogRef.removePanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic cerrarPopup() {\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n\r\n\r\n\timprimirGrafica() {\r\n\t\tthis.loadingVisible = true;\r\n\r\n\t\tconst PLACA = this.validarInfo(this.vehiculoInfo.placas);\r\n\t\tconst ECONOMICO = this.validarInfo(this.vehiculoInfo.economico);\r\n\t\tconst SERIE = this.validarInfo(this.vehiculoInfo.numeroSerie);\r\n\t\tconst MARCA = this.validarInfo(this.vehiculoInfo.marca);\r\n\t\tconst MODELO = this.validarInfo(this.vehiculoInfo.modelo);\r\n\t\tconst ANIO = this.validarInfo(this.vehiculoInfo.anio);\r\n\t\tconst COLOR = this.validarInfo(this.vehiculoInfo.color);\r\n\t\tconst DESCRIPCION = this.validarInfo(this.vehiculoInfo.descripcion);\r\n\t\tconst FECHA_INICIAL = this.validarInfo(this.fechaInicial);\r\n\t\tconst FECHA_FINAL = this.validarInfo(this.fechaFinal);\r\n\t\tlet ignicion = this.vehiculoInfo.ignicion;\r\n\t\tlet direccion = '';\r\n\r\n\t\tthis.mapaService.getDireccion([this.vehiculoInfo.lng, this.vehiculoInfo.lat]).then(\r\n\t\t\t(data: any) => {\r\n\t\t\t\tdireccion = data.display_name || \"Dirección Desconocida\";\r\n\t\t\t},\r\n\t\t\t() => {\r\n\t\t\t\tdireccion = \"Dirección Desconocida\";\r\n\t\t\t}\r\n\t\t);\r\n\r\n\t\tif (ignicion === 0) {\r\n\t\t\tignicion = \"Apagado\"\r\n\t\t} else if (this.data.ignicion === 1) {\r\n\t\t\tignicion = \"Encendido\"\r\n\t\t}\r\n\r\n\t\tlet velocidades = document.getElementById('velocidades');\r\n\t\t//var distanciaRecorrida = document.getElementById('recorrido');\r\n\t\tsetTimeout(async () => {\r\n\t\t\tawait html2canvas(velocidades).then(\r\n\t\t\t\t(canvas) => {\r\n\t\t\t\t\tconst velocidadesImg = canvas.toDataURL('image/PNG');\r\n\r\n\t\t\t\t\tlet pdf = new jsPDF('p', 'pt', 'a4');\r\n\r\n\t\t\t\t\tconst logoGTM = './assets/media/logos/logo-gtm.png'\r\n\t\t\t\t\tconst logoGTMX = 20;\r\n\t\t\t\t\tconst logoGTMY = 15;\r\n\t\t\t\t\tconst logoGTMWidth = 180;\r\n\t\t\t\t\tconst logoGTMHeight = 80;\r\n\r\n\t\t\t\t\tpdf.addImage(logoGTM, 'PNG', logoGTMX, logoGTMY, logoGTMWidth, logoGTMHeight, 'MEDIUM');\r\n\r\n\t\t\t\t\tpdf.addImage(logoGTM, 'PNG', logoGTMX, logoGTMY, logoGTMWidth, logoGTMHeight, 'MEDIUM');\r\n\r\n\t\t\t\t\tconst logoGTMWater = './assets/media/logos/marca-de-agua.png'\r\n\t\t\t\t\tconst logoGTMWaterX = 15;\r\n\t\t\t\t\tconst logoGTMWaterY = 130;\r\n\t\t\t\t\tconst logoGTMWaterProp = (pdf as any).getImageProperties(logoGTMWater);\r\n\t\t\t\t\tconst logoGTMWaterWidth = pdf.internal.pageSize.getWidth() - 2 * logoGTMWaterX;\r\n\t\t\t\t\tconst logoGTMWaterHeight = (logoGTMWaterProp.height * logoGTMWaterWidth) / logoGTMWaterProp.width;\r\n\t\t\t\t\tpdf.addImage(logoGTMWater, 'PNG', logoGTMWaterX, logoGTMWaterY, logoGTMWaterWidth, logoGTMWaterHeight, 'SLOW');\r\n\r\n\t\t\t\t\tpdf.setFontSize(18);\r\n\t\t\t\t\tpdf.setFont('', 'bold');\r\n\r\n\t\t\t\t\tpdf.text('Informacion Estadística del Dispositivo', 150, 120);\r\n\t\t\t\t\tpdf.text('Inicio: ' + FECHA_INICIAL + ' - Fin: ' + FECHA_FINAL, 65, 145);\r\n\r\n\r\n\t\t\t\t\tconst PROPERTIES = (pdf as any).getImageProperties(velocidadesImg);\r\n\t\t\t\t\tconst WIDTH = pdf.internal.pageSize.getWidth() - 2 * 15;\r\n\t\t\t\t\tconst HEIGHT = (PROPERTIES.height * WIDTH) / PROPERTIES.width;\r\n\t\t\t\t\tconst GRAFICAS_Y = 165\r\n\r\n\t\t\t\t\tpdf.setFontSize(14);\r\n\t\t\t\t\tpdf.setFont('sans-serif', 'bold');\r\n\r\n\t\t\t\t\tpdf.addImage(velocidadesImg, 'PNG', 15, GRAFICAS_Y, WIDTH, 350); // WIDTH, HEIGHT\r\n\r\n\t\t\t\t\tlet texPosition = GRAFICAS_Y + 350 + 15\r\n\t\t\t\t\tpdf.text('Datos del Dispositivo', 90, texPosition);\r\n\r\n\t\t\t\t\ttexPosition = texPosition + 15;\r\n\t\t\t\t\tpdf.setFont('sans-serif', 'normal')\r\n\t\t\t\t\tpdf.text('Vehículo:', 90, texPosition);\r\n\t\t\t\t\tpdf.text(MARCA + ', ' + MODELO, 340, texPosition);\r\n\r\n\t\t\t\t\ttexPosition = texPosition + 15;\r\n\t\t\t\t\tpdf.text('Placa:', 90, texPosition);\r\n\t\t\t\t\tpdf.text(PLACA, 340, texPosition);\r\n\r\n\t\t\t\t\ttexPosition = texPosition + 15;\r\n\t\t\t\t\tpdf.text('Económico:', 90, texPosition);\r\n\t\t\t\t\tpdf.text(ECONOMICO, 340, texPosition);\r\n\r\n\t\t\t\t\ttexPosition = texPosition + 15;\r\n\t\t\t\t\tpdf.text('Número de Serie:', 90, texPosition);\r\n\t\t\t\t\tpdf.text(SERIE, 340, texPosition);\r\n\r\n\t\t\t\t\ttexPosition = texPosition + 15;\r\n\t\t\t\t\tpdf.text('Año:', 90, texPosition);\r\n\t\t\t\t\tpdf.text(ANIO + '', 340, texPosition);\r\n\r\n\t\t\t\t\ttexPosition = texPosition + 15;\r\n\t\t\t\t\tpdf.text('Color:', 90, texPosition);\r\n\t\t\t\t\tpdf.text(COLOR, 340, texPosition);\r\n\r\n\t\t\t\t\ttexPosition = texPosition + 15;\r\n\t\t\t\t\tpdf.text('Descripción:', 90, texPosition);\r\n\t\t\t\t\tpdf.text(DESCRIPCION, 340, texPosition);\r\n\r\n\t\t\t\t\ttexPosition = texPosition + 15;\r\n\t\t\t\t\tlet listaDireccion = direccion.split(',');\r\n\t\t\t\t\tif (listaDireccion.length > 2) {\r\n\t\t\t\t\t\tconst DIRECCION = listaDireccion[0] + ', ' + listaDireccion[1];\r\n\t\t\t\t\t\tlet direccion2: string = ', ';\r\n\r\n\t\t\t\t\t\tpdf.text('Dirección:', 90, texPosition);\r\n\t\t\t\t\t\tpdf.text(DIRECCION, 340, texPosition);\r\n\r\n\t\t\t\t\t\tfor (let i = 2; i < listaDireccion.length; i++) {\r\n\t\t\t\t\t\t\tdireccion2 = listaDireccion[i] + direccion2;\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\tpdf.text(direccion2, 85, texPosition + 15);\r\n\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tpdf.text('Dirección:', 90, texPosition);\r\n\t\t\t\t\t\tpdf.text(direccion, 340, texPosition);\r\n\t\t\t\t\t}\r\n\r\n\r\n\t\t\t\t\tpdf.setFontSize(12);\r\n\t\t\t\t\tpdf.setFont('sans-serif', 'bold');\r\n\t\t\t\t\tpdf.text('GTM Tecnología S.A. de C.V.', 220, 795);\r\n\t\t\t\t\tpdf.text('Carr. Temixco - Emiliano Zapata ext. 17 int. 3B Col. Palo Escrito, Emiliano Zapata, Mor, Mex. C.P. 62760', 22, 810);\r\n\t\t\t\t\tpdf.text('Tel. +52 7773200301, Whatsapp: +52 7771351886, soporte.star@growtec.com.mx', 65, 825);\r\n\r\n\r\n\t\t\t\t\tconst nombreArchivo = 'Información_Estadística'\r\n\t\t\t\t\tpdf.save(nombreArchivo + '.pdf');\r\n\t\t\t\t\tthis.loadingVisible = false;\r\n\r\n\r\n\r\n\t\t\t\t}\r\n\t\t\t);\r\n\t\t}, 1);\r\n\r\n\t}\r\n\r\n\r\n\tvalidarInfo(valor) {\r\n\t\tlet val = 'Sin Datos'\r\n\r\n\t\tif (valor) {\r\n\t\t\tval = valor;\r\n\t\t}\r\n\r\n\t\treturn val;\r\n\t}\r\n\r\n}\r\n","
\r\n\t\r\n\t\r\n\t\r\n\t\r\n\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t\t

Histórico de Posiciones

\r\n\t\t
\r\n\t\t\r\n\t
\r\n
\r\n\r\n\t\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t

{{descripcion.descripcion}}

\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\tEspecifique un rango de tiempo en el cual desea obtener ubicaciones del vehiculo\r\n\t\t\t\t\tseleccionado.\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t \r\n\t\t\t\t\t\r\n\t\t\t\t\t \r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t\t
\r\n\t\t\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t \r\n\t\t\t\t\t\t \r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\r\n\t\t\t
\r\n\t\t
\r\n\t\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t{{v.data.velocidad}} km/h\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n\r\n\r\n\r\n","import { GraficaEstadisticaVehiculoComponent } from './grafica-estadistica-vehiculo/grafica-estadistica-vehiculo.component';\r\nimport { AuthService } from './../../../../../auth/auth.service';\r\nimport { posiciones, reportePosiciones } from './../../../../../../_entities/coordenadas/ReportePosiciones';\r\nimport { finalize } from 'rxjs/operators';\r\nimport { MapaService } from './../../../../services/mapa.service';\r\nimport { DatePipe } from '@angular/common';\r\nimport { VehiculosService } from './../../../../services/vehiculos.service';\r\nimport { MatDialog, MAT_DIALOG_DATA, MatDialogRef, MatDialogConfig } from '@angular/material';\r\nimport { DxDataGridComponent, DxValidationGroupComponent } from 'devextreme-angular';\r\nimport { Component, Inject, OnInit, ViewChild } from '@angular/core';\r\nimport { GaleriaVideoService } from './../../../../services/galeria-video.service';\r\nimport { Autos } from './../../../../../../_entities/autos/Autos';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { ALERTAS, IGNICIONES } from './../../../../../../_entities/estados';\r\nimport { ReproduccionComponent } from '../reproduccion/reproduccion.component';\r\nimport { environment } from './../../../../../../../environments/environment';\r\n\r\n@Component({\r\n\tselector: 'kt-historico-posiciones-vehiculo',\r\n\ttemplateUrl: './historico-posiciones-vehiculo.component.html',\r\n\tstyleUrls: ['./historico-posiciones-vehiculo.component.scss']\r\n})\r\nexport class HistoricoPosicionesVehiculoComponent implements OnInit {\r\n\t@ViewChild(DxDataGridComponent, { static: false }) dataGrid: DxDataGridComponent;\r\n\t@ViewChild('targetGroup', { static: false }) validationGroup: DxValidationGroupComponent;\r\n\r\n\tloadingVisible = false;\r\n\tpublic graficar: reportePosiciones;\r\n\tpublic reportePos: posiciones[] = [];\r\n\t\r\n\tpublic usuario;\r\n\tpublic idCliente;\r\n\tpublic HWUser;\r\n\tpublic idVehiculo;\r\n\tpublic descripcion;\r\n\tpublic idUsuario;\r\n\r\n\tpublic fechaInicio;\r\n\tpublic fechaFin;\r\n\r\n\tpublic showFilterRow: boolean;\r\n\tpublic showTable: boolean = false;\r\n\r\n\tpublic datosReporte = [];\r\n\tisDisable: boolean = true;\r\n\r\n\tpublic alDia = false;\r\n\r\n\tpublic botonGraficasDisabled: boolean = true;\r\n\r\n\tconstructor(private vehiculosService: VehiculosService,\r\n\t\tprivate authService: AuthService,\r\n\t\tprivate datepipe: DatePipe,\r\n\t\tprivate toastService: ToastrService,\r\n\t\tprivate mapaService: MapaService,\r\n\t\tprivate dialog: MatDialog,\r\n\t\t@Inject(MAT_DIALOG_DATA) public data: any,\r\n\t\tpublic dialogRef: MatDialogRef) {\r\n\t\tthis.showFilterRow = true;\r\n\t\tthis.orderHeaderFilter = this.orderHeaderFilter.bind(this);\r\n\t}\r\n\r\n\tngOnInit() {\r\n\t\tthis.usuario = this.authService.getUser();\r\n\t\tthis.HWUser = this.authService.getHWUser();\r\n\r\n\t\tif (JSON.parse(sessionStorage.getItem('historico'))) {\r\n\t\t\tthis.botonGraficasDisabled = false;\r\n\t\t\tconst datosReporte = JSON.parse(sessionStorage.getItem('historico'));\r\n\t\t\tthis.descripcion = JSON.parse(sessionStorage.getItem('data'));\r\n\r\n\r\n\t\t\tthis.reportePos = datosReporte.posiciones;\r\n\t\t\tthis.graficar = datosReporte;\r\n\r\n\t\t\tthis.idVehiculo = this.descripcion.id;\r\n\t\t\tthis.idCliente = this.descripcion.idCliente;\r\n\r\n\t\t\tthis.reportePos.forEach(reporte => {\r\n\t\t\t\tlet link = `${environment.EXTERNAL_MAP}/ubicar?lat=${reporte.lat}&lng=${reporte.lng}`\r\n\r\n\t\t\t\tthis.datosReporte.push({\r\n\t\t\t\t\t'Ubicacion': {\r\n\t\t\t\t\t\tf: '=HYPERLINK(\"' + link + '\",\"Ubicar\")',\r\n\t\t\t\t\t\tv: link\r\n\t\t\t\t\t},\r\n\t\t\t\t\t'Fecha': reporte.fecha,\r\n\t\t\t\t\t'Placa': reporte.placas,\r\n\t\t\t\t\t'Ignición': reporte.ignicion,\r\n\t\t\t\t\t'Estado': reporte.estado,\r\n\t\t\t\t\t'Velocidad': (reporte.velocidad + ' km/h'),\r\n\t\t\t\t\t'Latitud': reporte.lat,\r\n\t\t\t\t\t'Longitud': reporte.lng\r\n\t\t\t\t});\r\n\t\t\t});\r\n\r\n\t\t\tif (this.datosReporte.length > 0) {\r\n\t\t\t\tthis.isDisable = false;\r\n\t\t\t\tthis.showTable = true;\r\n\t\t\t}\r\n\r\n\t\t} else {\r\n\t\t\tthis.descripcion = this.data;\r\n\t\t\tthis.idVehiculo = this.data.id;\r\n\t\t\tthis.idCliente = this.descripcion.idCliente;\r\n\t\t}\r\n\r\n\r\n\t}\r\n\r\n\treportePosicion(fechaInicio, fechaFin) {\r\n\t\tif (this.validationGroup.instance.validate().isValid || this.alDia) {\r\n\t\t\tthis.loadingVisible = true;\r\n\t\t\tconst FECHA_INICIO = this.datepipe.transform(fechaInicio, 'yyyy-MM-dd HH:mm:ss');\r\n\t\t\tconst FECHA_FINAL = this.datepipe.transform(fechaFin, 'yyyy-MM-dd HH:mm:ss');\r\n\r\n\t\t\tthis.mapaService.tipoProducto = 'vehiculo';\r\n\t\t\tthis.mapaService.historicoFechas = [FECHA_INICIO, FECHA_FINAL];\r\n\r\n\t\t\tif (this.descripcion.idCliente != 39) {\r\n\t\t\t\tthis.vehiculosService.getReporteHistorico(this.idVehiculo, FECHA_INICIO, FECHA_FINAL).pipe(\r\n\t\t\t\t\tfinalize(\r\n\t\t\t\t\t\t() => {\r\n\t\t\t\t\t\t\tthis.botonGraficasDisabled = false;\r\n\t\t\t\t\t\t\tthis.loadingVisible = false;\r\n\t\t\t\t\t\t\tthis.alDia = false;\r\n\t\t\t\t\t\t\tthis.cerrarPopup();\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t)\r\n\t\t\t\t).subscribe(\r\n\t\t\t\t\t(reporte: reportePosiciones) => {\r\n\t\t\t\t\t\tif (reporte.posiciones.length > 0) {\r\n\t\t\t\t\t\t\treporte.posiciones.map(dato => {\r\n\t\t\t\t\t\t\t\tlet ignicion = IGNICIONES.find(ignicion => ignicion.id === dato.ignicion);\r\n\t\t\t\t\t\t\t\tdato.ignicion = ignicion.nombre;\r\n\r\n\t\t\t\t\t\t\t\tlet estado = ALERTAS.find(alerta => alerta.id == dato.estado);\r\n\t\t\t\t\t\t\t\tdato.estado = estado.nombre;\r\n\t\t\t\t\t\t\t\tdato.icono = estado.icono;\r\n\r\n\t\t\t\t\t\t\t\tdato.fecha = this.datepipe.transform(dato.fecha, 'dd/MM/yyyy hh:mm:ss a');\r\n\t\t\t\t\t\t\t});\r\n\r\n\t\t\t\t\t\t\tsessionStorage.setItem('historico', JSON.stringify(reporte));\r\n\t\t\t\t\t\t\tsessionStorage.setItem('data', JSON.stringify(this.descripcion));\r\n\r\n\t\t\t\t\t\t\tthis.mapaService.posicionesReporte = reporte.posiciones;\r\n\t\t\t\t\t\t\tthis.mapaService.datosGenerales = this.descripcion;\r\n\t\t\t\t\t\t\tthis.mapaService.pintarMarcadoresHistorico();\r\n\r\n\t\t\t\t\t\t\t/**Validacion para cambiar el estilo de los botones en el mapa */\r\n\t\t\t\t\t\t\tthis.mapaService.estadoHistorico = true;\r\n\t\t\t\t\t\t\tthis.mapaService.validarEstadoHistorico();\r\n\t\t\t\t\t\t\tthis.mapaService.abrirPopupRecorrido();\r\n\r\n\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tthis.toastService.info('No existen datos disponibles')\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t}\r\n\t\t\t\t);\r\n\t\t\t}\r\n\t\t\telse {\r\n\t\t\t\tthis.reportePosicionDVR(FECHA_INICIO, FECHA_FINAL);\r\n\t\t\t}\r\n\r\n\t\t} else {\r\n\t\t\tthis.toastService.warning('Existen campos requerídos vacíos')\r\n\r\n\t\t}\r\n\t}\r\n\r\n\treportePosicionDVR(FECHA_INICIO, FECHA_FINAL) {\r\n\t\tconst pageNum = '-1';\r\n\t\tconst pageCount = -1;\r\n\r\n\t\tthis.vehiculosService.obtenerAutosCamara( pageNum, pageCount, FECHA_INICIO, FECHA_FINAL, this.data.imeiFk).pipe(\r\n\t\t\tfinalize(\r\n\t\t\t\t() => {\r\n\t\t\t\t\tthis.botonGraficasDisabled = false;\r\n\t\t\t\t\tthis.loadingVisible = false;\r\n\t\t\t\t\tthis.alDia = false;\r\n\t\t\t\t\tthis.cerrarPopup();\r\n\t\t\t\t}\r\n\t\t\t)\r\n\t\t).subscribe(\r\n\t\t\t(response) => {\r\n\t\t\t\tif (response.data != null) {\r\n\t\t\t\t\tlet reporteHistorico = [];\r\n\t\t\t\t\tresponse.data.forEach((dato, index) => {\r\n\t\t\t\t\t\tlet ignicion = 0;\r\n\t\t\t\t\t\tlet estado = 0;\r\n\r\n\t\t\t\t\t\tif (Number(dato.speed) > 5) {\r\n\t\t\t\t\t\t\tignicion = 1;\r\n\t\t\t\t\t\t\testado = 1;\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\tlet reporte: posiciones = {\r\n\t\t\t\t\t\t\tfecha: dato.dtu,\r\n\t\t\t\t\t\t\tignicion: ignicion,\r\n\t\t\t\t\t\t\testado: estado,\r\n\t\t\t\t\t\t\tvelocidad: Math.round(dato.speed),\r\n\t\t\t\t\t\t\tlat: Number(dato.latitude),\r\n\t\t\t\t\t\t\tlng: Number(dato.longitude),\r\n\t\t\t\t\t\t\tvehiculo: response.vehiculo.vehiculo,\r\n\t\t\t\t\t\t\tid: index,\r\n\t\t\t\t\t\t\tplacas: response.vehiculo.placas,\r\n\t\t\t\t\t\t\teconomico: response.vehiculo.economico,\r\n\t\t\t\t\t\t\tmarca: response.vehiculo.marca,\r\n\t\t\t\t\t\t\tmodelo: response.vehiculo.modelo,\r\n\t\t\t\t\t\t\ticono: '',\r\n\t\t\t\t\t\t\tfechaInicial: '',\r\n\t\t\t\t\t\t\tfechaFinal: '',\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\treporteHistorico.push(reporte);\r\n\t\t\t\t\t});\r\n\r\n\t\t\t\t\treporteHistorico.map(dato => {\r\n\t\t\t\t\t\tlet ignicion = IGNICIONES.find(ignicion => ignicion.id === dato.ignicion);\r\n\t\t\t\t\t\tdato.ignicion = ignicion.nombre;\r\n\r\n\t\t\t\t\t\tlet estado = ALERTAS.find(alerta => alerta.id == dato.estado);\r\n\t\t\t\t\t\tdato.estado = estado.nombre;\r\n\t\t\t\t\t\tdato.icono = estado.icono;\r\n\t\t\t\t\t})\r\n\r\n\t\t\t\t\tconst reportePosiciones: reportePosiciones = {\r\n\t\t\t\t\t\ttotalDistancia: response.distanciaTotal,\r\n\t\t\t\t\t\tposiciones: reporteHistorico,\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tsessionStorage.setItem('historico', JSON.stringify(reportePosiciones));\r\n\t\t\t\t\tsessionStorage.setItem('data', JSON.stringify(response.vehiculo));\r\n\r\n\t\t\t\t\tthis.mapaService.posicionesReporte = reporteHistorico;\r\n\t\t\t\t\tthis.mapaService.datosGenerales = response.vehiculo;\r\n\t\t\t\t\tthis.mapaService.pintarMarcadoresHistorico();\r\n\t\t\t\t\tconst botonesRecorrido = document.getElementById('botonesRecorrido');\r\n\t\t\t\t\t//botonesRecorrido.style.display = 'block';\r\n\r\n\t\t\t\t\t/**Validacion para cambiar el estilo de los botones en el mapa */\r\n\t\t\t\t\tthis.mapaService.estadoHistorico = true;\r\n\t\t\t\t\tthis.mapaService.validarEstadoHistorico();\r\n\t\t\t\t\tthis.mapaService.abrirPopupRecorrido();\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis.toastService.info('No existen datos disponibles')\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t);\r\n\r\n\t}\r\n\r\n\treporteAlDia() {\r\n\t\tthis.alDia = true;\r\n\t\tlet fechaInicial = new Date().toString();\r\n\t\tlet fechaFinal = new Date().toString();\r\n\r\n\t\tfechaInicial = this.datepipe.transform(fechaInicial, 'yyyy-MM-dd 00:00:00');\r\n\t\tfechaFinal = this.datepipe.transform(fechaFinal, 'yyyy-MM-dd HH:mm:ss');\r\n\r\n\t\tthis.reportePosicion(fechaInicial, fechaFinal);\r\n\r\n\t}\r\n\r\n\r\n\tclearFilter() {\r\n\t\tthis.dataGrid.instance.clearFilter();\r\n\t}\r\n\r\n\r\n\tpublic ubicarPuntoHistorico(data) {\r\n\t\tthis.mapaService.ubicarPuntoHistorico(data);\r\n\t}\r\n\r\n\tpublic minimizarPopup() {\r\n\t\tthis.dialogRef.addPanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic maximizarPopup() {\r\n\t\tthis.dialogRef.removePanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic cerrarPopup() {\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n\r\n\r\n\t/**Ver Graficas */\r\n\tverGraficas() {\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.autoFocus = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\t\tdialogConfig.width = \"54%\";\r\n\t\tdialogConfig.panelClass = 'custom-modalbox';\r\n\t\tdialogConfig.closeOnNavigation = true;\r\n\t\tdialogConfig.hasBackdrop = false;\r\n\t\tdialogConfig.data = this.graficar;\r\n\t\tthis.dialog.open(GraficaEstadisticaVehiculoComponent, dialogConfig);\r\n\t}\r\n\r\n\treproducciones() {\r\n\t\tthis.cerrarPopup();\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.autoFocus = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\t\tdialogConfig.width = \"54%\";\r\n\t\tdialogConfig.panelClass = 'custom-modalbox';\r\n\t\tdialogConfig.closeOnNavigation = true;\r\n\t\tdialogConfig.hasBackdrop = false;\r\n\t\tdialogConfig.data = this.descripcion\r\n\t\tthis.dialog.open(ReproduccionComponent, dialogConfig);\r\n\t}\r\n\r\n\torderHeaderFilter(data) {\r\n\t\tdata.dataSource.postProcess = (results) => {\r\n\t\t\tresults.push({\r\n\t\t\t\ttext: \"Weekends\",\r\n\t\t\t\tvalue: \"weekends\"\r\n\t\t\t});\r\n\t\t\treturn results;\r\n\t\t};\r\n\t}\r\n\r\n\r\n}\r\n","
\r\n\t\r\n\t\r\n\t\r\n\t\r\n\t
\r\n\t\t\r\n\t\t

{{datos.descripcion}}

\r\n\t
\r\n\t\r\n
\r\n
\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\tCliente: {{datos.cliente}}
\r\n\t\t\t\tPlaca: {{datos.placas}}
\r\n\t\t\t\tEconomico:\r\n\t\t\t\t{{datos.economico}}
\r\n\t\t\t\tSerie:\r\n\t\t\t\t{{datos.numeroSerie}}
\r\n\t\t\t\t Marca: {{datos.marca}}
\r\n\t\t\t\t Modelo: {{datos.modelo}}
\r\n\t\t\t\tAño: {{datos.anio}}
\r\n\t\t\t\tColor: {{datos.color}}
\r\n\t\t\t\tDescripción:\r\n\t\t\t\t{{datos.descripcion}}
\r\n\t\t\t\tIgnición: {{ignicion}}
\r\n\t\t\t\tVelocidad:\r\n\t\t\t\t{{datos.velocidad}}\r\n\t\t\t\tKm/h
\r\n\t\t\t\tFecha y Hora: {{fecha}}\r\n\t\t\t\t{{hora}}
\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\tCapacidad:\r\n\t\t\t\t\t{{datos.capacidadTanque}} L\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\tNivel de combustible:\r\n\t\t\t\t\t{{datos.combustible}} L\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\tLatitud:\r\n\t\t\t\t\t{{datos.lat}}\r\n\t\t\t\t
\r\n\t\t\t\tLongitud:\r\n\t\t\t\t\t{{datos.lng}}\r\n\t\t\t\t
\r\n\t\t\t\tGeocerca:\r\n\t\t\t\t{{geocercaAsignada}}
\r\n\t\t\t\tDirección: {{direccion}}
\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t \r\n\t\t\t\t \r\n\t\t\t\t \r\n\t\t\t\t \r\n\t\t\t\t \r\n\r\n\t\t\t
\r\n\t\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\t \r\n\t\t\t\t\r\n\r\n\r\n\t\t\t\t \r\n\r\n\t\t\t\t \r\n\t\t\t\t \r\n\t\t\t\t \r\n\r\n\t\t\t\t \r\n\r\n\t\t\t
\r\n\t\t
\r\n\t\t\r\n\t
","import { GaleriaVehiculoComponent } from './../galeria-vehiculo/galeria-vehiculo.component';\r\nimport { HistorialVelocidadesVehiculoComponent } from './../historial-velocidades-vehiculo/historial-velocidades-vehiculo.component';\r\nimport { PasoPuntoVehiculoComponent } from './../paso-punto-vehiculo/paso-punto-vehiculo.component';\r\nimport { HistoricoPosicionesVehiculoComponent } from './../historico-posiciones-vehiculo/historico-posiciones-vehiculo.component';\r\nimport { Permiso } from './../../../../../../_entities/Enums/permiso.enum';\r\nimport { DatePipe } from '@angular/common';\r\nimport { MapaService } from './../../../../services/mapa.service';\r\nimport { Autos } from './../../../../../../_entities/autos/Autos';\r\nimport { MatDialog, MatDialogRef, MAT_DIALOG_DATA, MatDialogConfig } from '@angular/material';\r\nimport { Component, Inject, OnInit } from '@angular/core';\r\nimport { StreetViewComponent } from '../../street-view/street-view.component';\r\nimport { GaleriaVideosComponent } from '../galeria-videos/galeria-videos.component';\r\nimport { DentroGeocercaComponent } from '../dentro-geocerca/dentro-geocerca.component';\r\nimport { FueraGeocercaComponent } from '../fuera-geocerca/fuera-geocerca.component';\r\nimport { GaleriaNuevoDispositivoComponent } from '../galeria-nuevo-dispositivo/galeria-nuevo-dispositivo.component';\r\nimport { ModalImagenComponent } from '../../../../../mantenimiento/components/modal-imagen/modal-imagen.component';\r\nimport { PerfiloperadorComponent } from '../perfiloperador/perfiloperador.component';\r\nimport { HistoricoCombustibleComponent } from '../historico-combustible/historico-combustible.component';\r\n\r\n@Component({\r\n\tselector: 'kt-informacion-vehiculo',\r\n\ttemplateUrl: './informacion-vehiculo.component.html',\r\n\tstyleUrls: ['./informacion-vehiculo.component.scss']\r\n})\r\nexport class InformacionVehiculoComponent implements OnInit {\r\n\tpublic permisoUbicarAutoModal: string;\r\n\tpublic permisoHistoricoAutoModal: string;\r\n\tpublic permisoStreetViewAutoModal: string;\r\n\tpublic permisoPasoPorPuntoAutoModal: string;\r\n\tpublic permisoMensajesAutoModal: string;\r\n\tpublic permisoGraficaAutoModal: string\r\n\tpublic permisoGaleriaAutoModal: string;\r\n\tpublic permisoVisualizarVideos: string;\r\n\r\n\tpublic datos: Autos;\r\n\tpublic direccion = \"\";\r\n\tpublic ignicion = \"\";\r\n\tpublic fecha = \"\";\r\n\tpublic hora = \"\";\r\n\tpublic idCliente;\r\n\tpublic geocercaAsignada: string = '';\r\n\tconstructor(private mapaService: MapaService,\r\n\t\tpublic datePipe: DatePipe,\r\n\t\tpublic dialog: MatDialog,\r\n\t\tpublic dialogRef: MatDialogRef,\r\n\t\t@Inject(MAT_DIALOG_DATA) public data: Autos) { }\r\n\r\n\tngOnInit() {\r\n\t\tthis.obtenerPermisosAutoModal();\r\n\t\tthis.obtenerDatosVehiculo(this.data);\r\n\t}\r\n\r\n\tasync obtenerDatosVehiculo(datos) {\r\n\t\tthis.datos = datos;\r\n\t\tthis.idCliente = this.datos.idCliente;\r\n\t\tconsole.log(this.datos)\r\n\t\tif (this.data.ignicion === 0) {\r\n\t\t\tthis.ignicion = \"Apagado\"\r\n\t\t} else if (this.data.ignicion === 1) {\r\n\t\t\tthis.ignicion = \"Encendido\"\r\n\t\t}\r\n\r\n\t\tif (this.data.geocercas !== null) {\r\n\t\t\tif (this.data.geocercas.length > 0) {\r\n\t\t\t\tdatos.geocercas.forEach(geocerca => {\r\n\t\t\t\t\tthis.geocercaAsignada = this.geocercaAsignada + geocerca.nombre + ', ';\r\n\t\t\t\t});\r\n\r\n\t\t\t\tthis.geocercaAsignada = this.geocercaAsignada.slice(0, -1);\r\n\t\t\t\tthis.geocercaAsignada = this.geocercaAsignada.slice(0, -1);\r\n\r\n\t\t\t} else {\r\n\t\t\t\tthis.geocercaAsignada = 'Sin asignación';\r\n\t\t\t}\r\n\r\n\t\t} else {\r\n\t\t\tthis.geocercaAsignada = 'Sin asignación'\r\n\t\t}\r\n\r\n\t\tthis.fecha = this.datePipe.transform(this.data.fechaHoraUltimaPosicion, \"yyyy-MM-dd\");\r\n\t\tthis.hora = this.datePipe.transform(this.data.fechaHoraUltimaPosicion, \"h:mma\");\r\n\r\n\t\tawait this.mapaService.getDireccion([this.data.lng, this.data.lat]).then(\r\n\t\t\t(data: any) => {\r\n\t\t\t\tthis.direccion = data.display_name || \"Dirección Desconocida\";\r\n\t\t\t},\r\n\t\t\t() => {\r\n\t\t\t\tthis.direccion = \"Dirección Desconocida\";\r\n\t\t\t}\r\n\t\t);\r\n\r\n\t}\r\n\r\n\r\n\r\n\tverHistorico() {\r\n\t\tthis.dialogRef.close();\r\n\t\t/*Historico Popup*/\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.autoFocus = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\t\tdialogConfig.width = \"50%\";\r\n\t\tdialogConfig.panelClass = 'custom-modalbox';\r\n\t\tdialogConfig.closeOnNavigation = true;\r\n\t\tdialogConfig.hasBackdrop = false;\r\n\t\tdialogConfig.data = this.data\r\n\t\tthis.dialog.open(HistoricoPosicionesVehiculoComponent, dialogConfig);\r\n\t}\r\n\r\n\tverStreet() {\r\n\t\t/*StreetView Popup*/\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.autoFocus = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\t\tdialogConfig.panelClass = 'custom-modalbox';\r\n\t\tdialogConfig.width = \"45%\";\r\n\t\tdialogConfig.closeOnNavigation = true;\r\n\t\tdialogConfig.hasBackdrop = false;\r\n\t\tdialogConfig.data = this.data;\r\n\t\tthis.dialog.open(StreetViewComponent, dialogConfig);\r\n\t}\r\n\r\n\tverMensajes() {\r\n\t\t/*Mensajes*/\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.autoFocus = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\t\tdialogConfig.width = \"50%\";\r\n\t\tdialogConfig.panelClass = 'custom-modalbox';\r\n\t\tdialogConfig.closeOnNavigation = true;\r\n\t\tdialogConfig.hasBackdrop = false;\r\n\t\tdialogConfig.data = this.data\r\n\t\t//this.dialog.open(MensajesComponent, dialogConfig);\r\n\t}\r\n\r\n\tpasoPorPunto() {\r\n\t\t/*Paso por punto*/\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.autoFocus = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\t\tdialogConfig.width = \"50%\";\r\n\t\tdialogConfig.panelClass = 'custom-modalbox';\r\n\t\tdialogConfig.closeOnNavigation = true;\r\n\t\tdialogConfig.hasBackdrop = false;\r\n\t\tdialogConfig.data = this.data\r\n\t\tthis.dialog.open(PasoPuntoVehiculoComponent, dialogConfig);\r\n\t}\r\n\r\n\tdentroGeocerca() {\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.autoFocus = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\t\tdialogConfig.width = \"50%\";\r\n\t\tdialogConfig.panelClass = 'custom-modalbox';\r\n\t\tdialogConfig.closeOnNavigation = true;\r\n\t\tdialogConfig.hasBackdrop = false;\r\n\t\tdialogConfig.data = this.data\r\n\t\tthis.dialog.open(DentroGeocercaComponent, dialogConfig);\r\n\t}\r\n\r\n\tfueraGeocerca() {\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.autoFocus = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\t\tdialogConfig.width = \"50%\";\r\n\t\tdialogConfig.panelClass = 'custom-modalbox';\r\n\t\tdialogConfig.closeOnNavigation = true;\r\n\t\tdialogConfig.hasBackdrop = false;\r\n\t\tdialogConfig.data = this.data\r\n\t\tthis.dialog.open(FueraGeocercaComponent, dialogConfig);\r\n\t}\r\n\r\n\r\n\t/***ver Gráfica de velocidad*/\r\n\tverGrafica() {\r\n\t\t/*Paso por punto*/\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.autoFocus = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\t\tdialogConfig.width = \"50%\";\r\n\t\tdialogConfig.closeOnNavigation = true;\r\n\t\tdialogConfig.hasBackdrop = false;\r\n\t\tdialogConfig.panelClass = 'custom-modalbox';\r\n\t\tdialogConfig.data = this.data\r\n\t\tthis.dialog.open(HistorialVelocidadesVehiculoComponent, dialogConfig);\r\n\t}\r\n\r\n\t\r\n\t/***ver Gráfica de combustible*/\r\n\tverGraficaCombustible() {\r\n\t\t/*Paso por punto*/\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.autoFocus = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\t\tdialogConfig.width = \"57%\";\r\n\t\tdialogConfig.closeOnNavigation = true;\r\n\t\tdialogConfig.hasBackdrop = false;\r\n\t\tdialogConfig.panelClass = 'custom-modalbox';\r\n\t\tdialogConfig.data = this.data\r\n\t\tthis.dialog.open(HistoricoCombustibleComponent, dialogConfig);\r\n\t}\r\n\r\n\r\n\t/**ver fotos */\r\n\tverFoto(imeiFk) {\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.autoFocus = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\t\tdialogConfig.width = \"50%\";\r\n\t\tdialogConfig.closeOnNavigation = true;\r\n\t\tdialogConfig.hasBackdrop = false;\r\n\t\tdialogConfig.panelClass = 'custom-modalbox';\r\n\t\tdialogConfig.data = imeiFk\r\n\t\tthis.dialog.open(GaleriaVehiculoComponent, dialogConfig);\r\n\t}\r\n\r\n\t\t/**ver fotos */\r\n\t\tverFotoNuevoDispositivo(imeiFk) {\r\n\t\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\t\tdialogConfig.autoFocus = true;\r\n\t\t\tdialogConfig.disableClose = true;\r\n\t\t\tdialogConfig.width = \"50%\";\r\n\t\t\tdialogConfig.closeOnNavigation = true;\r\n\t\t\tdialogConfig.hasBackdrop = false;\r\n\t\t\tdialogConfig.panelClass = 'custom-modalbox';\r\n\t\t\tdialogConfig.data = imeiFk\r\n\t\t\tthis.dialog.open(GaleriaNuevoDispositivoComponent, dialogConfig);\r\n\t\t}\r\n\r\n\r\n\r\n\r\n\tgaleriaVideos(imeiFk) {\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.autoFocus = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\t\tdialogConfig.width = \"50%\";\r\n\t\tdialogConfig.closeOnNavigation = true;\r\n\t\tdialogConfig.hasBackdrop = false;\r\n\t\tdialogConfig.panelClass = 'custom-modalbox';\r\n\t\tdialogConfig.data = imeiFk\r\n\t\tthis.dialog.open(GaleriaVideosComponent, dialogConfig);\r\n\t}\r\n\r\n\tubicarVehiculo() {\r\n\t\tthis.mapaService.verVehiculo(this.data);\r\n\t}\r\n\r\n\tpublic minimizarPopup() {\r\n\t\tthis.dialogRef.addPanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic maximizarPopup() {\r\n\t\tthis.dialogRef.removePanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic cerrarPopup() {\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n\r\n\tobtenerPermisosAutoModal() {\r\n\t\t//this.permisoUbicar = Permiso.\r\n\t\t//this.permisoHistorico = Permiso.\r\n\t\t//this.permisoStreetView = Permiso.street\r\n\t\t//this.permisoPasoPorPunto = Permiso.punto\r\n\t\tthis.permisoMensajesAutoModal = Permiso.ConsultarMensajes\r\n\t\t//this.permisoGrafica = Permiso.v\r\n\t\tthis.permisoGaleriaAutoModal = Permiso.VisualizarGaleria;\r\n\t\tthis.permisoVisualizarVideos = Permiso.VisualizarVideos;\r\n\t}\r\n\r\n\tpublic get Permiso() {\r\n\t\treturn Permiso;\r\n\t}\r\n\r\n\tmostrarOperador(imagenData) {\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.autoFocus = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\t\tdialogConfig.width = \"30%\";\r\n\t\tdialogConfig.closeOnNavigation = true;\r\n\t\tdialogConfig.hasBackdrop = false;\r\n\t\tdialogConfig.panelClass = 'custom-modalbox';\r\n\t\tthis.dialog.open(PerfiloperadorComponent,{data:imagenData}).afterClosed().subscribe(()=>{\r\n\t\r\n\t\t})\r\n\t\r\n\t\t}\r\n\r\n}\r\n","
\r\n\t\r\n\t\r\n\t\r\n\t\r\n\t
\r\n\t\t\r\n\t\t

Paso por Punto

\r\n\t
\r\n\t\r\n
\r\n\r\n\t\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t

Paso por punto

\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\tEspecifique un rango de tiempo en el cual desea obtener ubicaciones del vehiculo\r\n\t\t\t\t\tseleccionado.\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t\t\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t \r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t\t\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t\t{{d.data.descripcion}}\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t{{p.data.estado}}\r\n\t\t\t\t\t{{p.data.estado}}\r\n\t\t\t\t\t{{p.data.estado}}\r\n\t\t\t\t\t{{p.data.estado}}\r\n\t\t\t\t\t\r\n\t\t\t\t\t{{p.data.estado}}\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n\r\n\r\n\r\n","import { DatePipe } from '@angular/common';\r\nimport { MatDialog, MatDialogConfig, MatDialogRef, MAT_DIALOG_DATA } from '@angular/material';\r\nimport { Component, Inject, OnInit } from '@angular/core';\r\nimport { Autos } from './../../../../../../_entities/autos/Autos';\r\nimport { PasoPuntoService } from './../../../../../monitoreo/services/paso-punto.service';\r\nimport { PuntoInteres } from './../../../../../../_entities/puntos-interes/puntoInteres';\r\nimport { finalize } from 'rxjs/operators';\r\nimport { VehiculoPasoPunto } from './../../../../../../_entities/paso-punto/vehiculo-paso-punto';\r\nimport { MapaService } from './../../../../../monitoreo/services/mapa.service';\r\nimport { ALERTAS, IGNICIONES } from './../../../../../../_entities/estados';\r\nimport { MapaMarkerComponent } from '../../../mapa-marker/mapa-marker.component';\r\nimport { ToastrService } from 'ngx-toastr';\r\n\r\n@Component({\r\n\tselector: 'kt-paso-punto-vehiculo',\r\n\ttemplateUrl: './paso-punto-vehiculo.component.html',\r\n\tstyleUrls: ['./paso-punto-vehiculo.component.scss']\r\n})\r\nexport class PasoPuntoVehiculoComponent implements OnInit {\r\n\tpublic fechaInicio;\r\n\tpublic fechaFin;\r\n\tpublic puntosInteres: PuntoInteres[];\r\n\tpublic puntoInteres: Number;\r\n\tpublic reportePasoPunto: VehiculoPasoPunto[] = [];\r\n\tpublic showFilterRow: boolean;\r\n\tpublic idVehiculo: number;\r\n\tpublic loadingVisible: boolean = false;\r\n\tpublic datosReporte = [];\r\n\tisDisabled: boolean = true;\r\n\tpublic showTable: boolean = false;\r\n\r\n\tconstructor(private pasoPuntoService: PasoPuntoService,\r\n\t\tprivate dialog: MatDialog,\r\n\t\tprivate toastservice: ToastrService,\r\n\t\tpublic dialogRef: MatDialogRef,\r\n\t\t@Inject(MAT_DIALOG_DATA) public data: Autos,\r\n\t\tprivate datepipe: DatePipe) {\r\n\t\tthis.showFilterRow = true;\r\n\t\tthis.orderHeaderFilter = this.orderHeaderFilter.bind(this);\r\n\r\n\t}\r\n\r\n\tngOnInit() {\r\n\t\tthis.idVehiculo = this.data.id;\r\n\t\tthis.obtenerPuntosInteres();\r\n\t}\r\n\r\n\torderHeaderFilter(data) {\r\n\t\tdata.dataSource.postProcess = (results) => {\r\n\t\t\tresults.push({\r\n\t\t\t\ttext: \"Weekends\",\r\n\t\t\t\tvalue: \"weekends\"\r\n\t\t\t});\r\n\t\t\treturn results;\r\n\t\t};\r\n\t}\r\n\r\n\tobtenerPasoPunto(fechaInicio, fechaFin) {\r\n\t\tconst fechaInicial = this.datepipe.transform(fechaInicio, \"yyyy-MM-dd HH:mm:ss\");\r\n\t\tconst fechaFinal = this.datepipe.transform(fechaFin, \"yyyy-MM-dd HH:mm:ss\");\r\n\r\n\t\tlet ids = {\r\n\t\t\tid: [this.idVehiculo],\r\n\t\t\tidPunto: this.puntoInteres\r\n\t\t}\r\n\r\n\t\tthis.loadingVisible = true;\r\n\t\tthis.pasoPuntoService.obtenerPasoPuntoVehiculo(ids, fechaInicial, fechaFinal).pipe(\r\n\t\t\tfinalize(\r\n\t\t\t\t() => this.loadingVisible = false\r\n\t\t\t)\r\n\t\t).subscribe(\r\n\t\t\t(reporte: VehiculoPasoPunto[]) => {\r\n\t\t\t\treporte.map(r => {\r\n\t\t\t\t\tlet ignicion = IGNICIONES.find(ignicion => ignicion.id == r.ignicion);\r\n\t\t\t\t\tr.ignicion = ignicion.nombre;\r\n\r\n\t\t\t\t\tlet estado = ALERTAS.find(alerta => alerta.id == r.estado);\r\n\t\t\t\t\tr.estado = estado.nombre;\r\n\r\n\t\t\t\t\tr.distancia = Number(r.distancia).toFixed(2) + ' m'\r\n\r\n\t\t\t\t})\r\n\t\t\t\tthis.reportePasoPunto = reporte;\r\n\t\t\t\tthis.reportePasoPunto.forEach(punto => {\r\n\t\t\t\t\tthis.datosReporte.push({\r\n\t\t\t\t\t\t'Vehículo': punto.economico,\r\n\t\t\t\t\t\t'Placas': punto.placas,\r\n\t\t\t\t\t\t'Estado': punto.estado,\r\n\t\t\t\t\t\t'Ignición': punto.ignicion,\r\n\t\t\t\t\t\t'Fecha y Hora': punto.fechaHora,\r\n\t\t\t\t\t\t'Distancia': punto.distancia,\r\n\t\t\t\t\t\t'Punto': punto.punto\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t\t\tif (this.datosReporte.length > 0) {\r\n\t\t\t\t\tthis.isDisabled = false;\r\n\t\t\t\t\tthis.showTable = true;\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis.toastservice.info('No se encontraron datos');\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t)\r\n\t}\r\n\r\n\tobtenerPuntosInteres() {\r\n\t\tthis.pasoPuntoService.obtenerPuntosInteres().subscribe(\r\n\t\t\t(puntosInteres: PuntoInteres[]) => {\r\n\t\t\t\tthis.puntosInteres = puntosInteres;\r\n\t\t\t}\r\n\t\t)\r\n\t}\r\n\r\n\tubicarPunto(data: VehiculoPasoPunto) {\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.autoFocus = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\t\tdialogConfig.panelClass = 'custom-modalbox';\r\n\t\tdialogConfig.width = \"40%\";\r\n\t\tdialogConfig.closeOnNavigation = true;\r\n\t\tdialogConfig.hasBackdrop = false;\r\n\t\tdialogConfig.data = this.data;\r\n\t\tthis.dialog.open(MapaMarkerComponent, dialogConfig);\r\n\r\n\t}\r\n\r\n\tpublic minimizarPopup() {\r\n\t\tthis.dialogRef.addPanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic maximizarPopup() {\r\n\t\tthis.dialogRef.removePanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic cerrarPopup() {\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n\r\n}\r\n\r\n\r\n","
\r\n\t\r\n\t\r\n\t\r\n\t\r\n\t
\r\n\t\t\r\n\t\t

{{datos.nombreOperador}}

\r\n\t
\r\n\t\r\n\t\r\n\t\t \r\n\t\r\n
\r\n\r\n","import { Component, Inject, OnInit } from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material';\r\n\r\n@Component({\r\n selector: 'kt-perfiloperador',\r\n templateUrl: './perfiloperador.component.html',\r\n styleUrls: ['./perfiloperador.component.scss']\r\n})\r\nexport class PerfiloperadorComponent implements OnInit {\r\n public imagen;\r\n public datos;\r\n constructor(private dialogRef: MatDialogRef,\r\n\t\t@Inject(MAT_DIALOG_DATA) public data) { }\r\n\r\n ngOnInit() {\r\n this.imagen = this.data.fotoOperador.substring(19);\r\n this.datos =this.data;\r\n this.dialogRef.updateSize(\"25%\")\r\n }\r\n \r\n public minimizarPopup() {\r\n this.dialogRef.addPanelClass('displayNone');\r\n }\r\n \r\n public maximizarPopup() {\r\n this.dialogRef.removePanelClass('displayNone');\r\n }\r\n \r\n public cerrarPopup() {\r\n this.dialogRef.close();\r\n }\r\n }\r\n","
\r\n\t\r\n\t\r\n\t\r\n\t\r\n\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t\t

Reporte Diario

\r\n\t\t
\r\n\t\t\r\n\t
\r\n
\r\n\r\n\t\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t

{{vehiculoInfo.descripcion}}

\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\tEspecifique una fecha en el cual desea obtener informacion del vehículo.\r\n\t\t\t
\r\n\t\t
\r\n\t\t\r\n\t\t\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t \r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t\t\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\r\n\t
\r\n
\r\n\r\n\r\n\r\n","import { DatePipe } from '@angular/common';\r\nimport { Component, Inject, OnInit, ViewChild } from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material';\r\nimport { DxValidationGroupComponent } from 'devextreme-angular';\r\nimport { finalize } from 'rxjs/operators';\r\nimport { MapaService } from './../../../../../monitoreo/services/mapa.service';\r\nimport { Autos } from './../../../../../../_entities/autos/Autos';\r\nimport { ALERTAS } from './../../../../../../_entities/estados';\r\nimport { VehiculosService } from './../../../../services/vehiculos.service';\r\nimport { AuthService } from './../../../../../auth/auth.service';\r\nimport { reportePosiciones } from './../../../../../../_entities/coordenadas/ReportePosiciones';\r\n\r\n\r\n@Component({\r\n\tselector: 'kt-reproduccion',\r\n\ttemplateUrl: './reproduccion.component.html',\r\n\tstyleUrls: ['./reproduccion.component.scss']\r\n})\r\nexport class ReproduccionComponent implements OnInit {\r\n\t@ViewChild('targetGroup', { static: false }) validationGroup: DxValidationGroupComponent;\r\n\r\n\tpublic vehiculoInfo;\r\n\tpublic HWUser;\r\n\tpublic usuario;\r\n\tpublic loadingVisible: boolean = false;\r\n\tpublic reporteQ: any;\r\n\tpublic reportePos: any[] = [];\r\n\tpublic idVehiculo;\r\n\tpublic idCliente;\r\n\tpublic graficar: reportePosiciones[] = [];\r\n\tpublic datosReporte = [];\r\n\tpublic isDisable;\r\n\tpublic showTable;\r\n\r\n\tpublic fecha: Date = new Date();\r\n\tpublic horaInicial: Date = new Date();\r\n\tpublic horaFinal: Date = new Date();\r\n\r\n\tconstructor(public datepipe: DatePipe,\r\n\t\tpublic vehiculosService: VehiculosService,\r\n\t\tpublic authService: AuthService,\r\n\t\tpublic mapaService: MapaService,\r\n\t\tpublic dialogRef: MatDialogRef,\r\n\t\t@Inject(MAT_DIALOG_DATA) public data: any,) { }\r\n\r\n\tngOnInit() {\r\n\t\tthis.usuario = this.authService.getUser();\r\n\t\tthis.HWUser = this.authService.getHWUser()\r\n\t\tthis.vehiculoInfo = this.data;\r\n\r\n\t\tthis.horaInicial = new Date(this.datepipe.transform(this.fecha, 'yyyy-MM-dd 00:00:00'));\r\n\t\tthis.horaFinal = new Date(this.datepipe.transform(this.fecha, 'yyyy-MM-dd 23:59:59'));\r\n\r\n\t\tif (JSON.parse(sessionStorage.getItem('historico'))) {\r\n\t\t\tthis.reportePos = JSON.parse(sessionStorage.getItem('historico'))\r\n\t\t\tthis.vehiculoInfo = JSON.parse(sessionStorage.getItem('data'))\r\n\t\t\tthis.idVehiculo = this.vehiculoInfo.id;\r\n\t\t\tthis.idCliente = this.vehiculoInfo.idCliente;\r\n\t\t\tthis.graficar = this.reportePos;\r\n\t\t\tthis.graficar.map(grafica => {\r\n\t\t\t\t//grafica.economico = this.vehiculoInfo.descripcion\r\n\t\t\t})\r\n\t\t\tthis.reportePos.forEach(reporte => {\r\n\t\t\t\tthis.datosReporte.push({\r\n\t\t\t\t\t'Fecha': reporte.fecha,\r\n\t\t\t\t\t'Placa': reporte.placas,\r\n\t\t\t\t\t'Ignición': reporte.ignicion,\r\n\t\t\t\t\t'Estado': reporte.edo,\r\n\t\t\t\t\t'Velocidad': reporte.velocidad,\r\n\t\t\t\t\t'Latitud': reporte.lat,\r\n\t\t\t\t\t'Longitud': reporte.lng\r\n\t\t\t\t});\r\n\t\t\t});\r\n\r\n\t\t\tif (this.datosReporte.length > 0) {\r\n\t\t\t\tthis.isDisable = false;\r\n\t\t\t\tthis.showTable = true;\r\n\t\t\t}\r\n\r\n\t\t} else {\r\n\t\t\tthis.vehiculoInfo = this.data;\r\n\t\t\tthis.graficar.map(grafica => {\r\n\t\t\t\t//grafica.economico = this.data.descripcion\r\n\t\t\t})\r\n\t\t\tthis.idVehiculo = this.data.id;\r\n\t\t\tthis.idCliente = this.vehiculoInfo.idCliente;\r\n\t\t}\r\n\t}\r\n\r\n\tbuscarInformacion() {\r\n\t\tconst FECHA_INICIO = this.datepipe.transform(this.horaInicial, 'yyyy-MM-dd HH:mm:ss');\r\n\t\tconst FECHA_FINAL = this.datepipe.transform(this.horaFinal, 'yyyy-MM-dd HH:mm:ss');\r\n\r\n\t\tthis.mapaService.historicoFechas = [FECHA_INICIO, FECHA_FINAL];\r\n\t\tthis.mapaService.tipoProducto = 'reproduccion';\r\n\r\n\t\tthis.loadingVisible = true;\r\n\r\n\t\tconst pageNum = '-1';\r\n\t\tconst pageCount = -1\r\n\t\tthis.vehiculosService.obtenerAutosCamara( pageNum, pageCount, FECHA_INICIO, FECHA_FINAL, this.data.imeiFk).pipe(\r\n\t\t\tfinalize(\r\n\t\t\t\t() => {\r\n\t\t\t\t\tthis.loadingVisible = false\r\n\t\t\t\t\tthis.cerrarPopup()\r\n\t\t\t\t}\r\n\t\t\t)\r\n\t\t).subscribe(\r\n\t\t\t(response) => {\r\n\t\t\t\tlet locations = [];\r\n\t\t\t\tif (response.data != null) {\r\n\t\t\t\t\tresponse.data.forEach((dato, index) => {\r\n\t\t\t\t\t\tlet ignicion = 0;\r\n\t\t\t\t\t\tlet estado = 0\r\n\t\t\t\t\t\tif (Number(dato.speed) > 5) {\r\n\t\t\t\t\t\t\tignicion = 1;\r\n\t\t\t\t\t\t\testado = 1;\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\tlet formAux = {\r\n\t\t\t\t\t\t\tid: index,\r\n\t\t\t\t\t\t\tanio: response.vehiculo.anio,\r\n\t\t\t\t\t\t\tplacas: response.vehiculo.placas,\r\n\t\t\t\t\t\t\teconomico: response.vehiculo.economico,\r\n\t\t\t\t\t\t\tnumeroSerie: response.vehiculo.numeroSerie,\r\n\t\t\t\t\t\t\tcolor: response.vehiculo.color,\r\n\t\t\t\t\t\t\tdescripcion: response.vehiculo.descripcion,\r\n\t\t\t\t\t\t\timagen: response.vehiculo.imagen,\r\n\t\t\t\t\t\t\tmodelo: response.vehiculo.modelo,\r\n\t\t\t\t\t\t\testatus: response.vehiculo.estatus,\r\n\t\t\t\t\t\t\timeiFk: response.vehiculo.imeiFk,\r\n\t\t\t\t\t\t\tlat: Number(dato.latitude),\r\n\t\t\t\t\t\t\tlng: Number(dato.longitude),\r\n\t\t\t\t\t\t\testado: estado,\r\n\t\t\t\t\t\t\tignicion: ignicion,\r\n\t\t\t\t\t\t\tvelocidad: Math.round(dato.speed),\r\n\t\t\t\t\t\t\tdireccion: response.vehiculo.direccion,\r\n\t\t\t\t\t\t\todometro: response.vehiculo.odometro,\r\n\t\t\t\t\t\t\tmarca: response.vehiculo.marca,\r\n\t\t\t\t\t\t\tfechaHoraUltimaPosicion: response.vehiculo.fechaHoraUltimaPosicion,\r\n\t\t\t\t\t\t\testaEnMovimiento: response.vehiculo.estaEnMovimiento,\r\n\t\t\t\t\t\t\tfecha: dato.dtu,\r\n\t\t\t\t\t\t\tidPosicion: response.vehiculo.idPosicion,\r\n\t\t\t\t\t\t\tidCliente: response.vehiculo.idCliente\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\tlet estado2 = ALERTAS.find(alerta => alerta.id == index.estado);\r\n\t\t\t\t\t\tlet edo = estado2.nombre;\r\n\t\t\t\t\t\tlet ig = \"\";\r\n\t\t\t\t\t\tif (formAux.ignicion == 0) {\r\n\t\t\t\t\t\t\tig = \"Apagado\";\r\n\t\t\t\t\t\t} else if (formAux.ignicion == 1) {\r\n\t\t\t\t\t\t\tig = \"Encendido\";\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\tlet vel = `${formAux.velocidad} Km/h`\r\n\r\n\t\t\t\t\t\t//formAux.fecha = this.datepipe.transform(index.fecha, 'dd/MM/yyyy HH:ss a');\r\n\t\t\t\t\t\tthis.reporteQ = { placas: formAux.placas, fecha: formAux.fecha, ignicion: ig, estado: estado2, velocidad: formAux.velocidad, lat: formAux.lat, lng: formAux.lng, edo: edo };\r\n\t\t\t\t\t\tthis.reportePos.push(this.reporteQ)\r\n\r\n\t\t\t\t\t\tsessionStorage.setItem('historico', JSON.stringify(this.reportePos))\r\n\t\t\t\t\t\tsessionStorage.setItem('data', JSON.stringify(this.vehiculoInfo))\r\n\r\n\t\t\t\t\t\tlocations.push(formAux);\r\n\t\t\t\t\t});\r\n\r\n\r\n\t\t\t\t\tthis.mapaService.posicionesReporte = locations;\r\n\t\t\t\t\t/*let datosGenerales: Autos = {\r\n\t\t\t\t\t\tid: response.vehiculo.id,\r\n\t\t\t\t\t\tidCliente: response.vehiculo.idCliente,\r\n\t\t\t\t\t\tanio: response.vehiculo.anio,\r\n\t\t\t\t\t\tplacas: response.vehiculo.placas,\r\n\t\t\t\t\t\teconomico: response.vehiculo.economico,\r\n\t\t\t\t\t\tnumeroSerie: response.vehiculo.numeroSerie,\r\n\t\t\t\t\t\tcolor: response.vehiculo.color,\r\n\t\t\t\t\t\tdescripcion: response.vehiculo.descripcion,\r\n\t\t\t\t\t\timagen: response.vehiculo.imagen,\r\n\t\t\t\t\t\tmodelo: response.vehiculo.modelo,\r\n\t\t\t\t\t\testatus: response.vehiculo.estatus,\r\n\t\t\t\t\t\timeiFk: response.vehiculo.imeiFk,\r\n\t\t\t\t\t\tlat: 0,\r\n\t\t\t\t\t\tlng: 0,\r\n\t\t\t\t\t\testado: response.vehiculo.estado,\r\n\t\t\t\t\t\tignicion: response.vehiculo.ignicion,\r\n\t\t\t\t\t\tvelocidad: response.vehiculo.velocidad,\r\n\t\t\t\t\t\tdireccion: response.vehiculo.direccion,\r\n\t\t\t\t\t\todometro: response.vehiculo.odometro,\r\n\t\t\t\t\t\tmarca: response.vehiculo.marca,\r\n\t\t\t\t\t\tfechaHoraUltimaPosicion: response.vehiculo.fechaHoraUltimaPosicion,\r\n\t\t\t\t\t\testaEnMovimiento: response.vehiculo.estaEnMovimiento,\r\n\t\t\t\t\t\tGeocercas: [\r\n\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\tid: 0,\r\n\t\t\t\t\t\t\t\tnombre: ''\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t],\r\n\t\t\t\t\t}\r\n\t\t\t\t\t*/\r\n\t\t\t\t\tthis.mapaService.datosGenerales = this.vehiculoInfo;\r\n\t\t\t\t\tthis.mapaService.pintarMarcadoresHistorico();\r\n\t\t\t\t\tvar botonesRecorrido = document.getElementById('botonesRecorrido');\r\n\t\t\t\t\tbotonesRecorrido.style.display = 'block';\r\n\t\t\t\t\tthis.mapaService.valorLey = true;\r\n\t\t\t\t\tthis.mapaService.validarLey();\r\n\t\t\t\t\tthis.mapaService.abrirPopupRecorrido();\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t);\r\n\r\n\t}\r\n\r\n\tpublic ubicarPuntoHistorico(data) {\r\n\t\tthis.mapaService.ubicarPuntoHistorico(data);\r\n\t}\r\n\r\n\tpublic minimizarPopup() {\r\n\t\tthis.dialogRef.addPanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic maximizarPopup() {\r\n\t\tthis.dialogRef.removePanelClass('displayNone');\r\n\t}\r\n\r\n\tpublic cerrarPopup() {\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { Routes, RouterModule } from '@angular/router';\r\n\r\nimport { MonitoreoComponent } from './monitoreo.component';\r\n\r\nconst routes: Routes = [{ path: 'mapa', component: MonitoreoComponent }];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes)],\r\n exports: [RouterModule]\r\n})\r\nexport class MonitoreoRoutingModule { }\r\n","
\r\n\t
\r\n
\r\n
\r\n\t
\r\n
\r\n
\r\n
\r\n\t
\r\n\t\t\r\n\t\t\r\n\t\t\r\n\t\t\r\n\t\t\r\n\t\t\r\n\t\t\r\n\t\t\r\n\t\t\r\n\t\t\r\n\t
\r\n\t
\r\n
\r\n\r\n\r\n","import { ActivatedRoute } from '@angular/router';\r\nimport { TelefonosService } from './services/telefonos.service';\r\nimport { ActivoUltimaTransmision } from './../../_entities/activos/activo';\r\nimport { ActivosService } from './services/activos.service';\r\nimport { ContadorSemaforoService } from './services/contador-semaforo.service';\r\nimport { MicromedidoresService } from './services/micromedidores.service';\r\nimport { MedidoresService } from './services/medidores.service';\r\nimport { PuntosInteresService } from './services/puntos-interes.service';\r\nimport { finalize, take } from 'rxjs/operators';\r\nimport { VehiculosService } from './services/vehiculos.service';\r\nimport { User } from './../../_entities/User';\r\nimport { Autos } from './../../_entities/autos/Autos';\r\nimport { AuthService } from './../auth/auth.service';\r\nimport { IconosService } from './services/iconos.service';\r\nimport { MatDialog, MatDialogConfig } from '@angular/material';\r\nimport { MapaService } from './services/mapa.service';\r\nimport { Component, OnInit, AfterContentInit, OnDestroy } from '@angular/core';\r\nimport { TelefonoUltimaTransmision } from './../../_entities/telefonos/telefono';\r\nimport { jsPDF } from 'jspdf';\r\nimport html2canvas from 'html2canvas';\r\nimport { DatePipe } from '@angular/common';\r\nimport { GSM, GPS, ESTATUS, ALIMENTACION } from './../../_entities/estados';\r\nimport { HistoricoPosicionesVehiculoComponent } from './components/popups/vehiculos/historico-posiciones-vehiculo/historico-posiciones-vehiculo.component';\r\nimport { HistoricoPosicionesActivoComponent } from './components/popups/activos/historico-posiciones-activo/historico-posiciones-activo.component';\r\nimport { HistoricoPosicionesTelefonoComponent } from './components/popups/telefonos/historico-posiciones-telefono/historico-posiciones-telefono.component';\r\nimport { PuntosInteresModalComponent } from './components/dialogos/puntos-interes/puntos-interes-modal/puntos-interes-modal.component';\r\nimport { ReproduccionComponent } from './components/popups/vehiculos/reproduccion/reproduccion.component';\r\nimport { GaleriaVideosComponent } from './components/popups/vehiculos/galeria-videos/galeria-videos.component';\r\nimport { Observable } from 'rxjs';\r\nimport { HistorialVelocidadesVehiculoComponent } from './components/popups/vehiculos/historial-velocidades-vehiculo/historial-velocidades-vehiculo.component';\r\nimport { TerminalService } from './services/terminal.service';\r\nimport { UltimaLectura } from './../../_entities/terminal/terminal';\r\nimport { FiltroProductosService } from './services/filtro-productos.service';\r\nimport { FiltroProductos } from './../../_entities/productos/filtro-productos';\r\nimport { PortatilesService } from './services/portatiles.service';\r\nimport { PortatilUltimaTransmision } from '../../_entities/Portatiles/Portatil';\r\ndeclare var $: any;\r\n\r\n@Component({\r\n\tselector: 'kt-monitoreo',\r\n\ttemplateUrl: './monitoreo.component.html',\r\n\tstyleUrls: ['./monitoreo.component.scss']\r\n})\r\n\r\nexport class MonitoreoComponent implements OnInit, AfterContentInit, OnDestroy {\r\n\t/*Entidades */\r\n\tuser: User;\r\n\tpublic autos: Autos[];\r\n\tpublic botones = this.mapaService.mostrandoRecorrido;\r\n\tpublic spinner: boolean = true;\r\n\tpublic loadingVisible: boolean = false;\r\n\tprivate HWUser;\r\n\tpublic videosDisponibles: boolean = false;\r\n\tpublic validarLey: Observable;\r\n\tpublic validarEstadoHistorico: Observable;\r\n\tpublic estadoHistorico: boolean = false;\r\n\tpublic interval = null;\r\n\r\n\tpublic usuariosSeleccionados = [];\r\n\tpublic activosDisponibles = [];\r\n\tpublic lectorasDisponibles = [];\r\n\tpublic medidoresDisponibles = [];\r\n\tpublic micromedidoresDisponibles = [];\r\n\tpublic telefonosDisponibles = [];\r\n\tpublic vehiculosDisponibles = [];\r\n\tpublic panelesDisponibles = [];\r\n\tpublic panelesDisponiblesMarcador = [];\r\n\r\n\tpublic portatilesDisponibles = [];\r\n\tpublic datosReporte = [];\r\n\r\n\tconstructor(private mapaService: MapaService,\r\n\t\tprivate authService: AuthService,\r\n\t\tprivate vehiculosService: VehiculosService,\r\n\t\tprivate puntosInteresService: PuntosInteresService,\r\n\t\tprivate medidoresService: MedidoresService,\r\n\t\tprivate micromedidoresService: MicromedidoresService,\r\n\t\tprivate iconosService: IconosService,\r\n\t\tprivate contadorSemaforoService: ContadorSemaforoService,\r\n\t\tprivate activosService: ActivosService,\r\n\t\tprivate telefonosService: TelefonosService,\r\n\t\tprivate terminalService: TerminalService,\r\n\t\tprivate portatilService: PortatilesService,\r\n\t\tprivate filtroProductosService: FiltroProductosService,\r\n\t\tprivate dialogRef: MatDialog,\r\n\t\tprivate datepipe: DatePipe) {\r\n\t\tthis.mapaService.monitoreo = true;\r\n\r\n\t}\r\n\r\n\tasync ngOnInit() {\r\n\t\tthis.validarLey = this.mapaService.validarLey();\r\n\t\tthis.validarLey.subscribe((info) => {\r\n\t\t\tthis.videosDisponibles = info;\r\n\t\t});\r\n\r\n\t\tthis.validarEstadoHistorico = this.mapaService.validarEstadoHistorico();\r\n\t\tthis.validarEstadoHistorico.subscribe((info) => {\r\n\t\t\tthis.estadoHistorico = info;\r\n\t\t})\r\n\r\n\t\tif (this.mapaService.monitoreo) {\r\n\t\t\tthis.loadingVisible = true;\r\n\t\t\tthis.mapaService.sonProductosFiltrados = false;\r\n\t\t\tthis.user = this.authService.getUser();\r\n\t\t\tthis.HWUser = this.authService.getHWUser();\r\n\t\t\tthis.styleBrand();\r\n\t\t\tthis.mapaService.inicializarMapa();\r\n\t\t\tthis.pintarMarcadoresActivos();\r\n\t\t\tthis.obtenerAlertas();\r\n\t\t\tthis.pintarMarcadoresLectoras();\r\n\t\t\tthis.pintarMarcadoresMedidores();\r\n\t\t\tthis.pintarMarcadoresMicromedidores();\r\n\t\t\tthis.pintarMarcadoresPuntosInteres();\r\n\t\t\tthis.pintarMarcadoresTelefonos();\r\n\t\t\tthis.pintarVehiculos();\r\n\t\t\tthis.pintarMarcadoresPortatiles();\r\n\t\t\tthis.pintarMarcadoresPaneles();\r\n\t\t\tsessionStorage.removeItem('historico');\r\n\t\t\tsessionStorage.removeItem('data')\r\n\t\t}\r\n\t}\r\n\r\n\tpublic styleBrand() {\r\n\t\tvar brandBtn = document.getElementById('brandBTN');\r\n\t\tvar body = document.body;\r\n\r\n\t\tbody.classList.add('kt-aside--minimize');\r\n\t\tbrandBtn.setAttribute('disabled', 'disabled');\r\n\t\tbrandBtn.classList.add('brandBTNClass');\r\n\t\tdocument.getElementById('listaAlertas').style.display = 'block';\r\n\t}\r\n\r\n\tpublic ngOnDestroy() {\r\n\t\tthis.mapaService.monitoreo = false;\r\n\t\tthis.dialogRef.closeAll();\r\n\t\tvar brandBtn = document.getElementById('brandBTN'); brandBtn.classList.remove('brandBTNClass');\r\n\t\tdocument.getElementById('listaAlertas').style.display = 'none';\r\n\t\tthis.limpiarArregloAlertas();\r\n\t\tsessionStorage.removeItem('coordinates');\r\n\t\tsessionStorage.removeItem('historico');\r\n\t\tsessionStorage.removeItem('data')\r\n\t\tclearInterval(this.interval);\r\n\t}\r\n\r\n\tngAfterContentInit() {\r\n\t\tsetTimeout(async () => {\r\n\t\t\tif (this.authService.getCoordinates()) {\r\n\t\t\t\tlet lng = this.authService.getCoordinates().lng;\r\n\t\t\t\tlet lat = this.authService.getCoordinates().lat;\r\n\t\t\t\tlet zoom = this.authService.getCoordinates().zoom;\r\n\r\n\t\t\t\tawait this.mapaService.recargarMapa(lng, lat, zoom);\r\n\r\n\t\t\t} else {\r\n\t\t\t\tawait this.mapaService.ajustarMapa();\r\n\t\t\t\tawait this.mapaService.regresarMapa();\r\n\r\n\t\t\t}\r\n\t\t\tthis.loadingVisible = false;\r\n\t\t\t//this.mostrarOcultarParaSiempre();\r\n\t\t}, 3000);\r\n\t\tif (this.mapaService.historicoMode == false && this.mapaService.monitoreo == true) {\r\n\t\t\tthis.interval = setInterval(async () => {\r\n\r\n\t\t\t\tif (this.mapaService.sonProductosFiltrados == false) {\r\n\t\t\t\t\tif (this.mapaService.historicoMode == false && this.mapaService.monitoreo == true && this.mapaService.productosVisibles) {\r\n\t\t\t\t\t\tthis.limpiarArregloAlertas();\r\n\t\t\t\t\t\tawait this.mapaService.limpiarDispositivos();\r\n\t\t\t\t\t\tawait this.mapaService.vectorApuntadorAlertaSource.clear();\r\n\t\t\t\t\t\tawait this.obtenerAlertas()\r\n\t\t\t\t\t\tawait this.pintarMarcadoresActivos();\r\n\t\t\t\t\t\tawait this.pintarMarcadoresTelefonos();\r\n\t\t\t\t\t\tawait this.pintarMarcadoresMedidores();\r\n\t\t\t\t\t\tawait this.pintarMarcadoresMicromedidores();\r\n\t\t\t\t\t\tawait this.pintarMarcadoresLectoras();\r\n\t\t\t\t\t\t//await this.pintarMarcadoresTerminal();\r\n\t\t\t\t\t\tawait this.pintarVehiculos();\r\n\t\t\t\t\t\tawait this.pintarMarcadoresPortatiles();\r\n\t\t\t\t\t\tawait this.pintarMarcadoresPaneles();\r\n\t\t\t\t\t\tthis.mapaService.ocultarUbicadorLayer();\r\n\t\t\t\t\t}\r\n\t\t\t\t} else {\r\n\t\t\t\t\tawait this.mapaService.vectorApuntadorAlertaSource.clear();\r\n\t\t\t\t\tawait this.mapaService.limpiarDispositivos();\r\n\t\t\t\t\tawait this.obtenerProductosUsuario();\r\n\t\t\t\t}\r\n\r\n\t\t\t}, 20000);\r\n\t\t}\r\n\t}\r\n\r\n\tobtenerProductosUsuario() {\r\n\t\tthis.reiniciarArreglos();\r\n\r\n\t\tthis.filtroProductosService.obtenerPaneles().subscribe(result=>{\r\n\t\t\tthis.panelesDisponibles = result;\r\n\t\t})\r\n\r\n\t\tconst promise = new Promise((resolve, reject) => {\r\n\t\t\tthis.mapaService.usuariosFlitro.forEach((usuario, index, array) => {\r\n\t\t\t\tthis.filtroProductosService.obtenerProductosIdUsuario(usuario).pipe(\r\n\t\t\t\t\tfinalize(\r\n\t\t\t\t\t\t() => {\r\n\t\t\t\t\t\t\tif (index === array.length - 1) {\r\n\t\t\t\t\t\t\t\tresolve(null);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t)\r\n\t\t\t\t).subscribe(\r\n\t\t\t\t\t(productos: any[]) => {\r\n\t\t\t\t\t\tif (productos.length > 0) {\r\n\t\t\t\t\t\t\tthis.mapaService.limpiarMapa();\r\n\t\t\t\t\t\t\t//this.mapaService.controlEtiquetas = true;\r\n\t\t\t\t\t\t\tthis.mapaService.registroVehiculos = productos;\r\n\t\t\t\t\t\t\tproductos.forEach(producto => {\r\n\t\t\t\t\t\t\t\tswitch (producto.idProducto) {\r\n\t\t\t\t\t\t\t\t\tcase 2:\r\n\t\t\t\t\t\t\t\t\t\tthis.vehiculosDisponibles.push(producto);\r\n\t\t\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\t\t\tcase 3:\r\n\t\t\t\t\t\t\t\t\t\tif (producto.bateria == null || producto.bateria == '') {\r\n\t\t\t\t\t\t\t\t\t\t\tproducto.bateria = 'Sin Batería'\r\n\t\t\t\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\t\t\t\tproducto.bateria = producto.bateria + '%'\r\n\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\tconst alertaGSMA = GSM.find(gsm => producto.gsm == gsm.id);\r\n\t\t\t\t\t\t\t\t\t\tproducto.gsm = alertaGSMA.nombre;\r\n\t\t\t\t\t\t\t\t\t\ttry {\r\n\t\t\t\t\t\t\t\t\t\t\tconst alertaGPS = GPS.find(gps => producto.gps == gps.id);\r\n\t\t\t\t\t\t\t\t\t\t\tproducto.gps = alertaGPS.nombre;\r\n\t\t\t\t\t\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\t\t\t\t\t\tproducto.gps = 'Mala';\r\n\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\tthis.activosDisponibles.push(producto);\r\n\t\t\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\t\t\tcase 4:\r\n\t\t\t\t\t\t\t\t\t\tif (producto.bateria == null || producto.bateria == '') {\r\n\t\t\t\t\t\t\t\t\t\t\tproducto.bateria = 'Sin Batería'\r\n\t\t\t\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\t\t\t\tproducto.bateria = producto.bateria + '%'\r\n\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\tconst alertaGSMT = GSM.find(gsm => producto.gsm == gsm.id);\r\n\t\t\t\t\t\t\t\t\t\tproducto.gsm = alertaGSMT.nombre;\r\n\t\t\t\t\t\t\t\t\t\ttry {\r\n\t\t\t\t\t\t\t\t\t\t\tconst alertaGPS = GPS.find(gps => producto.gps == gps.id);\r\n\t\t\t\t\t\t\t\t\t\t\tproducto.gps = alertaGPS.nombre;\r\n\t\t\t\t\t\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\t\t\t\t\t\tproducto.gps = 'Mala';\r\n\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\tswitch (producto.estatus) {\r\n\t\t\t\t\t\t\t\t\t\t\tcase 0:\r\n\t\t\t\t\t\t\t\t\t\t\t\tproducto.estatus = 'Inactivo';\r\n\t\t\t\t\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\t\t\t\t\tcase 1:\r\n\t\t\t\t\t\t\t\t\t\t\t\tproducto.estatus = 'Activo';\r\n\t\t\t\t\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\t\t\t\t\tdefault:\r\n\t\t\t\t\t\t\t\t\t\t\t\tproducto.estatus = 'Sin datos';\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\tthis.telefonosDisponibles.push(producto);\r\n\t\t\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\t\t\tcase 5:\r\n\t\t\t\t\t\t\t\t\t\tthis.medidoresDisponibles.push(producto);\r\n\t\t\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\t\t\tcase 6:\r\n\t\t\t\t\t\t\t\t\t\tthis.micromedidoresDisponibles.push(producto);\r\n\t\t\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\t\t\tcase 7:\r\n\t\t\t\t\t\t\t\t\t\tthis.lectorasDisponibles.push(producto);\r\n\t\t\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\t\t\tcase 8:\r\n\t\t\t\t\t\t\t\t\t\tif (producto.bateria == null || producto.bateria == '') {\r\n\t\t\t\t\t\t\t\t\t\t\tproducto.bateria = 'Sin Batería'\r\n\t\t\t\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\t\t\t\tproducto.bateria = producto.bateria + '%'\r\n\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\tconst alertaGSMA1 = GSM.find(gsm => producto.gsm == gsm.id);\r\n\t\t\t\t\t\t\t\t\t\tproducto.gsm = alertaGSMA1.nombre;\r\n\t\t\t\t\t\t\t\t\t\ttry {\r\n\t\t\t\t\t\t\t\t\t\t\tconst alertaGPS = GPS.find(gps => producto.gps == gps.id);\r\n\t\t\t\t\t\t\t\t\t\t\tproducto.gps = alertaGPS.nombre;\r\n\t\t\t\t\t\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\t\t\t\t\t\tproducto.gps = 'Mala';\r\n\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\tthis.portatilesDisponibles.push(producto);\r\n\t\t\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\tdefault:\r\n\t\t\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}, (error) => {\r\n\t\t\t\t\t\tconsole.log(error);\r\n\t\t\t\t\t}\r\n\t\t\t\t)\r\n\t\t\t});\r\n\t\t});\r\n\r\n\t\tpromise.then(() => {\r\n\t\t\tthis.mapaService.sonProductosFiltrados = true;\r\n\t\t\tthis.pintarProductos();\r\n\t\t});\r\n\t}\r\n\r\n\tpintarProductos() {\r\n\t\tif (this.activosDisponibles.length > 0) {\r\n\t\t\tthis.mapaService.activosDisponibles = this.activosDisponibles;\r\n\t\t\tthis.mapaService.pintarMarcadoresActivos();\r\n\t\t}\r\n\r\n\t\tif (this.lectorasDisponibles.length > 0) {\r\n\t\t\tthis.mapaService.lectorasDisponibles = this.lectorasDisponibles;\r\n\t\t\tthis.mapaService.pintarMarcadoresLectoras();\r\n\t\t}\r\n\r\n\t\tif (this.medidoresDisponibles.length > 0) {\r\n\t\t\tthis.mapaService.medidoresDisponibles = this.medidoresDisponibles;\r\n\t\t\tthis.mapaService.pintarMarcadoresMedidores();\r\n\t\t}\r\n\r\n\t\tif (this.micromedidoresDisponibles.length > 0) {\r\n\t\t\tthis.mapaService.micromedidoresDisponibles = this.micromedidoresDisponibles;\r\n\t\t\tthis.mapaService.pintarMarcadoresMicromedidores();\r\n\t\t}\r\n\r\n\t\tif (this.telefonosDisponibles.length > 0) {\r\n\t\t\tthis.mapaService.telefonosDisponibles = this.telefonosDisponibles;\r\n\t\t\tthis.mapaService.pintarMarcadoresTelefonos();\r\n\t\t}\r\n\r\n\t\tif (this.vehiculosDisponibles.length > 0) {\r\n\t\t\tthis.mapaService.vehiculosDisponibles = this.vehiculosDisponibles;\r\n\t\t\tthis.mapaService.pintarMarcadoresVehiculos();\r\n\t\t}\r\n\t\tif (this.portatilesDisponibles.length > 0) {\r\n\t\t\tthis.mapaService.portatilesDisponibles = this.portatilesDisponibles;\r\n\t\t\tthis.mapaService.pintarMarcadoresPortatiles();\r\n\t\t}\r\n\r\n\t}\r\n\r\n\treiniciarArreglos() {\r\n\t\tthis.activosDisponibles = [];\r\n\t\tthis.lectorasDisponibles = [];\r\n\t\tthis.medidoresDisponibles = [];\r\n\t\tthis.micromedidoresDisponibles = [];\r\n\t\tthis.telefonosDisponibles = [];\r\n\t\tthis.vehiculosDisponibles = [];\r\n\t\tthis.portatilesDisponibles = [];\r\n\t\tthis.panelesDisponibles = [];\r\n\t\tthis.panelesDisponiblesMarcador=[];\r\n\t}\r\n\r\n\tpintarMarcadoresPaneles(){\r\n\t\tthis.filtroProductosService.obtenerPanelesMapa().subscribe(result=>{\r\n\t\t\tthis.panelesDisponiblesMarcador = result;\r\n\t\t\tthis.mapaService.pintarPanelCiudadano(this.panelesDisponiblesMarcador);\r\n\r\n\t\t})\r\n\t}\r\n\r\n\tpintarMarcadoresActivos() {\r\n\t\tthis.activosService.obtenerUltimaTransmisionActivos().subscribe(\r\n\t\t\t(response: ActivoUltimaTransmision[]) => {\r\n\t\t\t\tresponse.map(function (activo) {\r\n\t\t\t\t\tactivo.coordinate = [activo.lng, activo.lat];\r\n\r\n\t\t\t\t\tif (activo.bateria == null || activo.bateria == '') {\r\n\t\t\t\t\t\tactivo.bateria = 'Sin Batería'\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tactivo.bateria = activo.bateria + '%'\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tswitch (activo.estatus) {\r\n\t\t\t\t\t\tcase 0:\r\n\t\t\t\t\t\t\tactivo.estatus = 'Inactivo';\r\n\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\tcase 1:\r\n\t\t\t\t\t\t\tactivo.estatus = 'Activo';\r\n\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t}\r\n\t\t\t\t\tconst alertaGSM = GSM.find(gsm => activo.gsm == gsm.id);\r\n\t\t\t\t\tactivo.gsm = alertaGSM.nombre;\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tconst alertaGPS = GPS.find(gps => activo.gps == gps.id);\r\n\t\t\t\t\t\tactivo.gps = alertaGPS.nombre;\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tactivo.gps = 'Mala';\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t});\r\n\t\t\t\tthis.mapaService.pintarActivos(response);\r\n\t\t\t}\r\n\r\n\t\t)\r\n\t}\r\n\r\n\r\n\tpintarMarcadoresPortatiles() {\r\n\t\tthis.portatilService.obtenerUltimaTransmisionPortatiles().subscribe(\r\n\t\t\t(response: PortatilUltimaTransmision[]) => {\r\n\t\t\t\tresponse.map(function (activo) {\r\n\t\t\t\t\tactivo.coordinate = [activo.lng, activo.lat];\r\n\r\n\t\t\t\t\tif (activo.bateria == null || activo.bateria == '') {\r\n\t\t\t\t\t\tactivo.bateria = 'Sin Batería'\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tactivo.bateria = activo.bateria + '%'\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tswitch (activo.estatus) {\r\n\t\t\t\t\t\tcase 0:\r\n\t\t\t\t\t\t\tactivo.estatus = 'Inactivo';\r\n\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\tcase 1:\r\n\t\t\t\t\t\t\tactivo.estatus = 'Activo';\r\n\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t}\r\n\t\t\t\t\tconst alertaGSM = GSM.find(gsm => activo.gsm == gsm.id);\r\n\t\t\t\t\tactivo.gsm = alertaGSM.nombre;\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tconst alertaGPS = GPS.find(gps => activo.gps == gps.id);\r\n\t\t\t\t\t\tactivo.gps = alertaGPS.nombre;\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tactivo.gps = 'Mala';\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t});\r\n\t\t\t\tthis.mapaService.pintarPortatiles(response);\r\n\t\t\t}\r\n\r\n\t\t)\r\n\t}\r\n\r\n\r\n\r\n\tpintarMarcadoresLectoras() {\r\n\t\tthis.terminalService.getTerminales().subscribe(\r\n\t\t\t(terminales) => {\r\n\t\t\t\tthis.obtenerTags(terminales);\r\n\t\t\t}, (err) => {\r\n\t\t\t\tconsole.log(err);\r\n\r\n\t\t\t}\r\n\t\t)\r\n\t}\r\n\r\n\tobtenerTags(terminales) {\r\n\t\tconst START_DATE = `${new Date().getFullYear().toString()}-01-01 00:00:00`;\r\n\t\tconst END_DATE = this.datepipe.transform(new Date(), 'yyyy-MM-dd HH:mm:ss');\r\n\r\n\t\tterminales.forEach(terminal => {\r\n\t\t\tthis.terminalService.getHistoricRecords(terminal.id, START_DATE, END_DATE).subscribe(\r\n\t\t\t\t(records: UltimaLectura[]) => {\r\n\t\t\t\t\trecords.map(terminal => {\r\n\t\t\t\t\t\tconst estatus = ESTATUS.find(estatus => estatus.id === terminal.estatus);\r\n\t\t\t\t\t\tterminal.estatus = estatus.nombre\r\n\t\t\t\t\t\tterminal.colorEstatus = estatus.clase;\r\n\r\n\t\t\t\t\t\tconst gsm = GSM.find(gsm => gsm.id === terminal.gsm);\r\n\t\t\t\t\t\tterminal.gsm = gsm.nombre;\r\n\r\n\t\t\t\t\t\ttry {\r\n\t\t\t\t\t\t\tconst alertaGPS = GPS.find(gps => terminal.gps == gps.id);\r\n\t\t\t\t\t\t\tterminal.gps = alertaGPS.nombre;\r\n\t\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\t\tterminal.gps = 'Mala';\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\tconst alimentacion = ALIMENTACION.find(alimentacion => alimentacion.id === terminal.alimentacion);\r\n\t\t\t\t\t\tterminal.alimentacion = alimentacion.nombre;\r\n\r\n\t\t\t\t\t\tterminal.fechaHora = this.datepipe.transform(terminal.fechaHora, 'dd-MM-yyyy h:mm:ss a');\r\n\t\t\t\t\t});\r\n\t\t\t\t\tthis.mapaService.pintarLectoras(records);\r\n\r\n\r\n\t\t\t\t}, (err) => {\r\n\t\t\t\t\tconsole.error(err);\r\n\t\t\t\t}\r\n\t\t\t);\r\n\t\t})\r\n\t}\r\n\r\n\tpintarMarcadoresMedidores() {\r\n\t\tthis.medidoresService.getMedidores().subscribe(\r\n\t\t\t(response: any[]) => {\r\n\t\t\t\tthis.mapaService.pintarMedidores(response);\r\n\t\t\t}, (error) => {\r\n\t\t\t\tconsole.log('error en pintar medidores ', error);\r\n\r\n\t\t\t}\r\n\t\t);\r\n\t}\r\n\r\n\tpintarMarcadoresMicromedidores() {\r\n\t\tlet newResponse = [];\r\n\t\tlet temNumSeries = [];\r\n\t\tthis.micromedidoresService.obtenerMicromedidores().subscribe(\r\n\t\t\t(micromedidores: any[]) => {\r\n\t\t\t\tmicromedidores.map(function (micrommedidor) {\r\n\t\t\t\t\tif (micrommedidor.tamper == null || micrommedidor.tamper == '') {\r\n\t\t\t\t\t\tmicrommedidor.tamper = 'Sin datos'\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tif (micrommedidor.observacion == null || micrommedidor.observacion == '') {\r\n\t\t\t\t\t\tmicrommedidor.observacion = 'Sin datos'\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tif (micrommedidor.contador == null || micrommedidor.contador == '') {\r\n\t\t\t\t\t\tmicrommedidor.contador = 'Sin datos'\r\n\t\t\t\t\t}\r\n\r\n\r\n\t\t\t\t\tif (micrommedidor.estatus == 1) {\r\n\t\t\t\t\t\tmicrommedidor.estatus = 'Activo'\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tmicrommedidor.estatus = 'Inactivo'\r\n\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\r\n\t\t\t\tmicromedidores.forEach(\r\n\t\t\t\t\tmicromedidor => {\r\n\t\t\t\t\t\tlet numeroSerie = micromedidor.numeroSerie;\r\n\r\n\t\t\t\t\t\tif (!(temNumSeries.includes(numeroSerie))) {\r\n\t\t\t\t\t\t\ttemNumSeries.push(numeroSerie);\r\n\t\t\t\t\t\t\tnewResponse.push(micromedidor);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t);\r\n\t\t\t\tthis.mapaService.pintarMicromedidores(newResponse);\r\n\t\t\t}\r\n\t\t);\r\n\t}\r\n\r\n\tpintarMarcadoresPuntosInteres() {\r\n\t\tthis.puntosInteresService.getPuntos().subscribe(\r\n\t\t\t(res: any[]) => {\r\n\t\t\t\tthis.mapaService.pintarPuntosInteres(res);\r\n\t\t\t}, err => { });\r\n\t}\r\n\r\n\tpintarMarcadoresTelefonos() {\r\n\t\tthis.telefonosService.obtenerUltimaTransmisionTelefonos().subscribe(\r\n\t\t\t(response: TelefonoUltimaTransmision[]) => {\r\n\t\t\t\tresponse.map(function (telefono) {\r\n\t\t\t\t\ttelefono.coordinate = [telefono.lng, telefono.lat];\r\n\t\t\t\t\tswitch (telefono.estatus) {\r\n\t\t\t\t\t\tcase 0:\r\n\t\t\t\t\t\t\ttelefono.estatus = 'Inactivo';\r\n\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\tcase 1:\r\n\t\t\t\t\t\t\ttelefono.estatus = 'Activo';\r\n\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\tdefault:\r\n\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tif (telefono.bateria == null || telefono.bateria == '') {\r\n\t\t\t\t\t\ttelefono.bateria = 'Sin Batería'\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\ttelefono.bateria = telefono.bateria + '%'\r\n\t\t\t\t\t}\r\n\r\n\r\n\t\t\t\t\tconst alertaGSM = GSM.find(gsm => telefono.gsm == gsm.id);\r\n\t\t\t\t\ttelefono.gsm = alertaGSM.nombre;\r\n\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tconst alertaGPS = GPS.find(gps => telefono.gps == gps.id);\r\n\t\t\t\t\t\ttelefono.gps = alertaGPS.nombre;\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\ttelefono.gps = 'Mala';\r\n\t\t\t\t\t}\r\n\r\n\r\n\t\t\t\t});\r\n\t\t\t\tthis.mapaService.pintarTelefonos(response);\r\n\t\t\t}\r\n\t\t)\r\n\t}\r\n\r\n\tpintarVehiculos() {\r\n\t\t/*let token = ''\r\n\t\tif (this.HWUser) {\r\n\t\t\ttoken = this.HWUser.token;\r\n\t\t}*/\r\n\t\tthis.vehiculosService.obtenerAutos().subscribe(\r\n\t\t\t(vehiculos: Autos[]) => {\r\n\t\t\t\tif (vehiculos.length) {\r\n\t\t\t\t\t/*vehiculos.forEach(vehiculo => {\r\n\t\t\t\t\t\tthis.contadorSemaforo(vehiculo.estado);\r\n\t\t\t\t\t});*/\r\n\t\t\t\t\tthis.mapaService.pintarVehiculos(vehiculos);\r\n\t\t\t\t}\r\n\t\t\t}, err => {\r\n\t\t\t\tconsole.log(err);\r\n\t\t\t}\r\n\t\t);\r\n\t}\r\n\r\n\tmostrarOcultarParaSiempre() {\r\n\t\tlet toggleParaSiempre = Number(sessionStorage.getItem('toggleParaSiempre'))\r\n\t\tif (toggleParaSiempre == -1) {\r\n\t\t\tthis.mapaService.mostrarParaSiempre();\r\n\t\t} else if (toggleParaSiempre == 1) {\r\n\t\t\tthis.mapaService.ocultarParaSiempre();\r\n\t\t}\r\n\t}\r\n\r\n\tlimpiarArregloAlertas() {\r\n\t\tthis.iconosService.alertaPrincipal = [];\r\n\t\tthis.iconosService.alertaGeocerca = [];\r\n\t}\r\n\r\n\tobtenerAlertas() {\r\n\t\t/*let token = ''\r\n\t\tif (this.HWUser) {\r\n\t\t\ttoken = this.HWUser.token;\r\n\t\t}*/\r\n\t\tthis.vehiculosService.obtenerAlertas().subscribe(\r\n\t\t\t(response) => {\r\n\t\t\t\tthis.mapaService.registroVehiculos = response;\r\n\t\t\t}\r\n\t\t)\r\n\t}\r\n\r\n\tpublic contadorSemaforo(estado: number) {\r\n\t\tswitch (estado) {\r\n\t\t\tcase 0:\r\n\t\t\t\tthis.contadorSemaforoService.gris++;\r\n\t\t\t\tthis.contadorSemaforoService.gris = this.contadorSemaforoService.gris;\r\n\t\t\t\tbreak;\r\n\t\t\tcase 1:\r\n\t\t\t\tthis.contadorSemaforoService.verde++;\r\n\t\t\t\tthis.contadorSemaforoService.verde = this.contadorSemaforoService.verde;\r\n\t\t\t\tbreak;\r\n\t\t\tcase 2:\r\n\t\t\t\tthis.contadorSemaforoService.rojoParpadeante++;\r\n\t\t\t\tthis.contadorSemaforoService.rojoParpadeante = this.contadorSemaforoService.rojoParpadeante;\r\n\t\t\t\tbreak;\r\n\t\t\tcase 3:\r\n\t\t\t\tthis.contadorSemaforoService.amarilloParpadeante++;\r\n\t\t\t\tthis.contadorSemaforoService.amarilloParpadeante = this.contadorSemaforoService.amarilloParpadeante;\r\n\t\t\t\tbreak;\r\n\t\t\tcase 4:\r\n\t\t\t\tthis.contadorSemaforoService.amarillo++;\r\n\t\t\t\tthis.contadorSemaforoService.amarillo = this.contadorSemaforoService.amarillo;\r\n\t\t\t\tbreak;\r\n\t\t\tcase 5:\r\n\t\t\t\tthis.contadorSemaforoService.naranja++;\r\n\t\t\t\tthis.contadorSemaforoService.naranja = this.contadorSemaforoService.naranja;\r\n\t\t\t\tbreak;\r\n\t\t\tcase 6:\r\n\t\t\t\tthis.contadorSemaforoService.rojo++;\r\n\t\t\t\tthis.contadorSemaforoService.rojo = this.contadorSemaforoService.rojo;\r\n\t\t\t\tbreak;\r\n\t\t\tcase 7:\r\n\t\t\t\tthis.contadorSemaforoService.azul++;\r\n\t\t\t\tthis.contadorSemaforoService.azul = this.contadorSemaforoService.azul;\r\n\t\t\t\tbreak;\r\n\t\t\tcase 8:\r\n\t\t\t\tthis.contadorSemaforoService.violeta++;\r\n\t\t\t\tthis.contadorSemaforoService.violeta = this.contadorSemaforoService.violeta;\r\n\t\t\t\tbreak;\r\n\t\t}\r\n\t}\r\n\r\n\tpublic abrirHistorico() {\r\n\t\t/*Historico Popup*/\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.autoFocus = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\t\tdialogConfig.width = \"55%\";\r\n\t\tdialogConfig.panelClass = 'custom-modalbox';\r\n\t\tdialogConfig.closeOnNavigation = true;\r\n\t\tdialogConfig.hasBackdrop = false;\r\n\r\n\t\tswitch (this.mapaService.tipoProducto) {\r\n\t\t\tcase 'vehiculo':\r\n\t\t\t\tthis.dialogRef.open(HistoricoPosicionesVehiculoComponent, dialogConfig);\r\n\t\t\t\tbreak;\r\n\t\t\tcase 'activo':\r\n\t\t\t\tthis.dialogRef.open(HistoricoPosicionesActivoComponent, dialogConfig);\r\n\t\t\t\tbreak;\r\n\t\t\tcase 'telefono':\r\n\t\t\t\tthis.dialogRef.open(HistoricoPosicionesTelefonoComponent, dialogConfig);\r\n\t\t\t\tbreak;\r\n\t\t\tcase 'reproduccion':\r\n\t\t\t\tthis.dialogRef.open(ReproduccionComponent, dialogConfig);\r\n\t\t\t\tbreak;\r\n\t\t}\r\n\t}\r\n\r\n\tabrirVideos() {\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.autoFocus = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\t\tdialogConfig.width = \"55%\";\r\n\t\tdialogConfig.panelClass = 'custom-modalbox';\r\n\t\tdialogConfig.closeOnNavigation = true;\r\n\t\tdialogConfig.hasBackdrop = false;\r\n\t\tthis.dialogRef.open(GaleriaVideosComponent, dialogConfig);\r\n\t}\r\n\r\n\tabrirGraficaVelocidad() {\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.autoFocus = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\t\tdialogConfig.width = \"55%\";\r\n\t\tdialogConfig.panelClass = 'custom-modalbox';\r\n\t\tdialogConfig.closeOnNavigation = true;\r\n\t\tdialogConfig.hasBackdrop = false;\r\n\t\tthis.dialogRef.open(HistorialVelocidadesVehiculoComponent, dialogConfig);\r\n\t}\r\n\r\n\tpublic imprimirRecorrido() {\r\n\t\tswitch (this.mapaService.tipoProducto) {\r\n\t\t\tcase 'vehiculo':\r\n\t\t\t\tthis.imprimirVehiculo();\r\n\t\t\t\tbreak;\r\n\t\t\tcase 'activo':\r\n\t\t\t\tthis.imprimirActivo();\r\n\t\t\t\tbreak;\r\n\t\t\tcase 'telefono':\r\n\t\t\t\tthis.imprimirTelefono();\r\n\t\t\t\tbreak;\r\n\t\t\tcase 'Portatiles':\r\n\t\t\t\tthis.imprimirPortatil();\r\n\t\t\t\tbreak;\r\n\t\t}\r\n\r\n\t}\r\n\r\n\tvalidarDato(dato) {\r\n\t\tif (dato == null) {\r\n\t\t\tdato = ''\r\n\t\t}\r\n\t\treturn dato;\r\n\t}\r\n\r\n\timprimirVehiculo() {\r\n\t\tthis.loadingVisible = true;\r\n\t\tthis.mapaService.ocultarPuntosInteres();\r\n\t\tconst PLACA = this.validarDato(this.mapaService.datosGenerales.placas);\r\n\t\tconst ECONOMICO = this.validarDato(this.mapaService.datosGenerales.economico);\r\n\t\tconst SERIE = this.validarDato(this.mapaService.datosGenerales.numeroSerie);\r\n\t\tconst MARCA = this.validarDato(this.mapaService.datosGenerales.marca);\r\n\t\tconst MODELO = this.validarDato(this.mapaService.datosGenerales.modelo);\r\n\t\tconst ANIO = this.validarDato(this.mapaService.datosGenerales.anio);\r\n\t\tconst COLOR = this.validarDato(this.mapaService.datosGenerales.color);\r\n\t\tconst DESCRIPCION = this.validarDato(this.mapaService.datosGenerales.descripcion);\r\n\t\tconst FECHA_INICIAL = this.validarDato(this.datepipe.transform(this.mapaService.historicoFechas[0], 'dd/MM/yyyy h:MM a'));\r\n\t\tconst FECHA_FINAL = this.validarDato(this.datepipe.transform(this.mapaService.historicoFechas[1], 'dd/MM/yyyy h:MM a'));\r\n\t\tlet fechaHora = this.mapaService.datosGenerales.fechaHoraUltimaPosicion;\r\n\t\tlet dir = '';\r\n\t\tlet dir2 = '';\r\n\r\n\t\tfechaHora = this.datepipe.transform(fechaHora, 'yyyy-MM-dd h:mma');\r\n\t\tlet direccion;\r\n\r\n\t\tthis.mapaService.getDireccion([this.mapaService.datosGenerales.lng, this.mapaService.datosGenerales.lat]).then(\r\n\t\t\t(data: any) => {\r\n\t\t\t\tdireccion = data.display_name || \"Dirección Desconocida\";\r\n\t\t\t\tconst fragmentDirection = direccion.split(',');\r\n\t\t\t\tlet cont = 0;\r\n\t\t\t\twhile (cont <= 1) {\r\n\t\t\t\t\tdir = dir + fragmentDirection[cont] + ', '\r\n\t\t\t\t\tcont++;\r\n\t\t\t\t}\r\n\r\n\t\t\t\twhile (cont < fragmentDirection.length) {\r\n\t\t\t\t\tdir2 = dir2 + fragmentDirection[cont] + ', '\r\n\t\t\t\t\tcont++;\r\n\t\t\t\t}\r\n\r\n\t\t\t},\r\n\t\t\t() => {\r\n\t\t\t\tdireccion = \"Dirección Desconocida\";\r\n\t\t\t}\r\n\t\t);\r\n\r\n\r\n\t\tconst mapElement = document.getElementById('map');\r\n\t\thtml2canvas(mapElement, { useCORS: true }).then(\r\n\t\t\t(canvas) => {\r\n\t\t\t\tlet pdf = new jsPDF('p', 'pt', 'a4');\r\n\r\n\t\t\t\tconst logoGTM = './assets/media/logos/logo-gtm.png'\r\n\t\t\t\tconst logoGTMX = 20;\r\n\t\t\t\tconst logoGTMY = 15;\r\n\t\t\t\tconst logoGTMWidth = 180;\r\n\t\t\t\tconst logoGTMHeight = 80;\r\n\t\t\t\tpdf.addImage(logoGTM, 'PNG', logoGTMX, logoGTMY, logoGTMWidth, logoGTMHeight, 'MEDIUM');\r\n\r\n\t\t\t\tpdf.setFontSize(20);\r\n\t\t\t\tpdf.setFont('', 'bold')\r\n\r\n\t\t\t\tpdf.text('Historial de Posiciones', 190, 120);\r\n\t\t\t\tpdf.text('Inicio: ' + FECHA_INICIAL + ', Fin: ' + FECHA_FINAL, 55, 145);\r\n\r\n\r\n\t\t\t\tconst logoGTMWater = './assets/media/logos/marca-de-agua.png'\r\n\t\t\t\tconst logoGTMWaterX = 15;\r\n\t\t\t\tconst logoGTMWaterY = 130;\r\n\t\t\t\tconst logoGTMWaterProp = (pdf as any).getImageProperties(logoGTMWater);\r\n\t\t\t\tconst logoGTMWaterWidth = pdf.internal.pageSize.getWidth() - 2 * logoGTMWaterX;\r\n\t\t\t\tconst logoGTMWaterHeight = (logoGTMWaterProp.height * logoGTMWaterWidth) / logoGTMWaterProp.width;\r\n\t\t\t\tpdf.addImage(logoGTMWater, 'PNG', logoGTMWaterX, logoGTMWaterY, logoGTMWaterWidth, logoGTMWaterHeight, 'SLOW');\r\n\r\n\t\t\t\tconst mapa = canvas.toDataURL('image/PNG');\r\n\t\t\t\tconst mapaX = 15;\r\n\t\t\t\tconst mapaY = 165;\r\n\t\t\t\tconst mapaProps = (pdf as any).getImageProperties(mapa);\r\n\t\t\t\tconst mapaWidth = pdf.internal.pageSize.getWidth() - 2 * mapaX;\r\n\t\t\t\tconst mapaHeight = (mapaProps.height * mapaWidth) / mapaProps.width;\r\n\t\t\t\tpdf.addImage(mapa, 'PNG', mapaX, mapaY, mapaWidth, mapaHeight, 'FAST');\r\n\r\n\t\t\t\tpdf.setFontSize(14);\r\n\t\t\t\tpdf.setFont('', 'bold')\r\n\t\t\t\tpdf.text('Datos del Dispositivo', 90, 470,);\r\n\r\n\t\t\t\tpdf.setFont('', 'normal')\r\n\t\t\t\tpdf.text('Vehículo:', 90, 485);\r\n\t\t\t\tpdf.text(MARCA + ', ' + MODELO, 300, 485);\r\n\r\n\t\t\t\tpdf.text('Placa:', 90, 500);\r\n\t\t\t\tpdf.text(PLACA, 300, 500);\r\n\r\n\t\t\t\tpdf.text('Económico:', 90, 515);\r\n\t\t\t\tpdf.text(ECONOMICO, 300, 515);\r\n\r\n\t\t\t\tpdf.text('Número de Serie:', 90, 530);\r\n\t\t\t\tpdf.text(SERIE, 300, 530);\r\n\r\n\t\t\t\tpdf.text('Año:', 90, 545);\r\n\t\t\t\tpdf.text(ANIO + '', 300, 545);\r\n\r\n\t\t\t\tpdf.text('Color:', 90, 560);\r\n\t\t\t\tpdf.text(COLOR, 300, 560);\r\n\r\n\t\t\t\tpdf.text('Descripción:', 90, 575);\r\n\t\t\t\tpdf.text(DESCRIPCION, 300, 575);\r\n\r\n\t\t\t\tpdf.text('Dirección:', 90, 590);\r\n\t\t\t\tpdf.text(dir + '', 300, 590);\r\n\t\t\t\tpdf.text(dir2, 87, 605);\r\n\r\n\t\t\t\tpdf.setFontSize(12);\r\n\t\t\t\tpdf.setFont('sans-serif', 'bold');\r\n\r\n\t\t\t\tpdf.text('GTM Tecnología S.A. de C.V.', 220, 795);\r\n\t\t\t\tpdf.text('Carr. Temixco - Emiliano Zapata ext. 17 int. 3B Col. Palo Escrito, Emiliano Zapata, Mor, Mex. C.P. 62760', 22, 810);\r\n\t\t\t\tpdf.text('Tel. +52 7773200301, Whatsapp: +52 7771351886, monitoreo@gtmtec.mx', 65, 825);\r\n\r\n\t\t\t\treturn pdf;\r\n\r\n\t\t\t}\r\n\t\t).then(\r\n\t\t\t(pdf) => {\r\n\t\t\t\tconst nombreArchivo = 'Historico'\r\n\t\t\t\tpdf.save(nombreArchivo + '.pdf');\r\n\t\t\t\tthis.mapaService.mostrarPuntosInteres();\r\n\t\t\t\tthis.loadingVisible = false;\r\n\t\t\t}\r\n\t\t);\r\n\r\n\t}\r\n\r\n\timprimirActivo() {\r\n\t\tthis.loadingVisible = true;\r\n\r\n\t\tconst IMEI = this.mapaService.datosGenerales.imei;\r\n\t\tconst ECONOMICO = this.mapaService.datosGenerales.economico;\r\n\t\tconst SERIE = this.mapaService.datosGenerales.numeroSerie;\r\n\t\tconst MODELO = this.mapaService.datosGenerales.modelo;\r\n\t\tconst CLIENTE = this.mapaService.datosGenerales.cliente;\r\n\t\tconst DESCRIPCION = this.mapaService.datosGenerales.descripcion;\r\n\t\tconst FECHA_INICIAL = this.mapaService.historicoFechas[0];\r\n\t\tconst FECHA_FINAL = this.mapaService.historicoFechas[1];\r\n\t\tlet fechaHora = this.mapaService.datosGenerales.fechaHoraUltimaPosicion;\r\n\t\tlet dir = '';\r\n\t\tlet dir2 = '';\r\n\r\n\r\n\t\tfechaHora = this.datepipe.transform(fechaHora, 'yyyy-MM-dd h:mma');\r\n\t\tlet direccion;\r\n\r\n\t\tthis.mapaService.getDireccion([this.mapaService.datosGenerales.lng, this.mapaService.datosGenerales.lat]).then(\r\n\t\t\t(data: any) => {\r\n\t\t\t\tdireccion = data.display_name || \"Dirección Desconocida\";\r\n\t\t\t\tconst fragmentDirection = direccion.split(',');\r\n\t\t\t\tlet cont = 0;\r\n\t\t\t\twhile (cont <= 1) {\r\n\t\t\t\t\tdir = dir + fragmentDirection[cont] + ', '\r\n\t\t\t\t\tcont++;\r\n\t\t\t\t}\r\n\r\n\t\t\t\twhile (cont < fragmentDirection.length) {\r\n\t\t\t\t\tdir2 = dir2 + fragmentDirection[cont] + ', '\r\n\t\t\t\t\tcont++;\r\n\t\t\t\t}\r\n\r\n\t\t\t},\r\n\t\t\t() => {\r\n\t\t\t\tdireccion = \"Dirección Desconocida\";\r\n\t\t\t}\r\n\t\t);\r\n\r\n\r\n\t\tconst mapElement = document.getElementById('map');\r\n\t\thtml2canvas(mapElement, { useCORS: true }).then(\r\n\t\t\t(canvas) => {\r\n\t\t\t\tlet pdf = new jsPDF('p', 'pt', 'a4');\r\n\r\n\t\t\t\tconst logoGTM = './assets/media/logos/logo-gtm.png'\r\n\t\t\t\tconst logoGTMX = 20;\r\n\t\t\t\tconst logoGTMY = 15;\r\n\t\t\t\tconst logoGTMWidth = 180;\r\n\t\t\t\tconst logoGTMHeight = 80;\r\n\t\t\t\tpdf.addImage(logoGTM, 'PNG', logoGTMX, logoGTMY, logoGTMWidth, logoGTMHeight, 'MEDIUM');\r\n\r\n\t\t\t\tpdf.setFontSize(14);\r\n\t\t\t\tpdf.setFont('', 'bold')\r\n\t\t\t\tpdf.text('Historial de posiciones de [' + FECHA_INICIAL + '] a [' + FECHA_FINAL + ']', 80, 120,);\r\n\r\n\t\t\t\tconst logoGTMWater = './assets/media/logos/marca-de-agua.png'\r\n\t\t\t\tconst logoGTMWaterX = 15;\r\n\t\t\t\tconst logoGTMWaterY = 130;\r\n\t\t\t\tconst logoGTMWaterProp = (pdf as any).getImageProperties(logoGTMWater);\r\n\t\t\t\tconst logoGTMWaterWidth = pdf.internal.pageSize.getWidth() - 2 * logoGTMWaterX;\r\n\t\t\t\tconst logoGTMWaterHeight = (logoGTMWaterProp.height * logoGTMWaterWidth) / logoGTMWaterProp.width;\r\n\t\t\t\tpdf.addImage(logoGTMWater, 'PNG', logoGTMWaterX, logoGTMWaterY, logoGTMWaterWidth, logoGTMWaterHeight, 'SLOW');\r\n\r\n\t\t\t\tconst mapa = canvas.toDataURL('image/PNG');\r\n\t\t\t\tconst mapaX = 15;\r\n\t\t\t\tconst mapaY = 130;\r\n\t\t\t\tconst mapaProps = (pdf as any).getImageProperties(mapa);\r\n\t\t\t\tconst mapaWidth = pdf.internal.pageSize.getWidth() - 2 * mapaX;\r\n\t\t\t\tconst mapaHeight = (mapaProps.height * mapaWidth) / mapaProps.width;\r\n\t\t\t\tpdf.addImage(mapa, 'PNG', mapaX, mapaY, mapaWidth, mapaHeight, 'FAST');\r\n\r\n\t\t\t\tpdf.setFontSize(14);\r\n\t\t\t\tpdf.setFont('', 'bold')\r\n\t\t\t\tpdf.text('Datos del Dispositivo', 90, 470,);\r\n\r\n\t\t\t\tpdf.setFont('', 'normal')\r\n\t\t\t\tpdf.text('Activo:', 90, 485);\r\n\t\t\t\tpdf.text(MODELO, 300, 485);\r\n\r\n\t\t\t\tpdf.text('Placa:', 90, 500);\r\n\t\t\t\tpdf.text(IMEI + '', 300, 500);\r\n\r\n\t\t\t\tpdf.text('Económico:', 90, 515);\r\n\t\t\t\tpdf.text(ECONOMICO, 300, 515);\r\n\r\n\t\t\t\tpdf.text('Número de Serie:', 90, 530);\r\n\t\t\t\tpdf.text(SERIE, 300, 530);\r\n\r\n\t\t\t\tpdf.text('Cliente:', 90, 545);\r\n\t\t\t\tpdf.text(CLIENTE, 300, 545);\r\n\r\n\t\t\t\tpdf.text('Descripción:', 90, 560);\r\n\t\t\t\tpdf.text(DESCRIPCION, 300, 560);\r\n\r\n\t\t\t\tpdf.text('Dirección:', 90, 575);\r\n\t\t\t\tpdf.text(dir + '', 300, 575);\r\n\t\t\t\tpdf.text(dir2, 87, 590);\r\n\r\n\t\t\t\tpdf.setFontSize(12);\r\n\t\t\t\tpdf.setFont('sans-serif', 'bold');\r\n\r\n\t\t\t\tpdf.text('GTM Tecnología S.A. de C.V.', 220, 795);\r\n\t\t\t\tpdf.text('Carr. Temixco - Emiliano Zapata ext. 17 int. 3B Col. Palo Escrito, Emiliano Zapata, Mor, Mex. C.P. 62760', 22, 810);\r\n\t\t\t\tpdf.text('Tel. +52 7773200301, Whatsapp: +52 7771351886, monitoreo@gtmtec.mx', 65, 825);\r\n\r\n\t\t\t\treturn pdf;\r\n\r\n\t\t\t}\r\n\t\t).then(\r\n\t\t\t(pdf) => {\r\n\t\t\t\tconst nombreArchivo = 'Historico'\r\n\t\t\t\tpdf.save(nombreArchivo + '.pdf');\r\n\t\t\t\tthis.loadingVisible = false;\r\n\t\t\t}\r\n\t\t);\r\n\t}\r\n\r\n\timprimirPortatil() {\r\n\t\tthis.loadingVisible = true;\r\n\r\n\t\tconst IMEI = this.mapaService.datosGenerales.imei;\r\n\t\tconst ECONOMICO = this.mapaService.datosGenerales.economico;\r\n\t\tconst SERIE = this.mapaService.datosGenerales.numeroSerie;\r\n\t\tconst MODELO = this.mapaService.datosGenerales.modelo;\r\n\t\tconst CLIENTE = this.mapaService.datosGenerales.cliente;\r\n\t\tconst DESCRIPCION = this.mapaService.datosGenerales.descripcion;\r\n\t\tconst FECHA_INICIAL = this.mapaService.historicoFechas[0];\r\n\t\tconst FECHA_FINAL = this.mapaService.historicoFechas[1];\r\n\t\tlet fechaHora = this.mapaService.datosGenerales.fechaHoraUltimaPosicion;\r\n\t\tlet dir = '';\r\n\t\tlet dir2 = '';\r\n\r\n\r\n\t\tfechaHora = this.datepipe.transform(fechaHora, 'yyyy-MM-dd h:mma');\r\n\t\tlet direccion;\r\n\r\n\t\tthis.mapaService.getDireccion([this.mapaService.datosGenerales.lng, this.mapaService.datosGenerales.lat]).then(\r\n\t\t\t(data: any) => {\r\n\t\t\t\tdireccion = data.display_name || \"Dirección Desconocida\";\r\n\t\t\t\tconst fragmentDirection = direccion.split(',');\r\n\t\t\t\tlet cont = 0;\r\n\t\t\t\twhile (cont <= 1) {\r\n\t\t\t\t\tdir = dir + fragmentDirection[cont] + ', '\r\n\t\t\t\t\tcont++;\r\n\t\t\t\t}\r\n\r\n\t\t\t\twhile (cont < fragmentDirection.length) {\r\n\t\t\t\t\tdir2 = dir2 + fragmentDirection[cont] + ', '\r\n\t\t\t\t\tcont++;\r\n\t\t\t\t}\r\n\r\n\t\t\t},\r\n\t\t\t() => {\r\n\t\t\t\tdireccion = \"Dirección Desconocida\";\r\n\t\t\t}\r\n\t\t);\r\n\r\n\r\n\t\tconst mapElement = document.getElementById('map');\r\n\t\thtml2canvas(mapElement, { useCORS: true }).then(\r\n\t\t\t(canvas) => {\r\n\t\t\t\tlet pdf = new jsPDF('p', 'pt', 'a4');\r\n\r\n\t\t\t\tconst logoGTM = './assets/media/logos/logo-gtm.png'\r\n\t\t\t\tconst logoGTMX = 20;\r\n\t\t\t\tconst logoGTMY = 15;\r\n\t\t\t\tconst logoGTMWidth = 180;\r\n\t\t\t\tconst logoGTMHeight = 80;\r\n\t\t\t\tpdf.addImage(logoGTM, 'PNG', logoGTMX, logoGTMY, logoGTMWidth, logoGTMHeight, 'MEDIUM');\r\n\r\n\t\t\t\tpdf.setFontSize(14);\r\n\t\t\t\tpdf.setFont('', 'bold')\r\n\t\t\t\tpdf.text('Historial de posiciones de [' + FECHA_INICIAL + '] a [' + FECHA_FINAL + ']', 80, 120,);\r\n\r\n\t\t\t\tconst logoGTMWater = './assets/media/logos/marca-de-agua.png'\r\n\t\t\t\tconst logoGTMWaterX = 15;\r\n\t\t\t\tconst logoGTMWaterY = 130;\r\n\t\t\t\tconst logoGTMWaterProp = (pdf as any).getImageProperties(logoGTMWater);\r\n\t\t\t\tconst logoGTMWaterWidth = pdf.internal.pageSize.getWidth() - 2 * logoGTMWaterX;\r\n\t\t\t\tconst logoGTMWaterHeight = (logoGTMWaterProp.height * logoGTMWaterWidth) / logoGTMWaterProp.width;\r\n\t\t\t\tpdf.addImage(logoGTMWater, 'PNG', logoGTMWaterX, logoGTMWaterY, logoGTMWaterWidth, logoGTMWaterHeight, 'SLOW');\r\n\r\n\t\t\t\tconst mapa = canvas.toDataURL('image/PNG');\r\n\t\t\t\tconst mapaX = 15;\r\n\t\t\t\tconst mapaY = 130;\r\n\t\t\t\tconst mapaProps = (pdf as any).getImageProperties(mapa);\r\n\t\t\t\tconst mapaWidth = pdf.internal.pageSize.getWidth() - 2 * mapaX;\r\n\t\t\t\tconst mapaHeight = (mapaProps.height * mapaWidth) / mapaProps.width;\r\n\t\t\t\tpdf.addImage(mapa, 'PNG', mapaX, mapaY, mapaWidth, mapaHeight, 'FAST');\r\n\r\n\t\t\t\tpdf.setFontSize(14);\r\n\t\t\t\tpdf.setFont('', 'bold')\r\n\t\t\t\tpdf.text('Datos del Dispositivo', 90, 470,);\r\n\r\n\t\t\t\tpdf.setFont('', 'normal')\r\n\t\t\t\tpdf.text('Activo:', 90, 485);\r\n\t\t\t\tpdf.text(MODELO, 300, 485);\r\n\r\n\t\t\t\tpdf.text('Placa:', 90, 500);\r\n\t\t\t\tpdf.text(IMEI + '', 300, 500);\r\n\r\n\t\t\t\tpdf.text('Económico:', 90, 515);\r\n\t\t\t\tpdf.text(ECONOMICO, 300, 515);\r\n\r\n\t\t\t\tpdf.text('Número de Serie:', 90, 530);\r\n\t\t\t\tpdf.text(SERIE, 300, 530);\r\n\r\n\t\t\t\tpdf.text('Cliente:', 90, 545);\r\n\t\t\t\tpdf.text(CLIENTE, 300, 545);\r\n\r\n\t\t\t\tpdf.text('Descripción:', 90, 560);\r\n\t\t\t\tpdf.text(DESCRIPCION, 300, 560);\r\n\r\n\t\t\t\tpdf.text('Dirección:', 90, 575);\r\n\t\t\t\tpdf.text(dir + '', 300, 575);\r\n\t\t\t\tpdf.text(dir2, 87, 590);\r\n\r\n\t\t\t\tpdf.setFontSize(12);\r\n\t\t\t\tpdf.setFont('sans-serif', 'bold');\r\n\r\n\t\t\t\tpdf.text('GTM Tecnología S.A. de C.V.', 220, 795);\r\n\t\t\t\tpdf.text('Carr. Temixco - Emiliano Zapata ext. 17 int. 3B Col. Palo Escrito, Emiliano Zapata, Mor, Mex. C.P. 62760', 22, 810);\r\n\t\t\t\tpdf.text('Tel. +52 7773200301, Whatsapp: +52 7771351886, monitoreo@gtmtec.mx', 65, 825);\r\n\r\n\t\t\t\treturn pdf;\r\n\r\n\t\t\t}\r\n\t\t).then(\r\n\t\t\t(pdf) => {\r\n\t\t\t\tconst nombreArchivo = 'Historico'\r\n\t\t\t\tpdf.save(nombreArchivo + '.pdf');\r\n\t\t\t\tthis.loadingVisible = false;\r\n\t\t\t}\r\n\t\t);\r\n\t}\r\n\r\n\timprimirTelefono() {\r\n\t\tthis.loadingVisible = true;\r\n\r\n\t\tconst IMEI = this.mapaService.datosGenerales.imei;\r\n\t\tconst ECONOMICO = this.mapaService.datosGenerales.economico;\r\n\t\tconst SERIE = this.mapaService.datosGenerales.numeroSerie;\r\n\t\tconst MODELO = this.mapaService.datosGenerales.modelo;\r\n\t\tconst CLIENTE = this.mapaService.datosGenerales.cliente;\r\n\t\tconst DESCRIPCION = this.mapaService.datosGenerales.descripcion;\r\n\t\tconst FECHA_INICIAL = this.mapaService.historicoFechas[0];\r\n\t\tconst FECHA_FINAL = this.mapaService.historicoFechas[1];\r\n\t\tlet fechaHora = this.mapaService.datosGenerales.fechaHoraUltimaPosicion;\r\n\t\tlet direccion;\r\n\t\tlet dir = '';\r\n\t\tlet dir2 = '';\r\n\r\n\t\tfechaHora = this.datepipe.transform(fechaHora, 'yyyy-MM-dd h:mma');\r\n\r\n\t\tthis.mapaService.getDireccion([this.mapaService.datosGenerales.lng, this.mapaService.datosGenerales.lat]).then(\r\n\t\t\t(data: any) => {\r\n\t\t\t\tdireccion = data.display_name || \"Dirección Desconocida\";\r\n\t\t\t\tconst fragmentDirection = direccion.split(',');\r\n\t\t\t\tlet cont = 0;\r\n\t\t\t\twhile (cont <= 1) {\r\n\t\t\t\t\tdir = dir + fragmentDirection[cont] + ', '\r\n\t\t\t\t\tcont++;\r\n\t\t\t\t}\r\n\r\n\t\t\t\twhile (cont < fragmentDirection.length) {\r\n\t\t\t\t\tdir2 = dir2 + fragmentDirection[cont] + ', '\r\n\t\t\t\t\tcont++;\r\n\t\t\t\t}\r\n\r\n\t\t\t},\r\n\t\t\t() => {\r\n\t\t\t\tdireccion = \"Dirección Desconocida\";\r\n\t\t\t}\r\n\t\t);\r\n\r\n\t\tconst mapElement = document.getElementById('map');\r\n\t\thtml2canvas(mapElement, { useCORS: true }).then(\r\n\t\t\t(canvas) => {\r\n\t\t\t\tlet pdf = new jsPDF('p', 'pt', 'a4');\r\n\r\n\t\t\t\tconst logoGTM = './assets/media/logos/logo-gtm.png'\r\n\t\t\t\tconst logoGTMX = 20;\r\n\t\t\t\tconst logoGTMY = 15;\r\n\t\t\t\tconst logoGTMWidth = 180;\r\n\t\t\t\tconst logoGTMHeight = 80;\r\n\t\t\t\tpdf.addImage(logoGTM, 'PNG', logoGTMX, logoGTMY, logoGTMWidth, logoGTMHeight, 'MEDIUM');\r\n\r\n\t\t\t\tpdf.setFontSize(14);\r\n\t\t\t\tpdf.setFont('', 'bold')\r\n\t\t\t\tpdf.text('Historial de posiciones de [' + FECHA_INICIAL + '] a [' + FECHA_FINAL + ']', 80, 120,);\r\n\r\n\t\t\t\tconst logoGTMWater = './assets/media/logos/marca-de-agua.png'\r\n\t\t\t\tconst logoGTMWaterX = 15;\r\n\t\t\t\tconst logoGTMWaterY = 130;\r\n\t\t\t\tconst logoGTMWaterProp = (pdf as any).getImageProperties(logoGTMWater);\r\n\t\t\t\tconst logoGTMWaterWidth = pdf.internal.pageSize.getWidth() - 2 * logoGTMWaterX;\r\n\t\t\t\tconst logoGTMWaterHeight = (logoGTMWaterProp.height * logoGTMWaterWidth) / logoGTMWaterProp.width;\r\n\t\t\t\tpdf.addImage(logoGTMWater, 'PNG', logoGTMWaterX, logoGTMWaterY, logoGTMWaterWidth, logoGTMWaterHeight, 'SLOW');\r\n\r\n\t\t\t\tconst mapa = canvas.toDataURL('image/PNG');\r\n\t\t\t\tconst mapaX = 15;\r\n\t\t\t\tconst mapaY = 130;\r\n\t\t\t\tconst mapaProps = (pdf as any).getImageProperties(mapa);\r\n\t\t\t\tconst mapaWidth = pdf.internal.pageSize.getWidth() - 2 * mapaX;\r\n\t\t\t\tconst mapaHeight = (mapaProps.height * mapaWidth) / mapaProps.width;\r\n\t\t\t\tpdf.addImage(mapa, 'PNG', mapaX, mapaY, mapaWidth, mapaHeight, 'FAST');\r\n\r\n\t\t\t\tpdf.setFontSize(14);\r\n\t\t\t\tpdf.setFont('', 'bold')\r\n\t\t\t\tpdf.text('Datos del Dispositivo', 90, 470,);\r\n\r\n\t\t\t\tpdf.setFont('', 'normal')\r\n\t\t\t\tpdf.text('Activo:', 90, 485);\r\n\t\t\t\tpdf.text(MODELO, 300, 485);\r\n\r\n\t\t\t\tpdf.text('Placa:', 90, 500);\r\n\t\t\t\tpdf.text(IMEI + '', 300, 500);\r\n\r\n\t\t\t\tpdf.text('Económico:', 90, 515);\r\n\t\t\t\tpdf.text(ECONOMICO, 300, 515);\r\n\r\n\t\t\t\tpdf.text('Número de Serie:', 90, 530);\r\n\t\t\t\tpdf.text(SERIE, 300, 530);\r\n\r\n\t\t\t\tpdf.text('Cliente:', 90, 545);\r\n\t\t\t\tpdf.text(CLIENTE, 300, 545);\r\n\r\n\t\t\t\tpdf.text('Descripción:', 90, 560);\r\n\t\t\t\tpdf.text(DESCRIPCION, 300, 560);\r\n\r\n\t\t\t\tpdf.text('Dirección:', 90, 575);\r\n\t\t\t\tpdf.text(dir + '', 300, 575);\r\n\t\t\t\tpdf.text(dir2, 87, 590);\r\n\r\n\t\t\t\tpdf.setFontSize(12);\r\n\t\t\t\tpdf.setFont('sans-serif', 'bold');\r\n\r\n\t\t\t\tpdf.text('GTM Tecnología S.A. de C.V.', 220, 795);\r\n\t\t\t\tpdf.text('Carr. Temixco - Emiliano Zapata ext. 17 int. 3B Col. Palo Escrito, Emiliano Zapata, Mor, Mex. C.P. 62760', 22, 810);\r\n\t\t\t\tpdf.text('Tel. +52 7773200301, Whatsapp: +52 7771351886, monitoreo@gtmtec.mx', 65, 825);\r\n\r\n\t\t\t\treturn pdf;\r\n\r\n\t\t\t}\r\n\t\t).then(\r\n\t\t\t(pdf) => {\r\n\t\t\t\tconst nombreArchivo = 'Historico'\r\n\t\t\t\tpdf.save(nombreArchivo + '.pdf');\r\n\t\t\t\tthis.loadingVisible = false;\r\n\t\t\t}\r\n\t\t);\r\n\t}\r\n\r\n\timprimirMedidor() {\r\n\t\tthis.loadingVisible = true;\r\n\r\n\t\tconst IMEI = this.mapaService.datosGenerales.imei;\r\n\t\tconst ECONOMICO = this.mapaService.datosGenerales.economico;\r\n\t\tconst SERIE = this.mapaService.datosGenerales.numeroSerie;\r\n\t\tconst MODELO = this.mapaService.datosGenerales.modelo;\r\n\t\tconst CLIENTE = this.mapaService.datosGenerales.cliente;\r\n\t\tconst DESCRIPCION = this.mapaService.datosGenerales.descripcion;\r\n\t\tconst FECHA_INICIAL = this.mapaService.historicoFechas[0];\r\n\t\tconst FECHA_FINAL = this.mapaService.historicoFechas[1];\r\n\t\tlet fechaHora = this.mapaService.datosGenerales.fechaHoraUltimaPosicion;\r\n\t\tlet direccion;\r\n\t\tlet dir = '';\r\n\t\tlet dir2 = '';\r\n\r\n\t\tfechaHora = this.datepipe.transform(fechaHora, 'yyyy-MM-dd h:mma');\r\n\r\n\t\tthis.mapaService.getDireccion([this.mapaService.datosGenerales.lng, this.mapaService.datosGenerales.lat]).then(\r\n\t\t\t(data: any) => {\r\n\t\t\t\tdireccion = data.display_name || \"Dirección Desconocida\";\r\n\r\n\t\t\t\tconst fragmentDirection = direccion.split(',');\r\n\t\t\t\tlet cont = 0;\r\n\t\t\t\twhile (cont <= 1) {\r\n\t\t\t\t\tdir = dir + fragmentDirection[cont] + ', '\r\n\t\t\t\t\tcont++;\r\n\t\t\t\t}\r\n\r\n\t\t\t\twhile (cont < fragmentDirection.length) {\r\n\t\t\t\t\tdir2 = dir2 + fragmentDirection[cont] + ', '\r\n\t\t\t\t\tcont++;\r\n\t\t\t\t}\r\n\r\n\t\t\t},\r\n\t\t\t() => {\r\n\t\t\t\tdireccion = \"Dirección Desconocida\";\r\n\t\t\t}\r\n\t\t);\r\n\r\n\r\n\t\tconst mapElement = document.getElementById('map');\r\n\t\thtml2canvas(mapElement, { useCORS: true }).then(\r\n\t\t\t(canvas) => {\r\n\t\t\t\tlet pdf = new jsPDF('p', 'pt', 'a4');\r\n\r\n\t\t\t\tconst logoGTM = './assets/media/logos/logo-gtm.png'\r\n\t\t\t\tconst logoGTMX = 20;\r\n\t\t\t\tconst logoGTMY = 15;\r\n\t\t\t\tconst logoGTMWidth = 180;\r\n\t\t\t\tconst logoGTMHeight = 80;\r\n\t\t\t\tpdf.addImage(logoGTM, 'PNG', logoGTMX, logoGTMY, logoGTMWidth, logoGTMHeight, 'MEDIUM');\r\n\r\n\t\t\t\tpdf.setFontSize(14);\r\n\t\t\t\tpdf.setFont('', 'bold')\r\n\t\t\t\tpdf.text('Historial de posiciones de [' + FECHA_INICIAL + '] a [' + FECHA_FINAL + ']', 80, 120,);\r\n\r\n\t\t\t\tconst logoGTMWater = './assets/media/logos/marca-de-agua.png'\r\n\t\t\t\tconst logoGTMWaterX = 15;\r\n\t\t\t\tconst logoGTMWaterY = 130;\r\n\t\t\t\tconst logoGTMWaterProp = (pdf as any).getImageProperties(logoGTMWater);\r\n\t\t\t\tconst logoGTMWaterWidth = pdf.internal.pageSize.getWidth() - 2 * logoGTMWaterX;\r\n\t\t\t\tconst logoGTMWaterHeight = (logoGTMWaterProp.height * logoGTMWaterWidth) / logoGTMWaterProp.width;\r\n\t\t\t\tpdf.addImage(logoGTMWater, 'PNG', logoGTMWaterX, logoGTMWaterY, logoGTMWaterWidth, logoGTMWaterHeight, 'SLOW');\r\n\r\n\t\t\t\tconst mapa = canvas.toDataURL('image/PNG');\r\n\t\t\t\tconst mapaX = 15;\r\n\t\t\t\tconst mapaY = 130;\r\n\t\t\t\tconst mapaProps = (pdf as any).getImageProperties(mapa);\r\n\t\t\t\tconst mapaWidth = pdf.internal.pageSize.getWidth() - 2 * mapaX;\r\n\t\t\t\tconst mapaHeight = (mapaProps.height * mapaWidth) / mapaProps.width;\r\n\t\t\t\tpdf.addImage(mapa, 'PNG', mapaX, mapaY, mapaWidth, mapaHeight, 'FAST');\r\n\r\n\t\t\t\tpdf.setFontSize(14);\r\n\t\t\t\tpdf.setFont('', 'bold')\r\n\t\t\t\tpdf.text('Datos del Dispositivo', 90, 470,);\r\n\r\n\t\t\t\tpdf.setFont('', 'normal')\r\n\t\t\t\tpdf.text('Activo:', 90, 485);\r\n\t\t\t\tpdf.text(MODELO, 300, 485);\r\n\r\n\t\t\t\tpdf.text('Placa:', 90, 500);\r\n\t\t\t\tpdf.text(IMEI + '', 300, 500);\r\n\r\n\t\t\t\tpdf.text('Económico:', 90, 515);\r\n\t\t\t\tpdf.text(ECONOMICO, 300, 515);\r\n\r\n\t\t\t\tpdf.text('Número de Serie:', 90, 530);\r\n\t\t\t\tpdf.text(SERIE, 300, 530);\r\n\r\n\t\t\t\tpdf.text('Cliente:', 90, 545);\r\n\t\t\t\tpdf.text(CLIENTE, 300, 545);\r\n\r\n\t\t\t\tpdf.text('Descripción:', 90, 560);\r\n\t\t\t\tpdf.text(DESCRIPCION, 300, 560);\r\n\r\n\t\t\t\tpdf.text('Dirección:', 90, 575);\r\n\t\t\t\tpdf.text(dir + '', 300, 575);\r\n\t\t\t\tpdf.text(dir2, 87, 590);\r\n\r\n\t\t\t\tpdf.setFontSize(12);\r\n\t\t\t\tpdf.setFont('sans-serif', 'bold');\r\n\r\n\t\t\t\tpdf.text('GTM Tecnología S.A. de C.V.', 220, 795);\r\n\t\t\t\tpdf.text('Carr. Temixco - Emiliano Zapata ext. 17 int. 3B Col. Palo Escrito, Emiliano Zapata, Mor, Mex. C.P. 62760', 22, 810);\r\n\t\t\t\tpdf.text('Tel. +52 7773200301, Whatsapp: +52 7771351886, monitoreo@gtmtec.mx', 65, 825);\r\n\r\n\t\t\t\treturn pdf;\r\n\r\n\t\t\t}\r\n\t\t).then(\r\n\t\t\t(pdf) => {\r\n\t\t\t\tconst nombreArchivo = 'Historico'\r\n\t\t\t\tpdf.save(nombreArchivo + '.pdf');\r\n\t\t\t\tthis.loadingVisible = false;\r\n\t\t\t}\r\n\t\t);\r\n\t}\r\n\r\n\tobtenerCoordenadaPixel() {\r\n\t\t$('body').removeClass('open-submenu');\r\n\t\t$('[data-toggle=w-dropdown], .w-dropdown-menu').removeClass('open');\r\n\t\tthis.mapaService.puntosInteres();\r\n\t}\r\n\r\n\tpublic historicoStreetView() {\r\n\t\tthis.mapaService.historicoStreetView();\r\n\t}\r\n\r\n\tpublic irInicioRecorrido() {\r\n\t\tthis.mapaService.irInicioRecorrido();\r\n\t\tthis.mapaService.map.updateSize();\r\n\t}\r\n\r\n\tpublic irAnterior() {\r\n\t\tthis.mapaService.irAnterior();\r\n\t}\r\n\r\n\tpublic irSiguiente() {\r\n\t\tthis.mapaService.irSiguiente();\r\n\r\n\t}\r\n\r\n\tpublic irFinalRecorrido() {\r\n\t\tthis.mapaService.irFinalRecorrido();\r\n\t}\r\n\r\n\tpublic cerrarRecorrido() {\r\n\t\tsessionStorage.removeItem('historico');\r\n\t\tsessionStorage.removeItem('data')\r\n\t\tthis.mapaService.cerrarRecorrido();\r\n\t\tconst botonesRecorrido = document.getElementById('botonesRecorrido');\r\n\t\tbotonesRecorrido.style.display = 'none';\r\n\r\n\t\tdocument.getElementById('style-7').classList.remove('menu-barHidde');\r\n\t\tdocument.getElementById('map-content').classList.remove('map-recorrido');\r\n\t\tthis.mapaService.map.getView().setZoom(8)\r\n\t\tthis.videosDisponibles = false;\r\n\t\tthis.estadoHistorico = false;\r\n\t}\r\n\r\n\r\n\tpublic cerrarPopup() {\r\n\t\tthis.mapaService.undefinedPopup();\r\n\t}\r\n}\r\n","import { GaleriaVehiculoComponent } from './components/popups/vehiculos/galeria-vehiculo/galeria-vehiculo.component';\r\nimport { HistorialVelocidadesVehiculoComponent } from './components/popups/vehiculos/historial-velocidades-vehiculo/historial-velocidades-vehiculo.component';\r\nimport { PasoPuntoVehiculoComponent } from './components/popups/vehiculos/paso-punto-vehiculo/paso-punto-vehiculo.component';\r\nimport { NgxPermissionsModule } from 'ngx-permissions';\r\nimport { GaugeChartModule } from 'angular-gauge-chart';\r\nimport { MatCardModule } from '@angular/material/card';\r\nimport { GoogleChartsModule } from 'angular-google-charts';\r\nimport { DragDropModule } from '@angular/cdk/drag-drop';\r\nimport { CdkTreeModule } from '@angular/cdk/tree';\r\nimport { CdkTableModule } from '@angular/cdk/table';\r\nimport { CdkStepperModule } from '@angular/cdk/stepper';\r\nimport { ToastrModule } from 'ngx-toastr';\r\nimport { SharedModule } from './../../shared_modules/shared.module';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { MatDialogModule } from '@angular/material/dialog';\r\nimport { MatDividerModule, MatListModule } from '@angular/material';\r\nimport { DxButtonModule, DxTemplateModule, DxDataGridModule, DxSelectBoxModule, DxCheckBoxModule, DxTreeListModule, DxFormModule, DxPopupModule, DxPopoverModule, DxDateBoxModule, DxLoadPanelModule, DxValidationGroupModule, DxValidatorModule, DxTagBoxModule, DxCircularGaugeModule, DxLinearGaugeModule, DxChartModule, DxTabPanelModule, DxTabsModule } from 'devextreme-angular';\r\nimport { NgModule } from '@angular/core';\r\nimport { CommonModule, DatePipe } from '@angular/common';\r\n\r\nimport { MonitoreoRoutingModule } from './monitoreo-routing.module';\r\nimport { MonitoreoComponent } from './monitoreo.component';\r\nimport { NgxChartsModule } from '@swimlane/ngx-charts';\r\nimport { InformacionVehiculoComponent } from './components/popups/vehiculos/informacion-vehiculo/informacion-vehiculo.component';\r\nimport { HistoricoPosicionesVehiculoComponent } from './components/popups/vehiculos/historico-posiciones-vehiculo/historico-posiciones-vehiculo.component';\r\nimport { NgbModalModule } from '@ng-bootstrap/ng-bootstrap';\r\nimport { GraficaEstadisticaVehiculoComponent } from './components/popups/vehiculos/historico-posiciones-vehiculo/grafica-estadistica-vehiculo/grafica-estadistica-vehiculo.component';\r\nimport { InformacionMedidorComponent } from './components/popups/medidores/informacion-medidor/informacion-medidor.component';\r\nimport { StreetViewComponent } from './components/popups/street-view/street-view.component';\r\nimport { HistoricoPosicionesMedidorComponent } from './components/popups/medidores/historico-posiciones-medidor/historico-posiciones-medidor.component';\r\nimport { GraficaEstadisticaMedidorComponent } from './components/popups/medidores/historico-posiciones-medidor/grafica-estadistica-medidor/grafica-estadistica-medidor.component';\r\nimport { InformacionMicromedidorComponent } from './components/popups/micromedidores/informacion-micromedidor/informacion-micromedidor.component';\r\nimport { VehiculoModalComponent } from './components/dialogos/vehiculos/vehiculo-modal/vehiculo-modal.component';\r\nimport { VehiculoUltimaTransmisionComponent } from './components/dialogos/vehiculos/vehiculo-ultima-transmision/vehiculo-ultima-transmision.component';\r\nimport { MedidorModalComponent } from './components/dialogos/medidores/medidor-modal/medidor-modal.component';\r\nimport { MedidorUltimaTransmisionComponent } from './components/dialogos/medidores/medidor-ultima-transmision/medidor-ultima-transmision.component';\r\nimport { MicromedidorModalComponent } from './components/dialogos/micromedidores/micromedidor-modal/micromedidor-modal.component';\r\nimport { MicromedidorUltimaTransmisionComponent } from './components/dialogos/micromedidores/micromedidor-ultima-transmision/micromedidor-ultima-transmision.component';\r\nimport { GuardarGeocercaComponent } from './components/dialogos/geocercas/guardar-geocerca/guardar-geocerca.component';\r\nimport { GeocercaModalComponent } from './components/dialogos/geocercas/geocerca-modal/geocerca-modal.component';\r\nimport { PuntosInteresModalComponent } from './components/dialogos/puntos-interes/puntos-interes-modal/puntos-interes-modal.component';\r\nimport { GuardarPuntoInteresComponent } from './components/dialogos/puntos-interes/guardar-punto-interes/guardar-punto-interes.component';\r\nimport { SemaforoModalComponent } from './components/dialogos/semaforo/semaforo-modal/semaforo-modal.component';\r\nimport { InformacionActivoComponent } from './components/popups/activos/informacion-activo/informacion-activo.component';\r\nimport { HistoricoPosicionesActivoComponent } from './components/popups/activos/historico-posiciones-activo/historico-posiciones-activo.component';\r\nimport { ActivoModalComponent } from './components/dialogos/activos/activo-modal/activo-modal.component';\r\nimport { ActivoUltimaTransmisionComponent } from './components/dialogos/activos/activo-ultima-transmision/activo-ultima-transmision.component';\r\nimport { TelefonoModalComponent } from './components/dialogos/telefonos/telefono-modal/telefono-modal.component';\r\nimport { TelefonoUltimaTransmisionComponent } from './components/dialogos/telefonos/telefono-ultima-transmision/telefono-ultima-transmision.component';\r\nimport { HistoricoPosicionesTelefonoComponent } from './components/popups/telefonos/historico-posiciones-telefono/historico-posiciones-telefono.component';\r\nimport { InformacionTelefonoComponent } from './components/popups/telefonos/informacion-telefono/informacion-telefono.component';\r\nimport { AlertasComponent } from './components/dialogos/alertas/alertas.component';\r\nimport { GaleriaVideosComponent } from './components/popups/vehiculos/galeria-videos/galeria-videos.component';\r\nimport { SafeUrlPipe } from './components/popups/vehiculos/galeria-videos/safe-url.pipe';\r\nimport { PasoPuntoComponent } from './components/dialogos/vehiculos/paso-punto/paso-punto.component';\r\nimport { DentroGeocercaComponent } from './components/popups/vehiculos/dentro-geocerca/dentro-geocerca.component';\r\nimport { FueraGeocercaComponent } from './components/popups/vehiculos/fuera-geocerca/fuera-geocerca.component';\r\nimport { DentroGeocercaModalComponent } from './components/dialogos/vehiculos/dentro-geocerca-modal/dentro-geocerca-modal.component';\r\nimport { MapaMarkerComponent } from './components/mapa-marker/mapa-marker.component';\r\nimport { PlayVideoComponent } from './components/popups/vehiculos/galeria-videos/play-video/play-video.component';\r\nimport { StreamVideoComponent } from './components/popups/vehiculos/galeria-videos/stream-video/stream-video.component';\r\nimport { ReutilizablesModule } from '../reutilizables/reutilizables.module';\r\nimport { PopupRecorridoHistoricoComponent } from './components/popups/popup-recorrido-historico/popup-recorrido-historico.component';\r\nimport { HistoricoMedicionesMicromedidorComponent } from './components/popups/micromedidores/historico-mediciones-micromedidor/historico-mediciones-micromedidor.component';\r\nimport { CategoriasComponent } from './components/dialogos/geocercas/categorias/categorias.component';\r\nimport { ReproduccionComponent } from './components/popups/vehiculos/reproduccion/reproduccion.component';\r\nimport { FiltroProductosComponent } from './components/dialogos/filtro-productos/filtro-productos.component';\r\nimport { GaleriaNuevoDispositivoComponent } from './components/popups/vehiculos/galeria-nuevo-dispositivo/galeria-nuevo-dispositivo.component';\r\nimport { PortatilModalComponent } from './components/dialogos/portatiles/portatil-modal/portatil-modal.component';\r\nimport { PortatilUltimaTransmisionComponent } from './components/dialogos/portatiles/portatil-ultima-transmision/portatil-ultima-transmision.component';\r\nimport { HistoricoPosicionesPortatilesComponent } from './components/popups/portatiles/historico-posiciones-portatiles/historico-posiciones-portatiles.component';\r\nimport { InformacionPortatilComponent } from './components/popups/portatiles/informacion-portatil/informacion-portatil.component';\r\nimport { ModalImagenComponent } from '../mantenimiento/components/modal-imagen/modal-imagen.component';\r\nimport { PerfiloperadorComponent } from './components/popups/vehiculos/perfiloperador/perfiloperador.component';\r\nimport { UltimaTransmisionBotonCiudadanoComponent } from './components/dialogos/ultima-transmision-boton-ciudadano/ultima-transmision-boton-ciudadano.component';\r\nimport { BotonCiudadanoComponent } from './components/dialogos/boton-ciudadano/boton-ciudadano.component';\r\nimport { InformacionPanelComponent } from './components/popups/paneles/informacion-panel/informacion-panel.component';\r\nimport { HistoricoPanelComponent } from './components/popups/paneles/historico-panel/historico-panel.component';\r\nimport { HistoricoCombustibleComponent } from './components/popups/vehiculos/historico-combustible/historico-combustible.component';\r\nimport { GraficaHistoricoCombustibleComponent } from './components/popups/vehiculos/grafica-historico-combustible/grafica-historico-combustible.component';\r\n\r\n@NgModule({\r\n\tdeclarations: [\r\n\t\tMonitoreoComponent,\r\n\t\tInformacionVehiculoComponent,\r\n\t\tHistoricoPosicionesVehiculoComponent,\r\n\t\tStreetViewComponent,\r\n\t\tPasoPuntoVehiculoComponent,\r\n\t\tHistorialVelocidadesVehiculoComponent,\r\n\t\tGaleriaVehiculoComponent,\r\n\t\tGraficaEstadisticaVehiculoComponent,\r\n\t\tInformacionMedidorComponent,\r\n\t\tHistoricoPosicionesMedidorComponent,\r\n\t\tGraficaEstadisticaMedidorComponent,\r\n\t\tInformacionMicromedidorComponent,\r\n\t\tVehiculoModalComponent,\r\n\t\tVehiculoUltimaTransmisionComponent,\r\n\t\tMedidorModalComponent,\r\n\t\tMedidorUltimaTransmisionComponent,\r\n\t\tMicromedidorModalComponent,\r\n\t\tMicromedidorUltimaTransmisionComponent,\r\n\t\tGuardarGeocercaComponent,\r\n\t\tGeocercaModalComponent,\r\n\t\tPuntosInteresModalComponent,\r\n\t\tGuardarPuntoInteresComponent,\r\n\t\tSemaforoModalComponent,\r\n\t\tInformacionActivoComponent,\r\n\t\tHistoricoPosicionesActivoComponent,\r\n\t\tActivoModalComponent,\r\n\t\tActivoUltimaTransmisionComponent,\r\n\t\tTelefonoModalComponent,\r\n\t\tTelefonoUltimaTransmisionComponent,\r\n\t\tHistoricoPosicionesTelefonoComponent,\r\n\t\tInformacionTelefonoComponent,\r\n\t\tAlertasComponent,\r\n\t\tGaleriaVideosComponent,\r\n\t\tSafeUrlPipe,\r\n\t\tPasoPuntoComponent,\r\n\t\tDentroGeocercaComponent,\r\n\t\tFueraGeocercaComponent,\r\n\t\tDentroGeocercaModalComponent,\r\n\t\tMapaMarkerComponent,\r\n\t\tPlayVideoComponent,\r\n\t\tStreamVideoComponent,\r\n\t\tPopupRecorridoHistoricoComponent,\r\n\t\tHistoricoMedicionesMicromedidorComponent,\r\n\t\tCategoriasComponent,\r\n\t\tReproduccionComponent,\r\n\t\tFiltroProductosComponent,\r\n\t\tGaleriaNuevoDispositivoComponent,\r\n\t\tPortatilModalComponent,\r\n\t\tPortatilUltimaTransmisionComponent,\r\n\t\tHistoricoPosicionesPortatilesComponent,\r\n\t\tInformacionPortatilComponent,\r\n\t\tPerfiloperadorComponent,\r\n\t\tUltimaTransmisionBotonCiudadanoComponent,\r\n\t\tBotonCiudadanoComponent,\r\n\t\tInformacionPanelComponent,\r\n\t\tHistoricoPanelComponent,\r\n\t\tHistoricoCombustibleComponent,\r\n\t\tGraficaHistoricoCombustibleComponent,\r\n\t],\r\n\r\n\timports: [\r\n\t\tCommonModule,\r\n\t\tMonitoreoRoutingModule,\r\n\t\tDxButtonModule,\r\n\t\tDxTemplateModule,\r\n\t\tDxDataGridModule,\r\n\t\tMatDividerModule,\r\n\t\tMatListModule,\r\n\t\tDxSelectBoxModule,\r\n\t\tDxCheckBoxModule,\r\n\t\tDxTreeListModule,\r\n\t\tMatDialogModule,\r\n\t\tDxFormModule,\r\n\t\tFormsModule,\r\n\t\tDxButtonModule,\r\n\t\tDxPopupModule,\r\n\t\tDxPopoverModule,\r\n\t\tDxDateBoxModule,\r\n\t\tDxLoadPanelModule,\r\n\t\tDxValidatorModule,\r\n\t\tDxValidationGroupModule,\r\n\t\tDxTagBoxModule,\r\n\t\tDxCircularGaugeModule,\r\n\t\tDxLinearGaugeModule,\r\n\t\tDxChartModule,\r\n\t\tDxTabPanelModule,\r\n\t\tDxTabsModule,\r\n\t\tSharedModule,\r\n\t\tToastrModule.forRoot(),\r\n\t\tCdkStepperModule,\r\n\t\tCdkTableModule,\r\n\t\tCdkTreeModule,\r\n\t\tDragDropModule,\r\n\t\tGoogleChartsModule.forRoot(),\r\n\t\tMatCardModule,\r\n\t\tGaugeChartModule,\r\n\t\tNgxPermissionsModule,\r\n\t\tNgxChartsModule,\r\n\t\tNgbModalModule,\r\n\t\tReutilizablesModule\r\n\t],\r\n\r\n\tproviders: [\r\n\t\tDatePipe\r\n\t],\r\n\r\n\tentryComponents: [\r\n\t\t/**Popups vehiculos */\r\n\t\tInformacionVehiculoComponent,\r\n\t\tStreetViewComponent,\r\n\t\tPasoPuntoVehiculoComponent,\r\n\t\tHistorialVelocidadesVehiculoComponent,\r\n\t\tHistoricoPosicionesVehiculoComponent,\r\n\t\tGraficaEstadisticaVehiculoComponent,\r\n\t\tGaleriaVehiculoComponent,\r\n\t\tGaleriaVideosComponent,\r\n\t\tPasoPuntoComponent,\r\n\t\tDentroGeocercaComponent,\r\n\t\tFueraGeocercaComponent,\r\n\t\tDentroGeocercaModalComponent,\r\n\t\tMapaMarkerComponent,\r\n\t\tPlayVideoComponent,\r\n\t\tGaleriaNuevoDispositivoComponent,\r\n\t\tHistoricoCombustibleComponent,\r\n\t\tGraficaHistoricoCombustibleComponent,\r\n\t\tMapaMarkerComponent,\r\n\t\t/**Portatiles */\r\n\t\tPortatilModalComponent,\r\n\t\tPortatilUltimaTransmisionComponent,\r\n\t\tInformacionPortatilComponent,\r\n\t\tHistoricoPosicionesPortatilesComponent,\r\n\t\t/**Popups medidodres */\r\n\t\tInformacionMedidorComponent,\r\n\t\tHistoricoPosicionesMedidorComponent,\r\n\t\tGraficaEstadisticaMedidorComponent,\r\n\t\t/**Popuup micromedidores */\r\n\t\tInformacionMicromedidorComponent,\r\n\t\tHistoricoMedicionesMicromedidorComponent,\r\n\r\n\t\t/**Popups activos */\r\n\t\tInformacionActivoComponent,\r\n\t\tHistoricoPosicionesActivoComponent,\r\n\r\n\t\t/**Popups telefonos */\r\n\t\tInformacionTelefonoComponent,\r\n\t\tHistoricoPosicionesTelefonoComponent,\r\n\r\n\t\t/**Modales */\r\n\t\tVehiculoModalComponent,\r\n\t\tVehiculoUltimaTransmisionComponent,\r\n\t\tMedidorModalComponent,\r\n\t\tMedidorUltimaTransmisionComponent,\r\n\t\tMicromedidorModalComponent,\r\n\t\tMicromedidorUltimaTransmisionComponent,\r\n\t\tGeocercaModalComponent,\r\n\t\tGuardarGeocercaComponent,\r\n\t\tPuntosInteresModalComponent,\r\n\t\tGuardarPuntoInteresComponent,\r\n\t\tSemaforoModalComponent,\r\n\t\tActivoModalComponent,\r\n\t\tActivoUltimaTransmisionComponent,\r\n\t\tTelefonoModalComponent,\r\n\t\tTelefonoUltimaTransmisionComponent,\r\n\t\tAlertasComponent,\r\n\t\tStreamVideoComponent,\r\n\t\tCategoriasComponent,\r\n\t\tPopupRecorridoHistoricoComponent,\r\n\t\tReproduccionComponent,\r\n\t\tFiltroProductosComponent,\r\n\t\tPerfiloperadorComponent,\r\n\t\t/**paneles */\r\n\t\tBotonCiudadanoComponent,\r\n\t\tUltimaTransmisionBotonCiudadanoComponent,\r\n\t\tInformacionPanelComponent,\r\n\t\tHistoricoPanelComponent\r\n\t]\r\n})\r\nexport class MonitoreoModule { }\r\n","import { ActivoUltimaTransmision, ActivoHistoricoPosiciones } from './../../../_entities/activos/activo';\r\nimport { Observable } from 'rxjs';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { environment } from './../../../../environments/environment';\r\nimport { Activo } from './../../../_entities/activos/activo';\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ActivosService {\r\n\r\n constructor(private http: HttpClient) { }\r\n\r\n obtenerActivos(): Observable{\r\n return this.http.get(environment.API_SECURITY + '/api/CrudActivos');\r\n }\r\n\r\n obtenerUltimaTransmisionActivos(): Observable{\r\n return this.http.get(environment.API_SECURITY + '/api/CrudActivos/UltimaActivo')\r\n }\r\n\r\n obtenerReportePosiciones(imei: number, fechaInicio, fechaFinal): Observable{\r\n return this.http.get(environment.API_SECURITY + '/api/CrudActivos/' + imei + '/reporte-historico', {\r\n params: {\r\n fechaInicio,\r\n fechaFinal\r\n }\r\n })\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Observable } from 'rxjs';\r\nimport { Categorias } from '../../../_entities/geocerca/Categorias';\r\nimport { environment } from '../../../../environments/environment';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class CategoriasService {\r\n\r\n constructor(private http:HttpClient) { }\r\n\r\n obtenerCategorias():Observable{\r\n return this.http.get(environment.API_SECURITY+'/api/Geocercas/ObtenerCategorias');\r\n }\r\n\r\n obtenerCategoriaId(id:number):Observable{\r\n return this.http.get(environment.API_SECURITY+'/api/Geocercas/ObtenerCategoria/'+id);\r\n }\r\n\r\n agregarCategoria(categoria){\r\n return this.http.post(environment.API_SECURITY+'/api/Geocercas/AgregarCategoria',categoria);\r\n }\r\n\r\n eliminarCategoria(id:number):Observable{\r\n return this.http.delete(environment.API_SECURITY+'/api/Geocercas/EliminarCategoria/'+id);\r\n }\r\n\r\n actualizarCategoria(categoria){\r\n return this.http.put(environment.API_SECURITY+'/api/Geocercas/ActualizarCategoria',categoria);\r\n }\r\n}\r\n","import { Autos } from './../../../_entities/autos/Autos';\r\nimport { Injectable } from '@angular/core';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ContadorSemaforoService {\r\n gris = 0;\r\n\tverde = 0;\r\n\trojoParpadeante = 0;\r\n\tamarilloParpadeante = 0;\r\n\tamarillo = 0;\r\n\tnaranja = 0;\r\n\trojo = 0;\r\n\tazul = 0;\r\n\tvioleta = 0;\r\n data: Autos[];\r\n \r\n constructor() { }\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { UsuarioVM } from './../../../_entities/usuarios/UsuarioVM';\r\nimport { environment } from './../../../../environments/environment';\r\nimport { ClienteVM } from './../../../_entities/clientes/ClienteVM';\r\nimport { FiltroProductos } from './../../../_entities/productos/filtro-productos';\r\nimport { PanelCiudadano } from '../../../_entities/panelCiudadano/panelCiudadano';\r\n\r\n@Injectable({\r\n\tprovidedIn: 'root'\r\n})\r\nexport class FiltroProductosService {\r\n\r\n\tconstructor(private http: HttpClient) { }\r\n\r\n\tobtenerClientes(): Observable {\r\n\t\treturn this.http.get(`${environment.API_SECURITY}/api/Reportes/ClientesReportes`);\r\n\t}\r\n\r\n\tobtenerUsuariosIdCliente(idCliente: number): Observable {\r\n\t\treturn this.http.get(`${environment.API_SECURITY}/api/Reportes/UsuariosClienteReportes/${idCliente}`);\r\n\t}\r\n\r\n\tobtenerProductosIdUsuario(idUsuario: string): Observable{\r\n\t\treturn this.http.get(`${environment.API_SECURITY}/api/vehiculo/ProductosIdUsuario`, {\r\n\t\t\tparams: {\r\n\t\t\t\tidUsuario\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\tobtenerPaneles(): Observable {\r\n\t\treturn this.http.get(`${environment.API_SECURITY}/api/PanelCiudadano/PanelAlarmado`);\r\n\t }\r\n\r\n\t obtenerPanelesMapa(): Observable {\r\n\t\treturn this.http.get(`${environment.API_SECURITY}/api/PanelCiudadano/PanelMapa`);\r\n\t }\r\n\r\n}\r\n\r\n\r\n","import { Directorios } from './../../../_entities/galeria/Directorios';\r\nimport { ListaImagenes } from './../../../_entities/galeria/ListaImagenes';\r\nimport { environment } from './../../../../environments/environment';\r\nimport { Observable } from 'rxjs';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { InMemoryWebApiModule } from 'angular-in-memory-web-api';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class GaleriaVehiculoService {\r\n\r\n constructor(private http: HttpClient) { }\r\n\r\n /*Obtener Todas las imagenes-*/\r\n obtenerListaImagenes(imei): Observable {\r\n return this.http.get(environment.API_SECURITY + '/api/Imagenes', {\r\n params: {\r\n imei: imei\r\n }\r\n })\r\n }\r\n \r\n \r\n /**Obtener Imagen Especifica */\r\n obtenerImagenEspecifica(imei, foto) {\r\n return this.http.get(environment.API_SECURITY + '/api/Imagenes/ObtenerImagen', {\r\n responseType: 'blob', params: {\r\n imei: imei,\r\n imagen: foto\r\n }\r\n })\r\n }\r\n \r\n /**Obtener Galeria */\r\n obtenerGaleria(imei,fechaInicio,fechaFinal):Observable{\r\n return this.http.get(environment.API_SECURITY + '/api/Imagenes/Fechas',{params:{\r\n imei:imei,\r\n fechaInicial:fechaInicio,\r\n fechaFinal:fechaFinal\r\n }})\r\n }\r\n \r\n /**Obtener directorios por imei*/\r\n obtenerDirectorios(imei):Observable{\r\n return this.http.get(environment.API_SECURITY+'/api/Imagenes/Directorios',{params:{\r\n imei:imei\r\n }})\r\n }\r\n \r\n /**Obtener Archivos por directorio */\r\n obtenerArchivosDirectorio(imei,carpeta):Observable{\r\n return this.http.get(environment.API_SECURITY+'/api/Imagenes/',{params:{\r\n imei:imei,\r\n carpeta:carpeta\r\n }})\r\n }\r\n \r\n /**Obtener foto desde una carpeta */\r\n obtenerFotoCarpeta(imei,carpeta,nombre){\r\n return this.http.get(environment.API_SECURITY+'/api/Imagenes/ObtenerImagenCarpeta', {\r\n responseType: 'blob', params: {\r\n imei: imei,\r\n carpeta:carpeta,\r\n imagen: nombre\r\n }\r\n })\r\n }\r\n \r\n\r\n\r\n /**Obtener directorios por imei nuevo */\r\n obtenerDirectoriosNuevo(imei):Observable{\r\n return this.http.get(environment.API_SECURITY+'/api/Imagenes/CarpetasNuevoDispositivo',{params:{\r\n imei:imei\r\n }})\r\n }\r\n\r\n obtenerFotosDirectorioNuevo(imei,carpeta):Observable{\r\n return this.http.get(environment.API_SECURITY+'/api/Imagenes/FotosNuevoDispositivo',{params:{\r\n imei:imei,\r\n fecha:carpeta\r\n }})\r\n }\r\n\r\n /**Obtener Galeria */\r\n obtenerFoldersPorfecha(imei,fechaInicio,fechaFinal):Observable{\r\n return this.http.get(environment.API_SECURITY + '/api/Imagenes/FotosNuevoDispositivoFecha',{params:{\r\n imei:imei,\r\n fechaInicial:fechaInicio,\r\n fechaFinal:fechaFinal\r\n }})\r\n }\r\n \r\n \r\n}\r\n","import { HttpClient, HttpHeaders, HttpBackend, HttpParams } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { CamaraHW } from './../../../../app/_entities/galeria/videos';\r\nimport { environment } from './../../../../environments/environment';\r\n\r\n@Injectable({\r\n\tprovidedIn: 'root'\r\n})\r\nexport class GaleriaVideoService {\r\n\r\n\tconstructor(private http: HttpClient) {\r\n\t}\r\n\r\n\tobtenerArchivosVideo( startTime, endTime, channelList, fileType, Location, deviceID) {\r\n\t\treturn this.http.get(environment.API_SECURITY + '/api/Howen/vehiculos', {\r\n\t\t\tresponseType: 'text',\r\n\t\t\tparams: {\r\n\t\t\t\tstartTime,\r\n\t\t\t\tendTime,\r\n\t\t\t\tchannelList,\r\n\t\t\t\tfileType,\r\n\t\t\t\tLocation,\r\n\t\t\t\tdeviceID\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\tobtenerVideo( chs, path, deviceID) {\r\n\t\treturn this.http.get(`${environment.API_SECURITY}/api/Howen/videoEspecifico?chs=1&path=${path}`, { responseType: 'text' })\r\n\t}\r\n\r\n\tobtenerVideoStream( chs, stream, wnum, panel, deviceID) {\r\n\t\tconst httpHeaders = new HttpHeaders();\r\n httpHeaders.set('X-Content-Type-Options', 'nosniff');\r\n\t\treturn this.http.get(`${environment.API_SECURITY}/api/Howen/stream?deviceID=${deviceID}&chs=${chs}&stream=${stream}&wnum=${wnum}&panel=${panel}`, { responseType: 'text', headers: httpHeaders })\r\n\t}\r\n\r\n\r\n\r\n\r\n}\r\n","import { environment } from './../../../../environments/environment';\r\nimport { Observable } from 'rxjs';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { VehiculoGeocerca, DispositivoGeocerca } from './../../../_entities/geocerca/vehiculo-geocerca';\r\nimport {AuthService} from '../../auth/auth.service';\r\nimport {Categorias} from '../../../_entities/geocerca/Categorias';\r\n\r\n@Injectable({\r\n\tprovidedIn: 'root'\r\n})\r\nexport class GeocercasService {\r\n\r\n\tconstructor(private http: HttpClient, private auth: AuthService) { }\r\n\r\n\tpostGeoCerca(form: any): Observable {\r\n\t\treturn this.http.post(`${environment.API_SECURITY}/api/geocercas`, form);\r\n\t}\r\n\r\n\tputGeoCerca(form: any, id: any): Observable {\r\n\t\treturn this.http.put(`${environment.API_SECURITY}/api/geocercas/${id}`, form);\r\n\t}\r\n\r\n\tpublic getGeoCercas() {\r\n\t\treturn this.http.get(`${environment.API_SECURITY}/api/geocercas`);\r\n\t}\r\n\r\n\tdeleteGeoCerca(id: any) {\r\n\t\treturn this.http.delete(`${environment.API_SECURITY}/api/geocercas/${id}`);\r\n\t}\r\n\r\n\tobtenerListaProductos(): Observable {\r\n\t\treturn this.http.get(environment.API_SECURITY + '/api/Geocercas/ListaProductosGeocerca');\r\n\t}\r\n\r\n\tobtenerHistoricoGeocerca(listaIds, fechaInicio, fechaFinal) {\r\n\t\treturn this.http.post(environment.API_SECURITY + '/api/Geocercas/ReporteFueraGeocerca', listaIds, {\r\n\t\t\tparams: { fechaInicio, fechaFinal }\r\n\t\t});\r\n\r\n\t}\r\n\r\n\tobtenerVehiculosDentroGeocerca(fechaInicio, fechaFinal): Observable { // Solo estaran vehiculosDentro\r\n\t\treturn this.http.get(environment.API_SECURITY + '/api/Geocercas/VehiculosDentroGeocerca', {\r\n\t\t\tparams: {\r\n\t\t\t\tfechaInicio,\r\n\t\t\t\tfechaFinal\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\tobtenerVehiculosFueraGeocerca(fechaInicio, fechaFinal): Observable {\r\n\t\treturn this.http.get(environment.API_SECURITY + '/api/Geocercas/VehiculosFueraGeocerca', {\r\n\t\t\tparams: {\r\n\t\t\t\tfechaInicio,\r\n\t\t\t\tfechaFinal\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\r\n\tobtenerDentroGeocercaVehiculos(vehiculos, idGeocerca, fechaInicio, fechaFinal): Observable {\r\n\t\treturn this.http.post(environment.API_SECURITY + '/api/Geocercas/VehiculoFueraGeocercaId/' + idGeocerca, vehiculos, {\r\n\t\t\tparams: {\r\n\t\t\t\tfechaInicio,\r\n\t\t\t\tfechaFinal\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\tobtenerFueraGeocercaVehiculos(vehiculos, idGeocerca, fechaInicio, fechaFinal): Observable {\r\n\t\treturn this.http.post(environment.API_SECURITY + '/api/Geocercas/VehiculoDentroGeocercaId/' + idGeocerca, vehiculos, {\r\n\t\t\tparams: {\r\n\t\t\t\tfechaInicio,\r\n\t\t\t\tfechaFinal\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\tobtenerVehiculoDentroGeocerca(idVehiculo, idGeocerca, fechaInicio, fechaFinal): Observable {\r\n\t\treturn this.http.get(`${environment.API_SECURITY}/api/Geocercas/VehiculoDentroGeocercaId/${idVehiculo}/${idGeocerca}`, {\r\n\t\t\tparams: {\r\n\t\t\t\tfechaInicio,\r\n\t\t\t\tfechaFinal\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\tobtenerVehiculoFueraGeocerca(idVehiculo, idGeocerca, fechaInicio, fechaFinal): Observable {\r\n\t\treturn this.http.get(`${environment.API_SECURITY}/api/Geocercas/VehiculoFueraGeocercaId/${idVehiculo}/${idGeocerca}`, {\r\n\t\t\tparams: {\r\n\t\t\t\tfechaInicio,\r\n\t\t\t\tfechaFinal\r\n\t\t\t}\r\n\t\t})\r\n\t}\r\n\r\n\tobtenerCategorias(): Observable{\r\n\t\treturn this.http.get(environment.API_SECURITY + '/api/Geocercas/ObtenerCategorias');\r\n\t}\r\n\r\n\temailAlertaPuerta(hwToken) {\r\n\t\tlet user = this.auth.getUser();\r\n\t\tlet token = '0'\r\n\t\tif(user.id == 'c28df0c4-3322-421c-b601-8aa7e80536cf' || user.id == '74bc5a50-65cd-4fa3-9a68-99886b468b6b') {\r\n\t\t\ttoken = hwToken\r\n\t\t}\r\n\r\n\t\treturn this.http.get(environment.API_SECURITY + '/api/Howen/EmailAlarma?token=' + hwToken);\r\n\t}\r\n\r\n\temailZonaPeligrosa(hwToken) {\r\n\t\tlet user = this.auth.getUser();\r\n\t\tlet token = '0'\r\n\t\tif(user.id == 'c28df0c4-3322-421c-b601-8aa7e80536cf' || user.id == '74bc5a50-65cd-4fa3-9a68-99886b468b6b') {\r\n\t\t\ttoken = hwToken\r\n\t\t}\r\n\t\treturn this.http.get(environment.API_SECURITY + '/api/Howen/Email?token=' + hwToken);\r\n\t}\r\n\r\n}\r\n","import { environment } from './../../../../environments/environment';\r\nimport { reportePosiciones } from './../../../_entities/coordenadas/ReportePosiciones';\r\nimport { Observable } from 'rxjs';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { AutosCamara } from './../../../_entities/autos/Autos';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class HistorialVelocidadesVehiculoService {\r\n\r\n constructor(private http: HttpClient) { }\r\n\r\n graficarVelocidad(idVehiculo:number,fechaInicio:Date,fechaFinal:Date):Observable{\r\n return this.http.get(`${environment.API_SECURITY}/api/vehiculo/${idVehiculo}/reporte-historico?fechaInicio=${fechaInicio}&fechaFinal=${fechaFinal}`);\r\n\r\n }\r\n\r\n obtenerAutosCamara( pageNum, pageCount, beginTime, endTime, deviceID): Observable {\r\n\treturn this.http.get(environment.API_SECURITY + '/api/Howen/device', {\r\n\t\tparams: {\r\n\t\t\tpageNum,\r\n\t\t\tpageCount,\r\n\t\t\tbeginTime,\r\n\t\t\tendTime,\r\n\t\t\tdeviceID\r\n\t\t}\r\n\t})\r\n}\r\n\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class IconosService {\r\n public alertaPrincipal = [];\r\n public alertaSecundaria = [];\r\n public alertaGeocerca = [];\r\n public alertaEnergia = [];\r\n public alertaBateria = [];\r\n\r\n constructor() { }\r\n\r\n public colorPointPosition(estado) {\r\n let url = '';\r\n\r\n switch (estado) {\r\n case 0:\r\n url = './assets/media/marcadores/flechaGris.png';\r\n break;\r\n case 1:\r\n url = './assets/media/marcadores/flechaVerde.png';\r\n break\r\n case 2:\r\n url = './assets/media/marcadores/flechaRoja.png';\r\n break\r\n case 3:\r\n url = './assets/media/marcadores/flechaAmarilla.png';\r\n break\r\n case 4:\r\n url = './assets/media/marcadores/flechaAmarilla.png';\r\n break\r\n case 5:\r\n url = './assets/media/marcadores/flechaNaranja.png';\r\n break\r\n case 6:\r\n url = './assets/media/marcadores/flechaRoja.png';\r\n break\r\n case 7:\r\n url = './assets/media/marcadores/flechaAzul.png';\r\n break\r\n case 8:\r\n url = './assets/media/marcadores/flechaMorada.png';\r\n break\r\n case 9:\r\n url = './assets/media/marcadores/flechaRosa.png';\r\n break\r\n case 10:\r\n url = './assets/media/marcadores/flechaCafe.png';\r\n break\r\n case 11:\r\n url = './assets/media/marcadores/flechaGris.png';\r\n break\r\n\r\n default:\r\n url = './assets/media/marcadores/flechaGris.png';\r\n break;\r\n }\r\n return url;\r\n }\r\n\r\n public colorVehiculos(marker) {\r\n let urlMarker = '';\r\n switch (marker.estado) {\r\n case 0: {\r\n //gris\r\n urlMarker = './assets/media/autos/auto_gris.png';\r\n break;\r\n }\r\n case 1: {\r\n //Verde\r\n urlMarker = './assets/media/autos/auto_verde.png';\r\n break;\r\n }\r\n case 2: {\r\n //Rojo parpadeando\r\n this.alertaPrincipal.push(marker);\r\n urlMarker = './assets/media/autos/auto_rojo.png';\r\n break;\r\n }\r\n case 3: {\r\n //Amarillo parpadeando\r\n this.alertaSecundaria.push(marker);\r\n urlMarker = './assets/media/autos/auto_amarillo.png';\r\n break;\r\n }\r\n case 4: {\r\n //Amarillo\r\n urlMarker = './assets/media/autos/auto_amarillo.png';\r\n break;\r\n }\r\n case 5: {\r\n //Naranja\r\n urlMarker = './assets/media/autos/auto_naranja.png';\r\n break;\r\n }\r\n case 6: {\r\n //Rojo\r\n urlMarker = './assets/media/autos/auto_rojo.png';\r\n break;\r\n }\r\n case 7: {\r\n //Azul\r\n urlMarker = './assets/media/autos/auto_azul.png';\r\n break;\r\n }\r\n case 8: {\r\n this.alertaGeocerca.push(marker)\r\n urlMarker = './assets/media/autos/auto_morado.png';\r\n\t\t\t//urlMarker = './assets/media/autos/8L.gif';\r\n break;\r\n }\r\n case 9: {\r\n //\r\n this.alertaBateria.push(marker);\r\n urlMarker = './assets/media/autos/auto_rosa.png';\r\n break;\r\n }\r\n case 10: {\r\n //\r\n this.alertaEnergia.push(marker);\r\n urlMarker = './assets/media/autos/auto_cafe.png';\r\n break;\r\n }\r\n case 11: {\r\n //\r\n urlMarker = './assets/media/autos/auto_gris.png';\r\n break;\r\n }\r\n default: {\r\n urlMarker = 'http://www.star911.com.mx/Plataforma/Content/imagenes/iconos/0.gif';\r\n break;\r\n }\r\n }\r\n return urlMarker;\r\n }\r\n\r\n public colorApuntador(estado) {\r\n let url = '';\r\n switch (estado.estado) {\r\n\t\tcase 0:\r\n\t\t\t//Detenido\r\n\t\t\turl = './assets/media/puntos/spinnerGris.png';\r\n\t\t\tbreak;\r\n\t\tcase 1:\r\n\t\t\t//En movimiento\r\n\t\t\turl = './assets/media/puntos/spinner.png';\r\n\t\t\tbreak;\r\n\t\tcase 2:\r\n\t\t\t//Alerta primaria (parpadeando)\r\n\t\t\turl = './assets/media/puntos/spinnerAlerta.png';\r\n\t\t\tbreak;\r\n\t\tcase 3:\r\n\t\t\turl = './assets/media/puntos/spinnerAmarillo.png';\r\n\t\t\tbreak;\r\n\t\tcase 4:\r\n\t\t\t//Detenido mas de 30 min\r\n\t\t\turl = './assets/media/puntos/spinnerAmarillo.png';\r\n\t\t\tbreak;\r\n\t\tcase 5:\r\n\t\t\t//Detenido mas de 60 min\r\n\t\t\turl = './assets/media/puntos/spinnerNaranja.png';\r\n\t\t\tbreak;\r\n\t\tcase 6:\r\n\t\t\t//Detenido mas de 90 min\r\n\t\t\turl = './assets/media/puntos/spinnerRojo.png';\r\n\t\t\tbreak;\r\n\t\tcase 7:\r\n\t\t\t//Exceso de velocidad\r\n\t\t\turl = './assets/media/puntos/spinnerAzul.png';\r\n\t\t\tbreak;\r\n\t\tcase 8:\r\n\t\t\t//Fuera geocerca\r\n\t\t\turl = './assets/media/puntos/spinnerMorado.png';\r\n\t\t\tbreak;\r\n\t\tcase 9:\r\n\t\t\t//Bateria baja\r\n\t\t\turl = './assets/media/puntos/spinnerCafe.png';\r\n\t\t\tbreak;\r\n\t\tcase 10:\r\n\t\t\t//Falta de energia\r\n\t\t\turl = './assets/media/puntos/spinnerRosa.png';\r\n\t\t\tbreak;\r\n\t\tcase 11:\r\n\t\t\t//Alerta movimiento\r\n\t\t\turl = './assets/media/puntos/spinnerGris.png';\r\n\t\t\tbreak;\r\n\t\tdefault:\r\n\t\t\turl = './assets/media/puntos/spinnerRojo.png';\r\n\t\t\tbreak;\r\n }\r\n return url;\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport Map from 'ol/Map.js';\r\nimport { defaults as defaultInteractions } from 'olgm/interaction.js';\r\nimport { transform, fromLonLat } from 'ol/proj.js';\r\nimport GoogleLayer from 'olgm/layer/Google.js';\r\nimport TileLayer from 'ol/layer/Tile.js';\r\nimport View from 'ol/View.js';\r\nimport OLGoogleMaps from 'olgm/OLGoogleMaps.js';\r\nimport OSMSource from 'ol/source/OSM.js';\r\nimport Feature from 'ol/Feature.js';\r\nimport Style from 'ol/style/Style.js';\r\nimport VectorLayer from 'ol/layer/Vector.js';\r\nimport VectorSource from 'ol/source/Vector.js';\r\nimport Point from 'ol/geom/Point.js';\r\nimport Icon from 'ol/style/Icon.js';\r\nimport { defaults as defaultControls, ScaleLine, FullScreen } from 'ol/control';\r\n\r\n\r\n@Injectable({\r\n\tprovidedIn: 'root'\r\n})\r\n\r\nexport class MapaMarkerService {\r\n\tpublic map: Map;\r\n\tpublic olGM: OLGoogleMaps;\r\n\tpublic googleLayer = new GoogleLayer();\r\n\tpublic osmLayer: TileLayer;\r\n\tpublic center = [-101.3770056, 23.8636449];\r\n\r\n\tpublic iconoMarcadorFeature: Feature\r\n\tpublic iconoMarcadorStyle: Style;\r\n\tpublic vectorMarcadorSource: VectorSource;\r\n\tpublic vectorMarcadorLayer: VectorLayer;\r\n\r\n\r\n\tconstructor() { }\r\n\r\n\tpublic inicializarMapa = () => {\r\n\t\tthis.osmLayer = new TileLayer({\r\n\t\t\tsource: new OSMSource(),\r\n\t\t\tvisible: false\r\n\t\t});\r\n\r\n\t\tthis.vectorMarcadorSource = new VectorSource({});\r\n\t\tthis.vectorMarcadorLayer = new VectorLayer({\r\n\t\t\tsource: this.vectorMarcadorSource,\r\n\t\t\tupdateWhileAnimating: true,\r\n\t\t\tupdateWhileInteracting: true,\r\n\t\t});\r\n\r\n\t\tthis.map = new Map({\r\n\t\t\t// use las interacciones predeterminadas recomendadas de OL3-Google-Maps\r\n\t\t\tinteractions: defaultInteractions(),\r\n\t\t\tlayers: [\r\n\t\t\t\tthis.googleLayer,\r\n\t\t\t\tthis.vectorMarcadorLayer\r\n\t\t\t],\r\n\t\t\toverlays: [\r\n\t\t\t],\r\n\t\t\ttarget: 'map-marker',\r\n\t\t\tview: new View({\r\n\t\t\t\tcenter: fromLonLat(this.center),\r\n\t\t\t\tzoom: 16,\r\n\t\t\t}),\r\n\t\t\tcontrols: defaultControls({ attribution: true, zoom: true }).extend([\r\n\t\t\t\tnew ScaleLine(),\r\n\t\t\t\tnew FullScreen()\r\n\t\t\t])\r\n\t\t});\r\n\t\tthis.olGM = new OLGoogleMaps({\r\n\t\t\tmap: this.map,\r\n\t\t\tmapIconOptions: {\r\n\t\t\t\tuseCanvas: true\r\n\t\t\t},\r\n\t\t\tgmapOptions: {\r\n\t\t\t\tstreetViewControl: true,\r\n\r\n\t\t\t},\r\n\t\t\twatch: {\r\n\t\t\t\t'vector': false\r\n\t\t\t}\r\n\t\t});\r\n\t\tthis.olGM.activate();\r\n\t\tthis.map.updateSize();\r\n\t}\r\n\r\n\tpublic pintarMarcadores = (producto) => {\r\n\t\tthis.vectorMarcadorSource.clear();\r\n\t\tconst coordinate = [producto.lng, producto.lat];\r\n\r\n\t\tthis.iconoMarcadorFeature = new Feature({\r\n\t\t\ttype: 'marker',\r\n\t\t\tidActivo: producto.imei,\r\n\t\t\tdata: producto,\r\n\t\t\tdataTooltip: `div${producto.imei}`,\r\n\t\t\tgeometry: new Point(transform(coordinate, 'EPSG:4326', 'EPSG:3857'))\r\n\t\t});\r\n\r\n\t\tthis.iconoMarcadorStyle = new Style({\r\n\t\t\timage: new Icon({\r\n\t\t\t\tanchor: [0.5, 0.5],\r\n\t\t\t\tanchorXUnits: 'fraction',\r\n\t\t\t\tanchorYUnits: 'fraction',\r\n\t\t\t\tsrc: './assets/media/marcadores/MarkerReportesRojo.png'\r\n\t\t\t}),\r\n\t\t\tzIndex: 10\r\n\t\t});\r\n\r\n\t\tthis.iconoMarcadorFeature.setStyle(this.iconoMarcadorStyle);\r\n\t\tthis.vectorMarcadorSource.addFeature(this.iconoMarcadorFeature);\r\n\t\tthis.vectorMarcadorLayer.setVisible(true);\r\n\t\tthis.map.getView().setCenter(fromLonLat([producto.lng, producto.lat]));\r\n\t}\r\n\r\n}\r\n","import { InformacionActivoComponent } from './../components/popups/activos/informacion-activo/informacion-activo.component';\r\nimport { Activo, ActivoUltimaTransmision } from './../../../_entities/activos/activo';\r\nimport { async } from '@angular/core/testing';\r\nimport { GuardarPuntoInteresComponent } from './../components/dialogos/puntos-interes/guardar-punto-interes/guardar-punto-interes.component';\r\nimport { GuardarGeocercaComponent } from './../components/dialogos/geocercas/guardar-geocerca/guardar-geocerca.component';\r\nimport { InformacionMicromedidorComponent } from './../components/popups/micromedidores/informacion-micromedidor/informacion-micromedidor.component';\r\nimport { InformacionMedidorComponent } from './../components/popups/medidores/informacion-medidor/informacion-medidor.component';\r\nimport { MedidoresService } from './medidores.service';\r\nimport { IconosService } from './iconos.service';\r\n//import { PopupMicromedidorComponent } from './../popus/popup-micromedidor/popup-micromedidor.component';\r\n//import { MedidoresService } from './../medidores/medidores-service/medidores.service';\r\nimport { Medidores } from '../../../_entities/medidores/Medidores';\r\nimport { HostListener, Injectable } from '@angular/core';\r\nimport Map from 'ol/Map.js';\r\nimport View from 'ol/View.js';\r\nimport TileLayer from 'ol/layer/Tile.js';\r\nimport VectorLayer from 'ol/layer/Vector.js';\r\nimport VectorSource from 'ol/source/Vector.js';\r\nimport Overlay from 'ol/Overlay';\r\nimport Feature from 'ol/Feature.js';\r\nimport Point from 'ol/geom/Point.js';\r\nimport Style from 'ol/style/Style.js';\r\nimport Fill from 'ol/style/Fill.js';\r\nimport Stroke from 'ol/style/Stroke.js';\r\nimport Circle from 'ol/style/Circle.js'\r\n//import { Circle as CircleStyle } from 'ol/style';\r\nimport Icon from 'ol/style/Icon.js';\r\nimport Draw from 'ol/interaction/Draw.js';\r\nimport Snap from 'ol/interaction/Snap.js';\r\nimport Select from 'ol/interaction/Select.js';\r\nimport Modify from 'ol/interaction/Modify.js';\r\nimport { createStringXY } from 'ol/coordinate.js';\r\nimport OLGoogleMaps from 'olgm/OLGoogleMaps.js';\r\nimport GoogleLayer from 'olgm/layer/Google.js';\r\nimport { google } from \"google-maps\";\r\nimport GeoJSON from 'ol/format/GeoJSON.js'\r\nimport LineString from 'ol/geom/LineString.js';\r\nimport { defaults as defaultInteractions } from 'olgm/interaction.js';\r\nimport { addProjection, addCoordinateTransforms, transform, fromLonLat } from 'ol/proj.js';\r\nimport { getCenter } from 'ol/extent';\r\nimport OSMSource from 'ol/source/OSM.js';\r\nimport { XYZ } from 'ol/source';\r\nimport { CorrdenadasLngLaT } from '../../../_entities/coordenadas/Coordenadas';\r\nimport { Autos } from '../../../_entities/autos/Autos';\r\nimport { MatDialogConfig, MatDialog, MatDialogRef } from '@angular/material';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { ToastrService } from 'ngx-toastr';\r\n//import { PopusComponent } from '../popus/popus.component';\r\nimport { DatePipe } from '@angular/common';\r\nimport { ToggleAction } from '@ngrx/store-devtools/src/actions';\r\n//import { GetIconosService } from './get-iconos';\r\nimport { Cluster } from 'ol/source';\r\nimport { Text } from 'ol/style';\r\nimport { InformacionVehiculoComponent } from '../components/popups/vehiculos/informacion-vehiculo/informacion-vehiculo.component';\r\nimport { TelefonoUltimaTransmision } from '../../../_entities/telefonos/telefono';\r\nimport { InformacionTelefonoComponent } from '../components/popups/telefonos/informacion-telefono/informacion-telefono.component';\r\n//import { PasoPuntoComponent } from '../popus/paso-punto/paso-punto.component';\r\n//import { PopupMedidorComponent } from '../popus/popup-medidor/popup-medidor.component';\r\nimport { toLonLat } from 'ol/proj';\r\nimport { getBottomLeft, getTopRight } from 'ol/extent';\r\nimport { ActivatedRoute, Params, Router } from '@angular/router';\r\nimport { AuthService } from '../../auth/auth.service';\r\nimport { OSM } from 'ol/source';\r\nimport { defaults as defaultControls, ScaleLine, FullScreen } from 'ol/control';\r\nimport { StreetViewComponent } from '../components/popups/street-view/street-view.component';\r\nimport { PopupRecorridoHistoricoComponent } from '../components/popups/popup-recorrido-historico/popup-recorrido-historico.component';\r\nimport { Subject, Observable } from 'rxjs';\r\nimport { Vector } from 'html2canvas/dist/types/render/vector';\r\nimport { IGNICIONES } from './../../../_entities/estados';\r\nimport TileWMS from 'ol/source/TileWMS';\r\nimport { Permiso } from './../../../_entities/Enums/permiso.enum';\r\nimport { UltimaLectura } from './../../../_entities/terminal/terminal';\r\nimport { Micromedidor } from './../../../_entities/micromedidores/micromedidor';\r\nimport { IconosActivos, IconosTelefonos, SpinnerApuntador } from './../../../_entities/iconos';\r\nimport { SemaforoModalComponent } from '../components/dialogos/semaforo/semaforo-modal/semaforo-modal.component';\r\nimport { MedidorModalComponent } from '../components/dialogos/medidores/medidor-modal/medidor-modal.component';\r\nimport { MicromedidorModalComponent } from '../components/dialogos/micromedidores/micromedidor-modal/micromedidor-modal.component';\r\nimport { ActivoModalComponent } from '../components/dialogos/activos/activo-modal/activo-modal.component';\r\nimport { TelefonoModalComponent } from '../components/dialogos/telefonos/telefono-modal/telefono-modal.component';\r\nimport { AlertasComponent } from '../components/dialogos/alertas/alertas.component';\r\nimport { User } from '../../../_entities/User';\r\nimport { PortatilUltimaTransmision } from '../../../_entities/Portatiles/Portatil';\r\nimport { InformacionPortatilComponent } from '../components/popups/portatiles/informacion-portatil/informacion-portatil.component';\r\nimport { PortatilModalComponent } from '../components/dialogos/portatiles/portatil-modal/portatil-modal.component';\r\nimport { PanelCiudadano } from '../../../_entities/panelCiudadano/panelCiudadano';\r\nimport { InformacionPanelComponent } from '../components/popups/paneles/informacion-panel/informacion-panel.component';\r\n\r\n@Injectable({\r\n\tprovidedIn: 'root'\r\n})\r\nexport class MapaService {\r\n\t/*Declaracion de variables */\r\n\t/**Generales */\r\n\t_user: User;\r\n\tpublic spinnerNombre: string;\r\n\tpublic monitoreo = false;\r\n\tpublic sonProductosFiltrados: boolean = false;\r\n\tpublic drawPoint;\r\n\tpublic historicoFechas;\r\n\tpublic datepipe: DatePipe = new DatePipe('en-US');\r\n\tpublic usuariosFlitro;\r\n\tpublic clusterActivo: boolean = true\r\n\tpublic datosFueraGeocerca;\r\n\tpublic pintarEtiquetas: boolean = true;\r\n\r\n\r\n\t/**Dialogoso Semaforo */\r\n\tpublic autosMovimiento;\r\n\tpublic autosDetenidosRojo;\r\n\tpublic autosDetenidosNaranja;\r\n\tpublic autosExcesoAzul;\r\n\tpublic autosDetenidosAmarillo;\r\n\tpublic autosDetenidos;\r\n\t/**Capas*/\r\n\tpublic trafficLayer = new google.maps.TrafficLayer();\r\n\tpublic transitLayer = new google.maps.TransitLayer();\r\n\tpublic bicyclingLayer = new google.maps.BicyclingLayer();\r\n\r\n\t/**Toogles */\r\n\tpublic toogleActivos = true;\r\n\tpublic toogleMedidores = true;\r\n\tpublic toogleMicromedidores = true;\r\n\tpublic toogleTelefonos = true;\r\n\tpublic toogleVehiculos = true;\r\n\tpublic toggleParaSiempre;\r\n\tpublic tooglePortatiles = true;\r\n\t/**Popup */\r\n\tpublic overlayPopupHover: Overlay;\r\n\tpublic containerPopupHover: any;\r\n\tpublic contentPopupHover: any;\r\n\r\n\tpublic overlayClusterPopupHover: Overlay;\r\n\tpublic containerClusterPopupHover: any;\r\n\tpublic contentClusterPopupHover: any;\r\n\r\n\t/**Etiquetas */\r\n\tpublic overlayEtiquetas: Overlay;\r\n\tpublic containerEtiquetas: any;\r\n\tpublic datosGenerales: any;\r\n\tpublic tipoProducto: string;\r\n\tpublic controlEtiquetas = true;\r\n\r\n\t/**Etiquetas para siempre */\r\n\tpublic etiquetasActivos = [];\r\n\tpublic etiquetasLectoras = [];\r\n\tpublic etiquetasMedidores = [];\r\n\tpublic etiquetasMicromedidores = [];\r\n\tpublic etiquetasTelefonos = [];\r\n\tpublic etiquetasVehiculos = [];\r\n\tpublic etiquetasPortatiles = [];\r\n\tpublic etiquetasPaneles=[];\r\n\t/**Datos globales */\r\n\tpublic registroVehiculos: Autos[];\r\n\tpublic productosVisibles: boolean = false; //Debe iniciar en false\r\n\r\n\t/**Coordenadas*/\r\n\tpublic coordenadas: any;\r\n\tpublic coordenadaPI: any;\r\n\r\n\t/**Geocercas */\r\n\tpublic vectorGeoCercaSource = new VectorSource;\r\n\tpublic vectorGeoCercaLayer: VectorLayer;\r\n\tpublic geoCercaStyle = new Style({\r\n\t\tfill: new Fill({\r\n\t\t\tcolor: 'rgba(255,0,0,0.3)'\r\n\t\t}),\r\n\t\tstroke: new Stroke({\r\n\t\t\tcolor: '#ffcc33',\r\n\t\t\twidth: 2\r\n\t\t}),\r\n\t\timage: new Circle({\r\n\t\t\tradius: 7,\r\n\t\t\tfill: new Fill({\r\n\t\t\t\tcolor: '#ffcc33'\r\n\t\t\t})\r\n\t\t})\r\n\t});\r\n\tpublic nuevaGeoCerca: any = {};\r\n\tpublic nuevaGeoCerca4326: any = {};\r\n\tpublic geo: GeoJSON;\r\n\tpublic geoJSON4326: GeoJSON;\r\n\tpublic snap: Snap;\r\n\tpublic feature: any;\r\n\tpublic featureGeoJSON: any;\r\n\tpublic drawGeoCerca: Draw;\r\n\tpublic dataFeature: any;\r\n\tpublic esGeocerca: boolean = false;\r\n\r\n\t/**Historico */\r\n\tpublic historicoMode = false;\r\n\tpublic iconHistoricoFeature: Feature;\r\n\tpublic vectorHistoricoSource: VectorSource;\r\n\tpublic vectorHistoricoLayer: VectorLayer;\r\n\tpublic iconHistoricoStyle: Style;\r\n\tpublic overlayGifMarkerRecorrido: Overlay;\r\n\tpublic overlayPopup: Overlay;\r\n\tpublic containerPopup: any;\r\n\tpublic contentPopup: any;\r\n\tpublic closerPopup: any;\r\n\tprivate informacionRecorrio = new Subject();\r\n\tpublic informacionInicial;\r\n\tpublic ubicacionHistorico;\r\n\tprivate modoHistorico = new Subject();\r\n\tpublic estadoHistorico;\r\n\r\n\t/**Recorrido */\r\n\tpublic mostrandoRecorrido = false;\r\n\tpublic posicionesReporte = [];\r\n\tpublic indexActualRecorrido = 0;\r\n\tpublic posicionActualRecorrido: any;\r\n\r\n\t/**Apuntador */\r\n\tpublic iconApuntadorFeature: Feature;\r\n\tpublic vectorApuntadorSource: VectorSource;\r\n\tpublic vectorApuntadorLayer: VectorLayer;\r\n\tpublic iconApuntador: Style;\r\n\r\n\t/**Producto ubicado */\r\n\tpublic iconoDispositivoUbicadoFeature: Feature;\r\n\tpublic vectorDispositivoUbicadoSource: VectorSource;\r\n\tpublic vectorDispositivoUbicadoLayer: VectorLayer;\r\n\tpublic iconoDispositivoUbicado: Style;\r\n\r\n\t/**Producto seleccionado */\r\n\tpublic iconApuntadorSelectFeature: Feature;\r\n\tpublic vectorApuntadorSelectSource: VectorSource;\r\n\tpublic vectorApuntadorSelectLayer: VectorLayer;\r\n\tpublic iconSelectApuntador: Style;\r\n\tpublic idAutoSeleccionado = '';\r\n\r\n\t/**Alertas */\r\n\tpublic vectorApuntadorAlertaSource: VectorSource;\r\n\tpublic vectorApuntadorAlertaLayer: VectorLayer;\r\n\r\n\t/*Contadores*/\r\n\tpublic alertaPrincipal = this.iconosPng.alertaPrincipal;\r\n\tpublic alertaPanel = this.iconosPng.alertaPrincipal;\r\n\r\n\tpublic alertaSecundaria = this.iconosPng.alertaSecundaria;\r\n\tpublic alertaGeocerca = this.iconosPng.alertaGeocerca;\r\n\tpublic alertaEnergia = this.iconosPng.alertaEnergia;\r\n\tpublic alertaBateria = this.iconosPng.alertaBateria;\r\n\r\n\t/**Seccion Productos */\r\n\t//**Activos */\r\n\tpublic iconActivosFeature: Feature;\r\n\tpublic iconActivosStyle: Style;\r\n\tpublic vectorActivosSource: VectorSource;\r\n\tpublic vectorActivosLayer: VectorLayer;\r\n\tpublic vectorClusterActivosLayer: VectorLayer;\r\n\tpublic activosDisponibles: ActivoUltimaTransmision[] = [];\r\n\r\n\t//**Portatiles */\r\n\tpublic iconPortatilesFeature: Feature;\r\n\tpublic iconPortatilesStyle: Style;\r\n\tpublic vectorPortatilesSource: VectorSource;\r\n\tpublic vectorPortatilesLayer: VectorLayer;\r\n\tpublic vectorClusterPortatilesLayer: VectorLayer;\r\n\tpublic portatilesDisponibles: PortatilUltimaTransmision[] = [];\r\n\r\n\r\n\r\n\t//**Howen */\r\n\tprivate videosDisponibles = new Subject();\r\n\tpublic valorLey;\r\n\r\n\t//**Lectoras */\r\n\tpublic iconoLectorasFeature: Feature;\r\n\tpublic iconoLectorasStyle: Style;\r\n\tpublic vectorLectorasSource: VectorSource;\r\n\tpublic vectorLectorasLayer: VectorLayer;\r\n\tpublic vectorClusterLectorasLayer: VectorLayer;\r\n\tpublic lectorasDisponibles: UltimaLectura[] = [];\r\n\r\n\t//**Medidores */\r\n\tpublic iconMedidoresFeature: Feature;\r\n\tpublic iconMedidoresStyle: Style;\r\n\tpublic vectorMedidoresSource: VectorSource;\r\n\tpublic vectorMedidoresLayer: VectorLayer;\r\n\tpublic vectorClusterMedidoresLayer: VectorLayer;\r\n\tpublic medidoresDisponibles: Medidores[] = [];\r\n\r\n\r\n\t//**Paneles */\r\n\tpublic iconPanelesFeature: Feature;\r\n\tpublic iconPanelesStyle: Style;\r\n\tpublic vectorPanelesSource: VectorSource;\r\n\tpublic vectorPanelesLayer: VectorLayer;\r\n\tpublic vectorClusterPanelesLayer: VectorLayer;\r\n\tpublic panelesDisponibles: PanelCiudadano[] = [];\r\n\r\n\r\n\t//**Micromedidores */\r\n\tpublic iconMicromedidoresFeature: Feature;\r\n\tpublic iconMicromedidoresStyle: Style\r\n\tpublic vectorMicromedidoresSource: VectorSource;\r\n\tpublic vectorMicromedidoresLayer: VectorLayer;\r\n\tpublic vectorClusterMicromedidoresLayer: VectorLayer;\r\n\tpublic micromedidoresDisponibles: Micromedidor[] = [];\r\n\r\n\t/**Paso Punto */\r\n\tpublic iconoPasoPuntoFeature: Feature;\r\n\tpublic vectorPasoPuntoSource: VectorSource;\r\n\tpublic vectorPasoPuntoLayer: VectorLayer;\r\n\tpublic iconoPasoPuntoStyle: Style;\r\n\r\n\t//**Puntos de interes */\r\n\tpublic iconPInteresFeature: Feature;\r\n\tpublic iconPInteresStyle: Style;\r\n\tpublic vectorPInteresSource: VectorSource;\r\n\tpublic vectorPInteresLayer: VectorLayer;\r\n\tpublic vectorClusterPInteresLayer: VectorLayer;\r\n\tpublic puntosInteresDisponibles: any[] = [];\r\n\r\n\tpublic indexFinalRecorrido = 0;\r\n\tpublic sourcePi = new VectorSource({ wrapX: false });\r\n\tpublic vectorClusterPuntosInteresLayer = VectorLayer;\r\n\r\n\t//**Telefonos */\r\n\tpublic iconTelefonosFeature: Feature;\r\n\tpublic iconTelefonosStyle: Style;\r\n\tpublic vectorTelefonosSource: VectorSource;\r\n\tpublic vectorTelefonosLayer: VectorLayer;\r\n\tpublic vectorClusterTelefonosLayer: VectorLayer;\r\n\tpublic telefonosDisponibles: TelefonoUltimaTransmision[] = [];\r\n\r\n\t//**Vehiculos */\r\n\tpublic iconoVehiculoFeature: Feature;\r\n\tpublic vectorMarcadorVehiculosSource: VectorSource;\r\n\tpublic vectorMarcadorVehiculosLayer: VectorLayer;\r\n\tpublic iconVehiculosStyle: Style;\r\n\tpublic vectorClusterVehiculosLayer: VectorLayer;\r\n\tpublic vehiculosDisponibles: Autos[] = [];\r\n\r\n\t/**Mapa */\r\n\tpublic olGM: OLGoogleMaps;\r\n\tpublic map: Map;\r\n\t//public center = [-101.3770056, 23.8636449];\r\n\tpublic center = [-102.6827462, 24.3566658]\r\n\tpublic googleLayer = new GoogleLayer();\r\n\tpublic osmLayer: TileLayer;\r\n\r\n\tconstructor(public dialog: MatDialog,\r\n\t\tprivate http: HttpClient,\r\n\t\tprivate toastr: ToastrService,\r\n\t\tprivate iconosPng: IconosService,\r\n\t\tprivate medidoresService: MedidoresService,\r\n\t\tprivate auth: AuthService) { }\r\n\r\n\t/**Se inicia el Mapa y sus componentes */\r\n\tpublic inicializarMapa = () => {\r\n\t\t/**Popup */\r\n\t\tthis.containerPopup = document.getElementById('popup');\r\n\t\tthis.contentPopup = document.getElementById('popup-content');\r\n\t\tthis.closerPopup = document.getElementById('popup-closer');\r\n\r\n\t\tthis.containerPopupHover = document.getElementById('popupHover');\r\n\t\tthis.contentPopupHover = document.getElementById('popup-contentHover');\r\n\r\n\t\tthis.containerClusterPopupHover = document.getElementById('popupClusterHover');\r\n\t\tthis.contentClusterPopupHover = document.getElementById('popup-ClustercontentHover');\r\n\r\n\r\n\t\tthis.overlayGifMarkerRecorrido = new Overlay({\r\n\t\t\tposition: undefined,\r\n\t\t\tpositioning: 'center-center',\r\n\t\t\telement: document.getElementById('posicionActualGif'),\r\n\t\t\tstopEvent: false,\r\n\t\t\tautoPan: true,\r\n\t\t});\r\n\r\n\t\tthis.overlayPopup = new Overlay({\r\n\t\t\tposition: undefined,\r\n\t\t\telement: this.containerPopup,\r\n\t\t\tautoPan: true,\r\n\t\t\tautoPanAnimation: {\r\n\t\t\t\tduration: 250\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t\tthis.overlayPopupHover = new Overlay({\r\n\t\t\tposition: undefined,\r\n\t\t\telement: this.containerPopupHover,\r\n\t\t\tautoPan: true,\r\n\t\t\tautoPanAnimation: {\r\n\t\t\t\tduration: 250\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t\tthis.overlayClusterPopupHover = new Overlay({\r\n\t\t\tposition: undefined,\r\n\t\t\telement: this.containerClusterPopupHover,\r\n\t\t\tautoPan: true,\r\n\t\t\tautoPanAnimation: {\r\n\t\t\t\tduration: 250\r\n\t\t\t}\r\n\t\t})\r\n\r\n\t\t/**Geocercas */\r\n\t\tthis.vectorGeoCercaLayer = new VectorLayer({\r\n\t\t\tsource: this.vectorGeoCercaSource,\r\n\t\t\tvisible: true\r\n\t\t});\r\n\r\n\t\t/**Historico */\r\n\t\tthis.vectorHistoricoSource = new VectorSource({});\r\n\t\tthis.vectorHistoricoLayer = new VectorLayer({\r\n\t\t\tsource: this.vectorHistoricoSource,\r\n\t\t\tupdateWhileAnimating: true,\r\n\t\t\tupdateWhileInteracting: true,\r\n\t\t});\r\n\r\n\t\t/**Apuntador historico */\r\n\t\tthis.vectorApuntadorSource = new VectorSource({});\r\n\t\tthis.vectorApuntadorLayer = new VectorLayer({\r\n\t\t\tsource: this.vectorApuntadorSource,\r\n\t\t\tupdateWhileAnimating: true,\r\n\t\t\tupdateWhileInteracting: true,\r\n\t\t});\r\n\r\n\t\t/**Producto ubicado */\r\n\t\tthis.vectorDispositivoUbicadoSource = new VectorSource({});\r\n\t\tthis.vectorDispositivoUbicadoLayer = new VectorLayer({\r\n\t\t\tsource: this.vectorDispositivoUbicadoSource,\r\n\t\t\tupdateWhileAnimating: true,\r\n\t\t\tupdateWhileInteracting: true,\r\n\t\t});\r\n\r\n\t\t/**Producto seleccionado */\r\n\t\tthis.vectorApuntadorSelectSource = new VectorSource({});\r\n\t\tthis.vectorApuntadorSelectLayer = new VectorLayer({\r\n\t\t\tsource: this.vectorApuntadorSelectSource,\r\n\t\t\tupdateWhileAnimating: true,\r\n\t\t\tupdateWhileInteracting: true,\r\n\t\t});\r\n\r\n\t\t/**Alertas */\r\n\t\tthis.vectorApuntadorAlertaSource = new VectorSource({});\r\n\t\tthis.vectorApuntadorAlertaLayer = new VectorLayer({\r\n\t\t\tsource: this.vectorApuntadorAlertaSource,\r\n\t\t\tupdateWhileAnimating: true,\r\n\t\t\tupdateWhileInteracting: true,\r\n\t\t});\r\n\r\n\t\t/**Seccion Productos */\r\n\t\t//**Activos */\r\n\t\tthis.vectorActivosSource = new VectorSource({});\r\n\t\tthis.vectorActivosLayer = new VectorLayer({\r\n\t\t\tsource: this.vectorActivosSource,\r\n\t\t\tupdateWhileAnimating: true,\r\n\t\t\tupdateWhileInteracting: true,\r\n\t\t});\r\n\r\n\t\tthis.vectorPortatilesSource = new VectorSource({});\r\n\t\tthis.vectorPortatilesLayer = new VectorLayer({\r\n\t\t\tsource: this.vectorPortatilesSource,\r\n\t\t\tupdateWhileAnimating: true,\r\n\t\t\tupdateWhileInteracting: true,\r\n\t\t});\r\n\r\n\t\t/**Lectoras */\r\n\t\tthis.vectorLectorasSource = new VectorSource({});\r\n\t\tthis.vectorLectorasLayer = new VectorLayer({\r\n\t\t\tsource: this.vectorLectorasSource,\r\n\t\t\tupdateWhileAnimating: true,\r\n\t\t\tupdateWhileInteracting: true,\r\n\t\t});\r\n\r\n\t\t/**Medidores */\r\n\t\tthis.vectorMedidoresSource = new VectorSource({});\r\n\t\tthis.vectorMedidoresLayer = new VectorLayer({\r\n\t\t\tsource: this.vectorMedidoresSource,\r\n\t\t\tupdateWhileAnimating: true,\r\n\t\t\tupdateWhileInteracting: true,\r\n\t\t});\r\n\r\n\t\t/**Micromedidores */\r\n\t\tthis.vectorMicromedidoresSource = new VectorSource({});\r\n\t\tthis.vectorMicromedidoresLayer = new VectorLayer({\r\n\t\t\tsource: this.vectorMicromedidoresSource,\r\n\t\t\tupdateWhileAnimating: true,\r\n\t\t\tupdateWhileInteracting: true,\r\n\t\t});\r\n\r\n\t\t\r\n\t\t/**Paneles */\r\n\t\tthis.vectorPanelesSource = new VectorSource({});\r\n\t\tthis.vectorPanelesLayer = new VectorLayer({\r\n\t\t\tsource: this.vectorPanelesSource,\r\n\t\t\tupdateWhileAnimating: true,\r\n\t\t\tupdateWhileInteracting: true,\r\n\t\t});\r\n\r\n\r\n\t\t/**Puntos de interes */\r\n\t\tthis.vectorPInteresSource = new VectorSource({});\r\n\t\tthis.vectorPInteresLayer = new VectorLayer({\r\n\t\t\tsource: this.vectorPInteresSource,\r\n\t\t\tupdateWhileAnimating: true,\r\n\t\t\tupdateWhileInteracting: true,\r\n\t\t});\r\n\r\n\t\t/**Paso por punto */\r\n\t\tthis.vectorPasoPuntoSource = new VectorSource({});\r\n\t\tthis.vectorPasoPuntoLayer = new VectorLayer({\r\n\t\t\tsource: this.vectorPasoPuntoSource,\r\n\t\t\tupdateWhileAnimating: true,\r\n\t\t\tupdateWhileInteracting: true,\r\n\t\t});\r\n\r\n\t\t/**Telefonos */\r\n\t\tthis.vectorTelefonosSource = new VectorSource({});\r\n\t\tthis.vectorTelefonosLayer = new VectorLayer({\r\n\t\t\tsource: this.vectorTelefonosSource,\r\n\t\t\tupdateWhileAnimating: true,\r\n\t\t\tupdateWhileInteracting: true,\r\n\t\t});\r\n\r\n\t\t/**Vehiculos */\r\n\t\tthis.vectorMarcadorVehiculosSource = new VectorSource({});\r\n\t\tthis.vectorMarcadorVehiculosLayer = new VectorLayer({\r\n\t\t\tsource: this.vectorMarcadorVehiculosSource,\r\n\t\t\tupdateWhileAnimating: true,\r\n\t\t\tupdateWhileInteracting: true,\r\n\t\t});\r\n\r\n\t\t/**Mapa */\r\n\t\tthis.osmLayer = new TileLayer({\r\n\t\t\tsource: new OSMSource(),\r\n\t\t\tvisible: false\r\n\t\t});\r\n\r\n\t\tconst extentMexico = [-13550795, 1150943, -8934498, 4384675];\r\n\t\tconst extentCostaRica = [-9695336.0963200516998768, 613096.5521554843289778, -9189739.5557411331683397, 1256701.7956394979264587];\r\n\r\n\t\t//Esta capa ficticia le dice a Google Maps que cambie a su tipo de mapa predeterminado\r\n\t\tthis.map = new Map({\r\n\t\t\t// use las interacciones predeterminadas recomendadas de OL3-Google-Maps\r\n\t\t\tinteractions: defaultInteractions(),\r\n\t\t\tlayers: [\r\n\t\t\t\tthis.googleLayer,\r\n\t\t\t\t//this.osmLayer,\r\n\t\t\t\tthis.vectorActivosLayer,\r\n\t\t\t\tthis.vectorPortatilesLayer,\r\n\t\t\t\tthis.vectorLectorasLayer,\r\n\t\t\t\tthis.vectorMedidoresLayer,\r\n\t\t\t\tthis.vectorMicromedidoresLayer,\r\n\t\t\t\tthis.vectorPInteresLayer,\r\n\t\t\t\tthis.vectorPasoPuntoLayer,\r\n\t\t\t\tthis.vectorTelefonosLayer,\r\n\t\t\t\tthis.vectorPanelesLayer,\r\n\t\t\t\tthis.vectorMarcadorVehiculosLayer,\r\n\t\t\t\tthis.vectorHistoricoLayer,\r\n\t\t\t\tthis.vectorGeoCercaLayer,\r\n\t\t\t\tthis.vectorApuntadorLayer,\r\n\t\t\t\tthis.vectorApuntadorAlertaLayer,\r\n\t\t\t\tthis.vectorApuntadorSelectLayer,\r\n\t\t\t\tthis.vectorDispositivoUbicadoLayer,\r\n\t\t\t],\r\n\t\t\toverlays: [\r\n\t\t\t\tthis.overlayPopup,\r\n\t\t\t\tthis.overlayPopupHover,\r\n\t\t\t\tthis.overlayClusterPopupHover\r\n\t\t\t],\r\n\t\t\ttarget: 'map',\r\n\t\t\tview: new View({\r\n\t\t\t\tcenter: fromLonLat(this.center),\r\n\t\t\t\t//extent: extentMexico,\r\n\t\t\t\tzoom: 0\r\n\t\t\t}),\r\n\t\t\tcontrols: defaultControls({ attribution: true, zoom: false }).extend([])\r\n\t\t});\r\n\r\n\t\tthis.olGM = new OLGoogleMaps({\r\n\t\t\tmap: this.map,\r\n\t\t\tmapIconOptions: {\r\n\t\t\t\tuseCanvas: true\r\n\t\t\t},\r\n\t\t\tgmapOptions: {\r\n\t\t\t\tstreetViewControl: false,\r\n\t\t\t},\r\n\t\t\twatch: {\r\n\t\t\t\t'vector': false\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t\tthis.olGM.activate();\r\n\t\tthis.mouseHover();\r\n\t\tthis.mouseClicked();\r\n\t\tthis.onZoom();\r\n\t}\r\n\r\n\t/**Desplregar Activos en mapa */\r\n\tpublic pintarActivos = (activos: ActivoUltimaTransmision[]) => {\r\n\t\tthis.activosDisponibles = activos;\r\n\t\tif (this.productosVisibles) {\r\n\t\t\tthis.pintarMarcadoresActivos();\r\n\t\t} else {\r\n\t\t\tthis.pintarClusterActivos();\r\n\t\t}\r\n\t}\r\n\r\n\tpintarClusterActivos() {\r\n\t\tif (this.activosDisponibles.length > 0) {\r\n\t\t\tlet cluster = new Cluster({});\r\n\t\t\tlet source = new VectorSource({});\r\n\t\t\tlet feature: Feature;\r\n\t\t\tlet styleCache = {};\r\n\r\n\t\t\tthis.activosDisponibles.forEach(activo => {\r\n\t\t\t\ttry {\r\n\t\t\t\t\tfeature = new Feature({\r\n\t\t\t\t\t\ttype: 'Activos',\r\n\t\t\t\t\t\tidActivo: activo.id,\r\n\t\t\t\t\t\tdata: activo,\r\n\t\t\t\t\t\tdataTooltip: `divActivo${activo.id}`,\r\n\t\t\t\t\t\tgeometry: new Point(transform(activo.coordinate, 'EPSG:4326', 'EPSG:3857'))\r\n\t\t\t\t\t});\r\n\r\n\t\t\t\t} catch {\r\n\t\t\t\t\tfeature = new Feature({\r\n\t\t\t\t\t\ttype: 'Activos',\r\n\t\t\t\t\t\tidActivo: activo.id,\r\n\t\t\t\t\t\tdata: activo,\r\n\t\t\t\t\t\tdataTooltip: `divActivo${activo.id}`,\r\n\t\t\t\t\t\tgeometry: new Point(transform([activo.lng, activo.lat], 'EPSG:4326', 'EPSG:3857'))\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\r\n\t\t\t\tsource.addFeature(feature);\r\n\t\t\t});\r\n\r\n\t\t\tcluster.setDistance(40);\r\n\t\t\tcluster.setSource(source);\r\n\r\n\t\t\tthis.vectorClusterActivosLayer = new VectorLayer({\r\n\t\t\t\tname: 'ClusterActivo',\r\n\t\t\t\tsource: cluster,\r\n\t\t\t\tstyle: function (feature) {\r\n\t\t\t\t\tconst size = feature.get('features').length;\r\n\t\t\t\t\tlet style = styleCache[size];\r\n\t\t\t\t\tif (!style) {\r\n\t\t\t\t\t\tif (size > 1) {\r\n\t\t\t\t\t\t\tstyle = new Style({\r\n\t\t\t\t\t\t\t\timage: new Icon({\r\n\t\t\t\t\t\t\t\t\tanchor: [0.5, 0.5],\r\n\t\t\t\t\t\t\t\t\tanchorXUnits: 'fraction',\r\n\t\t\t\t\t\t\t\t\tanchorYUnits: 'fraction',\r\n\t\t\t\t\t\t\t\t\tsrc: './assets/image/cluster_activos.png'\r\n\t\t\t\t\t\t\t\t}),\r\n\t\t\t\t\t\t\t\ttext: new Text({\r\n\t\t\t\t\t\t\t\t\ttext: size.toString(),\r\n\t\t\t\t\t\t\t\t\tstroke: new Stroke({\r\n\t\t\t\t\t\t\t\t\t\twidth: 1,\r\n\t\t\t\t\t\t\t\t\t\tcolor: '#fff',\r\n\t\t\t\t\t\t\t\t\t}),\r\n\t\t\t\t\t\t\t\t\tfill: new Fill({\r\n\t\t\t\t\t\t\t\t\t\tcolor: '#fff',\r\n\t\t\t\t\t\t\t\t\t}),\r\n\t\t\t\t\t\t\t\t}),\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\tstyleCache[size] = style;\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tstyle = new Style({\r\n\t\t\t\t\t\t\t\timage: new Icon({\r\n\t\t\t\t\t\t\t\t\tanchor: [0.5, 0.5],\r\n\t\t\t\t\t\t\t\t\tanchorXUnits: 'fraction',\r\n\t\t\t\t\t\t\t\t\tanchorYUnits: 'fraction',\r\n\t\t\t\t\t\t\t\t\tsrc: './assets/media/activos/activo.png'\r\n\t\t\t\t\t\t\t\t}),\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\tstyleCache[size] = style;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t\treturn style;\r\n\t\t\t\t},\r\n\t\t\t});\r\n\t\t\tthis.map.addLayer(this.vectorClusterActivosLayer);\r\n\t\t}\r\n\t}\r\n\r\n\tpintarMarcadoresActivos() {\r\n\t\tif (this.activosDisponibles.length > 0) {\r\n\t\t\tthis.vectorActivosSource.clear();\r\n\t\t\tthis.activosDisponibles.forEach(activo => {\r\n\t\t\t\tlet icono: string;\r\n\t\t\t\ttry {\r\n\t\t\t\t\tlet iconoActivo = IconosActivos.find(icono => icono.id === activo.estado)\r\n\t\t\t\t\ticono = iconoActivo.icono\r\n\t\t\t\t} catch {\r\n\t\t\t\t\ticono = './assets/media/activos/activo.png'\r\n\t\t\t\t}\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tthis.iconActivosFeature = new Feature({\r\n\t\t\t\t\t\ttype: 'activo',\r\n\t\t\t\t\t\tidActivo: activo.id,\r\n\t\t\t\t\t\tdata: activo,\r\n\t\t\t\t\t\tdataTooltip: `divActivo${activo.id}`,\r\n\t\t\t\t\t\tgeometry: new Point(transform(activo.coordinate, 'EPSG:4326', 'EPSG:3857'))\r\n\t\t\t\t\t});\r\n\r\n\r\n\t\t\t\t} catch {\r\n\t\t\t\t\tthis.iconActivosFeature = new Feature({\r\n\t\t\t\t\t\ttype: 'activo',\r\n\t\t\t\t\t\tidActivo: activo.id,\r\n\t\t\t\t\t\tdata: activo,\r\n\t\t\t\t\t\tdataTooltip: `divActivo${activo.id}`,\r\n\t\t\t\t\t\tgeometry: new Point(transform([activo.lng, activo.lat], 'EPSG:4326', 'EPSG:3857'))\r\n\t\t\t\t\t});\r\n\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.iconActivosStyle = new Style({\r\n\t\t\t\t\timage: new Icon({\r\n\t\t\t\t\t\tanchor: [0.5, 0.5],\r\n\t\t\t\t\t\tanchorXUnits: 'fraction',\r\n\t\t\t\t\t\tanchorYUnits: 'fraction',\r\n\t\t\t\t\t\tsrc: icono\r\n\t\t\t\t\t}),\r\n\t\t\t\t\tzIndex: 10\r\n\t\t\t\t});\r\n\r\n\t\t\t\tthis.iconActivosFeature.setStyle(this.iconActivosStyle);\r\n\t\t\t\tthis.vectorActivosSource.addFeature(this.iconActivosFeature);\r\n\t\t\t\tconst coordenadasFeature = this.iconActivosFeature.getGeometry().getCoordinates();\r\n\t\t\t\tthis.crearEtiquetaActivo(activo, coordenadasFeature);\r\n\r\n\t\t\t\tif (!this.pintarEtiquetas)\r\n\t\t\t\t\tthis.ocultarEtiquetasActivos();\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\r\n\tasync crearEtiquetaActivo(activo: ActivoUltimaTransmision, coordenadasFeature) {\r\n\t\tlet divActivo = `divActivo${activo.id}`;\r\n\t\tlet overlayEtiqueta = this.map.getOverlayById(divActivo);\r\n\r\n\t\tlet existeEtiqueta = overlayEtiqueta == null ? false : true;\r\n\r\n\t\tif (existeEtiqueta && this.sonProductosFiltrados == false) {\r\n\t\t\t/*let idGPS = `spanGPS${activo.id}`;\r\n\t\t\tlet spanGPS = document.getElementById(idGPS);*/\r\n\r\n\t\t\tlet idIcono = `iGPS${activo.id}`;\r\n\t\t\tlet iconGPS = document.getElementById(idIcono);\r\n\r\n\t\t\tlet idLabel = `labelColor${activo.id}`;\r\n\t\t\tlet divLabel = document.getElementById(idLabel);\r\n\r\n\t\t\tlet idBateria = `spanBateriaActivo${activo.id}`;\r\n\t\t\tlet spanBateria = document.getElementById(idBateria);\r\n\r\n\t\t\tspanBateria.innerHTML = 'Batería: ' + activo.bateria;\r\n\t\t\t//spanGPS.innerHTML = activo.gps;\r\n\r\n\t\t\tswitch (activo.gps) {\r\n\t\t\t\tcase 'Mala':\r\n\t\t\t\t\ticonGPS.style.marginRight = '3px';\r\n\t\t\t\t\ticonGPS.classList.add(\"fad\", \"fa-signal-alt-2\");\r\n\t\t\t\t\ticonGPS.style.color = \"#fff\";\r\n\t\t\t\t\tdivLabel.style.backgroundColor = 'red';\r\n\t\t\t\t\t//spanEstadoGps.style.color = 'red';\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase 'Buena':\r\n\t\t\t\t\ticonGPS.style.marginRight = '3px';\r\n\t\t\t\t\ticonGPS.classList.add(\"fad\", \"fa-signal-alt\");\r\n\t\t\t\t\ticonGPS.style.color = \"#fff\";\r\n\t\t\t\t\t//spanEstadoGps.style.color = 'green';\r\n\t\t\t\t\tdivLabel.style.backgroundColor = 'green';\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase 'Media':\r\n\t\t\t\t\ticonGPS.style.marginRight = '3px';\r\n\t\t\t\t\ticonGPS.classList.add(\"fad\", \"fa-signal-alt-3\");\r\n\t\t\t\t\ticonGPS.style.color = \"#fff\";\r\n\t\t\t\t\t//spanEstadoGps.style.color = 'yellow';\r\n\t\t\t\t\tdivLabel.style.backgroundColor = 'orange';\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tdefault:\r\n\t\t\t\t\tbreak;\r\n\t\t\t}\r\n\r\n\t\t\toverlayEtiqueta.setPosition(coordenadasFeature);\r\n\r\n\t\t} else {\r\n\t\t\tlet etiquetas = document.getElementById('etiquetas');\r\n\t\t\tlet div = document.createElement('div');\r\n\t\t\tlet modelo = document.createTextNode(activo.modelo);\r\n\t\t\tlet br = document.createElement('div');\r\n\r\n\t\t\tbr.style.display = 'block';\r\n\t\t\tbr.style.width = '100%';\r\n\r\n\t\t\tlet divEtiqueta = document.createElement('div');\r\n\t\t\tdivEtiqueta.id = `labelColor${activo.id}`;\r\n\t\t\tdivEtiqueta.style.textAlign = 'center'\r\n\t\t\tdivEtiqueta.style.border = '1px solid';\r\n\t\t\tdivEtiqueta.style.lineHeight = '1.6em';\r\n\t\t\tdivEtiqueta.style.marginTop = \"3px\";\r\n\t\t\tdivEtiqueta.style.marginBottom = \"3px\";\r\n\r\n\t\t\tlet divBateria = document.createElement(\"div\");\r\n\t\t\tdivBateria.id = `divBateria${activo.id}`;\r\n\r\n\t\t\tlet spanGPS = document.createElement(\"span\");\r\n\t\t\tspanGPS.id = `spanGPS${activo.id}`;\r\n\t\t\tlet gps = document.createTextNode(activo.gps);\r\n\t\t\tspanGPS.appendChild(gps);\r\n\r\n\t\t\tlet spanBateria = document.createElement(\"span\");\r\n\t\t\tspanBateria.id = `spanBateriaActivo${activo.id}`;\r\n\t\t\tlet bateria = document.createTextNode('Batería: ' + activo.bateria);\r\n\t\t\tspanBateria.appendChild(bateria);\r\n\r\n\t\t\tlet iconoEtiqueta = document.createElement(\"i\");\r\n\t\t\ticonoEtiqueta.id = `iGPS${activo.id}`;\r\n\t\t\tlet referencia = document.getElementById('map-content');\r\n\t\t\tdiv.appendChild(modelo);\r\n\t\t\tdivEtiqueta.appendChild(iconoEtiqueta);\r\n\t\t\tdivEtiqueta.appendChild(spanGPS);\r\n\t\t\tdivBateria.appendChild(spanBateria);\r\n\r\n\t\t\tswitch (activo.gps) {\r\n\t\t\t\tcase 'Mala':\r\n\t\t\t\t\ticonoEtiqueta.style.marginRight = '3px';\r\n\t\t\t\t\ticonoEtiqueta.classList.add(\"fad\", \"fa-signal-alt-2\");\r\n\t\t\t\t\ticonoEtiqueta.style.color = \"#fff\";\r\n\t\t\t\t\tdivEtiqueta.style.backgroundColor = 'red';\r\n\t\t\t\t\t//spanEstadoGps.style.color = 'red';\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase 'Buena':\r\n\t\t\t\t\ticonoEtiqueta.style.marginRight = '3px';\r\n\t\t\t\t\ticonoEtiqueta.classList.add(\"fad\", \"fa-signal-alt\");\r\n\t\t\t\t\ticonoEtiqueta.style.color = \"#fff\";\r\n\t\t\t\t\t//spanEstadoGps.style.color = 'green';\r\n\t\t\t\t\tdivEtiqueta.style.backgroundColor = 'green';\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase 'Media':\r\n\t\t\t\t\ticonoEtiqueta.style.marginRight = '3px';\r\n\t\t\t\t\ticonoEtiqueta.classList.add(\"fad\", \"fa-signal-alt-3\");\r\n\t\t\t\t\ticonoEtiqueta.style.color = \"#fff\";\r\n\t\t\t\t\t//spanEstadoGps.style.color = 'yellow';\r\n\t\t\t\t\tdivEtiqueta.style.backgroundColor = 'orange';\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tdefault:\r\n\t\t\t\t\tbreak;\r\n\t\t\t}\r\n\r\n\t\t\tdiv.appendChild(divEtiqueta);\r\n\t\t\tdiv.appendChild(divBateria);\r\n\r\n\t\t\tdiv.classList.add('ol-popupEtiquetaActivos');\r\n\r\n\t\t\tlet idClass = div.id = `divActivo${activo.id}`;\r\n\t\t\tthis.etiquetasActivos.push(idClass);\r\n\t\t\tetiquetas.parentNode.insertBefore(div, referencia);\r\n\r\n\t\t\tlet containerEt = document.getElementById('divActivo' + activo.id);\r\n\t\t\tlet overlay = this.overlayEtiquetas = new Overlay({\r\n\t\t\t\tid: `divActivo${activo.id}`,\r\n\t\t\t\tposition: undefined,\r\n\t\t\t\telement: containerEt,\r\n\t\t\t\tidOverlay: `divActivo${activo.id}`,\r\n\t\t\t});\r\n\t\t\tthis.map.addOverlay(overlay);\r\n\t\t\tthis.overlayEtiquetas.setPosition(coordenadasFeature);\r\n\t\t}\r\n\t\treturn;\r\n\t}\r\n\r\n\tpublic ocultarActivos() {\r\n\t\tif (this.activosDisponibles.length > 0) {\r\n\t\t\tthis.vectorActivosLayer.setVisible(false);\r\n\t\t\tthis.ocultarEtiquetasActivos();\r\n\t\t}\r\n\t}\r\n\r\n\tpublic mostrarActivos() {\r\n\t\tif (this.activosDisponibles.length > 0) {\r\n\t\t\tthis.vectorActivosLayer.setVisible(true);\r\n\t\t\tthis.mostrarEtiquetasActivos();\r\n\t\t}\r\n\t}\r\n\r\n\t/**Portatiles */\r\n\tpublic pintarPortatiles = (portatiles: PortatilUltimaTransmision[]) => {\r\n\t\tthis.portatilesDisponibles = portatiles;\r\n\t\tif (this.productosVisibles) {\r\n\t\t\tthis.pintarMarcadoresPortatiles();\r\n\t\t} else {\r\n\t\t\tthis.pintarClusterPortatiles();\r\n\t\t}\r\n\t}\r\n\r\n\r\n\tpintarClusterPortatiles() {\r\n\t\tif (this.portatilesDisponibles.length > 0) {\r\n\t\t\tlet cluster = new Cluster({});\r\n\t\t\tlet source = new VectorSource({});\r\n\t\t\tlet feature: Feature;\r\n\t\t\tlet styleCache = {};\r\n\r\n\t\t\tthis.portatilesDisponibles.forEach(portatil => {\r\n\t\t\t\ttry {\r\n\t\t\t\t\tfeature = new Feature({\r\n\t\t\t\t\t\ttype: 'Portatiles',\r\n\t\t\t\t\t\tidActivo: portatil.id,\r\n\t\t\t\t\t\tdata: portatil,\r\n\t\t\t\t\t\tdataTooltip: `divActivo${portatil.id}`,\r\n\t\t\t\t\t\tgeometry: new Point(transform(portatil.coordinate, 'EPSG:4326', 'EPSG:3857'))\r\n\t\t\t\t\t});\r\n\r\n\t\t\t\t} catch {\r\n\t\t\t\t\tfeature = new Feature({\r\n\t\t\t\t\t\ttype: 'Portatiles',\r\n\t\t\t\t\t\tidActivo: portatil.id,\r\n\t\t\t\t\t\tdata: portatil,\r\n\t\t\t\t\t\tdataTooltip: `divActivo${portatil.id}`,\r\n\t\t\t\t\t\tgeometry: new Point(transform([portatil.lng, portatil.lat], 'EPSG:4326', 'EPSG:3857'))\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\r\n\t\t\t\tsource.addFeature(feature);\r\n\t\t\t});\r\n\r\n\t\t\tcluster.setDistance(40);\r\n\t\t\tcluster.setSource(source);\r\n\r\n\t\t\tthis.vectorClusterPortatilesLayer = new VectorLayer({\r\n\t\t\t\tname: 'ClusterPortatil',\r\n\t\t\t\tsource: cluster,\r\n\t\t\t\tstyle: function (feature) {\r\n\t\t\t\t\tconst size = feature.get('features').length;\r\n\t\t\t\t\tlet style = styleCache[size];\r\n\t\t\t\t\tif (!style) {\r\n\t\t\t\t\t\tif (size > 1) {\r\n\t\t\t\t\t\t\tstyle = new Style({\r\n\t\t\t\t\t\t\t\timage: new Icon({\r\n\t\t\t\t\t\t\t\t\tanchor: [0.5, 0.5],\r\n\t\t\t\t\t\t\t\t\tanchorXUnits: 'fraction',\r\n\t\t\t\t\t\t\t\t\tanchorYUnits: 'fraction',\r\n\t\t\t\t\t\t\t\t\tsrc: './assets/image/cluster_activos.png'\r\n\t\t\t\t\t\t\t\t}),\r\n\t\t\t\t\t\t\t\ttext: new Text({\r\n\t\t\t\t\t\t\t\t\ttext: size.toString(),\r\n\t\t\t\t\t\t\t\t\tstroke: new Stroke({\r\n\t\t\t\t\t\t\t\t\t\twidth: 1,\r\n\t\t\t\t\t\t\t\t\t\tcolor: '#fff',\r\n\t\t\t\t\t\t\t\t\t}),\r\n\t\t\t\t\t\t\t\t\tfill: new Fill({\r\n\t\t\t\t\t\t\t\t\t\tcolor: '#fff',\r\n\t\t\t\t\t\t\t\t\t}),\r\n\t\t\t\t\t\t\t\t}),\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\tstyleCache[size] = style;\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tstyle = new Style({\r\n\t\t\t\t\t\t\t\timage: new Icon({\r\n\t\t\t\t\t\t\t\t\tanchor: [0.5, 0.5],\r\n\t\t\t\t\t\t\t\t\tanchorXUnits: 'fraction',\r\n\t\t\t\t\t\t\t\t\tanchorYUnits: 'fraction',\r\n\t\t\t\t\t\t\t\t\tsrc: './assets/media/portatiles/Portatiles_marker.png'\r\n\t\t\t\t\t\t\t\t}),\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\tstyleCache[size] = style;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t\treturn style;\r\n\t\t\t\t},\r\n\t\t\t});\r\n\t\t\tthis.map.addLayer(this.vectorClusterPortatilesLayer);\r\n\t\t}\r\n\t}\r\n\r\n\tpintarMarcadoresPortatiles() {\r\n\t\tif (this.portatilesDisponibles.length > 0) {\r\n\t\t\tthis.vectorPortatilesSource.clear();\r\n\t\t\tthis.portatilesDisponibles.forEach(portatil => {\r\n\t\t\t\tlet icono: string;\r\n\t\t\t\ttry {\r\n\t\t\t\t\tlet iconoActivo = IconosActivos.find(icono => icono.id === portatil.estado)\r\n\t\t\t\t\ticono = iconoActivo.icono\r\n\t\t\t\t} catch {\r\n\t\t\t\t\ticono = './assets/media/portatiles/Portatiles_24.png'\r\n\t\t\t\t}\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tthis.iconPortatilesFeature = new Feature({\r\n\t\t\t\t\t\ttype: 'Portatiles',\r\n\t\t\t\t\t\tidActivo: portatil.id,\r\n\t\t\t\t\t\tdata: portatil,\r\n\t\t\t\t\t\tdataTooltip: `divPortatil${portatil.id}`,\r\n\t\t\t\t\t\tgeometry: new Point(transform(portatil.coordinate, 'EPSG:4326', 'EPSG:3857'))\r\n\t\t\t\t\t});\r\n\r\n\r\n\t\t\t\t} catch {\r\n\t\t\t\t\tthis.iconPortatilesFeature = new Feature({\r\n\t\t\t\t\t\ttype: 'Portatiles',\r\n\t\t\t\t\t\tidActivo: portatil.id,\r\n\t\t\t\t\t\tdata: portatil,\r\n\t\t\t\t\t\tdataTooltip: `divPortatil${portatil.id}`,\r\n\t\t\t\t\t\tgeometry: new Point(transform([portatil.lng, portatil.lat], 'EPSG:4326', 'EPSG:3857'))\r\n\t\t\t\t\t});\r\n\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.iconPortatilesStyle = new Style({\r\n\t\t\t\t\timage: new Icon({\r\n\t\t\t\t\t\tanchor: [0.5, 0.5],\r\n\t\t\t\t\t\tanchorXUnits: 'fraction',\r\n\t\t\t\t\t\tanchorYUnits: 'fraction',\r\n\t\t\t\t\t\tsrc: icono\r\n\t\t\t\t\t}),\r\n\t\t\t\t\tzIndex: 10\r\n\t\t\t\t});\r\n\r\n\t\t\t\tthis.iconPortatilesFeature.setStyle(this.iconPortatilesStyle);\r\n\t\t\t\tthis.vectorPortatilesSource.addFeature(this.iconPortatilesFeature);\r\n\t\t\t\tconst coordenadasFeature = this.iconPortatilesFeature.getGeometry().getCoordinates();\r\n\t\t\t\tthis.crearEtiquetaActivo(portatil, coordenadasFeature);\r\n\r\n\t\t\t\tif (!this.pintarEtiquetas)\r\n\t\t\t\t\tthis.ocultarEtiquetasPortatiles();\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\r\n\tasync crearEtiquetaPortatil(portatil: PortatilUltimaTransmision, coordenadasFeature) {\r\n\t\tlet divActivo = `divPortatil${portatil.id}`;\r\n\t\tlet overlayEtiqueta = this.map.getOverlayById(divActivo);\r\n\r\n\t\tlet existeEtiqueta = overlayEtiqueta == null ? false : true;\r\n\r\n\t\tif (existeEtiqueta && this.sonProductosFiltrados == false) {\r\n\t\t\t/*let idGPS = `spanGPS${activo.id}`;\r\n\t\t\tlet spanGPS = document.getElementById(idGPS);*/\r\n\r\n\t\t\tlet idIcono = `iGPS${portatil.id}`;\r\n\t\t\tlet iconGPS = document.getElementById(idIcono);\r\n\r\n\t\t\tlet idLabel = `labelColor${portatil.id}`;\r\n\t\t\tlet divLabel = document.getElementById(idLabel);\r\n\r\n\t\t\tlet idBateria = `spanBateriaActivo${portatil.id}`;\r\n\t\t\tlet spanBateria = document.getElementById(idBateria);\r\n\r\n\t\t\tspanBateria.innerHTML = 'Batería: ' + portatil.bateria;\r\n\t\t\t//spanGPS.innerHTML = activo.gps;\r\n\r\n\t\t\tswitch (portatil.gps) {\r\n\t\t\t\tcase 'Mala':\r\n\t\t\t\t\ticonGPS.style.marginRight = '3px';\r\n\t\t\t\t\ticonGPS.classList.add(\"fad\", \"fa-signal-alt-2\");\r\n\t\t\t\t\ticonGPS.style.color = \"#fff\";\r\n\t\t\t\t\tdivLabel.style.backgroundColor = 'red';\r\n\t\t\t\t\t//spanEstadoGps.style.color = 'red';\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase 'Buena':\r\n\t\t\t\t\ticonGPS.style.marginRight = '3px';\r\n\t\t\t\t\ticonGPS.classList.add(\"fad\", \"fa-signal-alt\");\r\n\t\t\t\t\ticonGPS.style.color = \"#fff\";\r\n\t\t\t\t\t//spanEstadoGps.style.color = 'green';\r\n\t\t\t\t\tdivLabel.style.backgroundColor = 'green';\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase 'Media':\r\n\t\t\t\t\ticonGPS.style.marginRight = '3px';\r\n\t\t\t\t\ticonGPS.classList.add(\"fad\", \"fa-signal-alt-3\");\r\n\t\t\t\t\ticonGPS.style.color = \"#fff\";\r\n\t\t\t\t\t//spanEstadoGps.style.color = 'yellow';\r\n\t\t\t\t\tdivLabel.style.backgroundColor = 'orange';\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tdefault:\r\n\t\t\t\t\tbreak;\r\n\t\t\t}\r\n\r\n\t\t\toverlayEtiqueta.setPosition(coordenadasFeature);\r\n\r\n\t\t} else {\r\n\t\t\tlet etiquetas = document.getElementById('etiquetas');\r\n\t\t\tlet div = document.createElement('div');\r\n\t\t\tlet modelo = document.createTextNode(portatil.modelo);\r\n\t\t\tlet br = document.createElement('div');\r\n\r\n\t\t\tbr.style.display = 'block';\r\n\t\t\tbr.style.width = '100%';\r\n\r\n\t\t\tlet divEtiqueta = document.createElement('div');\r\n\t\t\tdivEtiqueta.id = `labelColor${portatil.id}`;\r\n\t\t\tdivEtiqueta.style.textAlign = 'center'\r\n\t\t\tdivEtiqueta.style.border = '1px solid';\r\n\t\t\tdivEtiqueta.style.lineHeight = '1.6em';\r\n\t\t\tdivEtiqueta.style.marginTop = \"3px\";\r\n\t\t\tdivEtiqueta.style.marginBottom = \"3px\";\r\n\r\n\t\t\tlet divBateria = document.createElement(\"div\");\r\n\t\t\tdivBateria.id = `divBateria${portatil.id}`;\r\n\r\n\t\t\tlet spanGPS = document.createElement(\"span\");\r\n\t\t\tspanGPS.id = `spanGPS${portatil.id}`;\r\n\t\t\tlet gps = document.createTextNode(portatil.gps);\r\n\t\t\tspanGPS.appendChild(gps);\r\n\r\n\t\t\tlet spanBateria = document.createElement(\"span\");\r\n\t\t\tspanBateria.id = `spanBateriaActivo${portatil.id}`;\r\n\t\t\tlet bateria = document.createTextNode('Batería: ' + portatil.bateria);\r\n\t\t\tspanBateria.appendChild(bateria);\r\n\r\n\t\t\tlet iconoEtiqueta = document.createElement(\"i\");\r\n\t\t\ticonoEtiqueta.id = `iGPS${portatil.id}`;\r\n\t\t\tlet referencia = document.getElementById('map-content');\r\n\t\t\tdiv.appendChild(modelo);\r\n\t\t\tdivEtiqueta.appendChild(iconoEtiqueta);\r\n\t\t\tdivEtiqueta.appendChild(spanGPS);\r\n\t\t\tdivBateria.appendChild(spanBateria);\r\n\r\n\t\t\tswitch (portatil.gps) {\r\n\t\t\t\tcase 'Mala':\r\n\t\t\t\t\ticonoEtiqueta.style.marginRight = '3px';\r\n\t\t\t\t\ticonoEtiqueta.classList.add(\"fad\", \"fa-signal-alt-2\");\r\n\t\t\t\t\ticonoEtiqueta.style.color = \"#fff\";\r\n\t\t\t\t\tdivEtiqueta.style.backgroundColor = 'red';\r\n\t\t\t\t\t//spanEstadoGps.style.color = 'red';\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase 'Buena':\r\n\t\t\t\t\ticonoEtiqueta.style.marginRight = '3px';\r\n\t\t\t\t\ticonoEtiqueta.classList.add(\"fad\", \"fa-signal-alt\");\r\n\t\t\t\t\ticonoEtiqueta.style.color = \"#fff\";\r\n\t\t\t\t\t//spanEstadoGps.style.color = 'green';\r\n\t\t\t\t\tdivEtiqueta.style.backgroundColor = 'green';\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase 'Media':\r\n\t\t\t\t\ticonoEtiqueta.style.marginRight = '3px';\r\n\t\t\t\t\ticonoEtiqueta.classList.add(\"fad\", \"fa-signal-alt-3\");\r\n\t\t\t\t\ticonoEtiqueta.style.color = \"#fff\";\r\n\t\t\t\t\t//spanEstadoGps.style.color = 'yellow';\r\n\t\t\t\t\tdivEtiqueta.style.backgroundColor = 'orange';\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tdefault:\r\n\t\t\t\t\tbreak;\r\n\t\t\t}\r\n\r\n\t\t\tdiv.appendChild(divEtiqueta);\r\n\t\t\tdiv.appendChild(divBateria);\r\n\r\n\t\t\tdiv.classList.add('ol-popupEtiquetaActivos');\r\n\r\n\t\t\tlet idClass = div.id = `divPortatil${portatil.id}`;\r\n\t\t\tthis.etiquetasActivos.push(idClass);\r\n\t\t\tetiquetas.parentNode.insertBefore(div, referencia);\r\n\r\n\t\t\tlet containerEt = document.getElementById('divPortatil' + portatil.id);\r\n\t\t\tlet overlay = this.overlayEtiquetas = new Overlay({\r\n\t\t\t\tid: `divPortatil${portatil.id}`,\r\n\t\t\t\tposition: undefined,\r\n\t\t\t\telement: containerEt,\r\n\t\t\t\tidOverlay: `divPortatil${portatil.id}`,\r\n\t\t\t});\r\n\t\t\tthis.map.addOverlay(overlay);\r\n\t\t\tthis.overlayEtiquetas.setPosition(coordenadasFeature);\r\n\t\t}\r\n\t\treturn;\r\n\t}\r\n\r\n\tpublic ocultarPortatiles() {\r\n\t\tif (this.portatilesDisponibles.length > 0) {\r\n\t\t\tthis.vectorPortatilesLayer.setVisible(false);\r\n\t\t\tthis.ocultarEtiquetasPortatiles();\r\n\t\t}\r\n\t}\r\n\r\n\tpublic mostrarPortatiles() {\r\n\t\tif (this.portatilesDisponibles.length > 0) {\r\n\t\t\tthis.vectorPortatilesLayer.setVisible(true);\r\n\t\t\tthis.mostrarEtiquetasPortatiles();\r\n\t\t}\r\n\t}\r\n\r\n\r\n\t/**Desplegar Lectoras en Mapa*/\r\n\tpublic pintarLectoras = (lectoras: UltimaLectura[]) => {\r\n\t\tthis.lectorasDisponibles = lectoras;\r\n\r\n\t\tif (this.productosVisibles) {\r\n\t\t\tthis.pintarMarcadoresLectoras();\r\n\t\t} else {\r\n\t\t\tthis.pintarClusterLectoras();\r\n\t\t}\r\n\r\n\t}\r\n\r\n\tpintarClusterLectoras() {\r\n\t\tif (this.lectorasDisponibles.length > 0) {\r\n\t\t\tlet source = new VectorSource({});\r\n\t\t\tlet feature: Feature;\r\n\t\t\tlet styleCache = {};\r\n\r\n\t\t\tthis.lectorasDisponibles.forEach(lectora => {\r\n\t\t\t\tfeature = new Feature({\r\n\t\t\t\t\ttype: 'Lectoras',\r\n\t\t\t\t\tidActivo: lectora.id,\r\n\t\t\t\t\tdata: lectora,\r\n\t\t\t\t\tdataTooltip: `divLectora${lectora.id}`,\r\n\t\t\t\t\tgeometry: new Point(transform([lectora.lng, lectora.lat], 'EPSG:4326', 'EPSG:3857'))\r\n\t\t\t\t});\r\n\t\t\t\tsource.addFeature(feature);\r\n\t\t\t});\r\n\r\n\t\t\tconst CLUSTER = new Cluster({\r\n\t\t\t\tdistance: 40,\r\n\t\t\t\tminDistance: 20,\r\n\t\t\t\tsource: source,\r\n\t\t\t});\r\n\r\n\t\t\tthis.vectorClusterLectorasLayer = new VectorLayer({\r\n\t\t\t\tsource: CLUSTER,\r\n\t\t\t\tstyle: function (feature) {\r\n\t\t\t\t\tconst size = feature.get('features').length;\r\n\t\t\t\t\tlet style = styleCache[size];\r\n\t\t\t\t\tif (!style) {\r\n\t\t\t\t\t\tif (size > 1) {\r\n\t\t\t\t\t\t\tstyle = new Style({\r\n\t\t\t\t\t\t\t\timage: new Icon({\r\n\t\t\t\t\t\t\t\t\tanchor: [0.5, 0.5],\r\n\t\t\t\t\t\t\t\t\tanchorXUnits: 'fraction',\r\n\t\t\t\t\t\t\t\t\tanchorYUnits: 'fraction',\r\n\t\t\t\t\t\t\t\t\tsrc: './assets/image/Lectoras.png'\r\n\t\t\t\t\t\t\t\t}),\r\n\t\t\t\t\t\t\t\ttext: new Text({\r\n\t\t\t\t\t\t\t\t\ttext: size.toString(),\r\n\t\t\t\t\t\t\t\t\tstroke: new Stroke({\r\n\t\t\t\t\t\t\t\t\t\twidth: 1,\r\n\t\t\t\t\t\t\t\t\t\tcolor: '#fff',\r\n\t\t\t\t\t\t\t\t\t}),\r\n\t\t\t\t\t\t\t\t\tfill: new Fill({\r\n\t\t\t\t\t\t\t\t\t\tcolor: '#fff',\r\n\t\t\t\t\t\t\t\t\t}),\r\n\t\t\t\t\t\t\t\t}),\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\tstyleCache[size] = style;\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tstyle = new Style({\r\n\t\t\t\t\t\t\t\timage: new Icon({\r\n\t\t\t\t\t\t\t\t\tanchor: [0.5, 0.5],\r\n\t\t\t\t\t\t\t\t\tanchorXUnits: 'fraction',\r\n\t\t\t\t\t\t\t\t\tanchorYUnits: 'fraction',\r\n\t\t\t\t\t\t\t\t\tsrc: './assets/media/terminales/Lectoras.png'\r\n\t\t\t\t\t\t\t\t}),\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\tstyleCache[size] = style;\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t}\r\n\t\t\t\t\treturn style;\r\n\t\t\t\t},\r\n\t\t\t});\r\n\t\t\tthis.map.addLayer(this.vectorClusterLectorasLayer);\r\n\t\t}\r\n\t}\r\n\r\n\tpintarMarcadoresLectoras() {\r\n\t\tif (this.lectorasDisponibles.length > 0) {\r\n\t\t\tthis.vectorLectorasSource.clear();\r\n\t\t\tthis.lectorasDisponibles.forEach(lectora => {\r\n\t\t\t\tthis.iconoLectorasFeature = new Feature({\r\n\t\t\t\t\ttype: 'lectora',\r\n\t\t\t\t\tidTelefono: lectora.id,\r\n\t\t\t\t\tdata: lectora,\r\n\t\t\t\t\tdataTooltip: `divLectora${lectora.id}`,\r\n\t\t\t\t\tgeometry: new Point(transform([lectora.lng, lectora.lat], 'EPSG:4326', 'EPSG:3857'))\r\n\t\t\t\t});\r\n\r\n\t\t\t\tthis.iconoLectorasStyle = new Style({\r\n\t\t\t\t\timage: new Icon({\r\n\t\t\t\t\t\tanchor: [0.5, 0.5],\r\n\t\t\t\t\t\tanchorXUnits: 'fraction',\r\n\t\t\t\t\t\tanchorYUnits: 'fraction',\r\n\t\t\t\t\t\tsrc: './assets/media/terminales/Lectoras.png'\r\n\t\t\t\t\t}),\r\n\t\t\t\t\tzIndex: 10\r\n\t\t\t\t});\r\n\t\t\t\tthis.iconoLectorasFeature.setStyle(this.iconoLectorasStyle);\r\n\t\t\t\tthis.vectorLectorasSource.addFeature(this.iconoLectorasFeature);\r\n\t\t\t})\r\n\t\t}\r\n\t}\r\n\r\n\tpublic ocultarLectoras() {\r\n\t\tif (this.lectorasDisponibles.length > 0) {\r\n\t\t\tthis.vectorLectorasLayer.setVisible(false);\r\n\t\t}\r\n\t}\r\n\r\n\tpublic mostrarLectoras() {\r\n\t\tif (this.lectorasDisponibles.length > 0) {\r\n\t\t\tthis.vectorLectorasLayer.setVisible(true);\r\n\t\t}\r\n\t}\r\n\r\n\r\n\r\n\r\n\t\r\n\r\n\t/**Desplegar Medidores en Mapa */\r\n\tpublic pintarMedidores = (medidores: Medidores[]) => {\r\n\t\tthis.medidoresDisponibles = medidores;\r\n\r\n\t\tif (this.productosVisibles) {\r\n\t\t\tthis.pintarMarcadoresMedidores();\r\n\t\t} else {\r\n\t\t\tthis.pintarClusterMedidores();\r\n\t\t}\r\n\t}\r\n\r\n\r\n\r\n\tpintarClusterMedidores() {\r\n\t\tif (this.medidoresDisponibles.length > 0) {\r\n\t\t\tlet source = new VectorSource({});\r\n\t\t\tlet feature: Feature;\r\n\t\t\tlet styleCache = {};\r\n\r\n\t\t\tthis.medidoresDisponibles.forEach(medidor => {\r\n\t\t\t\tfeature = new Feature({\r\n\t\t\t\t\ttype: 'Medidores',\r\n\t\t\t\t\tidActivo: medidor.id,\r\n\t\t\t\t\tdata: medidor,\r\n\t\t\t\t\tdataTooltip: `divMedidor${medidor.id}`,\r\n\t\t\t\t\tgeometry: new Point(transform([medidor.lng, medidor.lat], 'EPSG:4326', 'EPSG:3857'))\r\n\t\t\t\t});\r\n\t\t\t\tsource.addFeature(feature);\r\n\t\t\t});\r\n\r\n\t\t\tconst CLUSTER = new Cluster({\r\n\t\t\t\tdistance: 40,\r\n\t\t\t\tminDistance: 20,\r\n\t\t\t\tsource: source\r\n\t\t\t});\r\n\r\n\t\t\tthis.vectorClusterMedidoresLayer = new VectorLayer({\r\n\t\t\t\tsource: CLUSTER,\r\n\t\t\t\tstyle: function (feature) {\r\n\t\t\t\t\tconst size = feature.get('features').length;\r\n\t\t\t\t\tlet style = styleCache[size];\r\n\t\t\t\t\tif (!style) {\r\n\t\t\t\t\t\tif (size > 1) {\r\n\t\t\t\t\t\t\tstyle = new Style({\r\n\t\t\t\t\t\t\t\timage: new Icon({\r\n\t\t\t\t\t\t\t\t\tanchor: [0.5, 0.5],\r\n\t\t\t\t\t\t\t\t\tanchorXUnits: 'fraction',\r\n\t\t\t\t\t\t\t\t\tanchorYUnits: 'fraction',\r\n\t\t\t\t\t\t\t\t\tsrc: './assets/image/Hidraulicos.png'\r\n\t\t\t\t\t\t\t\t}),\r\n\t\t\t\t\t\t\t\ttext: new Text({\r\n\t\t\t\t\t\t\t\t\ttext: size.toString(),\r\n\t\t\t\t\t\t\t\t\tstroke: new Stroke({\r\n\t\t\t\t\t\t\t\t\t\twidth: 1,\r\n\t\t\t\t\t\t\t\t\t\tcolor: '#fff',\r\n\t\t\t\t\t\t\t\t\t}),\r\n\t\t\t\t\t\t\t\t\tfill: new Fill({\r\n\t\t\t\t\t\t\t\t\t\tcolor: '#fff',\r\n\t\t\t\t\t\t\t\t\t}),\r\n\t\t\t\t\t\t\t\t}),\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\tstyleCache[size] = style;\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tstyle = new Style({\r\n\t\t\t\t\t\t\t\timage: new Icon({\r\n\t\t\t\t\t\t\t\t\tanchor: [0.5, 0.5],\r\n\t\t\t\t\t\t\t\t\tanchorXUnits: 'fraction',\r\n\t\t\t\t\t\t\t\t\tanchorYUnits: 'fraction',\r\n\t\t\t\t\t\t\t\t\tsrc: './assets/media/medidores/medidor.png'\r\n\t\t\t\t\t\t\t\t}),\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\tstyleCache[size] = style;\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t}\r\n\t\t\t\t\treturn style;\r\n\t\t\t\t},\r\n\t\t\t});\r\n\t\t\tthis.map.addLayer(this.vectorClusterMedidoresLayer);\r\n\t\t}\r\n\t}\r\n\r\n\tpintarMarcadoresMedidores() {\r\n\t\tif (this.medidoresDisponibles.length > 0) {\r\n\t\t\tthis.medidoresDisponibles.forEach(medidor => {\r\n\t\t\t\tthis.iconMedidoresFeature = new Feature({\r\n\t\t\t\t\ttype: 'medidor',\r\n\t\t\t\t\tidMedidor: medidor.id,\r\n\t\t\t\t\tdata: medidor,\r\n\t\t\t\t\tdataTooltip: `divMedidor${medidor.id}`,\r\n\t\t\t\t\tgeometry: new Point(transform([medidor.lng, medidor.lat], 'EPSG:4326', 'EPSG:3857'))\r\n\t\t\t\t});\r\n\r\n\t\t\t\tthis.iconMedidoresStyle = new Style({\r\n\t\t\t\t\timage: new Icon({\r\n\t\t\t\t\t\tanchor: [0.5, 0.5],\r\n\t\t\t\t\t\tanchorXUnits: 'fraction',\r\n\t\t\t\t\t\tanchorYUnits: 'fraction',\r\n\t\t\t\t\t\tsrc: './assets/media/medidores/medidor.png'\r\n\t\t\t\t\t}),\r\n\t\t\t\t\tzIndex: 10\r\n\t\t\t\t});\r\n\t\t\t\tthis.iconMedidoresFeature.setStyle(this.iconMedidoresStyle);\r\n\t\t\t\tthis.vectorMedidoresSource.addFeature(this.iconMedidoresFeature);\r\n\r\n\t\t\t\tconst coordenaFeature = this.iconMedidoresFeature.getGeometry().getCoordinates();\r\n\t\t\t\tthis.crearEtiquetaMedidor(medidor, coordenaFeature)\r\n\r\n\t\t\t\tif (!this.pintarEtiquetas)\r\n\t\t\t\t\tthis.ocultarEtiquetasMedidores();\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\r\n\tasync crearEtiquetaMedidor(medidor, coordenaFeature) {\r\n\t\tlet gastoData = \"\";\r\n\t\tlet totalizadorData = \"\";\r\n\t\tthis.medidoresService.obtenerMedidor(medidor.imei).subscribe(\r\n\t\t\t(response) => {\r\n\t\t\t\tif (response != null) {\r\n\t\t\t\t\tgastoData = response.gasto.toFixed(4).toString();\r\n\t\t\t\t\ttotalizadorData = response.totalizador.toFixed(4).toString();\r\n\t\t\t\t}\r\n\r\n\r\n\t\t\t\tlet divMedidor = `divMedidor${medidor.id}`;\r\n\t\t\t\tlet overlayEtiqueta = this.map.getOverlayById(divMedidor);\r\n\r\n\t\t\t\tlet existeEtiqueta = overlayEtiqueta == null ? false : true;\r\n\t\t\t\tif (existeEtiqueta && this.sonProductosFiltrados == false) {\r\n\t\t\t\t\tlet idEstatus = `spanEstado${medidor.id}`;\r\n\t\t\t\t\tlet imeiSpan = document.getElementById(idEstatus);\r\n\t\t\t\t\tlet idLabel = `labelColor${medidor.id}`;\r\n\t\t\t\t\tlet divLabel = document.getElementById(idLabel);\r\n\r\n\t\t\t\t\timeiSpan.innerHTML = '' + medidor.imei;\r\n\t\t\t\t\tdivLabel.style.backgroundColor = '#166BA2';\r\n\r\n\t\t\t\t\toverlayEtiqueta.setPosition(coordenaFeature);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tlet etiquetas = document.getElementById('etiquetas');\r\n\t\t\t\t\tlet div = document.createElement(\"div\");\r\n\t\t\t\t\tlet gasto = document.createTextNode('Gasto: ' + gastoData + ' m3/h')\r\n\t\t\t\t\tlet br = document.createElement(\"div\");\r\n\r\n\t\t\t\t\tbr.style.display = 'block';\r\n\t\t\t\t\tbr.style.width = '100%';\r\n\r\n\t\t\t\t\tlet divEtiqueta = document.createElement(\"div\");\r\n\t\t\t\t\tdivEtiqueta.id = `labelColor${medidor.id}`;\r\n\t\t\t\t\tdivEtiqueta.style.border = '1px solid';\r\n\t\t\t\t\tdivEtiqueta.style.lineHeight = '1.6em';\r\n\t\t\t\t\tdivEtiqueta.style.marginTop = \"3px\";\r\n\t\t\t\t\tdivEtiqueta.style.marginBottom = \"3px\";\r\n\r\n\t\t\t\t\tlet divTotalizador = document.createElement(\"div\");\r\n\t\t\t\t\tdivTotalizador.id = `divTotalizador${medidor.id}`;\r\n\r\n\t\t\t\t\tlet iconoEtiqueta = document.createElement(\"i\");\r\n\t\t\t\t\ticonoEtiqueta.style.marginRight = '3px';\r\n\t\t\t\t\ticonoEtiqueta.classList.add(\"fal\", \"fa-barcode-alt\");\r\n\t\t\t\t\ticonoEtiqueta.style.color = \"#fff\";\r\n\r\n\t\t\t\t\tlet spanEstatus = document.createElement(\"span\");\r\n\t\t\t\t\tspanEstatus.id = `spanEstado${medidor.id}`;\r\n\t\t\t\t\tlet estatus = document.createTextNode(medidor.imei);\r\n\t\t\t\t\tspanEstatus.appendChild(estatus);\r\n\r\n\t\t\t\t\tlet totalizadorMedidor = document.createElement(\"span\");\r\n\t\t\t\t\ttotalizadorMedidor.id = `spanTotalizadorMedidor${medidor.id}`;\r\n\t\t\t\t\tlet totalizador = document.createTextNode('Totalizador: ' + totalizadorData + ' m3');\r\n\t\t\t\t\ttotalizadorMedidor.appendChild(totalizador);\r\n\r\n\r\n\t\t\t\t\tlet totalizadorMedidor2 = document.createElement(\"span\");\r\n\t\t\t\t\ttotalizadorMedidor2.id = `spanTotalizadorMedidor2${medidor.id}`;\r\n\t\t\t\t\tlet totalizador2 = document.createTextNode(totalizadorData + ' m3');\r\n\t\t\t\t\ttotalizadorMedidor2.appendChild(totalizador2);\r\n\r\n\t\t\t\t\tlet referencia = document.getElementById('map-content');\r\n\t\t\t\t\tdiv.appendChild(gasto);\r\n\t\t\t\t\tdivEtiqueta.appendChild(iconoEtiqueta);\r\n\t\t\t\t\tdivEtiqueta.appendChild(spanEstatus);\r\n\t\t\t\t\tdivTotalizador.appendChild(totalizadorMedidor)\r\n\r\n\t\t\t\t\tdivEtiqueta.style.backgroundColor = '#166BA2';\r\n\r\n\t\t\t\t\tdiv.appendChild(divEtiqueta);\r\n\t\t\t\t\tdiv.appendChild(divTotalizador);\r\n\r\n\t\t\t\t\tdiv.classList.add('ol-popupEtiquetaMedidor');\r\n\r\n\t\t\t\t\tlet idClass = div.id = `divMedidor${medidor.id}`;\r\n\t\t\t\t\tthis.etiquetasMedidores.push(idClass);\r\n\t\t\t\t\tetiquetas.parentNode.insertBefore(div, referencia);\r\n\r\n\t\t\t\t\tlet containerEt = document.getElementById('divMedidor' + medidor.id);\r\n\t\t\t\t\tlet overlay = this.overlayEtiquetas = new Overlay({\r\n\t\t\t\t\t\tid: `divMedidor${medidor.id}`,\r\n\t\t\t\t\t\tposition: undefined,\r\n\t\t\t\t\t\telement: containerEt,\r\n\t\t\t\t\t\tidOverlay: `divMedidor${medidor.id}`,\r\n\t\t\t\t\t});\r\n\t\t\t\t\tthis.map.addOverlay(overlay);\r\n\t\t\t\t\tthis.overlayEtiquetas.setPosition(coordenaFeature);\r\n\t\t\t\t}\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\t\t);\r\n\r\n\t}\r\n\r\n\tpublic ocultarMedidores() {\r\n\t\tif (this.medidoresDisponibles.length > 0) {\r\n\t\t\tthis.vectorMedidoresLayer.setVisible(false);\r\n\t\t\tthis.ocultarEtiquetasMedidores();\r\n\t\t}\r\n\t}\r\n\r\n\tpublic mostrarMedidores() {\r\n\t\tif (this.medidoresDisponibles.length > 0) {\r\n\t\t\tthis.vectorMedidoresLayer.setVisible(true);\r\n\t\t\tthis.mostrarEtiquetasMedidores();\r\n\t\t}\r\n\t}\r\n\r\n\r\n\r\n\r\n\r\n\r\n\t/**Desplegar Micromedidores en Mapa*/\r\n\tpublic pintarMicromedidores = (micromedidores: Micromedidor[]) => {\r\n\t\tthis.micromedidoresDisponibles = micromedidores;\r\n\t\tif (this.productosVisibles) {\r\n\t\t\tthis.pintarMarcadoresMicromedidores()\r\n\t\t} else {\r\n\t\t\tthis.pintarClusterMicromedidores()\r\n\t\t}\r\n\t}\r\n\r\n\tpintarClusterMicromedidores() {\r\n\t\tif (this.micromedidoresDisponibles.length > 0) {\r\n\t\t\tlet source = new VectorSource({});\r\n\t\t\tlet feature: Feature;\r\n\t\t\tlet styleCache = {};\r\n\r\n\t\t\tthis.micromedidoresDisponibles.forEach(micromedidor => {\r\n\t\t\t\tfeature = new Feature({\r\n\t\t\t\t\ttype: 'Micromedidores',\r\n\t\t\t\t\tidMicromedidor: micromedidor.id,\r\n\t\t\t\t\tdata: micromedidor,\r\n\t\t\t\t\tdataTooltip: `divMicromedidor${micromedidor.id}`,\r\n\t\t\t\t\tgeometry: new Point(transform([micromedidor.lng, micromedidor.lat], 'EPSG:4326', 'EPSG:3857'))\r\n\r\n\t\t\t\t});\r\n\t\t\t\tsource.addFeature(feature);\r\n\t\t\t});\r\n\r\n\t\t\tconst CLUSTER = new Cluster({\r\n\t\t\t\tdistance: 40,\r\n\t\t\t\tminDistance: 20,\r\n\t\t\t\tsource: source,\r\n\t\t\t});\r\n\r\n\t\t\tthis.vectorClusterMicromedidoresLayer = new VectorLayer({\r\n\t\t\t\tsource: CLUSTER,\r\n\t\t\t\tstyle: function (feature) {\r\n\t\t\t\t\tconst size = feature.get('features').length;\r\n\t\t\t\t\tlet style = styleCache[size];\r\n\t\t\t\t\tif (!style) {\r\n\t\t\t\t\t\tif (size > 1) {\r\n\t\t\t\t\t\t\tstyle = new Style({\r\n\t\t\t\t\t\t\t\timage: new Icon({\r\n\t\t\t\t\t\t\t\t\tanchor: [0.5, 0.5],\r\n\t\t\t\t\t\t\t\t\tanchorXUnits: 'fraction',\r\n\t\t\t\t\t\t\t\t\tanchorYUnits: 'fraction',\r\n\t\t\t\t\t\t\t\t\tsrc: './assets/image/Hidraulicos.png'\r\n\t\t\t\t\t\t\t\t}),\r\n\t\t\t\t\t\t\t\ttext: new Text({\r\n\t\t\t\t\t\t\t\t\ttext: size.toString(),\r\n\t\t\t\t\t\t\t\t\tstroke: new Stroke({\r\n\t\t\t\t\t\t\t\t\t\twidth: 1,\r\n\t\t\t\t\t\t\t\t\t\tcolor: '#fff',\r\n\t\t\t\t\t\t\t\t\t}),\r\n\t\t\t\t\t\t\t\t\tfill: new Fill({\r\n\t\t\t\t\t\t\t\t\t\tcolor: '#fff',\r\n\t\t\t\t\t\t\t\t\t}),\r\n\t\t\t\t\t\t\t\t}),\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\tstyleCache[size] = style;\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tstyle = new Style({\r\n\t\t\t\t\t\t\t\timage: new Icon({\r\n\t\t\t\t\t\t\t\t\tanchor: [0.5, 0.5],\r\n\t\t\t\t\t\t\t\t\tanchorXUnits: 'fraction',\r\n\t\t\t\t\t\t\t\t\tanchorYUnits: 'fraction',\r\n\t\t\t\t\t\t\t\t\tsrc: './assets/media/medidores/medidor.png'\r\n\t\t\t\t\t\t\t\t}),\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\tstyleCache[size] = style;\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t}\r\n\t\t\t\t\treturn style;\r\n\t\t\t\t},\r\n\t\t\t});\r\n\t\t\tthis.map.addLayer(this.vectorClusterMicromedidoresLayer);\r\n\t\t}\r\n\t}\r\n\r\n\tpintarMarcadoresMicromedidores() {\r\n\t\tif (this.micromedidoresDisponibles.length > 0) {\r\n\t\t\tthis.micromedidoresDisponibles.forEach(micromedidor => {\r\n\t\t\t\tthis.iconMicromedidoresFeature = new Feature({\r\n\t\t\t\t\ttype: 'micromedidor',\r\n\t\t\t\t\tidMicromedidor: micromedidor.id,\r\n\t\t\t\t\tdata: micromedidor,\r\n\t\t\t\t\tdataTooltip: `divMicromedidor${micromedidor.id}`,\r\n\t\t\t\t\tgeometry: new Point(transform([micromedidor.lng, micromedidor.lat], 'EPSG:4326', 'EPSG:3857')) //El servicio debe contener las coordenadas\r\n\t\t\t\t});\r\n\r\n\t\t\t\tthis.iconMicromedidoresStyle = new Style({\r\n\t\t\t\t\timage: new Icon({\r\n\t\t\t\t\t\tanchor: [0.5, 0.5],\r\n\t\t\t\t\t\tanchorXUnits: 'fraction',\r\n\t\t\t\t\t\tanchorYUnits: 'fraction',\r\n\t\t\t\t\t\tsrc: './assets/media/medidores/medidor.png'\r\n\t\t\t\t\t}),\r\n\t\t\t\t\tzIndex: 10\r\n\t\t\t\t});\r\n\r\n\t\t\t\tthis.iconMicromedidoresFeature.setStyle(this.iconMicromedidoresStyle);\r\n\t\t\t\tthis.vectorMicromedidoresSource.addFeature(this.iconMicromedidoresFeature);\r\n\t\t\t\tconst coordenaFeature = this.iconMicromedidoresFeature.getGeometry().getCoordinates();\r\n\t\t\t\tthis.crearEtiquetaMicromedidor(micromedidor, coordenaFeature);\r\n\r\n\t\t\t\tif (!this.pintarEtiquetas)\r\n\t\t\t\t\tthis.ocultarEtiquetasMicromedidores();\r\n\t\t\t});\r\n\t\t}\r\n\r\n\t\t// esta es una prueba del demo\r\n\t\tthis._user = this.auth.getUser();\r\n\t\tif (this._user.id === \"6cac2e07-cb6d-4725-93d7-ed7ad39f5ade\") {\r\n\t\t\tvar lat = 19.213896;\r\n\t\t\tvar lng = -98.994782;\r\n\t\t\tthis.iconMicromedidoresFeature = new Feature({\r\n\t\t\t\ttype: 'micromedidor',\r\n\t\t\t\tidMicromedidor: '',\r\n\t\t\t\tdata: '',\r\n\t\t\t\tdataTooltip: `divMicromedidor`,\r\n\t\t\t\tgeometry: new Point(transform([lng, lat], 'EPSG:4326', 'EPSG:3857')) //El servicio debe contener las coordenadas\r\n\t\t\t});\r\n\r\n\t\t\tthis.iconMicromedidoresStyle = new Style({\r\n\t\t\t\timage: new Icon({\r\n\t\t\t\t\tanchor: [0.5, 0.5],\r\n\t\t\t\t\tanchorXUnits: 'fraction',\r\n\t\t\t\t\tanchorYUnits: 'fraction',\r\n\t\t\t\t\tsrc: './assets/image/Garzas.png'\r\n\t\t\t\t}),\r\n\t\t\t\tzIndex: 10\r\n\t\t\t});\r\n\r\n\t\t\tthis.iconMicromedidoresFeature.setStyle(this.iconMicromedidoresStyle);\r\n\t\t\tthis.vectorMicromedidoresSource.addFeature(this.iconMicromedidoresFeature);\r\n\t\t\tconst coordenaFeature = this.iconMicromedidoresFeature.getGeometry().getCoordinates();\r\n\t\t\tthis.crearEtiquetaMicromedidor('', coordenaFeature);\r\n\r\n\t\t\tif (!this.pintarEtiquetas)\r\n\t\t\t\tthis.ocultarEtiquetasMicromedidores();\r\n\r\n\t\t}\r\n\t}\r\n\r\n\tasync crearEtiquetaMicromedidor(micromedidor, coordenaFeature) {\r\n\t\tlet contador = micromedidor.contador\r\n\r\n\t\tlet fechaFormato = this.datepipe.transform(micromedidor.fechaHora, \"yyyy-MM-dd\");\r\n\t\tlet hora = this.datepipe.transform(micromedidor.fechaHora, \"h:mma\");\r\n\r\n\t\tlet divMicromedidor = `divMicromedidor${micromedidor.numeroSerie}`;\r\n\t\tlet overlayEtiqueta = this.map.getOverlayById(divMicromedidor);\r\n\r\n\t\tlet existeEtiqueta = overlayEtiqueta == null ? false : true;\r\n\t\tif (existeEtiqueta && this.sonProductosFiltrados == false) {\r\n\t\t\tlet totalizadorMedidor = document.createElement(\"span\");\r\n\t\t\ttotalizadorMedidor.id = `spanTotalizadorMedidor${micromedidor.id}`;\r\n\t\t\tlet totalizador = document.createTextNode('Contador: ' + contador + ' l');\r\n\t\t\ttotalizadorMedidor.appendChild(totalizador);\r\n\r\n\t\t\toverlayEtiqueta.setPosition(coordenaFeature);\r\n\t\t} else {\r\n\t\t\tlet etiquetas = document.getElementById('etiquetas');\r\n\t\t\tlet div = document.createElement(\"div\");\r\n\t\t\tlet fecha = document.createTextNode('Fecha: ' + fechaFormato);\r\n\t\t\tlet br = document.createElement(\"div\");\r\n\r\n\t\t\tbr.style.display = 'block';\r\n\t\t\tbr.style.width = '100%';\r\n\r\n\t\t\tlet divEtiqueta = document.createElement(\"div\");\r\n\t\t\tdivEtiqueta.id = `idLabel${micromedidor.numeroSerie}`;\r\n\r\n\t\t\tdivEtiqueta.style.border = '1px solid';\r\n\t\t\tdivEtiqueta.style.lineHeight = '1.6em';\r\n\t\t\tdivEtiqueta.style.marginTop = \"3px\";\r\n\t\t\tdivEtiqueta.style.marginBottom = \"3px\";\r\n\r\n\t\t\t/**Div Numero de serie */\r\n\t\t\tlet divTotalizador = document.createElement(\"div\");\r\n\t\t\tdivTotalizador.id = `divTotalizador${micromedidor.numeroSerie}`;\r\n\r\n\t\t\t/**Icono */\r\n\t\t\tlet iconEtiqueta = document.createElement(\"i\");\r\n\t\t\ticonEtiqueta.style.marginRight = '3px';\r\n\t\t\ticonEtiqueta.classList.add(\"fal\", \"fa-barcode-alt\");\r\n\t\t\ticonEtiqueta.style.color = \"#fff\";\r\n\r\n\r\n\t\t\tlet spanNumeroSerie = document.createElement(\"span\");\r\n\t\t\tspanNumeroSerie.id = `spanNumeroSerie${micromedidor.id}`;\r\n\t\t\tlet numeroSerie = document.createTextNode(micromedidor.numeroSerie);\r\n\t\t\tspanNumeroSerie.appendChild(numeroSerie);\r\n\r\n\t\t\tlet totalizadorMedidor = document.createElement(\"span\");\r\n\t\t\ttotalizadorMedidor.id = `spanTotalizadorMedidor${micromedidor.id}`;\r\n\t\t\tlet totalizador = document.createTextNode('Contador: ' + contador + ' l');\r\n\t\t\ttotalizadorMedidor.appendChild(totalizador);\r\n\r\n\t\t\tlet referencia = document.getElementById('map-content');\r\n\t\t\tdiv.appendChild(fecha);\r\n\t\t\tdivEtiqueta.appendChild(iconEtiqueta);\r\n\t\t\tdivEtiqueta.appendChild(spanNumeroSerie);\r\n\t\t\tdivTotalizador.appendChild(totalizadorMedidor)\r\n\r\n\t\t\tdivEtiqueta.style.backgroundColor = '#166BA2';\r\n\r\n\t\t\tdiv.appendChild(divEtiqueta);\r\n\t\t\tdiv.appendChild(divTotalizador);\r\n\r\n\t\t\tdiv.classList.add('ol-popupEtiquetaMicro');\r\n\r\n\t\t\tlet idClass = div.id = `divMicromedidor${micromedidor.numeroSerie}`;\r\n\t\t\tthis.etiquetasMicromedidores.push(idClass);\r\n\t\t\tetiquetas.parentNode.insertBefore(div, referencia);\r\n\r\n\t\t\tlet containerEt = document.getElementById('divMicromedidor' + micromedidor.numeroSerie);\r\n\t\t\tlet overlay = this.overlayEtiquetas = new Overlay({\r\n\t\t\t\tid: `divMicromedidor${micromedidor.numeroSerie}`,\r\n\t\t\t\tposition: undefined,\r\n\t\t\t\telement: containerEt,\r\n\t\t\t\tidOverlay: `divMicromedidor${micromedidor.numeroSerie}`,\r\n\t\t\t});\r\n\t\t\tthis.map.addOverlay(overlay);\r\n\t\t\tthis.overlayEtiquetas.setPosition(coordenaFeature);\r\n\t\t}\r\n\t\treturn;\r\n\t}\r\n\r\n\t/*este es una prueba del demo*/\r\n\tasync crearEtiquetaMicromedidorDemo(micromedidor, coordenaFeature) {\r\n\t\tlet contador = micromedidor.contador\r\n\r\n\t\tlet fechaFormato = this.datepipe.transform(micromedidor.fechaHora, \"yyyy-MM-dd\");\r\n\t\tlet hora = this.datepipe.transform(micromedidor.fechaHora, \"h:mma\");\r\n\r\n\t\tlet divMicromedidor = `divMicromedidor${micromedidor.numeroSerie}`;\r\n\t\tlet overlayEtiqueta = this.map.getOverlayById(divMicromedidor);\r\n\r\n\t\tlet existeEtiqueta = overlayEtiqueta == null ? false : true;\r\n\t\tif (existeEtiqueta && this.sonProductosFiltrados == false) {\r\n\t\t\tlet totalizadorMedidor = document.createElement(\"span\");\r\n\t\t\ttotalizadorMedidor.id = `spanTotalizadorMedidor${micromedidor.id}`;\r\n\t\t\tlet totalizador = document.createTextNode('Contador: ' + contador + ' l');\r\n\t\t\ttotalizadorMedidor.appendChild(totalizador);\r\n\r\n\t\t\toverlayEtiqueta.setPosition(coordenaFeature);\r\n\t\t} else {\r\n\t\t\tlet etiquetas = document.getElementById('etiquetas');\r\n\t\t\tlet div = document.createElement(\"div\");\r\n\t\t\tlet fecha = document.createTextNode('Fecha: 4/04/2022');\r\n\t\t\tlet br = document.createElement(\"div\");\r\n\r\n\t\t\tbr.style.display = 'block';\r\n\t\t\tbr.style.width = '100%';\r\n\r\n\t\t\tlet divEtiqueta = document.createElement(\"div\");\r\n\t\t\tdivEtiqueta.id = `idLabel${micromedidor.numeroSerie}`;\r\n\r\n\t\t\tdivEtiqueta.style.border = '1px solid';\r\n\t\t\tdivEtiqueta.style.lineHeight = '1.6em';\r\n\t\t\tdivEtiqueta.style.marginTop = \"3px\";\r\n\t\t\tdivEtiqueta.style.marginBottom = \"3px\";\r\n\r\n\t\t\t/**Div Numero de serie */\r\n\t\t\tlet divTotalizador = document.createElement(\"div\");\r\n\t\t\tdivTotalizador.id = `divTotalizador${micromedidor.numeroSerie}`;\r\n\r\n\t\t\t/**Icono */\r\n\t\t\tlet iconEtiqueta = document.createElement(\"i\");\r\n\t\t\ticonEtiqueta.style.marginRight = '3px';\r\n\t\t\ticonEtiqueta.classList.add(\"fal\", \"fa-barcode-alt\");\r\n\t\t\ticonEtiqueta.style.color = \"#fff\";\r\n\r\n\r\n\t\t\tlet spanNumeroSerie = document.createElement(\"span\");\r\n\t\t\tspanNumeroSerie.id = `spanNumeroSerie${micromedidor.id}`;\r\n\t\t\tlet numeroSerie = document.createTextNode('ub40acdc');\r\n\t\t\tspanNumeroSerie.appendChild(numeroSerie);\r\n\r\n\t\t\tlet totalizadorMedidor = document.createElement(\"span\");\r\n\t\t\ttotalizadorMedidor.id = `spanTotalizadorMedidor${micromedidor.id}`;\r\n\t\t\tlet totalizador = document.createTextNode('Estado: Activo');\r\n\t\t\ttotalizadorMedidor.appendChild(totalizador);\r\n\r\n\t\t\tlet referencia = document.getElementById('map-content');\r\n\t\t\tdiv.appendChild(fecha);\r\n\t\t\tdivEtiqueta.appendChild(iconEtiqueta);\r\n\t\t\tdivEtiqueta.appendChild(spanNumeroSerie);\r\n\t\t\tdivTotalizador.appendChild(totalizadorMedidor)\r\n\r\n\t\t\tdivEtiqueta.style.backgroundColor = '#166BA2';\r\n\r\n\t\t\tdiv.appendChild(divEtiqueta);\r\n\t\t\tdiv.appendChild(divTotalizador);\r\n\r\n\t\t\tdiv.classList.add('ol-popupEtiquetaMicro');\r\n\r\n\t\t\tlet idClass = div.id = `divMicromedidor${micromedidor.numeroSerie}`;\r\n\t\t\tthis.etiquetasMicromedidores.push(idClass);\r\n\t\t\tetiquetas.parentNode.insertBefore(div, referencia);\r\n\r\n\t\t\tlet containerEt = document.getElementById('divMicromedidor' + micromedidor.numeroSerie);\r\n\t\t\tlet overlay = this.overlayEtiquetas = new Overlay({\r\n\t\t\t\tid: `divMicromedidor${micromedidor.numeroSerie}`,\r\n\t\t\t\tposition: undefined,\r\n\t\t\t\telement: containerEt,\r\n\t\t\t\tidOverlay: `divMicromedidor${micromedidor.numeroSerie}`,\r\n\t\t\t});\r\n\t\t\tthis.map.addOverlay(overlay);\r\n\t\t\tthis.overlayEtiquetas.setPosition(coordenaFeature);\r\n\t\t}\r\n\t\treturn;\r\n\t}\r\n\t/*este es una prueba del demo*/\r\n\r\n\tpublic ocultarMicromedidores() {\r\n\t\tif (this.micromedidoresDisponibles.length > 0) {\r\n\t\t\tthis.vectorMicromedidoresLayer.setVisible(false);\r\n\t\t\tthis.ocultarEtiquetasMicromedidores();\r\n\t\t}\r\n\t}\r\n\r\n\tpublic mostrarMicromedidores() {\r\n\t\tif (this.micromedidoresDisponibles.length > 0) {\r\n\t\t\tthis.vectorMicromedidoresLayer.setVisible(true);\r\n\t\t\tthis.mostrarEtiquetasMicromedidores();\r\n\t\t}\r\n\t}\r\n\r\n\t/**Desplegar Puntos de interes en mapa*/\r\n\tpublic pintarPuntosInteres = (puntosInteres: any[]) => {\r\n\t\tthis.puntosInteresDisponibles = puntosInteres;\r\n\r\n\t\tif (this.productosVisibles) {\r\n\t\t\tthis.pintarMarcadoresPuntoInteres();\r\n\t\t} else {\r\n\t\t\tthis.pintarClusterPuntosInteres();\r\n\t\t}\r\n\t}\r\n\r\n\tpintarClusterPuntosInteres() {\r\n\t\tif (this.puntosInteresDisponibles.length > 0) {\r\n\t\t\tlet source = new VectorSource({});\r\n\t\t\tlet feature: Feature;\r\n\t\t\tlet styleCache = {};\r\n\r\n\t\t\tthis.puntosInteresDisponibles.forEach(puntoInteres => {\r\n\t\t\t\tfeature = new Feature({\r\n\t\t\t\t\ttype: 'Puntos',\r\n\t\t\t\t\tdata: puntoInteres,\r\n\t\t\t\t\tgeometry: new Point(transform([puntoInteres.coordenadas[1], puntoInteres.coordenadas[0]], 'EPSG:4326', 'EPSG:3857'))\r\n\t\t\t\t});\r\n\t\t\t\tsource.addFeature(feature);\r\n\t\t\t});\r\n\r\n\t\t\tconst CLUSTER = new Cluster({\r\n\t\t\t\tdistance: 40,\r\n\t\t\t\tminDistance: 20,\r\n\t\t\t\tsource: source\r\n\t\t\t});\r\n\r\n\t\t\tthis.vectorClusterPuntosInteresLayer = new VectorLayer({\r\n\t\t\t\tsource: CLUSTER,\r\n\t\t\t\tstyle: function (feature) {\r\n\t\t\t\t\tconst size = feature.get('features').length;\r\n\t\t\t\t\tlet style = styleCache[size];\r\n\t\t\t\t\tif (!style) {\r\n\t\t\t\t\t\tstyle = new Style({\r\n\t\t\t\t\t\t\timage: new Icon({\r\n\t\t\t\t\t\t\t\tanchor: [0.5, 0.5],\r\n\t\t\t\t\t\t\t\tanchorXUnits: 'fraction',\r\n\t\t\t\t\t\t\t\tanchorYUnits: 'fraction',\r\n\t\t\t\t\t\t\t\tsrc: './assets/image/Puntos.png'\r\n\t\t\t\t\t\t\t}),\r\n\t\t\t\t\t\t\ttext: new Text({\r\n\t\t\t\t\t\t\t\ttext: size.toString(),\r\n\t\t\t\t\t\t\t\tstroke: new Stroke({\r\n\t\t\t\t\t\t\t\t\twidth: 1,\r\n\t\t\t\t\t\t\t\t\tcolor: '#fff',\r\n\t\t\t\t\t\t\t\t}),\r\n\t\t\t\t\t\t\t\tfill: new Fill({\r\n\t\t\t\t\t\t\t\t\tcolor: '#fff',\r\n\t\t\t\t\t\t\t\t}),\r\n\t\t\t\t\t\t\t}),\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t\tstyleCache[size] = style;\r\n\t\t\t\t\t}\r\n\t\t\t\t\treturn style;\r\n\t\t\t\t},\r\n\t\t\t});\r\n\t\t\tthis.map.addLayer(this.vectorClusterPuntosInteresLayer);\r\n\t\t}\r\n\r\n\r\n\t}\r\n\r\n\tpintarMarcadoresPuntoInteres() {\r\n\t\tif (this.puntosInteresDisponibles.length > 0) {\r\n\t\t\tthis.puntosInteresDisponibles.forEach(puntoInteres => {\r\n\t\t\t\tthis.iconPInteresFeature = new Feature({\r\n\t\t\t\t\ttype: 'puntoInteres',\r\n\t\t\t\t\tdata: puntoInteres,\r\n\t\t\t\t\tgeometry: new Point(transform([puntoInteres.coordenadas[1], puntoInteres.coordenadas[0]], 'EPSG:4326', 'EPSG:3857'))\r\n\t\t\t\t});\r\n\r\n\t\t\t\tthis.iconPInteresStyle = new Style({\r\n\t\t\t\t\timage: new Icon({\r\n\t\t\t\t\t\tanchor: [0.5, 0.5],\r\n\t\t\t\t\t\tanchorXUnits: 'fraction',\r\n\t\t\t\t\t\tanchorYUnits: 'fraction',\r\n\t\t\t\t\t\tsrc: puntoInteres.icono\r\n\t\t\t\t\t}),\r\n\t\t\t\t\tzIndex: 10\r\n\t\t\t\t});\r\n\t\t\t\tthis.iconPInteresFeature.setStyle(this.iconPInteresStyle);\r\n\t\t\t\tthis.vectorPInteresSource.addFeature(this.iconPInteresFeature);\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\r\n\t/**Desplegar Telefonos en Mapa*/\r\n\tpublic pintarTelefonos = (telefonos: TelefonoUltimaTransmision[]) => {\r\n\t\tthis.telefonosDisponibles = telefonos;\r\n\r\n\t\tif (this.productosVisibles) {\r\n\t\t\tthis.pintarMarcadoresTelefonos();\r\n\t\t} else {\r\n\t\t\tthis.pintarClusterTelefonos();\r\n\t\t}\r\n\t}\r\n\r\n\tpintarClusterTelefonos() {\r\n\t\tif (this.telefonosDisponibles.length > 0) {\r\n\t\t\tlet source = new VectorSource({});\r\n\t\t\tlet feature: Feature;\r\n\t\t\tlet styleCache = {};\r\n\r\n\t\t\tthis.telefonosDisponibles.forEach(telefono => {\r\n\t\t\t\tfeature = new Feature({\r\n\t\t\t\t\ttype: 'Telefonos',\r\n\t\t\t\t\tidTelefono: telefono.id,\r\n\t\t\t\t\tdata: telefono,\r\n\t\t\t\t\tdataTooltip: `divTelefono${telefono.id}`,\r\n\t\t\t\t\tgeometry: new Point(transform([telefono.lng, telefono.lat], 'EPSG:4326', 'EPSG:3857'))\r\n\t\t\t\t})\r\n\t\t\t\tsource.addFeature(feature);\r\n\t\t\t});\r\n\r\n\t\t\tconst CLUSTER = new Cluster({\r\n\t\t\t\tdistance: 40,\r\n\t\t\t\tminDistance: 20,\r\n\t\t\t\tsource: source\r\n\t\t\t});\r\n\r\n\t\t\tthis.vectorClusterTelefonosLayer = new VectorLayer({\r\n\t\t\t\tsource: CLUSTER,\r\n\t\t\t\tstyle: function (feature) {\r\n\t\t\t\t\tconst size = feature.get('features').length;\r\n\t\t\t\t\tlet style = styleCache[size];\r\n\t\t\t\t\tif (!style) {\r\n\t\t\t\t\t\tif (size > 1) {\r\n\t\t\t\t\t\t\tstyle = new Style({\r\n\t\t\t\t\t\t\t\timage: new Icon({\r\n\t\t\t\t\t\t\t\t\tanchor: [0.5, 0.5],\r\n\t\t\t\t\t\t\t\t\tanchorXUnits: 'fraction',\r\n\t\t\t\t\t\t\t\t\tanchorYUnits: 'fraction',\r\n\t\t\t\t\t\t\t\t\tsrc: './assets/image/Celulares.png'\r\n\t\t\t\t\t\t\t\t}),\r\n\t\t\t\t\t\t\t\ttext: new Text({\r\n\t\t\t\t\t\t\t\t\ttext: size.toString(),\r\n\t\t\t\t\t\t\t\t\tstroke: new Stroke({\r\n\t\t\t\t\t\t\t\t\t\twidth: 1,\r\n\t\t\t\t\t\t\t\t\t\tcolor: '#fff',\r\n\t\t\t\t\t\t\t\t\t}),\r\n\t\t\t\t\t\t\t\t\tfill: new Fill({\r\n\t\t\t\t\t\t\t\t\t\tcolor: '#fff',\r\n\t\t\t\t\t\t\t\t\t}),\r\n\t\t\t\t\t\t\t\t}),\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\tstyleCache[size] = style;\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tstyle = new Style({\r\n\t\t\t\t\t\t\t\timage: new Icon({\r\n\t\t\t\t\t\t\t\t\tanchor: [0.5, 0.5],\r\n\t\t\t\t\t\t\t\t\tanchorXUnits: 'fraction',\r\n\t\t\t\t\t\t\t\t\tanchorYUnits: 'fraction',\r\n\t\t\t\t\t\t\t\t\tsrc: './assets/media/telefonos/telefono.png'\r\n\t\t\t\t\t\t\t\t}),\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\tstyleCache[size] = style;\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t}\r\n\t\t\t\t\treturn style;\r\n\t\t\t\t},\r\n\t\t\t});\r\n\t\t\tthis.map.addLayer(this.vectorClusterTelefonosLayer);\r\n\t\t}\r\n\t}\r\n\r\n\tpintarMarcadoresTelefonos() {\r\n\t\tif (this.telefonosDisponibles.length > 0) {\r\n\t\t\tthis.telefonosDisponibles.forEach(telefono => {\r\n\t\t\t\tlet icono: string;\r\n\t\t\t\ttry {\r\n\t\t\t\t\tlet iconoTelefono = IconosTelefonos.find(icono => icono.id === telefono.estado)\r\n\t\t\t\t\ticono = iconoTelefono.icono\r\n\t\t\t\t} catch {\r\n\t\t\t\t\ticono = './assets/media/telefonos/telefono.png'\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.iconTelefonosFeature = new Feature({\r\n\t\t\t\t\ttype: 'telefono',\r\n\t\t\t\t\tidTelefono: telefono.id,\r\n\t\t\t\t\tdata: telefono,\r\n\t\t\t\t\tdataTooltip: `divTelefono${telefono.id}`,\r\n\t\t\t\t\tgeometry: new Point(transform([telefono.lng, telefono.lat], 'EPSG:4326', 'EPSG:3857'))\r\n\t\t\t\t});\r\n\r\n\t\t\t\tthis.iconTelefonosStyle = new Style({\r\n\t\t\t\t\timage: new Icon({\r\n\t\t\t\t\t\tanchor: [0.5, 0.5],\r\n\t\t\t\t\t\tanchorXUnits: 'fraction',\r\n\t\t\t\t\t\tanchorYUnits: 'fraction',\r\n\t\t\t\t\t\tsrc: icono\r\n\t\t\t\t\t}),\r\n\t\t\t\t\tzIndex: 10\r\n\t\t\t\t});\r\n\r\n\t\t\t\tthis.iconTelefonosFeature.setStyle(this.iconTelefonosStyle);\r\n\t\t\t\tthis.vectorTelefonosSource.addFeature(this.iconTelefonosFeature);\r\n\t\t\t\tconst coordenadasFeature = this.iconTelefonosFeature.getGeometry().getCoordinates();\r\n\t\t\t\tthis.crearEtiquetaTelefono(telefono, coordenadasFeature);\r\n\r\n\t\t\t\tif (!this.pintarEtiquetas)\r\n\t\t\t\t\tthis.ocultarEtiquetasTelefonos();\r\n\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\r\n\tasync crearEtiquetaTelefono(telefono, coordenadasFeature) {\r\n\t\tlet divTelefono = `divTelefono${telefono.id}`;\r\n\t\tlet overlayEtiqueta = this.map.getOverlayById(divTelefono);\r\n\r\n\t\tlet yaExiste = overlayEtiqueta == null ? false : true;\r\n\t\tif (yaExiste && this.sonProductosFiltrados == false) {\r\n\t\t\tlet idEstatus = `spanEstado${telefono.id}`;\r\n\t\t\tlet idIcono = `iGPS${telefono.id}`;\r\n\t\t\tlet iconGPS = document.getElementById(idIcono);\r\n\t\t\tlet idLabel = `labelColor${telefono.id}`;\r\n\t\t\tlet divLabel = document.getElementById(idLabel);\r\n\r\n\t\t\tswitch (telefono.gps) {\r\n\t\t\t\tcase 'Mala':\r\n\t\t\t\t\ticonGPS.style.marginRight = '3px';\r\n\t\t\t\t\ticonGPS.classList.add(\"fad\", \"fa-signal-alt-2\");\r\n\t\t\t\t\ticonGPS.style.color = \"#fff\";\r\n\t\t\t\t\tdivLabel.style.backgroundColor = 'red';\r\n\t\t\t\t\t//spanEstadoGps.style.color = 'red';\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase 'Buena':\r\n\t\t\t\t\ticonGPS.style.marginRight = '3px';\r\n\t\t\t\t\ticonGPS.classList.add(\"fad\", \"fa-signal-alt\");\r\n\t\t\t\t\ticonGPS.style.color = \"#fff\";\r\n\t\t\t\t\t//spanEstadoGps.style.color = 'green';\r\n\t\t\t\t\tdivLabel.style.backgroundColor = 'green';\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase 'Media':\r\n\t\t\t\t\ticonGPS.style.marginRight = '3px';\r\n\t\t\t\t\ticonGPS.classList.add(\"fad\", \"fa-signal-alt-3\");\r\n\t\t\t\t\ticonGPS.style.color = \"#fff\";\r\n\t\t\t\t\t//spanEstadoGps.style.color = 'yellow';\r\n\t\t\t\t\tdivLabel.style.backgroundColor = 'orange';\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tdefault:\r\n\t\t\t\t\tbreak;\r\n\t\t\t}\r\n\r\n\t\t\toverlayEtiqueta.setPosition(coordenadasFeature);\r\n\t\t} else {\r\n\t\t\tlet etiquetas = document.getElementById('etiquetas');\r\n\t\t\tlet div = document.createElement('div');\r\n\t\t\tlet modelo = document.createTextNode(telefono.modelo);\r\n\t\t\tlet br = document.createElement('div');\r\n\r\n\t\t\tbr.style.display = 'block';\r\n\t\t\tbr.style.width = '100%';\r\n\r\n\t\t\tlet label = document.createElement('div');\r\n\t\t\tlabel.id = `labelColor${telefono.id}`;\r\n\t\t\tlabel.style.border = '1px solid';\r\n\t\t\tlabel.style.lineHeight = '1.6em';\r\n\t\t\tlabel.style.marginTop = \"3px\";\r\n\t\t\tlabel.style.marginBottom = \"3px\";\r\n\t\t\tlabel.style.textAlign = 'center';\r\n\r\n\t\t\tlet divBateria = document.createElement(\"div\");\r\n\t\t\tdivBateria.id = `divBateria${telefono.id}`;\r\n\r\n\t\t\tlet iconE = document.createElement(\"i\");\r\n\t\t\ticonE.id = `iGPS${telefono.id}`;\r\n\r\n\t\t\tlet spanBateria = document.createElement(\"span\");\r\n\t\t\tspanBateria.id = `spanBateriaTelefono${telefono.id}`;\r\n\t\t\tlet bateria = document.createTextNode('Batería: ' + telefono.bateria);\r\n\t\t\tspanBateria.appendChild(bateria);\r\n\r\n\t\t\tlet spanGPS = document.createElement(\"span\");\r\n\t\t\tspanGPS.id = `spanGPS${telefono.id}`;\r\n\t\t\tlet gps = document.createTextNode(telefono.gps);\r\n\t\t\tspanGPS.appendChild(gps);\r\n\r\n\t\t\tlet referencia = document.getElementById('map-content');\r\n\t\t\tdiv.appendChild(modelo);\r\n\t\t\tlabel.appendChild(iconE);\r\n\t\t\tlabel.appendChild(spanGPS);\r\n\t\t\tdivBateria.appendChild(spanBateria);\r\n\r\n\r\n\t\t\tlabel.style.backgroundColor = 'green';\r\n\r\n\t\t\tswitch (telefono.gps) {\r\n\t\t\t\tcase 'Mala':\r\n\t\t\t\t\ticonE.style.marginRight = '3px';\r\n\t\t\t\t\ticonE.classList.add(\"fad\", \"fa-signal-alt-2\");\r\n\t\t\t\t\ticonE.style.color = \"#fff\";\r\n\t\t\t\t\tlabel.style.backgroundColor = 'red';\r\n\t\t\t\t\t//spanEstadoGps.style.color = 'red';\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase 'Buena':\r\n\t\t\t\t\ticonE.style.marginRight = '3px';\r\n\t\t\t\t\ticonE.classList.add(\"fad\", \"fa-signal-alt\");\r\n\t\t\t\t\ticonE.style.color = \"#fff\";\r\n\t\t\t\t\t//spanEstadoGps.style.color = 'green';\r\n\t\t\t\t\tlabel.style.backgroundColor = 'green';\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase 'Media':\r\n\t\t\t\t\ticonE.style.marginRight = '3px';\r\n\t\t\t\t\ticonE.classList.add(\"fad\", \"fa-signal-alt-3\");\r\n\t\t\t\t\ticonE.style.color = \"#fff\";\r\n\t\t\t\t\t//spanEstadoGps.style.color = 'yellow';\r\n\t\t\t\t\tlabel.style.backgroundColor = 'orange';\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tdefault:\r\n\t\t\t\t\tbreak;\r\n\t\t\t}\r\n\t\t\tdiv.appendChild(label);\r\n\t\t\tdiv.appendChild(divBateria);\r\n\t\t\tdiv.classList.add('ol-popupEtiqueta');\r\n\r\n\t\t\tlet idClass = div.id = `divTelefono${telefono.id}`;\r\n\t\t\tthis.etiquetasTelefonos.push(idClass);\r\n\t\t\tetiquetas.parentNode.insertBefore(div, referencia);\r\n\r\n\t\t\tlet containerEt = document.getElementById('divTelefono' + telefono.id);\r\n\t\t\tlet overlay = this.overlayEtiquetas = new Overlay({\r\n\t\t\t\tid: `divTelefono${telefono.id}`,\r\n\t\t\t\tposition: undefined,\r\n\t\t\t\telement: containerEt,\r\n\t\t\t\tidOverlay: `divTelefono${telefono.id}`,\r\n\t\t\t});\r\n\t\t\tthis.map.addOverlay(overlay);\r\n\t\t\tthis.overlayEtiquetas.setPosition(coordenadasFeature);\r\n\t\t}\r\n\r\n\t\treturn;\r\n\t}\r\n\r\n\tpublic ocultarTelefonos() {\r\n\t\tif (this.telefonosDisponibles.length > 0) {\r\n\t\t\tthis.vectorTelefonosLayer.setVisible(false);\r\n\t\t\tthis.ocultarEtiquetasTelefonos();\r\n\t\t}\r\n\t}\r\n\r\n\tpublic mostrarTelefonos() {\r\n\t\tif (this.telefonosDisponibles.length > 0) {\r\n\t\t\tthis.vectorTelefonosLayer.setVisible(true);\r\n\t\t\tthis.mostrarEtiquetasTelefonos();\r\n\t\t}\r\n\t}\r\n\r\n\t/**Desplegar Vehiculos en Mapa */\r\n\tpublic pintarVehiculos = (vehiculos: Autos[]) => {\r\n\t\tthis.vehiculosDisponibles = vehiculos;\r\n\t\tif (this.productosVisibles) {\r\n\t\t\tthis.pintarMarcadoresVehiculos();\r\n\t\t} else {\r\n\t\t\tthis.pintarClusterVehiculos();\r\n\t\t}\r\n\r\n\t}\r\n\r\n\tpintarClusterVehiculos() {\r\n\t\tif (this.vehiculosDisponibles.length > 0) {\r\n\t\t\tlet source = new VectorSource({});\r\n\t\t\tlet feature: Feature;\r\n\t\t\tlet styleCache = {};\r\n\t\t\tthis.vehiculosDisponibles.forEach(vehiculo => {\r\n\t\t\t\tfeature = new Feature({\r\n\t\t\t\t\ttype: 'Vehiculos',\r\n\t\t\t\t\tidVehiculo: vehiculo.id,\r\n\t\t\t\t\tdata: vehiculo,\r\n\t\t\t\t\tdataTooltip: `divAuto${vehiculo.id}`,\r\n\t\t\t\t\tgeometry: new Point(fromLonLat([vehiculo.lng, vehiculo.lat]))\r\n\t\t\t\t});\r\n\t\t\t\tsource.addFeature(feature);\r\n\t\t\t});\r\n\r\n\t\t\tconst CLUSTER = new Cluster({\r\n\t\t\t\tdistance: 40,\r\n\t\t\t\tminDistance: 20,\r\n\t\t\t\tsource: source\r\n\t\t\t});\r\n\r\n\t\t\tthis.vectorClusterVehiculosLayer = new VectorLayer({\r\n\t\t\t\tsource: CLUSTER,\r\n\t\t\t\tstyle: function (feature) {\r\n\t\t\t\t\tconst size = feature.get('features').length;\r\n\t\t\t\t\tlet style = styleCache[size];\r\n\t\t\t\t\tif (!style) {\r\n\t\t\t\t\t\tif (size > 1) {\r\n\t\t\t\t\t\t\tstyle = new Style({\r\n\t\t\t\t\t\t\t\timage: new Icon({\r\n\t\t\t\t\t\t\t\t\tanchor: [0.5, 0.5],\r\n\t\t\t\t\t\t\t\t\tanchorXUnits: 'fraction',\r\n\t\t\t\t\t\t\t\t\tanchorYUnits: 'fraction',\r\n\t\t\t\t\t\t\t\t\tsrc: './assets/image/Vehiculos.png'\r\n\t\t\t\t\t\t\t\t}),\r\n\t\t\t\t\t\t\t\ttext: new Text({\r\n\t\t\t\t\t\t\t\t\ttext: size.toString(),\r\n\t\t\t\t\t\t\t\t\tstroke: new Stroke({\r\n\t\t\t\t\t\t\t\t\t\twidth: 1,\r\n\t\t\t\t\t\t\t\t\t\tcolor: '#fff',\r\n\t\t\t\t\t\t\t\t\t}),\r\n\t\t\t\t\t\t\t\t\tfill: new Fill({\r\n\r\n\t\t\t\t\t\t\t\t\t\tcolor: '#fff',\r\n\t\t\t\t\t\t\t\t\t}),\r\n\t\t\t\t\t\t\t\t}),\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\tstyleCache[size] = style;\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tstyle = new Style({\r\n\t\t\t\t\t\t\t\timage: new Icon({\r\n\t\t\t\t\t\t\t\t\tanchor: [0.5, 0.5],\r\n\t\t\t\t\t\t\t\t\tanchorXUnits: 'fraction',\r\n\t\t\t\t\t\t\t\t\tanchorYUnits: 'fraction',\r\n\t\t\t\t\t\t\t\t\tsrc: './assets/media/autos/auto_gris.png'\r\n\t\t\t\t\t\t\t\t}),\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\tstyleCache[size] = style;\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t}\r\n\t\t\t\t\treturn style;\r\n\t\t\t\t},\r\n\t\t\t});\r\n\t\t\tthis.map.addLayer(this.vectorClusterVehiculosLayer);\r\n\t\t}\r\n\t}\r\n\r\n\tpintarMarcadoresVehiculos() {\r\n\t\tthis.vectorMarcadorVehiculosSource.clear();\r\n\t\tif (this.vehiculosDisponibles.length > 0) {\r\n\t\t\tconst EstadosValidos = [2, 3, 8, 9, 10];\r\n\t\t\tthis.vehiculosDisponibles.forEach(vehiculo => {\r\n\t\t\t\tif (EstadosValidos.includes(vehiculo.estado)) {\r\n\t\t\t\t\tthis.pintarApuntadorAlertas(vehiculo);\r\n\t\t\t\t}\r\n\t\t\t\tthis.iconoVehiculoFeature = new Feature({\r\n\t\t\t\t\ttype: 'vehiculo',\r\n\t\t\t\t\tidVehiculo: vehiculo.id,\r\n\t\t\t\t\tdata: vehiculo,\r\n\t\t\t\t\tdataTooltip: `divAuto${vehiculo.id}`,\r\n\t\t\t\t\tgeometry: new Point(fromLonLat([vehiculo.lng, vehiculo.lat]))\r\n\t\t\t\t});\r\n\r\n\t\t\t\tthis.iconVehiculosStyle = new Style({\r\n\t\t\t\t\timage: new Icon({\r\n\t\t\t\t\t\tanchor: [0.5, 0.5],\r\n\t\t\t\t\t\tanchorXUnits: 'fraction',\r\n\t\t\t\t\t\tanchorYUnits: 'fraction',\r\n\t\t\t\t\t\tsrc: this.iconosPng.colorVehiculos(vehiculo),\r\n\t\t\t\t\t\trotation: this.gradesToRadians(vehiculo.direccion)\r\n\t\t\t\t\t})\r\n\t\t\t\t});\r\n\r\n\t\t\t\tthis.iconVehiculosStyle.setZIndex(999);\r\n\t\t\t\tthis.iconoVehiculoFeature.setStyle(this.iconVehiculosStyle);\r\n\t\t\t\tthis.vectorMarcadorVehiculosSource.addFeature(this.iconoVehiculoFeature);\r\n\r\n\t\t\t\tlet coordenadaFeature = this.iconoVehiculoFeature.getGeometry().getCoordinates();\r\n\t\t\t\tthis.crearEtiquetaVehiculos(vehiculo, coordenadaFeature);\r\n\r\n\t\t\t\tif (!this.pintarEtiquetas)\r\n\t\t\t\t\tthis.ocultarEtiquetasVehiculos();\r\n\t\t\t});\r\n\t\t}\r\n\r\n\t}\r\n\r\n\tpintarApuntadorAlertas(vehiculo) {\r\n\t\tlet spinner = SpinnerApuntador.find(spiner => spiner.id === vehiculo.estado);\r\n\t\tlet iconoSpiner = spinner.icono;\r\n\r\n\t\tlet coordenadas = fromLonLat([vehiculo.lng, vehiculo.lat]);\r\n\t\tlet apuntadorFeature = new Feature({\r\n\t\t\ttype: 'puntoApuntadorAlerta',\r\n\t\t\tgeometry: new Point(coordenadas)\r\n\t\t});\r\n\r\n\t\tlet iconStyleApuntador = new Style({\r\n\t\t\timage: new Icon({\r\n\t\t\t\tanchor: [0.5, 0.5],\r\n\t\t\t\tanchorXUnits: 'fraction',\r\n\t\t\t\tanchorYUnits: 'fraction',\r\n\t\t\t\tsrc: iconoSpiner\r\n\t\t\t}),\r\n\t\t\tzIndex: 10\r\n\t\t});\r\n\r\n\t\tapuntadorFeature.setStyle(iconStyleApuntador);\r\n\t\tthis.vectorApuntadorAlertaSource.addFeature(apuntadorFeature);\r\n\t}\r\n\r\n\tasync crearEtiquetaVehiculos(vehiculo, coordenadaFeature) {\r\n\t\tlet divAuto = `divAuto${vehiculo.id}`;\r\n\t\tlet overlayEtiqueta = this.map.getOverlayById(divAuto);\r\n\t\tlet estadoMovimiento = '';\r\n\r\n\t\tswitch (vehiculo.estaEnMovimiento) {\r\n\t\t\tcase false:\r\n\t\t\t\testadoMovimiento = 'Detenido';\r\n\t\t\t\tbreak;\r\n\t\t\tcase true:\r\n\t\t\t\testadoMovimiento = 'Movimiento';\r\n\t\t\t\tbreak;\r\n\t\t\tdefault:\r\n\t\t\t\tbreak;\r\n\t\t}\r\n\r\n\t\tlet existeEtiqueta = overlayEtiqueta == null ? false : true;\r\n\r\n\t\tif (existeEtiqueta && this.sonProductosFiltrados == false) {\r\n\t\t\tlet idEstado = `spanEstado${vehiculo.id}`;\r\n\t\t\tlet estadoSpan = document.getElementById(idEstado);\r\n\t\t\tlet idLabel = `labelColor${vehiculo.id}`;\r\n\t\t\tlet divLabel = document.getElementById(idLabel);\r\n\r\n\t\t\tif (estadoSpan !== null) {\r\n\t\t\t\tif (vehiculo.estaEnMovimiento == true) {\r\n\t\t\t\t\testadoSpan.innerHTML = '' + estadoMovimiento;\r\n\t\t\t\t\tdivLabel.style.backgroundColor = 'green';\r\n\t\t\t\t} else if (vehiculo.estaEnMovimiento == false) {\r\n\t\t\t\t\testadoSpan.innerHTML = '' + estadoMovimiento;\r\n\t\t\t\t\tdivLabel.style.backgroundColor = 'red';\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\tlet idVelocidad = `spanVelocidad${vehiculo.id}`;\r\n\t\t\tlet velocidadSpan = document.getElementById(idVelocidad);\r\n\t\t\tif (velocidadSpan !== null) {\r\n\t\t\t\tvelocidadSpan.innerHTML = '' + vehiculo.velocidad + ' Km/h';\r\n\t\t\t}\r\n\r\n\t\t\toverlayEtiqueta.setPosition(coordenadaFeature);\r\n\t\t} else {\r\n\t\t\tlet div = document.getElementById('etiquetas');\r\n\r\n\t\t\tlet spanEconomico = document.createElement('span');\r\n\t\t\tspanEconomico.id = `spanEconomico${vehiculo.id}`;\r\n\t\t\tlet economico = document.createTextNode(vehiculo.economico);\r\n\t\t\tspanEconomico.appendChild(economico);\r\n\r\n\t\t\tlet newDiv = document.createElement(\"div\");\r\n\t\t\tlet newContent = document.createTextNode(vehiculo.marca);\r\n\t\t\tlet divBr = document.createElement(\"div\");\r\n\t\t\tdivBr.style.display = 'block';\r\n\t\t\tdivBr.style.width = '100%';\r\n\r\n\t\t\tlet label = document.createElement(\"div\");\r\n\t\t\tlabel.id = `labelColor${vehiculo.id}`;\r\n\t\t\tlabel.style.textAlign = 'center';\r\n\t\t\tlabel.style.border = '1px solid';\r\n\t\t\tlabel.style.lineHeight = '1.6em';\r\n\t\t\tlabel.style.marginTop = \"3px\";\r\n\t\t\tlabel.style.marginBottom = \"3px\";\r\n\r\n\t\t\tlet iconE = document.createElement(\"i\");\r\n\t\t\ticonE.style.marginRight = '3px';\r\n\t\t\ticonE.classList.add(\"fal\", \"fa-map-marker-alt\");\r\n\t\t\ticonE.style.color = \"#fff\";\r\n\t\t\tlet spanEstado = document.createElement(\"span\");\r\n\t\t\tspanEstado.id = `spanEstado${vehiculo.id}`;\r\n\t\t\tlet estado = document.createTextNode(estadoMovimiento);\r\n\t\t\tspanEstado.appendChild(estado);\r\n\t\t\tlet spanVelocidad = document.createElement(\"span\");\r\n\t\t\tspanVelocidad.id = `spanVelocidad${vehiculo.id}`;\r\n\t\t\tlet vel = document.createTextNode('' + vehiculo.velocidad + ' Km/h');\r\n\t\t\tspanVelocidad.appendChild(vel);\r\n\t\t\tlet referencia = document.getElementById('map-content');\r\n\r\n\t\t\tnewDiv.appendChild(spanEconomico);\r\n\t\t\t//newDiv.appendChild(newContent);\r\n\r\n\t\t\tlabel.appendChild(iconE);\r\n\t\t\tlabel.appendChild(spanEstado);\r\n\t\t\tif (vehiculo.estaEnMovimiento == true) {\r\n\t\t\t\tlabel.style.backgroundColor = 'green';\r\n\t\t\t} else if (vehiculo.estaEnMovimiento == false) {\r\n\t\t\t\tlabel.style.backgroundColor = 'red';\r\n\t\t\t}\r\n\t\t\tnewDiv.appendChild(label);\r\n\t\t\tnewDiv.appendChild(spanVelocidad);\r\n\t\t\tnewDiv.classList.add('ol-popupEtiqueta');\r\n\t\t\tlet idClass = newDiv.id = `divAuto${vehiculo.id}`;\r\n\t\t\tthis.etiquetasVehiculos.push(idClass);\r\n\t\t\tdiv.parentNode.insertBefore(newDiv, referencia);\r\n\t\t\tlet containerEt = document.getElementById('divAuto' + vehiculo.id);\r\n\t\t\tlet overlay = this.overlayEtiquetas = new Overlay({\r\n\t\t\t\tid: `divAuto${vehiculo.id}`,\r\n\t\t\t\tposition: undefined,\r\n\t\t\t\telement: containerEt,\r\n\t\t\t\tidOverlay: `divAuto${vehiculo.id}`,\r\n\t\t\t});\r\n\t\t\tthis.map.addOverlay(overlay);\r\n\t\t\tthis.overlayEtiquetas.setPosition(coordenadaFeature);\r\n\t\t}\r\n\t\treturn;\r\n\t}\r\n\r\n\tgradesToRadians(degree) {\r\n\t\tvar pi = Math.PI;\r\n\t\treturn (degree * (pi / 180)) * -1;\r\n\t}\r\n\r\n\r\n\tpublic ocultarVehiculos = () => {\r\n\t\tif (this.vehiculosDisponibles.length > 0) {\r\n\t\t\tthis.vectorMarcadorVehiculosLayer.setVisible(false);\r\n\t\t\tthis.ocultarEtiquetasVehiculos();\r\n\t\t}\r\n\t}\r\n\r\n\tpublic mostrarVehiculos = () => {\r\n\t\tif (this.vehiculosDisponibles.length > 0) {\r\n\t\t\tthis.vectorMarcadorVehiculosLayer.setVisible(true);\r\n\t\t\tthis.vectorGeoCercaLayer.setVisible(false);\r\n\t\t\tthis.mostrarEtiquetasVehiculos();\r\n\t\t}\r\n\t}\r\n\r\n\tpublic ocultarApuntadorAlertas() {\r\n\t\tif (this.vehiculosDisponibles.length > 0) {\r\n\t\t\tthis.vectorApuntadorAlertaLayer.setVisible(false);\r\n\t\t}\r\n\t}\r\n\r\n\tpublic mostrarApuntadorAlertas() {\r\n\t\tif (this.vehiculosDisponibles.length > 0) {\r\n\t\t\tthis.vectorApuntadorAlertaLayer.setVisible(true);\r\n\t\t}\r\n\t}\r\n\r\n\r\n\t/**Desplegar Geocercas */\r\n\tpublic ubicarGeocerca = (data: any) => {\r\n\t\tvar featureGeocerca = this.getGeocercaFeature(data);\r\n\t\tvar extent = featureGeocerca.getGeometry().getExtent();\r\n\t\tthis.map.getView().fit(extent);\r\n\t\tthis.vectorGeoCercaLayer.setVisible(true);\r\n\t}\r\n\r\n\tpublic getGeocercaFeature = (data: any) => {\r\n\t\tvar features = this.vectorGeoCercaSource.getFeatures();\r\n\t\tvar idxFeature = features.findIndex(f => f.values_.idGeocerca == data.id);\r\n\t\tvar featureGeocerca = null;\r\n\t\tif (idxFeature < 0) {\r\n\t\t\tvar geojsonObject = JSON.parse(data.geoJSON);\r\n\t\t\tvar featureAux = (new GeoJSON()).readFeature(geojsonObject);\r\n\t\t\tfeatureGeocerca = new Feature({\r\n\t\t\t\ttype: 'geocerca',\r\n\t\t\t\tvisible: false,\r\n\t\t\t\tidGeocerca: data.id,\r\n\t\t\t\tdata: data,\r\n\t\t\t\tgeometry: featureAux.getGeometry(),\r\n\t\t\t});\r\n\t\t\tthis.vectorGeoCercaSource.addFeature(featureGeocerca);\r\n\t\t} else {\r\n\t\t\tfeatureGeocerca = features[idxFeature];\r\n\t\t}\r\n\t\treturn featureGeocerca;\r\n\t}\r\n\r\n\tpublic agregarGeoCerca() {\r\n\t\tthis.nuevaGeoCerca = {};\r\n\t\tthis.drawGeoCerca = new Draw({\r\n\t\t\tsource: this.vectorGeoCercaSource,\r\n\t\t\ttype: 'Polygon'\r\n\t\t});\r\n\t\tthis.map.addInteraction(this.drawGeoCerca);\r\n\t\tlet nap = this.snap = new Snap({\r\n\t\t\tsource: this.vectorGeoCercaSource\r\n\t\t});\r\n\t\tthis.map.addInteraction(nap);\r\n\t\tthis.drawGeoCerca.on('drawstart',\r\n\t\t\t() => {\r\n\t\t\t\tlet v = this.vectorMarcadorVehiculosLayer.getVisible();\r\n\t\t\t\tlet nv = this.vectorMarcadorVehiculosLayer.setVisible(false);\r\n\t\t\t}\r\n\t\t);\r\n\r\n\t\tthis.drawGeoCerca.on('drawend',\r\n\t\t\tresp => {\r\n\t\t\t\ttry {\r\n\t\t\t\t\tthis.nuevaGeoCerca.geoJSON = {};\r\n\t\t\t\t\tthis.feature = resp.feature;\r\n\t\t\t\t\tthis.geo = new GeoJSON();\r\n\t\t\t\t\tthis.featureGeoJSON = this.geo.writeFeature(this.feature);\r\n\t\t\t\t\tthis.nuevaGeoCerca = this.featureGeoJSON;\r\n\t\t\t\t\tthis.feature.getGeometry().transform('EPSG:3857', 'EPSG:4326');\r\n\t\t\t\t\tthis.geoJSON4326 = new GeoJSON();\r\n\t\t\t\t\tthis.nuevaGeoCerca4326 = this.geoJSON4326.writeFeature(this.feature);\r\n\t\t\t\t\tthis.vectorGeoCercaLayer.setVisible(true);\r\n\t\t\t\t\tthis.map.removeInteraction(this.drawGeoCerca);\r\n\t\t\t\t\t/*Guardar GeoCerca*/\r\n\t\t\t\t\tthis.guardarGeoCerca();\r\n\t\t\t\t} catch (e) {\r\n\t\t\t\t\tconsole.log(e);\r\n\t\t\t\t\tthis.nuevaGeoCerca = {};\r\n\t\t\t\t\tthis.map.removeInteraction(this.drawGeoCerca);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t);\r\n\t}\r\n\r\n\tpublic updateGeocerca = () => {\r\n\t\tlet featureGeocerca: any;\r\n\t\tvar select = new Select();\r\n\t\tvar modify = new Modify({\r\n\t\t\tfeatures: select.getFeatures()\r\n\t\t});\r\n\t\tvar snap = new Snap({\r\n\t\t\tsource: this.vectorGeoCercaSource\r\n\t\t});\r\n\t\tthis.map.addInteraction(select);\r\n\t\tthis.map.addInteraction(modify);\r\n\t\tthis.map.addInteraction(snap);\r\n\t\tselect.on('select', (evt) => {\r\n\t\t\tif (evt.selected.length == 1) {\r\n\t\t\t\tmodify.on('modifyend', (evento) => {\r\n\t\t\t\t\tfeatureGeocerca = evento.features.getArray();\r\n\t\t\t\t\tthis.geo = new GeoJSON();\r\n\t\t\t\t\tthis.nuevaGeoCerca = this.geo.writeFeature(featureGeocerca[0]);\r\n\t\t\t\t\tthis.geoJSON4326 = new GeoJSON();\r\n\t\t\t\t\tthis.feature = featureGeocerca[0];\r\n\t\t\t\t\tthis.nuevaGeoCerca4326 = this.geoJSON4326.writeFeature(this.feature, { dataProjection: 'EPSG:4326', featureProjection: 'EPSG:3857' });\r\n\t\t\t\t\tthis.dataFeature = featureGeocerca[0].values_.data;\r\n\t\t\t\t})\r\n\t\t\t}\r\n\t\t\tif (evt.selected.length == 0) {\r\n\t\t\t\tthis.guardarGeoCerca();\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\tpublic guardarGeoCerca() {\r\n\t\tthis.esGeocerca = true;\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.autoFocus = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\t\tdialogConfig.width = \"90%\";\r\n\t\tdialogConfig.closeOnNavigation = true;\r\n\t\tdialogConfig.hasBackdrop = false;\r\n\t\tdialogConfig.panelClass = 'custom-modalbox';\r\n\t\tthis.dialog.open(GuardarGeocercaComponent, dialogConfig);\r\n\t}\r\n\r\n\t/**Crear Puntos de Interes */\r\n\tpublic puntosInteres = () => {\r\n\t\tvar draw = new Draw({\r\n\t\t\tsource: this.sourcePi,\r\n\t\t\ttype: 'Point'\r\n\t\t});\r\n\t\tthis.map.addInteraction(draw);\r\n\t\tthis.map.once('click', evt => {\r\n\t\t\tlet coordenadas = transform(evt.coordinate, 'EPSG:3857', 'EPSG:4326');\r\n\t\t\tthis.coordenadaPI = [coordenadas[1], coordenadas[0]]\r\n\r\n\t\t\tthis.iconPInteresFeature = new Feature({\r\n\t\t\t\tgeometry: new Point(fromLonLat(evt.coordinate, 'EPSG:4326', 'EPSG:3857'))\r\n\t\t\t});\r\n\t\t\tthis.iconPInteresStyle = this.getIconPInteres();\r\n\t\t\tthis.iconPInteresFeature.setStyle(this.iconPInteresStyle);\r\n\t\t\tthis.vectorPInteresSource.addFeature(this.iconPInteresFeature);\r\n\r\n\t\t\t/*Guardar PuntoInteres*/\r\n\t\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\t\tdialogConfig.autoFocus = true;\r\n\t\t\tdialogConfig.disableClose = true;\r\n\t\t\tdialogConfig.width = \"30%\";\r\n\t\t\tdialogConfig.closeOnNavigation = true;\r\n\t\t\tdialogConfig.hasBackdrop = false;\r\n\t\t\tdialogConfig.panelClass = 'custom-modalbox';\r\n\t\t\tconst dialogRef = this.dialog.open(GuardarPuntoInteresComponent, dialogConfig);\r\n\t\t\tdialogRef.afterClosed().subscribe(() => {\r\n\t\t\t\t//this.vectorPInteresSource.clear();\r\n\t\t\t});\r\n\t\t\tthis.map.removeInteraction(draw);\r\n\t\t});\r\n\t}\r\n\r\n\tpublic pintarPunto(data: any) {\r\n\t\tthis.iconPInteresFeature = new Feature({\r\n\t\t\tgeometry: new Point(fromLonLat(data.coordenadas, 'EPSG:4326', 'EPSG:3857'))\r\n\t\t});\r\n\t\tthis.iconPInteresStyle = new Style({\r\n\t\t\timage: new Icon({\r\n\t\t\t\tanchor: [0.5, 0.5],\r\n\t\t\t\tanchorXUnits: 'fraction',\r\n\t\t\t\tanchorYUnits: 'fraction',\r\n\t\t\t\tsrc: data.icono\r\n\t\t\t}),\r\n\t\t\tzIndex: 10\r\n\t\t});\r\n\t\tthis.iconPInteresFeature.setStyle(this.iconPInteresStyle);\r\n\t\tthis.vectorPInteresSource.addFeature(this.iconPInteresFeature);\r\n\t}\r\n\r\n\tpublic getIconPInteres = () => {\r\n\t\tvar iconStyleInicioRecorrido = new Style({\r\n\t\t\timage: new Icon({\r\n\t\t\t\tanchor: [0.5, 0.5],\r\n\t\t\t\tanchorXUnits: 'fraction',\r\n\t\t\t\tanchorYUnits: 'fraction',\r\n\t\t\t\tsrc: 'https://s3.amazonaws.com/gtmalfa/Markers/inicio.png'\r\n\t\t\t}),\r\n\t\t\tzIndex: 10\r\n\t\t});\r\n\t\treturn iconStyleInicioRecorrido;\r\n\t}\r\n\r\n\tpublic verPunto(data: any) {\r\n\t\tthis.map.getView().setCenter(transform([data.coordenadas[1], data.coordenadas[0]], 'EPSG:4326', 'EPSG:3857'));\r\n\t\tif (this.map.getView().getZoom() < 15) {\r\n\t\t\tthis.map.getView().setZoom(60);\r\n\t\t}\r\n\t}\r\n\r\n\tpublic ocultarPuntosInteres() {\r\n\t\tthis.vectorPInteresLayer.setVisible(false);\r\n\t}\r\n\r\n\tpublic mostrarPuntosInteres() {\r\n\t\tthis.vectorPInteresLayer.setVisible(true);\r\n\t}\r\n\r\n\t/**Paso por punto */\r\n\tpublic pintarPasoPunto = (data: any) => {\r\n\t\tthis.iconoPasoPuntoFeature = new Feature({\r\n\t\t\ttype: 'pasopunto',\r\n\t\t\tgeometry: new Point(transform(data.coordenadas, 'EPSG:4326', 'EPSG:3857'))\r\n\t\t});\r\n\r\n\t\tthis.iconoPasoPuntoStyle = new Style({\r\n\t\t\timage: new Icon({\r\n\t\t\t\tanchor: [0.5, 0.5],\r\n\t\t\t\tanchorXUnits: 'fraction',\r\n\t\t\t\tanchorYUnits: 'fraction',\r\n\t\t\t\tsrc: './assets/media/marcadores/gtm-marker-2.png'\r\n\t\t\t}),\r\n\t\t\tzIndex: 10\r\n\t\t});\r\n\t\tthis.iconoPasoPuntoFeature.setStyle(this.iconoPasoPuntoStyle);\r\n\t\tthis.vectorPasoPuntoSource.addFeature(this.iconoPasoPuntoFeature);\r\n\t\tthis.verPunto(data)\r\n\t\tthis.vectorPasoPuntoLayer.setVisible(true);\r\n\t}\r\n\r\n\tabrirModalContador(alerta) {\r\n\t\tsetTimeout(() => {\r\n\t\t\tlet datos = [];\r\n\t\t\tlet titulo = '';\r\n\t\t\tlet icono = '';\r\n\t\t\tswitch (alerta) {\r\n\t\t\t\tcase 'rojo':\r\n\t\t\t\t\tdatos = this.autosDetenidosRojo;\r\n\t\t\t\t\ttitulo = 'Autos detenidos por más de 90 min';\r\n\t\t\t\t\ticono = 'fa fa-car';\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase 'verde':\r\n\t\t\t\t\tdatos = this.autosMovimiento;\r\n\t\t\t\t\ttitulo = 'Autos en movimiento';\r\n\t\t\t\t\ticono = 'fa fa-car';\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase 'naranja':\r\n\t\t\t\t\tdatos = this.autosDetenidosNaranja;\r\n\t\t\t\t\ttitulo = 'Autos detenidos por más de 60 min';\r\n\t\t\t\t\ticono = 'fa fa-car';\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase 'azul':\r\n\t\t\t\t\tdatos = this.autosExcesoAzul;\r\n\t\t\t\t\ttitulo = 'Autos en exceso de velocidad';\r\n\t\t\t\t\ticono = 'fa fa-car';\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase 'amarillo':\r\n\t\t\t\t\tdatos = this.autosDetenidosAmarillo;\r\n\t\t\t\t\ttitulo = 'Autos detenidos por más de 30 min';\r\n\t\t\t\t\ticono = 'fa fa-car';\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase 'gris':\r\n\t\t\t\t\tdatos = this.autosDetenidos;\r\n\t\t\t\t\ttitulo = 'Autos detenidos'\r\n\t\t\t\t\ticono = 'fa fa-car';\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tdefault:\r\n\t\t\t\t\tbreak;\r\n\t\t\t}\r\n\t\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\t\tdialogConfig.autoFocus = true;\r\n\t\t\tdialogConfig.disableClose = true;\r\n\t\t\tdialogConfig.width = \"55%\";\r\n\t\t\tdialogConfig.closeOnNavigation = true;\r\n\t\t\tdialogConfig.hasBackdrop = false;\r\n\t\t\tdialogConfig.panelClass = 'custom-modalbox';\r\n\t\t\tdialogConfig.position = { right: '41.3%', top: '3.5%' };\r\n\t\t\tdialogConfig.data = [{ titulo: titulo, icono: icono, datos: datos }];\r\n\t\t\tthis.dialog.open(SemaforoModalComponent, dialogConfig);\r\n\t\t}, 3003)\r\n\r\n\t}\r\n\r\n\tabrirModalHeader() {\r\n\t\tsetTimeout(() => {\r\n\t\t\tlet titulo = 'Salida de Geocerca';\r\n\t\t\tlet icono = 'fal fa-map-marker-exclamation';\r\n\t\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\t\tdialogConfig.autoFocus = true;\r\n\t\t\tdialogConfig.disableClose = true;\r\n\t\t\tdialogConfig.width = \"58%\";\r\n\t\t\tdialogConfig.panelClass = 'custom-modalbox';\r\n\t\t\tdialogConfig.closeOnNavigation = true;\r\n\t\t\tdialogConfig.hasBackdrop = false;\r\n\t\t\tdialogConfig.position = { right: '38.2%', top: '3.4%' };\r\n\t\t\tdialogConfig.data = [{ titulo: titulo, icono: icono, datos: this.datosFueraGeocerca }];\r\n\t\t\tthis.dialog.open(AlertasComponent, dialogConfig).afterClosed().subscribe(() => {\r\n\t\t\t});\r\n\t\t}, 3003)\r\n\t}\r\n\r\n\t/**Generales */\r\n\t//**Howen */\r\n\tvalidarLey(): Observable {\r\n\t\tthis.videosDisponibles.next(this.valorLey);\r\n\t\treturn this.videosDisponibles.asObservable();\r\n\t}\r\n\r\n\r\n\t/**Abrir alertas */\r\n\r\n\t/**Mapa */\r\n\t/**Muestra popup al colocar cursor sobre algun dispositivo */\r\n\tpublic mouseHover() {\r\n\t\tthis.map.on('pointermove', event => {\r\n\t\t\tlet pixel = this.map.getEventPixel(event.originalEvent);\r\n\t\t\tlet hit = this.map.hasFeatureAtPixel(pixel);\r\n\t\t\tif (hit) {\r\n\t\t\t\tdocument.body.style.cursor = 'pointer';\r\n\t\t\t\tlet feature = this.map.forEachFeatureAtPixel((event.pixel),\r\n\t\t\t\t\t(feature) => {\r\n\t\t\t\t\t\treturn feature;\r\n\t\t\t\t\t});\r\n\t\t\t\tlet coord = feature.get('data');\r\n\t\t\t\tif (feature) {\r\n\t\t\t\t\tlet tipo = feature.get('type');\r\n\t\t\t\t\tif (coord === undefined) {\r\n\t\t\t\t\t\tif (feature.get('features').length > 1) {\r\n\t\t\t\t\t\t\tlet tipo = feature.get('features')[0].values_.type;\r\n\t\t\t\t\t\t\tlet coordenadaFeature = feature.get('features')[0].getGeometry().getCoordinates();\r\n\r\n\t\t\t\t\t\t\tvar content = `\r\n\t\t\t\t\t
\r\n\t\t\t\t\t ${tipo}
\r\n\t\t\t\t\t
\r\n\r\n\t\t\t\t\t
`;\r\n\t\t\t\t\t\t\tthis.contentClusterPopupHover.innerHTML = content;\r\n\t\t\t\t\t\t\tthis.overlayClusterPopupHover.setPosition(coordenadaFeature);\r\n\t\t\t\t\t\t\tthis.map.updateSize();\r\n\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t\tif (tipo) {\r\n\t\t\t\t\t\tif (tipo == 'vehiculo') {\r\n\t\t\t\t\t\t\tlet fecha = this.datepipe.transform(coord.fechaHoraUltimaPosicion, \"yyyy-MM-dd\");\r\n\t\t\t\t\t\t\tlet hora = this.datepipe.transform(coord.fechaHoraUltimaPosicion, \"h:mma\");\r\n\r\n\t\t\t\t\t\t\tconst ignicion = IGNICIONES.find(ignicion => ignicion.id == coord.ignicion);\r\n\r\n\t\t\t\t\t\t\tconst lat = coord.lat;\r\n\t\t\t\t\t\t\tconst lng = coord.lng;\r\n\r\n\t\t\t\t\t\t\tvar content = `\r\n
\r\n Usuario: ${coord.descripcion}
\r\n
\r\n Placa: ${coord.placas}
\r\n Economico: ${coord.economico}
\r\n Marca: ${coord.marca}
\r\n Modelo: ${coord.modelo}
\r\n Ignición: ${ignicion.nombre}
\r\n Velocidad: ${coord.velocidad} Km/h
\r\n Fecha y Hora: ${fecha} ${hora}
\r\n\t\t\t\t Nivel de combustible: ${coord.combustible} L
\r\n Última Posición: [${lat.toFixed(4)}, ${lng.toFixed(4)}]
\r\n\r\n\t\t\t\t
`;\r\n\t\t\t\t\t\t\tthis.contentPopupHover.innerHTML = content;\r\n\t\t\t\t\t\t\tthis.overlayPopupHover.setPosition(fromLonLat([coord.lng, coord.lat]));\r\n\t\t\t\t\t\t\tthis.map.updateSize();\r\n\t\t\t\t\t\t} else if (tipo == 'puntoInteres') {\r\n\t\t\t\t\t\t\tvar content = `\r\n
\r\n Nombre: ${coord.nombre}
\r\n
\r\n Descripción: ${coord.descripcion}
\r\n Posición: [${parseFloat(coord.coordenadas[0].toFixed(4))}, ${parseFloat(coord.coordenadas[1].toFixed(4))}]
\r\n
`;\r\n\t\t\t\t\t\t\tthis.contentPopupHover.innerHTML = content;\r\n\t\t\t\t\t\t\tlet coordenadas = [coord.coordenadas[1], coord.coordenadas[0]]\r\n\t\t\t\t\t\t\tthis.overlayPopupHover.setPosition(transform(coordenadas, 'EPSG:4326', 'EPSG:3857'));\r\n\t\t\t\t\t\t\tthis.map.updateSize();\r\n\t\t\t\t\t\t} else if (tipo == 'pointRecorrido') {\r\n\r\n\t\t\t\t\t\t\tif (coord.tipo) {\r\n\t\t\t\t\t\t\t\tvar content = `\r\n
\r\n IMEI: ${coord.imei}
\r\n
\r\n Descripción: ${coord.descripcion}
\r\n Económico: ${coord.economico}
\r\n Número serie: ${coord.numeroSerie}
\r\n Estatus: ${coord.estatus}
\r\n\t\t\t\t GPS: ${coord.gps}
\r\n Modelo: ${coord.modelo}
\r\n Fecha y Hora: ${coord.fechaHora}
\r\n Última Posición: [${coord.lat.toFixed(4)}, ${coord.lng.toFixed(4)}]
\r\n Cliente: ${coord.cliente}
\r\n
`;\r\n\r\n\t\t\t\t\t\t\t\tthis.contentPopupHover.innerHTML = content;\r\n\t\t\t\t\t\t\t\tthis.overlayPopupHover.setPosition(fromLonLat([coord.lng, coord.lat]));\r\n\t\t\t\t\t\t\t\tthis.map.updateSize();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tvar ubicacion = `[${coord.lat.toFixed(4)},${coord.lng.toFixed(4)}]`;\r\n\t\t\t\t\t\t\t\tvar content = `\r\n
\r\n

Usuario: ${coord.descripcion}
\r\n

\r\n Placa: ${coord.placas}
\r\n Economico: ${coord.economico}
\r\n Marca: ${coord.marca}
\r\n Modelo: ${coord.modelo}
\r\n Ignición: ${coord.ignicion}
\r\n Velocidad: ${coord.velocidad} Km/h
\r\n Fecha y Hora: ${coord.fecha}
\r\n Ubicación: ${ubicacion}
\r\n

\r\n
`;\r\n\t\t\t\t\t\t\t\tthis.contentPopupHover.innerHTML = content;\r\n\t\t\t\t\t\t\t\tthis.overlayPopupHover.setPosition(fromLonLat([coord.lng, coord.lat]));\r\n\t\t\t\t\t\t\t\tthis.map.updateSize();\r\n\r\n\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t} else if (tipo == 'medidor') {\r\n\r\n\t\t\t\t\t\t\tthis.medidoresService.obtenerMedidor(coord.imei).subscribe(\r\n\t\t\t\t\t\t\t\t(response) => {\r\n\t\t\t\t\t\t\t\t\tlet fecha = this.datepipe.transform(coord.fechaAlta, \"yyyy-MM-dd\");\r\n\t\t\t\t\t\t\t\t\tlet hora = this.datepipe.transform(coord.fechaAlta, \"h:mma\");\r\n\r\n\t\t\t\t\t\t\t\t\tlet estatus;\r\n\t\t\t\t\t\t\t\t\tif (coord.estatus == 1) {\r\n\t\t\t\t\t\t\t\t\t\testatus = 'Activo'\r\n\t\t\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\t\t\testatus = 'Inactivo'\r\n\t\t\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\t\t\tconst totalizador = response.totalizador\r\n\r\n\t\t\t\t\t\t\t\t\tconst gasto = response.gasto;\r\n\t\t\t\t\t\t\t\t\tconst lat = coord.lat;\r\n\t\t\t\t\t\t\t\t\tconst lng = coord.lng;\r\n\r\n\t\t\t\t\t\t\t\t\tvar content = `\r\n
\r\n IMEI: ${response.imei}
\r\n
\r\n Descripcion: ${response.descripcion}
\r\n Gasto: ${gasto.toFixed(4)} m3/h
\r\n Totalizaor: ${totalizador.toFixed(4)} m3
\r\n Estatus: ${estatus}
\r\n Modelo: ${coord.modelo}
\r\n Fecha y Hora: ${fecha} ${hora}
\r\n\t\t\t\t Última Posición: [${lat.toFixed(4)}, ${lng.toFixed(4)}]
\r\n Cliente: ${coord.cliente}
\r\n\r\n\r\n
`;\r\n\r\n\t\t\t\t\t\t\t\t\tthis.contentPopupHover.innerHTML = content;\r\n\t\t\t\t\t\t\t\t\tthis.overlayPopupHover.setPosition(fromLonLat([coord.lng, coord.lat]));\r\n\t\t\t\t\t\t\t\t\tthis.map.updateSize();\r\n\r\n\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t)\r\n\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\t// \t\t\telse if (tipo == 'micromedidor') {\r\n\t\t\t\t\t\t// \t\t\t\tlet fechaHora = this.datepipe.transform(coord.fechaHora, \"yyyy-MM-dd h:mm a\");\r\n\t\t\t\t\t\t// \t\t\t\tconst lat = coord.lat;\r\n\t\t\t\t\t\t// \t\t\t\tconst lng = coord.lng;\r\n\r\n\t\t\t\t\t\t// \t\t\t\tvar content = `\r\n\t\t\t\t\t\t//
\r\n\t\t\t\t\t\t// Número de serie: ${coord.numeroSerie}
\r\n\t\t\t\t\t\t//
\r\n\t\t\t\t\t\t// Observación: ${coord.observacion}
\r\n\t\t\t\t\t\t// Contador: ${coord.contador} litros
\r\n\t\t\t\t\t\t// Pulso: ${coord.valorPulso}
\r\n\t\t\t\t\t\t// Fecha y Hora: ${fechaHora}
\r\n\t\t\t\t\t\t// Última Posición: [${lat.toFixed(4)}, ${lng.toFixed(4)}]
\r\n\r\n\t\t\t\t\t\t//
`;\r\n\r\n\t\t\t\t\t\t// \t\t\t\tthis.contentPopupHover.innerHTML = content;\r\n\t\t\t\t\t\t// \t\t\t\tthis.overlayPopupHover.setPosition(fromLonLat([coord.lng, coord.lat]));\r\n\t\t\t\t\t\t// \t\t\t\tthis.map.updateSize();\r\n\r\n\t\t\t\t\t\t// \t\t\t} \r\n\r\n\t\t\t\t\t\t/*este es la prueba del demo*/\r\n\t\t\t\t\t\telse if (tipo == 'micromedidor') {\r\n\t\t\t\t\t\t\tif (this._user.id === \"6cac2e07-cb6d-4725-93d7-ed7ad39f5ade\") {\r\n\t\t\t\t\t\t\t\tlet fechaHora = this.datepipe.transform(coord.fechaHora, \"yyyy-MM-dd h:mm a\");\r\n\t\t\t\t\t\t\t\tconst lat = 19.213896;\r\n\t\t\t\t\t\t\t\tconst lng = -98.994782\r\n\r\n\t\t\t\t\t\t\t\tvar content = `\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t Número de serie: BEPYNSN
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t Descripción: Este es un demo
\r\n\t\t\t\t\t\t\t Modelo: Garza
\r\n\t\t\t\t\t\t\tFecha y Hora: 4/04/2022 4:44
\r\n\t\t\t\t\t\t\tÚltima Posición: [${lat.toFixed(4)}, ${lng.toFixed(4)}]
\r\n\t\t\t \r\n\t\t\t\t\t\t\t
`;\r\n\r\n\t\t\t\t\t\t\t\tthis.contentPopupHover.innerHTML = content;\r\n\t\t\t\t\t\t\t\tthis.overlayPopupHover.setPosition(fromLonLat([lng, lat]));\r\n\t\t\t\t\t\t\t\tthis.map.updateSize();\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\telse if (tipo == 'micromedidor') {\r\n\t\t\t\t\t\t\t\tlet fechaHora = this.datepipe.transform(coord.fechaHora, \"yyyy-MM-dd h:mm a\");\r\n\t\t\t\t\t\t\t\tconst lat = coord.lat;\r\n\t\t\t\t\t\t\t\tconst lng = coord.lng;\r\n\r\n\t\t\t\t\t\t\t\tvar content = `\r\n
\r\n Número de serie: ${coord.numeroSerie}
\r\n
\r\n\t\t\t Observación: ${coord.observacion}
\r\n\t\t\t Contador: ${coord.contador} litros
\r\n Pulso: ${coord.valorPulso}
\r\n Fecha y Hora: ${fechaHora}
\r\n Última Posición: [${lat.toFixed(4)}, ${lng.toFixed(4)}]
\r\n\r\n
`;\r\n\r\n\t\t\t\t\t\t\t\tthis.contentPopupHover.innerHTML = content;\r\n\t\t\t\t\t\t\t\tthis.overlayPopupHover.setPosition(fromLonLat([coord.lng, coord.lat]));\r\n\t\t\t\t\t\t\t\tthis.map.updateSize();\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\t/*este es la prueba del demo*/\r\n\t\t\t\t\t\telse if (tipo == 'activo') {\r\n\t\t\t\t\t\t\tlet fechaHora = this.datepipe.transform(coord.fechaHora, 'yyyy-MM-dd h:mma');\r\n\t\t\t\t\t\t\tconst lat = coord.lat;\r\n\t\t\t\t\t\t\tconst lng = coord.lng;\r\n\r\n\t\t\t\t\t\t\tvar content = `\r\n
\r\n IMEI: ${coord.imei}
\r\n
\r\n Descripción: ${coord.descripcion}
\r\n Económico: ${coord.economico}
\r\n Número serie: ${coord.numeroSerie}
\r\n Estatus: ${coord.estatus}
\r\n\t\t\t GPS: ${coord.gps}
\r\n Modelo: ${coord.modelo}
\r\n Fecha y Hora: ${fechaHora}
\r\n Última Posición: [${lat.toFixed(4)}, ${lng.toFixed(4)}]
\r\n Cliente: ${coord.cliente}
\r\n
`;\r\n\r\n\t\t\t\t\t\t\tthis.contentPopupHover.innerHTML = content;\r\n\t\t\t\t\t\t\tthis.overlayPopupHover.setPosition(fromLonLat([coord.lng, coord.lat]));\r\n\t\t\t\t\t\t\tthis.map.updateSize();\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\telse if (tipo == 'Portatiles') {\r\n\t\t\t\t\t\t\tlet fechaHora = this.datepipe.transform(coord.fechaHora, 'yyyy-MM-dd h:mma');\r\n\t\t\t\t\t\t\tconst lat = coord.lat;\r\n\t\t\t\t\t\t\tconst lng = coord.lng;\r\n\r\n\t\t\t\t\t\t\tvar content = `\r\n\t\t\t\t
\r\n\t\t\t\t IMEI: ${coord.imei}
\r\n\t\t\t\t
\r\n\t\t\t\t Descripción: ${coord.descripcion}
\r\n\t\t\t\t Económico: ${coord.economico}
\r\n\t\t\t\t Número serie: ${coord.numeroSerie}
\r\n\t\t\t\t Estatus: ${coord.estatus}
\r\n\t\t\t\t GPS: ${coord.gps}
\r\n\t\t\t\t Modelo: ${coord.modelo}
\r\n\t\t\t\t Fecha y Hora: ${fechaHora}
\r\n\t\t\t\t Última Posición: [${lat.toFixed(4)}, ${lng.toFixed(4)}]
\r\n\t\t\t\t Cliente: ${coord.cliente}
\r\n\t\t\t\t
`;\r\n\r\n\t\t\t\t\t\t\tthis.contentPopupHover.innerHTML = content;\r\n\t\t\t\t\t\t\tthis.overlayPopupHover.setPosition(fromLonLat([coord.lng, coord.lat]));\r\n\t\t\t\t\t\t\tthis.map.updateSize();\r\n\r\n\t\t\t\t\t\t} else if (tipo == 'telefono') {\r\n\t\t\t\t\t\t\tlet fechaHora = this.datepipe.transform(coord.fechaHora, 'yyyy-MM-dd h:mma');\r\n\t\t\t\t\t\t\tconst lat = coord.lat;\r\n\t\t\t\t\t\t\tconst lng = coord.lng;\r\n\r\n\t\t\t\t\t\t\tvar content = `\r\n
\r\n IMEI: ${coord.imei}
\r\n
\r\n Descripción: ${coord.descripcion}
\r\n Económico: ${coord.economico}
\r\n Número serie: ${coord.numeroSerie}
\r\n Estatus: ${coord.estatus}
\r\n Modelo: ${coord.modelo}
\r\n Fecha y Hora: ${fechaHora}
\r\n Última Posición: [${lat.toFixed(4)}, ${lng.toFixed(4)}]
\r\n Cliente: ${coord.cliente}
\r\n
`;\r\n\r\n\t\t\t\t\t\t\tthis.contentPopupHover.innerHTML = content;\r\n\t\t\t\t\t\t\tthis.overlayPopupHover.setPosition(fromLonLat([coord.lng, coord.lat]));\r\n\t\t\t\t\t\t\tthis.map.updateSize();\r\n\t\t\t\t\t\t} else if (tipo == 'lectora') {\r\n\t\t\t\t\t\t\tconst lat = coord.lat;\r\n\t\t\t\t\t\t\tconst lng = coord.lng;\r\n\r\n\t\t\t\t\t\t\tvar content = `\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t Lector: ${coord.descripcion}
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t Tag: ${coord.odometro}
\r\n\t\t\t\t\t\t\t Económico: ${coord.economico}
\r\n\t\t\t\t\t\t\tModelo: ${coord.modelo}
\r\n\t\t\t\t\t\t\tAlimentación: ${coord.alimentacion}
\r\n\t\t\t\t\t\t\tFecha y Hora: ${coord.fechaHora}
\r\n\t\t\t\t\t\t\tÚltima Posición: [${lat.toFixed(4)}, ${lng.toFixed(4)}]
\r\n\t\t\t\t\t\t\t
`;\r\n\r\n\t\t\t\t\t\t\tthis.contentPopupHover.innerHTML = content;\r\n\t\t\t\t\t\t\tthis.overlayPopupHover.setPosition(fromLonLat([coord.lng, coord.lat]));\r\n\t\t\t\t\t\t\tthis.map.updateSize();\r\n\t\t\t\t\t\t}else if(tipo == 'panel'){\r\n\t\t\t\t\t\t\tconst lat = coord.lat;\r\n\t\t\t\t\t\t\tconst lng = coord.lng;\r\n\r\n\t\t\t\t\t\t\tvar content = `\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t Panel: ${coord.nombre}
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t Número serie: ${coord.numeroSerie}
\r\n\t\t\t\t\t\t\tModelo: ${coord.modelo}
\r\n\t\t\t\t\t\t\tÚltima Posición: [${lat.toFixed(4)}, ${lng.toFixed(4)}]
\r\n\t\t\t\t\t\t\t
`;\r\n\r\n\t\t\t\t\t\t\tthis.contentPopupHover.innerHTML = content;\r\n\t\t\t\t\t\t\tthis.overlayPopupHover.setPosition(fromLonLat([coord.lng, coord.lat]));\r\n\t\t\t\t\t\t\tthis.map.updateSize();\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t} else {\r\n\t\t\t\tthis.overlayPopupHover.setPosition(undefined);\r\n\t\t\t\tthis.overlayClusterPopupHover.setPosition(undefined);\r\n\t\t\t\tdocument.body.style.cursor = 'default';\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\t/**Abre un modal con la iformacion del dispositivo a dar click sobre el */\r\n\tpublic mouseClicked() {\r\n\t\t/*Para obtener la informacion de cualquiero producto\r\n\t\t\tapi/vehiculos/informacion/id\r\n\t\t*/\r\n\t\tthis.map.on('click', event => {\r\n\t\t\tlet feature = this.map.forEachFeatureAtPixel((event.pixel),\r\n\t\t\t\t(feature) => {\r\n\t\t\t\t\treturn feature;\r\n\t\t\t\t});\r\n\t\t\tif (feature) {\r\n\t\t\t\tlet tipo = feature.get('type');\r\n\t\t\t\tif (tipo) {\r\n\t\t\t\t\tif (tipo == 'vehiculo') {\r\n\t\t\t\t\t\tlet coord = feature.get('data');\r\n\t\t\t\t\t\tthis.verVehiculo(coord);\r\n\t\t\t\t\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\t\t\t\t\tdialogConfig.autoFocus = true;\r\n\t\t\t\t\t\tdialogConfig.disableClose = true;\r\n\t\t\t\t\t\tdialogConfig.hasBackdrop = false;\r\n\t\t\t\t\t\tdialogConfig.width = \"40%\";\r\n\t\t\t\t\t\tdialogConfig.panelClass = 'custom-modalbox';\r\n\t\t\t\t\t\tdialogConfig.data = coord\r\n\t\t\t\t\t\tdialogConfig.position = { right: '56%', top: '3.5%' };\r\n\t\t\t\t\t\tthis.dialog.open(InformacionVehiculoComponent, dialogConfig);\r\n\t\t\t\t\t} else if (tipo == 'puntoInteres') {\r\n\t\t\t\t\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\t\t\t\t\tdialogConfig.autoFocus = true;\r\n\t\t\t\t\t\tdialogConfig.disableClose = true;\r\n\t\t\t\t\t\tdialogConfig.width = \"58%\";\r\n\t\t\t\t\t\tdialogConfig.panelClass = 'custom-modalbox';\r\n\t\t\t\t\t\tdialogConfig.closeOnNavigation = true;\r\n\t\t\t\t\t\tdialogConfig.hasBackdrop = false;\r\n\t\t\t\t\t\tdialogConfig.position = { right: '56%', top: '3.5%' };\r\n\t\t\t\t\t\t//this.dialog.open(PasoPuntoComponent, dialogConfig);\r\n\t\t\t\t\t} else if (tipo == 'pointRecorrido') {\r\n\t\t\t\t\t\tthis.dialog.closeAll();\r\n\t\t\t\t\t\tlet idPunto = feature.get('idPosition');\r\n\t\t\t\t\t\tlet idxRecorrido = this.posicionesReporte.findIndex(x => x.id == idPunto);\r\n\t\t\t\t\t\tthis.indexActualRecorrido = idxRecorrido;\r\n\t\t\t\t\t\tthis.setPosicionApuntador();\r\n\t\t\t\t\t\t//this.setPositionOverlayPopupRecorrido();\r\n\t\t\t\t\t\tthis.setIconPosicionActual(idxRecorrido);\r\n\t\t\t\t\t\tthis.centerRecorridoMap();\r\n\t\t\t\t\t\tthis.permanentOverlayPopup();\r\n\t\t\t\t\t\tthis.abrirPopupRecorrido();\r\n\t\t\t\t\t} else if (tipo == 'medidor') {\r\n\t\t\t\t\t\tconst data = feature.get('data');\r\n\t\t\t\t\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\t\t\t\t\tdialogConfig.autoFocus = true;\r\n\t\t\t\t\t\tdialogConfig.disableClose = true;\r\n\t\t\t\t\t\tdialogConfig.hasBackdrop = false;\r\n\t\t\t\t\t\tdialogConfig.width = \"40%\";\r\n\t\t\t\t\t\tdialogConfig.panelClass = 'custom-modalbox';\r\n\t\t\t\t\t\tdialogConfig.data = data\r\n\t\t\t\t\t\tdialogConfig.position = { right: '56%', top: '3.5%' };\r\n\t\t\t\t\t\tthis.dialog.open(InformacionMedidorComponent, dialogConfig);\r\n\t\t\t\t\t} else if (tipo == 'micromedidor') {\r\n\t\t\t\t\t\tconst data = feature.get('data');\r\n\t\t\t\t\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\t\t\t\t\tdialogConfig.autoFocus = true;\r\n\t\t\t\t\t\tdialogConfig.disableClose = true;\r\n\t\t\t\t\t\tdialogConfig.hasBackdrop = false;\r\n\t\t\t\t\t\tdialogConfig.width = \"40%\";\r\n\t\t\t\t\t\tdialogConfig.panelClass = 'custom-modalbox';\r\n\t\t\t\t\t\tdialogConfig.data = data;\r\n\t\t\t\t\t\tdialogConfig.position = { right: '56%', top: '3.5%' };\r\n\t\t\t\t\t\tthis.dialog.open(InformacionMicromedidorComponent, dialogConfig)\r\n\t\t\t\t\t} else if (tipo == 'activo') {\r\n\t\t\t\t\t\tconst data = feature.get('data');\r\n\t\t\t\t\t\tthis.verActivo(data);\r\n\t\t\t\t\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\t\t\t\t\tdialogConfig.autoFocus = true;\r\n\t\t\t\t\t\tdialogConfig.disableClose = true;\r\n\t\t\t\t\t\tdialogConfig.hasBackdrop = false;\r\n\t\t\t\t\t\tdialogConfig.width = '40%';\r\n\t\t\t\t\t\tdialogConfig.data = data;\r\n\t\t\t\t\t\tdialogConfig.position = { right: '56%', top: '3.5%' };\r\n\t\t\t\t\t\tdialogConfig.panelClass = 'custom-modalbox';\r\n\t\t\t\t\t\tthis.dialog.open(InformacionActivoComponent, dialogConfig)\r\n\t\t\t\t\t} else if (tipo == 'telefono') {\r\n\t\t\t\t\t\tconst data = feature.get('data');\r\n\t\t\t\t\t\tthis.verTelefono(data)\r\n\t\t\t\t\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\t\t\t\t\tdialogConfig.autoFocus = true;\r\n\t\t\t\t\t\tdialogConfig.disableClose = true;\r\n\t\t\t\t\t\tdialogConfig.hasBackdrop = false;\r\n\t\t\t\t\t\tdialogConfig.width = '40%';\r\n\t\t\t\t\t\tdialogConfig.panelClass = 'custom-modalbox';\r\n\t\t\t\t\t\tdialogConfig.data = data;\r\n\t\t\t\t\t\tdialogConfig.position = { right: '56%', top: '3.5%' };\r\n\t\t\t\t\t\tthis.dialog.open(InformacionTelefonoComponent, dialogConfig)\r\n\t\t\t\t\t} else if (tipo == 'Portatiles') {\r\n\t\t\t\t\t\tconst data = feature.get('data');\r\n\t\t\t\t\t\tthis.verPortatil(data);\r\n\t\t\t\t\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\t\t\t\t\tdialogConfig.autoFocus = true;\r\n\t\t\t\t\t\tdialogConfig.disableClose = true;\r\n\t\t\t\t\t\tdialogConfig.hasBackdrop = false;\r\n\t\t\t\t\t\tdialogConfig.width = '40%';\r\n\t\t\t\t\t\tdialogConfig.data = data;\r\n\t\t\t\t\t\tdialogConfig.position = { right: '56%', top: '3.5%' };\r\n\t\t\t\t\t\tdialogConfig.panelClass = 'custom-modalbox';\r\n\t\t\t\t\t\tthis.dialog.open(InformacionPortatilComponent, dialogConfig)\r\n\t\t\t\t\t} else if (tipo == 'panel') {\r\n\t\t\t\t\t\tconst data = feature.get('data');\r\n\t\t\t\t\t\tthis.verPortatil(data);\r\n\t\t\t\t\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\t\t\t\t\tdialogConfig.autoFocus = true;\r\n\t\t\t\t\t\tdialogConfig.disableClose = true;\r\n\t\t\t\t\t\tdialogConfig.hasBackdrop = false;\r\n\t\t\t\t\t\tdialogConfig.width = '40%';\r\n\t\t\t\t\t\tdialogConfig.data = data;\r\n\t\t\t\t\t\tdialogConfig.position = { right: '56%', top: '3.5%' };\r\n\t\t\t\t\t\tdialogConfig.panelClass = 'custom-modalbox';\r\n\t\t\t\t\t\tthis.dialog.open(InformacionPanelComponent, dialogConfig)\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t} else {\r\n\t\t\t\tif (this.historicoMode == false) {\r\n\t\t\t\t\tif (!this.esGeocerca) {\r\n\t\t\t\t\t\tthis.dialog.closeAll();\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t})\r\n\t}\r\n\r\n\tabrirModalmedidores() {\r\n\t\tsetTimeout(() => {\r\n\t\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\t\tdialogConfig.autoFocus = true;\r\n\t\t\tdialogConfig.disableClose = true;\r\n\t\t\tdialogConfig.width = \"55%\";\r\n\t\t\tdialogConfig.closeOnNavigation = true;\r\n\t\t\tdialogConfig.hasBackdrop = false;\r\n\t\t\tdialogConfig.panelClass = 'custom-modalbox';\r\n\t\t\tdialogConfig.position = { right: '41.3%', top: '3.5%' };\r\n\t\t\tthis.dialog.open(MedidorModalComponent, dialogConfig);\r\n\t\t}, 3003);\r\n\r\n\t}\r\n\r\n\tabrirModalmicromedidores() {\r\n\t\tsetTimeout(() => {\r\n\t\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\t\tdialogConfig.autoFocus = true;\r\n\t\t\tdialogConfig.disableClose = true;\r\n\t\t\tdialogConfig.width = \"55%\";\r\n\t\t\tdialogConfig.closeOnNavigation = true;\r\n\t\t\tdialogConfig.hasBackdrop = false;\r\n\t\t\tdialogConfig.panelClass = 'custom-modalbox';\r\n\t\t\tdialogConfig.position = { right: '41.3%', top: '3.5%' };\r\n\t\t\tthis.dialog.open(MicromedidorModalComponent, dialogConfig);\r\n\t\t}, 3003);\r\n\t}\r\n\r\n\tabrirModalactivos() {\r\n\t\tsetTimeout(() => {\r\n\t\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\t\tdialogConfig.autoFocus = true;\r\n\t\t\tdialogConfig.disableClose = true;\r\n\t\t\tdialogConfig.width = \"55%\";\r\n\t\t\tdialogConfig.closeOnNavigation = true;\r\n\t\t\tdialogConfig.hasBackdrop = false;\r\n\t\t\tdialogConfig.panelClass = 'custom-modalbox';\r\n\t\t\tdialogConfig.position = { right: '41.3%', top: '3.5%' };\r\n\t\t\tthis.dialog.open(ActivoModalComponent, dialogConfig);\r\n\t\t}, 3003);\r\n\t}\r\n\r\n\tabrirModalPortatiles() {\r\n\t\tsetTimeout(() => {\r\n\t\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\t\tdialogConfig.autoFocus = true;\r\n\t\t\tdialogConfig.disableClose = true;\r\n\t\t\tdialogConfig.width = \"55%\";\r\n\t\t\tdialogConfig.closeOnNavigation = true;\r\n\t\t\tdialogConfig.hasBackdrop = false;\r\n\t\t\tdialogConfig.panelClass = 'custom-modalbox';\r\n\t\t\tdialogConfig.position = { right: '41.3%', top: '3.5%' };\r\n\t\t\tthis.dialog.open(PortatilModalComponent, dialogConfig);\r\n\t\t}, 3003);\r\n\t}\r\n\r\n\r\n\tabrirModaltelefonos() {\r\n\t\tsetTimeout(() => {\r\n\t\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\t\tdialogConfig.autoFocus = true;\r\n\t\t\tdialogConfig.disableClose = true;\r\n\t\t\tdialogConfig.width = \"55%\";\r\n\t\t\tdialogConfig.closeOnNavigation = true;\r\n\t\t\tdialogConfig.hasBackdrop = false;\r\n\t\t\tdialogConfig.panelClass = 'custom-modalbox';\r\n\t\t\tdialogConfig.position = { right: '41.3%', top: '3.5%' };\r\n\t\t\tthis.dialog.open(TelefonoModalComponent, dialogConfig);\r\n\t\t}, 3003);\r\n\t}\r\n\r\n\t/**Detecta la interaccion del zoom en el mapa */\r\n\tpublic onZoom() {\r\n\t\tthis.map.on('moveend', event => {\r\n\t\t\t//console.log(this.sonProductosFiltrados);\r\n\t\t\tif (this.clusterActivo) {\r\n\t\t\t\tif (this.map.getView().getZoom() > 12 && !this.productosVisibles) {\r\n\t\t\t\t\t/**Mostrar dispositivos y ocultar cluster */\r\n\t\t\t\t\tthis.ocultarClusters();\r\n\t\t\t\t\tthis.mostrarProductos();\r\n\t\t\t\t\tthis.productosVisibles = true;\r\n\t\t\t\t} else if (this.map.getView().getZoom() < 13 && this.productosVisibles) {\r\n\t\t\t\t\t/**Muestra cluster y oculta dispositivo */\r\n\t\t\t\t\tthis.ocultarProductos();\r\n\t\t\t\t\tthis.mostrarClusters();\r\n\t\t\t\t\tthis.productosVisibles = false;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\t/**Acerca el zoom */\r\n\tpublic zoomCerca = () => {\r\n\t\tthis.map.getView().setZoom(this.map.getView().getZoom() + 1);\r\n\t}\r\n\r\n\t/**Aleja el zoom */\r\n\tpublic zoomLejos = () => {\r\n\t\tthis.map.getView().setZoom(this.map.getView().getZoom() - 1);\r\n\t}\r\n\r\n\t/**Centra el zoom del mapa */\r\n\tpublic ajustarMapa() {\r\n\t\tthis.map.getView().setCenter(fromLonLat([this.center[0], this.center[1]]));\r\n\t\tthis.map.updateSize();\r\n\t\tif (this.map.getView().getZoom() < 6.25) {\r\n\t\t\tthis.map.getView().setZoom(5);\r\n\t\t\tthis.map.updateSize();\r\n\t\t}\r\n\t}\r\n\r\n\t/**Restaura el zoom del mapa */\r\n\tpublic regresarMapa() {\r\n\t\tthis.vectorDispositivoUbicadoSource.clear();\r\n\t\tthis.vectorDispositivoUbicadoLayer.setVisible(false);\r\n\t\tthis.map.getView().setCenter(fromLonLat([this.center[0], this.center[1]]));\r\n\t\tif (this.map.getView().getZoom() > 6.25) {\r\n\t\t\tthis.map.getView().setZoom(5.75);\r\n\t\t\tthis.map.updateSize();\r\n\r\n\t\t\tif (this.productosVisibles) {\r\n\t\t\t\tthis.ocultarProductos();\r\n\t\t\t\tthis.mostrarClusters();\r\n\t\t\t\tthis.productosVisibles = false;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\t/**Recarga el mapa */\r\n\tpublic recargarMapa(lng, lat, zoom) {\r\n\t\tthis.map.getView().setCenter(fromLonLat([lng, lat]));\r\n\t\tthis.map.getView().setZoom(zoom)\r\n\t}\r\n\r\n\t/**Cierra los popups */\r\n\tpublic undefinedPopup() {\r\n\t\tthis.overlayPopup.setPosition(undefined);\r\n\t\t//this.notVehiculo = false;\r\n\t}\r\n\r\n\t///**Capas */\r\n\r\n\t/**Este metodo se utilizara para cargar el mapa del server */\r\n\tasync mapServer() {\r\n\t\tawait this.map.removeLayer(this.googleLayer);\r\n\t\tif (this.clusterActivo) {\r\n\t\t\tawait this.ocultarClusters();\r\n\t\t} else {\r\n\t\t\tif (this.activosDisponibles.length > 0)\r\n\t\t\t\tawait this.map.removeLayer(this.vectorActivosLayer);\r\n\r\n\t\t\tif (this.lectorasDisponibles.length > 0)\r\n\t\t\t\tawait this.map.removeLayer(this.vectorLectorasLayer);\r\n\r\n\t\t\tif (this.medidoresDisponibles.length > 0)\r\n\t\t\t\tawait this.map.removeLayer(this.vectorMedidoresLayer);\r\n\r\n\t\t\tif (this.micromedidoresDisponibles.length > 0)\r\n\t\t\t\tawait this.map.removeLayer(this.vectorMicromedidoresLayer);\r\n\r\n\t\t\tif (this.puntosInteresDisponibles.length > 0)\r\n\t\t\t\tawait this.map.removeLayer(this.vectorPInteresLayer);\r\n\r\n\t\t\tif (this.telefonosDisponibles.length > 0)\r\n\t\t\t\tawait this.map.removeLayer(this.vectorTelefonosLayer);\r\n\r\n\t\t\tif (this.vehiculosDisponibles.length > 0)\r\n\t\t\t\tawait this.map.removeLayer(this.vectorMarcadorVehiculosLayer);\r\n\t\t\tif (this.portatilesDisponibles.length > 0)\r\n\t\t\t\tawait this.map.removeLayer(this.vectorPortatilesLayer);\r\n\t\t}\r\n\t\tawait this.map.getLayers().push(new TileLayer({\r\n\t\t\tsource: new TileWMS({\r\n\t\t\t\turl: 'http://192.168.6.102:444/cgi-bin/mapserv.exe?map=C:/ms4w/Apache/htdocs/Mapfiles/wms.map',\r\n\t\t\t\tcrossOrigin: 'anonymous',\r\n\t\t\t\tparams: { 'LAYERS': 'wms', 'VERSION': '1.1.1' },\r\n\t\t\t\tserverType: 'mapserver',\r\n\t\t\t\tprojection: 'EPSG:4326',\r\n\t\t\t\ttransition: 2\r\n\t\t\t}),\r\n\t\t}));\r\n\t\tif (this.clusterActivo) {\r\n\t\t\tawait this.mostrarClusters();\r\n\t\t} else {\r\n\t\t\tif (this.activosDisponibles.length > 0)\r\n\t\t\t\tawait this.map.addLayer(this.vectorActivosLayer);\r\n\r\n\t\t\tif (this.lectorasDisponibles.length > 0)\r\n\t\t\t\tawait this.map.addLayer(this.vectorLectorasLayer);\r\n\r\n\t\t\tif (this.medidoresDisponibles.length > 0)\r\n\t\t\t\tawait this.map.addLayer(this.vectorMedidoresLayer);\r\n\r\n\t\t\tif (this.micromedidoresDisponibles.length > 0)\r\n\t\t\t\tawait this.map.addLayer(this.vectorMicromedidoresLayer);\r\n\r\n\t\t\tif (this.puntosInteresDisponibles.length > 0)\r\n\t\t\t\tawait this.map.addLayer(this.vectorPInteresLayer);\r\n\r\n\t\t\tif (this.telefonosDisponibles.length > 0)\r\n\t\t\t\tawait this.map.addLayer(this.vectorTelefonosLayer);\r\n\r\n\t\t\tif (this.vehiculosDisponibles.length > 0)\r\n\t\t\t\tawait this.map.addLayer(this.vectorMarcadorVehiculosLayer);\r\n\r\n\t\t\tif (this.portatilesDisponibles.length > 0)\r\n\t\t\t\tawait this.map.addLayer(this.vectorPortatilesLayer);\r\n\t\t}\r\n\t}\r\n\r\n\tpublic roadmap() {\r\n\t\t/*this.map.getLayers().push(new GoogleLayer({\r\n\t\t\tmapTypeId: 'roadmap'\r\n\t\t}));*/\r\n\t\tthis.map.removeLayer(this.googleLayer);\r\n\r\n\t\tthis.googleLayer = new GoogleLayer({\r\n\t\t\tmapTypeId: 'roadmap'\r\n\t\t})\r\n\t\tthis.map.getLayers().push(this.googleLayer);\r\n\t}\r\n\r\n\tpublic satellite() {\r\n\t\tthis.map.removeLayer(this.googleLayer);\r\n\r\n\t\tthis.googleLayer = new GoogleLayer({\r\n\t\t\tmapTypeId: 'satellite'\r\n\t\t})\r\n\t\tthis.map.getLayers().push(this.googleLayer);\r\n\t}\r\n\r\n\tpublic hybrid() {\r\n\t\tthis.map.removeLayer(this.googleLayer);\r\n\r\n\t\tthis.googleLayer = new GoogleLayer({\r\n\t\t\tmapTypeId: 'hybrid'\r\n\t\t})\r\n\t\tthis.map.getLayers().push(this.googleLayer);\r\n\t}\r\n\r\n\tpublic terrain() {\r\n\t\tthis.map.removeLayer(this.googleLayer);\r\n\r\n\t\tthis.googleLayer = new GoogleLayer({\r\n\t\t\tmapTypeId: 'terrain'\r\n\t\t})\r\n\t\tthis.map.getLayers().push(this.googleLayer);\r\n\t}\r\n\r\n\tpublic traffic() {\r\n\t\tconst gmap = this.olGM.getGoogleMapsMap();\r\n\t\tif (this.trafficLayer.getMap() == null) {\r\n\t\t\tthis.trafficLayer.setMap(gmap);\r\n\t\t}\r\n\t\telse {\r\n\t\t\tthis.trafficLayer.setMap(null);\r\n\t\t}\r\n\t}\r\n\r\n\tpublic transit() {\r\n\t\tconst gmap = this.olGM.getGoogleMapsMap();\r\n\t\tif (this.transitLayer.getMap() == null) {\r\n\t\t\tthis.transitLayer.setMap(gmap);\r\n\t\t}\r\n\t\telse {\r\n\t\t\tthis.transitLayer.setMap(null);\r\n\t\t}\r\n\t}\r\n\r\n\tpublic bicycling() {\r\n\t\tconst gmap = this.olGM.getGoogleMapsMap();\r\n\t\tif (this.bicyclingLayer.getMap() == null) {\r\n\t\t\tthis.bicyclingLayer.setMap(gmap);\r\n\t\t}\r\n\t\telse {\r\n\t\t\tthis.bicyclingLayer.setMap(null);\r\n\t\t}\r\n\t}\r\n\r\n\t///**Para siempre */\r\n\tpublic mostrarParaSiempre() {\r\n\t\tthis.mostrarEtiquetasActivos();\r\n\t\tthis.mostrarEtiquetasMedidores();\r\n\t\tthis.mostrarEtiquetasMicromedidores();\r\n\t\tthis.mostrarEtiquetasTelefonos();\r\n\t\tthis.mostrarEtiquetasVehiculos();\r\n\t\tthis.mostrarEtiquetasPortatiles();\r\n\t}\r\n\r\n\tpublic ocultarParaSiempre() {\r\n\t\tthis.ocultarEtiquetasActivos();\r\n\t\tthis.ocultarEtiquetasMedidores();\r\n\t\tthis.ocultarEtiquetasMicromedidores();\r\n\t\tthis.ocultarEtiquetasTelefonos();\r\n\t\tthis.ocultarEtiquetasVehiculos();\r\n\t\tthis.ocultarEtiquetasPortatiles();\r\n\t}\r\n\r\n\r\n\r\n\t/*ocultarEtiquetasPaneles() {\r\n\t\tthis.etiquetasPanels.forEach(idName => {\r\n\t\t\tlet etiquetas = document.getElementById(`${idName}`);\r\n\t\t\tif (etiquetas !== null) {\r\n\t\t\t\tetiquetas.hidden = true;\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n*/\r\n\r\n\tocultarEtiquetasActivos() {\r\n\t\tthis.etiquetasActivos.forEach(idName => {\r\n\t\t\tlet etiquetas = document.getElementById(`${idName}`);\r\n\t\t\tif (etiquetas !== null) {\r\n\t\t\t\tetiquetas.hidden = true;\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\tmostrarEtiquetasActivos() {\r\n\t\tthis.etiquetasActivos.forEach(idName => {\r\n\t\t\tlet etiquetas = document.getElementById(`${idName}`);\r\n\t\t\tif (etiquetas !== null) {\r\n\t\t\t\tetiquetas.hidden = false;\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\tocultarEtiquetasPortatiles() {\r\n\t\tthis.etiquetasPortatiles.forEach(idName => {\r\n\t\t\tlet etiquetas = document.getElementById(`${idName}`);\r\n\t\t\tif (etiquetas !== null) {\r\n\t\t\t\tetiquetas.hidden = true;\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\tmostrarEtiquetasPortatiles() {\r\n\t\tthis.etiquetasPortatiles.forEach(idName => {\r\n\t\t\tlet etiquetas = document.getElementById(`${idName}`);\r\n\t\t\tif (etiquetas !== null) {\r\n\t\t\t\tetiquetas.hidden = false;\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\tocultarEtiquetasMedidores() {\r\n\t\tthis.etiquetasMedidores.forEach(idName => {\r\n\t\t\tlet etiquetas = document.getElementById(`${idName}`);\r\n\t\t\tif (etiquetas !== null) {\r\n\t\t\t\tetiquetas.hidden = true;\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\r\n\tmostrarEtiquetasMedidores() {\r\n\t\tthis.etiquetasMedidores.forEach(idName => {\r\n\t\t\tlet etiquetas = document.getElementById(`${idName}`);\r\n\t\t\tif (etiquetas !== null) {\r\n\t\t\t\tetiquetas.hidden = false;\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\tocultarEtiquetasMicromedidores() {\r\n\t\tthis.etiquetasMicromedidores.forEach(idName => {\r\n\t\t\tlet etiquetas = document.getElementById(`${idName}`);\r\n\t\t\tif (etiquetas !== null) {\r\n\t\t\t\tetiquetas.hidden = true;\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\tmostrarEtiquetasMicromedidores() {\r\n\t\tthis.etiquetasMicromedidores.forEach(idName => {\r\n\t\t\tlet etiquetas = document.getElementById(`${idName}`);\r\n\t\t\tif (etiquetas !== null) {\r\n\t\t\t\tetiquetas.hidden = false;\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\tocultarEtiquetasTelefonos() {\r\n\t\tthis.etiquetasTelefonos.forEach(idName => {\r\n\t\t\tlet etiquetas = document.getElementById(`${idName}`);\r\n\t\t\tif (etiquetas !== null) {\r\n\t\t\t\tetiquetas.hidden = true;\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\tmostrarEtiquetasTelefonos() {\r\n\t\tthis.etiquetasTelefonos.forEach(idName => {\r\n\t\t\tlet etiquetas = document.getElementById(`${idName}`);\r\n\t\t\tif (etiquetas !== null) {\r\n\t\t\t\tetiquetas.hidden = false;\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\tocultarEtiquetasVehiculos() {\r\n\t\tthis.etiquetasVehiculos.forEach(idName => {\r\n\t\t\tlet etiquetas = document.getElementById(`${idName}`);\r\n\t\t\tif (etiquetas !== null) {\r\n\t\t\t\tetiquetas.hidden = true;\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\tmostrarEtiquetasVehiculos() {\r\n\t\tthis.etiquetasVehiculos.forEach(idName => {\r\n\t\t\tlet etiquetas = document.getElementById(`${idName}`);\r\n\t\t\tif (etiquetas !== null) {\r\n\t\t\t\tetiquetas.hidden = false;\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\tpublic mostrarApuntadorSeleccionado(data) {/**Pinta spinar al dar click a algun producto en el mapa? */\r\n\t\tvar pos = fromLonLat([data.lng, data.lat]);\r\n\t\tthis.iconApuntadorSelectFeature = new Feature({\r\n\t\t\ttype: 'puntoApuntadorSelect',\r\n\t\t\tgeometry: new Point(pos)\r\n\t\t});\r\n\t\tthis.iconSelectApuntador = new Style({\r\n\t\t\timage: new Icon({\r\n\t\t\t\tanchor: [0.5, 0.5],\r\n\t\t\t\tanchorXUnits: 'fraction',\r\n\t\t\t\tanchorYUnits: 'fraction',\r\n\t\t\t\tsrc: this.iconosPng.colorApuntador(data.estado)\r\n\t\t\t}),\r\n\t\t\tzIndex: 10\r\n\t\t});\r\n\t\tthis.iconApuntadorSelectFeature.setStyle(this.iconSelectApuntador);\r\n\t\tthis.vectorApuntadorSource.addFeature(this.iconApuntadorSelectFeature);\r\n\t\tthis.vectorApuntadorSelectLayer.setVisible(true);\r\n\t}\r\n\r\n\t///**Apuntadores */\r\n\tpublic verActivo(data: ActivoUltimaTransmision) {\r\n\t\tthis.apuntadorDispositivo(data);\r\n\t\tthis.map.getView().setCenter(fromLonLat([data.lng, data.lat]));\r\n\t\tif (this.map.getView().getZoom() < 15) {\r\n\t\t\tthis.map.getView().setZoom(20);\r\n\t\t}\r\n\t}\r\n\r\n\tpublic verPortatil(data: PortatilUltimaTransmision) {\r\n\t\tthis.apuntadorDispositivo(data);\r\n\t\tthis.map.getView().setCenter(fromLonLat([data.lng, data.lat]));\r\n\t\tif (this.map.getView().getZoom() < 15) {\r\n\t\t\tthis.map.getView().setZoom(20);\r\n\t\t}\r\n\t}\r\n\r\n\tpublic verMedidor(data: Medidores) {\r\n\t\tthis.apuntadorHidraulicos(data);\r\n\t\tthis.map.getView().setCenter(fromLonLat([data.lng, data.lat]));\r\n\t\tif (this.map.getView().getZoom() < 15) {\r\n\t\t\tthis.map.getView().setZoom(20);\r\n\t\t}\r\n\t}\r\n\r\n\t/*prueba del demo*/\r\n\tpublic verMedidorDemo(data: Medidores) {\r\n\t\tthis._user = this.auth.getUser();\r\n\t\tif (this._user.id === \"6cac2e07-cb6d-4725-93d7-ed7ad39f5ade\") {\r\n\t\t\tconst lat = 19.213896;\r\n\t\t\tconst lng = -98.994782\r\n\t\t\tthis.apuntadorHidraulicosDemo(data);\r\n\t\t\tthis.map.getView().setCenter(fromLonLat([lng, lat]));\r\n\t\t\tif (this.map.getView().getZoom() < 15) {\r\n\t\t\t\tthis.map.getView().setZoom(20);\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\t/*prueba del demo*/\r\n\r\n\tpublic verTelefono(data: TelefonoUltimaTransmision) {\r\n\t\tthis.apuntadorTelefono(data);\r\n\t\tthis.map.getView().setCenter(fromLonLat([data.lng, data.lat]));\r\n\t\tif (this.map.getView().getZoom() < 15) {\r\n\t\t\tthis.map.getView().setZoom(60);\r\n\r\n\t\t}\r\n\t}\r\n\r\n\tpublic apuntadorTelefono(coord) {\r\n\t\tthis.vectorDispositivoUbicadoSource.clear();\r\n\t\tthis.vectorDispositivoUbicadoLayer.setVisible(false);\r\n\r\n\t\tvar pos = fromLonLat([coord.lng, coord.lat]);\r\n\t\tlet coordenadas: Params = { lng: Number(coord.lng.toFixed(5)), lat: Number(coord.lat.toFixed(5)), zoom: 28 }\r\n\t\tthis.auth.setStorageCoordinate(coordenadas);\r\n\r\n\t\tvar dispositivoFeature = new Feature({\r\n\t\t\ttype: 'puntoApuntadorAlerta',\r\n\t\t\tgeometry: new Point(pos)\r\n\t\t});\r\n\t\tvar iconStyleApuntador = new Style({\r\n\t\t\timage: new Icon({\r\n\t\t\t\tanchor: [0.5, 0.5],\r\n\t\t\t\tanchorXUnits: 'fraction',\r\n\t\t\t\tanchorYUnits: 'fraction',\r\n\t\t\t\tsrc: this.iconosPng.colorApuntador(coord)\r\n\t\t\t}),\r\n\t\t\tzIndex: 10\r\n\t\t});\r\n\t\tdispositivoFeature.setStyle(iconStyleApuntador);\r\n\t\tthis.vectorDispositivoUbicadoSource.addFeature(dispositivoFeature);\r\n\t\tthis.vectorDispositivoUbicadoLayer.setVisible(true);\r\n\t}\r\n\r\n\tpublic verVehiculo(data: Autos) {\r\n\t\tthis.apuntadorDispositivo(data);\r\n\t\tthis.map.getView().setCenter(fromLonLat([data.lng, data.lat]));\r\n\t\tif (this.map.getView().getZoom() < 15) {\r\n\t\t\tthis.map.getView().setZoom(20);\r\n\r\n\t\t}\r\n\t}\r\n\r\n\r\n\r\n\tpublic apuntadorHidraulicos(coord) {\r\n\t\tthis.vectorDispositivoUbicadoSource.clear();\r\n\t\tthis.vectorDispositivoUbicadoLayer.setVisible(false);\r\n\t\tlet coordenadas: Params = { lng: Number(coord.lng.toFixed(5)), lat: Number(coord.lat.toFixed(5)), zoom: 28 }\r\n\t\tthis.auth.setStorageCoordinate(coordenadas);\r\n\t\tvar pos = fromLonLat([coord.lng, coord.lat]);\r\n\t\tvar dispositivoFeature = new Feature({\r\n\t\t\ttype: 'puntoApuntadorAlerta',\r\n\t\t\tgeometry: new Point(pos)\r\n\t\t});\r\n\t\tvar iconStyleApuntador = new Style({\r\n\t\t\timage: new Icon({\r\n\t\t\t\tanchor: [0.5, 0.5],\r\n\t\t\t\tanchorXUnits: 'fraction',\r\n\t\t\t\tanchorYUnits: 'fraction',\r\n\t\t\t\tsrc: './assets/media/puntos/spinnerAzul.png',\r\n\t\t\t}),\r\n\t\t\tzIndex: 10\r\n\t\t});\r\n\t\tdispositivoFeature.setStyle(iconStyleApuntador);\r\n\t\tthis.vectorDispositivoUbicadoSource.addFeature(dispositivoFeature);\r\n\t\tthis.vectorDispositivoUbicadoLayer.setVisible(true);\r\n\t}\r\n\r\n\t/*prueba del demo*/\r\n\tpublic apuntadorHidraulicosDemo(coord) {\r\n\t\tconst lat = 19.213896;\r\n\t\tconst lng = -98.994782\r\n\t\tthis.vectorDispositivoUbicadoSource.clear();\r\n\t\tthis.vectorDispositivoUbicadoLayer.setVisible(false);\r\n\t\tlet coordenadas: Params = { lng: Number(lng.toFixed(5)), lat: Number(lat.toFixed(5)), zoom: 28 }\r\n\t\tthis.auth.setStorageCoordinate(coordenadas);\r\n\t\tvar pos = fromLonLat([lng, lat]);\r\n\t\tvar dispositivoFeature = new Feature({\r\n\t\t\ttype: 'puntoApuntadorAlerta',\r\n\t\t\tgeometry: new Point(pos)\r\n\t\t});\r\n\t\tvar iconStyleApuntador = new Style({\r\n\t\t\timage: new Icon({\r\n\t\t\t\tanchor: [0.5, 0.5],\r\n\t\t\t\tanchorXUnits: 'fraction',\r\n\t\t\t\tanchorYUnits: 'fraction',\r\n\t\t\t\tsrc: './assets/media/puntos/spinnerAzul.png',\r\n\t\t\t}),\r\n\t\t\tzIndex: 10\r\n\t\t});\r\n\t\tdispositivoFeature.setStyle(iconStyleApuntador);\r\n\t\tthis.vectorDispositivoUbicadoSource.addFeature(dispositivoFeature);\r\n\t\tthis.vectorDispositivoUbicadoLayer.setVisible(true);\r\n\t}\r\n\t/*prueba del demo*/\r\n\r\n\tpublic apuntadorDispositivo(coord) {\r\n\t\tthis.vectorDispositivoUbicadoSource.clear();\r\n\t\tthis.vectorDispositivoUbicadoLayer.setVisible(false);\r\n\r\n\t\tlet coordenadas: Params = { lng: Number(coord.lng.toFixed(5)), lat: Number(coord.lat.toFixed(5)), zoom: 28 }\r\n\t\tthis.auth.setStorageCoordinate(coordenadas);\r\n\t\tvar pos = fromLonLat([coord.lng, coord.lat]);\r\n\t\tvar dispositivoFeature = new Feature({\r\n\t\t\ttype: 'puntoApuntadorAlerta',\r\n\t\t\tgeometry: new Point(pos)\r\n\t\t});\r\n\t\tvar iconStyleApuntador = new Style({\r\n\t\t\timage: new Icon({\r\n\t\t\t\tanchor: [0.5, 0.5],\r\n\t\t\t\tanchorXUnits: 'fraction',\r\n\t\t\t\tanchorYUnits: 'fraction',\r\n\t\t\t\tsrc: this.colorApuntador(coord.estado),\r\n\t\t\t}),\r\n\t\t\tzIndex: 10\r\n\t\t});\r\n\t\tdispositivoFeature.setStyle(iconStyleApuntador);\r\n\t\tthis.vectorDispositivoUbicadoSource.addFeature(dispositivoFeature);\r\n\t\tthis.vectorDispositivoUbicadoLayer.setVisible(true);\r\n\t}\r\n\r\n\tpublic ubicarProducto(lng: Number, lat: Number) {\r\n\t\tlng = Number(lng);\r\n\t\tlat = Number(lat)\r\n\t\tconst DATA = { lng: lng, lat: lat };\r\n\t\tthis.apuntadorDispositivo(DATA);\r\n\t\tthis.map.getView().setCenter(fromLonLat([lng, lat]));\r\n\t\tif (this.map.getView().getZoom() < 15) {\r\n\t\t\tthis.map.getView().setZoom(20);\r\n\t\t}\r\n\t}\r\n\r\n\tocultarUbicadorLayer() {\r\n\t\tthis.vectorDispositivoUbicadoSource.clear();\r\n\t\tthis.vectorDispositivoUbicadoLayer.setVisible(false);\r\n\r\n\t}\r\n\r\n\tocultarUbicadorPanelesLayer() {\r\n\t\tthis.vectorDispositivoUbicadoSource.clear();\r\n\t\tthis.vectorDispositivoUbicadoLayer.setVisible(false);\r\n\r\n\t}\r\n\r\n\tabrirPopupRecorrido() {\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.autoFocus = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\t\tdialogConfig.width = \"20%\";\r\n\t\tdialogConfig.panelClass = 'custom-modalbox';\r\n\t\tdialogConfig.position = { right: '76%', top: '3.5%' };\r\n\t\tdialogConfig.closeOnNavigation = true;\r\n\t\tdialogConfig.hasBackdrop = false;\r\n\t\tthis.dialog.open(PopupRecorridoHistoricoComponent, dialogConfig);\r\n\t}\r\n\r\n\t///**Historico */\r\n\tpublic pintarMarcadoresHistorico = () => {\r\n\t\tthis.historicoMode = true;\r\n\t\tdocument.getElementById('style-7').classList.add('menu-barHidde');\r\n\t\tdocument.getElementById('map-content').classList.add('map-recorrido');\r\n\t\tif (this.posicionesReporte.length) {\r\n\t\t\tthis.ocultarTelefonos();\r\n\t\t\tthis.ocultarVehiculos();\r\n\t\t\tthis.ocultarActivos();\r\n\t\t\tthis.ocultarApuntadorAlertas();\r\n\t\t\tthis.ocultarParaSiempre();\r\n\t\t\tthis.ocultarMedidores();\r\n\t\t\tthis.ocultarMicromedidores();\r\n\t\t\tthis.ocultarPuntosInteres();\r\n\t\t\tthis.ocultarLectoras();\r\n\t\t\tthis.ocultarPortatiles();\r\n\t\t\tthis.vectorDispositivoUbicadoLayer.setVisible(false);\r\n\t\t\tthis.dibujarRecorrido();\r\n\t\t} else {\r\n\t\t\tthis.toastr.error('No se encontraron posiciones en el rango de tiempo especificado', '');\r\n\t\t}\r\n\t}\r\n\r\n\tpublic dibujarRecorrido = () => {\r\n\t\tthis.vectorHistoricoSource.clear();\r\n\t\tvar longitud = this.posicionesReporte.length;\r\n\r\n\t\tvar coordenadas = [];\r\n\t\tthis.posicionesReporte.forEach((posicion, key) => {\r\n\t\t\tvar pointPosicion = new Feature({\r\n\t\t\t\tid: posicion.id,\r\n\t\t\t\ttype: 'pointRecorrido',\r\n\t\t\t\tidPosition: posicion.id,\r\n\t\t\t\tdata: posicion,\r\n\t\t\t\tgeometry: new Point(fromLonLat([posicion.lng, posicion.lat])),\r\n\t\t\t});\r\n\r\n\t\t\t//pointPosicion.setId(posicion.id);\r\n\t\t\tlet iconStylePoint = null;\r\n\r\n\t\t\tif (key == 0) {\r\n\t\t\t\ticonStylePoint = this.getIconInicioRecorrido(posicion.icono, posicion.direccion);\r\n\t\t\t\tthis.posicionActualRecorrido = posicion;\r\n\t\t\t} else if (key == (longitud - 1)) {\r\n\t\t\t\ticonStylePoint = this.getIconFinalRecorrido(posicion.icono, posicion.direccion);\r\n\t\t\t} else {\r\n\t\t\t\tlet inicio = [posicion.lng, posicion.lat];\r\n\t\t\t\tlet final = [this.posicionesReporte[key + 1].lng, this.posicionesReporte[key + 1].lat];\r\n\t\t\t\ticonStylePoint = this.getIconPointPosicion(inicio, final, posicion.icono);\r\n\t\t\t}\r\n\r\n\r\n\t\t\tpointPosicion.setStyle(iconStylePoint);\r\n\t\t\tthis.vectorHistoricoSource.addFeature(pointPosicion);\r\n\t\t\tcoordenadas.push(fromLonLat([posicion.lng, posicion.lat]));\r\n\t\t});\r\n\r\n\t\tvar lineas = new Feature({\r\n\t\t\ttype: 'lineRecorrido',\r\n\t\t\tgeometry: new LineString(coordenadas),\r\n\t\t});\r\n\r\n\t\tvar lineStyle = new Style({\r\n\t\t\tstroke: new Stroke({\r\n\t\t\t\tcolor: '#CC0000',\r\n\t\t\t\twidth: 4,\r\n\t\t\t\tlineDash: [10, 20]\r\n\r\n\t\t\t})\r\n\t\t});\r\n\r\n\t\tlineas.setStyle(lineStyle);\r\n\t\tthis.vectorHistoricoSource.addFeature(lineas);\r\n\t\tthis.indexActualRecorrido = 0;\r\n\t\tthis.indexFinalRecorrido = longitud - 1;\r\n\t\tthis.mostrarLayerRecorrido();\r\n\t\tthis.mostrarApuntador();\r\n\t\tthis.setPosicionApuntador();\r\n\t\t//this.setPositionOverlayPopupRecorrido();\r\n\t\tthis.permanentOverlayPopup();\r\n\t\tthis.centerMapHistorico();\r\n\t\tthis.mostrandoRecorrido = true;\r\n\t}\r\n\r\n\tpublic setPosicionApuntador() { /**Coloca el spinner */\r\n\t\tvar currentPosition = this.posicionesReporte[this.indexActualRecorrido];\r\n\t\tvar pos = fromLonLat([currentPosition.lng, currentPosition.lat]);\r\n\t\tthis.iconApuntador = new Style({\r\n\t\t\timage: new Icon({\r\n\t\t\t\tanchor: [0.5, 0.5],\r\n\t\t\t\tanchorXUnits: 'fraction',\r\n\t\t\t\tanchorYUnits: 'fraction',\r\n\t\t\t\tsrc: this.iconosPng.colorApuntador(currentPosition)\r\n\t\t\t}),\r\n\t\t\tzIndex: 10\r\n\t\t});\r\n\t\tthis.iconApuntadorFeature.setStyle(this.iconApuntador);\r\n\t\tthis.iconApuntadorFeature.getGeometry().setCoordinates(pos);\r\n\t}\r\n\r\n\tpublic centerRecorridoMap() {\r\n\t\tvar posicionActual = this.posicionesReporte[this.indexActualRecorrido];\r\n\t\tthis.map.getView().setCenter(fromLonLat([posicionActual.lng, posicionActual.lat]));\r\n\t\tif (this.map.getView().getZoom() < 17) {\r\n\t\t\tthis.map.getView().setZoom(17);\r\n\t\t}\r\n\t}\r\n\r\n\tpublic centerMapHistorico() {\r\n\t\tvar posicionActual = this.posicionesReporte[this.indexActualRecorrido];\r\n\t\tthis.map.getView().setCenter(fromLonLat([posicionActual.lng, posicionActual.lat]));\r\n\t\tif (this.map.getView().getZoom() < 17) {\r\n\t\t\tthis.map.getView().setZoom(12);\r\n\t\t}\r\n\t}\r\n\r\n\tpublic getIconInicioRecorrido(icono, dir) {\r\n\t\tvar iconStyleInicioRecorrido = new Style({\r\n\t\t\timage: new Icon({\r\n\t\t\t\tanchor: [0.5, 0.5],\r\n\t\t\t\tanchorXUnits: 'fraction',\r\n\t\t\t\tanchorYUnits: 'fraction',\r\n\t\t\t\trotation: -dir,\r\n\t\t\t\tsrc: icono\r\n\t\t\t}),\r\n\t\t\tzIndex: 10\r\n\t\t});\r\n\t\treturn iconStyleInicioRecorrido;\r\n\t}\r\n\r\n\tpublic irSiguiente() {\r\n\t\tvar indexPrevio = this.indexActualRecorrido;\r\n\t\tthis.indexActualRecorrido = this.indexActualRecorrido + 1;\r\n\t\tif (this.indexActualRecorrido > this.indexFinalRecorrido) {\r\n\t\t\tthis.indexActualRecorrido = 0;\r\n\t\t}\r\n\r\n\t\tthis.setPosicionApuntador();\r\n\t\t//this.setPositionOverlayPopupRecorrido();\r\n\t\tthis.permanentOverlayPopup();\r\n\t\tthis.setIconPosicionActual(indexPrevio);\r\n\t\tthis.centerRecorridoMap();\r\n\t}\r\n\r\n\tpublic irAnterior() {\r\n\t\tvar indexPrevio = this.indexActualRecorrido;\r\n\t\tthis.indexActualRecorrido = this.indexActualRecorrido - 1;\r\n\t\tif (this.indexActualRecorrido < 0) {\r\n\t\t\tthis.indexActualRecorrido = this.indexFinalRecorrido;\r\n\t\t}\r\n\r\n\t\tthis.setPosicionApuntador();\r\n\t\t//this.setPositionOverlayPopupRecorrido();\r\n\t\tthis.permanentOverlayPopup();\r\n\t\tthis.setIconPosicionActual(indexPrevio);\r\n\t\tthis.centerRecorridoMap();\r\n\r\n\t}\r\n\r\n\tpublic irInicioRecorrido() {\r\n\t\tvar indexPrevio = this.indexActualRecorrido;\r\n\t\tthis.indexActualRecorrido = 0;\r\n\t\tthis.setPosicionApuntador();\r\n\t\t//this.setPositionOverlayPopupRecorrido();\r\n\t\tthis.permanentOverlayPopup();\r\n\t\tthis.setIconPosicionActual(indexPrevio);\r\n\t\tthis.centerRecorridoMap();\r\n\t}\r\n\r\n\tpublic irFinalRecorrido() {\r\n\t\tvar indexPrevio = this.indexActualRecorrido;\r\n\t\tthis.indexActualRecorrido = this.indexFinalRecorrido;\r\n\t\tthis.setPosicionApuntador();\r\n\t\t//this.setPositionOverlayPopupRecorrido();\r\n\t\tthis.permanentOverlayPopup();\r\n\t\tthis.setIconPosicionActual(indexPrevio);\r\n\t\tthis.centerRecorridoMap();\r\n\r\n\t}\r\n\r\n\tpublic getIconFinalRecorrido(icono, dir) {\r\n\t\tvar iconStyleFinalRecorrido = new Style({\r\n\t\t\timage: new Icon({\r\n\t\t\t\tanchor: [0.5, 0.5],\r\n\t\t\t\tanchorXUnits: 'fraction',\r\n\t\t\t\tanchorYUnits: 'fraction',\r\n\t\t\t\trotation: -dir,\r\n\t\t\t\tsrc: icono\r\n\t\t\t}),\r\n\t\t\tzIndex: 10\r\n\t\t});\r\n\t\treturn iconStyleFinalRecorrido;\r\n\t}\r\n\r\n\tpublic getIconPointPosicion(inicio, final, icono) {\r\n\t\tvar dx = final[0] - inicio[0];\r\n\t\tvar dy = final[1] - inicio[1];\r\n\t\tvar rotation = Math.atan2(dy, dx);\r\n\r\n\t\tvar iconStylePoint = new Style({\r\n\t\t\timage: new Icon({\r\n\t\t\t\tanchor: [0.5, 0.5],\r\n\t\t\t\tanchorXUnits: 'fraction',\r\n\t\t\t\tanchorYUnits: 'fraction',\r\n\t\t\t\trotateWithView: true,\r\n\t\t\t\trotation: -rotation,\r\n\t\t\t\tsrc: icono\r\n\t\t\t}),\r\n\t\t\tzIndex: 0,\r\n\t\t});\r\n\t\treturn iconStylePoint;\r\n\t};\r\n\r\n\tpublic setIconPosicionActual(indexPrevio) {\r\n\t\tvar posicion = this.posicionesReporte[this.indexActualRecorrido];\r\n\t\tvar posicionPrevia = this.posicionesReporte[indexPrevio];\r\n\r\n\t\tvar features = this.vectorHistoricoSource.getFeatures();\r\n\t\tvar idxFeature = features.findIndex(f => f.values_.type == 'pointRecorrido' && f.values_.idPosition == posicion.id);\r\n\t\tvar idxFeaturePrevio = features.findIndex(f => f.values_.type == 'pointRecorrido' && f.values_.idPosition == posicionPrevia.id);\r\n\r\n\t\tvar featureActual = features[idxFeature];\r\n\t\tvar featurePrevio = features[idxFeaturePrevio];\r\n\r\n\t\tfeaturePrevio.getStyle().setZIndex(0);\r\n\t\tfeatureActual.getStyle().setZIndex(1);\r\n\t}\r\n\r\n\tpermanentOverlayPopup(): Observable { /**Obtiene la informacion para el modal permanente */\r\n\t\tlet longitud = this.posicionesReporte.length;\r\n\t\tlet numeroActual = this.indexActualRecorrido + 1;\r\n\t\tlet posicionInfo = this.posicionesReporte[this.indexActualRecorrido];\r\n\t\tthis.ubicacionHistorico = { lat: posicionInfo.lat, lng: posicionInfo.lng }\r\n\t\tlet tipo: string;\r\n\t\tif (posicionInfo.tipo) {\r\n\t\t\ttipo = this.tipoProducto;\r\n\t\t} else {\r\n\t\t\ttipo = 'vehiculo';\r\n\t\t}\r\n\r\n\t\tlet informacion = {\r\n\t\t\tlongitud: longitud,\r\n\t\t\tnumeroActual: numeroActual,\r\n\t\t\tdatos: posicionInfo,\r\n\t\t\ttipo: tipo\r\n\t\t}\r\n\r\n\t\tthis.informacionInicial = informacion;\r\n\t\tthis.informacionRecorrio.next(informacion);\r\n\t\treturn this.informacionRecorrio.asObservable();\r\n\t}\r\n\r\n\thistoricoStreetView() {\r\n\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\tdialogConfig.autoFocus = true;\r\n\t\tdialogConfig.disableClose = true;\r\n\t\tdialogConfig.panelClass = 'custom-modalbox';\r\n\t\tdialogConfig.width = \"45%\";\r\n\t\tdialogConfig.closeOnNavigation = true;\r\n\t\tdialogConfig.hasBackdrop = false;\r\n\t\tdialogConfig.data = this.ubicacionHistorico;\r\n\t\tthis.dialog.open(StreetViewComponent, dialogConfig);\r\n\t}\r\n\r\n\tvalidarEstadoHistorico(): Observable {/**Valida si el mapa esta en modo historico o no*/\r\n\t\tthis.modoHistorico.next(this.estadoHistorico);\r\n\t\treturn this.modoHistorico.asObservable();\r\n\t}\r\n\r\n\tpublic ubicarPuntoHistorico(coord) {\r\n\t\tthis.map.getView().setCenter(fromLonLat([coord.lng, coord.lat]));\r\n\t\tif (this.map.getView().getZoom() < 19) {\r\n\t\t\tthis.map.getView().setZoom(19);\r\n\t\t}\r\n\t\tvar pos = fromLonLat([coord.lng, coord.lat]);\r\n\t\tthis.iconApuntador = new Style({\r\n\t\t\timage: new Icon({\r\n\t\t\t\tanchor: [0.5, 0.5],\r\n\t\t\t\tanchorXUnits: 'fraction',\r\n\t\t\t\tanchorYUnits: 'fraction',\r\n\t\t\t\tsrc: this.iconosPng.colorApuntador(coord)\r\n\t\t\t}),\r\n\t\t\tzIndex: 10\r\n\t\t});\r\n\t\tthis.iconApuntadorFeature.setStyle(this.iconApuntador);\r\n\t\tthis.iconApuntadorFeature.getGeometry().setCoordinates(pos);\r\n\t}\r\n\r\n\tpublic cerrarRecorrido() { /**Cirra el recorrido */\r\n\t\tthis.mostrandoRecorrido = false;\r\n\t\tthis.mostrarVehiculos();\r\n\t\tthis.mostrarApuntadorAlertas();\r\n\t\t//this.mostrarPuntosInteres();\r\n\t\tthis.mostrarMedidores();\r\n\t\tthis.mostrarActivos();\r\n\t\tthis.mostrarTelefonos();\r\n\t\tthis.mostrarPortatiles();\r\n\t\tthis.ocultarLayerRecorrido();\r\n\t\tthis.posicionesReporte = [];\r\n\t\tthis.indexActualRecorrido = 0;\r\n\t\tthis.indexFinalRecorrido = 0;\r\n\t\tthis.overlayPopup.setPosition(undefined);\r\n\t\tthis.dialog.closeAll();\r\n\t\tthis.informacionRecorrio.complete();\r\n\t\tthis.vectorApuntadorLayer.setVisible(false);\r\n\t\tthis.valorLey = false;\r\n\t\tthis.estadoHistorico = false;\r\n\t\tif (this.pintarEtiquetas) {\r\n\t\t\tthis.mostrarParaSiempre();\r\n\t\t}\r\n\t}\r\n\r\n\tpublic mostrarApuntador() { /**Pinta el spinner en la posicion seleccionada */\r\n\t\tvar currentPosition = this.posicionesReporte[this.indexActualRecorrido];\r\n\r\n\t\tvar pos = fromLonLat([currentPosition.lng, currentPosition.lat]);\r\n\t\tthis.iconApuntadorFeature = new Feature({\r\n\t\t\ttype: 'puntoApuntador',\r\n\t\t\tgeometry: new Point(pos)\r\n\t\t});\r\n\t\tthis.iconApuntador = new Style({\r\n\t\t\timage: new Icon({\r\n\t\t\t\tanchor: [0.5, 0.5],\r\n\t\t\t\tanchorXUnits: 'fraction',\r\n\t\t\t\tanchorYUnits: 'fraction',\r\n\t\t\t\tsrc: this.iconosPng.colorApuntador(currentPosition)\r\n\t\t\t}),\r\n\t\t\tzIndex: 10\r\n\t\t});\r\n\t\tthis.iconApuntadorFeature.setStyle(this.iconApuntador);\r\n\t\tthis.vectorApuntadorSource.addFeature(this.iconApuntadorFeature);\r\n\t\t//this.vectorApuntadorLayer.setVisible(true);\r\n\t}\r\n\r\n\tpublic mostrarLayerRecorrido() { /**Pinta el recorrido */\r\n\t\tthis.vectorHistoricoLayer.setVisible(true);\r\n\t\t//this.vectorApuntadorLayer.setVisible(true);\r\n\t}\r\n\r\n\tpublic ocultarLayerRecorrido() { /**Oculte el recorrido */\r\n\t\tthis.vectorHistoricoLayer.setVisible(false);\r\n\t}\r\n\r\n\t///**StreetView */\r\n\tabrirStreetView = () => {\r\n\t\tthis.drawPoint = new Draw({\r\n\t\t\tsource: this.sourcePi,\r\n\t\t\ttype: 'Point',\r\n\t\t\timage: new Style({\r\n\t\t\t\tradius: 7,\r\n\t\t\t\tfill: new Fill({\r\n\t\t\t\t\tcolor: 'red'\r\n\t\t\t\t})\r\n\t\t\t})\r\n\r\n\t\t});\r\n\r\n\t\tthis.map.addInteraction(this.drawPoint);\r\n\t\tthis.map.once('click', evt => {\r\n\t\t\tconst coordenadaPI = transform(evt.coordinate, 'EPSG:3857', 'EPSG:4326');\r\n\r\n\t\t\t/*Guardar PuntoInteres*/\r\n\t\t\tconst dialogConfig = new MatDialogConfig();\r\n\t\t\tdialogConfig.autoFocus = true;\r\n\t\t\tdialogConfig.disableClose = true;\r\n\t\t\tdialogConfig.panelClass = 'custom-modalbox';\r\n\t\t\tdialogConfig.width = \"45%\";\r\n\t\t\tdialogConfig.closeOnNavigation = true;\r\n\t\t\tdialogConfig.hasBackdrop = false;\r\n\t\t\tdialogConfig.data = { lat: coordenadaPI[1], lng: coordenadaPI[0] }\r\n\t\t\tthis.dialog.open(StreetViewComponent, dialogConfig);\r\n\t\t\tthis.map.removeInteraction(this.drawPoint);\r\n\t\t});\r\n\t}\r\n\r\n\tlimpiarMapa() {\r\n\t\tthis.ocultarClusters();\r\n\t\tthis.ocultarParaSiempre()\r\n\t\tthis.vectorActivosSource.clear();\r\n\t\tthis.vectorLectorasSource.clear();\r\n\t\tthis.vectorMedidoresSource.clear();\r\n\t\tthis.vectorMicromedidoresSource.clear();\r\n\t\t//this.vectorPInteresSource.clear();\r\n\t\tthis.vectorTelefonosSource.clear();\r\n\t\tthis.vectorMarcadorVehiculosSource.clear();\r\n\t\tthis.vectorDispositivoUbicadoLayer.setVisible(false);\r\n\t\tthis.vectorApuntadorAlertaSource.clear();\r\n\t\tthis.vectorPortatilesSource.clear();\r\n\t\tthis.vectorPanelesSource.clear();\r\n\t\t//this.ocultarApuntadorAlertas()\r\n\r\n\t\tthis.etiquetasActivos = [];\r\n\t\tthis.etiquetasLectoras = [];\r\n\t\tthis.etiquetasMedidores = [];\r\n\t\tthis.etiquetasMicromedidores = [];\r\n\t\tthis.etiquetasTelefonos = [];\r\n\t\tthis.etiquetasVehiculos = [];\r\n\t\tthis.etiquetasPortatiles = [];\r\n\t\tthis.etiquetasPaneles = [];\r\n\t\tthis.limpiarDispositivos();\r\n\r\n\t}\r\n\r\n\t//**Toogle */\r\n\ttoogleCapaActivos() {\r\n\t\tif (this.vectorActivosLayer.getVisible()) {\r\n\t\t\tthis.ocultarActivos();\r\n\t\t\tthis.toogleActivos = false;\r\n\t\t} else {\r\n\t\t\tthis.mostrarActivos();\r\n\t\t\tthis.toogleActivos = true;\r\n\t\t}\r\n\t}\r\n\r\n\ttoogleCapaPortatiles() {\r\n\t\tif (this.vectorPortatilesLayer.getVisible()) {\r\n\t\t\tthis.ocultarPortatiles();\r\n\t\t\tthis.tooglePortatiles = false;\r\n\t\t} else {\r\n\t\t\tthis.mostrarPortatiles();\r\n\t\t\tthis.tooglePortatiles = true;\r\n\t\t}\r\n\t}\r\n\r\n\ttoogleCapaMedidores() {\r\n\t\tif (this.vectorMedidoresLayer.getVisible()) {\r\n\t\t\tthis.ocultarMedidores();\r\n\t\t\tthis.toogleMedidores = false;\r\n\t\t} else {\r\n\t\t\tthis.mostrarMedidores();\r\n\t\t\tthis.toogleMedidores = true;\r\n\t\t}\r\n\t}\r\n\r\n\ttoogleCapaMicromedidores() {\r\n\t\tif (this.vectorMicromedidoresLayer.getVisible()) {\r\n\t\t\tthis.ocultarMicromedidores();\r\n\t\t\tthis.toogleMicromedidores = false;\r\n\t\t} else {\r\n\t\t\tthis.mostrarMicromedidores();\r\n\t\t\tthis.toogleMicromedidores = true;\r\n\r\n\t\t}\r\n\t}\r\n\r\n\ttoogleCapaTelefonos() {\r\n\t\tif (this.vectorTelefonosLayer.getVisible()) {\r\n\t\t\tthis.ocultarTelefonos();\r\n\t\t\tthis.toogleTelefonos = false;\r\n\t\t} else {\r\n\t\t\tthis.mostrarTelefonos();\r\n\t\t\tthis.toogleTelefonos = true;\r\n\t\t}\r\n\t}\r\n\r\n\ttoogleCapaVehiculos() {\r\n\t\tif (this.vectorMarcadorVehiculosLayer.getVisible()) {\r\n\t\t\tthis.ocultarVehiculos()\r\n\t\t\tthis.vectorApuntadorAlertaLayer.setVisible(false);\r\n\t\t\tthis.toogleVehiculos = false;\r\n\t\t} else {\r\n\t\t\tthis.mostrarVehiculos();\r\n\t\t\tthis.vectorApuntadorAlertaLayer.setVisible(true);\r\n\t\t\tthis.toogleVehiculos = true;\r\n\t\t}\r\n\t}\r\n\ttoogleCapaCluster() {\r\n\t\tif (this.clusterActivo) {\r\n\t\t\tthis.ocultarClusters();\r\n\t\t\tthis.mostrarProductos();\r\n\t\t\tthis.clusterActivo = false;\r\n\t\t\tthis.productosVisibles = true;\r\n\r\n\t\t} else {\r\n\t\t\tthis.ocultarProductos();\r\n\t\t\tthis.mostrarClusters();\r\n\t\t\tthis.clusterActivo = true;\r\n\t\t\tthis.productosVisibles = false;\r\n\t\t}\r\n\t}\r\n\r\n\tocultarClusters() {\r\n\t\tthis.map.removeLayer(this.vectorClusterActivosLayer);\r\n\t\tthis.map.removeLayer(this.vectorClusterLectorasLayer);\r\n\t\tthis.map.removeLayer(this.vectorClusterMedidoresLayer);\r\n\t\tthis.map.removeLayer(this.vectorClusterMicromedidoresLayer);\r\n\t\tthis.map.removeLayer(this.vectorClusterPuntosInteresLayer);\r\n\t\tthis.map.removeLayer(this.vectorClusterTelefonosLayer);\r\n\t\tthis.map.removeLayer(this.vectorClusterVehiculosLayer);\r\n\t\tthis.map.removeLayer(this.vectorClusterPortatilesLayer);\r\n\t}\r\n\r\n\tocultarClusterActivo() {\r\n\t\tthis.map.removeLayer(this.vectorClusterActivosLayer);\r\n\t}\r\n\r\n\tocultarClusterLectoras() {\r\n\t\tthis.map.removeLayer(this.vectorClusterLectorasLayer);\r\n\t}\r\n\r\n\tocultarClusterMedidores() {\r\n\t\tthis.map.removeLayer(this.vectorClusterMedidoresLayer);\r\n\t}\r\n\r\n\tocultarClusterMicromedidores() {\r\n\t\tthis.map.removeLayer(this.vectorClusterMicromedidoresLayer);\r\n\t}\r\n\r\n\tocultarClusterPuntos() {\r\n\t\tthis.map.removeLayer(this.vectorClusterPuntosInteresLayer);\r\n\t}\r\n\r\n\tocultarClusterTelefonos() {\r\n\t\tthis.map.removeLayer(this.vectorClusterTelefonosLayer);\r\n\t}\r\n\r\n\tocultarClusterVehiculos() {\r\n\t\tthis.map.removeLayer(this.vectorClusterVehiculosLayer);\r\n\t}\r\n\r\n\tmostrarClusters() {\r\n\t\tif (this.activosDisponibles.length > 0)\r\n\t\t\tthis.map.addLayer(this.vectorClusterActivosLayer);\r\n\r\n\t\tif (this.lectorasDisponibles.length > 0)\r\n\t\t\tthis.map.addLayer(this.vectorClusterLectorasLayer);\r\n\r\n\t\tif (this.medidoresDisponibles.length > 0)\r\n\t\t\tthis.map.addLayer(this.vectorClusterMedidoresLayer);\r\n\r\n\t\tif (this.micromedidoresDisponibles.length > 0)\r\n\t\t\tthis.map.addLayer(this.vectorClusterMicromedidoresLayer);\r\n\r\n\t\tif (this.puntosInteresDisponibles.length > 0)\r\n\t\t\tthis.map.addLayer(this.vectorClusterPuntosInteresLayer);\r\n\r\n\t\tif (this.telefonosDisponibles.length > 0)\r\n\t\t\tthis.map.addLayer(this.vectorClusterTelefonosLayer);\r\n\r\n\t\tif (this.vehiculosDisponibles.length > 0)\r\n\t\t\tthis.map.addLayer(this.vectorClusterVehiculosLayer);\r\n\t\tif (this.portatilesDisponibles.length > 0)\r\n\t\t\tthis.map.addLayer(this.vectorClusterPortatilesLayer);\r\n\t}\r\n\r\n\tocultarProductos() {\r\n\t\tthis.ocultarActivos();\r\n\t\tthis.ocultarLectoras();\r\n\t\tthis.ocultarMedidores();\r\n\t\tthis.ocultarMicromedidores();\r\n\t\tthis.ocultarPuntosInteres();\r\n\t\tthis.ocultarTelefonos();\r\n\t\tthis.ocultarVehiculos();\r\n\t\tthis.ocultarPortatiles();\r\n\t\tthis.ocultarApuntadorAlertas()\r\n\t\tthis.ocultarPaneles();\r\n\t}\r\n\r\n\tmostrarProductos() {\r\n\t\tthis.pintarMarcadoresActivos();\r\n\t\tthis.mostrarActivos();\r\n\r\n\t\tthis.pintarMarcadoresLectoras();\r\n\t\tthis.mostrarLectoras();\r\n\r\n\t\tthis.pintarMarcadoresMedidores();\r\n\t\tthis.mostrarMedidores();\r\n\r\n\t\tthis.pintarMarcadoresMicromedidores();\r\n\t\tthis.mostrarMicromedidores();\r\n\r\n\t\tthis.pintarMarcadoresPuntoInteres();\r\n\t\tthis.mostrarPuntosInteres();\r\n\r\n\t\tthis.pintarMarcadoresTelefonos();\r\n\t\tthis.mostrarTelefonos();\r\n\r\n\t\tthis.pintarMarcadoresPortatiles();\r\n\t\tthis.mostrarPortatiles();\r\n\r\n\t\tthis.pintarMarcadoresPaneles();\r\n\t\tthis.mostrarPaneles();\r\n\r\n\t\tthis.pintarMarcadoresVehiculos();\r\n\t\tthis.mostrarVehiculos();\r\n\t\tthis.mostrarApuntadorAlertas();\r\n\t}\r\n\r\n\tlimpiarDispositivos() {\r\n\t\tthis.activosDisponibles = [];\r\n\t\tthis.lectorasDisponibles = [];\r\n\t\tthis.medidoresDisponibles = [];\r\n\t\tthis.micromedidoresDisponibles = [];\r\n\t\tthis.telefonosDisponibles = [];\r\n\t\tthis.vehiculosDisponibles = [];\r\n\t\tthis.panelesDisponibles = [];\r\n\t\t//this.puntosInteresDisponibles = [];\r\n\t}\r\n\r\n\t/*API DIRECCION */\r\n\tpublic async getDireccion(coords: any) {\r\n\t\t/**Nuevo endpoint para la direccion\r\n\t\t *\r\n\t\t*/\r\n\t\tconst endpoint = `https://nominatim.openstreetmap.org/reverse?format=json&lon=${coords[0]}&lat=${coords[1]}`;\r\n\t\treturn this.http.get(endpoint).toPromise();;\r\n\t}\r\n\r\n\r\n\t/**Extras */\r\n\twrapLon(value) {\r\n\t\tvar worlds = Math.floor((value + 180) / 360);\r\n\t\tvalue = value - worlds * 360;\r\n\t\treturn value\r\n\t}\r\n\r\n\tpublic getLocaleDateString(date) {\r\n\t\tlet result = \"\";\r\n\t\ttry {\r\n\t\t\tconst aux = new Date(date);\r\n\t\t\tconst options = { weekday: 'long', year: 'numeric', month: 'string', day: 'string' };\r\n\t\t\tconst stringDate = aux.toLocaleDateString('es-MX', options);\r\n\t\t\tconst time = aux.toLocaleTimeString('ex-MX', { hour12: true });\r\n\t\t\tresult = `${stringDate} a las ${time}`;\r\n\t\t} catch (error) {\r\n\t\t\tresult = date\r\n\t\t}\r\n\t\treturn result;\r\n\t}\r\n\r\n\tpublic colorApuntador(estado) {\r\n\t\tlet url = '';\r\n\t\tswitch (estado) {\r\n\t\t\tcase 0:\r\n\t\t\t\t//Detenido\r\n\t\t\t\turl = './assets/media/puntos/spinnerGris.png';\r\n\t\t\t\tbreak;\r\n\t\t\tcase 1:\r\n\t\t\t\t//En movimiento\r\n\t\t\t\turl = './assets/media/puntos/spinner.png';\r\n\t\t\t\tbreak;\r\n\t\t\tcase 2:\r\n\t\t\t\t//Alerta primaria (parpadeando)\r\n\t\t\t\turl = './assets/media/puntos/spinnerAlerta.png';\r\n\t\t\t\tbreak;\r\n\t\t\tcase 3:\r\n\t\t\t\turl = './assets/media/puntos/spinnerAmarillo.png';\r\n\t\t\t\tbreak;\r\n\t\t\tcase 4:\r\n\t\t\t\t//Detenido mas de 30 min\r\n\t\t\t\turl = './assets/media/puntos/spinnerAmarillo.png';\r\n\t\t\t\tbreak;\r\n\t\t\tcase 5:\r\n\t\t\t\t//Detenido mas de 60 min\r\n\t\t\t\turl = './assets/media/puntos/spinnerNaranja.png';\r\n\t\t\t\tbreak;\r\n\t\t\tcase 6:\r\n\t\t\t\t//Detenido mas de 90 min\r\n\t\t\t\turl = './assets/media/puntos/spinnerRojo.png';\r\n\t\t\t\tbreak;\r\n\t\t\tcase 7:\r\n\t\t\t\t//Exceso de velocidad\r\n\t\t\t\turl = './assets/media/puntos/spinnerAzul.png';\r\n\t\t\t\tbreak;\r\n\t\t\tcase 8:\r\n\t\t\t\t//Fuera geocerca\r\n\t\t\t\turl = './assets/media/puntos/spinnerMorado.png';\r\n\t\t\t\tbreak;\r\n\t\t\tcase 9:\r\n\t\t\t\t//Bateria baja\r\n\t\t\t\turl = './assets/media/puntos/spinnerCafe.png';\r\n\t\t\t\tbreak;\r\n\t\t\tcase 10:\r\n\t\t\t\t//Falta de energia\r\n\t\t\t\turl = './assets/media/puntos/spinnerRosa.png';\r\n\t\t\t\tbreak;\r\n\t\t\tcase 11:\r\n\t\t\t\t//Alerta movimiento\r\n\t\t\t\turl = './assets/media/puntos/spinnerGris.png';\r\n\t\t\t\tbreak;\r\n\t\t\tdefault:\r\n\t\t\t\turl = './assets/media/puntos/spinnerRojo.png';\r\n\t\t\t\tbreak;\r\n\t\t}\r\n\t\treturn url;\r\n\t}\r\n\r\n\t/***AQUI INICIA EL MODULO DE PANELES */\r\n\r\n\tpublic verPanel(data: PanelCiudadano) {\r\n\t\tconsole.log(\"UBICANDO PANEL\", data)\r\n\t\tthis.apuntadorDispositivoPanel(data);\r\n\t\tthis.map.getView().setCenter(fromLonLat([data.lng, data.lat]));\r\n\t\tif (this.map.getView().getZoom() < 15) {\r\n\t\t\tthis.map.getView().setZoom(20);\r\n\r\n\t\t}\r\n\t}\r\n\r\n\tpublic apuntadorDispositivoPanel(coord) {\r\n\t\tthis.vectorDispositivoUbicadoSource.clear();\r\n\t\tthis.vectorDispositivoUbicadoLayer.setVisible(false);\r\n\r\n\t\tlet coordenadas: Params = { lng: Number(coord.lng.toFixed(5)), lat: Number(coord.lat.toFixed(5)), zoom: 28 }\r\n\t\tthis.auth.setStorageCoordinate(coordenadas);\r\n\t\tvar pos = fromLonLat([coord.lng, coord.lat]);\r\n\t\tvar dispositivoFeature = new Feature({\r\n\t\t\ttype: 'puntoApuntadorAlerta',\r\n\t\t\tgeometry: new Point(pos)\r\n\t\t});\r\n\t\tvar iconStyleApuntador = new Style({\r\n\t\t\timage: new Icon({\r\n\t\t\t\tanchor: [0.5, 0.5],\r\n\t\t\t\tanchorXUnits: 'fraction',\r\n\t\t\t\tanchorYUnits: 'fraction',\r\n\t\t\t\tsrc: this.colorApuntador(coord.estado),\r\n\t\t\t}),\r\n\t\t\tzIndex: 10\r\n\t\t});\r\n\t\tdispositivoFeature.setStyle(iconStyleApuntador);\r\n\t\tthis.vectorDispositivoUbicadoSource.addFeature(dispositivoFeature);\r\n\t\tthis.vectorDispositivoUbicadoLayer.setVisible(true);\r\n\t}\r\n\r\n\t\t/**Desplegar Lectoras en Mapa*/\r\n\t\tpublic pintarPanelCiudadano = (panel: PanelCiudadano[]) => {\r\n\t\t\tthis.panelesDisponibles = panel;\r\n\t\t\tconsole.log(this.panelesDisponibles, \"PANEL DISPONIBLE\")\r\n\t\t\tif (this.productosVisibles) {\r\n\t\t\t\tthis.pintarMarcadoresPaneles();\r\n\t\t\t} else {\r\n\t\t\t\tthis.pintarClusterPaneles();\r\n\t\t\t}\r\n\t\r\n\t\t}\r\n\t\r\n\t\tpintarClusterPaneles() {\r\n\t\t\tif (this.lectorasDisponibles.length > 0) {\r\n\t\t\t\tlet source = new VectorSource({});\r\n\t\t\t\tlet feature: Feature;\r\n\t\t\t\tlet styleCache = {};\r\n\t\r\n\t\t\t\tthis.panelesDisponibles.forEach(panel => {\r\n\t\t\t\t\tfeature = new Feature({\r\n\t\t\t\t\t\ttype: 'panel',\r\n\t\t\t\t\t\tidActivo: panel.numeroSerie,\r\n\t\t\t\t\t\tdata: panel,\r\n\t\t\t\t\t\tdataTooltip: `divPanel${panel.numeroSerie}`,\r\n\t\t\t\t\t\tgeometry: new Point(transform([panel.lng, panel.lat], 'EPSG:4326', 'EPSG:3857'))\r\n\t\t\t\t\t});\r\n\t\t\t\t\tsource.addFeature(feature);\r\n\t\t\t\t});\r\n\t\r\n\t\t\t\tconst CLUSTER = new Cluster({\r\n\t\t\t\t\tdistance: 40,\r\n\t\t\t\t\tminDistance: 20,\r\n\t\t\t\t\tsource: source,\r\n\t\t\t\t});\r\n\t\r\n\t\t\t\tthis.vectorClusterPanelesLayer = new VectorLayer({\r\n\t\t\t\t\tsource: CLUSTER,\r\n\t\t\t\t\tstyle: function (feature) {\r\n\t\t\t\t\t\tconst size = feature.get('features').length;\r\n\t\t\t\t\t\tlet style = styleCache[size];\r\n\t\t\t\t\t\tif (!style) {\r\n\t\t\t\t\t\t\tif (size > 1) {\r\n\t\t\t\t\t\t\t\tstyle = new Style({\r\n\t\t\t\t\t\t\t\t\timage: new Icon({\r\n\t\t\t\t\t\t\t\t\t\tanchor: [0.5, 0.5],\r\n\t\t\t\t\t\t\t\t\t\tanchorXUnits: 'fraction',\r\n\t\t\t\t\t\t\t\t\t\tanchorYUnits: 'fraction',\r\n\t\t\t\t\t\t\t\t\t\tsrc: './assets/image/paneles/Paneles.png'\r\n\t\t\t\t\t\t\t\t\t}),\r\n\t\t\t\t\t\t\t\t\ttext: new Text({\r\n\t\t\t\t\t\t\t\t\t\ttext: size.toString(),\r\n\t\t\t\t\t\t\t\t\t\tstroke: new Stroke({\r\n\t\t\t\t\t\t\t\t\t\t\twidth: 1,\r\n\t\t\t\t\t\t\t\t\t\t\tcolor: '#fff',\r\n\t\t\t\t\t\t\t\t\t\t}),\r\n\t\t\t\t\t\t\t\t\t\tfill: new Fill({\r\n\t\t\t\t\t\t\t\t\t\t\tcolor: '#fff',\r\n\t\t\t\t\t\t\t\t\t\t}),\r\n\t\t\t\t\t\t\t\t\t}),\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tstyleCache[size] = style;\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tstyle = new Style({\r\n\t\t\t\t\t\t\t\t\timage: new Icon({\r\n\t\t\t\t\t\t\t\t\t\tanchor: [0.5, 0.5],\r\n\t\t\t\t\t\t\t\t\t\tanchorXUnits: 'fraction',\r\n\t\t\t\t\t\t\t\t\t\tanchorYUnits: 'fraction',\r\n\t\t\t\t\t\t\t\t\t\tsrc: './assets/image/paneles/Paneles.png'\r\n\t\t\t\t\t\t\t\t\t}),\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tstyleCache[size] = style;\r\n\t\t\t\t\t\t\t}\r\n\t\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\treturn style;\r\n\t\t\t\t\t},\r\n\t\t\t\t});\r\n\t\t\t\tthis.map.addLayer(this.vectorClusterPanelesLayer);\r\n\t\t\t}\r\n\t\t}\r\n\t\r\n\t\tpintarMarcadoresPaneles() {\r\n\t\t\tif (this.panelesDisponibles.length > 0) {\r\n\t\t\t\tthis.vectorPanelesSource.clear();\r\n\t\t\t\tthis.panelesDisponibles.forEach(panel => {\r\n\t\t\t\t\tthis.iconPanelesFeature = new Feature({\r\n\t\t\t\t\t\ttype: 'panel',\r\n\t\t\t\t\t\tidTelefono: panel.descripcion,\r\n\t\t\t\t\t\tdata: panel,\r\n\t\t\t\t\t\tdataTooltip: `divPanel${panel.descripcion}`,\r\n\t\t\t\t\t\tgeometry: new Point(transform([panel.lng, panel.lat], 'EPSG:4326', 'EPSG:3857'))\r\n\t\t\t\t\t});\r\n\t\r\n\t\t\t\t\tthis.iconPanelesStyle = new Style({\r\n\t\t\t\t\t\timage: new Icon({\r\n\t\t\t\t\t\t\tanchor: [0.5, 0.5],\r\n\t\t\t\t\t\t\tanchorXUnits: 'fraction',\r\n\t\t\t\t\t\t\tanchorYUnits: 'fraction',\r\n\t\t\t\t\t\t\tsrc: './assets/media/paneles/Paneles.png'\r\n\t\t\t\t\t\t}),\r\n\t\t\t\t\t\tzIndex: 10\r\n\t\t\t\t\t});\r\n\t\t\t\t\tthis.iconPanelesFeature.setStyle(this.iconPanelesStyle);\r\n\t\t\t\t\tthis.vectorPanelesSource.addFeature(this.iconPanelesFeature);\r\n\t\t\t\t\tconst coordenadasFeature = this.iconPanelesFeature.getGeometry().getCoordinates();\r\n\r\n\t\t\t\t\tthis.crearEtiquetaPanel(panel,coordenadasFeature)\r\n\t\t\t\t})\r\n\t\t\t}\r\n\t\t}\r\n\t\tasync crearEtiquetaPanel(panel, coordenadasFeature) {\r\n\r\n\t\t\tlet divTelefono = `divTelefono${panel.id}`;\r\n\t\t\tlet overlayEtiqueta = this.map.getOverlayById(divTelefono);\r\n\t\r\n\t\t\tlet yaExiste = overlayEtiqueta == null ? false : true;\r\n\t\t\tif (yaExiste && this.sonProductosFiltrados == false) {\r\n\t\t\t\tlet idEstatus = `spanEstado${panel.id}`;\r\n\t\t\t\tlet idIcono = `iGPS${panel.id}`;\r\n\t\t\t\tlet iconGPS = document.getElementById(idIcono);\r\n\t\t\t\tlet idLabel = `labelColor${panel.id}`;\r\n\t\t\t\tlet divLabel = document.getElementById(idLabel);\r\n\t\t\r\n\t\t\t\toverlayEtiqueta.setPosition(coordenadasFeature);\r\n\t\t\t} else {\r\n\t\t\t\tlet etiquetas = document.getElementById('etiquetas');\r\n\t\t\t\tlet div = document.createElement('div');\r\n//\t\t\t\tlet modelo = document.createTextNode(panel.numeroSerie);\r\n\t\t\t\tlet br = document.createElement('div');\r\n\t\r\n\t\t\t\tbr.style.display = 'block';\r\n\t\t\t\tbr.style.width = '100%';\r\n\t\r\n\t\t\t\tlet label = document.createElement('div');\r\n\t\t\t\tlabel.id = `labelColor${panel.id}`;\r\n\t\t\t\tlabel.style.border = '1px solid';\r\n\t\t\t\tlabel.style.lineHeight = '1.6em';\r\n\t\t\t\tlabel.style.marginTop = \"3px\";\r\n\t\t\t\tlabel.style.marginBottom = \"3px\";\r\n\t\t\t\tlabel.style.textAlign = 'center';\r\n\t\r\n\t\t\t\tlet divBateria = document.createElement(\"div\");\r\n\t\t\t\tdivBateria.id = `divBateria${panel.id}`;\r\n\t\r\n\t\t\t\tlet iconE = document.createElement(\"i\");\r\n\t\t\t\ticonE.id = `iGPS${panel.id}`;\r\n\t\r\n\t\t\t\tlet spanBateria = document.createElement(\"span\");\r\n\t\t\t\tspanBateria.id = `spanBateriaTelefono${panel.id}`;\r\n\t\t\t\tlet numeroSerie = document.createTextNode('Modelo: ' + panel.modelo);\r\n\t\t\t\tspanBateria.appendChild(numeroSerie);\r\n\t\r\n\t\t\t\tlet spanGPS = document.createElement(\"span\");\r\n\t\t\t\tspanGPS.id = `spanGPS${panel.modelo}`;\r\n\t\t\t\tlet gps = document.createTextNode(panel.numeroSerie);\r\n\t\t\t\tspanGPS.appendChild(gps);\r\n\t\r\n\t\t\t\tlet referencia = document.getElementById('map-content');\r\n\t\t\t//\tdiv.appendChild(modelo);\r\n\t\t\t\tlabel.appendChild(iconE);\r\n\t\t\t\tlabel.appendChild(spanGPS);\r\n\t\t\t\tdivBateria.appendChild(spanBateria);\r\n\t\r\n\t\r\n\t\t\t\tlabel.style.backgroundColor = 'green';\r\n\t\r\n\t\t\t\t\r\n\t\t\t\tdiv.appendChild(label);\r\n\t\t\t\tdiv.appendChild(divBateria);\r\n\t\t\t\tdiv.classList.add('ol-popupEtiqueta');\r\n\t\r\n\t\t\t\tlet idClass = div.id = `divTelefono${panel.id}`;\r\n\t\t\t\tthis.etiquetasTelefonos.push(idClass);\r\n\t\t\t\tetiquetas.parentNode.insertBefore(div, referencia);\r\n\t\r\n\t\t\t\tlet containerEt = document.getElementById('divTelefono' + panel.id);\r\n\t\t\t\tlet overlay = this.overlayEtiquetas = new Overlay({\r\n\t\t\t\t\tid: `divTelefono${panel.id}`,\r\n\t\t\t\t\tposition: undefined,\r\n\t\t\t\t\telement: containerEt,\r\n\t\t\t\t\tidOverlay: `divTelefono${panel.id}`,\r\n\t\t\t\t});\r\n\t\t\t\tthis.map.addOverlay(overlay);\r\n\t\t\t\tthis.overlayEtiquetas.setPosition(coordenadasFeature);\r\n\t\t\t}\r\n\t\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\r\n\r\n\r\n\t\tpublic ocultarPaneles() {\r\n\t\t\tif (this.panelesDisponibles.length > 0) {\r\n\t\t\t\tthis.vectorPanelesLayer.setVisible(false);\r\n\t\t\t}\r\n\t\t}\r\n\t\r\n\t\tpublic mostrarPaneles() {\r\n\t\t\tif (this.lectorasDisponibles.length > 0) {\r\n\t\t\t\tthis.vectorPanelesLayer.setVisible(true);\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t\r\n\r\n\r\n}\r\n","import { ReporteMedidores } from './../../../_entities/medidores/ReporteMedidores';\r\nimport { MedidorModal } from './../../../_entities/medidores/MedidorModal';\r\nimport { environment } from './../../../../environments/environment';\r\nimport { Medidores } from './../../../_entities/medidores/Medidores';\r\nimport { Observable } from 'rxjs';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { MedidorUltimaTransmision } from './../../../_entities/medidores/medidorUltimaTransmision';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class MedidoresService {\r\n\r\n constructor(private http: HttpClient) { }\r\n\r\n obtenerMedidores(): Observable {\r\n return this.http.get(environment.API_SECURITY + '/api/Medidores');\r\n }\r\n\r\n getMedidores() {\r\n return this.http.get(environment.API_SECURITY + '/api/Medidores');\r\n }\r\n\r\n obtenerMedidor(imei): Observable {\r\n return this.http.get(environment.API_SECURITY + '/api/Medidores/medidorModal/' + imei);\r\n }\r\n\r\n obtenerReportePosicionesMedidores(medidorImei, fechaInicio, fechaFinal): Observable {\r\n return this.http.get(`${environment.API_SECURITY}/api/Medidores/${medidorImei}/reporte-historico?fechaInicio=${fechaInicio}&fechaFinal=${fechaFinal}`);\r\n }\r\n\r\n obtenerUltimoMedidor(): Observable {\r\n return this.http.get(environment.API_SECURITY + '/api/Medidores/ultimamedidor');\r\n }\r\n}\r\n","import { environment } from './../../../../environments/environment';\r\nimport { Observable } from 'rxjs';\r\nimport { Micromedidor, MicromedidorUltimaTransmision } from './../../../_entities/micromedidores/micromedidor';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\n\r\n@Injectable({\r\n\tprovidedIn: 'root'\r\n})\r\nexport class MicromedidoresService {\r\n\r\n\tconstructor(private http: HttpClient) { }\r\n\r\n\tobtenerMicromedidores(): Observable {\r\n\t\treturn this.http.get(environment.API_SECURITY + '/api/Micromedidores');\r\n\t}\r\n\r\n\tobtenerMicromedidorId(idMicromedidor: Number): Observable {\r\n\t\treturn this.http.get(environment.API_SECURITY + '/api/Micromedidores/' + idMicromedidor);\r\n\t}\r\n\r\n\tobtenerMicromedidoresUltimaTransmision(): Observable {\r\n\t\treturn this.http.get(environment.API_SECURITY + '/api/Micromedidores/Lecturas');\r\n\t}\r\n\r\n\tobtenerHistoricoMediciones(numeroSerie, fechaInicio, fechaFin): Observable {\r\n\t\treturn this.http.get(environment.API_SECURITY + `/api/Micromedidores/Historico/${numeroSerie}/${fechaInicio}/${fechaFin}`);\r\n\t}\r\n\r\n\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { VehiculoPasoPunto } from './../../../_entities/paso-punto/vehiculo-paso-punto';\r\nimport { environment } from './../../../../environments/environment';\r\nimport { PuntoInteres } from './../../../_entities/puntos-interes/puntoInteres';\r\nimport { ProductosPunto } from './../../../_entities/paso-punto/productos-punto';\r\n\r\n@Injectable({\r\n\tprovidedIn: 'root'\r\n})\r\nexport class PasoPuntoService {\r\n\r\n\tconstructor(private http: HttpClient) { }\r\n\r\n\tobtenerPasoPunto(idPunto, fechaInicio, fechaFinal): Observable {\r\n\t\treturn this.http.get(`${environment.API_SECURITY}/api/PuntosInteres/${idPunto}/paso-por-punto`, {\r\n\t\t\tparams: {\r\n\t\t\t\tfechaInicio,\r\n\t\t\t\tfechaFinal\r\n\t\t\t}\r\n\t\t})\r\n\t}\r\n\r\n\tobtenerPasoPuntoVehiculo(formPuntos, fechaInicio, fechaFinal): Observable {\r\n\t\treturn this.http.post(`${environment.API_SECURITY}/api/PuntosInteres/paso-por-punto`, formPuntos, {\r\n\t\t\tparams: {\r\n\t\t\t\tfechaInicio,\r\n\t\t\t\tfechaFinal\r\n\t\t\t}\r\n\t\t})\r\n\t}\r\n\r\n\tobtenerPasoPuntoVehiculos(ids, fechaInicio, fechaFinal): Observable {\r\n\t\treturn this.http.post(`${environment.API_SECURITY}/api/PuntosInteres/paso-por-punto`, ids, {\r\n\t\t\tparams: {\r\n\t\t\t\tfechaInicio,\r\n\t\t\t\tfechaFinal\r\n\t\t\t}\r\n\t\t})\r\n\t}\r\n\r\n\tobtenerPuntosInteres(): Observable {\r\n\t\treturn this.http.get(`${environment.API_SECURITY}/api/puntosinteres`);\r\n\t}\r\n\r\n\tobtenerProductos(): Observable{\r\n\t\treturn this.http.get(environment.API_SECURITY + '/api/PuntosInteres/ListaInstalacionPuntos');\r\n\t}\r\n\r\n\r\n}\r\n","import { ActivoUltimaTransmision, ActivoHistoricoPosiciones } from './../../../_entities/activos/activo';\r\nimport { Observable } from 'rxjs';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { environment } from './../../../../environments/environment';\r\nimport { Portatil, PortatilHistoricoPosiciones, PortatilUltimaTransmision } from '../../../_entities/Portatiles/Portatil';\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class PortatilesService {\r\n\r\n constructor(private http: HttpClient) { }\r\n\r\n obtenerPortatiles(): Observable{\r\n return this.http.get(environment.API_SECURITY + '/api/Portatiles');\r\n }\r\n\r\n obtenerUltimaTransmisionPortatiles(): Observable{\r\n return this.http.get(environment.API_SECURITY + '/api/Portatiles/UltimaActivo')\r\n }\r\n\r\n obtenerReportePosiciones(imei: number, fechaInicio, fechaFinal): Observable{\r\n return this.http.get(environment.API_SECURITY + '/api/Portatiles/' + imei + '/reporte-historico', {\r\n params: {\r\n fechaInicio,\r\n fechaFinal\r\n }\r\n })\r\n }\r\n}\r\n","import { Observable } from 'rxjs';\r\nimport { environment } from './../../../../environments/environment';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class PuntosInteresService {\r\n\r\n constructor(private http: HttpClient) { }\r\n\r\n getPuntos() {\r\n return this.http.get(`${environment.API_SECURITY}/api/puntosinteres`);\r\n }\r\n\r\n\r\n postPinteres(form: any[]): Observable{\r\n return this.http.post(`${environment.API_SECURITY}/api/puntosinteres`,form);\r\n }\r\n\r\n\r\n deletePunto(id: any){\r\n return this.http.delete(`${environment.API_SECURITY}/api/puntosinteres/${id}`);\r\n }\r\n\r\n updatedPunto(id: any, form) {\r\n\treturn this.http.put(`${environment.API_SECURITY}/api/puntosinteres/${id}`,form);\r\n\r\n }\r\n\r\n getPutoByID(id: any){\r\n return this.http.get(`${environment.API_SECURITY}/api/puntosinteres/${id}`);\r\n }\r\n}\r\n","import { Observable } from 'rxjs';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { environment } from './../../../../environments/environment';\r\nimport { Telefono, TelefonoHistoricoPosiciones, TelefonoUltimaTransmision } from './../../../_entities/telefonos/telefono';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class TelefonosService {\r\n\r\n constructor(private http: HttpClient) { }\r\n\r\n obtenerTelefonos(): Observable{\r\n return this.http.get(environment.API_SECURITY + '/api/Telefonos');\r\n }\r\n\r\n obtenerUltimaTransmisionTelefonos(): Observable {\r\n return this.http.get(environment.API_SECURITY + '/api/Telefonos/UltimaTelefonos');\r\n }\r\n\r\n obtenerReportePosiciones(imei: number, fechaInicio, fechaFinal): Observable {\r\n return this.http.get(environment.API_SECURITY + '/api/Telefonos/' + imei + '/reporte-historico', {\r\n params: {\r\n fechaInicio,\r\n fechaFinal\r\n }\r\n });\r\n }\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { Terminal, UltimaLectura } from './../../../_entities/terminal/terminal';\r\nimport { environment } from './../../../../environments/environment';\r\n\r\n@Injectable({\r\n\tprovidedIn: 'root'\r\n})\r\nexport class TerminalService {\r\n\r\n\tconstructor(private http: HttpClient) { }\r\n\r\n\tgetTerminales(): Observable {\r\n\t\treturn this.http.get(`${environment.API_SECURITY}/api/HandheldUHF`);\r\n\t}\r\n\r\n\tgetHistoricRecords(id: string, fechaInicio: string, fechaFin: string): Observable {\r\n\t\treturn this.http.get(`${environment.API_SECURITY}/api/HandheldUHF/Historico`, {\r\n\t\t\tparams: {\r\n\t\t\t\tid,\r\n\t\t\t\tfechaInicio,\r\n\t\t\t\tfechaFin\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n}\r\n","import { environment } from './../../../../environments/environment';\r\nimport { Autos, AutosCamara } from './../../../_entities/autos/Autos';\r\nimport { Observable } from 'rxjs';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { AuthService } from '../../auth/auth.service';\r\nimport { ReporteCombustibleHistorico } from '../../../_entities/vehiculos/ReporteCombustibleHistorico';\r\n\r\n@Injectable({\r\n\tprovidedIn: 'root'\r\n})\r\nexport class VehiculosService {\r\n\r\n\tconstructor(private http: HttpClient,\r\n\t\tprivate auth: AuthService) { }\r\n\r\n\tobtenerAutos(): Observable {\r\n\t/*\tlet user = this.auth.getUser();\r\n\t\tlet token = '0'\r\n\t\tif(user.permisos.includes('140')) {\r\n\t\t\ttoken = token1\r\n\t\t}*/\r\n\r\n\t\treturn this.http.get(`${environment.API_SECURITY}/api/vehiculo/UltimaVehiculos`);\r\n\t}\r\n\r\n\tobtenerAlertas(): Observable {\r\n\t\t/*let user = this.auth.getUser();\r\n\t\tlet token = '0'\r\n\t\tif(user.permisos.includes('140')) {\r\n\t\t\ttoken = token1\r\n\t\t}*/\r\n\t\treturn this.http.get(`${environment.API_SECURITY}/api/vehiculo`\r\n\t\t);\r\n\t}\r\n\r\n\tobtenerAutosCamara( pageNum, pageCount, beginTime, endTime, deviceID): Observable {\r\n\t\treturn this.http.get(environment.API_SECURITY + '/api/Howen/device', {\r\n\t\t\tparams: {\r\n\t\t\t\tpageNum,\r\n\t\t\t\tpageCount,\r\n\t\t\t\tbeginTime,\r\n\t\t\t\tendTime,\r\n\t\t\t\tdeviceID\r\n\t\t\t}\r\n\t\t})\r\n\t}\r\n\r\n\tobtenerUltimaPosicionAutosCamara(pageNum, pageCount, keyword = '') {\r\n\t\treturn this.http.get(environment.API_SECURITY + '/api/Howen/UltimaPosicion', {\r\n\t\t\tparams: {\r\n\t\t\t\tpageNum,\r\n\t\t\t\tpageCount,\r\n\t\t\t\tkeyword,\r\n\t\t\t}\r\n\t\t})\r\n\t}\r\n\r\n\tgetReporteHistorico(idVehiculo: number, fechaInicio, fechaFinal): Observable {\r\n\t\treturn this.http.get(`${environment.API_SECURITY}/api/vehiculo/${idVehiculo}/reporte-historico-web?fechaInicio=${fechaInicio}&fechaFinal=${fechaFinal}`);\r\n\t}\r\n\r\n\tgetNotificaciones () {\r\n\t\treturn this.http.get(environment.API_SECURITY + '/api/notificaciones');\r\n\t}\r\n\r\n\tgetReporteHistoricoCombustible(idVehiculo:number,fechaInicio,fechaFinal):Observable{\r\n\t\treturn this.http.get(`${environment.API_SECURITY}/api/vehiculo/${idVehiculo}/reporte-historico-combustible?fechaInicio=${fechaInicio}&fechaFinal=${fechaFinal}`);\r\n\r\n\t}\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { FormGenerico } from '../../../_entities/FormGenerico';\r\nimport { Observable } from 'rxjs';\r\nimport { environment } from '../../../../environments/environment';\r\nimport { DispositivosDisponibles } from '../../../_entities/Administracion/DispositivosDisponibles';\r\nimport { PanelCiudadano } from '../../../_entities/panelCiudadano/panelCiudadano';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class PanelAdministracionService {\r\n\r\n constructor(private http:HttpClient) { }\r\n \r\n\tobtenerMarcas(): Observable {\r\n\t\treturn this.http.get(`${environment.API_SECURITY}/api/PanelCiudadano/getMarcas`);\r\n\t}\r\n\r\n\tobtenerModelos(idMarca:number): Observable {\r\n\t\treturn this.http.get(`${environment.API_SECURITY}/api/PanelCiudadano/getModelos/`+idMarca);\r\n\t}\r\n\r\n\teliminarPanel(id:number) {\r\n\t\treturn this.http.delete(`${environment.API_SECURITY}/api/PanelCiudadano/EliminarPanel/`+id);\r\n\t}\r\n\r\n\tagregarPanel(formData){\r\n\t\treturn this.http.post(`${environment.API_SECURITY}/api/PanelCiudadano`,formData)\r\n\t}\r\n\tactualizarPanel(id,formData){\r\n\t\treturn this.http.put(`${environment.API_SECURITY}/api/PanelCiudadano/`+id,formData)\r\n\t}\r\n\r\n\t\r\n /**Obtener Imeis */\r\n obtenerDispositivosDisponibles(): Observable {\r\n\t\treturn this.http.get(environment.API_SECURITY + '/api/dispositivos/getbyestatus/1');\r\n\t }\r\n\t \r\n\r\n\t obtenerPaneles(): Observable {\r\n\t\treturn this.http.get(`${environment.API_SECURITY}/api/PanelCiudadano`);\r\n\t }\r\n\r\n\t obtenerPanel(id): Observable {\r\n\t\treturn this.http.get(`${environment.API_SECURITY}/api/PanelCiudadano/`+id);\r\n\t }\r\n\r\n\t obtenerUltimaPaneles(): Observable {\r\n\t\treturn this.http.get(`${environment.API_SECURITY}/api/PanelCiudadano/PanelMapa`);\r\n\t }\r\n\r\n\r\n\t obtenerPanelesAlarmados(): Observable {\r\n\t\treturn this.http.get(`${environment.API_SECURITY}/api/PanelCiudadano/PanelAlarmado`);\r\n\t }\r\n\r\n\t obtenerPanelesHistorico(id,fechaInicio,fechaFinal): Observable {\r\n\t\treturn this.http.get(`${environment.API_SECURITY}/api/PanelCiudadano/Historico`,{params:{\r\n\t\t\tid:id,\r\n\t\t\tfechaInicio:fechaInicio,\r\n\t\t\tfechaFinal:fechaFinal\r\n\t\t}});\r\n\t }\r\n\r\n\t apagarAlarmaPanel(devIndex):Observable {\r\n\t\treturn this.http.get(`${environment.API_SECURITY}/api/PanelCiudadano/apagarAlarma/`+devIndex);\r\n\t }\r\n}\r\n","// Angular\r\nimport { Component, Inject, OnInit, ChangeDetectionStrategy } from '@angular/core';\r\nimport { MAT_SNACK_BAR_DATA } from '@angular/material';\r\n// RxJS\r\nimport { delay } from 'rxjs/operators';\r\nimport { of } from 'rxjs';\r\n\r\n@Component({\r\n\tselector: 'kt-action-natification',\r\n\ttemplateUrl: './action-notification.component.html',\r\n\tchangeDetection: ChangeDetectionStrategy.Default\r\n\r\n})\r\nexport class ActionNotificationComponent implements OnInit {\r\n\t/**\r\n\t * Component constructor\r\n\t *\r\n\t * @param data: any\r\n\t */\r\n\tconstructor(@Inject(MAT_SNACK_BAR_DATA) public data: any) { }\r\n\r\n\t/**\r\n\t * @ Lifecycle sequences => https://angular.io/guide/lifecycle-hooks\r\n\t */\r\n\r\n\t/**\r\n\t * On init\r\n\t */\r\n\tngOnInit() {\r\n\t\tif (!this.data.showUndoButton || (this.data.undoButtonDuration >= this.data.duration)) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tthis.delayForUndoButton(this.data.undoButtonDuration).subscribe(() => {\r\n\t\t\tthis.data.showUndoButton = false;\r\n\t\t});\r\n\t}\r\n\r\n\t/*\r\n\t *\tReturns delay\r\n\t *\r\n\t * @param timeToDelay: any\r\n\t */\r\n\tdelayForUndoButton(timeToDelay) {\r\n\t\treturn of('').pipe(delay(timeToDelay));\r\n\t}\r\n\r\n\t/**\r\n\t * Dismiss with Action\r\n\t */\r\n\tonDismissWithAction() {\r\n\t\tthis.data.snackBar.dismiss();\r\n\t}\r\n\r\n\t/**\r\n\t * Dismiss\r\n\t */\r\n \tpublic onDismiss() {\r\n\t\tthis.data.snackBar.dismiss();\r\n\t}\r\n}\r\n","// Angular\r\nimport { Component, OnInit, Input, Output, EventEmitter } from '@angular/core';\r\n\r\n@Component({\r\n\tselector: 'kt-alert',\r\n\ttemplateUrl: './alert.component.html'\r\n})\r\nexport class AlertComponent implements OnInit {\r\n\t// Public properties\r\n\t@Input() type: 'primary | accent | warn';\r\n\t@Input() duration: number = 0;\r\n\t@Input() showCloseButton: boolean = true;\r\n\t@Output() close = new EventEmitter();\r\n\talertShowing: boolean = true;\r\n\r\n\t/**\r\n\t * @ Lifecycle sequences => https://angular.io/guide/lifecycle-hooks\r\n\t */\r\n\r\n\t/**\r\n\t * On init\r\n\t */\r\n\tngOnInit() {\r\n\t\tif (this.duration === 0) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tsetTimeout(() => {\r\n\t\t\tthis.closeAlert();\r\n\t\t}, this.duration);\r\n\t}\r\n\r\n\t/**\r\n\t * close alert\r\n\t */\r\n\tcloseAlert() {\r\n\t\tthis.close.emit();\r\n\t}\r\n}\r\n","// Angular\r\nimport { Component, Inject, OnInit } from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material';\r\n\r\n@Component({\r\n\tselector: 'kt-delete-entity-dialog',\r\n\ttemplateUrl: './delete-entity-dialog.component.html'\r\n})\r\nexport class DeleteEntityDialogComponent implements OnInit {\r\n\t// Public properties\r\n\tviewLoading: boolean = false;\r\n\r\n\t/**\r\n\t * Component constructor\r\n\t *\r\n\t * @param dialogRef: MatDialogRef\r\n\t * @param data: any\r\n\t */\r\n\tconstructor(\r\n\t\tpublic dialogRef: MatDialogRef,\r\n\t\t@Inject(MAT_DIALOG_DATA) public data: any\r\n\t) { }\r\n\r\n\t/**\r\n\t * @ Lifecycle sequences => https://angular.io/guide/lifecycle-hooks\r\n\t */\r\n\r\n\t/**\r\n\t * On init\r\n\t */\r\n\tngOnInit() {\r\n\t}\r\n\r\n\t/**\r\n\t * Close dialog with false result\r\n\t */\r\n\tonNoClick(): void {\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n\r\n\t/**\r\n\t * Close dialog with true result\r\n\t */\r\n\tonYesClick(): void {\r\n\t\t/* Server loading imitation. Remove this */\r\n\t\tthis.viewLoading = true;\r\n\t\tsetTimeout(() => {\r\n\t\t\tthis.dialogRef.close(true); // Keep only this row\r\n\t\t}, 2500);\r\n\t}\r\n}\r\n","// Angular\r\nimport { Component, Inject } from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material';\r\n\r\n@Component({\r\n\tselector: 'kt-fetch-entity-dialog',\r\n\ttemplateUrl: './fetch-entity-dialog.component.html'\r\n})\r\nexport class FetchEntityDialogComponent {\r\n\t/**\r\n\t * Component constructor\r\n\t *\r\n\t * @param dialogRef: MatDialogRef,\r\n\t * @param data: any\r\n\t */\r\n\tconstructor(\r\n\t\tpublic dialogRef: MatDialogRef,\r\n\t\t@Inject(MAT_DIALOG_DATA) public data: any\r\n\t) {}\r\n\r\n\t/**\r\n\t * Close dialog with false result\r\n\t */\r\n\tonNoClick(): void {\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n\r\n\t/** UI */\r\n\t/**\r\n\t * Returns CSS Class Name by status type\r\n\t * @param status: number\r\n\t */\r\n\tgetItemCssClassByStatus(status: number = 0) {\r\n\t\tswitch (status) {\r\n\t\t\tcase 0: return 'success';\r\n\t\t\tcase 1: return 'metal';\r\n\t\t\tcase 2: return 'danger';\r\n\t\t\tdefault: return 'success';\r\n\t\t}\r\n\t}\r\n}\r\n","// Components\r\nexport { UpdateStatusDialogComponent } from './update-status-dialog/update-status-dialog.component';\r\nexport { FetchEntityDialogComponent } from './fetch-entity-dialog/fetch-entity-dialog.component';\r\nexport { DeleteEntityDialogComponent } from './delete-entity-dialog/delete-entity-dialog.component';\r\nexport { AlertComponent } from './alert/alert.component';\r\nexport { ActionNotificationComponent } from './action-natification/action-notification.component';\r\n","// Angular\r\nimport { Component, Inject, OnInit } from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material';\r\nimport { FormControl } from '@angular/forms';\r\n\r\n@Component({\r\n\tselector: 'kt-update-status-dialog',\r\n\ttemplateUrl: './update-status-dialog.component.html'\r\n})\r\nexport class UpdateStatusDialogComponent implements OnInit {\r\n\tselectedStatusForUpdate = new FormControl('');\r\n\tviewLoading: boolean = false;\r\n\tloadingAfterSubmit: boolean = false;\r\n\tconstructor(\r\n\t\tpublic dialogRef: MatDialogRef,\r\n\t\t@Inject(MAT_DIALOG_DATA) public data: any) {}\r\n\r\n\tngOnInit() {\r\n\t\t/* Server loading imitation. Remove this */\r\n\t\tthis.viewLoading = true;\r\n\t\tsetTimeout(() => {\r\n\t\t\tthis.viewLoading = false;\r\n\t\t}, 2500);\r\n\t}\r\n\r\n\tonNoClick(): void {\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n\r\n\tupdateStatus() {\r\n\t\tif (this.selectedStatusForUpdate.value.length === 0) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\t/* Server loading imitation. Remove this */\r\n\t\tthis.viewLoading = true;\r\n\t\tthis.loadingAfterSubmit = true;\r\n\t\tsetTimeout(() => {\r\n\t\t\tthis.dialogRef.close(this.selectedStatusForUpdate.value); // Keep only this row\r\n\t\t}, 2500);\r\n\t}\r\n}\r\n","// Angular\r\nimport { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { MatProgressBarModule, MatProgressSpinnerModule } from '@angular/material';\r\n\r\n// Module\r\nimport { CoreModule } from '../../../../../core/core.module';\r\n// Portlet\r\nimport { PortletComponent } from './portlet.component';\r\nimport { PortletHeaderComponent } from './portlet-header.component';\r\nimport { PortletBodyComponent } from './portlet-body.component';\r\nimport { PortletFooterComponent } from './portlet-footer.component';\r\n\r\n@NgModule({\r\n\timports: [\r\n\t\tCommonModule,\r\n\t\tCoreModule,\r\n\t\tMatProgressSpinnerModule,\r\n\t\tMatProgressBarModule\r\n\t],\r\n\tdeclarations: [\r\n\t\tPortletComponent,\r\n\t\tPortletHeaderComponent,\r\n\t\tPortletBodyComponent,\r\n\t\tPortletFooterComponent,\r\n\t],\r\n\texports: [\r\n\t\tPortletComponent,\r\n\t\tPortletHeaderComponent,\r\n\t\tPortletBodyComponent,\r\n\t\tPortletFooterComponent,\r\n\t]\r\n})\r\nexport class PortletModule {\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { MatButtonModule, MatIconModule, MatPaginatorModule, MatProgressSpinnerModule, MatSortModule, MatTableModule, } from '@angular/material';\r\nimport { CoreModule } from '../../../../core/core.module';\r\nimport { PerfectScrollbarModule } from 'ngx-perfect-scrollbar';\r\n// Datatable\r\nimport { DataTableComponent } from './general/data-table/data-table.component';\r\n// General widgets\r\nimport { Widget1Component } from './widget1/widget1.component';\r\nimport { Widget4Component } from './widget4/widget4.component';\r\nimport { Widget5Component } from './widget5/widget5.component';\r\nimport { Widget12Component } from './widget12/widget12.component';\r\nimport { Widget14Component } from './widget14/widget14.component';\r\nimport { Widget26Component } from './widget26/widget26.component';\r\nimport { Timeline2Component } from './timeline2/timeline2.component';\r\n\r\n@NgModule({\r\n\tdeclarations: [\r\n\t\tDataTableComponent,\r\n\t\t// Widgets\r\n\t\tWidget1Component,\r\n\t\tWidget4Component,\r\n\t\tWidget5Component,\r\n\t\tWidget12Component,\r\n\t\tWidget14Component,\r\n\t\tWidget26Component,\r\n\t\tTimeline2Component,\r\n\t],\r\n\texports: [\r\n\t\tDataTableComponent,\r\n\t\t// Widgets\r\n\t\tWidget1Component,\r\n\t\tWidget4Component,\r\n\t\tWidget5Component,\r\n\t\tWidget12Component,\r\n\t\tWidget14Component,\r\n\t\tWidget26Component,\r\n\t\tTimeline2Component,\r\n\t],\r\n\timports: [\r\n\t\tCommonModule,\r\n\t\tPerfectScrollbarModule,\r\n\t\tMatTableModule,\r\n\t\tCoreModule,\r\n\t\tMatIconModule,\r\n\t\tMatButtonModule,\r\n\t\tMatProgressSpinnerModule,\r\n\t\tMatPaginatorModule,\r\n\t\tMatSortModule,\r\n\t]\r\n})\r\nexport class WidgetModule {\r\n}\r\n","\r\n
\r\n\t{{loaderMessage}}\r\n\t\"Logo\"\r\n\t\r\n
\r\n","// Angular\r\nimport { Component, ElementRef, OnInit, ViewChild } from '@angular/core';\r\n// Object-Path\r\nimport * as objectPath from 'object-path';\r\n// Layout\r\nimport { LayoutConfigService, SplashScreenService } from '../../../../core/_base/layout';\r\n\r\n@Component({\r\n\tselector: 'kt-splash-screen',\r\n\ttemplateUrl: './splash-screen.component.html',\r\n\tstyleUrls: ['./splash-screen.component.scss']\r\n})\r\nexport class SplashScreenComponent implements OnInit {\r\n\t// Public proprties\r\n\tloaderLogo: string;\r\n\tloaderType: string;\r\n\tloaderMessage: string;\r\n\r\n\t@ViewChild('splashScreen', {static: true}) splashScreen: ElementRef;\r\n\r\n\t/**\r\n\t * Component constructor\r\n\t *\r\n\t * @param el: ElementRef\r\n\t * @param layoutConfigService: LayoutConfigService\r\n\t * @param splashScreenService: SplachScreenService\r\n\t */\r\n\tconstructor(\r\n\t\tprivate el: ElementRef,\r\n\t\tprivate layoutConfigService: LayoutConfigService,\r\n\t\tprivate splashScreenService: SplashScreenService) {\r\n\t}\r\n\r\n\t/**\r\n\t * @ Lifecycle sequences => https://angular.io/guide/lifecycle-hooks\r\n\t */\r\n\r\n\t/**\r\n\t * On init\r\n\t */\r\n\tngOnInit() {\r\n\t\t// init splash screen, see loader option in layout.config.ts\r\n\t\tconst loaderConfig = this.layoutConfigService.getConfig('loader');\r\n\t\tthis.loaderLogo = objectPath.get(loaderConfig, 'logo');\r\n\t\tthis.loaderType = objectPath.get(loaderConfig, 'type');\r\n\t\tthis.loaderMessage = objectPath.get(loaderConfig, 'message');\r\n\r\n\t\tthis.splashScreenService.init(this.splashScreen);\r\n\t}\r\n}\r\n","import { MonitoreoComponent } from './../monitoreo/monitoreo.component';\r\nimport { UsuariosModule } from './../usuarios/usuarios.module';\r\nimport { TelefonosModule } from './../telefonos/telefonos.module';\r\nimport { MicromedidoresModule } from './../micromedidores/micromedidores.module';\r\nimport { MedidoresModule } from './../medidores/medidores.module';\r\nimport { VehiculosModule } from './../vehiculos/vehiculos.module';\r\nimport { ClientesModule } from './../clientes/clientes.module';\r\nimport { DispositivosModule } from './../dispositivos/dispositivos.module';\r\nimport { SimsModule } from './../sims/sims.module';\r\nimport { TableroModule } from './../tablero/tablero.module';\r\nimport { MonitoreoModule } from './../monitoreo/monitoreo.module';\r\nimport { NgxPermissionsModule } from 'ngx-permissions';\r\n// Angular\r\nimport { RouterModule } from '@angular/router';\r\nimport { NgModule } from '@angular/core';\r\nimport { CommonModule, DatePipe } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport {\r\n\tMatAutocompleteModule,\r\n\tMatButtonModule,\r\n\tMatCardModule,\r\n\tMatCheckboxModule,\r\n\tMatDatepickerModule,\r\n\tMatDialogModule,\r\n\tMatIconModule,\r\n\tMatInputModule,\r\n\tMatMenuModule,\r\n\tMatNativeDateModule,\r\n\tMatPaginatorModule,\r\n\tMatProgressBarModule,\r\n\tMatProgressSpinnerModule,\r\n\tMatRadioModule,\r\n\tMatSelectModule,\r\n\tMatSnackBarModule,\r\n\tMatSortModule,\r\n\tMatTableModule,\r\n\tMatTabsModule,\r\n\tMatTooltipModule,\r\n\tMatDividerModule\r\n} from '@angular/material';\r\n// NgBootstrap\r\nimport { NgbDropdownModule, NgbTabsetModule, NgbTooltipModule } from '@ng-bootstrap/ng-bootstrap';\r\n// Perfect Scrollbar\r\nimport { PerfectScrollbarModule } from 'ngx-perfect-scrollbar';\r\n// Core module\r\nimport { CoreModule } from '../../core/core.module';\r\n// CRUD Partials\r\nimport {\r\n\tActionNotificationComponent,\r\n\tAlertComponent,\r\n\tDeleteEntityDialogComponent,\r\n\tFetchEntityDialogComponent,\r\n\tUpdateStatusDialogComponent\r\n} from './content/crud';\r\n// Layout partials\r\nimport {\r\n\tContextMenu2Component,\r\n\tContextMenuComponent,\r\n\tLanguageSelectorComponent,\r\n\tNotificationComponent,\r\n\tQuickActionComponent,\r\n\tQuickPanelComponent,\r\n\tScrollTopComponent,\r\n\tSearchDefaultComponent,\r\n\tSearchDropdownComponent,\r\n\tSearchResultComponent,\r\n\tSplashScreenComponent,\r\n\tStickyToolbarComponent,\r\n\tSubheader1Component,\r\n\tSubheader2Component,\r\n\tSubheader3Component,\r\n\tSubheader4Component,\r\n\tSubheader5Component,\r\n\tSubheaderSearchComponent,\r\n\tUserProfile2Component,\r\n\tUserProfile3Component,\r\n\tUserProfileComponent,\r\n} from './layout';\r\n// General\r\nimport { NoticeComponent } from './content/general/notice/notice.component';\r\nimport { PortletModule } from './content/general/portlet/portlet.module';\r\n// Errpr\r\nimport { ErrorComponent } from './content/general/error/error.component';\r\n// Extra module\r\nimport { WidgetModule } from './content/widgets/widget.module';\r\n// SVG inline\r\nimport { InlineSVGModule } from 'ng-inline-svg';\r\nimport { CartComponent } from './layout/topbar/cart/cart.component';\r\nimport { DxButtonModule, DxPopupModule, DxDataGridModule, DxCheckBoxModule, DxSelectBoxModule, DxTreeListModule, DxFormModule, DxDateBoxModule } from 'devextreme-angular';\r\n//import { GeocercasComponent } from '../monitoreo/geocercas/geocercas.component';\r\n//import { ReportePosicionesComponent } from '../monitoreo/vehiculos/reporte-posiciones/reporte-posiciones.component';\r\n//import { DxiItemModule } from 'devextreme-angular/ui/nested/item-dxi';\r\n//import { GuardarGeocercasComponent } from '../monitoreo/guardar-geocercas/guardar-geocercas.component';\r\n//import { AdministracionModule } from '../administracion/administracion.module';\r\nimport { CdkStepperModule } from '@angular/cdk/stepper';\r\nimport { CdkTableModule } from '@angular/cdk/table';\r\nimport { CdkTreeModule } from '@angular/cdk/tree';\r\nimport {DragDropModule} from '@angular/cdk/drag-drop';\r\nimport { InformacionVehiculoComponent } from '../monitoreo/components/popups/vehiculos/informacion-vehiculo/informacion-vehiculo.component';\r\nimport { ConsolaModule } from '../consola/consola.module';\r\nimport { BrowserModule } from '@angular/platform-browser';\r\n//import { ModalPositionCache } from '../monitoreo/popus/street-view/cache-popup/modal-position.cache';\r\n//import { MicromedidoresComponent } from '../monitoreo/micromedidores/micromedidores.component';\r\n@NgModule({\r\n\tdeclarations: [\r\n\t\tScrollTopComponent,\r\n\t\tNoticeComponent,\r\n\t\tActionNotificationComponent,\r\n\t\tDeleteEntityDialogComponent,\r\n\t\tFetchEntityDialogComponent,\r\n\t\tUpdateStatusDialogComponent,\r\n\t\tAlertComponent,\r\n\t\tContextMenu2Component,\r\n\t\tContextMenuComponent,\r\n\t\tQuickPanelComponent,\r\n\t\tScrollTopComponent,\r\n\t\tSearchResultComponent,\r\n\t\tSplashScreenComponent,\r\n\t\tStickyToolbarComponent,\r\n\t\tSubheader1Component,\r\n\t\tSubheader2Component,\r\n\t\tSubheader3Component,\r\n\t\tSubheader4Component,\r\n\t\tSubheader5Component,\r\n\t\tSubheaderSearchComponent,\r\n\t\tLanguageSelectorComponent,\r\n\t\tNotificationComponent,\r\n\t\tQuickActionComponent,\r\n\t\tSearchDefaultComponent,\r\n\t\tSearchDropdownComponent,\r\n\t\tUserProfileComponent,\r\n\t\tUserProfile2Component,\r\n\t\tUserProfile3Component,\r\n\t\tCartComponent,\r\n\t\tErrorComponent\r\n\t],\r\n\texports: [\r\n\t\tWidgetModule,\r\n\t\tPortletModule,\r\n\r\n\t\tScrollTopComponent,\r\n\t\tNoticeComponent,\r\n\t\tActionNotificationComponent,\r\n\t\tDeleteEntityDialogComponent,\r\n\t\tFetchEntityDialogComponent,\r\n\t\tUpdateStatusDialogComponent,\r\n\t\tAlertComponent,\r\n\r\n\t\t// topbar components\r\n\t\tContextMenu2Component,\r\n\t\tContextMenuComponent,\r\n\t\tQuickPanelComponent,\r\n\t\tScrollTopComponent,\r\n\t\tSearchResultComponent,\r\n\t\tSplashScreenComponent,\r\n\t\tStickyToolbarComponent,\r\n\t\tSubheader1Component,\r\n\t\tSubheader2Component,\r\n\t\tSubheader3Component,\r\n\t\tSubheader4Component,\r\n\t\tSubheader5Component,\r\n\t\tSubheaderSearchComponent,\r\n\t\tLanguageSelectorComponent,\r\n\t\tNotificationComponent,\r\n\t\tQuickActionComponent,\r\n\t\tSearchDefaultComponent,\r\n\t\tSearchDropdownComponent,\r\n\t\tUserProfileComponent,\r\n\t\tUserProfile2Component,\r\n\t\tUserProfile3Component,\r\n\t\tCartComponent,\r\n\t\tErrorComponent,\r\n\t],\r\n\timports: [\r\n\t\tCommonModule,\r\n\t\tRouterModule,\r\n\t\tFormsModule,\r\n\t\tReactiveFormsModule,\r\n\t\tPerfectScrollbarModule,\r\n\t\tInlineSVGModule,\r\n\t\tCoreModule,\r\n\t\tPortletModule,\r\n\t\tWidgetModule,\r\n\t\tDxButtonModule,\r\n\t\t// angular material modules\r\n\t\tMatButtonModule,\r\n\t\tMatMenuModule,\r\n\t\tMatSelectModule,\r\n\t\tMatInputModule,\r\n\t\tMatTableModule,\r\n\t\tMatAutocompleteModule,\r\n\t\tMatRadioModule,\r\n\t\tMatIconModule,\r\n\t\tMatNativeDateModule,\r\n\t\tMatProgressBarModule,\r\n\t\tMatDatepickerModule,\r\n\t\tMatCardModule,\r\n\t\tMatPaginatorModule,\r\n\t\tMatSortModule,\r\n\t\tMatCheckboxModule,\r\n\t\tMatProgressSpinnerModule,\r\n\t\tMatSnackBarModule,\r\n\t\tMatTabsModule,\r\n\t\tMatTooltipModule,\r\n\t\tMatDialogModule,\r\n\t\t// ng-bootstrap modules\r\n\t\tNgbDropdownModule,\r\n\t\tNgbTabsetModule,\r\n\t\tNgbTooltipModule,\r\n\t\tDxPopupModule,\r\n\t\tDxDataGridModule,\r\n\t\tMatDividerModule,\r\n\t\tDxSelectBoxModule,\r\n\t\tDxCheckBoxModule,\r\n\t\tDxTreeListModule,\r\n\t\tDxFormModule,\r\n\t\tDxButtonModule,\r\n\t\tFormsModule,\r\n\t\t//DxiItemModule,\r\n\t\tDxDateBoxModule,\r\n\t\tTableroModule,\r\n\t\tMonitoreoModule,\r\n\t\tSimsModule,\r\n\t\tDispositivosModule,\r\n\t\tConsolaModule,\r\n\t\t//ClientesModule,\r\n\t\t//VehiculosModule,\r\n\t\t//MedidoresModule,\r\n\t\t//MicromedidoresModule,\r\n\t\t//TelefonosModule,\r\n\t\t//UsuariosModule,\r\n\t\tCdkStepperModule,\r\n CdkTableModule,\r\n CdkTreeModule,\r\n\t\tDragDropModule,\r\n\t\tNgxPermissionsModule\r\n\r\n\r\n\t],\r\n\tentryComponents:[\r\n\t],\r\n\tproviders:[DatePipe, MonitoreoComponent]\r\n})\r\nexport class PartialsModule {\r\n}\r\n","\r\n\r\n\r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport * as FileSaver from 'file-saver';\r\nimport * as XLSX from 'xlsx';\r\n\r\nconst EXCEL_EXTENSION = '.xlsx';\r\nconst EXCEL_TYPE = 'application/vnd.ms-excel;charset=UTF-8';\r\n\r\n@Component({\r\n\tselector: 'kt-boton-exportar-tabla',\r\n\ttemplateUrl: './boton-exportar-tabla.component.html',\r\n\tstyleUrls: ['./boton-exportar-tabla.component.scss']\r\n})\r\nexport class BotonExportarTablaComponent implements OnInit {\r\n\t@Input() tipoBoton: string;\r\n\t@Input() nombreArchivo: string;\r\n\t@Input() style: { [key: string]: string; };\r\n\t@Input() datos: any[];\r\n\t@Input() buttonDisabled: boolean;\r\n\r\n\tconstructor() { }\r\n\r\n\tngOnInit() { }\r\n\r\n\tpublic exportarExcel(): void {\r\n\t\tlet hojaCalculo: XLSX.WorkSheet = XLSX.utils.json_to_sheet(this.datos);\r\n\t\tconst libroTrabajo: XLSX.WorkBook = { Sheets: { 'data': hojaCalculo }, SheetNames: ['data'] };\r\n\t\tconst excelBuffer: any = XLSX.write(libroTrabajo, { bookType: 'xlsx', type: 'array' });\r\n\t\tthis.guardarExcel(excelBuffer, this.nombreArchivo);\r\n\t}\r\n\r\n\tprivate guardarExcel(buffer: any, nombreArchivo: string): void {\r\n\t\tconst data: Blob = new Blob([buffer], { type: EXCEL_TYPE });\r\n\t\tFileSaver.saveAs(data, nombreArchivo + EXCEL_EXTENSION, { autoBOM: true });\r\n\t}\r\n\r\n}\r\n","import { NgModule, CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { BotonExportarTablaComponent } from './components/boton-exportar-tabla/boton-exportar-tabla.component';\r\n\r\n\r\n\r\n@NgModule({\r\n\tdeclarations: [BotonExportarTablaComponent],\r\n\timports: [\r\n\t\tCommonModule,\r\n\t],\r\n\texports: [\r\n\t\tBotonExportarTablaComponent\r\n\t],\r\n})\r\nexport class ReutilizablesModule { }\r\n","
\r\n\t
\r\n\t\t
\r\n\t\t\t

 {{titulo}}

\r\n\t\t
\r\n\t
\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t \r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\tCampo requerido\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t \r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\tCampo requerido\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t \r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\tCampo requerido\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t \r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\tCampo requerido\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\r\n\t\t\t\t
\r\n\t\t\t\t\t \r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\tCampo requerido\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t\t\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t \r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n","import { ToastrService } from 'ngx-toastr';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { SimService } from './../../../services/sim.service';\r\nimport { ClienteVM } from './../../../../../_entities/clientes/ClienteVM';\r\nimport { FormGroup, FormBuilder, Validators } from '@angular/forms';\r\nimport { PlanTarifarioI } from './../../../../../_entities/sims/PlanTarifario';\r\nimport { TelefoniaI } from './../../../../../_entities/sims/Telefonia';\r\nimport { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n\tselector: 'kt-alta-sim',\r\n\ttemplateUrl: './alta-sim.component.html',\r\n\tstyleUrls: ['./alta-sim.component.scss']\r\n})\r\nexport class AltaSimComponent implements OnInit {\r\n\tpublic telefonias: TelefoniaI[];\r\n\tpublic planesTarifarios: PlanTarifarioI[];\r\n\tpublic clientesRegistros: ClienteVM[];\r\n\tpublic simsForm: FormGroup;\r\n\tpublic loading: boolean = false;\r\n\tpublic idSim: any;\r\n\tpublic titulo: string = 'Agregar Sim'\r\n\r\n\tconstructor(private simServices: SimService,\r\n\t\tprivate route: ActivatedRoute,\r\n\t\tprivate fb: FormBuilder,\r\n\t\tprivate router: Router,\r\n\t\tprivate toastService: ToastrService) { }\r\n\r\n\tngOnInit() {\r\n\t\tthis.initForm();\r\n\t\tthis.route.params.subscribe(\r\n\t\t\tparam => {\r\n\t\t\t\tthis.idSim = param[\"idSim\"];\r\n\t\t\t\tif (this.idSim) {\r\n\t\t\t\t\tthis.titulo = 'Editar Sim'\r\n\t\t\t\t\tthis.obtenerSim(this.idSim);\r\n\t\t\t\t\tthis.simsForm.controls.sim.clearValidators();\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t);\r\n\t\tthis.obtenerClientes();\r\n\t\tthis.obtenerTelefonia();\r\n\t\tthis.obtenerPlanesTarifarios();\r\n\t}\r\n\r\n\tinitForm() {\r\n\t\tthis.simsForm = this.fb.group({\r\n\t\t\tsim: ['', Validators.required],\r\n\t\t\tnumeroTelefonico: ['', Validators.compose([Validators.required])],\r\n\t\t\tidCliente: ['', Validators.compose([Validators.required])],\r\n\t\t\tidTelefonia: ['', Validators.compose([Validators.required])],\r\n\t\t\tidPlan: ['', Validators.compose([Validators.required])]\r\n\t\t});\r\n\t}\r\n\r\n\tobtenerClientes() {\r\n\t\tthis.simServices.obtenerClientes(true).subscribe(\r\n\t\t\t(response) => {\r\n\t\t\t\tthis.clientesRegistros = response;\r\n\t\t\t}, (error) => {\r\n\t\t\t\tconsole.log('Error al Obtener los clientes');\r\n\t\t\t}\r\n\t\t);\r\n\t}\r\n\r\n\tobtenerSim(idSim) {\r\n\t\tthis.simServices.obtenerSimId(idSim).subscribe(\r\n\t\t\t(response) => {\r\n\t\t\t\tthis.simsForm.setValue({\r\n\t\t\t\t\tsim: response.sim,\r\n\t\t\t\t\tnumeroTelefonico: response.numeroTelefonico,\r\n\t\t\t\t\tidCliente: response.idCliente,\r\n\t\t\t\t\tidTelefonia: response.idTelefonia,\r\n\t\t\t\t\tidPlan: response.idPLan\r\n\t\t\t\t});\r\n\t\t\t}, (error) => {\r\n\t\t\t\tthis.toastService.error('Error al intentar obtener los datos del sim');\r\n\t\t\t});\r\n\t}\r\n\r\n\tobtenerTelefonia() {\r\n\t\tthis.simServices.obtenerTelefonias().subscribe(\r\n\t\t\t(response: TelefoniaI[]) => {\r\n\t\t\t\tthis.telefonias = response;\r\n\t\t\t}\r\n\t\t)\r\n\t}\r\n\r\n\tobtenerPlanesTarifarios() {\r\n\t\tthis.simServices.obtenerPlanesTarifarios().subscribe(\r\n\t\t\t(response: PlanTarifarioI[]) => {\r\n\t\t\t\tthis.planesTarifarios = response;\r\n\t\t\t}\r\n\t\t)\r\n\t}\r\n\r\n\tonSubmit() {\r\n\t\tif (this.idSim) this.actualizarSim();\r\n\t\telse this.agregarSim();\r\n\t}\r\n\r\n\tonCancel() {\r\n\t\tthis.router.navigateByUrl('/home/administracion/sims/sim');\r\n\t}\r\n\r\n\tagregarSim() {\r\n\t\tthis.loading = true;\r\n\t\tthis.simServices.guardarSim(this.simsForm.value).subscribe(\r\n\t\t\t() => {\r\n\t\t\t\tthis.loading = false;\r\n\t\t\t\tthis.simsForm.reset();\r\n\t\t\t\tthis.toastService.success('Sim guardado correctamente', 'Bien hecho');\r\n\t\t\t\tthis.router.navigateByUrl('/home/administracion/sims/sim');\r\n\t\t\t}, () => {\r\n\t\t\t\tthis.toastService.error('Error al guardar el sim');\r\n\t\t\t\tthis.loading = false;\r\n\t\t\t});\r\n\t}\r\n\r\n\tactualizarSim() {\r\n\t\tthis.simServices.actualizarSim(this.simsForm.value, this.idSim).subscribe(\r\n\t\t\t() => {\r\n\t\t\t\tthis.toastService.success('Se guardaron los datos correctamente', 'Bien hecho');\r\n\t\t\t\tthis.router.navigateByUrl('/home/administracion/sims/sim');\r\n\t\t\t}, () => {\r\n\t\t\t\tthis.toastService.error('Error al guardar el sim');\r\n\t\t\t}\r\n\t\t);\r\n\t}\r\n\r\n\r\n\r\n\r\n}\r\n","
\r\n\t
\r\n\t\t
\r\n\t\t\t

 Sim

\r\n\t\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\r\n\t\t
\r\n\t
\r\n\t\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t

{{p.data.estatus}}

\r\n\t\t\t\t\t\t\t\t

{{p.data.estatus}}

\r\n\t\t\t\t\t\t\t\t

{{p.data.estatus}}

\r\n\t\t\t\t\t\t\t\t

{{p.data.estatus}}

\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n","import { Permiso } from './../../../../_entities/Enums/permiso.enum';\r\nimport { SimService } from './../../services/sim.service';\r\nimport { SimVM } from './../../../../_entities/sims/SimVM';\r\nimport { Component, OnInit, ViewChild, ElementRef, Output, EventEmitter } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport Swal from 'sweetalert2';\r\nimport { DxDataGridComponent } from 'devextreme-angular';\r\n\r\n@Component({\r\n\tselector: 'kt-sim',\r\n\ttemplateUrl: './sim.component.html',\r\n\tstyleUrls: ['./sim.component.scss']\r\n})\r\n\r\nexport class SimComponent implements OnInit {\r\n\t@ViewChild('gridContainer', { static: false }) gridContainer: ElementRef;\r\n\t@ViewChild(DxDataGridComponent, { static: false }) dataGrid: DxDataGridComponent;\r\n\r\n\tpublic datosReporte = [];\r\n\t isDisabled: boolean = true;\r\n\r\n\tpublic simsRegistros: SimVM[];\r\n\tpublic mensajeAgrupar: string = \"Arrastre un encabezado de columna aquí para agrupar por esa columna\"\r\n\r\n\tpublic showFilterRow: boolean;\r\n\tpublic showHeaderFilter: boolean;\r\n\tpublic showNavigationButtons: boolean;\r\n\tpublic showPageSizeSelector: boolean;\r\n\tpublic currentFilter: any;\r\n\r\n\tpublic permisoConsultarSims: string;\r\n\tpublic permisoAgregarSim: string;\r\n\tpublic permisoActualizarSim: string;\r\n\tpublic permisoEliminarSim: string;\r\n\r\n\tconstructor(private simService: SimService,\r\n\t\tprivate router: Router,\r\n\t\tprivate toastService: ToastrService) {\r\n\t\tthis.showFilterRow = true;\r\n\t\tthis.showHeaderFilter = true;\r\n\t\tthis.showNavigationButtons = true;\r\n\t\tthis.showPageSizeSelector = true;\r\n\t}\r\n\r\n\tngOnInit() {\r\n\t\tthis.obtenerSims();\r\n\t\tthis.obtenerPermisos();\r\n\t}\r\n\r\n\tobtenerSims() {\r\n\t\tthis.simService.obtenerSims().subscribe(\r\n\t\t\t(response: SimVM[]) => {\r\n\t\t\t\t//this.simsRegistros = res;\r\n\t\t\t\tthis.simsRegistros = response.map((x) => {\r\n\t\t\t\t\tif (x.nombreTelefonia == null || x.nombreTelefonia == '') {\r\n\t\t\t\t\t\tx.nombreTelefonia = 'Sin datos'\r\n\t\t\t\t\t}\r\n\t\t\t\t\tif (x.nombrePlanTarifario == null || x.nombrePlanTarifario == '') {\r\n\t\t\t\t\t\tx.nombrePlanTarifario = 'Sin datos'\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tlet form = {\r\n\t\t\t\t\t\t'Sim': x.sim.toString(),\r\n\t\t\t\t\t\t'Número Telefónico': x.numeroTelefonico,\r\n\t\t\t\t\t\t'Telefonía': x.nombreTelefonia,\r\n\t\t\t\t\t\t'Plan Tarifario': x.nombrePlanTarifario,\r\n\t\t\t\t\t\t'Estatus': this.obtenerEstatus(x.estatus)\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tthis.datosReporte.push(form);\r\n\r\n\t\t\t\t\treturn {\r\n\t\t\t\t\t\tid: x.id,\r\n\t\t\t\t\t\tsim: x.sim,\r\n\t\t\t\t\t\tnumeroTelefonico: x.numeroTelefonico,\r\n\t\t\t\t\t\testatus: this.obtenerEstatus(x.estatus),\r\n\t\t\t\t\t\tidCliente: x.idCliente,\r\n\t\t\t\t\t\tnombreCliente: x.nombreCliente,\r\n\t\t\t\t\t\tidPLan: x.idPLan,\r\n\t\t\t\t\t\tnombrePlanTarifario: x.nombrePlanTarifario,\r\n\t\t\t\t\t\tidTelefonia: x.idTelefonia,\r\n\t\t\t\t\t\tnombreTelefonia: x.nombreTelefonia\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t\tif(this.datosReporte.length > 0){\r\n\t\t\t\t\tthis.isDisabled = false;\r\n\t\t\t\t}\r\n\t\t\t}, (error) => {\r\n\t\t\t\tthis.toastService.error('ocurrio un error al obtener los sims');\r\n\t\t\t});\r\n\t}\r\n\r\n\teditarSim(simId) {\r\n\t\tthis.router.navigateByUrl('/home/administracion/sims/sim/editar/' + simId);\r\n\t}\r\n\r\n\teliminarSim(simId, sim) {\r\n\t\tSwal.fire({\r\n\t\t\ttitle: 'Eliminar',\r\n\t\t\ttext: `¿Está seguro que desea eliminar el sim ${sim}?`,\r\n\t\t\ticon: 'warning',\r\n\t\t\tshowCancelButton: true,\r\n\t\t\tconfirmButtonColor: '#3085d6',\r\n\t\t\tcancelButtonColor: '#d33',\r\n\t\t\tconfirmButtonText: 'Confirmar',\r\n\t\t\tcancelButtonText: \"Cancelar\"\r\n\t\t}).then(\r\n\t\t\t(result) => {\r\n\t\t\t\tif (result.value) {\r\n\t\t\t\t\tthis.simService.eliminarSims(simId).subscribe(\r\n\t\t\t\t\t\t(response) => {\r\n\t\t\t\t\t\t\tSwal.fire(\r\n\t\t\t\t\t\t\t\t'Eliminado!',\r\n\t\t\t\t\t\t\t\t'El sim ha sido eliminado.',\r\n\t\t\t\t\t\t\t\t'success'\r\n\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t\tthis.obtenerSims();\r\n\t\t\t\t\t\t}, (error) => {\r\n\t\t\t\t\t\t\tSwal.fire(\r\n\t\t\t\t\t\t\t\t'Ops!',\r\n\t\t\t\t\t\t\t\t'Error al intentar eliminar el sim.',\r\n\t\t\t\t\t\t\t\t'error'\r\n\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t}\r\n\r\n\r\n\tobtenerEstatus(estatus) {\r\n\t\tlet estado = '';\r\n\t\tswitch (estatus) {\r\n\t\t\tcase 0:\r\n\t\t\t\testado = 'Baja';\r\n\t\t\t\tbreak;\r\n\t\t\tcase 1:\r\n\t\t\t\testado = 'Disponible';\r\n\t\t\t\tbreak;\r\n\t\t\tcase 2:\r\n\t\t\t\testado = 'Asignado';\r\n\t\t\t\tbreak;\r\n\t\t\tcase 3:\r\n\t\t\t\testado = 'Revisión';\r\n\t\t\t\tbreak;\r\n\t\t}\r\n\t\treturn estado;\r\n\t}\r\n\r\n\tpublic get Permiso() {\r\n\t\treturn Permiso;\r\n\t}\r\n\r\n\tobtenerPermisos() {\r\n\t\tthis.permisoConsultarSims = Permiso.ConsultarSims;\r\n\t\tthis.permisoAgregarSim = Permiso.AgregarSim;\r\n\t\tthis.permisoActualizarSim = Permiso.ActualizarSim;\r\n\t\tthis.permisoEliminarSim = Permiso.EliminarSim;\r\n\t}\r\n\r\n\tpublic exportarExcel(){\r\n\t\tconsole.log(\"2 - Pretending to do stuff for two seconds\");\r\n\r\n\t\t//this.enviarDatos.emit(this.simsRegistros)\r\n\t}\r\n\r\n}\r\n","import { ClienteVM } from './../../../_entities/clientes/ClienteVM';\r\nimport { PlanTarifarioI } from './../../../_entities/sims/PlanTarifario';\r\nimport { TelefoniaI } from './../../../_entities/sims/Telefonia';\r\nimport { Observable } from 'rxjs';\r\nimport { environment } from './../../../../environments/environment';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { SimVM } from './../../../_entities/sims/SimVM';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SimService {\r\n\r\n constructor(private http: HttpClient) { }\r\n\r\n obtenerSims(): Observable{\r\n return this.http.get(`${environment.API_SECURITY}/api/sims`);\r\n }\r\n\r\n obtenerSimsDisponibles(): Observable{\r\n return this.http.get(`${environment.API_SECURITY}/api/sims/disponibles`);\r\n }\r\n\r\n obtenerSimId(simId): Observable {\r\n return this.http.get(`${environment.API_SECURITY}/api/sims/${simId}`);\r\n }\r\n\r\n obtenerTelefonias(): Observable {\r\n return this.http.get(environment.API_SECURITY + '/api/Sims/telefonias');\r\n}\r\n\r\n obtenerPlanesTarifarios(): Observable {\r\n return this.http.get(environment.API_SECURITY + '/api/Sims/planestarifarios');\r\n }\r\n\r\n obtenerClientes(incluirClientePropietario: boolean = false): Observable {\r\n return this.http.get(`${environment.API_SECURITY}/api/Reportes/ClientesReportes`);\r\n }\r\n\r\n guardarSim(form): Observable{\r\n return this.http.post(`${environment.API_SECURITY}/api/Sims`, form);\r\n }\r\n\r\n actualizarSim(form, simId): Observable{\r\n return this.http.put(`${environment.API_SECURITY}/api/sims/${simId}`, form);\r\n }\r\n\r\n eliminarSims(simId): Observable {\r\n return this.http.delete(`${environment.API_SECURITY}/api/sims/${simId}`);\r\n }\r\n}\r\n","import { SimComponent } from './components/sim/sim.component';\r\nimport { AltaSimComponent } from './components/sim/alta-sim/alta-sim.component';\r\nimport { NgModule } from '@angular/core';\r\nimport { Routes, RouterModule } from '@angular/router';\r\n\r\nimport { SimsComponent } from './sims.component';\r\n\r\nconst routes: Routes = [\r\n {\r\n path: '',\r\n children: [\r\n {\r\n path: 'sim',\r\n component: SimComponent\r\n },\r\n {\r\n path: 'sim/alta',\r\n component: AltaSimComponent\r\n },\r\n {\r\n path: 'sim/editar/:idSim',\r\n component: AltaSimComponent\r\n }\r\n ]\r\n }\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes)],\r\n exports: [RouterModule]\r\n})\r\nexport class SimsRoutingModule { }\r\n","import { GoogleChartsModule } from 'angular-google-charts';\r\nimport { MatSlideToggleModule } from '@angular/material/slide-toggle';\r\nimport { MatListModule } from '@angular/material/list';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { MatCheckboxModule } from '@angular/material/checkbox';\r\nimport { DxTemplateModule, DxButtonModule, DxDataGridModule, DxCheckBoxModule, DxSelectBoxModule, DxTreeListModule, DxFormModule, DxPopoverModule, DxPopupModule } from 'devextreme-angular';\r\nimport { NgxPermissionsModule } from 'ngx-permissions';\r\nimport { MatDividerModule, MatInputModule, MatFormFieldModule, MatButtonModule, MatOptionModule, MatSelectModule } from '@angular/material';\r\nimport { NgModule, CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SimsRoutingModule } from './sims-routing.module';\r\nimport { MatIconModule } from '@angular/material/icon';\r\n\r\n\r\nimport { SimsComponent } from './sims.component';\r\nimport { SimComponent } from './components/sim/sim.component';\r\nimport { AltaSimComponent } from './components/sim/alta-sim/alta-sim.component';\r\nimport { BotonExportarTablaComponent } from '../reutilizables/components/boton-exportar-tabla/boton-exportar-tabla.component';\r\nimport { ReutilizablesModule } from '../reutilizables/reutilizables.module';\r\n\r\n\r\n@NgModule({\r\n\tdeclarations: [\r\n\t\tSimsComponent,\r\n\t\tSimComponent,\r\n\t\tAltaSimComponent,\r\n\t\t//BotonExportarTablaComponent\r\n\t],\r\n\timports: [\r\n\t\tCommonModule,\r\n\t\tSimsRoutingModule,\r\n\t\tMatDividerModule,\r\n\t\tMatCheckboxModule,\r\n\t\tFormsModule,\r\n\t\tMatInputModule,\r\n\t\tMatFormFieldModule,\r\n\t\tMatButtonModule,\r\n\t\tMatOptionModule,\r\n\t\tMatSelectModule,\r\n\t\tMatListModule,\r\n\t\tMatSlideToggleModule,\r\n\t\tMatIconModule,\r\n\t\tDxTemplateModule,\r\n\t\tDxButtonModule,\r\n\t\tDxDataGridModule,\r\n\t\tDxCheckBoxModule,\r\n\t\tDxSelectBoxModule,\r\n\t\tDxTreeListModule,\r\n\t\tDxFormModule,\r\n\t\tDxPopoverModule,\r\n\t\tDxPopupModule,\r\n\t\t//ReutilizablesModule,\r\n\t\tReactiveFormsModule,\r\n\t\tGoogleChartsModule.forRoot(),\r\n\t\tNgxPermissionsModule,\r\n\t\tReutilizablesModule,\r\n\r\n\t],\r\n\texports: [\r\n\t\tFormsModule,\r\n\t\tReactiveFormsModule\r\n\t]\r\n\r\n})\r\nexport class SimsModule { }\r\n","
\r\n\t
\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\tVehículos en Movimiento\r\n\t\t\t
\r\n\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t{{vehiculosEnMovimiento}}
\r\n\t\t\t\t\t\tVehículos\r\n\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n\r\n\t
\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\tTotal de Vehículos\r\n\t\t\t
\r\n\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t{{totalVehiculos}}
\r\n\t\t\t\t\t\tVehículos\r\n\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n\r\n\t
\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\tSalidas de Geocerca\r\n\t\t\t
\r\n\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t{{vehiculosFueraGeocerca}}
\r\n\t\t\t\t\t\tVehículos\r\n\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n\r\n\t
\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t Vehículos Alertados\r\n\t\t\t
\r\n\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t{{totalAlertados}}
\r\n\t\t\t\t\t\tAlertados\r\n\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n\t\t
\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t Saldo Total\r\n\t\t\t
\r\n\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t

$ {{saldo}}


\r\n\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\r\n
\r\n\r\n\r\n\t
\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\tEstado de Movimiento\r\n\t\t\t
\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t
\r\n\t
\r\n\r\n\t
\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\tAlertas Reportadas\r\n\t\t\t
\r\n\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t \r\n\t\t\t\t\t\t \r\n\t\t\t\t\t\t \r\n\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n\r\n\t
\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\tExceso de Velocidad\r\n\t\t\t
\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t{{annotation.data.economico}}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\tVelocidad:\r\n\t\t\t\t\t\t\t{{annotation.data.velocidad}}\r\n\t\t\t\t\t\t\tkm/h\r\n\r\n\t\t\t\t\t\t\tMarca:\r\n\t\t\t\t\t\t\t{{annotation.data.marca}}\r\n\r\n\t\t\t\t\t\t\tModelo:\r\n\t\t\t\t\t\t\t{{annotation.data.modelo}}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t
\r\n\t
\r\n\r\n\t
\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t App Posición\r\n\t\t\t
\r\n\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t{{totalTelefonos}}
\r\n\t\t\t\t\t\tTeléfonos\r\n\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n\r\n\t
\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t Macromedidores\r\n\t\t\t
\r\n\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t{{totalMedidores}}
\r\n\t\t\t\t\t\tMacromedidores\r\n\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n\r\n\r\n\t
\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t Activos\r\n\t\t\t
\r\n\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t{{totalActivos}}
\r\n\t\t\t\t\t\tActivos\r\n\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n\r\n\t
\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t Micromedidores\r\n\t\t\t
\r\n\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t{{totalMicromedidores}}
\r\n\t\t\t\t\t\tMicromedidores\r\n\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n\r\n\t
\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t Últimas Mediciones de Macromedidores\r\n\t\t\t
\r\n\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t{{cellData.value | date: 'yyyy-MM-dd h:mma'}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t{{cellData.value | number: '1.4-4'}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t{{cellData.value | number: '1.4-4'}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n\r\n\t
\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t Últimas Mediciones de Micromedidores\r\n\t\t\t
\r\n\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t{{cellData.value | date: 'yyyy-MM-dd h:mma'}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t{{cellData.value | number: '1.4-4'}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n\t
\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t Portátiles\r\n\t\t\t
\r\n\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t{{totalPortatiles}}
\r\n\t\t\t\t\t\tPortátiles\r\n\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n\r\n
\r\n\r\n\r\n\r\n
\r\n\t
\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\tVehículos en Movimiento\r\n\t\t\t
\r\n\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t{{vehiculosEnMovimiento}}
\r\n\t\t\t\t\t\tVehículos\r\n\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n\t
\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\tTotal de Vehículos\r\n\t\t\t
\r\n\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t{{totalVehiculos}}
\r\n\t\t\t\t\t\tVehículos\r\n\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n\t
\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\tSalidas de Geocerca\r\n\t\t\t
\r\n\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t{{vehiculosFueraGeocerca}}
\r\n\t\t\t\t\t\tVehículos\r\n\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n\t
\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t Velocidad Alertados\r\n\t\t\t
\r\n\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t{{totalAlertados}}
\r\n\t\t\t\t\t\tAlertados\r\n\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n\t
\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\tEstado en Movimiento\r\n\t\t\t
\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t
\r\n\t
\r\n\t
\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\tAlertas\r\n\t\t\t
\r\n\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t \r\n\t\t\t\t\t\t \r\n\t\t\t\t\t\t \r\n\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n","import { Permiso } from './../../../../_entities/Enums/permiso.enum';\r\nimport { ReporteMedidores } from './../../../../_entities/medidores/ReporteMedidores';\r\nimport { MicromedidorUltimaTransmision } from './../../../../_entities/micromedidores/micromedidor';\r\nimport { Medidores } from './../../../../_entities/medidores/Medidores';\r\nimport { DatePipe, PercentPipe } from '@angular/common';\r\nimport { TablasService } from './../../services/tablas.service';\r\nimport { Component, OnInit, ElementRef, ViewChild, AfterContentInit, AfterViewInit } from '@angular/core';\r\nimport { Alertado } from './../../../../_entities/consola/alertados';\r\nimport { Activo } from './../../../../_entities/activos/activo';\r\nimport { Telefono } from './../../../../_entities/telefonos/telefono';\r\nimport { AuthService } from './../../../../views/auth/auth.service';\r\nimport { BrowserModule } from '@angular/platform-browser';\r\nimport { GraficasHw } from '../../../../_entities/tablero/graficas-hw';\r\nimport { Router } from '@angular/router';\r\nimport { MapaService } from './../../../../views/monitoreo/services/mapa.service';\r\nimport { MatDialog, MatDialogConfig } from '@angular/material';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { Portatil } from '../../../../_entities/Portatiles/Portatil';\r\n\r\n@Component({\r\n\tselector: 'kt-tablas',\r\n\ttemplateUrl: './tablas.component.html',\r\n\tstyleUrls: ['./tablas.component.scss']\r\n})\r\nexport class TablasComponent implements OnInit, AfterContentInit {\r\n\tpublic permisoVisualizarVehiculo: string;\r\n\tpublic permisoVisualizarMedidores: string;\r\n\tpublic permisoVisualizarMicromedidores: string;\r\n\tpublic permisoVisualizarActivos: string;\r\n\tpublic permisoVisualizarTelefonos: string;\r\n\tpublic permisoVisualizarSemaforo: string;\r\n\tpublic permisoVisualizarPortatiles: string;\r\n\r\n\tpublic permisoAlertaSalidaGeocerca: string;\r\n\tpublic permisoMostrarAlertasMDVR: string;\r\n\tpublic permisoSaldoPasajero:string;\r\n\tpublic totalVehiculos: number = 0;\r\n\tpublic vehiculosEnMovimiento: number = 0;\r\n\tpublic vehiculosFueraGeocerca: number = 0;\r\n\tpublic totalMedidores: number = 0;\r\n\tpublic totalMicromedidores: number = 0;\r\n\tpublic totalPortatiles:number=0;\r\n\tpublic totalAlertados: number = 0;\r\n\tpublic totalActivos: number = 0;\r\n\tpublic totalTelefonos: number = 0;\r\n\tpublic saldo:number=0;\r\n\tpublic esHW: boolean = false;\r\n\r\n\tpublic graficas: any = [];\r\n\r\n\tpublic ultimimasDatosDataSource: any;\r\n\tpublic ultimasMicromedidores: any;\r\n\r\n\tpublic user;\r\n\tpublic hwUser;\r\n\r\n\tpublic datosPastel;\r\n\tpublic datosBarras;\r\n\r\n\tpublic mostrarBarras: boolean = false;\r\n\tpublic mostrarPastel: boolean = false;\r\n\r\n\tpublic interval = null;\r\n\r\n\talertasHW: any[] = [];\r\n\tvalueField: string = 'dia';\r\n\tslideshowDelay = 2000;\r\n\r\n\r\n\r\n\tpublic totalAlertasParadas: GraficasHw;\r\n\tpublic totalAlertasVideoPuertaAbierta: GraficasHw;\r\n\tpublic totalVideosPuertaAbierta: GraficasHw;\r\n\tpublic alertasExcesoVelocidadHW: GraficasHw;\r\n\r\n\tpublic longtabs = [\r\n\t\t{ titulo: \"Gasto\" },\r\n\t\t{ titulo: \"Totalizador\" }\r\n\t];\r\n\r\n\tconstructor(private tablasService: TablasService, private datePipe: DatePipe,\r\n\t\tprivate authService: AuthService, private pipe: PercentPipe, private router: Router,\r\n\t\tprivate mapaService: MapaService, private dialog: MatDialog, private toastService: ToastrService) {\r\n\t}\r\n\r\n\tngOnInit() {\r\n\t\tthis.hwUser = this.authService.getHWUser();\r\n\t\tthis.user = this.authService.getUser();\r\n\t\tif (this.user.idCliente == 39) {\r\n\t\t\tthis.esHW = true;\r\n\t\t}\r\n\r\n\t\tthis.obtenerTotalVehiculosActivos();\r\n\t\tthis.obtenerTotalVehiculosMovimiento();\r\n\t\tthis.obtenerTotalVehiculosFueraGeocerca();\r\n\t\tthis.obtenerTotalAlertados();\r\n\t\tthis.obtenerUltimosDatosMedidor();\r\n\t\tthis.obtenerMedidores();\r\n\t\tthis.obtenerMicromedidores();\r\n\t\tthis.obtenerActivos();\r\n\t\tthis.obtenerTelefonos();\r\n\t\tthis.obtenerGraficaPastel();\r\n\t\tthis.obtenerGraficaBarras();\r\n\t\tthis.obtenerAlertasHowen();\r\n\t\tthis.graficaAlertasParadas();\r\n\t\tthis.graficaGeneralVideosPuertaAbierta();\r\n\t\tthis.graficaAlertasVideoPuertaAierta();\r\n\t\tthis.excesoVelocidadHW();\r\n\t\tthis.obtenerTotalVehiculosMovimientoHowen()\r\n\t\tthis.obtenerPermisos();\r\n\t\tthis.obtenerSaldoPasajeros();\r\n\t\tthis.obtenerPortatiles();\r\n\t}\r\n\r\n\tngAfterContentInit() {\r\n\t\tthis.interval = setInterval(async () => {\r\n\t\t\tthis.alertasHW = [];\r\n\t\t\t//this.obtenerTotalVehiculosActivos();\r\n\t\t\t//this.obtenerTotalVehiculosMovimiento();\r\n\t\t\t//this.obtenerTotalVehiculosFueraGeocerca();\r\n\t\t\t//this.obtenerTotalAlertados();\r\n\t\t\t//this.obtenerUltimosDatosMedidor();\r\n\t\t\t//this.obtenerMedidores();\r\n\t\t\t//this.obtenerMicromedidores();\r\n\t\t\t//this.obtenerActivos();\r\n\t\t\t//this.obtenerTelefonos();\r\n\t\t\tthis.obtenerGraficaPastel();\r\n\t\t\tthis.obtenerGraficaBarras();\r\n\t\t\tthis.obtenerAlertasHowen();\r\n\t\t\tthis.graficaAlertasParadas();\r\n\t\t\tthis.graficaGeneralVideosPuertaAbierta();\r\n\t\t\tthis.graficaAlertasVideoPuertaAierta();\r\n\t\t\tthis.excesoVelocidadHW();\r\n\t\t\tthis.obtenerSaldoPasajeros();\r\n\t\t\t//this.obtenerPermisos();\r\n\t\t}, 30000);\r\n\t}\r\n\r\n\tngOnDestroy(): void {\r\n\t\tclearInterval(this.interval);\r\n\t}\r\n\r\n\tirMonitoreo(alerta) {\r\n\t\tthis.mapaService.abrirModalContador(alerta);\r\n\t\tthis.router.navigateByUrl('/home/monitoreo/mapa');\r\n\t}\r\n\r\n\talertasHeader() {\r\n\t\tif (this.vehiculosFueraGeocerca > 0) {\r\n\t\t\tthis.mapaService.abrirModalHeader();\r\n\t\t\tthis.router.navigateByUrl('/home/monitoreo/mapa');\r\n\t\t} else {\r\n\t\t\tthis.toastService.info('No hay vehículos fuera de geocerca');\r\n\t\t}\r\n\t}\r\n\r\n\tsemaforo(e) {\r\n\t\tlet argument = e.target.initialArgument;\r\n\r\n\t\tswitch (argument) {\r\n\t\t\tcase 'Autos detenidos':\r\n\t\t\t\tthis.irMonitoreo('gris');\r\n\t\t\t\tbreak;\r\n\t\t\tcase 'En movimiento':\r\n\t\t\t\tthis.irMonitoreo('verde');\r\n\t\t\t\tbreak;\r\n\t\t\tcase 'Detenidos mas de 90 min':\r\n\t\t\t\tthis.irMonitoreo('rojo');\r\n\t\t\t\tbreak;\r\n\t\t\tcase 'Detenidos mas de 60 min':\r\n\t\t\t\tthis.irMonitoreo('naranja');\r\n\t\t\t\tbreak;\r\n\t\t\tcase 'Detenidos mas de 30 min':\r\n\t\t\t\tthis.irMonitoreo('amarillo');\r\n\t\t\t\tbreak;\r\n\t\t\tcase 'Exceso de velocidad':\r\n\t\t\t\tthis.irMonitoreo('azul');\r\n\t\t\t\tbreak;\r\n\t\t\tdefault:\r\n\t\t\t\tbreak;\r\n\t\t}\r\n\r\n\t}\r\n\r\n\tmedidores() {\r\n\t\tthis.mapaService.abrirModalmedidores();\r\n\t\tthis.router.navigateByUrl('/home/monitoreo/mapa');\r\n\r\n\t}\r\n\r\n\tmicromedidores() {\r\n\t\tthis.mapaService.abrirModalmicromedidores();\r\n\t\tthis.router.navigateByUrl('/home/monitoreo/mapa');\r\n\r\n\t}\r\n\r\n\tactivos() {\r\n\t\tthis.mapaService.abrirModalactivos();\r\n\t\tthis.router.navigateByUrl('/home/monitoreo/mapa');\r\n\r\n\t}\r\n\r\n\tportatiles(){\r\n\t\t\tthis.mapaService.abrirModalPortatiles();\r\n\t\t\tthis.router.navigateByUrl('/home/monitoreo/mapa');\r\n\t\r\n\t}\r\n\r\n\ttelefonos() {\r\n\t\tthis.mapaService.abrirModaltelefonos();\r\n\t\tthis.router.navigateByUrl('/home/monitoreo/mapa');\r\n\r\n\t}\r\n\r\n\tirAdministracionVehiculos() {\r\n\t\tthis.router.navigateByUrl('/home/administracion/vehiculos/vehiculo');\r\n\t}\r\n\r\n\tirAdministracionConsola() {\r\n\t\tthis.router.navigateByUrl('/home/administracion/consola/alertados')\r\n\t}\r\n\r\n\tobtenerTotalVehiculosActivos() {\r\n\t\tthis.tablasService.getTotalVehiculosActivos().subscribe(\r\n\t\t\tres => {\r\n\t\t\t\tthis.totalVehiculos = res.total;\r\n\t\t\t}, err => {\r\n\t\t\t\tconsole.log(err);\r\n\t\t\t}\r\n\t\t);\r\n\t}\r\n\r\n\tobtenerTotalVehiculosMovimiento() {\r\n\t\tthis.tablasService.getTotalVehiculosMovimiento().subscribe(\r\n\t\t\tres => {\r\n\t\t\t\tthis.vehiculosEnMovimiento = res.total;\r\n\t\t\t}, err => {\r\n\t\t\t\tconsole.log(err);\r\n\t\t\t}\r\n\t\t);\r\n\t}\r\n\r\n\tobtenerTotalVehiculosMovimientoHowen() {\r\n\t\t/*let token = '';\r\n\t\tif (this.hwUser) {\r\n\t\t\ttoken = this.hwUser.token;\r\n\t\t}*/\r\n\t\tthis.tablasService.obtenerAutosMovimientoHowen().subscribe(\r\n\t\t\t(vehiculos: any) => {\r\n\t\t\t\tthis.vehiculosEnMovimiento = this.vehiculosEnMovimiento + vehiculos;\r\n\t\t\t}\r\n\t\t)\r\n\r\n\t}\r\n\r\n\tobtenerTotalVehiculosFueraGeocerca() {\r\n\t\t/*let token = '';\r\n\t\tif (this.hwUser) {\r\n\t\t\ttoken = this.hwUser.token;\r\n\t\t}*/\r\n\t\tthis.tablasService.getTotalVehiculosFueraGeocerca().subscribe(\r\n\t\t\tres => {\r\n\t\t\t\tthis.vehiculosFueraGeocerca = res.total;\r\n\t\t\t}, err => {\r\n\t\t\t\tconsole.log(err);\r\n\t\t\t}\r\n\t\t);\r\n\t}\r\n\r\n\tobtenerTotalAlertados() {\r\n\t\tthis.tablasService.getTotalAlertados().subscribe(\r\n\t\t\t(alertados) => {\r\n\t\t\t\tthis.totalAlertados = Number(alertados);\r\n\t\t\t}, (error) => {\r\n\t\t\t\tconsole.log(error);\r\n\r\n\t\t\t}\r\n\t\t);\r\n\t}\r\n\r\n\tobtenerUltimosDatosMedidor() {\r\n\t\tthis.tablasService.obtenerUltimoDatoMedidor().subscribe(\r\n\t\t\t(response) => {\r\n\t\t\t\tthis.ultimimasDatosDataSource = response;\r\n\t\t\t\tthis.totalMedidores = response.length;\r\n\t\t\t}\r\n\t\t)\r\n\t}\r\n\r\n\tobtenerMedidores() {\r\n\t\tthis.tablasService.obtenerMedidores().subscribe(\r\n\t\t\t(medidores: Medidores[]) => {\r\n\t\t\t\tfor (let medidor of medidores) {\r\n\t\t\t\t\tlet imei = medidor.imei;\r\n\t\t\t\t\tlet descripcion = medidor.descripcion;\r\n\t\t\t\t\tthis.obtenerGraficaInfo(imei, descripcion);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t);\r\n\t}\r\n\r\n\tobtenerSaldoPasajeros(){\r\n\tthis.tablasService.obtenerSaldoPasajero().subscribe(result=>{\r\n\t\tthis.saldo = result;\r\n\t},err=>{\r\n\t\r\n\t})\t\r\n\t}\r\n\r\n\tobtenerMicromedidores() {\r\n\t\tlet newResponse = [];\r\n\t\tlet temNumSeries = [];\r\n\t\tthis.tablasService.obtenerMicromedidores().subscribe(\r\n\t\t\t(micromedidores: MicromedidorUltimaTransmision[]) => {\r\n\t\t\t\tmicromedidores.map(function (micromedidor) {\r\n\t\t\t\t\tif (micromedidor.observacion == '' || micromedidor.observacion == null) {\r\n\t\t\t\t\t\tmicromedidor.observacion = 'Sin datos';\r\n\t\t\t\t\t}\r\n\t\t\t\t})\r\n\t\t\t\tmicromedidores.forEach(\r\n\t\t\t\t\t(micromedidor) => {\r\n\t\t\t\t\t\tlet numeroSerie = micromedidor.numeroSerie;\r\n\r\n\t\t\t\t\t\tif (!(temNumSeries.includes(numeroSerie))) {\r\n\t\t\t\t\t\t\ttemNumSeries.push(numeroSerie);\r\n\t\t\t\t\t\t\tnewResponse.push(micromedidor);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t);\r\n\r\n\t\t\t\tthis.totalMicromedidores = newResponse.length;\r\n\t\t\t\tthis.ultimasMicromedidores = newResponse;\r\n\t\t\t}\r\n\t\t)\r\n\t}\r\n\r\n\tobtenerActivos() {\r\n\t\tthis.tablasService.obtenerActivos().subscribe(\r\n\t\t\t(activos: Activo[]) => {\r\n\t\t\t\tif (activos.length) {\r\n\t\t\t\t\tthis.totalActivos = activos.length;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t);\r\n\t}\r\n\r\n\tobtenerPortatiles() {\r\n\t\tthis.tablasService.obtenerPortatiles().subscribe(\r\n\t\t\t(portatiles: Portatil[]) => {\r\n\t\t\t\tif (portatiles.length) {\r\n\t\t\t\t\tthis.totalPortatiles = portatiles.length;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t);\r\n\t}\r\n\r\n\tobtenerTelefonos() {\r\n\t\tthis.tablasService.obtenerTelefonos().subscribe(\r\n\t\t\t(telefonos: Telefono[]) => {\r\n\t\t\t\tif (telefonos.length) {\r\n\t\t\t\t\tthis.totalTelefonos = telefonos.length;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t);\r\n\t}\r\n\r\n\tobtenerAlertasHowen() {\r\n\t\t/*let token = '';\r\n\t\tif (this.hwUser) {\r\n\t\t\ttoken = this.hwUser.token;\r\n\t\t}*/\r\n\r\n\t\tthis.tablasService.obtenerAlertasHowen().subscribe(\r\n\t\t\t(alertas: number) => {\r\n\t\t\t\tthis.totalAlertados = this.totalAlertados + alertas;\r\n\t\t\t}\r\n\t\t)\r\n\t}\r\n\r\n\tobtenerGraficaInfo(imei: Number, descripcion: string) {\r\n\t\tconst diaActual = new Date()\r\n\t\tconst milisegundos = 1000 * 60 * 60 * 1152 //Cuantos milisegundos hay en 24 hrs\r\n\t\t//getTime devuelve los milisegundos de la fecha\r\n\t\tconst diaAnteriorMilisegundos = diaActual.getTime() - milisegundos; //Dia anterior en milisegundos\r\n\t\tconst diaAnterior = new Date(diaAnteriorMilisegundos)\r\n\r\n\t\tconst fechaInicial = this.datePipe.transform(diaAnterior, \"yyyy-MM-dd HH:mm:ss\")\r\n\t\tconst fechaFinal = this.datePipe.transform(diaActual, \"yyyy-MM-dd HH:mm:ss\")\r\n\r\n\t\tthis.tablasService.obtenerReportePosicionesMedidores(imei, fechaInicial, fechaFinal).subscribe(\r\n\t\t\t(response: ReporteMedidores[]) => {\r\n\t\t\t\tif (response.length) {\r\n\t\t\t\t\tconst aux = {\r\n\t\t\t\t\t\t'imei': imei,\r\n\t\t\t\t\t\t'descripcion': descripcion,\r\n\t\t\t\t\t\t'data': response\r\n\t\t\t\t\t}\r\n\t\t\t\t\tthis.graficas.push(aux);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t)\r\n\t}\r\n\r\n\tcustomizeEtiqueta(arg) {\r\n\t\treturn arg.valueText + ' m3';\r\n\t}\r\n\r\n\tcustomizeTooltip() { }\r\n\r\n\t/*Etiqueta en grafica pastel*/\r\n\tetiquetaPie(arg) {\r\n\t\treturn arg.valueText + ' Vehículos'\r\n\t}\r\n\r\n\t/*Color de partes de grafica pastel*/\r\n\tcustomizePoint(pointInfo: any) {\r\n\t\tswitch (pointInfo.data.tipo) {\r\n\t\t\tcase 0:\r\n\t\t\t\treturn { color: '#858585' }\r\n\t\t\tcase 1:\r\n\t\t\t\treturn { color: '#188c18' }\r\n\t\t\tcase 4:\r\n\t\t\t\treturn { color: '#f9c300' }\r\n\t\t\tcase 5:\r\n\t\t\t\treturn { color: '#ff8100' }\r\n\t\t\tcase 6:\r\n\t\t\t\treturn { color: '#ff0000' }\r\n\t\t\tcase 7:\r\n\t\t\t\treturn { color: '#2a82ef' }\r\n\t\t\tcase 8:\r\n\t\t\t\treturn { color: '#800080' }\r\n\t\t}\r\n\r\n\r\n\t};\r\n\r\n\tlegendItems(arg) {\r\n\t\treturn 'Económico: ' + arg.valueText;\r\n\t}\r\n\r\n\tvalueItems(arg) {\r\n\t\treturn arg.valueText + ' km/h';\r\n\t}\r\n\r\n\tobtenerGraficaPastel() {\r\n\t\t/*let token = '0';\r\n\t\tif (this.hwUser) {\r\n\t\t\ttoken = this.hwUser.token;\r\n\t\t}*/\r\n\t\tthis.tablasService.obtenerDatosGricaPastel().subscribe(\r\n\t\t\t(response) => {\r\n\t\t\t\tthis.datosPastel = [\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tetiqueta: 'Detenidos mas de 90 min',\r\n\t\t\t\t\t\tval: response.totalDetenidosMas90,\r\n\t\t\t\t\t\ttipo: 6\r\n\t\t\t\t\t},\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tetiqueta: 'Detenidos mas de 60 min',\r\n\t\t\t\t\t\tval: response.totalDetenidosMas60,\r\n\t\t\t\t\t\ttipo: 5\r\n\t\t\t\t\t},\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tetiqueta: 'Detenidos mas de 30 min',\r\n\t\t\t\t\t\tval: response.totalDetenidosMas30,\r\n\t\t\t\t\t\ttipo: 4\r\n\t\t\t\t\t},\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tetiqueta: 'Exceso de velocidad',\r\n\t\t\t\t\t\tval: response.totalExcesoVelocidad,\r\n\t\t\t\t\t\ttipo: 7\r\n\t\t\t\t\t},\r\n\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tetiqueta: 'Fuera de geocerca',\r\n\t\t\t\t\t\tval: response.totalFueraGeocerca,\r\n\t\t\t\t\t\ttipo: 8\r\n\t\t\t\t\t},\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tetiqueta: 'Autos detenidos',\r\n\t\t\t\t\t\tval: response.totalAutosDetenidos,\r\n\t\t\t\t\t\ttipo: 0\r\n\t\t\t\t\t},\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tetiqueta: 'En movimiento',\r\n\t\t\t\t\t\tval: response.totalMovimiento,\r\n\t\t\t\t\t\ttipo: 1\r\n\t\t\t\t\t}\r\n\t\t\t\t];\r\n\t\t\t}, (error) => {\r\n\t\t\t\tconsole.log('Error en grafica pastel');\r\n\t\t\t}\r\n\t\t)\r\n\t}\r\n\r\n\tobtenerGraficaBarras() {\r\n\t/*\tlet token = '0';\r\n\t\tif (this.hwUser) {\r\n\t\t\ttoken = this.hwUser.token;\r\n\t\t}\r\n*/\r\n\t\tthis.tablasService.obtenerDatosGraficaBarras().subscribe(\r\n\t\t\t(response) => {\r\n\t\t\t\tthis.datosBarras = response;\r\n\t\t\t\tif (this.datosBarras.length > 0) {\r\n\t\t\t\t\tthis.mostrarBarras = true;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t)\r\n\t}\r\n\r\n\tgraficaAlertasParadas() {\r\n\t\tthis.tablasService.obtenerAlertasParadas().subscribe(\r\n\t\t\t(alertas: GraficasHw) => {\r\n\t\t\t\talertas.titulo = 'Paradas no autorizadas';\r\n\t\t\t\talertas.color = '#f9c300'\r\n\t\t\t\tthis.alertasHW.push(alertas);\r\n\t\t\t\t//this.totalAlertasParadas = alertas;\r\n\r\n\t\t\t}\r\n\t\t);\r\n\t}\r\n\r\n\tgraficaAlertasVideoPuertaAierta() {\r\n\t\tthis.tablasService.obtenerAlertasVideoPuertaAbierta().subscribe(\r\n\t\t\t(alertas: GraficasHw) => {\r\n\t\t\t\talertas.titulo = 'Apertura de puerta';\r\n\t\t\t\talertas.color = '#ff0000'\r\n\t\t\t\tthis.alertasHW.push(alertas);\r\n\t\t\t\t//this.totalAlertasVideoPuertaAbierta = alertas\r\n\t\t\t}\r\n\t\t);\r\n\t}\r\n\r\n\tgraficaGeneralVideosPuertaAbierta() {\r\n\t\tthis.tablasService.obtenerAlertasPuertaAbiertaGeneral().subscribe(\r\n\t\t\t(alertas: GraficasHw) => {\r\n\t\t\t\talertas.titulo = 'Alertas totales';\r\n\t\t\t\talertas.color = '#52bb56';\r\n\r\n\t\t\t\tif (alertas.dia === null) { alertas.dia = 0; }\r\n\t\t\t\tif (alertas.semana === null) { alertas.semana = 0; }\r\n\t\t\t\tif (alertas.mes === null) { alertas.mes = 0; }\r\n\r\n\t\t\t\tthis.alertasHW.push(alertas);\r\n\t\t\t}\r\n\t\t);\r\n\t}\r\n\r\n\texcesoVelocidadHW() {\r\n\t\tthis.tablasService.obtenerExcesoVelocidadHW().subscribe(\r\n\t\t\t(alertas: GraficasHw) => {\r\n\t\t\t\talertas.titulo = 'Exceso de velocidad';\r\n\t\t\t\talertas.color = '#2a82ef'\r\n\t\t\t\tthis.alertasHW.push(alertas);\r\n\t\t\t}\r\n\t\t);\r\n\t}\r\n\r\n\tcambiarRango(rango: string) {\r\n\t\tthis.valueField = rango;\r\n\t}\r\n\r\n\tpublic obtenerTitulo(titulo: string) {\r\n\t\tswitch (titulo) {\r\n\t\t\tcase 'dia':\r\n\t\t\t\treturn 'Día';\r\n\t\t\t\tbreak\r\n\t\t\tcase 'semana':\r\n\t\t\t\treturn 'Semana';\r\n\t\t\t\tbreak;\r\n\t\t\tcase 'mes':\r\n\t\t\t\treturn 'Mes';\r\n\t\t\t\tbreak;\r\n\t\t}\r\n\t}\r\n\r\n\tetiquetaPieAlertas(arg) {\r\n\t\treturn arg.valueText + ' Alertas'\r\n\t}\r\n\r\n\t/*Color de partes de grafica pastel*/\r\n\tcustomizePointAlertas(pointInfo: any) {\r\n\t\t//return pointInfo.data.color\r\n\t\treturn { color: pointInfo.data.color };\r\n\t};\r\n\r\n\tpublic get Permiso() {\r\n\t\treturn Permiso\r\n\t}\r\n\r\n\tpublic mostrarAlertas: boolean;\r\n\r\n\tobtenerPermisos() {\r\n\t\tthis.permisoVisualizarVehiculo = Permiso.VisualizarVehiculos;\r\n\t\tthis.permisoVisualizarMedidores = Permiso.VisualizarMedidores;\r\n\t\tthis.permisoVisualizarMicromedidores = Permiso.ConsultarMicromedidor;\r\n\t\tthis.permisoVisualizarActivos = Permiso.ConsultarActivo;\r\n\t\tthis.permisoVisualizarTelefonos = Permiso.ConsultarTelefono;\r\n\t\tthis.permisoVisualizarSemaforo = Permiso.MostrarSemaforo;\r\n\t\tthis.permisoVisualizarPortatiles = Permiso.VisualizarPortatiles;\r\n\r\n\t\tthis.permisoAlertaSalidaGeocerca = Permiso.AlertaSalidaGeocerca;\r\n\t\tthis.permisoMostrarAlertasMDVR = Permiso.MostrarAlertasDVR;\r\n\t\tthis.permisoSaldoPasajero = Permiso.SaldoPasajeros;\r\n\t\tconst permisos = this.authService.getUser().permisos;\r\n\r\n\t\tif (permisos.includes(this.permisoMostrarAlertasMDVR)) {\r\n\t\t\tthis.mostrarAlertas = true;\r\n\t\t}\r\n\r\n\t}\r\n\r\n}\r\n","import { MicromedidorUltimaTransmision } from './../../../_entities/micromedidores/micromedidor';\r\nimport { ReporteMedidores } from './../../../_entities/medidores/ReporteMedidores';\r\nimport { Medidores } from './../../../_entities/medidores/Medidores';\r\nimport { environment } from './../../../../environments/environment';\r\nimport { Observable } from 'rxjs';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Dashboard } from '../../../_entities/Dashboard';\r\nimport { Alertado } from './../../../_entities/consola/alertados';\r\nimport { Activo } from './../../../_entities/activos/activo';\r\nimport { Telefono } from './../../../_entities/telefonos/telefono';\r\nimport { GraficaPastel } from './../../../_entities/tablero/grafoca-pastel';\r\nimport { AuthService } from '../../auth/auth.service';\r\nimport {GraficasHw} from '../../../_entities/tablero/graficas-hw';\r\nimport { Portatil } from '../../../_entities/Portatiles/Portatil';\r\n\r\n@Injectable({\r\n\tprovidedIn: 'root'\r\n})\r\nexport class TablasService {\r\n\r\n\tconstructor(private http: HttpClient, private auth: AuthService) { }\r\n\r\n\tgetTotalVehiculosActivos(): Observable {\r\n\t\treturn this.http.get(`${environment.API_SECURITY}/api/dashboard/GetTotalVehiculosActivos`);\r\n\t}\r\n\r\n\tgetTotalVehiculosFueraGeocerca(): Observable {\r\n\t\t/*let user = this.auth.getUser();\r\n\t\tlet token = '0'\r\n\t\tif(user.id == 'c28df0c4-3322-421c-b601-8aa7e80536cf' || user.id == '74bc5a50-65cd-4fa3-9a68-99886b468b6b') {\r\n\t\t\ttoken = token1\r\n\t\t}*/\r\n\t\treturn this.http.get(`${environment.API_SECURITY}/api/dashboard/GetTotalVehiculosFueraGeocerca`);\r\n\t}\r\n\r\n\tgetTotalVehiculosMovimiento(): Observable {\r\n\t\treturn this.http.get(`${environment.API_SECURITY}/api/dashboard/GetTotalVehiculosMovimiento`);\r\n\t}\r\n\r\n\tgetTotalAlertados() {\r\n\t\treturn this.http.get(environment.API_SECURITY + '/api/consola/VehiculosAlertadosDashboard', { responseType: 'text' });\r\n\t}\r\n\r\n\tobtenerActivos(): Observable {\r\n\t\treturn this.http.get(environment.API_SECURITY + '/api/CrudActivos');\r\n\t}\r\n\r\n\tobtenerTelefonos(): Observable {\r\n\t\treturn this.http.get(environment.API_SECURITY + '/api/Telefonos');\r\n\t}\r\n\r\n\r\n\tobtenerUltimoDatoMedidor(): Observable {\r\n\t\treturn this.http.get(environment.API_SECURITY + '/api/Medidores/ultimamedidor')\r\n\t}\r\n\r\n\tobtenerMedidores(): Observable {\r\n\t\treturn this.http.get(environment.API_SECURITY + '/api/Medidores')\r\n\t}\r\n\r\n\tobtenerPortatiles():Observable{\r\n\t\treturn this.http.get(environment.API_SECURITY+'/api/Portatiles')\r\n\t}\r\n\r\n\tobtenerReportePosicionesMedidores(medidorImei, fechaInicio, fechaFinal): Observable {\r\n\t\treturn this.http.get(`${environment.API_SECURITY}/api/Medidores/${medidorImei}/reporte-historico?fechaInicio=${fechaInicio}&fechaFinal=${fechaFinal}`);\r\n\t}\r\n\r\n\tobtenerMicromedidores(): Observable {\r\n\t\treturn this.http.get(environment.API_SECURITY + '/api/Micromedidores/Lecturas');\r\n\t}\r\n\r\n\tobtenerAlertasHowen(): Observable {\r\n\t/*\tlet user = this.auth.getUser()\r\n\t\tlet token = '0'\r\n\t\tif(user.permisos.includes('140')) {\r\n\t\t\ttoken = token1\r\n\t\t}*/\r\n\t\treturn this.http.get(environment.API_SECURITY + '/api/Howen/AlertadosDashboard' )\r\n\t}\r\n\r\n\tobtenerAutosMovimientoHowen() {\r\n\t\t/*let user = this.auth.getUser()\r\n\t\tlet token = '0'\r\n\t\tif(user.permisos.includes('140')) {\r\n\t\t\ttoken = token1\r\n\t\t}*/\r\n\t\treturn this.http.get(`${environment.API_SECURITY}/api/Howen/ContadorMovimiento`)\r\n\t}\r\n\r\n\tobtenerDatosGricaPastel(): Observable {\r\n\t\t/*let user = this.auth.getUser()\r\n\t\tlet token = '0'\r\n\t\tif(user.permisos.includes('140')) {\r\n\t\t\ttoken = token1\r\n\t\t}*/\r\n\r\n\t\treturn this.http.get(environment.API_SECURITY + '/api/Dashboard/TotalVehiculos')\r\n\t}\r\n\r\n\tobtenerDatosGraficaBarras(): Observable {\r\n\t\t/*let user = this.auth.getUser()\r\n\t\tlet token = '0'\r\n\r\n\t\tif (user.id == 'c28df0c4-3322-421c-b601-8aa7e80536cf' || user.id == '74bc5a50-65cd-4fa3-9a68-99886b468b6b') {\r\n\t\t\ttoken = token1\r\n\t\t}*/\r\n\r\n\t\treturn this.http.get(environment.API_SECURITY + '/api/Dashboard/ReporteVelocidades')\r\n\t}\r\n\r\n\tobtenerAlertasParadas(): Observable {\r\n\t\t//Correos de parada no autorizada bitacora BD\r\n\t\treturn this.http.get(environment.API_SECURITY + '/api/Howen/AlertasBitacora');\r\n\t}\r\n\r\n\tobtenerSaldoPasajero(): Observable {\r\n\t\t//Correos de parada no autorizada bitacora BD\r\n\t\treturn this.http.get(environment.API_SECURITY + '/api/Pasajeros/SaldoDashboard');\r\n\t}\r\n\r\n\r\n\tobtenerAlertasVideoPuertaAbierta() {\r\n\t\t//Numero de correos de puerta en zona no autorizada\r\n\t\treturn this.http.get(environment.API_SECURITY + '/api/Howen/AlertasBitacoraPuertaAbierta')\r\n\t}\r\n\r\n\tobtenerAlertasPuertaAbiertaGeneral(): Observable {\r\n\t\t//Numero de veces que se abrio la puerta\r\n\t\treturn this.http.get(environment.API_SECURITY + '/api/Howen/AlertasPuertaAbierta')\r\n\t}\r\n\r\n\tobtenerExcesoVelocidadHW(): Observable {\r\n\t\t//Numero de veces a exceso de velocidad\r\n\t\treturn this.http.get(environment.API_SECURITY + '/api/Howen/ContadorExcesoVelocidad')\r\n\t}\r\n}\r\n","import { TablasComponent } from './components/tablas/tablas.component';\r\nimport { NgModule } from '@angular/core';\r\nimport { Routes, RouterModule } from '@angular/router';\r\n\r\nimport { TableroComponent } from './tablero.component';\r\n\r\nconst routes: Routes = [{\r\n path: '',\r\n component: TablasComponent\r\n /*children: [\r\n {\r\n path: 'tablero',\r\n component: TablasComponent\r\n }\r\n ]*/\r\n}];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes)],\r\n exports: [RouterModule]\r\n})\r\nexport class TableroRoutingModule { }\r\n","import { NgxPermissionsModule } from 'ngx-permissions';\r\nimport { GoogleChartsModule } from 'angular-google-charts';\r\nimport { MatSlideToggleModule } from '@angular/material/slide-toggle';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport {\r\n\tDxTemplateModule,\r\n\tDxButtonModule,\r\n\tDxDataGridModule,\r\n\tDxCheckBoxModule,\r\n\tDxSelectBoxModule,\r\n\tDxTreeListModule,\r\n\tDxFormModule,\r\n\tDxPopoverModule,\r\n\tDxPopupModule,\r\n\tDxPieChartModule,\r\n\tDxChartModule,\r\n\tDxTabPanelModule,\r\n\tDxGalleryModule\r\n} from 'devextreme-angular';\r\nimport { MatDividerModule, MatInputModule, MatFormFieldModule, MatButtonModule, MatOptionModule, MatSelectModule, MatListModule, MatCheckboxModule, MatCardModule } from '@angular/material';\r\nimport { NgModule } from '@angular/core';\r\nimport { CommonModule, PercentPipe } from '@angular/common';\r\n\r\nimport { TableroRoutingModule } from './tablero-routing.module';\r\nimport { TableroComponent } from './tablero.component';\r\nimport { TablasComponent } from './components/tablas/tablas.component';\r\nimport { NgxChartsModule } from '@swimlane/ngx-charts';\r\n@NgModule({\r\n\tdeclarations: [\r\n\t\tTableroComponent,\r\n\t\tTablasComponent],\r\n\tproviders: [\r\n\t\tPercentPipe\r\n\t],\r\n\timports: [\r\n\t\tCommonModule,\r\n\t\tTableroRoutingModule,\r\n\t\tMatDividerModule,\r\n\t\tDxTemplateModule,\r\n\t\tDxButtonModule,\r\n\t\tDxDataGridModule,\r\n\t\tDxCheckBoxModule,\r\n\t\tDxSelectBoxModule,\r\n\t\tDxTreeListModule,\r\n\t\tDxFormModule,\r\n\t\tDxPopoverModule,\r\n\t\tDxPopupModule,\r\n\t\tDxPieChartModule,\r\n\t\tDxChartModule,\r\n\t\tDxTabPanelModule,\r\n\t\tDxGalleryModule,\r\n\t\tFormsModule,\r\n\t\tMatInputModule,\r\n\t\tMatFormFieldModule,\r\n\t\tReactiveFormsModule,\r\n\t\tMatButtonModule,\r\n\t\tMatOptionModule,\r\n\t\tMatSelectModule,\r\n\t\tMatListModule,\r\n\t\tMatCardModule,\r\n\t\tMatSlideToggleModule,\r\n\t\tGoogleChartsModule.forRoot(),\r\n\t\tNgxPermissionsModule,\r\n\t\tMatCheckboxModule,\r\n\t\tNgxChartsModule,\r\n\t\t\r\n\t],\r\n\texports: [\r\n\t\tFormsModule,\r\n\t\tReactiveFormsModule\r\n\t],\r\n\t//schemas: [ NO_ERRORS_SCHEMA ]\r\n})\r\nexport class TableroModule { }\r\n","import { Vehiculos } from './../../../_entities/vehiculos';\r\nimport { Telefono } from './../../../_entities/telefonos/telefono';\r\nimport { Micromedidor } from './../../../_entities/micromedidores/micromedidor';\r\nimport { Medidores } from './../../../_entities/medidores/Medidores';\r\nimport { DispositivoVM } from './../../../_entities/dispositivos/DispositivoVM';\r\nimport { Activo } from './../../../_entities/activos/activo';\r\nimport { PermisoAgrupadoVM } from './../../../_entities/permisos/PermisoAgrupadoVM';\r\nimport { ClienteVM } from './../../../_entities/clientes/ClienteVM';\r\nimport { UsuarioVM } from './../../../_entities/usuarios/UsuarioVM';\r\nimport { environment } from './../../../../environments/environment';\r\nimport { UsuarioEdicionVM } from './../../../_entities/usuarios/UsuarioEdicionVM';\r\nimport { Observable } from 'rxjs';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Producto } from './../../../_entities/productos/producto';\r\nimport { ProductosAsignados } from './../../../_entities/usuarios/productos-asignados';\r\nimport { Terminal } from './../../../_entities/terminal/terminal';\r\nimport { PanelCiudadano } from '../../../_entities/panelCiudadano/panelCiudadano';\r\n\r\n@Injectable({\r\n\tprovidedIn: 'root'\r\n})\r\nexport class UsuarioService {\r\n\r\n\tconstructor(private http: HttpClient) { }\r\n\r\n\tgetUsuario(id: string): Observable {\r\n\t\treturn this.http.get(`${environment.API_SECURITY}/api/controlusuarios/${id}`);\r\n\t}\r\n\r\n\tgetUsuarios(): Observable {\r\n\t\treturn this.http.get(`${environment.API_SECURITY}/api/controlusuarios`);\r\n\t}\r\n\r\n\tgetClientes(incluirClientePropietario: boolean = false): Observable {\r\n\t\treturn this.http.get(`${environment.API_SECURITY}/api/Reportes/ClientesReportes`);\r\n\t}\r\n\r\n\tgetPermisosAgrupados(): Observable {\r\n\t\treturn this.http.get(`${environment.API_SECURITY}/api/permisos/agrupar/modulo`);\r\n\t}\r\n\r\n\tupdateUsuario(id: string, form): Observable {\r\n\t\treturn this.http.put(`${environment.API_SECURITY}/api/controlusuarios/${id}`, form);\r\n\t}\r\n\r\n\tdeleteUsuario(id): Observable {\r\n\t\treturn this.http.delete(`${environment.API_SECURITY}/api/controlusuarios/${id}`);\r\n\t}\r\n\r\n\tgetActivos(): Observable {\r\n\t\treturn this.http.get(environment.API_SECURITY + '/api/CrudActivos');\r\n\t}\r\n\r\n\tgetPortatiless(): Observable {\r\n\t\treturn this.http.get(environment.API_SECURITY + '/api/Portatiles');\r\n\t}\r\n\r\n\tgetDispositivos(): Observable {\r\n\t\treturn this.http.get(`${environment.API_SECURITY}/api/dispositivos`);\r\n\t}\r\n\r\n\tgetMedidores(): Observable {\r\n\t\treturn this.http.get(environment.API_SECURITY + '/api/Medidores')\r\n\t}\r\n\tgetPanelCiudadano(): Observable {\r\n\t\treturn this.http.get(environment.API_SECURITY + '/api/PanelCiudadano')\r\n\t}\r\n\r\n\tgetMicromedidores(): Observable {\r\n\t\treturn this.http.get(environment.API_SECURITY + '/api/Micromedidores');\r\n\t}\r\n\r\n\r\n\tgetTelefonos(): Observable {\r\n\t\treturn this.http.get(environment.API_SECURITY + '/api/Telefonos');\r\n\t}\r\n\r\n\tgetTerminales(): Observable {\r\n\t\treturn this.http.get(`${environment.API_SECURITY}/api/HandheldUHF`);\r\n\t}\r\n\r\n\r\n\tgetVehiculos(): Observable {\r\n\t\treturn this.http.get(environment.API_SECURITY + '/api/vehiculos')\r\n\t}\r\n\r\n\tgetProductos(): Observable {\r\n\t\treturn this.http.get(environment.API_SECURITY + '/api/Productos');\r\n\t}\r\n\r\n\tasignarVehiculos(vehiculos) {\r\n\t\treturn this.http.post(environment.API_SECURITY + '/api/UsuariosVehiculos', vehiculos, { responseType: 'text' });\r\n\t}\r\n\r\n\tasignarActivos(activos) {\r\n\t\treturn this.http.post(environment.API_SECURITY + '/api/CrudActivos/AsignarActivo', activos, { responseType: 'text' })\r\n\t}\r\n\r\n\tasignarPortatil(portatiles) {\r\n\t\treturn this.http.post(environment.API_SECURITY + '/api/CrudActivos/AsignarPortatil', portatiles, { responseType: 'text' })\r\n\t}\r\n\r\n\tasignarPanelCiudadano(panel) {\r\n\t\treturn this.http.post(environment.API_SECURITY + '/api/PanelCiudadano/AsignarPanel', panel, { responseType: 'text' })\r\n\t}\r\n\r\n\r\n\tasignarTelefonos(telefonos) {\r\n\t\treturn this.http.post(environment.API_SECURITY + '/api/Telefonos/AsignarTelefono', telefonos, { responseType: 'text' });\r\n\t}\r\n\r\n\tasignarTermianlesUHF(terminales) {\r\n\t\treturn this.http.post(environment.API_SECURITY + '/api/HandheldUHF/AsignarTerminal', terminales, { responseType: 'text' });\r\n\t}\r\n\r\n\tasingarMedidores(medidores) {\r\n\t\treturn this.http.post(environment.API_SECURITY + '/api/medidores/AsignarMedidor', medidores, { responseType: 'text' });\r\n\t}\r\n\r\n\tasignarMicromedidores(micromedidores) {\r\n\t\treturn this.http.post(environment.API_SECURITY + '/api/Micromedidores/AsignarMicromedidor', micromedidores, { responseType: 'text' });\r\n\r\n\t}\r\n\r\n\r\n\tobtenerProductos(idUsuario, tipoProducto): Observable {\r\n\t\treturn this.http.get(`${environment.API_SECURITY}/api/ControlUsuarios/ProductosAsignados/${idUsuario}/${tipoProducto}`);\r\n\t}\r\n\r\n\r\n\tdesasignarProducto(idUsuario, idProducto) {\r\n\t\treturn this.http.delete(`${environment.API_SECURITY}/api/ControlUsuarios/DesasignarProducto/${idUsuario}/${idProducto}`, { responseType: 'text' });\r\n\t}\r\n\r\n\r\n}\r\n","\r\nexport const environment = {\r\n\tproduction: false,\r\n\t\r\n\t//API_SECURITY: 'https://localhost:44324',\r\n\tAPI_SECURITY: 'http://187.189.134.143/dev/devsionapi',\r\n\t//HOWEN_API: 'http://www.gtmtec.mx:9966',\r\n\tHOWEN_API: 'http://187.189.134.158:9966',\r\n\tisMockEnabled: true,\r\n\tEXTERNAL_MAP: 'http://www.gtmtec.mx/dev/devsion',\r\n\tauthTokenKey: 'authce9d77b308c149d5992a80073637e4d5',\r\n\tfirebaseConfig : {\r\n\t\tapiKey: \"AIzaSyC2ZLARpH-7z45b42hjNntfL4YJppgIJbM\",\r\n\t\tauthDomain: \"zigbee-73eb7.firebaseapp.com\",\r\n\t\tdatabaseURL: \"https://zigbee-73eb7-default-rtdb.firebaseio.com\",\r\n\t\tprojectId: \"zigbee-73eb7\",\r\n\t\tstorageBucket: \"zigbee-73eb7.appspot.com\",\r\n\t\tmessagingSenderId: \"219472575289\",\r\n\t\tappId: \"1:219472575289:web:26b032e45076ffe88c46e8\"\r\n\t },\r\nfirebaseConfig1 : {\r\n\tapiKey: \"AIzaSyDgMPNSbkuX1Doo1BhyouyWiiPWgMackPk\",\r\n\tauthDomain: \"pruebainspeccion-8d5f2.firebaseapp.com\",\r\n\tdatabaseURL: \"https://pruebainspeccion-8d5f2-default-rtdb.firebaseio.com\",\r\n\tprojectId: \"pruebainspeccion-8d5f2\",\r\n\tstorageBucket: \"pruebainspeccion-8d5f2.appspot.com\",\r\n\tmessagingSenderId: \"402724247254\",\r\n\tappId: \"1:402724247254:web:2e232fca6c652c388e1b77\"\r\n}\r\n};\r\n","import { enableProdMode } from '@angular/core';\r\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\r\n\r\nimport { AppModule } from './app/app.module';\r\nimport { environment } from './environments/environment';\r\n\r\nif (environment.production) {\r\n enableProdMode();\r\n}\r\n\r\nplatformBrowserDynamic().bootstrapModule(AppModule)\r\n .catch(err => console.error(err));\r\n","/* (ignored) */","/* (ignored) */","/* (ignored) */"],"sourceRoot":"webpack:///"}