visorus-erp-core 10.1.0 → 10.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundles/visorus-erp-core.umd.js +11 -0
- package/bundles/visorus-erp-core.umd.js.map +1 -1
- package/bundles/visorus-erp-core.umd.min.js +1 -1
- package/bundles/visorus-erp-core.umd.min.js.map +1 -1
- package/esm2015/lib/services/api.service.js +12 -1
- package/fesm2015/visorus-erp-core.js +11 -0
- package/fesm2015/visorus-erp-core.js.map +1 -1
- package/lib/services/api.service.d.ts +7 -0
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../projects/erp-core/src/lib/services/global.service.ts","../../../projects/erp-core/src/lib/services/api.service.ts","../../../node_modules/tslib/tslib.es6.js","../../../projects/erp-core/src/lib/contabilidad/servicios/cuentacontable.service.ts","../../../projects/erp-core/src/lib/contabilidad/componentes/cclista/cclista.component.html","../../../projects/erp-core/src/lib/contabilidad/componentes/cclista/cclista.component.ts","../../../projects/erp-core/src/lib/contabilidad/componentes/ccseleccion-dialog/ccseleccion-dialog.component.ts","../../../projects/erp-core/src/lib/contabilidad/componentes/ccseleccion-dialog/ccseleccion-dialog.component.html","../../../projects/erp-core/src/lib/importComponetsConta.ts","../../../projects/erp-core/src/lib/components/login-modal/login-modal.service.ts","../../../projects/erp-core/src/lib/components/loading-screen/loading-screen.service.ts","../../../projects/erp-core/src/lib/httpInterceptor/httpInterceptor.ts","../../../projects/erp-core/src/lib/components/error404/error404.component.ts","../../../projects/erp-core/src/lib/components/error404/error404.component.html","../../../projects/erp-core/src/lib/components/loading/loading.service.ts","../../../projects/erp-core/src/lib/components/loading/loading.component.ts","../../../projects/erp-core/src/lib/components/loading/loading.component.html","../../../projects/erp-core/src/lib/components/loading-screen/loading-screen.component.ts","../../../projects/erp-core/src/lib/components/loading-screen/loading-screen.component.html","../../../projects/erp-core/src/lib/components/pdfModal/pdf-modal.service.ts","../../../projects/erp-core/src/lib/services/file.service.ts","../../../projects/erp-core/src/lib/components/pdfModal/pdf-modal.component.html","../../../projects/erp-core/src/lib/components/pdfModal/pdf-modal.component.ts","../../../projects/erp-core/src/lib/models/Usuario.ts","../../../projects/erp-core/src/lib/models/auth.ts","../../../projects/erp-core/src/lib/services/auth.service.ts","../../../projects/erp-core/src/lib/components/login-modal/login-modal.component.html","../../../projects/erp-core/src/lib/components/login-modal/login-modal.component.ts","../../../projects/erp-core/src/lib/components/caja/sessionCaja.service.ts","../../../projects/erp-core/src/lib/components/caja/session-create/session-create.component.html","../../../projects/erp-core/src/lib/components/caja/session-create/session-create.component.ts","../../../projects/erp-core/src/lib/components/cliente/services/cliente.service.ts","../../../projects/erp-core/src/lib/services/paginate.service.ts","../../../projects/erp-core/src/lib/components/cliente/select/select-cliente.component.html","../../../projects/erp-core/src/lib/components/cliente/select/select-cliente.component.ts","../../../projects/erp-core/src/lib/components/persona-fisica/models/Persona.ts","../../../projects/erp-core/src/lib/components/persona-fisica/models/PersonaFisica.ts","../../../projects/erp-core/src/lib/models/PersonaMoral.ts","../../../projects/erp-core/src/lib/components/clasificadorTipo/models/ClasificadorTipo.ts","../../../projects/erp-core/src/lib/components/proveedor/models/Proveedor.ts","../../../projects/erp-core/src/lib/components/proveedor/services/proveedor.service.ts","../../../projects/erp-core/src/lib/components/proveedor/select/select-proveedor.component.html","../../../projects/erp-core/src/lib/components/proveedor/select/select-proveedor.component.ts","../../../projects/erp-core/src/lib/components/selecciona-articulo/stock.service.ts","../../../projects/erp-core/src/lib/components/almacen/services/almacen.service.ts","../../../projects/erp-core/src/lib/components/seleccion-articulo-informacion/services/articulo-informacion.service.ts","../../../projects/erp-core/src/lib/components/seleccion-articulo-informacion/seleccion-articulo-informacion.component.html","../../../projects/erp-core/src/lib/components/seleccion-articulo-informacion/seleccion-articulo-informacion.component.ts","../../../projects/erp-core/src/lib/components/selecciona-articulo/selecciona-articulo.component.html","../../../projects/erp-core/src/lib/components/selecciona-articulo/selecciona-articulo.component.ts","../../../projects/erp-core/src/lib/components/acreedor/services/acreedor.service.ts","../../../projects/erp-core/src/lib/components/acreedor/select/select-acreedor.component.html","../../../projects/erp-core/src/lib/components/acreedor/select/select-acreedor.component.ts","../../../projects/erp-core/src/lib/importComponents.ts","../../../projects/erp-core/src/lib/globalPrimeNg.ts","../../../projects/erp-core/src/lib/app.module.ts","../../../projects/erp-core/src/lib/services/controlAcceso.service.ts","../../../projects/erp-core/src/lib/services/init.service.ts","../../../projects/erp-core/src/lib/services/message.service.ts","../../../projects/erp-core/src/lib/services/personaMoral.service.ts","../../../projects/erp-core/src/lib/services/canActivateGuard.service.ts.ts","../../../projects/erp-core/src/lib/services/catalogo-adicional.service.ts","../../../projects/erp-core/src/lib/services/authenticated.service.ts","../../../projects/erp-core/src/lib/services/versionCheck.service.ts","../../../projects/erp-core/src/lib/components/agente/models/Agente.ts","../../../projects/erp-core/src/lib/components/agente/services/agente.service.ts","../../../projects/erp-core/src/lib/components/almacen/models/Almacen.ts","../../../projects/erp-core/src/lib/components/dato-direccion/models/DatoDireccion.ts","../../../projects/erp-core/src/lib/components/banco/models/Banco.ts","../../../projects/erp-core/src/lib/components/banco/services/banco.service.ts","../../../projects/erp-core/src/lib/components/catalogoTipo/models/CatalogoTipo.ts","../../../projects/erp-core/src/lib/components/catalogoTipo/services/catalogoTipo.service.ts","../../../projects/erp-core/src/lib/components/clasificadorTipo/services/clasificadorTipo.service.ts","../../../projects/erp-core/src/lib/components/claveMovimiento/models/ClaveMovimiento.ts","../../../projects/erp-core/src/lib/components/claveMovimiento/services/claveMovimiento.service.ts","../../../projects/erp-core/src/lib/components/cliente/models/Cliente.ts","../../../projects/erp-core/src/lib/components/cliente/models/ClienteCuentaBanco.ts","../../../projects/erp-core/src/lib/components/flete/models/Flete.ts","../../../projects/erp-core/src/lib/components/cliente/models/ClienteFlete.ts","../../../projects/erp-core/src/lib/components/cliente/services/clienteCuentaBanco.service.ts","../../../projects/erp-core/src/lib/components/cliente/services/clienteFlete.service.ts","../../../projects/erp-core/src/lib/components/tipo-contacto/models/TipoContacto.ts","../../../projects/erp-core/src/lib/components/contacto/models/DatoContacto.ts","../../../projects/erp-core/src/lib/components/contacto/services/datoContacto.service.ts","../../../projects/erp-core/src/lib/components/dato-direccion/services/datoDireccion.service.ts","../../../projects/erp-core/src/lib/components/departamento/models/Departamento.ts","../../../projects/erp-core/src/lib/components/departamento/services/departamento.service.ts","../../../projects/erp-core/src/lib/components/formaPago/models/FormaPago.ts","../../../projects/erp-core/src/lib/components/empresa/models/Empresa.ts","../../../projects/erp-core/src/lib/components/empresa/models/ConfiguracionEmpresaAdministrativa.ts","../../../projects/erp-core/src/lib/components/empresa/services/empresa.service.ts","../../../projects/erp-core/src/lib/components/flete/services/flete.service.ts","../../../projects/erp-core/src/lib/components/formaPago/services/FormaPago.service.ts","../../../projects/erp-core/src/lib/components/moneda/models/Moneda.ts","../../../projects/erp-core/src/lib/components/moneda/services/moneda.service.ts","../../../projects/erp-core/src/lib/components/persona-fisica/models/EstadoCivil.ts","../../../projects/erp-core/src/lib/components/persona-fisica/models/Genero.ts","../../../projects/erp-core/src/lib/components/persona-fisica/services/personaFisica.service.ts","../../../projects/erp-core/src/lib/components/proveedor/models/ProveedorCuentaBanco.ts","../../../projects/erp-core/src/lib/components/proveedor/models/ProveedorFlete.ts","../../../projects/erp-core/src/lib/components/proveedor/services/proveedorCuentaBanco.service.ts","../../../projects/erp-core/src/lib/components/proveedor/services/proveedorFlete.service.ts","../../../projects/erp-core/src/lib/components/claveAumentoDisminucion/services/clave-aumento-disminucion.service.ts","../../../projects/erp-core/src/lib/components/serieDocumento/services/serieDocumento.service.ts","../../../projects/erp-core/src/lib/components/serieDocumento/models/SerieDocumento.ts","../../../projects/erp-core/src/lib/components/tipo-contacto/services/tipoContacto.service.ts","../../../projects/erp-core/src/lib/components/ubicacion/models/Ubicacion.ts","../../../projects/erp-core/src/lib/components/ubicacion/services/ubicacion.service.ts","../../../projects/erp-core/src/lib/utils/tipo_catalogo.ts.ts","../../../projects/erp-core/src/lib/components/acreedor/services/acreedorCuentaContable.ts","../../../projects/erp-core/src/lib/contabilidad/modelos/cuentaContable.model.ts","../../../projects/erp-core/src/lib/contabilidad/modelos/normaInfoFinanciera.model.ts"],"names":["GlobalService","http","this","prototype","setConfiguracion","get","subscribe","data","localStorage","setItem","JSON","stringify","obtieneConfiguracion","parse","getItem","getUrl","urlComponente","url","auth","params","post","getUsuarioActual","buildAuth","getUsuario","headers","HttpHeaders","Authorization","token_type","access_token","Content-Type","Accept","validateEndPoint","closeEndPoint","removeItem","setUsuarioInstance","usuarioInstance","getLang","lang","setModulo","modulo","i0","ɵɵinject","i1","HttpClient","factory","ɵfac","providedIn","ApiService","global","endpoint","queryParams","HttpParams","fromObject","options","Object","assign","body","put","id","delete","__awaiter","thisArg","_arguments","P","generator","Promise","resolve","reject","fulfilled","value","step","next","e","rejected","result","done","then","apply","__generator","f","y","t","_","label","sent","trys","ops","g","create","Iterator","verb","Symbol","iterator","n","v","op","TypeError","call","pop","length","push","__values","o","s","m","i","SuppressedError","CuentaContableService","api","getAll","obtieneCuentasContablesRecursivo","save","obj","update","i0.ɵɵelementStart","i0.ɵɵtext","i0.ɵɵelementEnd","i0.ɵɵlistener","i0.ɵɵelement","i0.ɵɵtemplate","i0.ɵɵadvance","i0.ɵɵproperty","i0.ɵɵtextInterpolate1","CclistaComponent","_cuentaContableService","cuentasContables","maxH","query","tempAccounts","evSelectedAccount","EventEmitter","ngOnInit","window","innerHeight","obtenerCuentasContablesRecursivo","_this","sortAccounts","sort","a","b","listA","cuentaContable","split","listB","parseInt","_b","_c","item","children","sortItem","account","selectCuentaContable","emit","filterAccounts","evt","browseAccount","temp","resetAccount","accounts","cc","listAccounts","accounts_1","accounts_1_1","toString","toLowerCase","includes","descripcion","concat","ɵɵdirectiveInject","selectors","inputs","isShared","typeAccount","outputs","decls","vars","consts","template","rf","ctx","$event","i0.ɵɵstyleMap","CcseleccionDialogComponent","maxW","flagModal","size","innerWidth","getAccount","hiddenDialog","viewQuery","tipoCuenta","LoginModalService","modal","showModal","LoadingScreenService","_loading","loadingStatus","Subject","defineProperty","startLoading","loading","stopLoading","httpInterceptor","loginModalService","toastrService","loadingScreenService","intercept","request","handle","pipe","catchError","error","caught","handleError","throwError","tap","res","type","message","success","timeOut","closeButton","err","status","of","readError","respuesta","_errors","Array","isArray","indexError","i1$1","ToastrService","Error404Component","LoadingService","setLoading","visible","start","stop","loadingService","logo_loading","_visible","$","setTimeout","LoadingComponent","i0.ɵɵpropertyInterpolate","LoadingScreenComponent","_elmRef","_changeDetectorRef","debounceTime","nativeElement","style","display","ngAfterViewInit","loadingSubscription","detectChanges","ngOnDestroy","unsubscribe","ElementRef","ChangeDetectorRef","PdfModalService","print","pdf_generate","base_64","generate_print","html","FileService","_toastrService","translate","addFile","toastr","file","target","files","imgObj","nombre","contentType","orden","archivo","name","tipo","reader","FileReader","readAsDataURL","onload","msgSuccess","titleFile","onerror","base64ToBlob","base64","byteCharacters","atob","byteNumbers","charCodeAt","byteArray","Uint8Array","Blob","blobToDowload","blob","anchor","document","createElement","download","href","URL","createObjectURL","dataset","downloadurl","join","click","base64ToFileDowload","i3","TranslateService","PdfModalComponent","_pdfModalService","fileService","domSanitizer","pdfBase64","resp","getElementById","innerHTML","imprimir","iframe","frames","contentWindow","head","i3$1","DomSanitizer","ɵɵpureFunction0","_c1$1","AuthService","httpClient","url_host","login","seleccionEmpresa","Auth","setlogin","user","key","config","startAuth","isLogin","quitarUsuario","verificaLogin","usuario","getUser","getDetalsUser","usuarioDetalles","loginOut","quitarEmpresaAdministrativa","Usuario","us","selectEmpresa","httpOptions","Accept-type","setEmpresa","empresa","quitarModulo","i0.ɵɵtextInterpolate","LoginModalComponent","authService","username","undefined","password","empresas","entrar","form","valid","index","entrarEmpresa","_error","_empresa","SessionCajaService","ctx_r1","editMode","SessionCreateComponent","sessionCajaService","showCreateSession","caja","sessionEdit","session","inicio","Date","getTime","termino","monedaDenominacionList","labels","title","console","log","setSession","movimientosCaja","monto","z","closeModal","_a","toPromise","edit","ClienteService","validar_archivos_bss","PaginateService","getPage","rows","total","offset","filtro","getParams","page","param","getOrden","arg","setDefaultLang","dat","ordenar","tra","values","forEach","elem","erro","SelectClienteComponent","clienteService","paginate","selectMode","select","clientes","cargarDatosClientes","event","first","trim","aplicarFiltro","seleccionaCliente","clienteSeleccionado","cerrar","i0.ɵɵpropertyInterpolate1","datoPersona","Persona","contactos","datoDirecciones","representanteLegal","PersonaFisica","personaMoral","PersonaMoral","catalogoTipo","ClasificadorTipo","clasificadorTipo","personaFisica","ProveedorService","SelectProveedorComponent","proveedorService","paginanateService","proveedorSeleccionado","Proveedor","proveedores","cargarDatosProveedores","pagina","cerrarModal","seleccionarProveedor","_c0$4","StockService","obtenerExistenciasArticulosDescripcion","parametros","AlmacenService","obtenerAlmacenEmpresa","ArticuloInformacionService","obtenerExistencias","articulo","uRL","i0.ɵɵstyleProp","SeleccionArticuloInformacionComponent","articuloInformacionService","eventSelection","columnsData","field","header","width","OnLoad","OnResize","isMovil","existenciasList","OnShow","titulo","onSelectedUbicacion","ubicacionRow","ubicacion","ctx_r4","articuloSelected","ɵɵresolveWindow","SeleccionaArticuloComponent","_stockService","_paginateService","_almacenService","manejaUnidadSecundaria","emitFilaSeleccionada","emitShowArticulos","articulosList","busquedaArticulos","tipoBusqueda","showModalInformacion","showFirstTime","clasificadorList","configuracion","almacenList","obtenerExistenciaArticulos","obtenerExistenciaArticulosShow","almacen","noOcupaAlamacen","movimiento","tipoPrecio","tipoArticulo","numeroPrecioDefault","articulosDescripcion","clasificadores","catch","obtenerExistenciaArticulosVal","obtenerExistenciaArticulosKey","filaSeleccionada","emitirShowArticulos","seriesArticulo","series","onShowInformacion","eventArticulo","onEventInformacion","showArticulos","_c1$3","AcreedorService","i0.ɵɵattribute","SelectAcreedorComponent","acreedorService","acreedorSeleccionado","acreedores","cargarDatosAcreedores","seleccionarAcreedor","_c0$7","primeNg","CardModule","TooltipModule","OverlayPanelModule","RadioButtonModule","CheckboxModule","AutoCompleteModule","TableModule","TreeTableModule","CalendarModule","ButtonModule","InputTextModule","DropdownModule","InputMaskModule","MessagesModule","MessageModule","PaginatorModule","ConfirmDialogModule","ProgressBarModule","TriStateCheckboxModule","KeyFilterModule","InputSwitchModule","DialogModule","TabViewModule","PanelModule","ToolbarModule","SplitButtonModule","FieldsetModule","TreeModule","TabMenuModule","MenubarModule","primeNgServices","ConfirmationService","HttpLoaderFactory","TranslateHttpLoader","CoreLibModule","providers","provide","HTTP_INTERCEPTORS","useClass","multi","imports","CommonModule","FormsModule","ToastrModule","forRoot","TranslateModule","loader","TranslateLoader","useFactory","deps","declarations","i12","i13","i14","i15","i16","i17","i8$1","i4","i20","i7","i6","i23","i24","i25","i26","i10","i28","i29","i30","i31","i32","i4$2","i34","i35","i36","i37","i38","i39","i40","i41","exports","ControlAccesoService","cambioAcciones","changeDetalleUsuario","set","detallesUsuarios","canActivete","rols","permiso","grupoPermisos","roles","filter","InitService","initConfig","response","hash","cargaConfig","empresaAdmin","MessageService","deployMessage","msg","info","warning","msgs","severity","summary","detail","mensaje","PersonaMoralService","CanActivateGuard","controlAccesoService","rol","method","canActivate","permisos","CatalogoAdicionalService","Authenticated","router","load","authority","navigate","regresaAlprincipal","host","location","i3$2","Router","VersionCheckService","currentHash","versionado","frequency","initVersionCheck","setInterval","checkVersion","hasHashChanged","confirm","reload","newHash","AgenteService","saveUsuarioAgente","getUsuarioAgente","obtenerAgenteEmpresa","datoDireccion","DatoDireccion","BancoService","CatalogoTipoService","ClasificadorTipoService","ClaveMovimientoService","agenteCobrador","Agente","agenteVendedor","banco","Banco","estatus","cliente","Cliente","flete","Flete","ClienteCuentaBancoService","saveAll","p","cuentas","ClienteFleteService","fletes","tipoContacto","TipoContacto","DatoContactoService","DatoDireccionService","DepartamentoService","claveFormaPagoEfectivo","FormaPago","Empresa","EmpresaService","getByEmpresa","FleteService","FormaPagoService","MonedaService","PersonaFisicaService","getGeneros","getEstadoCivil","proveedor","ProveedorCuentaBancoService","ProveedorFleteService","ClaveAumentoDisminucionService","SerieDocumentoService","getTipos","getReporte","TipoContactoService","UbicacionService","TipoCatalogo","ARTICULO","USO_CFDI","AcreedorCuentaContableService"],"mappings":"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","sourcesContent":["\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { Usuario } from '../models/Usuario';\nimport { Injectable } from '@angular/core';\n@Injectable({\n providedIn: 'root' \n})\nexport class GlobalService {\n\n usuarioInstance: Usuario;\n\n constructor(\n private http: HttpClient\n ) {\n }\n\n setConfiguracion() {\n this.http.get('assets/config.json').subscribe(\n (data: any) => {\n localStorage.setItem('config', JSON.stringify(data));\n }\n );\n }\n\n obtieneConfiguracion() {\n return JSON.parse(localStorage.getItem('config'));\n }\n\n getUrl(urlComponente?: string) {\n return this.obtieneConfiguracion().url + (urlComponente ? '/' + urlComponente : '');\n }\n\n auth(params) {\n\n return this.http.post(this.getUrl() + '/login', params);\n }\n\n getUsuarioActual() {\n return this.http.get(this.getUrl() + '/usuario/obtieneUsuarioActual', this.buildAuth());\n }\n\n buildAuth() {\n const data = this.getUsuario();\n return {\n headers: new HttpHeaders({\n 'Authorization': data.token_type + ' ' + data.access_token,\n 'Content-Type': 'application/json',\n 'Accept': 'application/json'\n })\n };\n }\n\n validateEndPoint() {\n\n return this.http.get(this.getUrl() + '/validate', this.buildAuth());\n }\n\n closeEndPoint() {\n localStorage.removeItem('usuario');\n this.setUsuarioInstance(null);\n }\n\n getUsuario() {\n return JSON.parse(localStorage.getItem('usuario'));\n }\n\n setUsuarioInstance(usuarioInstance) {\n this.usuarioInstance = usuarioInstance;\n }\n \n getLang() {\n let lang = localStorage.getItem('lang');\n return lang ? lang : 'es';\n }\n\n setModulo(modulo) {\n return this.http.post(this.getUrl() + '/usuario/setModulo', modulo, this.buildAuth());\n }\n\n \n}\n\n","// projects/erp-core/src/lib/services/api.service.ts\n\nimport { Injectable } from '@angular/core';\nimport { HttpClient, HttpParams } from '@angular/common/http';\nimport { Observable } from 'rxjs';\nimport { GlobalService } from './global.service'; // Usaremos GlobalService para la URL y la autenticación\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ApiService {\n\n constructor(\n private http: HttpClient,\n // Inyectamos GlobalService para usar sus métodos de ayuda (construir URL y cabeceras)\n private global: GlobalService\n ) {}\n\n /**\n * Realiza una petición GET genérica y autenticada usando HttpParams.\n * @param endpoint El endpoint del API (ej. '/FormaDePago')\n * @param queryParams Un objeto clave-valor para los parámetros de la URL.\n */\n public get<T>(endpoint: string, queryParams?: { [param: string]: any }): Observable<T> {\n \n // 1. Construye HttpParams de forma segura. Se encarga del URL encoding.\n const params = new HttpParams({ fromObject: queryParams });\n\n // 2. Combina las opciones: cabeceras de GlobalService y los nuevos params.\n const options = {\n ...this.global.buildAuth(), // Obtiene { headers: ... }\n params: params // Añade los HttpParams\n };\n\n const url = this.global.getUrl(endpoint);\n return this.http.get<T>(url, options);\n }\n\n\n /**\n * Realiza una petición POST genérica y autenticada.\n * @param endpoint El endpoint del API\n * @param body El cuerpo de la petición\n */\n public post<T>(endpoint: string, body: any): Observable<T> {\n const url = this.global.getUrl(endpoint);\n const options = this.global.buildAuth();\n return this.http.post<T>(url, body, options);\n }\n\n /**\n * Realiza una petición PUT genérica y autenticada.\n * @param endpoint El endpoint del API\n * @param id El ID del recurso a actualizar\n * @param body El cuerpo de la petición\n */\n public put<T>(endpoint: string, id: number | string, body: any): Observable<T> {\n const url = `<span class=\"math-inline\">\\{this\\.global\\.getUrl\\(endpoint\\)\\}/</span>{id}`;\n const options = this.global.buildAuth();\n return this.http.put<T>(url, body, options);\n }\n\n /**\n * Realiza una petición DELETE genérica y autenticada.\n * @param endpoint El endpoint del API\n * @param id El ID del recurso a eliminar\n */\n public delete<T>(endpoint: string, id: number | string): Observable<T> {\n const url = `<span class=\"math-inline\">\\{this\\.global\\.getUrl\\(endpoint\\)\\}/</span>{id}`;\n const options = this.global.buildAuth();\n return this.http.delete<T>(url, options);\n }\n}","/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise, SuppressedError, Symbol, Iterator */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.unshift(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.unshift(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n};\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === \"function\" ? Iterator : Object).prototype);\r\n return g.next = verb(0), g[\"throw\"] = verb(1), g[\"return\"] = verb(2), typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = Object.create((typeof AsyncIterator === \"function\" ? AsyncIterator : Object).prototype), verb(\"next\"), verb(\"throw\"), verb(\"return\", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; }\r\n function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nvar ownKeys = function(o) {\r\n ownKeys = Object.getOwnPropertyNames || function (o) {\r\n var ar = [];\r\n for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;\r\n return ar;\r\n };\r\n return ownKeys(o);\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== \"default\") __createBinding(result, mod, k[i]);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n\r\nexport function __addDisposableResource(env, value, async) {\r\n if (value !== null && value !== void 0) {\r\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\r\n var dispose, inner;\r\n if (async) {\r\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\r\n dispose = value[Symbol.asyncDispose];\r\n }\r\n if (dispose === void 0) {\r\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\r\n dispose = value[Symbol.dispose];\r\n if (async) inner = dispose;\r\n }\r\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\r\n if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } };\r\n env.stack.push({ value: value, dispose: dispose, async: async });\r\n }\r\n else if (async) {\r\n env.stack.push({ async: true });\r\n }\r\n return value;\r\n\r\n}\r\n\r\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\r\n var e = new Error(message);\r\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\r\n};\r\n\r\nexport function __disposeResources(env) {\r\n function fail(e) {\r\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\r\n env.hasError = true;\r\n }\r\n var r, s = 0;\r\n function next() {\r\n while (r = env.stack.pop()) {\r\n try {\r\n if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);\r\n if (r.dispose) {\r\n var result = r.dispose.call(r.value);\r\n if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\r\n }\r\n else s |= 1;\r\n }\r\n catch (e) {\r\n fail(e);\r\n }\r\n }\r\n if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();\r\n if (env.hasError) throw env.error;\r\n }\r\n return next();\r\n}\r\n\r\nexport function __rewriteRelativeImportExtension(path, preserveJsx) {\r\n if (typeof path === \"string\" && /^\\.\\.?\\//.test(path)) {\r\n return path.replace(/\\.(tsx)$|((?:\\.d)?)((?:\\.[^./]+?)?)\\.([cm]?)ts$/i, function (m, tsx, d, ext, cm) {\r\n return tsx ? preserveJsx ? \".jsx\" : \".js\" : d && (!ext || !cm) ? m : (d + ext + \".\" + cm.toLowerCase() + \"js\");\r\n });\r\n }\r\n return path;\r\n}\r\n\r\nexport default {\r\n __extends: __extends,\r\n __assign: __assign,\r\n __rest: __rest,\r\n __decorate: __decorate,\r\n __param: __param,\r\n __esDecorate: __esDecorate,\r\n __runInitializers: __runInitializers,\r\n __propKey: __propKey,\r\n __setFunctionName: __setFunctionName,\r\n __metadata: __metadata,\r\n __awaiter: __awaiter,\r\n __generator: __generator,\r\n __createBinding: __createBinding,\r\n __exportStar: __exportStar,\r\n __values: __values,\r\n __read: __read,\r\n __spread: __spread,\r\n __spreadArrays: __spreadArrays,\r\n __spreadArray: __spreadArray,\r\n __await: __await,\r\n __asyncGenerator: __asyncGenerator,\r\n __asyncDelegator: __asyncDelegator,\r\n __asyncValues: __asyncValues,\r\n __makeTemplateObject: __makeTemplateObject,\r\n __importStar: __importStar,\r\n __importDefault: __importDefault,\r\n __classPrivateFieldGet: __classPrivateFieldGet,\r\n __classPrivateFieldSet: __classPrivateFieldSet,\r\n __classPrivateFieldIn: __classPrivateFieldIn,\r\n __addDisposableResource: __addDisposableResource,\r\n __disposeResources: __disposeResources,\r\n __rewriteRelativeImportExtension: __rewriteRelativeImportExtension,\r\n};\r\n","import { Injectable } from \"@angular/core\";\nimport { ApiService } from \"../../services/api.service\";\nimport { Observable } from \"rxjs\";\n\n@Injectable({\n providedIn: 'root'\n}) \nexport class CuentaContableService {\n private endpoint = 'cuentaContable';\n constructor(private api: ApiService){\n }\n\n getAll(params?: any): Observable<any> {\n return this.api.get<any>(this.endpoint, params);\n }\n\n obtieneCuentasContablesRecursivo(): Observable<any> {\n return this.api.get<any>(`${this.endpoint}/obtieneCuentasContablesRecursivo`);\n }\n\n get(id: number): Observable<any> {\n return this.api.get<any>(`${this.endpoint}/${id}`);\n }\n\n save(obj: any): Observable<any> {\n return this.api.post<any>(this.endpoint, obj);\n }\n\n update(obj: any): Observable<any> {\n return this.api.put<any>(this.endpoint, obj.id, obj);\n }\n\n delete(id: number): Observable<any> {\n return this.api.delete<any>(this.endpoint, id);\n }\n}","<input type=\"text\" style=\"width: 100%;\" pInputText placeholder=\"Cuenta o descripción\" [(ngModel)]=\"query\" (keyup)=\"filterAccounts($event)\">\n\n<div style=\"padding: 10px;\">\n <p-treeTable [value]=\"cuentasContables?cuentasContables:tempAccounts\" [scrollable]=\"true\" [style]=\"{width: '100%'} \" [scrollHeight]=\"maxH + 'px'\" [resizableColumns]=\"true\">\n <ng-template pTemplate=\"header\">\n <tr>\n <th style=\"width: 150px;\">Cuenta contable</th>\n <th style=\"width: 150px;\">Descripción</th>\n <th style=\"width: 90px;\">Naturaleza</th>\n <th style=\"width: 60px;\">Tipo</th>\n <th style=\"width: 200px;\">Acciones</th>\n </tr>\n </ng-template>\n <ng-template pTemplate=\"body\" let-rowNode let-rowData=\"rowData\" style=\"width: 100%;\">\n <tr>\n <td class=\"ui-resizable-column\" style=\"width: 150px;\">\n <p-treeTableToggler [rowNode]=\"rowNode\"></p-treeTableToggler>\n {{rowData.cuentaContable}}\n </td>\n <td class=\"ui-resizable-column\" style=\"width: 150px;\">\n {{rowData.descripcion}}\n </td>\n <td class=\"ui-resizable-column\" style=\"width: 90px;\">\n {{rowData.naturaleza}}\n </td>\n <td class=\"ui-resizable-column\" style=\"width: 60px;\">\n {{rowData.tipo}}\n </td>\n <td class=\"ui-resizable-column\" style=\"width: 200px;\">\n <div class=\"button-row\">\n <button pButton type=\"button\" icon=\"pi pi-check\" class=\"ui-button-raised ui-button-success\" (click)=\"selectCuentaContable(rowData)\" *ngIf=\"typeAccount==1 && rowData.cuentaRegistro\"></button>\n <button pButton type=\"button\" icon=\"pi pi-check\" class=\"ui-button-raised ui-button-success\" (click)=\"selectCuentaContable(rowData)\" *ngIf=\"typeAccount==2 && !rowData.cuentaRegistro\"></button>\n </div>\n </td>\n </tr>\n </ng-template>\n </p-treeTable>\n</div>","import { Component, OnInit, Input, Output, EventEmitter } from '@angular/core';\nimport { CuentaContableModel } from '../../modelos/cuentaContable.model';\nimport { CuentaContableService } from '../../servicios/cuentacontable.service';\n\n@Component({\n selector: 'lib-cclista',\n templateUrl: './cclista.component.html',\n styleUrls: ['./cclista.component.css']\n})\nexport class CclistaComponent implements OnInit {\n\n @Input()\n isShared: boolean;\n @Input()\n typeAccount: number;\n @Output()\n evSelectedAccount: EventEmitter<CuentaContableModel>;\n cuentasContables: any[] = [];\n maxH = 720;\n query: any = \"\";\n tempAccounts: CuentaContableModel[] = [];\n\n cuentaSeleccionada: CuentaContableModel;\n\n constructor(private _cuentaContableService: CuentaContableService) {\n this.evSelectedAccount = new EventEmitter<CuentaContableModel>();\n }\n\n ngOnInit() {\n this.maxH = window.innerHeight - 320;\n this.obtenerCuentasContablesRecursivo();\n }\n\n obtenerCuentasContablesRecursivo() {\n this._cuentaContableService.obtieneCuentasContablesRecursivo().subscribe((result: any) => {\n if (result) {\n this.cuentasContables = result;\n this.sortAccounts();\n }\n });\n }\n\n sortAccounts() {\n this.cuentasContables.sort(function (a, b) {\n // get symbol for string\n let characterBreak = '.';\n const listA: any[] = a.data.cuentaContable.split(characterBreak);\n const listB: any[] = b.data.cuentaContable.split(characterBreak);\n\n if (listA.length > 0 && listB.length > 0) {\n if (listA.length === listB.length) {\n for (let i = 0; i < listA.length; i++) {\n if (parseInt(listA[i]) > parseInt(listB[i])) {\n return 1;\n }\n if (parseInt(listA[i]) < parseInt(listB[i])) {\n return -1;\n }\n }\n return 0;\n }\n if (listA.length < listB.length) {\n for (let i = 0; i < listA.length; i++) {\n if (parseInt(listA[i]) > parseInt(listB[i])) {\n return 1;\n }\n if (parseInt(listA[i]) < parseInt(listB[i])) {\n return -1;\n }\n }\n return -1;\n }\n if (listB.length < listA.length) {\n for (let i = 0; i < listB.length; i++) {\n if (parseInt(listA[i]) > parseInt(listB[i])) {\n return 1;\n }\n if (parseInt(listA[i]) < parseInt(listB[i])) {\n return -1;\n }\n }\n return 1;\n }\n }\n return 0;\n });\n for (let item of this.cuentasContables) {\n if (item.children) {\n this.sortItem(item);\n }\n }\n this.tempAccounts = this.cuentasContables;\n }\n\n sortItem(account: any) {\n account.children.sort(function (a, b) {\n // get symbol for string\n let characterBreak = '.';\n const listA: any[] = a.data.cuentaContable.split(characterBreak);\n const listB: any[] = b.data.cuentaContable.split(characterBreak);\n if (listA.length > 0 && listB.length > 0) {\n if (listA.length === listB.length) {\n for (let i = 0; i < listA.length; i++) {\n if (parseInt(listA[i]) > parseInt(listB[i])) {\n return 1;\n }\n if (parseInt(listA[i]) < parseInt(listB[i])) {\n return -1;\n }\n }\n return 0;\n }\n if (listA.length < listB.length) {\n for (let i = 0; i < listA.length; i++) {\n if (parseInt(listA[i]) > parseInt(listB[i])) {\n return 1;\n }\n if (parseInt(listA[i]) < parseInt(listB[i])) {\n return -1;\n }\n }\n return -1;\n }\n if (listB.length < listA.length) {\n for (let i = 0; i < listB.length; i++) {\n if (parseInt(listA[i]) > parseInt(listB[i])) {\n return 1;\n }\n if (parseInt(listA[i]) < parseInt(listB[i])) {\n return -1;\n }\n }\n return 1;\n }\n }\n return 0;\n });\n for (let item of account.children) {\n this.sortItem(item);\n }\n }\n\n\n\n selectCuentaContable(account: CuentaContableModel) {\n this.evSelectedAccount.emit(account);\n }\n\n filterAccounts(evt: any) {\n if (!evt) {\n const temp = this.resetAccount();\n this.cuentasContables = temp;\n return;\n }\n this.cuentasContables = this.browseAccount(this.tempAccounts);\n }\n\n resetAccount() {\n this.query = '';\n let accounts = [];\n for (let cc of this.tempAccounts) {\n accounts.push(cc);\n }\n return accounts;\n }\n\n\n\n browseAccount(accounts: any) {\n let listAccounts: any[] = [];\n if (this.query === '') {\n const temp = this.resetAccount();\n this.cuentasContables = temp;\n } else {\n for (let account of accounts) {\n if (account.data.cuentaContable.toString().toLowerCase().includes(this.query.toLowerCase()) || account.data.descripcion.toString().toLowerCase().includes(this.query.toLowerCase())) {\n listAccounts = listAccounts.concat({\n data: account.data,\n children: this.browseAccount(account.children)\n });\n } else {\n listAccounts = listAccounts.concat(this.browseAccount(account.children));\n }\n }\n return listAccounts;\n }\n }\n\n}\n","import { Component, OnInit, ViewChild, Input, Output, EventEmitter } from '@angular/core';\nimport { CuentaContableModel } from '../../modelos/cuentaContable.model';\n\n@Component({\n selector: 'lib-ccseleccion-dialog',\n templateUrl: './ccseleccion-dialog.component.html',\n styleUrls: ['./ccseleccion-dialog.component.css']\n})\nexport class CcseleccionDialogComponent implements OnInit {\n @ViewChild(\"dialog\", {static: true}) dialog;\n @Input()\n tipoCuenta: number; // 1: registro 2: cuenta mayor\n @Input()\n displayShowCuentas: boolean;\n cuentasContables: any = [];\n @Output()\n evSelectedAccount: EventEmitter<CuentaContableModel>;\n maxH = 720;\n is_movil: boolean;\n is_media: boolean;\n is_large: boolean;\n\n maxW = 0;\n flagModal: boolean = true;\n cols: any[];\n size = 350;\n constructor() { \n this.maxH = window.innerHeight - 370;\n this.maxW = window.innerWidth;\n this.size = this.maxW - 50;\n this.evSelectedAccount = new EventEmitter<CuentaContableModel>();\n }\n\n ngOnInit() {\n }\n\n getAccount(account:any){\n this.evSelectedAccount.emit(account);\n }\n\n hiddenDialog(evt: any) {\n this.evSelectedAccount.emit(null);\n }\n\n}\n","<p-dialog header=\"Selecciona cuenta contable\" [(visible)]=\"displayShowCuentas\" [modal]=\"true\" [style]=\"{'width': size+'px', 'min-width': '200px'}\" [minY]=\"70\" [baseZIndex]=\"10000\" (onHide)=\"hiddenDialog($event)\" [blockScroll]=\"true\" [draggable]=\"false\" [blockScroll]=\"true\"\n [maximizable]=\"true\">\n <div class=\"padding10\" [ngStyle]=\"{'height': maxH+200+'px'}\">\n <lib-cclista [isShared]=\"true\" [typeAccount]=\"tipoCuenta\" (evSelectedAccount)=\"getAccount($event)\"></lib-cclista>\n </div>\n</p-dialog>","import { CclistaComponent } from './contabilidad/componentes/cclista/cclista.component';\nimport { CcseleccionDialogComponent } from './contabilidad/componentes/ccseleccion-dialog/ccseleccion-dialog.component';\n\nexport const contaComponents = [\n CclistaComponent,\n CcseleccionDialogComponent\n];\n","import { Injectable, Output, EventEmitter } from '@angular/core';\n\n@Injectable({\n providedIn: 'root'\n}) export class LoginModalService {\n\n @Output() modal = new EventEmitter() ;\n\n showModal(){\n this.modal.emit(true);\n }\n}","import { Injectable } from '@angular/core';\nimport { Subject } from \"rxjs\";\n\n@Injectable({\n providedIn: 'root'\n})\nexport class LoadingScreenService {\n\n private _loading: boolean = false;\n loadingStatus: Subject<boolean> = new Subject();\n\n get loading():boolean {\n return this._loading;\n }\n\n set loading(value) {\n this._loading = value;\n this.loadingStatus.next(value);\n }\n\n startLoading() {\n this.loading = true;\n }\n\n stopLoading() {\n this.loading = false;\n }\n}\n","import { Injectable } from '@angular/core';\nimport {\n HttpRequest,\n HttpHandler,\n HttpEvent,\n HttpInterceptor, HttpErrorResponse\n} from '@angular/common/http';\nimport { Observable, of, throwError } from 'rxjs';\nimport { catchError, tap } from 'rxjs/internal/operators';\n\nimport { ToastrService } from 'ngx-toastr';\nimport { LoginModalService } from '../components/login-modal/login-modal.service';\nimport { LoadingScreenService } from '../components/loading-screen/loading-screen.service';\n\n@Injectable()\nexport class httpInterceptor implements HttpInterceptor {\n constructor(\n private loginModalService: LoginModalService,\n private toastrService: ToastrService,\n private loadingScreenService : LoadingScreenService\n ) {\n }\n\n intercept(request: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {\n\n this.loadingScreenService.startLoading();// this.loadingService.start();\n return next.handle(request).pipe(catchError((error, caught) => {\n this.loadingScreenService.stopLoading();\n this.handleError(error);\n return throwError(error);\n }) as any, tap((res : any) => {\n // @ts-ignore\n const body = (res.body) ? res.body : null;\n if(res.type !== 0 && res.type === 4){\n this.loadingScreenService.stopLoading();\n }\n if (body) {\n let message = (body.success) ? body.success : null;\n\n if (message) {\n this.toastrService.success(message, 'Exito', {\n timeOut: 3000, closeButton: true\n });\n }\n }\n }) as any);\n }\n\n private handleError(err: HttpErrorResponse): Observable<any> {\n if (err.status === 401 || err.status === 403) {\n if (err.status === 401) {\n //this.router.navigateByUrl('/login');\n // this.router.navigateByUrl('/sing_out');\n this.loginModalService.showModal();\n }\n if (err.status === 403)\n this.toastrService.error('No tiene permiso sobre esta accion', 'Error', {\n timeOut: 5000\n });\n return of(err.message);\n }\n if(err.status !== 401 && err.status !== 403 && err.status !== 409){\n this.toastrService.error('Ocurrio un error al procesar su solicitud', 'Error', {\n timeOut: 5000\n });\n }\n this.readError(err);\n return of(err);\n }\n\n readError(respuesta: any) {\n if(respuesta.error){\n if (respuesta.error.error)\n if (respuesta.error.error.message){\n this.toastrService.error(respuesta.error.error.message, 'Error', {\n timeOut: 3000\n });\n }\n if (respuesta.error.message){\n this.toastrService.error(respuesta.error.message, 'Error', {\n timeOut: 3000\n });\n }\n\n if(respuesta.error._errors){\n if (Array.isArray(respuesta.error._errors))\n for (let indexError = 0; indexError < respuesta.error._errors.length; indexError++) {\n this.toastrService.error(respuesta.error._errors[indexError].message, 'Error', {\n timeOut: 3000,\n closeButton: true\n });\n }\n }\n }\n\n }\n\n}\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-error404',\n templateUrl: './error404.component.html',\n styleUrls: ['./error404.component.css']\n})\nexport class Error404Component implements OnInit {\n\n constructor() { }\n\n ngOnInit() {\n }\n\n}\n","<div class=\"col-md-12 sec_sof\">\n <div class=\"row\">\n <div class=\"col col-center\">\n <div class=\"center\">\n <div class=\"error\">\n Error 404\n </div>\n <div class=\"col-12\">\n <p>La pagina solicitada no fue encontrada</p>\n </div>\n </div> \n </div>\n \n </div>\n</div>\n","import { Injectable, Output, EventEmitter } from '@angular/core';\n\n@Injectable({\n providedIn : 'root'\n}) export class LoadingService {\n\n @Output() loading = new EventEmitter();\n\n setLoading(visible) {\n if(visible)\n this.start();\n else\n this.stop();\n }\n\n start() {\n this.loading.emit(true);\n }\n\n stop() {\n this.loading.emit(false);\n }\n\n}\n","import { Component, Input } from '@angular/core';\nimport { LoadingService } from './loading.service';\ndeclare var $ : any;\n@Component({\n selector: 'loading',\n templateUrl: './loading.component.html',\n styleUrls: ['./loading.component.css']\n})\nexport class LoadingComponent {\n visible=false;\n @Input() logo_loading : string = 'assets/img/logo_visorus_loading.png';\n constructor(\n private loadingService: LoadingService\n ){\n\n this.loadingService.loading.subscribe( ( _visible: boolean) => {\n if( _visible && !this.visible ) {\n $('#modal_loading').modal('show');\n this.visible =true;\n } else {\n setTimeout(() => {\n $('#modal_loading').modal('hide'); \n \n }, 650);\n this.visible = false;\n }\n }\n );\n }\n}\n","<!-- Modal -->\n<div class=\"modal fade\" id=\"modal_loading\" tabindex=\"-1\" role=\"dialog\" aria-labelledby=\"exampleModalScrollableTitle\"\n data-backdrop=\"static\" data-keyboard=\"false\" aria-hidden=\"true\">\n <div class=\"modal-dialog modal-dialog-scrollable\" role=\"document\">\n <div class=\"modal-content\">\n <div class=\"modal-body\">\n <div class=\"row justify-content-center\">\n <div class=\"col-lg-4 col-md-4 col-sm-10\">\n <div class=\"loader\">\n <span class=\"box\"></span>\n <span class=\"box\"></span>\n <div class=\"code\">\n <img src=\"{{logo_loading}}\" width=\"200px\">\n </div>\n <span class=\"txt\">{{'cargando' | translate}}...</span>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>","import { AfterViewInit, ChangeDetectorRef, Component, ElementRef, OnDestroy, Input } from '@angular/core';\nimport { LoadingScreenService } from \"./loading-screen.service\";\nimport { Subscription } from \"rxjs\";\nimport { debounceTime } from \"rxjs/operators\";\nimport { LoadingService } from '../loading/loading.service';\n\n@Component({\n selector: 'app-loading-screen',\n templateUrl: './loading-screen.component.html',\n styleUrls: ['./loading-screen.component.scss']\n})\nexport class LoadingScreenComponent implements AfterViewInit, OnDestroy {\n\n debounceTime: number = 250;\n loading: boolean = false;\n loadingSubscription: Subscription;\n @Input() logo_loading : string = 'assets/img/logo_visorus_loading.png';\n\n constructor(private loadingScreenService: LoadingScreenService,\n private _elmRef: ElementRef,\n private _changeDetectorRef: ChangeDetectorRef,\n private loadingService: LoadingService\n ){ \n this.loadingService.loading.subscribe( ( _visible: boolean) => {\n this._elmRef.nativeElement.style.display = _visible ? 'block' : 'none'; \n }\n );\n }\n\n ngAfterViewInit(): void {\n this._elmRef.nativeElement.style.display = 'none';\n this.loadingSubscription = this.loadingScreenService.loadingStatus.pipe(debounceTime(this.debounceTime)).subscribe(\n (status: boolean) => {\n this._elmRef.nativeElement.style.display = status ? 'block' : 'none';\n this._changeDetectorRef.detectChanges();\n }\n );\n }\n\n ngOnDestroy() {\n this.loadingSubscription.unsubscribe();\n }\n\n}\n","<div class=\"loading-screen-wrapper\">\n <div class=\"loading-screen-icon\">\n <div class=\"blobs\">\n <div class=\"blob-center\"></div>\n <div class=\"blob\"></div>\n <div class=\"blob\"></div>\n <div class=\"blob\"></div>\n <div class=\"blob\"></div>\n <div class=\"blob\"></div>\n <div class=\"blob\"></div>\n </div> \n </div>\n</div>\n","import { Injectable, EventEmitter, Output } from \"@angular/core\";\n\n@Injectable({\n providedIn: 'root'\n})\nexport class PdfModalService {\n @Output() visible = new EventEmitter();\n @Output() print = new EventEmitter();\n base_64 : any ;\n html : any;\n\n pdf_generate(base_64){\n this.base_64 = base_64;\n this.visible.emit(true);\n }\n \n generate_print(html){\n this.html = html;\n this.print.emit(true);\n }\n \n}","import { Injectable } from '@angular/core';\nimport {ToastrService} from \"ngx-toastr\";\nimport {TranslateService} from \"@ngx-translate/core\";\n\n@Injectable({\n providedIn: 'root'\n})\nexport class FileService {\n\n constructor(private _toastrService: ToastrService,\n private translate: TranslateService) { }\n\n addFile( evt , toastr = true ) {\n const file = evt.target.files[0];\n let imgObj: any = {\n id: null,\n nombre: '',\n contentType: '',\n orden: 0,\n archivo: ''\n };\n imgObj.nombre = file.name;\n imgObj.tipo = file.type;\n\n const reader = new FileReader();\n reader.readAsDataURL(file);\n reader.onload = () => {\n imgObj.archivo = reader.result;\n this.translate.get([ 'msgSuccess', 'titleFile' ] ).subscribe(\n ( data: any ) => {\n if(toastr)\n this._toastrService.success( data.msgSuccess, data.titleFile );\n }\n );\n };\n reader.onerror = (error) => {\n this.translate.get([ 'msgError', 'titleFile' ] ).subscribe(\n ( data: any ) => {\n if(toastr)\n this._toastrService.error( data['msgError'], data['titleFile'] );\n }\n );\n };\n return imgObj;\n }\n\n base64ToBlob(base64,type){\n let byteCharacters = atob ( base64)\n const byteNumbers = new Array(byteCharacters.length);\n for (let i = 0; i < byteCharacters.length; i++) {\n byteNumbers[i] = byteCharacters.charCodeAt(i);\n }\n let byteArray = new Uint8Array(byteNumbers);\n return new Blob([byteArray],{type: type});\n }\n\n blobToDowload(blob,type,name){\n let anchor = document.createElement('a');\n anchor.download = name;\n anchor.href = window.URL.createObjectURL(blob);\n anchor.dataset.downloadurl = [type, anchor.download, anchor.href].join(':');\n anchor.click();\n }\n\n base64ToFileDowload(base64,type,name){\n this.blobToDowload(this.base64ToBlob(base64,type),type,name);\n }\n\n}\n","<p-dialog [(visible)]=\"display\" [modal]=\"true\" [style]=\"{'width': size+'px', 'min-width': '200px'}\" [minY]=\"70\" [baseZIndex]=\"10000\" [blockScroll]=\"true\" \n [blockScroll]=\"true\" [maximizable]=\"true\"\n [breakpoint]=\"840\" [contentStyle]=\"{'overflow':'visible'}\">\n <div *ngIf=\"pdfBase64\" style=\"min-height: 90vh;\">\n <iframe style=\"width: 100%; height: 90vh;\" [src]=\"domSanitizer.bypassSecurityTrustResourceUrl('data:application/pdf;base64,'+pdfBase64)\"></iframe>\n </div>\n</p-dialog>\n\n","import { Component } from '@angular/core';\nimport { PdfModalService } from './pdf-modal.service';\nimport { FileService } from '../../services/file.service';\nimport { DomSanitizer } from '@angular/platform-browser';\n\n@Component({\n selector: 'pdf-modal',\n templateUrl: './pdf-modal.component.html',\n styleUrls: ['./pdf-modal.component.css']\n}) export class PdfModalComponent {\n display= false;\n pdfBase64= null;\n size = 840;\n constructor(\n private _pdfModalService : PdfModalService,\n private fileService : FileService,\n public domSanitizer : DomSanitizer\n ){\n _pdfModalService.visible.subscribe(resp =>{ \n if(_pdfModalService.base_64){\n this.display = resp;\n this.pdfBase64 = _pdfModalService.base_64\n /*\n let blob = fileService.base64ToBlob(_pdfModalService.base_64, \"application/pdf\");\n let blobUrl = URL.createObjectURL(blob);\n setTimeout(() => {\n let iframe = \"<iframe width='100%' height='100%' src='\" + blobUrl + \"'></iframe>\"; \n document.getElementById('_modal_pdf').innerHTML = iframe; \n },20); */\n }\n \n });\n _pdfModalService.print.subscribe(\n (resp : any)=>{\n this.display = resp;\n setTimeout(() => {\n let iframe = \"<iframe id='printf' width='100%' height='100%' ></iframe>\"\n document.getElementById('_modal_pdf').innerHTML = iframe;\n },20);\n\n setTimeout(() => {\n this.imprimir();\n },40);\n }\n );\n }\n\n imprimir(){ \n \n var iframe = window.frames['printf'];\n\n\n iframe.contentWindow.head.innerHTML = ` <link rel=\"stylesheet\" href=\"https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css\" integrity=\"sha384-Gn5384xqQ1aoWXA+058RXPxPg6fy4IWvTNh0E263XmFcJlSAwiGgFAW/dAiS6JXm\" crossorigin=\"anonymous\">\n <style>\n .table-hover tbody tr:hover {\n color: #ffffff;\n background-color: rgb(92, 180, 234);\n }\n .tr-select{\n color: #ffffff;\n background-color: rgb(92, 180, 234);\n }\n .td-header{\n background: #f3f3f3;\n color: #0d385d;\n border-color: 1px solid #0b4b87;\n }\n .td-yellow{\n background: #fff6d3;\n }\n .td-blue{\n background: #88d1ea;\n }\n .td-green{\n background: #b9d2a0;\n }\n </style>`;\n iframe.contentWindow.body.innerHTML =this._pdfModalService.html;\n \n //iframe.focus();\n // iframe.contentWindow.print();\n \n } \n \n\n\n}","\nexport class Usuario{\n username : string;\n token_type : string;\n access_token : string;\n expires_in : number;\n refresh_token : string;\n roles : any [];\n}\n","import { Usuario } from './Usuario';\n\nexport class Auth{\n login : boolean;\n usuario : Usuario;\n usuarioDetalles : any;\n}","import { Injectable, Output, EventEmitter } from \"@angular/core\";\nimport { HttpClient, HttpHeaders } from \"@angular/common/http\";\nimport { Usuario } from '../models/Usuario';\nimport { Auth } from '../models/auth';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class AuthService {\n usuario: Usuario;\n url_host = '';\n auth: Auth;\n @Output() login = new EventEmitter();\n @Output() seleccionEmpresa = new EventEmitter();\n constructor(\n private httpClient: HttpClient\n ) {\n this.auth = new Auth();\n }\n\n setlogin(user, key) {\n localStorage.setItem('lang', 'es');\n let config = JSON.parse(localStorage.getItem(\"config\"));\n if (config)\n if (config.url)\n this.url_host = config.url;\n return this.httpClient.post(this.url_host + '/login' + (key ? '/' + key : ''), user);\n }\n startAuth(user) {\n this.auth = user;\n this.login.emit(this.auth);\n }\n isLogin() {\n return localStorage.getItem('usuario') !== null;\n }\n\n quitarUsuario() {\n localStorage.removeItem('usuario');\n this.auth.login = false;\n this.login.emit(this.auth);\n }\n\n\n verificaLogin() {\n this.usuario = this.getUser();\n if (this.usuario.access_token) {\n this.getDetalsUser().subscribe(\n (resp: any) => {\n this.auth.usuarioDetalles = resp;\n this.auth.login = true;\n this.login.emit(this.auth);\n }, (error: any) => {\n this.quitarUsuario();\n }\n );\n } else {\n this.auth.usuarioDetalles = null;\n this.auth.login = false;\n this.login.emit(this.auth);\n }\n }\n\n\n loginOut() {\n\n this.quitarEmpresaAdministrativa().subscribe(\n (data: any) => {\n localStorage.removeItem('usuario');\n }, error => {\n localStorage.removeItem('usuario');\n }\n );\n\n localStorage.setItem('lang', 'es');\n this.auth.login = false;\n this.login.emit(this.auth);\n }\n\n getUser() {\n this.usuario = new Usuario();\n if (this.isLogin()) {\n let us = localStorage.getItem('usuario');\n if (us) {\n this.usuario = JSON.parse(us);\n }\n\n return this.usuario;\n } else {\n return this.usuario;\n }\n }\n\n getLang() {\n let lang = localStorage.getItem('lang');\n return lang ? lang : 'es';\n }\n\n selectEmpresa(e) {\n this.seleccionEmpresa.emit(e);\n }\n\n quitarEmpresaAdministrativa() {\n let usuario: Usuario;\n let token_type = '';\n let access_token = '';\n usuario = <Usuario>JSON.parse(localStorage.getItem(\"usuario\"));\n if (usuario) {\n token_type = usuario.token_type,\n access_token = usuario.access_token\n }\n let httpOptions = {\n headers: new HttpHeaders({\n 'Accept-type': 'application/json',\n 'Authorization': token_type + ' ' + access_token\n })\n };\n let config = JSON.parse(localStorage.getItem(\"config\"));\n if (config)\n if (config.url)\n this.url_host = config.url;\n\n return this.httpClient.post(this.url_host + '/usuario/setEmpresa', { id: 0 }, httpOptions);\n }\n setEmpresa(empresa) {\n // setEmpresaAdministrativa\n let usuario: Usuario;\n let token_type = '';\n let access_token = '';\n usuario = <Usuario>JSON.parse(localStorage.getItem(\"usuario\"));\n if (usuario) {\n token_type = usuario.token_type,\n access_token = usuario.access_token\n }\n let httpOptions = {\n headers: new HttpHeaders({\n 'Accept-type': 'application/json',\n 'Authorization': token_type + ' ' + access_token\n })\n };\n let config = JSON.parse(localStorage.getItem(\"config\"));\n if (config)\n if (config.url)\n this.url_host = config.url;\n\n return this.httpClient.post(this.url_host + '/usuario/setEmpresa', empresa, httpOptions);\n }\n setModulo(modulo) {\n // setEmpresaAdministrativa\n let usuario: Usuario;\n let token_type = '';\n let access_token = '';\n usuario = <Usuario>JSON.parse(localStorage.getItem(\"usuario\"));\n if (usuario) {\n token_type = usuario.token_type,\n access_token = usuario.access_token\n }\n let httpOptions = {\n headers: new HttpHeaders({\n 'Accept-type': 'application/json',\n 'Authorization': token_type + ' ' + access_token\n })\n };\n let config = JSON.parse(localStorage.getItem(\"config\"));\n if (config)\n if (config.url)\n this.url_host = config.url;\n\n return this.httpClient.post(this.url_host + '/usuario/setModulo', modulo, httpOptions);\n }\n quitarModulo() {\n // setEmpresaAdministrativa\n let usuario: Usuario;\n let token_type = '';\n let access_token = '';\n usuario = <Usuario>JSON.parse(localStorage.getItem(\"usuario\"));\n if (usuario) {\n token_type = usuario.token_type,\n access_token = usuario.access_token\n }\n let httpOptions = {\n headers: new HttpHeaders({\n 'Accept-type': 'application/json',\n 'Authorization': token_type + ' ' + access_token\n })\n };\n let config = JSON.parse(localStorage.getItem(\"config\"));\n if (config)\n if (config.url)\n this.url_host = config.url;\n\n return this.httpClient.post(this.url_host + '/usuario/setModulo', { id: 0 }, httpOptions);\n }\n\n getDetalsUser() {\n let usuario: Usuario;\n let token_type = '';\n let access_token = '';\n usuario = <Usuario>JSON.parse(localStorage.getItem(\"usuario\"));\n if (usuario) {\n token_type = usuario.token_type,\n access_token = usuario.access_token\n }\n let httpOptions = {\n headers: new HttpHeaders({\n 'Accept-type': 'application/json',\n 'Authorization': token_type + ' ' + access_token\n })\n };\n let config = JSON.parse(localStorage.getItem(\"config\"));\n if (config)\n if (config.url)\n this.url_host = config.url;\n\n return this.httpClient.get(this.url_host + '/usuario/obtieneUsuarioActual', httpOptions);\n }\n}\n","<div class=\"modal fade\" id=\"modalLogin\" tabindex=\"-1\" role=\"dialog\" aria-labelledby=\"exampleModalCenterTitle\" aria-hidden=\"true\">\n <div class=\"modal-dialog modal-dialog-centered\" role=\"document\">\n <div class=\"modal-content\">\n <div class=\"modal-body\">\n <div class=\"row justify-content-center\">\n <img src=\"assets/img/logo_visorus_loading.png\" alt=\"\">\n </div>\n <div class=\"row\" *ngIf=\"empresas.length == 0\">\n <div class=\"col-lg-12 col-md-12 col-sm-12\" >\n <form #datoForm=\"ngForm\" (ngSubmit)=\"entrar(datoForm)\" > \n <label class=\"error\" *ngIf=\"error\">{{'Usuario.errorLogin' | translate}}</label>\n <div class=\"form-group mb-3\">\n <label for=\"exampleInputEmail1\" >{{ 'Usuario.username' | translate }}</label>\n <input type=\"text\" class=\"form-control\" id=\"exampleInputEmail1\" aria-describedby=\"emailHelp\" #username=\"ngModel\"\n placeholder=\"{{ 'Usuario.username' | translate }}\" name=\"username\" [(ngModel)]=\"user.username\" required>\n </div>\n <div class=\"form-group mb-3\">\n <label for=\"exampleInputPassword1\">{{ 'Usuario.password' | translate }}</label>\n <input type=\"password\" class=\"form-control\" id=\"exampleInputPassword1\" placeholder=\"{{ 'Usuario.password' | translate }}\"\n name=\"password\" [(ngModel)]=\"user.password\" required>\n </div>\n \n <button type=\"submit\" class=\"btn btn-primary_low btn-lg btn-block my-5 text-light\" translate>entrar</button>\n </form>\n </div>\n </div> \n <div class=\"row\" *ngIf=\"empresas.length\">\n <div class=\"col-xl-12 col-lg-12 col-sm-12\">\n <h4>Selecciona la empresa</h4>\n <hr>\n </div>\n <div class=\"col-xl-6 col-lg-6 col-sm-12 mb-2\" *ngFor=\"let empresa of empresas\" style=\"cursor: pointer\">\n <div class=\"card\">\n <div class=\"card-body\">\n <h5>\n {{empresa.nombre}}\n </h5>\n </div>\n </div>\n </div>\n </div> \n \n </div>\n </div>\n </div>\n</div>","import { Component, OnInit } from '@angular/core';\nimport { LoginModalService } from './login-modal.service';\nimport { AuthService } from '../../services/auth.service';\ndeclare var $: any;\ndeclare var jQuery: any;\n@Component({\n selector: 'app-login-modal',\n templateUrl: './login-modal.component.html',\n styleUrls: ['./login-modal.component.css']\n})\nexport class LoginModalComponent {\n modal = false;\n user: any = { username : undefined , password : undefined}; \n error = false;\n \n empresas = [];\n\n constructor(\n private loginModalService : LoginModalService,\n private authService : AuthService\n ) { \n this.loginModalService.modal.subscribe( resp => {\n $('#modalLogin').modal('show');\n this.user = { username : undefined , password : undefined}; \n this.empresas = [];\n } );\n }\n\n entrar(form){\n if(form.valid){\n this.user.key=\"\";\n let password = this.user.password.split('_');\n if(password.length > 1){\n this.user.key= password[0];\n this.user.password = '';\n for (let index = 1; index < password.length; index++) { \n this.user.password += password[index];\n }\n }\n\n this.authService.setlogin(this.user, this.user.key ).subscribe(\n (resp : any)=>{\n localStorage.setItem('usuario',JSON.stringify(resp)); \n let usuario = resp;\n this.authService.getDetalsUser().subscribe(\n (resp : any)=>{\n if(!resp.empresa){\n this.empresas = resp.empresas;\n if(this.empresas.length == 1){\n this.entrarEmpresa(this.empresas[0]);\n }\n }\n let auth : any = {};\n auth.login= true;\n auth.usuario= usuario;\n auth.usuarioDetalles = resp;\n this.authService.startAuth(auth);\n this.error= false;\n $('#modalLogin').modal('hide');\n }\n );\n \n }, (_error : any)=>{\n this.error= true;\n }\n );\n }\n}\n\n\nentrarEmpresa(_empresa){\n this.authService.setEmpresa(_empresa).subscribe(\n (resp : any)=>{\n $('#modalLogin').modal('hide');\n }\n );\n}\n\n\n}\n","\nimport { Injectable } from \"@angular/core\";\nimport { ApiService } from \"../../services/api.service\";\nimport { Observable } from \"rxjs\";\n\n@Injectable({\n providedIn: 'root'\n })\n export class SessionCajaService {\n private endpoint = 'sessionCaja';\n constructor(private api: ApiService){\n }\n\n getAll(params?: any): Observable<any> {\n return this.api.get<any>(this.endpoint, params);\n }\n\n get(id: number): Observable<any> {\n return this.api.get<any>(`${this.endpoint}/${id}`);\n }\n\n save(obj: any): Observable<any> {\n return this.api.post<any>(this.endpoint, obj);\n }\n\n update(obj: any): Observable<any> {\n return this.api.put<any>(this.endpoint, obj.id, obj);\n }\n \n delete(id: number): Observable<any> {\n return this.api.delete<any>(this.endpoint, id);\n }\n}","<p-dialog [(visible)]=\"showCreateSession\" [modal]=\"flagModal\" (onHide)=\"closeModal()\" (onShow)=\"setSession()\"\n [closeOnEscape]=\"flagModal\" [closable]=\"flagModal\" [blockScroll]=\"true\" [style]=\"{width: '750px'}\">\n\n <ng-template pTemplate=\"header\">\n <a class=\"text-primary\">{{labels.title}}: </a>\n </ng-template>\n\n <div class=\"grid grid-fluid\" *ngIf=\"caja\">\n <div class=\"p-field col-12\">\n <label for=\"nombreCaja\">Nombre de caja: </label>\n <input pInputText type=\"text\" id=\"nombreCaja\" [(ngModel)]=\"caja.nombre\" [disabled]=\"true\">\n </div>\n\n <div class=\"p-field col-12 md:col-6\">\n <label for=\"saldoCaja\">Saldo: </label>\n <input pInputText type=\"number\" id=\"saldoCaja\" [(ngModel)]=\"session.monto\" [disabled]=\"editMode\">\n </div>\n\n <div class=\"p-field col-12 md:col-6\">\n <label for=\"numeroZ\">Numero Z:</label>\n <input pInputText type=\"number\" id=\"numeroZ\" [(ngModel)]=\"session.z\" [disabled]=\"true\">\n </div>\n </div>\n\n <div>\n Este agente no esta asignado a una caja\n </div>\n\n <ng-template pTemplate=\"footer\">\n <button pButton type=\"button\" label=\"Guardar\" (click)=\"save()\" *ngIf=\"!editMode && caja\" class=\"p-button-sm\"></button>\n <button pButton type=\"button\" label=\"Cerrar session\" (click)=\"edit()\" *ngIf=\"editMode && caja\" class=\"p-button-sm p-button-success\"></button>\n <button pButton type=\"button\" label=\"Cancelar\" (click)=\"closeModal()\" class=\"p-button-sm p-button-danger\"></button>\n </ng-template>\n\n</p-dialog>","import { Component, OnInit, Input, EventEmitter, Output } from '@angular/core';\nimport { SessionCajaService } from '../sessionCaja.service';\n\n\n@Component({\n selector: 'session-create',\n templateUrl: './session-create.component.html',\n styleUrls: ['./session-create.component.css']\n})\nexport class SessionCreateComponent implements OnInit {\n\n @Input() showCreateSession: boolean = false;\n @Input() caja: any = {};\n @Input() monedaDenominacionList:any[];\n\n @Input() sessionEdit?: any = null\n // @Input() closeSession?: boolean\n @Output() status = new EventEmitter();\n @Output() success = new EventEmitter();\n \n session: any = {\n inicio: new Date().getTime(),\n termino: null,\n monedaDenominacionList: []\n }\n flagModal: boolean = true\n labels: any = {\n title: \"Crear nueva session de caja\"\n }\n\n resp: any = {}\n editMode:boolean = false\n\n constructor(private sessionCajaService: SessionCajaService) { }\n\n ngOnInit() {\n console.log(\"denominacionList\",this.monedaDenominacionList); \n }\n\n setSession() {\n if(this.sessionEdit){\n this.session = this.sessionEdit;\n this.session.monedaDenominacionList= this.monedaDenominacionList;\n if(this.session.movimientosCaja){\n this.session.monto = this.session.movimientosCaja[0].monto\n }\n this.labels = {\n title: \"Cerrar session\"\n }\n this.editMode = true\n }\n else if (this.caja) {\n this.labels.title = \"Crear nueva session de caja\"\n this.session.caja = this.caja\n this.session.z = this.caja.z\n }\n }\n\n closeModal() {\n this.session = {}\n this.editMode = false\n this.status.emit({ status: false })\n }\n\n async save() {\n this.resp = await this.sessionCajaService.save(this.session).toPromise() || null\n if (this.resp) {\n this.session = {}\n this.editMode = false\n this.status.emit({ status: false, save: this.resp.data })\n this.success.emit(true);\n }else{\n this.success.emit(false);\n }\n }\n\n async edit(){ \n console.log(\"EDIT\", this.session);\n this.resp = await this.sessionCajaService.update(this.session).toPromise() || null \n if(this.resp){\n this.session = {}\n this.editMode = false\n this.status.emit({status:false,update:this.resp.data})\n }\n }\n\n}\n","import { Injectable } from \"@angular/core\";\nimport { ApiService } from \"../../../services/api.service\";\nimport { Observable } from \"rxjs\";\nimport { Cliente } from \"../models/Cliente\";\n\n@Injectable({\n providedIn: 'root'\n}) export class ClienteService {\n private endpoint = 'cliente';\n constructor(private api: ApiService){\n }\n\n getAll(params?: any): Observable<any> {\n return this.api.get<any>(this.endpoint, params);\n }\n\n get(id: number): Observable<Cliente> {\n return this.api.get<Cliente>(`${this.endpoint}/${id}`);\n }\n\n save(obj: any): Observable<any> {\n return this.api.post<any>(this.endpoint, obj);\n }\n\n update(obj: any): Observable<any> {\n return this.api.put<any>(this.endpoint, obj.id, obj);\n }\n\n delete(id: number): Observable<any> {\n return this.api.delete<any>(this.endpoint, id);\n }\n \n validar_archivos_bss(id){\n return this.api.get<any>(`${this.endpoint}/validarClienteBss/${id}`);\n }\n\n}\n","import { Injectable } from \"@angular/core\";\nimport { TranslateService } from \"@ngx-translate/core\";\n\n@Injectable({\n providedIn: \"root\"\n})\nexport class PaginateService {\n constructor(private translate: TranslateService) { }\n \n getPage() {\n return {\n rows: 25,\n total: undefined,\n offset: 0,\n filtro: undefined,\n sort: undefined,\n };\n }\n getParams(page) {\n return [\n { param: 'offset', value: page.offset },\n { param: 'max', value: page.rows },\n { param: 'filter', value: page.filtro },\n { param: 'sort', value: page.sort }\n ];\n\n }\n getOrden(arg, lang? : string) {\n if(lang)\n this.translate.setDefaultLang(lang);\n \n let ordenar = [];\n let tra = [];\n for (let index = 0; index < arg.length; index++) {\n ordenar.push(\n { label: \"...\", value: arg[index].label }\n );\n tra.push(arg[index].param);\n \n }\n let dat: any;\n let a = true;\n if(tra.length >0)\n this.translate.get(tra).subscribe(\n data => {\n dat = data;\n let values = Object.values(dat);\n let i = 0;\n ordenar.forEach(elem => {\n elem.label = '' + values[i];\n i++;\n });\n },\n erro => { },\n \n );\n return ordenar;\n \n }\n\n\n}","<p-dialog header=\"{{ 'Seleccionar cliente ' | translate }}\" [(visible)]=\"visible\" (onHide)=\"cerrar()\"\n (onShow)=\"cargarDatosClientes()\">\n\n <div class=\"p-inputgroup mt-2\">\n <input type=\"text\" pInputText placeholder=\"{{'buscar'| translate}}...\"\n [(ngModel)]=\"page.filtro\" name=\"filtro\" (keyup)=\"aplicarFiltro()\">\n <button pButton type=\"button\" icon=\"pi pi-search\" styleClass=\"p-button-secondary\" (click)=\"aplicarFiltro()\"></button>\n </div>\n\n <p-table\n [value]=\"clientes\"\n dataKey=\"id\" [lazy]=\"true\"\n (onLazyLoad)=\"cargarDatosClientes($event)\"\n [paginator]=\"true\"\n [rows]=\"page.rows\"\n [totalRecords]=\"page.total\"\n [(selection)]=\"clienteSeleccionado\"\n selectionMode=\"{{selectMode}}\"\n (onRowSelect)=\"seleccionaCliente($event)\"\n [scrollable]=\"true\" scrollHeight=\"350px\"\n [loading]=\"loading\">\n <ng-template pTemplate=\"header\">\n <tr>\n <th>{{'clave' | translate}}</th>\n <th>{{'razonSocial' | translate}}</th>\n <th>{{'tipo' | translate}}</th>\n <th>{{'Cliente.limiteCredito' | translate}}</th>\n <th>{{'Cliente.plazoCredito' | translate}}</th>\n <th>{{'Cliente.diasPago' | translate}}</th>\n </tr>\n </ng-template>\n <ng-template pTemplate=\"body\" let-cliente>\n <tr [pSelectableRow]=\"cliente\"> \n <td>{{cliente.codigo}}</td>\n <td>{{cliente.descripcionRazonSocial}}</td>\n <td>\n <span *ngIf=\"cliente.personaFisica\">{{'fisico'| translate}}</span>\n <span *ngIf=\"cliente.personaMoral\">{{'moral'| translate}}</span>\n </td>\n <td>{{cliente.limiteCredito}}</td>\n <td>{{cliente.plazoCredito}}</td>\n <td>{{cliente.diasPago}}</td>\n </tr>\n </ng-template>\n <ng-template pTemplate=\"emptymessage\">\n <tr>\n <td colspan=\"6\">{{'general.noRegistros' | translate}}</td>\n </tr>\n </ng-template>\n</p-table>\n \n</p-dialog>","import { Component, OnInit, Input, Output, EventEmitter } from \"@angular/core\";\nimport { Cliente } from '../models/Cliente';\nimport { ClienteService } from '../services/cliente.service';\nimport { PaginateService } from '../../../services/paginate.service';\nimport { LazyLoadEvent } from \"primeng/api\";\n\n@Component({\n selector: 'select-cliente',\n templateUrl: './select-cliente.component.html'\n})\nexport class SelectClienteComponent implements OnInit {\n\n @Input() clienteSeleccionado: Cliente;\n @Input() selectMode = 'single';\n @Input() visible : Boolean;\n @Output() select = new EventEmitter();\n\n clientes: Cliente[];\n page: any;\n params : any;\n ordenar= [];\n loading: boolean = true;\n\n constructor(\n private clienteService : ClienteService,\n private paginate : PaginateService\n ){\n }\n \n ngOnInit() {\n \n this.page = this.paginate.getPage();\n \n \n this.page.rows = 20;\n this.clientes = [];\n this.ordenar = this.paginate.getOrden(\n [ \n {param:'razonZocial',label:'razonZocial'}\n ], 'es');\n }\n\n cargarDatosClientes(event: LazyLoadEvent = null) {\n this.loading = true;\n if (event) {\n this.page.rows = event.rows;\n this.page.offset = event.first;\n }\n \n this.clientes= [];\n this.params = this.paginate.getParams(this.page);\n this.params.push({param: 'estatus', value: true});\n if (this.page.filtro && this.page.filtro.trim() !== '') {\n this.params.push({param: 'filtroGeneral', value: this.page.filtro.trim()});\n }\n\n this.clienteService.getAll(this.params).subscribe(\n (data: any) =>{\n this.page.total=data.total;\n this.clientes = <Cliente[]>data.data;\n this.loading = false;\n },\n error => {\n console.error(\"Error al cargar clientes:\", error);\n this.loading = false;\n }\n );\n }\n\n aplicarFiltro() {\n this.page.offset = 0;\n this.cargarDatosClientes();\n }\n \n seleccionaCliente(e) { \n console.log('Fila seleccionada (evento):', e);\n console.log('Datos de la fila (e.data):', e.data);\n console.log('Cliente seleccionado ANTES de emitir:', this.clienteSeleccionado); // Verifica si [(selection)] ya lo actualizó\n this.select.emit(e.data);\n this.visible = false;\n console.log('Cliente seleccionado DESPUÉS de emitir (y si se actualizó por [(selection)]):', this.clienteSeleccionado);\n }\n\n cerrar(){\n this.select.emit(null);\n this.visible=false;\n }\n}","import { Genero } from \"./Genero\";\nimport { EstadoCivil } from \"./EstadoCivil\";\n\nexport class Persona{\n id : number;\n nombre : string;\n apellidoPaterno : string;\n apellidoMaterno : string;\n fechaNacimiento : string;\n curp : string;\n rfc : string;\n genero : Genero;\n estadoCivil : EstadoCivil;\n estatus : boolean;\n version : number;\n constructor(){\n //this.estadoCivil= new EstadoCivil();\n //this.genero = new Genero();\n }\n}","import { Persona } from \"./Persona\";\nimport { DatoDireccion } from \"../../dato-direccion/models/DatoDireccion\";\nimport { DatoContacto } from \"../../contacto/models/DatoContacto\";\n\nexport class PersonaFisica{\n id: number;\n datoPersona: Persona;\n version : number;\n contactos: DatoContacto[];\n datoDirecciones: DatoDireccion[];\n constructor(){\n this.datoPersona= new Persona();\n this.contactos=[];\n this.datoDirecciones=[];\n }\n}","import { PersonaFisica } from \"../components/persona-fisica/models/PersonaFisica\";\nimport { DatoContacto } from \"../components/contacto/models/DatoContacto\";\nimport { DatoDireccion } from \"../components/dato-direccion/models/DatoDireccion\";\n\nexport class PersonaMoral{\n id : number;\n razonSocial : string;\n rfc : string;\n representanteLegal : PersonaFisica;\n version : number;\n contactos : DatoContacto[];\n datoDirecciones : DatoDireccion[];\n constructor(){\n this.representanteLegal = new PersonaFisica();\n this.contactos=[];\n this.datoDirecciones=[];\n }\n}","export class ClasificadorTipo{\n id : number;\n version : number;\n codigo: string;\n descripcion : string;\n tipoClasificador: String;\n estatus :boolean;\n constructor(){}\n}","import { PersonaMoral } from \"../../../models/PersonaMoral\";\nimport { PersonaFisica } from \"../../persona-fisica/models/PersonaFisica\";\nimport { CatalogoTipo } from \"../../catalogoTipo/models/CatalogoTipo\";\nimport { ClasificadorTipo } from \"../../clasificadorTipo/models/ClasificadorTipo\";\n\nexport class Proveedor {\n id: number ;\n version: number;\n observacion: string;\n limiteCredito: number;\n plazoCredito: number;\n fechaUltimaCompra: Date;\n folioUltimaFactura: number;\n atrasoDiasEntrega: number;\n estatus: boolean;\n personaMoral: PersonaMoral;\n catalogoTipo: CatalogoTipo;\n clasificadorTipo: ClasificadorTipo;\n personaFisica: PersonaFisica;\n descripcionRazonSocial : String;\n descripcionRfc : String;\n codigo : string; \n constructor(){\n this.personaMoral=new PersonaMoral();\n this.catalogoTipo= new ClasificadorTipo();\n this.clasificadorTipo= new ClasificadorTipo();\n this.personaFisica= new PersonaFisica();\n }\n\n \n}","import { Injectable, Output, EventEmitter } from \"@angular/core\";\n import { ApiService } from \"../../../services/api.service\";\nimport { Observable } from \"rxjs\";\n\n@Injectable({\n providedIn: 'root'\n}) export class ProveedorService {\n private endpoint = 'proveedor';\n constructor(private api: ApiService){\n }\n\n getAll(params?: any): Observable<any> {\n return this.api.get<any>(this.endpoint, params);\n }\n\n get(id: number): Observable<any> {\n return this.api.get<any>(`${this.endpoint}/${id}`);\n }\n\n save(obj: any): Observable<any> {\n return this.api.post<any>(this.endpoint, obj);\n }\n\n update(obj: any): Observable<any> {\n return this.api.put<any>(this.endpoint, obj.id, obj);\n }\n\n delete(id: number): Observable<any> {\n return this.api.delete<any>(this.endpoint, id);\n }\n}","<p-dialog header=\"{{'ArticuloProveedor.proveedores' | translate}}\" [(visible)]=\"visible\" (onHide)=\"cerrarModal()\"\n (onShow)=\"cargarDatosProveedores()\">\n\n <div class=\"p-inputgroup mt-2\">\n <input type=\"text\" pInputText placeholder=\"{{'buscar'| translate}}...\"\n [(ngModel)]=\"page.filtro\" name=\"filtro\" (change)=\"cargarDatosProveedores()\">\n <button pButton type=\"button\" icon=\"pi pi-search\" styleClass=\"p-button-secondary\" (click)=\"cargarDatosProveedores()\"></button>\n </div>\n\n <p-table [(value)]=\"proveedores\" selectionMode=\"single\" [(selection)]=\"proveedorSeleccionado\"\n [scrollable]=\"true\" scrollHeight=\"350px\" (onRowSelect)=\"seleccionarProveedor($event)\">\n <ng-template pTemplate=\"header\">\n <tr>\n <th>{{'clave' | translate}}</th>\n <th>{{'razonSocial' | translate}}</th>\n <th>{{'rfc' | translate}}</th>\n </tr>\n </ng-template> \n <ng-template pTemplate=\"body\" let-proveedor=\"rowData\">\n <tr>\n <td>{{proveedor.codigo}}</td>\n <td>{{proveedor.descripcionRazonSocial}}</td>\n <td>{{proveedor.descripcionRfc}}</td>\n </tr>\n </ng-template>\n </p-table>\n\n <p-paginator [rows]=\"page.rows\" [totalRecords]=\"page.total\" [pageLinkSize]=\"5\"\n (onPageChange)=\"pagina($event)\" [rowsPerPageOptions]=\"[10,25,50,100,500]\"></p-paginator>\n\n</p-dialog>","import { Component, OnInit, Input, Output, EventEmitter } from \"@angular/core\";\nimport { TranslateService } from \"@ngx-translate/core\";\nimport { Proveedor } from '../models/Proveedor';\nimport { ProveedorService } from '../services/proveedor.service';\nimport { PaginateService } from '../../../services/paginate.service';\n\n@Component({\n templateUrl : 'select-proveedor.component.html',\n selector : 'select-proveedor'\n})export class SelectProveedorComponent implements OnInit{\n\n proveedores : Proveedor[];\n page : any;\n params = [];\n ordenar = [];\n @Input() visible = false;\n @Input() proveedorSeleccionado = new Proveedor();\n @Output() select = new EventEmitter();\n\n constructor(\n private proveedorService : ProveedorService,\n private paginanateService :PaginateService,\n private translate : TranslateService){\n this.translate.get('es');\n }\n\n ngOnInit(): void {\n \n this.page = this.paginanateService.getPage();\n let arg =[];\n this.ordenar= this.paginanateService.getOrden(arg,'es');\n this.proveedores=[];\n }\n \n cargarDatosProveedores(){\n this.params = this.paginanateService.getParams(this.page);\n this.params.push({param: 'estatus', value: true});\n this.proveedorService.getAll(this.params).subscribe(\n (data : any)=>{\n this.proveedores = <Proveedor[]>data.data;\n }\n );\n }\n \n pagina(e) {\n this.page.rows = e.rows;\n this.page.offset = e.first;\n this.cargarDatosProveedores();\n }\n\n cerrarModal(){\n this.select.emit(null);\n this.visible=false;\n }\n\n seleccionarProveedor(e){\n this.select.emit(e.data);\n this.visible=false;\n }\n \n}","import { Injectable } from '@angular/core';\nimport { ApiService } from '../../services/api.service';\nimport { Observable } from 'rxjs';\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class StockService {\n private endpoint = 'stock';\n\n\n constructor(private api: ApiService){\n }\n\n getAll(params?: any): Observable<any> {\n return this.api.get<any>(this.endpoint, params);\n }\n\n\n obtenerExistenciasArticulosDescripcion(parametros, params) {\n\n const url = `${this.endpoint}/obtenerExistenciasArticulos`;\n let promesa = new Promise((resolve , reject) => {\n this.api.post<any>( url, parametros ).subscribe(\n (data: any) => {\n resolve(data);\n }, (err: any) => {\n reject(err);\n }\n );\n });\n return promesa;\n }\n\n\n}\n","import { Injectable } from \"@angular/core\";\nimport { ApiService } from \"../../../services/api.service\";\nimport { Observable } from \"rxjs\";\nimport { Almacen } from \"../models/Almacen\";\n\n@Injectable({\n providedIn: 'root'\n}) export class AlmacenService {\n private endpoint = 'almacen';\n constructor(private api: ApiService){\n }\n\n getAll(params?: any): Observable<any> {\n return this.api.get<any>(this.endpoint, params);\n } \n\n obtenerAlmacenEmpresa() {\n return this.api.get<any>(`${this.endpoint}/obtenerAlmacenEmpresa`);\n }\n\n get(id: number): Observable<Almacen> {\n return this.api.get<Almacen>(`${this.endpoint}/${id}`);\n }\n\n save(obj: any): Observable<any> {\n return this.api.post<any>(this.endpoint, obj);\n }\n\n update(obj: any): Observable<any> {\n return this.api.put<any>(this.endpoint, obj.id, obj);\n }\n\n delete(id: number): Observable<any> {\n return this.api.delete<any>(this.endpoint, id);\n }\n }\n","import { Injectable } from '@angular/core';\n import { ApiService } from '../../../services/api.service';\nimport { Observable } from 'rxjs';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ArticuloInformacionService {\n private endpoint = 'articulo';\n constructor(private api: ApiService){\n }\n\n getAll(params?: any): Observable<any> {\n return this.api.get<any>(this.endpoint, params);\n }\n\n obtenerExistencias(articulo : number) {\n let uRL = \"/existenciasArticulo/\"+articulo;\n return this.api.get<any>(`${this.endpoint}${uRL}`);\n }\n\n get(id: number): Observable<any> {\n return this.api.get<any>(`${this.endpoint}/${id}`);\n }\n\n save(obj: any): Observable<any> {\n return this.api.post<any>(this.endpoint, obj);\n }\n\n update(obj: any): Observable<any> {\n return this.api.put<any>(this.endpoint, obj.id, obj);\n }\n\n delete(id: number): Observable<any> {\n return this.api.delete<any>(this.endpoint, id);\n }\n \n}\n","<p-dialog (onShow)=\"OnShow()\" [header]=\"titulo\" [(visible)]=\"showModal\" [modal]=\"flagModal\" \n [style]=\"{'width': size+'px', 'min-width': '200px'}\" [minY]=\"70\"\n [baseZIndex]=\"10000\" (onHide)=\"hiddenDialog()\" [draggable]=\"false\" \n [blockScroll]=\"true\"\n\t\t (window:resize)=\"OnResize($event)\" [maximizable]=\"true\" [breakpoint]=\"640\">\n <p-table [columns]=\"columnsData\" [value]=\"existenciasList\" [scrollable]=\"true\" [style]=\"{width: '600px'}\" \n [responsive]=\"true\" \n scrollHeight=\"350px\"\n > \n <ng-template pTemplate=\"colgroup\" let-columns>\n <colgroup>\n <col *ngFor=\"let col of columns\" [style.width]=\"col.width\">\n </colgroup>\n </ng-template>\n <ng-template pTemplate=\"header\" let-columns>\n <tr>\n <th *ngFor=\"let col of columns\" pResizableColumn>\n {{col.header}}\n </th>\n </tr>\n </ng-template>\n <ng-template pTemplate=\"body\" let-rowData let-columns=\"columns\" let-rowIndex=\"rowIndex\">\n <tr>\n <td>{{rowData.almacenCodigo}}</td>\n <td>{{rowData.almacenDescripcion}}</td> \n <td>{{rowData.ubicacionCodigo}}</td>\n <td>{{rowData.ubicacionDescripcion}}</td> \n <td>{{rowData.existencia}}</td> \n </tr>\n </ng-template>\n </p-table>\n\t \n <p-footer>\n <div class=\"container-end\">\n <button pButton type=\"button\" icon=\"pi pi-replay\" label=\"Cerrar\" class=\"ui-button-raised ui-button-secondary\" (click)=\"hiddenDialog()\"></button>\n </div>\n </p-footer>\n</p-dialog>","import { Component, OnInit, Input, Output, EventEmitter } from '@angular/core';\nimport {ArticuloInformacionService} from './services/articulo-informacion.service';\n\n\n\n@Component({\n selector: 'lib-seleccion-articulo-informacion',\n templateUrl: './seleccion-articulo-informacion.component.html',\n styleUrls: ['./seleccion-articulo-informacion.component.css']\n})\nexport class SeleccionArticuloInformacionComponent implements OnInit {\n\n @Input() showModal:boolean;\n @Input() articulo:any;\n @Output() eventSelection = new EventEmitter();\n\n isMovil: boolean;\n flagModal = true;\n titulo: string;\n size = 640;\n existenciasList:any[];\n\n params : any = [\n {param: 'offset', value: 0},\n {param: 'max', value: -1},\n {param: 'order', value: 'asc'}];\n \n columnsData = [\n { field: 'codigo', header: 'Código Almacén', width: '90px' },\n { field: 'descripcion', header: 'Descripción Almacen', width: '140px' },\n { field: 'codigo', header: 'Código Ubicación', width: '90px' },\n { field: 'descripcion', header: 'Descripción Ubicación', width: '140px' },\n { field: 'opciones', header: 'Existencia', width: '80px' }, \n ]; \n\n constructor(\n private articuloInformacionService:ArticuloInformacionService, \n ) { }\n\n ngOnInit() {\n this.OnLoad();\n }\n\n hiddenDialog() {\t\t\n\t\tthis.eventSelection.emit({status: false});\n }\n \n OnResize(event: any) {\n\t\tthis.isMovil = event.target.innerWidth <= 640;\n }\n\n OnLoad(){\n this.articuloInformacionService.obtenerExistencias(this.articulo.articulo.id).subscribe(\n (data : any)=>{ \n this.existenciasList= data.data;\n }\n );\n }\n \n OnShow() {\n this.titulo='Existencias en Almacenes'; \n }\n\n onSelectedUbicacion(ubicacionRow: any) {\n\t\tthis.eventSelection.emit({status: false, ubicacion: ubicacionRow});\n\n\t}\n\n}\n","<!--inicia seleccion de articulos-->\n<!-- (onShow)=\"obtenerExistenciaArticulosShow()\" -->\n<!--\n <div class=\"col-12 col-center\" >-->\n<p-dialog header=\"{{ 'Articulos' | translate }}\" [(visible)]=\"showArticulos\" [maximizable]=\"true\"\n (onShow)=\"obtenerExistenciaArticulosShow()\" (onHide)=\"busquedaArticulos = { tipoBusqueda : ''}; emitirShowArticulos()\"\n [baseZIndex]=\"10000\" [blockScroll]=\"true\" [style]=\"{'width': size+'px', 'min-width': '200px'}\" [minY]=\"70\">\n <div class=\"grid grid-fluid\">\n <div class=\"col-12 md:col-6 lg:col-6\">\n <div style=\"display: flex;\">\n <div style=\"width: 115px;\">\n <select pInputText [(ngModel)]=\"busquedaArticulos.tipoBusqueda\" (change)=\"obtenerExistenciaArticulosVal()\">\n <option value=\"C\">Codigo</option>\n <option value=\"D\">Descripcion</option>\n <option value=\"CD\">Coincidencia</option>\n <option value=\"CI\">Igual a</option>\n </select>\n </div>\n <input type=\"text\" style=\"width: 200px;\" pInputText [(ngModel)]=\"busquedaArticulos.key\"\n (keypress)=\"obtenerExistenciaArticulosKey( $event )\" id=\"key\">\n <button pButton type=\"button\" icon=\"pi pi-search\" styleClass=\"p-button-secondary\"\n (click)=\"obtenerExistenciaArticulos( )\"></button>\n </div>\n </div>\n <div class=\"col-12 md:col-6 lg:col-6\">\n <div style=\"display: flex;\">\n <div style=\"width: 100px;\">\n <label for=\"almacen\">Almacen:</label>\n </div>\n <select pInputText style=\"width: 200px;\" [(ngModel)]=\"movimiento.almacen\" disabled id=\"almacen\"\n (change)=\"obtenerExistenciaArticulosVal()\">\n <option *ngFor=\"let almacen of almacenList\" value=\"{{ almacen.id }}\">{{almacen.descripcion}}</option>\n </select>\n </div>\n\n </div>\n </div>\n\n <!--\n <div id=\"table-wrapper\">\n <div id=\"table-scroll\">-->\n <!-- new table\n <p-table #dt [columns]=\"colsDD\" [value]=\"listDD\" [scrollable]=\"true\" \n [style]=\"{width: '100%'} \" [scrollHeight]=\"maxH + 'px'\" \n [resizableColumns]=\"true\" [(selection)]=\"selectedXML\" (onRowSelect)=\"onRowSelect($event)\" dataKey=\"uuid\">\n\n \n -->\n\n <p-table [value]=\"articulosList\" [scrollable]=\"true\" #dt scrollHeight=\"400px\" [responsive]=\"true\"\n selectionMode=\"single\" (onRowSelect)=\"filaSeleccionada($event)\">\n <ng-template pTemplate=\"header\">\n <tr>\n <th style=\"width: 80px\" translate>Código Ubicacion</th>\n <th style=\"width: 70px\" translate>Existencia</th>\n <th style=\"width: 40px\" translate>Unidad</th>\n <th style=\"width: 50px\" *ngIf=\"manejaUnidadSecundaria\" translate>existenciaSecundaria</th>\n <th style=\"width: 40px\" *ngIf=\"manejaUnidadSecundaria\" translate>Unidad</th>\n <th style=\"width: 80px\" translate>Código</th>\n <th style=\"width: 120px\" translate>Descripcion</th>\n <th style=\"width: 40px\" translate></th>\n <th style=\"width: 80px\" *ngIf=\"configuracion.tipoPrecio !== 'costo' \" translate>Precio</th>\n <th style=\"width: 80px\" *ngIf=\"configuracion.tipoPrecio !== 'costo' \" translate>Precio 2</th>\n <th style=\"width: 80px\" *ngIf=\"configuracion.tipoPrecio !== 'costo' \" translate>Precio 3</th>\n <th style=\"width: 80px\" *ngIf=\"configuracion.tipoPrecio !== 'costo' \" translate>Precio 4</th>\n <th style=\"width: 80px\" *ngIf=\"configuracion.tipoPrecio !== 'costo' \" translate>Precio 5</th>\n <th style=\"width: 40px\" *ngIf=\"configuracion.tipoPrecio === 'costo' \" translate>Movimiento.costo</th>\n <th style=\"width: 40px\" translate>Existencia por Unidad</th>\n <th *ngFor=\"let item of clasificadorList\" style=\"width: 80px\" translate>{{item.descripcion}}</th>\n </tr>\n </ng-template>\n <ng-template pTemplate=\"body\" let-rowData let-rowIndex=\"rowIndex\">\n <tr [pSelectableRow]=\"rowData\">\n <td style=\"width: 80px;\" *ngIf=\"!rowData.ubicacionCodigo\" translate>Movimiento.NoAsignado</td>\n <td style=\"width: 80px;\" *ngIf=\"rowData.ubicacionCodigo\">{{rowData.ubicacionCodigo}}</td>\n <td style=\"width: 70px;\">{{rowData.existencia}}</td>\n <td style=\"width: 40px;\">{{rowData.unidadCodigo}}</td>\n\n <td style=\"width: 50px;\" *ngIf=\"manejaUnidadSecundaria\">{{rowData.existenciaSecundaria}}</td>\n <td style=\"width: 40px;\" *ngIf=\"manejaUnidadSecundaria\">{{rowData.unidadSecundariaCodigo}}</td>\n\n <td style=\"width: 80px;\">{{rowData.articulo.codigo}}</td>\n <td style=\"width: 120px;\">{{rowData.articulo.descripcion}}</td>\n <td style=\"width: 40px;\">\n <button pButton type=\"button\" icon=\"pi pi-eye\" class=\"ui-button-raised ui-button-primary\"\n (click)=\"onShowInformacion(rowData)\">\n </button>\n </td>\n <td style=\"width: 80px;\" *ngIf=\"configuracion.tipoPrecio !== 'costo'\">{{rowData.precioConImpuestos | currency }}\n </td>\n <td style=\"width: 80px;\" *ngIf=\"configuracion.tipoPrecio !== 'costo'\">{{rowData.precio2ConImpuestos | currency\n }}</td>\n <td style=\"width: 80px;\" *ngIf=\"configuracion.tipoPrecio !== 'costo'\">{{rowData.precio3ConImpuestos | currency\n }}</td>\n <td style=\"width: 80px;\" *ngIf=\"configuracion.tipoPrecio !== 'costo'\">{{rowData.precio4ConImpuestos | currency\n }}</td>\n <td style=\"width: 80px;\" *ngIf=\"configuracion.tipoPrecio !== 'costo'\">{{rowData.precio5ConImpuestos | currency\n }}</td>\n <td style=\"width: 40px;\" *ngIf=\"configuracion.tipoPrecio === 'costo' \">{{rowData.precio | currency }}</td>\n <td style=\"width: 40px;\">\n <div class=\"row justify-content-between\" *ngFor=\"let item of rowData.existenciaUnidades\">\n <div class=\"col-lg-4\"><label for=\"\">{{item.unidad_codigo}}</label></div>\n <div class=\"col-lg-4\"><label for=\"\">{{item.unidad_existencia | number : '1.2-2'}}</label>\n </div>\n </div>\n </td>\n <!-- <td style=\"width: 40px;\"></td> -->\n <td *ngFor=\"let itemData of rowData.articuloClasificadorList\" style=\"width: 80px;\">{{itemData.valor}}</td>\n </tr>\n </ng-template>\n </p-table>\n\n <!-- /new table-->\n <!-- \n <p-table [(value)]=\"articulosList\" responsive=\"true\" \n selectionMode=\"multiple\" (onRowSelect)=\"filaSeleccionada($event)\" [scrollable]=\"true\" scrollHeight=\"350px\" >\n\n <p-column header=\"{{ 'Codigo ubicacion'.toString() | translate}}\">\n <ng-template let-dato=\"rowData\" pTemplate=\"body\">\n <label for=\"\" *ngIf=\"!dato.ubicacionCodigo\" translate> Movimiento.NoAsignado </label>\n <label for=\"\" *ngIf=\"dato.ubicacionCodigo\" > {{ dato.ubicacionCodigo }}</label>\n </ng-template>\n </p-column>\n <p-column field=\"ubicacionCodigo\" header=\"{{ 'Descripcion ubicacion'.toString() | translate}}\">\n <ng-template let-dato=\"rowData\" pTemplate=\"body\">\n <label for=\"\" *ngIf=\"!dato.ubicacionCodigo\" translate> Movimiento.NoAsignado </label>\n <label for=\"\" *ngIf=\"dato.ubicacionCodigo\" > {{ dato.ubicacionCodigo }}</label>\n </ng-template>\n </p-column>\n\n <p-column field=\"existencia\" header=\"{{'Existencia' | translate}}\"></p-column>\n <p-column field=\"unidadCodigo\" header=\"{{'Unidad' | translate}}\"></p-column>\n <p-column field=\"unidadDescripcion\" header=\"{{'Descripcion unidad' | translate}}\"></p-column>\n\n <p-column field=\"existenciaSecundaria\" header=\"{{'existenciaSecundaria' | translate}}\" *ngIf=\"manejaUnidadSecundaria\"></p-column>\n <p-column field=\"unidadSecundariaCodigo\" header=\"{{'Unidad' | translate}}\" *ngIf=\"manejaUnidadSecundaria\"></p-column>\n \n\n <p-column *ngIf=\"configuracion.tipoPrecio !== 'costo' \" header=\"{{'Movimiento.movimientoDetalle.precio' | translate}}\">\n <ng-template let-dato=\"rowData\" pTemplate=\"body\">\n <label for=\"\">{{ dato.precioConImpuestos | currency }}</label>\n </ng-template>\n </p-column>\n <p-column *ngIf=\"configuracion.tipoPrecio === 'costo' \" header=\"{{'Movimiento.costo' | translate }}\">\n <ng-template let-dato=\"rowData\" pTemplate=\"body\">\n <label for=\"\">{{ dato.precio | currency }}</label>\n </ng-template>\n </p-column>\n\n\n <p-column field=\"articulo.codigo\" header=\"{{'Codigo articulo' | translate}}\"></p-column>\n <p-column field=\"articulo.descripcion\" header=\"{{'Descripcion' | translate}}\"></p-column>\n\n\n\n <p-column header=\"{{'ExistenciaPorUnidad' | translate }}\">\n <ng-template let-dato=\"rowData\" pTemplate=\"body\">\n <div class=\"row justify-content-between\" *ngFor=\"let item of dato.existenciaUnidades\" >\n <div class=\"col-lg-4\"><label for=\"\">{{item.unidad_codigo}}</label></div>\n <div class=\"col-lg-4\"><label for=\"\">{{item.unidad_existencia | number : '1.2-2'}}</label>\n </div> \n </div> \n </ng-template>\n </p-column>\n \n </p-table>\n -->\n <p-paginator [rows]=\"page.rows\" [totalRecords]=\"page.total\" [pageLinkSize]=\"5\" (onPageChange)=\"pagina($event)\"\n [rowsPerPageOptions]=\"[10,25,50,100,500]\"></p-paginator>\n <!-- \n </div>\n </div>\n -->\n</p-dialog>\n<!--\n </div> \n -->\n<!--termina seleccion de articulos-->\n<!--selecciona ubicacion -->\n<lib-seleccion-articulo-informacion [showModal]=\"showModalInformacion\" [articulo]=\"articuloSelected\"\n (eventSelection)=\"onEventInformacion($event)\" *ngIf=\"showModalInformacion\">\n</lib-seleccion-articulo-informacion>","import {Component, EventEmitter, Input, OnInit, Output} from '@angular/core';\nimport { Almacen } from '../almacen/models/Almacen';\nimport { PaginateService } from '../../services/paginate.service';\nimport { AlmacenService } from '../almacen/services/almacen.service';\nimport { StockService } from './stock.service';\n\n@Component({\n selector: 'app-selecciona-articulo',\n templateUrl: './selecciona-articulo.component.html',\n styleUrls: ['./selecciona-articulo.component.css']\n})\nexport class SeleccionaArticuloComponent implements OnInit {\n\n @Input() configuracion : any;\n @Input() showArticulos : boolean;\n @Input() movimiento: any;\n\n @Input() manejaUnidadSecundaria : boolean = false;\n\n @Output() emitFilaSeleccionada : EventEmitter<any> = new EventEmitter();\n @Output() emitShowArticulos : EventEmitter<any> = new EventEmitter();\n\n\n\n almacenList: Almacen[];\n articulosList: any = [];\n page: any;\n ordenar = [];\n busquedaArticulos : any = {\n tipoBusqueda : ''\n };\n\n showModal:boolean=false;\n articuloSelected:any;\n showModalInformacion:boolean=false;\n showFirstTime:boolean=true;\n clasificadorList:any=[];\n size = 640;\n\n constructor(\n private _stockService : StockService,\n private _paginateService : PaginateService,\n private _almacenService : AlmacenService) { }\n\n ngOnInit() {\n this.page = this._paginateService.getPage();\n this.ordenar = this._paginateService.getOrden(\n [\n {param: 'nombre', label: 'estatus'}\n ], 'es');\n\n\n this.showFirstTime=true;\n this._almacenService.getAll( this.configuracion.params ).subscribe(\n (data: any ) => {\n this.almacenList = <Almacen[]> data.data;\n }\n );\n \n this.busquedaArticulos.tipoBusqueda = 'CD';\n //tempthis.obtenerExistenciaArticulosShow();\n }\n\n pagina( e ){\n this.page.rows = e.rows;\n this.page.offset = e.first;\n this.obtenerExistenciaArticulos();\n }\n obtenerExistenciaArticulosShow(){\n this.busquedaArticulos.tipoBusqueda = 'CD';\n if (this.showFirstTime){\n this.obtenerExistenciaArticulos();\n this.showFirstTime=false;\n }\n }\n\n obtenerExistenciaArticulos( ) {\n this.busquedaArticulos.params = this._paginateService.getParams( this.page );\n const parametros = {\n almacen : ( this.configuracion.noOcupaAlamacen ? null : this.movimiento.almacen ),\n tipoPrecio : this.configuracion.tipoPrecio,\n busquedaArticulos : this.busquedaArticulos,\n tipoArticulo : this.configuracion.tipoArticulo ? this.configuracion.tipoArticulo : null,\n numeroPrecioDefault : this.configuracion.numeroPrecioDefault\n }; \n this._stockService.obtenerExistenciasArticulosDescripcion( parametros , this.busquedaArticulos.params ).then(\n (data: any) => {\n this.articulosList = data.articulosDescripcion;\n this.page.total = data.total; \n if (data.clasificadores){\n this.clasificadorList = data.clasificadores;\n } \n if(!this.showModal){\n this.showModal = true;\n }\n }\n ).catch(e =>{\n this.articulosList = [];\n });\n }\n\n obtenerExistenciaArticulosVal(){\n if ( this.busquedaArticulos.tipoBusqueda != '' && !this.busquedaArticulos.key )\n return false;\n this.obtenerExistenciaArticulos(); \n }\n obtenerExistenciaArticulosKey( $event ) {\n if( $event.key === 'Enter')\n this.obtenerExistenciaArticulos();\n }\n\n filaSeleccionada( $event ) {\n this.emitFilaSeleccionada.emit($event);\n }\n\n emitirShowArticulos() {\n this.emitShowArticulos.emit( 0 );\n }\n\n seriesArticulo(series){\n console.log(series);\n }\n\n onShowInformacion(eventArticulo){\n this.articuloSelected = eventArticulo;\n this.showModalInformacion = true;\n }\n\n onEventInformacion(event) {\n this.showModalInformacion = event.status;\t \n }\n}\n","import { Injectable } from \"@angular/core\";\nimport { ApiService } from '../../../services/api.service';\nimport { Observable } from \"rxjs\";\nimport { Proveedor } from \"../../proveedor/models/Proveedor\";\n\n@Injectable({\n providedIn: 'root'\n}) export class AcreedorService {\n private endpoint = 'acreedor';\n constructor(private api: ApiService){ \n }\n\n getAll(params?: any): Observable<any> {\n return this.api.get<any>(this.endpoint, params);\n }\n\n get(id: number): Observable<Proveedor> {\n return this.api.get<Proveedor>(`${this.endpoint}/${id}`);\n }\n\n save(obj: any): Observable<any> {\n return this.api.post<any>(this.endpoint, obj);\n }\n\n update(obj: any): Observable<any> {\n return this.api.put<any>(this.endpoint, obj.id, obj);\n }\n\n delete(id: number): Observable<any> {\n return this.api.delete<any>(this.endpoint, id);\n }\n}","<p-dialog header=\"Selecciona el acreedor\" [(visible)]=\"visible\" (onHide)=\"cerrarModal()\"\n (onShow)=\"cargarDatosAcreedores()\">\n\n <div class=\"p-inputgroup mt-2\">\n <input type=\"text\" pInputText placeholder=\"{{'buscar'| translate}}...\"\n [(ngModel)]=\"page.filtro\" name=\"filtro\" (keyup)=\"cargarDatosAcreedores()\">\n <button pButton type=\"button\" icon=\"pi pi-search\" styleClass=\"p-button-secondary\" (click)=\"cargarDatosAcreedores()\"></button>\n </div>\n <p-table\n [value]=\"acreedores\"\n dataKey=\"id\" selectionMode=\"single\"\n [(selection)]=\"acreedorSeleccionado\"\n (onRowSelect)=\"seleccionarAcreedor($event)\"\n [scrollable]=\"true\"\n scrollHeight=\"350px\"\n [responsive]=\"true\">\n\n <ng-template pTemplate=\"header\">\n <tr>\n <th>{{'razonSocial' | translate}}</th>\n <th>{{'rfc' | translate}}</th>\n <th>{{'tipo' | translate}}</th>\n <th>{{'atrasoDiasEntrega' | translate}}</th>\n <th>{{'limiteCredito' | translate}}</th>\n <th>{{'fechaUltimaCompra' | translate}}</th>\n </tr>\n </ng-template>\n\n <ng-template pTemplate=\"body\" let-acreedor>\n <tr [pSelectableRow]=\"acreedor\">\n <td>{{acreedor.descripcionRazonSocial}}</td>\n <td>{{acreedor.descripcionRfc}}</td>\n <td>\n <span *ngIf=\"acreedor.personaMoral\">{{'moral' | translate}}</span>\n <span *ngIf=\"acreedor.personaFisica\">{{'fisico' | translate}}</span>\n </td>\n <td>{{acreedor.atrasoDiasEntrega}}</td>\n <td>{{acreedor.limiteCredito}}</td>\n <td>{{acreedor.fechaUltimaCompra | date:'dd/MM/yyyy'}}</td>\n </tr>\n </ng-template>\n\n <ng-template pTemplate=\"emptymessage\">\n <tr>\n <td [attr.colspan]=\"6\">{{'general.noRegistros' | translate}}</td>\n </tr>\n </ng-template>\n </p-table>\n\n <p-paginator [rows]=\"page.rows\" [totalRecords]=\"page.total\" [pageLinkSize]=\"5\"\n (onPageChange)=\"pagina($event)\" [rowsPerPageOptions]=\"[10,25,50,100,500]\"></p-paginator>\n\n</p-dialog>"," import { Component, OnInit, Input, Output, EventEmitter } from \"@angular/core\";\nimport { AcreedorService } from \"../services/acreedor.service\";\nimport { Proveedor } from '../../proveedor/models/Proveedor';\nimport { PaginateService } from '../../../services/paginate.service';\nimport { TranslateService } from '@ngx-translate/core';\n\n@Component({\n templateUrl : 'select-acreedor.component.html',\n selector : 'select-acreedor'\n})export class SelectAcreedorComponent implements OnInit{\n\n acreedores : Proveedor[];\n page : any;\n params = [];\n ordenar = [];\n @Input() visible = false;\n @Input() acreedorSeleccionado = new Proveedor();\n @Output() select = new EventEmitter();\n\n constructor(\n private acreedorService : AcreedorService,\n private paginanateService :PaginateService,\n private translate : TranslateService){\n this.translate.get('es');\n }\n\n ngOnInit(): void {\n \n this.page = this.paginanateService.getPage();\n let arg =[];\n this.ordenar= this.paginanateService.getOrden(arg,'es');\n this.acreedores=[];\n }\n \n cargarDatosAcreedores(){\n this.params = this.paginanateService.getParams(this.page);\n this.params.push({param: 'estatus', value: true});\n this.acreedorService.getAll(this.params).subscribe(\n (data : any)=>{\n this.acreedores = <Proveedor[]>data.data;\n }\n );\n }\n \n pagina(e) {\n this.page.rows = e.rows;\n this.page.offset = e.first;\n this.cargarDatosAcreedores;\n }\n\n cerrarModal(){\n this.select.emit(null);\n this.visible=false;\n }\n\n seleccionarAcreedor(e){\n this.select.emit(e.data);\n this.visible=false;\n }\n \n}","import { LoadingComponent } from './components/loading/loading.component';\nimport { LoadingScreenComponent } from './components/loading-screen/loading-screen.component';\nimport { PdfModalComponent } from './components/pdfModal/pdf-modal.component';\nimport { LoginModalComponent } from './components/login-modal/login-modal.component';\nimport { SessionCreateComponent } from './components/caja/session-create/session-create.component';\nimport { SelectClienteComponent } from './components/cliente/select/select-cliente.component';\nimport { SelectProveedorComponent } from './components/proveedor/select/select-proveedor.component';\nimport { SeleccionaArticuloComponent } from './components/selecciona-articulo/selecciona-articulo.component';\nimport { SelectAcreedorComponent } from './components/acreedor/select/select-acreedor.component';\n\n\nexport const components = [\n\n LoadingComponent,\n LoadingScreenComponent,\n LoginModalComponent,\n PdfModalComponent,\n SessionCreateComponent,\n SelectClienteComponent,\n SelectProveedorComponent,\n SeleccionaArticuloComponent,\n SelectAcreedorComponent\n\n];\n\nexport const exportComponents = components;\n\nexport const exportServices = [\n\n];\nexport const exportModels = [\n\n];\n","import { ButtonModule } from 'primeng/button';\nimport { InputTextModule } from 'primeng/inputtext';\nimport { DropdownModule } from 'primeng/dropdown';\nimport { InputMaskModule } from 'primeng/inputmask';\nimport { MessagesModule } from 'primeng/messages';\nimport { MessageModule } from 'primeng/message';\nimport { PaginatorModule } from 'primeng/paginator';\nimport { ConfirmDialogModule } from 'primeng/confirmdialog';\nimport { ProgressBarModule } from 'primeng/progressbar';\nimport { TriStateCheckboxModule } from 'primeng/tristatecheckbox';\nimport { KeyFilterModule } from 'primeng/keyfilter';\nimport { InputSwitchModule } from 'primeng/inputswitch';\nimport { DialogModule } from 'primeng/dialog';\nimport { TabViewModule } from 'primeng/tabview';\nimport { CalendarModule } from 'primeng/calendar';\nimport { PanelModule } from 'primeng/panel';\nimport { TreeTableModule } from 'primeng/treetable';\nimport { TableModule } from 'primeng/table';\nimport { AutoCompleteModule } from 'primeng/autocomplete';\nimport { FieldsetModule } from 'primeng/fieldset';\nimport { CheckboxModule } from 'primeng/checkbox';\nimport { TreeModule } from 'primeng/tree';\nimport {RadioButtonModule} from 'primeng/radiobutton';\nimport {TabMenuModule} from 'primeng/tabmenu';\nimport {OverlayPanelModule} from 'primeng/overlaypanel';\nimport {TooltipModule} from 'primeng/tooltip';\nimport {CardModule} from 'primeng/card';\nimport {MenubarModule} from 'primeng/menubar';\nimport { ConfirmationService } from 'primeng/api';\nimport { SplitButtonModule } from 'primeng/splitbutton';\nimport { ToolbarModule } from 'primeng/toolbar';\n\nexport const primeNg = [\n CardModule,\n TooltipModule,\n OverlayPanelModule,\n RadioButtonModule,\n CheckboxModule,\n AutoCompleteModule,\n TableModule,\n TreeTableModule,\n CalendarModule,\n TableModule,\n ButtonModule,\n InputTextModule,\n DropdownModule,\n InputMaskModule,\n MessagesModule,\n MessageModule,\n PaginatorModule,\n ConfirmDialogModule,\n ProgressBarModule,\n TriStateCheckboxModule,\n KeyFilterModule,\n InputSwitchModule,\n DialogModule,\n TabViewModule,\n PanelModule,\n ToolbarModule,\n SplitButtonModule,\n FieldsetModule,\n TreeModule,\n TabMenuModule,\n MenubarModule,\n];\n\n\n\nexport const primeNgServices = [ConfirmationService];\n","import { contaComponents } from './importComponetsConta';\n//modules angular\nimport { NgModule } from '@angular/core';\nimport { HttpClientModule,HttpClient, HTTP_INTERCEPTORS } from '@angular/common/http';\n\n//interceptor\nimport { httpInterceptor } from './httpInterceptor/httpInterceptor';\n\n\n//components\nimport { Error404Component } from './components/error404/error404.component';\nimport { components } from './importComponents';\n\n//modules proyect\nimport { primeNg, primeNgServices } from './globalPrimeNg';\nimport { TranslateModule, TranslateLoader } from '@ngx-translate/core'; \nimport { TranslateHttpLoader } from '@ngx-translate/http-loader';\nimport { ToastrModule } from 'ngx-toastr';\nimport { CommonModule } from '@angular/common';\nimport { SeleccionArticuloInformacionComponent } from './components/seleccion-articulo-informacion/seleccion-articulo-informacion.component';\nimport { FormsModule } from '@angular/forms';\n\n\nexport function HttpLoaderFactory(http: HttpClient) {\n return new TranslateHttpLoader(http,'./assets/i18n/','.json');\n}\n\n\n@NgModule({\n declarations: [\n Error404Component,\n components,\n contaComponents,\n SeleccionArticuloInformacionComponent\n ],\n imports: [ \n CommonModule,\n primeNg,\n FormsModule,\n ToastrModule.forRoot(),\n TranslateModule.forRoot({\n loader: {\n provide: TranslateLoader,\n useFactory: HttpLoaderFactory,\n deps: [HttpClient]\n }\n }) \n ],\n providers: [ \n primeNgServices,\n { provide: HTTP_INTERCEPTORS, useClass: httpInterceptor, multi: true }\n ],\n exports: [ components, contaComponents ]\n})\nexport class CoreLibModule {\n \n }\n","import { Injectable, Output, EventEmitter } from \"@angular/core\";\nimport { AuthService } from './auth.service';\n\n@Injectable({\n providedIn : 'root'\n}) export class ControlAccesoService {\n constructor(private authService: AuthService){\n }\n detallesUsuarios : any;\n @Output() cambioAcciones = new EventEmitter();\n @Output() changeDetalleUsuario = new EventEmitter();\n\n set(detallesUsuarios){\n this.detallesUsuarios = detallesUsuarios;\n this.changeDetalleUsuario.emit( this.detallesUsuarios);\n }\n\n canActivete(rols: String[]) {\n let permiso = false;\n let user = this.authService.getUser();\n if(!user) false;\n \n for (let index = 0; index < rols.length; index++) { \n if(permiso) return permiso; \n let grupoPermisos :any[] = user.roles.filter(\n (permiso: any) => {\n return permiso === rols[index] ;\n }\n ); \n permiso = grupoPermisos.length > 0;\n }\n return permiso;\n } \n}","import { Injectable } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { AuthService } from './auth.service';\n@Injectable({\n providedIn: 'root'\n})\nexport class InitService {\n constructor(\n private http: HttpClient,\n private authService: AuthService\n ) {\n\n }\n initConfig() {\n this.http.get('assets/config.json').subscribe(\n (data: any) => {\n localStorage.setItem(\"config\", JSON.stringify(data)); \n }\n );\n this.http.get('assets/version.json' )\n //.first()\n .subscribe(\n (response: any) => {\n localStorage.removeItem('version');\n localStorage.setItem('version',response.hash);\n }\n );\n }\n cargaConfig() {\n this.http.get('assets/config.json').subscribe(\n (data: any) => {\n localStorage.setItem(\"config\", JSON.stringify(data));\n let url = data.url;\n this.http.post(url + '/login',\n { username: 'admin', password: 'admin' }).subscribe(\n (data: any) => {\n\n localStorage.setItem('usuario', JSON.stringify(data));\n\n let httpOptions = {\n headers: new HttpHeaders({\n 'Accept-type': 'application/json',\n 'Authorization': data.token_type + ' ' + data.access_token\n })\n };\n\n this.http.get(url + '/usuario/obtieneUsuarioActual', httpOptions).subscribe(\n (dat: any) => {\n let empresaAdmin = dat.empresas[0];\n this.authService.setEmpresa(empresaAdmin).subscribe(\n\n );\n }\n )\n\n });\n }\n );\n }\n}","import { Injectable } from \"@angular/core\";\nimport { ToastrService } from 'ngx-toastr';\n\n\n@Injectable({\n providedIn: 'root'\n}) export class MessageService {\n\n constructor(private toastr: ToastrService) { }\n\n\n deployMessage(tipo: string = null, titulo: string, msg: string) {\n switch(tipo){\n case \"success\" : {\n this.toastr.success(msg, titulo, {\n timeOut: 3000\n }); \n }\n break;\n case \"info\" : {\n this.toastr.info(msg, titulo, {\n timeOut: 3000,\n });\n }\n break;\n case \"warning\" :{\n this.toastr.warning(msg, titulo, {\n timeOut: 3000\n });\n }\n break;\n case \"error\": {\n this.toastr.error(msg, titulo, {\n timeOut: 3000\n });\n }\n break;\n case null :{\n this.toastr.success(msg, titulo, {\n timeOut: 3000\n });\n }\n break;\n }\n \n }\n\n success(msg: string) {\n let msgs = [];\n msgs.push({ severity: 'success', summary: 'Exito', detail: '' + msg });\n return msgs;\n }\n\n error(error: any) {\n let msgs = [];\n if (error) {\n if (error.error) {\n error = error.error;\n if (error.error)\n for (let i = 0; i < (error.error).length; i++) {\n msgs.push({ severity: 'error', summary: 'Error', detail: '' + error.error[i].message });\n }\n }\n } else {\n if (error.mensaje)\n msgs.push({ severity: 'error', summary: 'Error', detail: '' + error.mensaje });\n }\n return msgs;\n }\n\n}","import { Injectable } from \"@angular/core\";\n import { ApiService } from \"./api.service\";\nimport { Observable } from \"rxjs\";\n\n@Injectable({\n providedIn: 'root'\n}) export class PersonaMoralService {\n private endpoint = 'personaMoral';\n constructor(private api: ApiService){\n }\n\n getAll(params?: any): Observable<any> {\n return this.api.get<any>(this.endpoint, params);\n }\n\n get(id: number): Observable<any> {\n return this.api.get<any>(`${this.endpoint}/${id}`);\n }\n\n save(obj: any): Observable<any> {\n return this.api.post<any>(this.endpoint, obj);\n }\n\n update(obj: any): Observable<any> {\n return this.api.put<any>(this.endpoint, obj.id, obj);\n }\n\n delete(id: number): Observable<any> {\n return this.api.delete<any>(this.endpoint, id);\n }\n}","import { Injectable } from \"@angular/core\";\nimport { CanActivate } from '@angular/router';\nimport { ControlAccesoService } from './controlAcceso.service';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class CanActivateGuard implements CanActivate {\n rol : string = '';\n method : string = '';\n constructor(private controlAccesoService : ControlAccesoService){ \n }\n canActivate(){\n return this.controlAccesoService.canActivete([this.rol]);\n }\n\n permisos(rol){\n this.rol = rol;\n }\n\n}\n","import { Injectable } from '@angular/core';\nimport { ApiService } from './api.service';\nimport { Observable } from 'rxjs';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class CatalogoAdicionalService {\n\n private endpoint = 'catalogoAdicional';\n constructor(private api: ApiService){\n }\n\n getAll(params?: any): Observable<any> {\n return this.api.get<any>(this.endpoint, params);\n }\n\n get(id: number): Observable<any> {\n return this.api.get<any>(`${this.endpoint}/${id}`);\n }\n\n save(obj: any): Observable<any> {\n return this.api.post<any>(this.endpoint, obj);\n }\n\n update(obj: any): Observable<any> {\n return this.api.put<any>(this.endpoint, obj.id, obj);\n }\n\n delete(id: number): Observable<any> {\n return this.api.delete<any>(this.endpoint, id);\n }\n}","import { Injectable } from '@angular/core';\nimport { AuthService } from './auth.service';\nimport { ControlAccesoService } from './controlAcceso.service';\nimport { Router } from '@angular/router';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class Authenticated {\n\n constructor( \n private authService: AuthService,\n private controlAccesoService: ControlAccesoService,\n private router: Router\n ){\n \n }\n \n load(modulo ?){\n let usuario = this.authService.getUser();\n\n if (usuario) {\n this.authService.getDetalsUser().subscribe(\n (resp: any) => {\n let roles = resp.roles; \n for (let index = 0; index < roles.length; index++) {\n if(roles[index].authority === \"ROLE_CLIENTE\"){\n //this.regresaAlprincipal('/administrativo/movimientos/ventaRapida/create')\n this.router.navigate(['movimientos/ventaRapida/create']);\n }\n }\n if (!resp.empresa) {\n this.regresaAlprincipal(undefined);\n }\n this.controlAccesoService.detallesUsuarios = resp;\n this.controlAccesoService.cambioAcciones.emit(true);\n return true;\n /*\n if (resp.moduloAccesoActual) {\n if (resp.moduloAccesoActual.descripcion === modulo) {\n this.controlAccesoService.detallesUsuarios = resp;\n this.controlAccesoService.cambioAcciones.emit(true);\n return true;\n } else {\n this.regresaAlprincipal(resp.moduloAccesoActual.urlInicial);\n }\n } else {\n this.regresaAlprincipal(undefined);\n }\n\n */\n \n }, (error: any) => {\n this.regresaAlprincipal(undefined);\n }\n );\n } else {\n this.regresaAlprincipal(undefined);\n }\n return false;\n }\n\n regresaAlprincipal(url) {\n let config = JSON.parse(localStorage.getItem(\"config\"));\n let host = \"\"\n if (config) {\n if (config.host) {\n host = config.host;\n }\n }\n if (url) {\n host = host + url;\n }\n window.location.href = host;\n }\n}","import { Injectable } from '@angular/core';\nimport { HttpClient } from '@angular/common/http';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class VersionCheckService {\n \n private currentHash = '{{POST_BUILD_ENTERS_HASH_HERE}}';\n \n versionado = false;\n\n constructor(private http: HttpClient) {}\n frequency = 1000 * 60 * 180;\n \n public initVersionCheck( ) {\n setInterval(() => {\n this.checkVersion();\n }, this.frequency);\n }\n\n private checkVersion() { \n this.http.get('assets/version.json' + '?t=' + new Date().getTime())\n .subscribe(\n (response: any) => {\n const hash = response.hash; \n this.currentHash = localStorage.getItem(\"version\");\n const hashChanged = this.hasHashChanged(this.currentHash, hash);\n if (!hashChanged && !this.versionado) {\n this.versionado = true;\n if(confirm(\"Está disponible una actualización de Visorus ERP. El sistema se reiniciara para descargar los nuevos cambios.\")){\n location.reload();\n this.versionado = false;\n }else{\n this.versionado = false;\n }\n }\n },\n (err) => {\n console.error(err, 'No se pudo obtener versión de software');\n }\n );\n }\n private hasHashChanged(currentHash, newHash) {\n if (!currentHash || currentHash === '{{POST_BUILD_ENTERS_HASH_HERE}}') {\n return false;\n }\n return currentHash === newHash;\n }\n}","import { SerieDocumento } from \"../../serieDocumento/models/SerieDocumento\";\nimport { Almacen } from \"../../almacen/models/Almacen\";\nimport { PersonaFisica } from \"../../persona-fisica/models/PersonaFisica\";\nimport { ClasificadorTipo } from \"../../clasificadorTipo/models/ClasificadorTipo\";\nimport { CatalogoTipo } from \"../../catalogoTipo/models/CatalogoTipo\";\n\nexport class Agente{\n\t\n id : number;\n version : number;\n estatus : boolean;\n observacion : string;\n comisionVenta: number;\n comisionCobro: number;\n centroDeCosto: number;\n serieDefault : SerieDocumento;\n almacenDefault: Almacen;\n catalogoTipo : CatalogoTipo;\n personaFisica: PersonaFisica;\n clasificadorTipo : ClasificadorTipo;\n series : any[];\n almacenes : any [];\n numeroPrecio : any [];\n\n constructor(){\n // this.catalogoTipo= new CatalogoTipo();\n this.personaFisica = new PersonaFisica();\n }\n \n}","import { Injectable } from \"@angular/core\"; \nimport { ApiService } from \"../../../services/api.service\";\nimport { Observable } from \"rxjs\";\nimport { Agente } from \"../models/Agente\";\n\n@Injectable({\n providedIn: 'root'\n}) export class AgenteService {\n private endpoint = 'agente';\n constructor(private api: ApiService){\n }\n\n saveUsuarioAgente(usuario : any){\n return this.api.post<any>(`${this.endpoint}/usuario`, usuario);\n }\n getUsuarioAgente(id: any){\n return this.api.get<any>(`${this.endpoint}/usuario/${id}`);\n }\n\n obtenerAgenteEmpresa() {\n return this.api.get<any>(`${this.endpoint}/obtenerAgenteEmpresa`);\n }\n\n get(id: number): Observable<Agente> {\n return this.api.get<Agente>(`${this.endpoint}/${id}`);\n }\n\n save(obj: any): Observable<any> {\n return this.api.post<any>(this.endpoint, obj);\n }\n\n update(obj: any): Observable<any> {\n return this.api.put<any>(this.endpoint, obj.id, obj);\n } \n\n delete(id: number): Observable<any> {\n return this.api.delete<any>(this.endpoint, id);\n }\n}\n","import { DatoDireccion } from \"../../dato-direccion/models/DatoDireccion\";\nimport { ClasificadorTipo } from \"../../clasificadorTipo/models/ClasificadorTipo\";\n\n\nexport class Almacen{\n id: number;\n version: number;\n codigo: string;\n descripcion: string;\n maximo: number;\n minimo: number;\n prefijoContable: string;\n centroCosto: number;\n estatus: boolean;\n datoDireccion : DatoDireccion;\n clasificadorTipo: ClasificadorTipo;\n activoVirtual : boolean;\n activoMovimiento : boolean;\n activoOrdenCompra : boolean;\n activoLoteAutomatico: boolean;\n constructor(){}\n}","export class DatoDireccion{\n id : number;\n calle : String;\n numeroExterior : String;\n numeroInterior : String;\n colonia : String;\n ciudad : String;\n municipio : String;\n estado : String;\n pais : String;\n codigoPostal : String;\n referencia : String;\n estatus : boolean;\n latitud : number;\n longitud : number;\n version : number;\n constructor(){ \n }\n \n}","import { DatoDireccion } from \"../../dato-direccion/models/DatoDireccion\";\n\n\nexport class Banco{\n id : number;\n nombre : string;\n razonSocial : string;\n rfc : string;\n entidad : string;\n sucursal : string;\n datoDireccion : DatoDireccion;\n estatus : boolean;\n version : number;\n \n constructor(){\n this.datoDireccion= new DatoDireccion();\n }\n}","import { Injectable } from \"@angular/core\";\nimport { ApiService } from \"../../../services/api.service\";\nimport { Observable } from \"rxjs\";\nimport { Banco } from \"../models/Banco\";\n\n@Injectable({\n providedIn: 'root'\n })\nexport class BancoService {\n private endpoint = 'banco';\n constructor(private api: ApiService){\n }\n\n getAll(params?: any): Observable<any> {\n return this.api.get<any>(this.endpoint, params);\n }\n \n get(id: number): Observable<Banco> {\n return this.api.get<Banco>(`${this.endpoint}/${id}`);\n }\n\n save(obj: any): Observable<any> {\n return this.api.post<any>(this.endpoint, obj);\n }\n \n update(obj: any): Observable<any> {\n return this.api.put<any>(this.endpoint, obj.id, obj);\n }\n\n delete(id: number): Observable<any> {\n return this.api.delete<any>(this.endpoint, id);\n }\n}","export class CatalogoTipo{\n id : number;\n version : number;\n codigo: string;\n descripcion : string;\n tipoClasificador: String;\n estatus: boolean;\n constructor(){}\n}","import { Injectable } from \"@angular/core\";\nimport { ApiService } from \"../../../services/api.service\";\nimport { Observable } from \"rxjs\";\nimport { CatalogoTipo } from \"../models/CatalogoTipo\";\n\n@Injectable({\n providedIn: 'root'\n})\nexport class CatalogoTipoService {\n private endpoint = 'catalogoTipo';\n constructor(private api: ApiService){\n }\n\n getAll(params?: any): Observable<any> {\n return this.api.get<any>(this.endpoint, params);\n }\n \n get(id: number): Observable<CatalogoTipo> {\n return this.api.get<CatalogoTipo>(`${this.endpoint}/${id}`);\n }\n\n save(obj: any): Observable<any> {\n return this.api.post<any>(this.endpoint, obj);\n }\n \n update(obj: any): Observable<any> {\n return this.api.put<any>(this.endpoint, obj.id, obj);\n }\n\n delete(id: number): Observable<any> {\n return this.api.delete<any>(this.endpoint, id);\n }\n}","import { Injectable } from \"@angular/core\";\nimport { ApiService } from \"../../../services/api.service\";\nimport { Observable } from \"rxjs\";\nimport { ClasificadorTipo } from \"../models/ClasificadorTipo\";\n\n@Injectable({\n providedIn: 'root'\n}) export class ClasificadorTipoService {\n private endpoint = 'clasificadorTipo';\n constructor(private api: ApiService){\n }\n\n getAll(params?: any): Observable<any> {\n return this.api.get<any>(this.endpoint, params);\n }\n\n get(id: number): Observable<ClasificadorTipo> {\n return this.api.get<ClasificadorTipo>(`${this.endpoint}/${id}`);\n }\n\n save(obj: any): Observable<any> {\n return this.api.post<any>(this.endpoint, obj);\n }\n\n update(obj: any): Observable<any> {\n return this.api.put<any>(this.endpoint, obj.id, obj);\n }\n\n delete(id: number): Observable<any> {\n return this.api.delete<any>(this.endpoint, id);\n }\n}","export class ClaveMovimiento {\n id : number;\n version : number;\n codigo : string;\n descripcion: string;\n operadorMovimiento: string;\n operadorReporte: string;\n seImprime: boolean;\n calcularCostoAplicacion: boolean;\n afectarInventario: boolean;\n editarSerie: boolean;\n editarFolio: boolean;\n afectaCuentasPorCobrar: boolean;\n afectaCuentasPorPagar: boolean;\n actualizaEstadisticaCliente: boolean;\n actualizaEstadisticaProveedor: boolean;\n actualizaCostoArticulo: boolean;\n estatus: boolean;\n entradaAutomaticamente : boolean;\n movimientoSalida : ClaveMovimiento;\n movimientoEntrada : ClaveMovimiento;\n\n constructor(){}\n}\n","import { Injectable } from \"@angular/core\";\nimport { ApiService } from \"../../../services/api.service\";\nimport { Observable } from \"rxjs\";\nimport { ClaveMovimiento } from \"../models/ClaveMovimiento\";\n\n@Injectable({\n providedIn: 'root'\n}) export class ClaveMovimientoService {\n private endpoint = 'claveMovimiento';\n constructor(private api: ApiService){\n }\n\n getAll(params?: any): Observable<any> {\n return this.api.get<any>(this.endpoint, params);\n }\n\n get(id: number): Observable<ClaveMovimiento> {\n return this.api.get<ClaveMovimiento>(`${this.endpoint}/${id}`);\n }\n\n save(obj: any): Observable<any> {\n return this.api.post<any>(this.endpoint, obj);\n }\n\n update(obj: any): Observable<any> {\n return this.api.put<any>(this.endpoint, obj.id, obj);\n }\n\n delete(id: number): Observable<any> {\n return this.api.delete<any>(this.endpoint, id);\n }\n} ","\nimport { PersonaFisica } from \"../../persona-fisica/models/PersonaFisica\";\nimport { PersonaMoral } from \"../../../models/PersonaMoral\";\nimport { ClasificadorTipo } from \"../../clasificadorTipo/models/ClasificadorTipo\";\nimport { Agente } from \"../../agente/models/Agente\";\nimport { CatalogoTipo } from '../../catalogoTipo/models/CatalogoTipo';\n\nexport class Cliente {\n id: number;\n version: number;\n limiteCredito: number;\n plazoCredito: number;\n diasPago: number;\n numeroPrecioVenta: number;\n estadoDeCredito: boolean;\n descuento1: number;\n descuento2: number;\n descuento3: number;\n descuento4: number;\n descuento5: number;\n descuento6: number;\n descuento7: number;\n descuento8: number;\n descuento9: number;\n descuento10: number;\n fechaUltimaCompra: string;\n folioUltimaCompra: string;\n puntosMonedero: number;\n montoMonedero: number;\n personaFisica: PersonaFisica;\n personaMoral : PersonaMoral;\n estatus: boolean;\n agenteVendedor : Agente;\n agenteCobrador : Agente;\n clasificadorTipo : ClasificadorTipo;\n catalogoTipo : CatalogoTipo;\n ieps : string;\n descripcionRazonSocial : string;\n descripcionRfc : string;\n modificarDatosVenta : boolean; \n residenciaFiscal : any;\n identidadFiscal : string;\n codigoSat : any;\n codigo :string; \n\n constructor(){\n this.agenteCobrador= new Agente();\n this.agenteVendedor= new Agente();\n this.personaFisica = new PersonaFisica();\n this.personaMoral= new PersonaMoral();\n }\n \n}","import { Cliente } from \"./Cliente\";\nimport { Banco } from \"../../banco/models/Banco\";\n\nexport class ClienteCuentaBanco{\n id : number;\n version : number;\n estatus : boolean;\n cliente : Cliente;\n banco : Banco;\n cuentaBancaria : string;\n cambio : boolean;\n constructor(){\n this.banco = new Banco();\n this.estatus= true;\n }\n}","export class Flete{\n id : number;\n version : number;\n nombre : string;\n estatus : boolean;\n constructor(){}\n}","import { Cliente } from \"./Cliente\";\nimport { Flete } from \"../../flete/models/Flete\";\n\nexport class ClienteFlete{\n id : number;\n version : number;\n cliente : Cliente;\n flete : Flete;\n estatus : Boolean;\n \n cambio : boolean; // solo para saber si sucede un cambio en el objeto \n\n constructor(){\n this.cliente = new Cliente();\n this.flete = new Flete(); \n this.estatus = true;\n }\n\n}","import { Injectable } from \"@angular/core\";\nimport { ApiService } from \"../../../services/api.service\";\nimport { Observable } from \"rxjs\";\nimport { ClienteCuentaBanco } from \"../models/ClienteCuentaBanco\";\n@Injectable({\n providedIn: 'root'\n}) export class ClienteCuentaBancoService {\n private endpoint = 'clienteCuentaBanco';\n constructor(private api: ApiService){\n }\n\n saveAll(params: any): Observable<any> {\n let p ={'cuentas' : params};\n return this.api.post<any>(this.endpoint, p);\n }\n\n get(id: number): Observable<ClienteCuentaBanco> {\n return this.api.get<ClienteCuentaBanco>(`${this.endpoint}/${id}`);\n }\n\n delete(id: number): Observable<any> {\n return this.api.delete<any>(this.endpoint, id);\n }\n\n getAll(params?: any): Observable<any> {\n return this.api.get<any>(this.endpoint, params);\n }\n\n save(obj: any): Observable<any> {\n return this.api.post<any>(this.endpoint, obj);\n }\n\n update(obj: any): Observable<any> {\n return this.api.put<any>(this.endpoint, obj.id, obj);\n }\n}","import { Injectable } from \"@angular/core\";\nimport { ApiService } from \"../../../services/api.service\";\nimport { Observable } from \"rxjs\";\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ClienteFleteService {\n private endpoint = 'clienteFlete';\n constructor(private api: ApiService){\n }\n\n saveAll(p: any): Observable<any> {\n let params ={ fletes : p};\n return this.api.post<any>(this.endpoint, params);\n }\n\n get(id: number): Observable<any> {\n return this.api.get<any>(`${this.endpoint}/${id}`);\n }\n\n delete(id: number): Observable<any> {\n return this.api.delete<any>(this.endpoint, id);\n }\n\n getAll(params?: any): Observable<any> {\n return this.api.get<any>(this.endpoint, params);\n }\n\n save(obj: any): Observable<any> {\n return this.api.post<any>(this.endpoint, obj);\n }\n\n update(obj: any): Observable<any> {\n return this.api.put<any>(this.endpoint, obj.id, obj);\n }\n}","export class TipoContacto{\n id : number;\n descripcion : String;\n estatus : boolean;\n version : number;\n constructor(){\n this.estatus= true;\n }\n}","import { TipoContacto } from \"../../tipo-contacto/models/TipoContacto\";\n\nexport class DatoContacto{\n id: number;\n valor: string;\n estatus : boolean;\n tipoContacto : TipoContacto;\n version : number;\n constructor(){\n this.tipoContacto = new TipoContacto();\n }\n \n}"," import { Injectable } from \"@angular/core\";\nimport { ApiService } from \"../../../services/api.service\";\nimport { Observable } from \"rxjs\";\n\n@Injectable({\n providedIn: 'root'\n})\nexport class DatoContactoService {\n private endpoint = 'contacto';\n constructor(private api: ApiService){\n }\n\n getAll(params?: any): Observable<any> {\n return this.api.get<any>(this.endpoint, params);\n }\n\n get(id: number): Observable<any> {\n return this.api.get<any>(`${this.endpoint}/${id}`);\n }\n\n save(obj: any): Observable<any> {\n return this.api.post<any>(this.endpoint, obj);\n }\n\n update(obj: any): Observable<any> {\n return this.api.put<any>(this.endpoint, obj.id, obj);\n }\n\n delete(id: number): Observable<any> {\n return this.api.delete<any>(this.endpoint, id);\n }\n}","\n\nimport { Injectable } from \"@angular/core\";\nimport { ApiService } from \"../../../services/api.service\";\nimport { Observable } from \"rxjs\";\n\n@Injectable({\n providedIn: 'root'\n })\nexport class DatoDireccionService {\n private endpoint = 'datoDireccion';\n constructor(private api: ApiService){\n }\n\n getAll(params?: any): Observable<any> {\n return this.api.get<any>(this.endpoint, params);\n }\n \n get(id: number): Observable<any> {\n return this.api.get<any>(`${this.endpoint}/${id}`);\n }\n\n save(obj: any): Observable<any> {\n return this.api.post<any>(this.endpoint, obj);\n }\n\n update(obj: any): Observable<any> {\n return this.api.put<any>(this.endpoint, obj.id, obj);\n }\n\n delete(id: number): Observable<any> {\n return this.api.delete<any>(this.endpoint, id);\n }\n \n}","export class Departamento{\n id : number;\n codigo: number;\n descripcion : number;\n estatus : boolean;\n version : number;\n departamentoPadre : Departamento;\n constructor(){\n \n }\n}\n\n\n\n\n\n\n\n","import { Injectable } from \"@angular/core\";\nimport { ApiService } from \"../../../services/api.service\";\nimport { Observable } from \"rxjs\";\n\n@Injectable({\n providedIn: 'root'\n}) export class DepartamentoService {\n private endpoint = 'departamento';\n constructor(private api: ApiService){\n }\n\n getAll(params?: any): Observable<any> {\n return this.api.get<any>(this.endpoint, params);\n }\n \n get(id: number): Observable<any> {\n return this.api.get<any>(`${this.endpoint}/${id}`);\n }\n\n save(obj: any): Observable<any> {\n return this.api.post<any>(this.endpoint, obj);\n }\n\n update(obj: any): Observable<any> {\n return this.api.put<any>(this.endpoint, obj.id, obj);\n }\n\n delete(id: number): Observable<any> {\n return this.api.delete<any>(this.endpoint, id);\n }\n}","\nexport class FormaPago{\nid : number;\nversion : number;\ncodigo : string;\ndescripcion : string;\ncomision : number;\nestatus : boolean;\ncodigoSat : number;\nconstructor(){}\n}\n","import { DatoDireccion } from \"../../dato-direccion/models/DatoDireccion\";\nimport { PersonaMoral } from \"../../../models/PersonaMoral\";\nimport { FormaPago } from \"../../formaPago/models/FormaPago\";\n\n\nexport class Empresa{\n id : number;\n nombre : string; \n \n claveFormaPagoEfectivo : FormaPago;\n estatus : boolean;\n datoDireccion :DatoDireccion;\n personaMoral :PersonaMoral;\n version : number;\n\n constructor(){\n this.datoDireccion = new DatoDireccion();\n this.personaMoral = new PersonaMoral();\n this.claveFormaPagoEfectivo= new FormaPago();\n }\n \n}","import { Empresa } from \"./Empresa\";\n\nexport class ConfiguracionEmpresaAdministrativa{\n id : number;\n version : number;\n busquedaPreciosNetos : boolean;\n calcularCambioTicket : boolean;\n claveBonificacion : boolean;\n claveClienteFactura : boolean;\n claveClienteMostrador : boolean;\n envioContabilidadVirtual : boolean;\n impuestoIncluidoPrecio : boolean;\n manejaOrdenSurtido : boolean;\n manejaUnidadSecundaria : boolean;\n modoContabilidadAuto : boolean;\n numeroDecimales : number;\n numeroPrecios : number;\n precioDefault : number;\n redondeaCaja : number;\n serieNotaCredito : string;\n tasaImpuestoDefault : number;\n tipoCosteo : string;\n claveFormaPagoEfectivo : string;\n formaDePagoEfectivo : any;\n formaDePagoCredito : any;\n formaDePagoMixto : any;\n monedaDefault : any;\n empresa : Empresa;\n envioMercadoLibreAuto : boolean;\n permiteModificarFecha : boolean;\n constructor(){\n this.empresa = new Empresa();\n }\n}\n","\n\nimport { Injectable } from \"@angular/core\";\nimport { ApiService } from \"../../../services/api.service\";\nimport { Observable } from \"rxjs\";\n\n@Injectable({\n providedIn: 'root'\n})\nexport class EmpresaService {\n private endpoint = 'empresa';\n constructor(private api: ApiService){\n }\n\n getAll(params?: any): Observable<any> {\n return this.api.get<any>(this.endpoint, params);\n }\n get(){\n return this.api.get<any>(`${this.endpoint}/configuracionEmpresaAdministrativo/configuracionUsuario`);\n }\n\n getByEmpresa(id: number): Observable<any> {\n return this.api.get<any>(`${this.endpoint}/configuracionEmpresaAdministrativo/configuracionUsuario/${id}`);\n }\n\n save(obj: any): Observable<any> {\n return this.api.post<any>(this.endpoint, obj);\n }\n\n update(obj: any): Observable<any> {\n return this.api.put<any>(this.endpoint, obj.id, obj);\n }\n\n delete(id: number): Observable<any> {\n return this.api.delete<any>(this.endpoint, id);\n }\n}","import { Injectable } from \"@angular/core\";\n import { ApiService } from \"../../../services/api.service\";\nimport { Observable } from \"rxjs\";\n\n@Injectable({\n providedIn: 'root'\n})\nexport class FleteService {\n private endpoint = 'flete';\n constructor(private api: ApiService){\n }\n\n getAll(params?: any): Observable<any> {\n return this.api.get<any>(this.endpoint, params);\n }\n\n get(id: number): Observable<any> {\n return this.api.get<any>(`${this.endpoint}/${id}`);\n }\n\n save(obj: any): Observable<any> {\n return this.api.post<any>(this.endpoint, obj);\n }\n\n update(obj: any): Observable<any> {\n return this.api.put<any>(this.endpoint, obj.id, obj);\n }\n\n delete(id: number): Observable<any> {\n return this.api.delete<any>(this.endpoint, id);\n }\n}","import { Injectable } from \"@angular/core\";\nimport { ApiService } from \"../../../services/api.service\";\nimport { Observable } from \"rxjs\";\nimport { FormaPago } from \"../models/FormaPago\";\n\n@Injectable({\n providedIn: \"root\"\n})\nexport class FormaPagoService { \n private endpoint = 'FormaDePago';\n constructor( private api: ApiService){\n\n }\n\n getAll(params?: any): Observable<any> {\n return this.api.get<any>(this.endpoint, params);\n }\n\n get(id: number): Observable<FormaPago> {\n return this.api.get<FormaPago>(`${this.endpoint}/${id}`);\n }\n\n save(obj: FormaPago): Observable<FormaPago> {\n return this.api.post<FormaPago>(this.endpoint, obj);\n }\n\n update(obj: FormaPago): Observable<FormaPago> {\n return this.api.put<FormaPago>(this.endpoint, obj.id, obj);\n }\n\n delete(id: number): Observable<any> {\n return this.api.delete<any>(this.endpoint, id);\n }\n}","export class Moneda{\n id : number;\n version : number;\n codigo : number;\n descripcion : string;\n simbolo : string;\n monedaNacional : boolean;\n decimales : number;\n tipoDecambio: number;\n estatus:boolean;\n codigoSat: number;\n constructor(){}\n}\n","import { Injectable } from \"@angular/core\";\n import { ApiService } from \"../../../services/api.service\";\nimport { Observable } from \"rxjs\";\n\n@Injectable({\n providedIn : 'root'\n}) export class MonedaService {\n private endpoint = 'moneda';\n constructor(private api: ApiService){\n }\n\n getAll(params?: any): Observable<any> {\n return this.api.get<any>(this.endpoint, params);\n }\n\n get(id: number): Observable<any> {\n return this.api.get<any>(`${this.endpoint}/${id}`);\n }\n\n save(obj: any): Observable<any> {\n return this.api.post<any>(this.endpoint, obj);\n }\n\n update(obj: any): Observable<any> {\n return this.api.put<any>(this.endpoint, obj.id, obj);\n }\n\n delete(id: number): Observable<any> {\n return this.api.delete<any>(this.endpoint, id);\n }\n}","export class EstadoCivil {\n id: number;\n version: number;\n nombre: string;\n descripcion: string;\n estatus: boolean;\n constructor(){}\n}","export class Genero{\n id: number;\n version : number;\n nombre: string;\n estatus: boolean;\n constructor(){}\n}","import { Injectable } from \"@angular/core\";\nimport { ApiService } from \"../../../services/api.service\";\nimport { Observable } from \"rxjs\";\n\n@Injectable({\n providedIn: \"root\"\n})\nexport class PersonaFisicaService { \n private endpoint = 'PersonaFisica';\n constructor(private api: ApiService){\n }\n\n getGeneros(): Observable<any> {\n return this.api.get<any>(`${this.endpoint}/genero`);\n }\n\n getEstadoCivil(): Observable<any> {\n return this.api.get<any>(`${this.endpoint}/estadoCivil`);\n }\n\n}","import { Proveedor } from \"./Proveedor\";\nimport { Banco } from \"../../banco/models/Banco\";\n\nexport class ProveedorCuentaBanco{\n id : number;\n version : number;\n estatus : boolean;\n proveedor : Proveedor;\n banco : Banco;\n cuentaBancaria : string;\n cambio : boolean;\n constructor(){\n this.banco = new Banco();\n this.estatus= true;\n }\n}","import { Proveedor } from \"./Proveedor\";\nimport { Flete } from \"../../flete/models/Flete\";\n\nexport class ProveedorFlete{\n id : number;\n version : number;\n proveedor : Proveedor;\n flete : Flete;\n estatus : Boolean;\n \n cambio : boolean; // solo para saber si sucede un cambio en el objeto \n\n constructor(){\n this.proveedor = new Proveedor();\n this.flete = new Flete(); \n this.estatus = true;\n }\n}","import { Injectable } from \"@angular/core\";\nimport { ApiService } from \"../../../services/api.service\";\nimport { Observable } from \"rxjs\";\n\n@Injectable({\n providedIn: 'root'\n}) export class ProveedorCuentaBancoService {\n private endpoint = 'proveedorCuentaBanco';\n constructor(private api: ApiService){\n }\n\n getAll(params?: any): Observable<any> {\n return this.api.get<any>(this.endpoint, params);\n }\n\n saveAll(params){\n let p ={'cuentas' : params};\n return this.api.post<any>(this.endpoint, p);\n }\n\n get(id: number): Observable<any> {\n return this.api.get<any>(`${this.endpoint}/${id}`);\n }\n \n delete(id: number): Observable<any> {\n return this.api.delete<any>(this.endpoint, id);\n }\n\n update(obj: any): Observable<any> {\n return this.api.put<any>(this.endpoint, obj.id, obj);\n }\n \n save(obj: any): Observable<any> {\n return this.api.post<any>(this.endpoint, obj);\n }\n \n}","import { Injectable } from \"@angular/core\"; \nimport { ApiService } from \"../../../services/api.service\";\nimport { Observable } from \"rxjs\";\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ProveedorFleteService {\n private endpoint = 'proveedorFlete';\n constructor(private api: ApiService){\n }\n\n getAll(params?: any): Observable<any> {\n return this.api.get<any>(this.endpoint, params);\n }\n\n saveAll(p){\n let params ={ fletes : p};\n return this.save(params);\n }\n\n save(obj: any): Observable<any> {\n return this.api.post<any>(this.endpoint, obj);\n }\n\n update(obj: any): Observable<any> {\n return this.api.put<any>(this.endpoint, obj.id, obj);\n }\n\n delete(id: number): Observable<any> {\n return this.api.delete<any>(this.endpoint, id);\n }\n}","import { Injectable } from '@angular/core';\nimport { ApiService } from '../../../services/api.service';\nimport { Observable } from 'rxjs';\n \n@Injectable({\n providedIn: 'root'\n})\nexport class ClaveAumentoDisminucionService {\n private endpoint = 'claveAumentoDisminucion';\n constructor(private api: ApiService){\n }\n\n getAll(params?: any): Observable<any> {\n return this.api.get<any>(this.endpoint, params);\n }\n \n get(id: number): Observable<any> {\n return this.api.get<any>(`${this.endpoint}/${id}`);\n }\n\n save(obj: any): Observable<any> {\n return this.api.post<any>(this.endpoint, obj);\n }\n\n update(obj: any): Observable<any> {\n return this.api.put<any>(this.endpoint, obj.id, obj);\n }\n\n delete(id: number): Observable<any> {\n return this.api.delete<any>(this.endpoint, id);\n }\n}\n","import { Injectable } from \"@angular/core\";\nimport { ApiService } from \"../../../services/api.service\";\nimport { Observable } from \"rxjs\";\n\n@Injectable({\n providedIn: 'root'\n})\nexport class SerieDocumentoService{\n private endpoint = 'serieDocumento';\n constructor(private api: ApiService){\n }\n\n getTipos(): Observable<any> {\n return this.api.get<any>(`${this.endpoint}/tipoSerie`);\n }\n\n getReporte(params: any): Observable<any> {\n return this.api.get<any>(`${this.endpoint}/descargaFormatoReporte`, params);\n }\n \n get(id: number): Observable<any> {\n return this.api.get<any>(`${this.endpoint}/${id}`);\n }\n\n save(obj: any): Observable<any> {\n return this.api.post<any>(this.endpoint, obj);\n }\n\n update(obj: any): Observable<any> {\n return this.api.put<any>(this.endpoint, obj.id, obj);\n }\n\n delete(id: number): Observable<any> {\n return this.api.delete<any>(this.endpoint, id);\n }\n }","import { ClaveMovimiento } from \"../../claveMovimiento/models/ClaveMovimiento\";\n\n\nexport class SerieDocumento {\n id : number;\n version : number;\n codigo : string;\n descripcion : string;\n folio : number;\n serieImprimir : string;\n formatoDefault : string;\n impresoraDefault : string;\n lineasReporte : number;\n precioDefault : number;\n empresaContable : number;\n tipoSerie : string;\n numeroDeCopias : number;\n folioTemporal : boolean;\n preverImpresion : boolean;\n folioAutomatico : boolean;\n apartarMercancia : boolean;\n mostrarPreciosNetos : boolean;\n ventaNegada : boolean;\n duplicarFolio : boolean;\n estatus : boolean;\n claveMovimiento : ClaveMovimiento;\n\n formatoReporte : any;\n nombreReporte :string;\n\n\n constructor() { }\n}"," import { Injectable } from \"@angular/core\";\nimport { ApiService } from \"../../../services/api.service\";\nimport { Observable } from \"rxjs\";\n\n@Injectable({\n providedIn: 'root'\n })\nexport class TipoContactoService {\n private endpoint = 'tipoContacto';\n constructor(private api: ApiService){\n }\n\n getAll(params?: any): Observable<any> {\n return this.api.get<any>(this.endpoint, params);\n }\n\n get(id: number): Observable<any> {\n return this.api.get<any>(`${this.endpoint}/${id}`);\n }\n\n save(obj: any): Observable<any> {\n return this.api.post<any>(this.endpoint, obj);\n }\n\n update(obj: any): Observable<any> {\n return this.api.put<any>(this.endpoint, obj.id, obj);\n }\n\n delete(id: number): Observable<any> {\n return this.api.delete<any>(this.endpoint, id);\n }\n}","export class Ubicacion {\n id : number;\n version : number;\n estatus : boolean;\n codigo : string;\n largo : number;\n ancho : number;\n alto : number;\n pesoMaximo : number; \n descripcion : string;\n nivel1 : string;\n nivel2 : string;\n nivel3 : string;\n nivel4 : string;\n nivel5 : string;\n constructor(){}\n}","import { Injectable } from \"@angular/core\";\n import { ApiService } from \"../../../services/api.service\";\nimport { Observable } from \"rxjs\";\n\n@Injectable({\n providedIn: 'root'\n}) export class UbicacionService {\n private endpoint = 'ubicacion';\n constructor(private api: ApiService){\n }\n\n getAll(params?: any): Observable<any> {\n return this.api.get<any>(this.endpoint, params);\n }\n\n get(id: number): Observable<any> {\n return this.api.get<any>(`${this.endpoint}/${id}`);\n }\n\n save(obj: any): Observable<any> {\n return this.api.post<any>(this.endpoint, obj);\n }\n\n update(obj: any): Observable<any> {\n return this.api.put<any>(this.endpoint, obj.id, obj);\n }\n\n delete(id: number): Observable<any> {\n return this.api.delete<any>(this.endpoint, id);\n }\n}","\n export abstract class TipoCatalogo {\n static ARTICULO = 2;\n static USO_CFDI =11;\n}","\nimport { Injectable } from \"@angular/core\";\nimport { ApiService } from \"../../../services/api.service\";\n\n@Injectable({\n providedIn: 'root'\n}) export class AcreedorCuentaContableService{\n private endpoint = 'acreedorCuentaContable';\n constructor(private api: ApiService){\n }\n\n cuentasContables() {\n return this.api.get<any>(`${this.endpoint}/obtieneCuentasContablesRecursivo`);\n }\n}","import { NormaInformacionFinancieraModel } from './normaInfoFinanciera.model';\nimport { Moneda } from './../../components/moneda/models/Moneda';\nexport class CuentaContableModel{\n id: number;\n version: number;\n descripcion: string;\n descripcionCuentaContable: string;\n cuentaContable: string;\n nivel: number;\n naturaleza: string;\n naturalezaDescripcion: string;\n cuentaRegistro: boolean;\n activo: boolean;\n tipo: string;\n tipoDescripcion: string;\n recaudacionAgrupador: any;\n normaInformacionFinanciera: NormaInformacionFinancieraModel;\n moneda: Moneda;\n cuentaContableOrigen: CuentaContableModel;\n children: CuentaContableModel[];\n constructor(){\n };\n}","export class NormaInformacionFinancieraModel {\n id: number;\n version: number;\n clave: string;\n descripcion:string;\n normaInformacionFinancieraDescripcion:string;\n constructor(){};\n}"]}
|
|
1
|
+
{"version":3,"sources":["../../../projects/erp-core/src/lib/services/global.service.ts","../../../projects/erp-core/src/lib/services/api.service.ts","../../../node_modules/tslib/tslib.es6.js","../../../projects/erp-core/src/lib/contabilidad/servicios/cuentacontable.service.ts","../../../projects/erp-core/src/lib/contabilidad/componentes/cclista/cclista.component.html","../../../projects/erp-core/src/lib/contabilidad/componentes/cclista/cclista.component.ts","../../../projects/erp-core/src/lib/contabilidad/componentes/ccseleccion-dialog/ccseleccion-dialog.component.ts","../../../projects/erp-core/src/lib/contabilidad/componentes/ccseleccion-dialog/ccseleccion-dialog.component.html","../../../projects/erp-core/src/lib/importComponetsConta.ts","../../../projects/erp-core/src/lib/components/login-modal/login-modal.service.ts","../../../projects/erp-core/src/lib/components/loading-screen/loading-screen.service.ts","../../../projects/erp-core/src/lib/httpInterceptor/httpInterceptor.ts","../../../projects/erp-core/src/lib/components/error404/error404.component.ts","../../../projects/erp-core/src/lib/components/error404/error404.component.html","../../../projects/erp-core/src/lib/components/loading/loading.service.ts","../../../projects/erp-core/src/lib/components/loading/loading.component.ts","../../../projects/erp-core/src/lib/components/loading/loading.component.html","../../../projects/erp-core/src/lib/components/loading-screen/loading-screen.component.ts","../../../projects/erp-core/src/lib/components/loading-screen/loading-screen.component.html","../../../projects/erp-core/src/lib/components/pdfModal/pdf-modal.service.ts","../../../projects/erp-core/src/lib/services/file.service.ts","../../../projects/erp-core/src/lib/components/pdfModal/pdf-modal.component.html","../../../projects/erp-core/src/lib/components/pdfModal/pdf-modal.component.ts","../../../projects/erp-core/src/lib/models/Usuario.ts","../../../projects/erp-core/src/lib/models/auth.ts","../../../projects/erp-core/src/lib/services/auth.service.ts","../../../projects/erp-core/src/lib/components/login-modal/login-modal.component.html","../../../projects/erp-core/src/lib/components/login-modal/login-modal.component.ts","../../../projects/erp-core/src/lib/components/caja/sessionCaja.service.ts","../../../projects/erp-core/src/lib/components/caja/session-create/session-create.component.html","../../../projects/erp-core/src/lib/components/caja/session-create/session-create.component.ts","../../../projects/erp-core/src/lib/components/cliente/services/cliente.service.ts","../../../projects/erp-core/src/lib/services/paginate.service.ts","../../../projects/erp-core/src/lib/components/cliente/select/select-cliente.component.html","../../../projects/erp-core/src/lib/components/cliente/select/select-cliente.component.ts","../../../projects/erp-core/src/lib/components/persona-fisica/models/Persona.ts","../../../projects/erp-core/src/lib/components/persona-fisica/models/PersonaFisica.ts","../../../projects/erp-core/src/lib/models/PersonaMoral.ts","../../../projects/erp-core/src/lib/components/clasificadorTipo/models/ClasificadorTipo.ts","../../../projects/erp-core/src/lib/components/proveedor/models/Proveedor.ts","../../../projects/erp-core/src/lib/components/proveedor/services/proveedor.service.ts","../../../projects/erp-core/src/lib/components/proveedor/select/select-proveedor.component.html","../../../projects/erp-core/src/lib/components/proveedor/select/select-proveedor.component.ts","../../../projects/erp-core/src/lib/components/selecciona-articulo/stock.service.ts","../../../projects/erp-core/src/lib/components/almacen/services/almacen.service.ts","../../../projects/erp-core/src/lib/components/seleccion-articulo-informacion/services/articulo-informacion.service.ts","../../../projects/erp-core/src/lib/components/seleccion-articulo-informacion/seleccion-articulo-informacion.component.html","../../../projects/erp-core/src/lib/components/seleccion-articulo-informacion/seleccion-articulo-informacion.component.ts","../../../projects/erp-core/src/lib/components/selecciona-articulo/selecciona-articulo.component.html","../../../projects/erp-core/src/lib/components/selecciona-articulo/selecciona-articulo.component.ts","../../../projects/erp-core/src/lib/components/acreedor/services/acreedor.service.ts","../../../projects/erp-core/src/lib/components/acreedor/select/select-acreedor.component.html","../../../projects/erp-core/src/lib/components/acreedor/select/select-acreedor.component.ts","../../../projects/erp-core/src/lib/importComponents.ts","../../../projects/erp-core/src/lib/globalPrimeNg.ts","../../../projects/erp-core/src/lib/app.module.ts","../../../projects/erp-core/src/lib/services/controlAcceso.service.ts","../../../projects/erp-core/src/lib/services/init.service.ts","../../../projects/erp-core/src/lib/services/message.service.ts","../../../projects/erp-core/src/lib/services/personaMoral.service.ts","../../../projects/erp-core/src/lib/services/canActivateGuard.service.ts.ts","../../../projects/erp-core/src/lib/services/catalogo-adicional.service.ts","../../../projects/erp-core/src/lib/services/authenticated.service.ts","../../../projects/erp-core/src/lib/services/versionCheck.service.ts","../../../projects/erp-core/src/lib/components/agente/models/Agente.ts","../../../projects/erp-core/src/lib/components/agente/services/agente.service.ts","../../../projects/erp-core/src/lib/components/almacen/models/Almacen.ts","../../../projects/erp-core/src/lib/components/dato-direccion/models/DatoDireccion.ts","../../../projects/erp-core/src/lib/components/banco/models/Banco.ts","../../../projects/erp-core/src/lib/components/banco/services/banco.service.ts","../../../projects/erp-core/src/lib/components/catalogoTipo/models/CatalogoTipo.ts","../../../projects/erp-core/src/lib/components/catalogoTipo/services/catalogoTipo.service.ts","../../../projects/erp-core/src/lib/components/clasificadorTipo/services/clasificadorTipo.service.ts","../../../projects/erp-core/src/lib/components/claveMovimiento/models/ClaveMovimiento.ts","../../../projects/erp-core/src/lib/components/claveMovimiento/services/claveMovimiento.service.ts","../../../projects/erp-core/src/lib/components/cliente/models/Cliente.ts","../../../projects/erp-core/src/lib/components/cliente/models/ClienteCuentaBanco.ts","../../../projects/erp-core/src/lib/components/flete/models/Flete.ts","../../../projects/erp-core/src/lib/components/cliente/models/ClienteFlete.ts","../../../projects/erp-core/src/lib/components/cliente/services/clienteCuentaBanco.service.ts","../../../projects/erp-core/src/lib/components/cliente/services/clienteFlete.service.ts","../../../projects/erp-core/src/lib/components/tipo-contacto/models/TipoContacto.ts","../../../projects/erp-core/src/lib/components/contacto/models/DatoContacto.ts","../../../projects/erp-core/src/lib/components/contacto/services/datoContacto.service.ts","../../../projects/erp-core/src/lib/components/dato-direccion/services/datoDireccion.service.ts","../../../projects/erp-core/src/lib/components/departamento/models/Departamento.ts","../../../projects/erp-core/src/lib/components/departamento/services/departamento.service.ts","../../../projects/erp-core/src/lib/components/formaPago/models/FormaPago.ts","../../../projects/erp-core/src/lib/components/empresa/models/Empresa.ts","../../../projects/erp-core/src/lib/components/empresa/models/ConfiguracionEmpresaAdministrativa.ts","../../../projects/erp-core/src/lib/components/empresa/services/empresa.service.ts","../../../projects/erp-core/src/lib/components/flete/services/flete.service.ts","../../../projects/erp-core/src/lib/components/formaPago/services/FormaPago.service.ts","../../../projects/erp-core/src/lib/components/moneda/models/Moneda.ts","../../../projects/erp-core/src/lib/components/moneda/services/moneda.service.ts","../../../projects/erp-core/src/lib/components/persona-fisica/models/EstadoCivil.ts","../../../projects/erp-core/src/lib/components/persona-fisica/models/Genero.ts","../../../projects/erp-core/src/lib/components/persona-fisica/services/personaFisica.service.ts","../../../projects/erp-core/src/lib/components/proveedor/models/ProveedorCuentaBanco.ts","../../../projects/erp-core/src/lib/components/proveedor/models/ProveedorFlete.ts","../../../projects/erp-core/src/lib/components/proveedor/services/proveedorCuentaBanco.service.ts","../../../projects/erp-core/src/lib/components/proveedor/services/proveedorFlete.service.ts","../../../projects/erp-core/src/lib/components/claveAumentoDisminucion/services/clave-aumento-disminucion.service.ts","../../../projects/erp-core/src/lib/components/serieDocumento/services/serieDocumento.service.ts","../../../projects/erp-core/src/lib/components/serieDocumento/models/SerieDocumento.ts","../../../projects/erp-core/src/lib/components/tipo-contacto/services/tipoContacto.service.ts","../../../projects/erp-core/src/lib/components/ubicacion/models/Ubicacion.ts","../../../projects/erp-core/src/lib/components/ubicacion/services/ubicacion.service.ts","../../../projects/erp-core/src/lib/utils/tipo_catalogo.ts.ts","../../../projects/erp-core/src/lib/components/acreedor/services/acreedorCuentaContable.ts","../../../projects/erp-core/src/lib/contabilidad/modelos/cuentaContable.model.ts","../../../projects/erp-core/src/lib/contabilidad/modelos/normaInfoFinanciera.model.ts"],"names":["GlobalService","http","this","prototype","setConfiguracion","get","subscribe","data","localStorage","setItem","JSON","stringify","obtieneConfiguracion","parse","getItem","getUrl","urlComponente","url","auth","params","post","getUsuarioActual","buildAuth","getUsuario","headers","HttpHeaders","Authorization","token_type","access_token","Content-Type","Accept","validateEndPoint","closeEndPoint","removeItem","setUsuarioInstance","usuarioInstance","getLang","lang","setModulo","modulo","i0","ɵɵinject","i1","HttpClient","factory","ɵfac","providedIn","ApiService","global","endpoint","queryParams","HttpParams","fromObject","options","Object","assign","body","put","id","delete","patch","__awaiter","thisArg","_arguments","P","generator","Promise","resolve","reject","fulfilled","value","step","next","e","rejected","result","done","then","apply","__generator","f","y","t","_","label","sent","trys","ops","g","create","Iterator","verb","Symbol","iterator","n","v","op","TypeError","call","pop","length","push","__values","o","s","m","i","SuppressedError","CuentaContableService","api","getAll","obtieneCuentasContablesRecursivo","save","obj","update","i0.ɵɵelementStart","i0.ɵɵtext","i0.ɵɵelementEnd","i0.ɵɵlistener","i0.ɵɵelement","i0.ɵɵtemplate","i0.ɵɵadvance","i0.ɵɵproperty","i0.ɵɵtextInterpolate1","CclistaComponent","_cuentaContableService","cuentasContables","maxH","query","tempAccounts","evSelectedAccount","EventEmitter","ngOnInit","window","innerHeight","obtenerCuentasContablesRecursivo","_this","sortAccounts","sort","a","b","listA","cuentaContable","split","listB","parseInt","_b","_c","item","children","sortItem","account","selectCuentaContable","emit","filterAccounts","evt","browseAccount","temp","resetAccount","accounts","cc","listAccounts","accounts_1","accounts_1_1","toString","toLowerCase","includes","descripcion","concat","ɵɵdirectiveInject","selectors","inputs","isShared","typeAccount","outputs","decls","vars","consts","template","rf","ctx","$event","i0.ɵɵstyleMap","CcseleccionDialogComponent","maxW","flagModal","size","innerWidth","getAccount","hiddenDialog","viewQuery","tipoCuenta","LoginModalService","modal","showModal","LoadingScreenService","_loading","loadingStatus","Subject","defineProperty","startLoading","loading","stopLoading","httpInterceptor","loginModalService","toastrService","loadingScreenService","intercept","request","handle","pipe","catchError","error","caught","handleError","throwError","tap","res","type","message","success","timeOut","closeButton","err","status","of","readError","respuesta","_errors","Array","isArray","indexError","i1$1","ToastrService","Error404Component","LoadingService","setLoading","visible","start","stop","loadingService","logo_loading","_visible","$","setTimeout","LoadingComponent","i0.ɵɵpropertyInterpolate","LoadingScreenComponent","_elmRef","_changeDetectorRef","debounceTime","nativeElement","style","display","ngAfterViewInit","loadingSubscription","detectChanges","ngOnDestroy","unsubscribe","ElementRef","ChangeDetectorRef","PdfModalService","print","pdf_generate","base_64","generate_print","html","FileService","_toastrService","translate","addFile","toastr","file","target","files","imgObj","nombre","contentType","orden","archivo","name","tipo","reader","FileReader","readAsDataURL","onload","msgSuccess","titleFile","onerror","base64ToBlob","base64","byteCharacters","atob","byteNumbers","charCodeAt","byteArray","Uint8Array","Blob","blobToDowload","blob","anchor","document","createElement","download","href","URL","createObjectURL","dataset","downloadurl","join","click","base64ToFileDowload","i3","TranslateService","PdfModalComponent","_pdfModalService","fileService","domSanitizer","pdfBase64","resp","getElementById","innerHTML","imprimir","iframe","frames","contentWindow","head","i3$1","DomSanitizer","ɵɵpureFunction0","_c1$1","AuthService","httpClient","url_host","login","seleccionEmpresa","Auth","setlogin","user","key","config","startAuth","isLogin","quitarUsuario","verificaLogin","usuario","getUser","getDetalsUser","usuarioDetalles","loginOut","quitarEmpresaAdministrativa","Usuario","us","selectEmpresa","httpOptions","Accept-type","setEmpresa","empresa","quitarModulo","i0.ɵɵtextInterpolate","LoginModalComponent","authService","username","undefined","password","empresas","entrar","form","valid","index","entrarEmpresa","_error","_empresa","SessionCajaService","ctx_r1","editMode","SessionCreateComponent","sessionCajaService","showCreateSession","caja","sessionEdit","session","inicio","Date","getTime","termino","monedaDenominacionList","labels","title","console","log","setSession","movimientosCaja","monto","z","closeModal","_a","toPromise","edit","ClienteService","validar_archivos_bss","PaginateService","getPage","rows","total","offset","filtro","getParams","page","param","getOrden","arg","setDefaultLang","dat","ordenar","tra","values","forEach","elem","erro","SelectClienteComponent","clienteService","paginate","selectMode","select","clientes","cargarDatosClientes","event","first","trim","aplicarFiltro","seleccionaCliente","clienteSeleccionado","cerrar","i0.ɵɵpropertyInterpolate1","datoPersona","Persona","contactos","datoDirecciones","representanteLegal","PersonaFisica","personaMoral","PersonaMoral","catalogoTipo","ClasificadorTipo","clasificadorTipo","personaFisica","ProveedorService","SelectProveedorComponent","proveedorService","paginanateService","proveedorSeleccionado","Proveedor","proveedores","cargarDatosProveedores","pagina","cerrarModal","seleccionarProveedor","_c0$4","StockService","obtenerExistenciasArticulosDescripcion","parametros","AlmacenService","obtenerAlmacenEmpresa","ArticuloInformacionService","obtenerExistencias","articulo","uRL","i0.ɵɵstyleProp","SeleccionArticuloInformacionComponent","articuloInformacionService","eventSelection","columnsData","field","header","width","OnLoad","OnResize","isMovil","existenciasList","OnShow","titulo","onSelectedUbicacion","ubicacionRow","ubicacion","ctx_r4","articuloSelected","ɵɵresolveWindow","SeleccionaArticuloComponent","_stockService","_paginateService","_almacenService","manejaUnidadSecundaria","emitFilaSeleccionada","emitShowArticulos","articulosList","busquedaArticulos","tipoBusqueda","showModalInformacion","showFirstTime","clasificadorList","configuracion","almacenList","obtenerExistenciaArticulos","obtenerExistenciaArticulosShow","almacen","noOcupaAlamacen","movimiento","tipoPrecio","tipoArticulo","numeroPrecioDefault","articulosDescripcion","clasificadores","catch","obtenerExistenciaArticulosVal","obtenerExistenciaArticulosKey","filaSeleccionada","emitirShowArticulos","seriesArticulo","series","onShowInformacion","eventArticulo","onEventInformacion","showArticulos","_c1$3","AcreedorService","i0.ɵɵattribute","SelectAcreedorComponent","acreedorService","acreedorSeleccionado","acreedores","cargarDatosAcreedores","seleccionarAcreedor","_c0$7","primeNg","CardModule","TooltipModule","OverlayPanelModule","RadioButtonModule","CheckboxModule","AutoCompleteModule","TableModule","TreeTableModule","CalendarModule","ButtonModule","InputTextModule","DropdownModule","InputMaskModule","MessagesModule","MessageModule","PaginatorModule","ConfirmDialogModule","ProgressBarModule","TriStateCheckboxModule","KeyFilterModule","InputSwitchModule","DialogModule","TabViewModule","PanelModule","ToolbarModule","SplitButtonModule","FieldsetModule","TreeModule","TabMenuModule","MenubarModule","primeNgServices","ConfirmationService","HttpLoaderFactory","TranslateHttpLoader","CoreLibModule","providers","provide","HTTP_INTERCEPTORS","useClass","multi","imports","CommonModule","FormsModule","ToastrModule","forRoot","TranslateModule","loader","TranslateLoader","useFactory","deps","declarations","i12","i13","i14","i15","i16","i17","i8$1","i4","i20","i7","i6","i23","i24","i25","i26","i10","i28","i29","i30","i31","i32","i4$2","i34","i35","i36","i37","i38","i39","i40","i41","exports","ControlAccesoService","cambioAcciones","changeDetalleUsuario","set","detallesUsuarios","canActivete","rols","permiso","grupoPermisos","roles","filter","InitService","initConfig","response","hash","cargaConfig","empresaAdmin","MessageService","deployMessage","msg","info","warning","msgs","severity","summary","detail","mensaje","PersonaMoralService","CanActivateGuard","controlAccesoService","rol","method","canActivate","permisos","CatalogoAdicionalService","Authenticated","router","load","authority","navigate","regresaAlprincipal","host","location","i3$2","Router","VersionCheckService","currentHash","versionado","frequency","initVersionCheck","setInterval","checkVersion","hasHashChanged","confirm","reload","newHash","AgenteService","saveUsuarioAgente","getUsuarioAgente","obtenerAgenteEmpresa","datoDireccion","DatoDireccion","BancoService","CatalogoTipoService","ClasificadorTipoService","ClaveMovimientoService","agenteCobrador","Agente","agenteVendedor","banco","Banco","estatus","cliente","Cliente","flete","Flete","ClienteCuentaBancoService","saveAll","p","cuentas","ClienteFleteService","fletes","tipoContacto","TipoContacto","DatoContactoService","DatoDireccionService","DepartamentoService","claveFormaPagoEfectivo","FormaPago","Empresa","EmpresaService","getByEmpresa","FleteService","FormaPagoService","MonedaService","PersonaFisicaService","getGeneros","getEstadoCivil","proveedor","ProveedorCuentaBancoService","ProveedorFleteService","ClaveAumentoDisminucionService","SerieDocumentoService","getTipos","getReporte","TipoContactoService","UbicacionService","TipoCatalogo","ARTICULO","USO_CFDI","AcreedorCuentaContableService"],"mappings":"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","sourcesContent":["\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { Usuario } from '../models/Usuario';\nimport { Injectable } from '@angular/core';\n@Injectable({\n providedIn: 'root' \n})\nexport class GlobalService {\n\n usuarioInstance: Usuario;\n\n constructor(\n private http: HttpClient\n ) {\n }\n\n setConfiguracion() {\n this.http.get('assets/config.json').subscribe(\n (data: any) => {\n localStorage.setItem('config', JSON.stringify(data));\n }\n );\n }\n\n obtieneConfiguracion() {\n return JSON.parse(localStorage.getItem('config'));\n }\n\n getUrl(urlComponente?: string) {\n return this.obtieneConfiguracion().url + (urlComponente ? '/' + urlComponente : '');\n }\n\n auth(params) {\n\n return this.http.post(this.getUrl() + '/login', params);\n }\n\n getUsuarioActual() {\n return this.http.get(this.getUrl() + '/usuario/obtieneUsuarioActual', this.buildAuth());\n }\n\n buildAuth() {\n const data = this.getUsuario();\n return {\n headers: new HttpHeaders({\n 'Authorization': data.token_type + ' ' + data.access_token,\n 'Content-Type': 'application/json',\n 'Accept': 'application/json'\n })\n };\n }\n\n validateEndPoint() {\n\n return this.http.get(this.getUrl() + '/validate', this.buildAuth());\n }\n\n closeEndPoint() {\n localStorage.removeItem('usuario');\n this.setUsuarioInstance(null);\n }\n\n getUsuario() {\n return JSON.parse(localStorage.getItem('usuario'));\n }\n\n setUsuarioInstance(usuarioInstance) {\n this.usuarioInstance = usuarioInstance;\n }\n \n getLang() {\n let lang = localStorage.getItem('lang');\n return lang ? lang : 'es';\n }\n\n setModulo(modulo) {\n return this.http.post(this.getUrl() + '/usuario/setModulo', modulo, this.buildAuth());\n }\n\n \n}\n\n","// projects/erp-core/src/lib/services/api.service.ts\n\nimport { Injectable } from '@angular/core';\nimport { HttpClient, HttpParams } from '@angular/common/http';\nimport { Observable } from 'rxjs';\nimport { GlobalService } from './global.service'; // Usaremos GlobalService para la URL y la autenticación\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ApiService {\n\n constructor(\n private http: HttpClient,\n // Inyectamos GlobalService para usar sus métodos de ayuda (construir URL y cabeceras)\n private global: GlobalService\n ) {}\n\n /**\n * Realiza una petición GET genérica y autenticada usando HttpParams.\n * @param endpoint El endpoint del API (ej. '/FormaDePago')\n * @param queryParams Un objeto clave-valor para los parámetros de la URL.\n */\n public get<T>(endpoint: string, queryParams?: { [param: string]: any }): Observable<T> {\n \n // 1. Construye HttpParams de forma segura. Se encarga del URL encoding.\n const params = new HttpParams({ fromObject: queryParams });\n\n // 2. Combina las opciones: cabeceras de GlobalService y los nuevos params.\n const options = {\n ...this.global.buildAuth(), // Obtiene { headers: ... }\n params: params // Añade los HttpParams\n };\n\n const url = this.global.getUrl(endpoint);\n return this.http.get<T>(url, options);\n }\n\n\n /**\n * Realiza una petición POST genérica y autenticada.\n * @param endpoint El endpoint del API\n * @param body El cuerpo de la petición\n */\n public post<T>(endpoint: string, body: any): Observable<T> {\n const url = this.global.getUrl(endpoint);\n const options = this.global.buildAuth();\n return this.http.post<T>(url, body, options);\n }\n\n /**\n * Realiza una petición PUT genérica y autenticada.\n * @param endpoint El endpoint del API\n * @param id El ID del recurso a actualizar\n * @param body El cuerpo de la petición\n */\n public put<T>(endpoint: string, id: number | string, body: any): Observable<T> {\n const url = `<span class=\"math-inline\">\\{this\\.global\\.getUrl\\(endpoint\\)\\}/</span>{id}`;\n const options = this.global.buildAuth();\n return this.http.put<T>(url, body, options);\n }\n\n /**\n * Realiza una petición DELETE genérica y autenticada.\n * @param endpoint El endpoint del API\n * @param id El ID del recurso a eliminar\n */\n public delete<T>(endpoint: string, id: number | string): Observable<T> {\n const url = `<span class=\"math-inline\">\\{this\\.global\\.getUrl\\(endpoint\\)\\}/</span>{id}`;\n const options = this.global.buildAuth();\n return this.http.delete<T>(url, options);\n }\n\n /**\n * Realiza una petición PATCH genérica y autenticada.\n * @param endpoint El endpoint del API\n * @param id El ID del recurso a actualizar parcialmente\n * @param body El cuerpo con los campos a actualizar\n */\npublic patch<T>(endpoint: string, id: number | string, body: any): Observable<T> {\n const url = `<span class=\"math-inline\">\\{this\\.global\\.getUrl\\(endpoint\\)\\}/</span>{id}`;\n const options = this.global.buildAuth();\n return this.http.patch<T>(url, body, options);\n}\n}","/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise, SuppressedError, Symbol, Iterator */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.unshift(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.unshift(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n};\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === \"function\" ? Iterator : Object).prototype);\r\n return g.next = verb(0), g[\"throw\"] = verb(1), g[\"return\"] = verb(2), typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = Object.create((typeof AsyncIterator === \"function\" ? AsyncIterator : Object).prototype), verb(\"next\"), verb(\"throw\"), verb(\"return\", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; }\r\n function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nvar ownKeys = function(o) {\r\n ownKeys = Object.getOwnPropertyNames || function (o) {\r\n var ar = [];\r\n for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;\r\n return ar;\r\n };\r\n return ownKeys(o);\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== \"default\") __createBinding(result, mod, k[i]);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n\r\nexport function __addDisposableResource(env, value, async) {\r\n if (value !== null && value !== void 0) {\r\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\r\n var dispose, inner;\r\n if (async) {\r\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\r\n dispose = value[Symbol.asyncDispose];\r\n }\r\n if (dispose === void 0) {\r\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\r\n dispose = value[Symbol.dispose];\r\n if (async) inner = dispose;\r\n }\r\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\r\n if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } };\r\n env.stack.push({ value: value, dispose: dispose, async: async });\r\n }\r\n else if (async) {\r\n env.stack.push({ async: true });\r\n }\r\n return value;\r\n\r\n}\r\n\r\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\r\n var e = new Error(message);\r\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\r\n};\r\n\r\nexport function __disposeResources(env) {\r\n function fail(e) {\r\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\r\n env.hasError = true;\r\n }\r\n var r, s = 0;\r\n function next() {\r\n while (r = env.stack.pop()) {\r\n try {\r\n if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);\r\n if (r.dispose) {\r\n var result = r.dispose.call(r.value);\r\n if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\r\n }\r\n else s |= 1;\r\n }\r\n catch (e) {\r\n fail(e);\r\n }\r\n }\r\n if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();\r\n if (env.hasError) throw env.error;\r\n }\r\n return next();\r\n}\r\n\r\nexport function __rewriteRelativeImportExtension(path, preserveJsx) {\r\n if (typeof path === \"string\" && /^\\.\\.?\\//.test(path)) {\r\n return path.replace(/\\.(tsx)$|((?:\\.d)?)((?:\\.[^./]+?)?)\\.([cm]?)ts$/i, function (m, tsx, d, ext, cm) {\r\n return tsx ? preserveJsx ? \".jsx\" : \".js\" : d && (!ext || !cm) ? m : (d + ext + \".\" + cm.toLowerCase() + \"js\");\r\n });\r\n }\r\n return path;\r\n}\r\n\r\nexport default {\r\n __extends: __extends,\r\n __assign: __assign,\r\n __rest: __rest,\r\n __decorate: __decorate,\r\n __param: __param,\r\n __esDecorate: __esDecorate,\r\n __runInitializers: __runInitializers,\r\n __propKey: __propKey,\r\n __setFunctionName: __setFunctionName,\r\n __metadata: __metadata,\r\n __awaiter: __awaiter,\r\n __generator: __generator,\r\n __createBinding: __createBinding,\r\n __exportStar: __exportStar,\r\n __values: __values,\r\n __read: __read,\r\n __spread: __spread,\r\n __spreadArrays: __spreadArrays,\r\n __spreadArray: __spreadArray,\r\n __await: __await,\r\n __asyncGenerator: __asyncGenerator,\r\n __asyncDelegator: __asyncDelegator,\r\n __asyncValues: __asyncValues,\r\n __makeTemplateObject: __makeTemplateObject,\r\n __importStar: __importStar,\r\n __importDefault: __importDefault,\r\n __classPrivateFieldGet: __classPrivateFieldGet,\r\n __classPrivateFieldSet: __classPrivateFieldSet,\r\n __classPrivateFieldIn: __classPrivateFieldIn,\r\n __addDisposableResource: __addDisposableResource,\r\n __disposeResources: __disposeResources,\r\n __rewriteRelativeImportExtension: __rewriteRelativeImportExtension,\r\n};\r\n","import { Injectable } from \"@angular/core\";\nimport { ApiService } from \"../../services/api.service\";\nimport { Observable } from \"rxjs\";\n\n@Injectable({\n providedIn: 'root'\n}) \nexport class CuentaContableService {\n private endpoint = 'cuentaContable';\n constructor(private api: ApiService){\n }\n\n getAll(params?: any): Observable<any> {\n return this.api.get<any>(this.endpoint, params);\n }\n\n obtieneCuentasContablesRecursivo(): Observable<any> {\n return this.api.get<any>(`${this.endpoint}/obtieneCuentasContablesRecursivo`);\n }\n\n get(id: number): Observable<any> {\n return this.api.get<any>(`${this.endpoint}/${id}`);\n }\n\n save(obj: any): Observable<any> {\n return this.api.post<any>(this.endpoint, obj);\n }\n\n update(obj: any): Observable<any> {\n return this.api.put<any>(this.endpoint, obj.id, obj);\n }\n\n delete(id: number): Observable<any> {\n return this.api.delete<any>(this.endpoint, id);\n }\n}","<input type=\"text\" style=\"width: 100%;\" pInputText placeholder=\"Cuenta o descripción\" [(ngModel)]=\"query\" (keyup)=\"filterAccounts($event)\">\n\n<div style=\"padding: 10px;\">\n <p-treeTable [value]=\"cuentasContables?cuentasContables:tempAccounts\" [scrollable]=\"true\" [style]=\"{width: '100%'} \" [scrollHeight]=\"maxH + 'px'\" [resizableColumns]=\"true\">\n <ng-template pTemplate=\"header\">\n <tr>\n <th style=\"width: 150px;\">Cuenta contable</th>\n <th style=\"width: 150px;\">Descripción</th>\n <th style=\"width: 90px;\">Naturaleza</th>\n <th style=\"width: 60px;\">Tipo</th>\n <th style=\"width: 200px;\">Acciones</th>\n </tr>\n </ng-template>\n <ng-template pTemplate=\"body\" let-rowNode let-rowData=\"rowData\" style=\"width: 100%;\">\n <tr>\n <td class=\"ui-resizable-column\" style=\"width: 150px;\">\n <p-treeTableToggler [rowNode]=\"rowNode\"></p-treeTableToggler>\n {{rowData.cuentaContable}}\n </td>\n <td class=\"ui-resizable-column\" style=\"width: 150px;\">\n {{rowData.descripcion}}\n </td>\n <td class=\"ui-resizable-column\" style=\"width: 90px;\">\n {{rowData.naturaleza}}\n </td>\n <td class=\"ui-resizable-column\" style=\"width: 60px;\">\n {{rowData.tipo}}\n </td>\n <td class=\"ui-resizable-column\" style=\"width: 200px;\">\n <div class=\"button-row\">\n <button pButton type=\"button\" icon=\"pi pi-check\" class=\"ui-button-raised ui-button-success\" (click)=\"selectCuentaContable(rowData)\" *ngIf=\"typeAccount==1 && rowData.cuentaRegistro\"></button>\n <button pButton type=\"button\" icon=\"pi pi-check\" class=\"ui-button-raised ui-button-success\" (click)=\"selectCuentaContable(rowData)\" *ngIf=\"typeAccount==2 && !rowData.cuentaRegistro\"></button>\n </div>\n </td>\n </tr>\n </ng-template>\n </p-treeTable>\n</div>","import { Component, OnInit, Input, Output, EventEmitter } from '@angular/core';\nimport { CuentaContableModel } from '../../modelos/cuentaContable.model';\nimport { CuentaContableService } from '../../servicios/cuentacontable.service';\n\n@Component({\n selector: 'lib-cclista',\n templateUrl: './cclista.component.html',\n styleUrls: ['./cclista.component.css']\n})\nexport class CclistaComponent implements OnInit {\n\n @Input()\n isShared: boolean;\n @Input()\n typeAccount: number;\n @Output()\n evSelectedAccount: EventEmitter<CuentaContableModel>;\n cuentasContables: any[] = [];\n maxH = 720;\n query: any = \"\";\n tempAccounts: CuentaContableModel[] = [];\n\n cuentaSeleccionada: CuentaContableModel;\n\n constructor(private _cuentaContableService: CuentaContableService) {\n this.evSelectedAccount = new EventEmitter<CuentaContableModel>();\n }\n\n ngOnInit() {\n this.maxH = window.innerHeight - 320;\n this.obtenerCuentasContablesRecursivo();\n }\n\n obtenerCuentasContablesRecursivo() {\n this._cuentaContableService.obtieneCuentasContablesRecursivo().subscribe((result: any) => {\n if (result) {\n this.cuentasContables = result;\n this.sortAccounts();\n }\n });\n }\n\n sortAccounts() {\n this.cuentasContables.sort(function (a, b) {\n // get symbol for string\n let characterBreak = '.';\n const listA: any[] = a.data.cuentaContable.split(characterBreak);\n const listB: any[] = b.data.cuentaContable.split(characterBreak);\n\n if (listA.length > 0 && listB.length > 0) {\n if (listA.length === listB.length) {\n for (let i = 0; i < listA.length; i++) {\n if (parseInt(listA[i]) > parseInt(listB[i])) {\n return 1;\n }\n if (parseInt(listA[i]) < parseInt(listB[i])) {\n return -1;\n }\n }\n return 0;\n }\n if (listA.length < listB.length) {\n for (let i = 0; i < listA.length; i++) {\n if (parseInt(listA[i]) > parseInt(listB[i])) {\n return 1;\n }\n if (parseInt(listA[i]) < parseInt(listB[i])) {\n return -1;\n }\n }\n return -1;\n }\n if (listB.length < listA.length) {\n for (let i = 0; i < listB.length; i++) {\n if (parseInt(listA[i]) > parseInt(listB[i])) {\n return 1;\n }\n if (parseInt(listA[i]) < parseInt(listB[i])) {\n return -1;\n }\n }\n return 1;\n }\n }\n return 0;\n });\n for (let item of this.cuentasContables) {\n if (item.children) {\n this.sortItem(item);\n }\n }\n this.tempAccounts = this.cuentasContables;\n }\n\n sortItem(account: any) {\n account.children.sort(function (a, b) {\n // get symbol for string\n let characterBreak = '.';\n const listA: any[] = a.data.cuentaContable.split(characterBreak);\n const listB: any[] = b.data.cuentaContable.split(characterBreak);\n if (listA.length > 0 && listB.length > 0) {\n if (listA.length === listB.length) {\n for (let i = 0; i < listA.length; i++) {\n if (parseInt(listA[i]) > parseInt(listB[i])) {\n return 1;\n }\n if (parseInt(listA[i]) < parseInt(listB[i])) {\n return -1;\n }\n }\n return 0;\n }\n if (listA.length < listB.length) {\n for (let i = 0; i < listA.length; i++) {\n if (parseInt(listA[i]) > parseInt(listB[i])) {\n return 1;\n }\n if (parseInt(listA[i]) < parseInt(listB[i])) {\n return -1;\n }\n }\n return -1;\n }\n if (listB.length < listA.length) {\n for (let i = 0; i < listB.length; i++) {\n if (parseInt(listA[i]) > parseInt(listB[i])) {\n return 1;\n }\n if (parseInt(listA[i]) < parseInt(listB[i])) {\n return -1;\n }\n }\n return 1;\n }\n }\n return 0;\n });\n for (let item of account.children) {\n this.sortItem(item);\n }\n }\n\n\n\n selectCuentaContable(account: CuentaContableModel) {\n this.evSelectedAccount.emit(account);\n }\n\n filterAccounts(evt: any) {\n if (!evt) {\n const temp = this.resetAccount();\n this.cuentasContables = temp;\n return;\n }\n this.cuentasContables = this.browseAccount(this.tempAccounts);\n }\n\n resetAccount() {\n this.query = '';\n let accounts = [];\n for (let cc of this.tempAccounts) {\n accounts.push(cc);\n }\n return accounts;\n }\n\n\n\n browseAccount(accounts: any) {\n let listAccounts: any[] = [];\n if (this.query === '') {\n const temp = this.resetAccount();\n this.cuentasContables = temp;\n } else {\n for (let account of accounts) {\n if (account.data.cuentaContable.toString().toLowerCase().includes(this.query.toLowerCase()) || account.data.descripcion.toString().toLowerCase().includes(this.query.toLowerCase())) {\n listAccounts = listAccounts.concat({\n data: account.data,\n children: this.browseAccount(account.children)\n });\n } else {\n listAccounts = listAccounts.concat(this.browseAccount(account.children));\n }\n }\n return listAccounts;\n }\n }\n\n}\n","import { Component, OnInit, ViewChild, Input, Output, EventEmitter } from '@angular/core';\nimport { CuentaContableModel } from '../../modelos/cuentaContable.model';\n\n@Component({\n selector: 'lib-ccseleccion-dialog',\n templateUrl: './ccseleccion-dialog.component.html',\n styleUrls: ['./ccseleccion-dialog.component.css']\n})\nexport class CcseleccionDialogComponent implements OnInit {\n @ViewChild(\"dialog\", {static: true}) dialog;\n @Input()\n tipoCuenta: number; // 1: registro 2: cuenta mayor\n @Input()\n displayShowCuentas: boolean;\n cuentasContables: any = [];\n @Output()\n evSelectedAccount: EventEmitter<CuentaContableModel>;\n maxH = 720;\n is_movil: boolean;\n is_media: boolean;\n is_large: boolean;\n\n maxW = 0;\n flagModal: boolean = true;\n cols: any[];\n size = 350;\n constructor() { \n this.maxH = window.innerHeight - 370;\n this.maxW = window.innerWidth;\n this.size = this.maxW - 50;\n this.evSelectedAccount = new EventEmitter<CuentaContableModel>();\n }\n\n ngOnInit() {\n }\n\n getAccount(account:any){\n this.evSelectedAccount.emit(account);\n }\n\n hiddenDialog(evt: any) {\n this.evSelectedAccount.emit(null);\n }\n\n}\n","<p-dialog header=\"Selecciona cuenta contable\" [(visible)]=\"displayShowCuentas\" [modal]=\"true\" [style]=\"{'width': size+'px', 'min-width': '200px'}\" [minY]=\"70\" [baseZIndex]=\"10000\" (onHide)=\"hiddenDialog($event)\" [blockScroll]=\"true\" [draggable]=\"false\" [blockScroll]=\"true\"\n [maximizable]=\"true\">\n <div class=\"padding10\" [ngStyle]=\"{'height': maxH+200+'px'}\">\n <lib-cclista [isShared]=\"true\" [typeAccount]=\"tipoCuenta\" (evSelectedAccount)=\"getAccount($event)\"></lib-cclista>\n </div>\n</p-dialog>","import { CclistaComponent } from './contabilidad/componentes/cclista/cclista.component';\nimport { CcseleccionDialogComponent } from './contabilidad/componentes/ccseleccion-dialog/ccseleccion-dialog.component';\n\nexport const contaComponents = [\n CclistaComponent,\n CcseleccionDialogComponent\n];\n","import { Injectable, Output, EventEmitter } from '@angular/core';\n\n@Injectable({\n providedIn: 'root'\n}) export class LoginModalService {\n\n @Output() modal = new EventEmitter() ;\n\n showModal(){\n this.modal.emit(true);\n }\n}","import { Injectable } from '@angular/core';\nimport { Subject } from \"rxjs\";\n\n@Injectable({\n providedIn: 'root'\n})\nexport class LoadingScreenService {\n\n private _loading: boolean = false;\n loadingStatus: Subject<boolean> = new Subject();\n\n get loading():boolean {\n return this._loading;\n }\n\n set loading(value) {\n this._loading = value;\n this.loadingStatus.next(value);\n }\n\n startLoading() {\n this.loading = true;\n }\n\n stopLoading() {\n this.loading = false;\n }\n}\n","import { Injectable } from '@angular/core';\nimport {\n HttpRequest,\n HttpHandler,\n HttpEvent,\n HttpInterceptor, HttpErrorResponse\n} from '@angular/common/http';\nimport { Observable, of, throwError } from 'rxjs';\nimport { catchError, tap } from 'rxjs/internal/operators';\n\nimport { ToastrService } from 'ngx-toastr';\nimport { LoginModalService } from '../components/login-modal/login-modal.service';\nimport { LoadingScreenService } from '../components/loading-screen/loading-screen.service';\n\n@Injectable()\nexport class httpInterceptor implements HttpInterceptor {\n constructor(\n private loginModalService: LoginModalService,\n private toastrService: ToastrService,\n private loadingScreenService : LoadingScreenService\n ) {\n }\n\n intercept(request: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {\n\n this.loadingScreenService.startLoading();// this.loadingService.start();\n return next.handle(request).pipe(catchError((error, caught) => {\n this.loadingScreenService.stopLoading();\n this.handleError(error);\n return throwError(error);\n }) as any, tap((res : any) => {\n // @ts-ignore\n const body = (res.body) ? res.body : null;\n if(res.type !== 0 && res.type === 4){\n this.loadingScreenService.stopLoading();\n }\n if (body) {\n let message = (body.success) ? body.success : null;\n\n if (message) {\n this.toastrService.success(message, 'Exito', {\n timeOut: 3000, closeButton: true\n });\n }\n }\n }) as any);\n }\n\n private handleError(err: HttpErrorResponse): Observable<any> {\n if (err.status === 401 || err.status === 403) {\n if (err.status === 401) {\n //this.router.navigateByUrl('/login');\n // this.router.navigateByUrl('/sing_out');\n this.loginModalService.showModal();\n }\n if (err.status === 403)\n this.toastrService.error('No tiene permiso sobre esta accion', 'Error', {\n timeOut: 5000\n });\n return of(err.message);\n }\n if(err.status !== 401 && err.status !== 403 && err.status !== 409){\n this.toastrService.error('Ocurrio un error al procesar su solicitud', 'Error', {\n timeOut: 5000\n });\n }\n this.readError(err);\n return of(err);\n }\n\n readError(respuesta: any) {\n if(respuesta.error){\n if (respuesta.error.error)\n if (respuesta.error.error.message){\n this.toastrService.error(respuesta.error.error.message, 'Error', {\n timeOut: 3000\n });\n }\n if (respuesta.error.message){\n this.toastrService.error(respuesta.error.message, 'Error', {\n timeOut: 3000\n });\n }\n\n if(respuesta.error._errors){\n if (Array.isArray(respuesta.error._errors))\n for (let indexError = 0; indexError < respuesta.error._errors.length; indexError++) {\n this.toastrService.error(respuesta.error._errors[indexError].message, 'Error', {\n timeOut: 3000,\n closeButton: true\n });\n }\n }\n }\n\n }\n\n}\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-error404',\n templateUrl: './error404.component.html',\n styleUrls: ['./error404.component.css']\n})\nexport class Error404Component implements OnInit {\n\n constructor() { }\n\n ngOnInit() {\n }\n\n}\n","<div class=\"col-md-12 sec_sof\">\n <div class=\"row\">\n <div class=\"col col-center\">\n <div class=\"center\">\n <div class=\"error\">\n Error 404\n </div>\n <div class=\"col-12\">\n <p>La pagina solicitada no fue encontrada</p>\n </div>\n </div> \n </div>\n \n </div>\n</div>\n","import { Injectable, Output, EventEmitter } from '@angular/core';\n\n@Injectable({\n providedIn : 'root'\n}) export class LoadingService {\n\n @Output() loading = new EventEmitter();\n\n setLoading(visible) {\n if(visible)\n this.start();\n else\n this.stop();\n }\n\n start() {\n this.loading.emit(true);\n }\n\n stop() {\n this.loading.emit(false);\n }\n\n}\n","import { Component, Input } from '@angular/core';\nimport { LoadingService } from './loading.service';\ndeclare var $ : any;\n@Component({\n selector: 'loading',\n templateUrl: './loading.component.html',\n styleUrls: ['./loading.component.css']\n})\nexport class LoadingComponent {\n visible=false;\n @Input() logo_loading : string = 'assets/img/logo_visorus_loading.png';\n constructor(\n private loadingService: LoadingService\n ){\n\n this.loadingService.loading.subscribe( ( _visible: boolean) => {\n if( _visible && !this.visible ) {\n $('#modal_loading').modal('show');\n this.visible =true;\n } else {\n setTimeout(() => {\n $('#modal_loading').modal('hide'); \n \n }, 650);\n this.visible = false;\n }\n }\n );\n }\n}\n","<!-- Modal -->\n<div class=\"modal fade\" id=\"modal_loading\" tabindex=\"-1\" role=\"dialog\" aria-labelledby=\"exampleModalScrollableTitle\"\n data-backdrop=\"static\" data-keyboard=\"false\" aria-hidden=\"true\">\n <div class=\"modal-dialog modal-dialog-scrollable\" role=\"document\">\n <div class=\"modal-content\">\n <div class=\"modal-body\">\n <div class=\"row justify-content-center\">\n <div class=\"col-lg-4 col-md-4 col-sm-10\">\n <div class=\"loader\">\n <span class=\"box\"></span>\n <span class=\"box\"></span>\n <div class=\"code\">\n <img src=\"{{logo_loading}}\" width=\"200px\">\n </div>\n <span class=\"txt\">{{'cargando' | translate}}...</span>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>","import { AfterViewInit, ChangeDetectorRef, Component, ElementRef, OnDestroy, Input } from '@angular/core';\nimport { LoadingScreenService } from \"./loading-screen.service\";\nimport { Subscription } from \"rxjs\";\nimport { debounceTime } from \"rxjs/operators\";\nimport { LoadingService } from '../loading/loading.service';\n\n@Component({\n selector: 'app-loading-screen',\n templateUrl: './loading-screen.component.html',\n styleUrls: ['./loading-screen.component.scss']\n})\nexport class LoadingScreenComponent implements AfterViewInit, OnDestroy {\n\n debounceTime: number = 250;\n loading: boolean = false;\n loadingSubscription: Subscription;\n @Input() logo_loading : string = 'assets/img/logo_visorus_loading.png';\n\n constructor(private loadingScreenService: LoadingScreenService,\n private _elmRef: ElementRef,\n private _changeDetectorRef: ChangeDetectorRef,\n private loadingService: LoadingService\n ){ \n this.loadingService.loading.subscribe( ( _visible: boolean) => {\n this._elmRef.nativeElement.style.display = _visible ? 'block' : 'none'; \n }\n );\n }\n\n ngAfterViewInit(): void {\n this._elmRef.nativeElement.style.display = 'none';\n this.loadingSubscription = this.loadingScreenService.loadingStatus.pipe(debounceTime(this.debounceTime)).subscribe(\n (status: boolean) => {\n this._elmRef.nativeElement.style.display = status ? 'block' : 'none';\n this._changeDetectorRef.detectChanges();\n }\n );\n }\n\n ngOnDestroy() {\n this.loadingSubscription.unsubscribe();\n }\n\n}\n","<div class=\"loading-screen-wrapper\">\n <div class=\"loading-screen-icon\">\n <div class=\"blobs\">\n <div class=\"blob-center\"></div>\n <div class=\"blob\"></div>\n <div class=\"blob\"></div>\n <div class=\"blob\"></div>\n <div class=\"blob\"></div>\n <div class=\"blob\"></div>\n <div class=\"blob\"></div>\n </div> \n </div>\n</div>\n","import { Injectable, EventEmitter, Output } from \"@angular/core\";\n\n@Injectable({\n providedIn: 'root'\n})\nexport class PdfModalService {\n @Output() visible = new EventEmitter();\n @Output() print = new EventEmitter();\n base_64 : any ;\n html : any;\n\n pdf_generate(base_64){\n this.base_64 = base_64;\n this.visible.emit(true);\n }\n \n generate_print(html){\n this.html = html;\n this.print.emit(true);\n }\n \n}","import { Injectable } from '@angular/core';\nimport {ToastrService} from \"ngx-toastr\";\nimport {TranslateService} from \"@ngx-translate/core\";\n\n@Injectable({\n providedIn: 'root'\n})\nexport class FileService {\n\n constructor(private _toastrService: ToastrService,\n private translate: TranslateService) { }\n\n addFile( evt , toastr = true ) {\n const file = evt.target.files[0];\n let imgObj: any = {\n id: null,\n nombre: '',\n contentType: '',\n orden: 0,\n archivo: ''\n };\n imgObj.nombre = file.name;\n imgObj.tipo = file.type;\n\n const reader = new FileReader();\n reader.readAsDataURL(file);\n reader.onload = () => {\n imgObj.archivo = reader.result;\n this.translate.get([ 'msgSuccess', 'titleFile' ] ).subscribe(\n ( data: any ) => {\n if(toastr)\n this._toastrService.success( data.msgSuccess, data.titleFile );\n }\n );\n };\n reader.onerror = (error) => {\n this.translate.get([ 'msgError', 'titleFile' ] ).subscribe(\n ( data: any ) => {\n if(toastr)\n this._toastrService.error( data['msgError'], data['titleFile'] );\n }\n );\n };\n return imgObj;\n }\n\n base64ToBlob(base64,type){\n let byteCharacters = atob ( base64)\n const byteNumbers = new Array(byteCharacters.length);\n for (let i = 0; i < byteCharacters.length; i++) {\n byteNumbers[i] = byteCharacters.charCodeAt(i);\n }\n let byteArray = new Uint8Array(byteNumbers);\n return new Blob([byteArray],{type: type});\n }\n\n blobToDowload(blob,type,name){\n let anchor = document.createElement('a');\n anchor.download = name;\n anchor.href = window.URL.createObjectURL(blob);\n anchor.dataset.downloadurl = [type, anchor.download, anchor.href].join(':');\n anchor.click();\n }\n\n base64ToFileDowload(base64,type,name){\n this.blobToDowload(this.base64ToBlob(base64,type),type,name);\n }\n\n}\n","<p-dialog [(visible)]=\"display\" [modal]=\"true\" [style]=\"{'width': size+'px', 'min-width': '200px'}\" [minY]=\"70\" [baseZIndex]=\"10000\" [blockScroll]=\"true\" \n [blockScroll]=\"true\" [maximizable]=\"true\"\n [breakpoint]=\"840\" [contentStyle]=\"{'overflow':'visible'}\">\n <div *ngIf=\"pdfBase64\" style=\"min-height: 90vh;\">\n <iframe style=\"width: 100%; height: 90vh;\" [src]=\"domSanitizer.bypassSecurityTrustResourceUrl('data:application/pdf;base64,'+pdfBase64)\"></iframe>\n </div>\n</p-dialog>\n\n","import { Component } from '@angular/core';\nimport { PdfModalService } from './pdf-modal.service';\nimport { FileService } from '../../services/file.service';\nimport { DomSanitizer } from '@angular/platform-browser';\n\n@Component({\n selector: 'pdf-modal',\n templateUrl: './pdf-modal.component.html',\n styleUrls: ['./pdf-modal.component.css']\n}) export class PdfModalComponent {\n display= false;\n pdfBase64= null;\n size = 840;\n constructor(\n private _pdfModalService : PdfModalService,\n private fileService : FileService,\n public domSanitizer : DomSanitizer\n ){\n _pdfModalService.visible.subscribe(resp =>{ \n if(_pdfModalService.base_64){\n this.display = resp;\n this.pdfBase64 = _pdfModalService.base_64\n /*\n let blob = fileService.base64ToBlob(_pdfModalService.base_64, \"application/pdf\");\n let blobUrl = URL.createObjectURL(blob);\n setTimeout(() => {\n let iframe = \"<iframe width='100%' height='100%' src='\" + blobUrl + \"'></iframe>\"; \n document.getElementById('_modal_pdf').innerHTML = iframe; \n },20); */\n }\n \n });\n _pdfModalService.print.subscribe(\n (resp : any)=>{\n this.display = resp;\n setTimeout(() => {\n let iframe = \"<iframe id='printf' width='100%' height='100%' ></iframe>\"\n document.getElementById('_modal_pdf').innerHTML = iframe;\n },20);\n\n setTimeout(() => {\n this.imprimir();\n },40);\n }\n );\n }\n\n imprimir(){ \n \n var iframe = window.frames['printf'];\n\n\n iframe.contentWindow.head.innerHTML = ` <link rel=\"stylesheet\" href=\"https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css\" integrity=\"sha384-Gn5384xqQ1aoWXA+058RXPxPg6fy4IWvTNh0E263XmFcJlSAwiGgFAW/dAiS6JXm\" crossorigin=\"anonymous\">\n <style>\n .table-hover tbody tr:hover {\n color: #ffffff;\n background-color: rgb(92, 180, 234);\n }\n .tr-select{\n color: #ffffff;\n background-color: rgb(92, 180, 234);\n }\n .td-header{\n background: #f3f3f3;\n color: #0d385d;\n border-color: 1px solid #0b4b87;\n }\n .td-yellow{\n background: #fff6d3;\n }\n .td-blue{\n background: #88d1ea;\n }\n .td-green{\n background: #b9d2a0;\n }\n </style>`;\n iframe.contentWindow.body.innerHTML =this._pdfModalService.html;\n \n //iframe.focus();\n // iframe.contentWindow.print();\n \n } \n \n\n\n}","\nexport class Usuario{\n username : string;\n token_type : string;\n access_token : string;\n expires_in : number;\n refresh_token : string;\n roles : any [];\n}\n","import { Usuario } from './Usuario';\n\nexport class Auth{\n login : boolean;\n usuario : Usuario;\n usuarioDetalles : any;\n}","import { Injectable, Output, EventEmitter } from \"@angular/core\";\nimport { HttpClient, HttpHeaders } from \"@angular/common/http\";\nimport { Usuario } from '../models/Usuario';\nimport { Auth } from '../models/auth';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class AuthService {\n usuario: Usuario;\n url_host = '';\n auth: Auth;\n @Output() login = new EventEmitter();\n @Output() seleccionEmpresa = new EventEmitter();\n constructor(\n private httpClient: HttpClient\n ) {\n this.auth = new Auth();\n }\n\n setlogin(user, key) {\n localStorage.setItem('lang', 'es');\n let config = JSON.parse(localStorage.getItem(\"config\"));\n if (config)\n if (config.url)\n this.url_host = config.url;\n return this.httpClient.post(this.url_host + '/login' + (key ? '/' + key : ''), user);\n }\n startAuth(user) {\n this.auth = user;\n this.login.emit(this.auth);\n }\n isLogin() {\n return localStorage.getItem('usuario') !== null;\n }\n\n quitarUsuario() {\n localStorage.removeItem('usuario');\n this.auth.login = false;\n this.login.emit(this.auth);\n }\n\n\n verificaLogin() {\n this.usuario = this.getUser();\n if (this.usuario.access_token) {\n this.getDetalsUser().subscribe(\n (resp: any) => {\n this.auth.usuarioDetalles = resp;\n this.auth.login = true;\n this.login.emit(this.auth);\n }, (error: any) => {\n this.quitarUsuario();\n }\n );\n } else {\n this.auth.usuarioDetalles = null;\n this.auth.login = false;\n this.login.emit(this.auth);\n }\n }\n\n\n loginOut() {\n\n this.quitarEmpresaAdministrativa().subscribe(\n (data: any) => {\n localStorage.removeItem('usuario');\n }, error => {\n localStorage.removeItem('usuario');\n }\n );\n\n localStorage.setItem('lang', 'es');\n this.auth.login = false;\n this.login.emit(this.auth);\n }\n\n getUser() {\n this.usuario = new Usuario();\n if (this.isLogin()) {\n let us = localStorage.getItem('usuario');\n if (us) {\n this.usuario = JSON.parse(us);\n }\n\n return this.usuario;\n } else {\n return this.usuario;\n }\n }\n\n getLang() {\n let lang = localStorage.getItem('lang');\n return lang ? lang : 'es';\n }\n\n selectEmpresa(e) {\n this.seleccionEmpresa.emit(e);\n }\n\n quitarEmpresaAdministrativa() {\n let usuario: Usuario;\n let token_type = '';\n let access_token = '';\n usuario = <Usuario>JSON.parse(localStorage.getItem(\"usuario\"));\n if (usuario) {\n token_type = usuario.token_type,\n access_token = usuario.access_token\n }\n let httpOptions = {\n headers: new HttpHeaders({\n 'Accept-type': 'application/json',\n 'Authorization': token_type + ' ' + access_token\n })\n };\n let config = JSON.parse(localStorage.getItem(\"config\"));\n if (config)\n if (config.url)\n this.url_host = config.url;\n\n return this.httpClient.post(this.url_host + '/usuario/setEmpresa', { id: 0 }, httpOptions);\n }\n setEmpresa(empresa) {\n // setEmpresaAdministrativa\n let usuario: Usuario;\n let token_type = '';\n let access_token = '';\n usuario = <Usuario>JSON.parse(localStorage.getItem(\"usuario\"));\n if (usuario) {\n token_type = usuario.token_type,\n access_token = usuario.access_token\n }\n let httpOptions = {\n headers: new HttpHeaders({\n 'Accept-type': 'application/json',\n 'Authorization': token_type + ' ' + access_token\n })\n };\n let config = JSON.parse(localStorage.getItem(\"config\"));\n if (config)\n if (config.url)\n this.url_host = config.url;\n\n return this.httpClient.post(this.url_host + '/usuario/setEmpresa', empresa, httpOptions);\n }\n setModulo(modulo) {\n // setEmpresaAdministrativa\n let usuario: Usuario;\n let token_type = '';\n let access_token = '';\n usuario = <Usuario>JSON.parse(localStorage.getItem(\"usuario\"));\n if (usuario) {\n token_type = usuario.token_type,\n access_token = usuario.access_token\n }\n let httpOptions = {\n headers: new HttpHeaders({\n 'Accept-type': 'application/json',\n 'Authorization': token_type + ' ' + access_token\n })\n };\n let config = JSON.parse(localStorage.getItem(\"config\"));\n if (config)\n if (config.url)\n this.url_host = config.url;\n\n return this.httpClient.post(this.url_host + '/usuario/setModulo', modulo, httpOptions);\n }\n quitarModulo() {\n // setEmpresaAdministrativa\n let usuario: Usuario;\n let token_type = '';\n let access_token = '';\n usuario = <Usuario>JSON.parse(localStorage.getItem(\"usuario\"));\n if (usuario) {\n token_type = usuario.token_type,\n access_token = usuario.access_token\n }\n let httpOptions = {\n headers: new HttpHeaders({\n 'Accept-type': 'application/json',\n 'Authorization': token_type + ' ' + access_token\n })\n };\n let config = JSON.parse(localStorage.getItem(\"config\"));\n if (config)\n if (config.url)\n this.url_host = config.url;\n\n return this.httpClient.post(this.url_host + '/usuario/setModulo', { id: 0 }, httpOptions);\n }\n\n getDetalsUser() {\n let usuario: Usuario;\n let token_type = '';\n let access_token = '';\n usuario = <Usuario>JSON.parse(localStorage.getItem(\"usuario\"));\n if (usuario) {\n token_type = usuario.token_type,\n access_token = usuario.access_token\n }\n let httpOptions = {\n headers: new HttpHeaders({\n 'Accept-type': 'application/json',\n 'Authorization': token_type + ' ' + access_token\n })\n };\n let config = JSON.parse(localStorage.getItem(\"config\"));\n if (config)\n if (config.url)\n this.url_host = config.url;\n\n return this.httpClient.get(this.url_host + '/usuario/obtieneUsuarioActual', httpOptions);\n }\n}\n","<div class=\"modal fade\" id=\"modalLogin\" tabindex=\"-1\" role=\"dialog\" aria-labelledby=\"exampleModalCenterTitle\" aria-hidden=\"true\">\n <div class=\"modal-dialog modal-dialog-centered\" role=\"document\">\n <div class=\"modal-content\">\n <div class=\"modal-body\">\n <div class=\"row justify-content-center\">\n <img src=\"assets/img/logo_visorus_loading.png\" alt=\"\">\n </div>\n <div class=\"row\" *ngIf=\"empresas.length == 0\">\n <div class=\"col-lg-12 col-md-12 col-sm-12\" >\n <form #datoForm=\"ngForm\" (ngSubmit)=\"entrar(datoForm)\" > \n <label class=\"error\" *ngIf=\"error\">{{'Usuario.errorLogin' | translate}}</label>\n <div class=\"form-group mb-3\">\n <label for=\"exampleInputEmail1\" >{{ 'Usuario.username' | translate }}</label>\n <input type=\"text\" class=\"form-control\" id=\"exampleInputEmail1\" aria-describedby=\"emailHelp\" #username=\"ngModel\"\n placeholder=\"{{ 'Usuario.username' | translate }}\" name=\"username\" [(ngModel)]=\"user.username\" required>\n </div>\n <div class=\"form-group mb-3\">\n <label for=\"exampleInputPassword1\">{{ 'Usuario.password' | translate }}</label>\n <input type=\"password\" class=\"form-control\" id=\"exampleInputPassword1\" placeholder=\"{{ 'Usuario.password' | translate }}\"\n name=\"password\" [(ngModel)]=\"user.password\" required>\n </div>\n \n <button type=\"submit\" class=\"btn btn-primary_low btn-lg btn-block my-5 text-light\" translate>entrar</button>\n </form>\n </div>\n </div> \n <div class=\"row\" *ngIf=\"empresas.length\">\n <div class=\"col-xl-12 col-lg-12 col-sm-12\">\n <h4>Selecciona la empresa</h4>\n <hr>\n </div>\n <div class=\"col-xl-6 col-lg-6 col-sm-12 mb-2\" *ngFor=\"let empresa of empresas\" style=\"cursor: pointer\">\n <div class=\"card\">\n <div class=\"card-body\">\n <h5>\n {{empresa.nombre}}\n </h5>\n </div>\n </div>\n </div>\n </div> \n \n </div>\n </div>\n </div>\n</div>","import { Component, OnInit } from '@angular/core';\nimport { LoginModalService } from './login-modal.service';\nimport { AuthService } from '../../services/auth.service';\ndeclare var $: any;\ndeclare var jQuery: any;\n@Component({\n selector: 'app-login-modal',\n templateUrl: './login-modal.component.html',\n styleUrls: ['./login-modal.component.css']\n})\nexport class LoginModalComponent {\n modal = false;\n user: any = { username : undefined , password : undefined}; \n error = false;\n \n empresas = [];\n\n constructor(\n private loginModalService : LoginModalService,\n private authService : AuthService\n ) { \n this.loginModalService.modal.subscribe( resp => {\n $('#modalLogin').modal('show');\n this.user = { username : undefined , password : undefined}; \n this.empresas = [];\n } );\n }\n\n entrar(form){\n if(form.valid){\n this.user.key=\"\";\n let password = this.user.password.split('_');\n if(password.length > 1){\n this.user.key= password[0];\n this.user.password = '';\n for (let index = 1; index < password.length; index++) { \n this.user.password += password[index];\n }\n }\n\n this.authService.setlogin(this.user, this.user.key ).subscribe(\n (resp : any)=>{\n localStorage.setItem('usuario',JSON.stringify(resp)); \n let usuario = resp;\n this.authService.getDetalsUser().subscribe(\n (resp : any)=>{\n if(!resp.empresa){\n this.empresas = resp.empresas;\n if(this.empresas.length == 1){\n this.entrarEmpresa(this.empresas[0]);\n }\n }\n let auth : any = {};\n auth.login= true;\n auth.usuario= usuario;\n auth.usuarioDetalles = resp;\n this.authService.startAuth(auth);\n this.error= false;\n $('#modalLogin').modal('hide');\n }\n );\n \n }, (_error : any)=>{\n this.error= true;\n }\n );\n }\n}\n\n\nentrarEmpresa(_empresa){\n this.authService.setEmpresa(_empresa).subscribe(\n (resp : any)=>{\n $('#modalLogin').modal('hide');\n }\n );\n}\n\n\n}\n","\nimport { Injectable } from \"@angular/core\";\nimport { ApiService } from \"../../services/api.service\";\nimport { Observable } from \"rxjs\";\n\n@Injectable({\n providedIn: 'root'\n })\n export class SessionCajaService {\n private endpoint = 'sessionCaja';\n constructor(private api: ApiService){\n }\n\n getAll(params?: any): Observable<any> {\n return this.api.get<any>(this.endpoint, params);\n }\n\n get(id: number): Observable<any> {\n return this.api.get<any>(`${this.endpoint}/${id}`);\n }\n\n save(obj: any): Observable<any> {\n return this.api.post<any>(this.endpoint, obj);\n }\n\n update(obj: any): Observable<any> {\n return this.api.put<any>(this.endpoint, obj.id, obj);\n }\n \n delete(id: number): Observable<any> {\n return this.api.delete<any>(this.endpoint, id);\n }\n}","<p-dialog [(visible)]=\"showCreateSession\" [modal]=\"flagModal\" (onHide)=\"closeModal()\" (onShow)=\"setSession()\"\n [closeOnEscape]=\"flagModal\" [closable]=\"flagModal\" [blockScroll]=\"true\" [style]=\"{width: '750px'}\">\n\n <ng-template pTemplate=\"header\">\n <a class=\"text-primary\">{{labels.title}}: </a>\n </ng-template>\n\n <div class=\"grid grid-fluid\" *ngIf=\"caja\">\n <div class=\"p-field col-12\">\n <label for=\"nombreCaja\">Nombre de caja: </label>\n <input pInputText type=\"text\" id=\"nombreCaja\" [(ngModel)]=\"caja.nombre\" [disabled]=\"true\">\n </div>\n\n <div class=\"p-field col-12 md:col-6\">\n <label for=\"saldoCaja\">Saldo: </label>\n <input pInputText type=\"number\" id=\"saldoCaja\" [(ngModel)]=\"session.monto\" [disabled]=\"editMode\">\n </div>\n\n <div class=\"p-field col-12 md:col-6\">\n <label for=\"numeroZ\">Numero Z:</label>\n <input pInputText type=\"number\" id=\"numeroZ\" [(ngModel)]=\"session.z\" [disabled]=\"true\">\n </div>\n </div>\n\n <div>\n Este agente no esta asignado a una caja\n </div>\n\n <ng-template pTemplate=\"footer\">\n <button pButton type=\"button\" label=\"Guardar\" (click)=\"save()\" *ngIf=\"!editMode && caja\" class=\"p-button-sm\"></button>\n <button pButton type=\"button\" label=\"Cerrar session\" (click)=\"edit()\" *ngIf=\"editMode && caja\" class=\"p-button-sm p-button-success\"></button>\n <button pButton type=\"button\" label=\"Cancelar\" (click)=\"closeModal()\" class=\"p-button-sm p-button-danger\"></button>\n </ng-template>\n\n</p-dialog>","import { Component, OnInit, Input, EventEmitter, Output } from '@angular/core';\nimport { SessionCajaService } from '../sessionCaja.service';\n\n\n@Component({\n selector: 'session-create',\n templateUrl: './session-create.component.html',\n styleUrls: ['./session-create.component.css']\n})\nexport class SessionCreateComponent implements OnInit {\n\n @Input() showCreateSession: boolean = false;\n @Input() caja: any = {};\n @Input() monedaDenominacionList:any[];\n\n @Input() sessionEdit?: any = null\n // @Input() closeSession?: boolean\n @Output() status = new EventEmitter();\n @Output() success = new EventEmitter();\n \n session: any = {\n inicio: new Date().getTime(),\n termino: null,\n monedaDenominacionList: []\n }\n flagModal: boolean = true\n labels: any = {\n title: \"Crear nueva session de caja\"\n }\n\n resp: any = {}\n editMode:boolean = false\n\n constructor(private sessionCajaService: SessionCajaService) { }\n\n ngOnInit() {\n console.log(\"denominacionList\",this.monedaDenominacionList); \n }\n\n setSession() {\n if(this.sessionEdit){\n this.session = this.sessionEdit;\n this.session.monedaDenominacionList= this.monedaDenominacionList;\n if(this.session.movimientosCaja){\n this.session.monto = this.session.movimientosCaja[0].monto\n }\n this.labels = {\n title: \"Cerrar session\"\n }\n this.editMode = true\n }\n else if (this.caja) {\n this.labels.title = \"Crear nueva session de caja\"\n this.session.caja = this.caja\n this.session.z = this.caja.z\n }\n }\n\n closeModal() {\n this.session = {}\n this.editMode = false\n this.status.emit({ status: false })\n }\n\n async save() {\n this.resp = await this.sessionCajaService.save(this.session).toPromise() || null\n if (this.resp) {\n this.session = {}\n this.editMode = false\n this.status.emit({ status: false, save: this.resp.data })\n this.success.emit(true);\n }else{\n this.success.emit(false);\n }\n }\n\n async edit(){ \n console.log(\"EDIT\", this.session);\n this.resp = await this.sessionCajaService.update(this.session).toPromise() || null \n if(this.resp){\n this.session = {}\n this.editMode = false\n this.status.emit({status:false,update:this.resp.data})\n }\n }\n\n}\n","import { Injectable } from \"@angular/core\";\nimport { ApiService } from \"../../../services/api.service\";\nimport { Observable } from \"rxjs\";\nimport { Cliente } from \"../models/Cliente\";\n\n@Injectable({\n providedIn: 'root'\n}) export class ClienteService {\n private endpoint = 'cliente';\n constructor(private api: ApiService){\n }\n\n getAll(params?: any): Observable<any> {\n return this.api.get<any>(this.endpoint, params);\n }\n\n get(id: number): Observable<Cliente> {\n return this.api.get<Cliente>(`${this.endpoint}/${id}`);\n }\n\n save(obj: any): Observable<any> {\n return this.api.post<any>(this.endpoint, obj);\n }\n\n update(obj: any): Observable<any> {\n return this.api.put<any>(this.endpoint, obj.id, obj);\n }\n\n delete(id: number): Observable<any> {\n return this.api.delete<any>(this.endpoint, id);\n }\n \n validar_archivos_bss(id){\n return this.api.get<any>(`${this.endpoint}/validarClienteBss/${id}`);\n }\n\n}\n","import { Injectable } from \"@angular/core\";\nimport { TranslateService } from \"@ngx-translate/core\";\n\n@Injectable({\n providedIn: \"root\"\n})\nexport class PaginateService {\n constructor(private translate: TranslateService) { }\n \n getPage() {\n return {\n rows: 25,\n total: undefined,\n offset: 0,\n filtro: undefined,\n sort: undefined,\n };\n }\n getParams(page) {\n return [\n { param: 'offset', value: page.offset },\n { param: 'max', value: page.rows },\n { param: 'filter', value: page.filtro },\n { param: 'sort', value: page.sort }\n ];\n\n }\n getOrden(arg, lang? : string) {\n if(lang)\n this.translate.setDefaultLang(lang);\n \n let ordenar = [];\n let tra = [];\n for (let index = 0; index < arg.length; index++) {\n ordenar.push(\n { label: \"...\", value: arg[index].label }\n );\n tra.push(arg[index].param);\n \n }\n let dat: any;\n let a = true;\n if(tra.length >0)\n this.translate.get(tra).subscribe(\n data => {\n dat = data;\n let values = Object.values(dat);\n let i = 0;\n ordenar.forEach(elem => {\n elem.label = '' + values[i];\n i++;\n });\n },\n erro => { },\n \n );\n return ordenar;\n \n }\n\n\n}","<p-dialog header=\"{{ 'Seleccionar cliente ' | translate }}\" [(visible)]=\"visible\" (onHide)=\"cerrar()\"\n (onShow)=\"cargarDatosClientes()\">\n\n <div class=\"p-inputgroup mt-2\">\n <input type=\"text\" pInputText placeholder=\"{{'buscar'| translate}}...\"\n [(ngModel)]=\"page.filtro\" name=\"filtro\" (keyup)=\"aplicarFiltro()\">\n <button pButton type=\"button\" icon=\"pi pi-search\" styleClass=\"p-button-secondary\" (click)=\"aplicarFiltro()\"></button>\n </div>\n\n <p-table\n [value]=\"clientes\"\n dataKey=\"id\" [lazy]=\"true\"\n (onLazyLoad)=\"cargarDatosClientes($event)\"\n [paginator]=\"true\"\n [rows]=\"page.rows\"\n [totalRecords]=\"page.total\"\n [(selection)]=\"clienteSeleccionado\"\n selectionMode=\"{{selectMode}}\"\n (onRowSelect)=\"seleccionaCliente($event)\"\n [scrollable]=\"true\" scrollHeight=\"350px\"\n [loading]=\"loading\">\n <ng-template pTemplate=\"header\">\n <tr>\n <th>{{'clave' | translate}}</th>\n <th>{{'razonSocial' | translate}}</th>\n <th>{{'tipo' | translate}}</th>\n <th>{{'Cliente.limiteCredito' | translate}}</th>\n <th>{{'Cliente.plazoCredito' | translate}}</th>\n <th>{{'Cliente.diasPago' | translate}}</th>\n </tr>\n </ng-template>\n <ng-template pTemplate=\"body\" let-cliente>\n <tr [pSelectableRow]=\"cliente\"> \n <td>{{cliente.codigo}}</td>\n <td>{{cliente.descripcionRazonSocial}}</td>\n <td>\n <span *ngIf=\"cliente.personaFisica\">{{'fisico'| translate}}</span>\n <span *ngIf=\"cliente.personaMoral\">{{'moral'| translate}}</span>\n </td>\n <td>{{cliente.limiteCredito}}</td>\n <td>{{cliente.plazoCredito}}</td>\n <td>{{cliente.diasPago}}</td>\n </tr>\n </ng-template>\n <ng-template pTemplate=\"emptymessage\">\n <tr>\n <td colspan=\"6\">{{'general.noRegistros' | translate}}</td>\n </tr>\n </ng-template>\n</p-table>\n \n</p-dialog>","import { Component, OnInit, Input, Output, EventEmitter } from \"@angular/core\";\nimport { Cliente } from '../models/Cliente';\nimport { ClienteService } from '../services/cliente.service';\nimport { PaginateService } from '../../../services/paginate.service';\nimport { LazyLoadEvent } from \"primeng/api\";\n\n@Component({\n selector: 'select-cliente',\n templateUrl: './select-cliente.component.html'\n})\nexport class SelectClienteComponent implements OnInit {\n\n @Input() clienteSeleccionado: Cliente;\n @Input() selectMode = 'single';\n @Input() visible : Boolean;\n @Output() select = new EventEmitter();\n\n clientes: Cliente[];\n page: any;\n params : any;\n ordenar= [];\n loading: boolean = true;\n\n constructor(\n private clienteService : ClienteService,\n private paginate : PaginateService\n ){\n }\n \n ngOnInit() {\n \n this.page = this.paginate.getPage();\n \n \n this.page.rows = 20;\n this.clientes = [];\n this.ordenar = this.paginate.getOrden(\n [ \n {param:'razonZocial',label:'razonZocial'}\n ], 'es');\n }\n\n cargarDatosClientes(event: LazyLoadEvent = null) {\n this.loading = true;\n if (event) {\n this.page.rows = event.rows;\n this.page.offset = event.first;\n }\n \n this.clientes= [];\n this.params = this.paginate.getParams(this.page);\n this.params.push({param: 'estatus', value: true});\n if (this.page.filtro && this.page.filtro.trim() !== '') {\n this.params.push({param: 'filtroGeneral', value: this.page.filtro.trim()});\n }\n\n this.clienteService.getAll(this.params).subscribe(\n (data: any) =>{\n this.page.total=data.total;\n this.clientes = <Cliente[]>data.data;\n this.loading = false;\n },\n error => {\n console.error(\"Error al cargar clientes:\", error);\n this.loading = false;\n }\n );\n }\n\n aplicarFiltro() {\n this.page.offset = 0;\n this.cargarDatosClientes();\n }\n \n seleccionaCliente(e) { \n console.log('Fila seleccionada (evento):', e);\n console.log('Datos de la fila (e.data):', e.data);\n console.log('Cliente seleccionado ANTES de emitir:', this.clienteSeleccionado); // Verifica si [(selection)] ya lo actualizó\n this.select.emit(e.data);\n this.visible = false;\n console.log('Cliente seleccionado DESPUÉS de emitir (y si se actualizó por [(selection)]):', this.clienteSeleccionado);\n }\n\n cerrar(){\n this.select.emit(null);\n this.visible=false;\n }\n}","import { Genero } from \"./Genero\";\nimport { EstadoCivil } from \"./EstadoCivil\";\n\nexport class Persona{\n id : number;\n nombre : string;\n apellidoPaterno : string;\n apellidoMaterno : string;\n fechaNacimiento : string;\n curp : string;\n rfc : string;\n genero : Genero;\n estadoCivil : EstadoCivil;\n estatus : boolean;\n version : number;\n constructor(){\n //this.estadoCivil= new EstadoCivil();\n //this.genero = new Genero();\n }\n}","import { Persona } from \"./Persona\";\nimport { DatoDireccion } from \"../../dato-direccion/models/DatoDireccion\";\nimport { DatoContacto } from \"../../contacto/models/DatoContacto\";\n\nexport class PersonaFisica{\n id: number;\n datoPersona: Persona;\n version : number;\n contactos: DatoContacto[];\n datoDirecciones: DatoDireccion[];\n constructor(){\n this.datoPersona= new Persona();\n this.contactos=[];\n this.datoDirecciones=[];\n }\n}","import { PersonaFisica } from \"../components/persona-fisica/models/PersonaFisica\";\nimport { DatoContacto } from \"../components/contacto/models/DatoContacto\";\nimport { DatoDireccion } from \"../components/dato-direccion/models/DatoDireccion\";\n\nexport class PersonaMoral{\n id : number;\n razonSocial : string;\n rfc : string;\n representanteLegal : PersonaFisica;\n version : number;\n contactos : DatoContacto[];\n datoDirecciones : DatoDireccion[];\n constructor(){\n this.representanteLegal = new PersonaFisica();\n this.contactos=[];\n this.datoDirecciones=[];\n }\n}","export class ClasificadorTipo{\n id : number;\n version : number;\n codigo: string;\n descripcion : string;\n tipoClasificador: String;\n estatus :boolean;\n constructor(){}\n}","import { PersonaMoral } from \"../../../models/PersonaMoral\";\nimport { PersonaFisica } from \"../../persona-fisica/models/PersonaFisica\";\nimport { CatalogoTipo } from \"../../catalogoTipo/models/CatalogoTipo\";\nimport { ClasificadorTipo } from \"../../clasificadorTipo/models/ClasificadorTipo\";\n\nexport class Proveedor {\n id: number ;\n version: number;\n observacion: string;\n limiteCredito: number;\n plazoCredito: number;\n fechaUltimaCompra: Date;\n folioUltimaFactura: number;\n atrasoDiasEntrega: number;\n estatus: boolean;\n personaMoral: PersonaMoral;\n catalogoTipo: CatalogoTipo;\n clasificadorTipo: ClasificadorTipo;\n personaFisica: PersonaFisica;\n descripcionRazonSocial : String;\n descripcionRfc : String;\n codigo : string; \n constructor(){\n this.personaMoral=new PersonaMoral();\n this.catalogoTipo= new ClasificadorTipo();\n this.clasificadorTipo= new ClasificadorTipo();\n this.personaFisica= new PersonaFisica();\n }\n\n \n}","import { Injectable, Output, EventEmitter } from \"@angular/core\";\n import { ApiService } from \"../../../services/api.service\";\nimport { Observable } from \"rxjs\";\n\n@Injectable({\n providedIn: 'root'\n}) export class ProveedorService {\n private endpoint = 'proveedor';\n constructor(private api: ApiService){\n }\n\n getAll(params?: any): Observable<any> {\n return this.api.get<any>(this.endpoint, params);\n }\n\n get(id: number): Observable<any> {\n return this.api.get<any>(`${this.endpoint}/${id}`);\n }\n\n save(obj: any): Observable<any> {\n return this.api.post<any>(this.endpoint, obj);\n }\n\n update(obj: any): Observable<any> {\n return this.api.put<any>(this.endpoint, obj.id, obj);\n }\n\n delete(id: number): Observable<any> {\n return this.api.delete<any>(this.endpoint, id);\n }\n}","<p-dialog header=\"{{'ArticuloProveedor.proveedores' | translate}}\" [(visible)]=\"visible\" (onHide)=\"cerrarModal()\"\n (onShow)=\"cargarDatosProveedores()\">\n\n <div class=\"p-inputgroup mt-2\">\n <input type=\"text\" pInputText placeholder=\"{{'buscar'| translate}}...\"\n [(ngModel)]=\"page.filtro\" name=\"filtro\" (change)=\"cargarDatosProveedores()\">\n <button pButton type=\"button\" icon=\"pi pi-search\" styleClass=\"p-button-secondary\" (click)=\"cargarDatosProveedores()\"></button>\n </div>\n\n <p-table [(value)]=\"proveedores\" selectionMode=\"single\" [(selection)]=\"proveedorSeleccionado\"\n [scrollable]=\"true\" scrollHeight=\"350px\" (onRowSelect)=\"seleccionarProveedor($event)\">\n <ng-template pTemplate=\"header\">\n <tr>\n <th>{{'clave' | translate}}</th>\n <th>{{'razonSocial' | translate}}</th>\n <th>{{'rfc' | translate}}</th>\n </tr>\n </ng-template> \n <ng-template pTemplate=\"body\" let-proveedor=\"rowData\">\n <tr>\n <td>{{proveedor.codigo}}</td>\n <td>{{proveedor.descripcionRazonSocial}}</td>\n <td>{{proveedor.descripcionRfc}}</td>\n </tr>\n </ng-template>\n </p-table>\n\n <p-paginator [rows]=\"page.rows\" [totalRecords]=\"page.total\" [pageLinkSize]=\"5\"\n (onPageChange)=\"pagina($event)\" [rowsPerPageOptions]=\"[10,25,50,100,500]\"></p-paginator>\n\n</p-dialog>","import { Component, OnInit, Input, Output, EventEmitter } from \"@angular/core\";\nimport { TranslateService } from \"@ngx-translate/core\";\nimport { Proveedor } from '../models/Proveedor';\nimport { ProveedorService } from '../services/proveedor.service';\nimport { PaginateService } from '../../../services/paginate.service';\n\n@Component({\n templateUrl : 'select-proveedor.component.html',\n selector : 'select-proveedor'\n})export class SelectProveedorComponent implements OnInit{\n\n proveedores : Proveedor[];\n page : any;\n params = [];\n ordenar = [];\n @Input() visible = false;\n @Input() proveedorSeleccionado = new Proveedor();\n @Output() select = new EventEmitter();\n\n constructor(\n private proveedorService : ProveedorService,\n private paginanateService :PaginateService,\n private translate : TranslateService){\n this.translate.get('es');\n }\n\n ngOnInit(): void {\n \n this.page = this.paginanateService.getPage();\n let arg =[];\n this.ordenar= this.paginanateService.getOrden(arg,'es');\n this.proveedores=[];\n }\n \n cargarDatosProveedores(){\n this.params = this.paginanateService.getParams(this.page);\n this.params.push({param: 'estatus', value: true});\n this.proveedorService.getAll(this.params).subscribe(\n (data : any)=>{\n this.proveedores = <Proveedor[]>data.data;\n }\n );\n }\n \n pagina(e) {\n this.page.rows = e.rows;\n this.page.offset = e.first;\n this.cargarDatosProveedores();\n }\n\n cerrarModal(){\n this.select.emit(null);\n this.visible=false;\n }\n\n seleccionarProveedor(e){\n this.select.emit(e.data);\n this.visible=false;\n }\n \n}","import { Injectable } from '@angular/core';\nimport { ApiService } from '../../services/api.service';\nimport { Observable } from 'rxjs';\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class StockService {\n private endpoint = 'stock';\n\n\n constructor(private api: ApiService){\n }\n\n getAll(params?: any): Observable<any> {\n return this.api.get<any>(this.endpoint, params);\n }\n\n\n obtenerExistenciasArticulosDescripcion(parametros, params) {\n\n const url = `${this.endpoint}/obtenerExistenciasArticulos`;\n let promesa = new Promise((resolve , reject) => {\n this.api.post<any>( url, parametros ).subscribe(\n (data: any) => {\n resolve(data);\n }, (err: any) => {\n reject(err);\n }\n );\n });\n return promesa;\n }\n\n\n}\n","import { Injectable } from \"@angular/core\";\nimport { ApiService } from \"../../../services/api.service\";\nimport { Observable } from \"rxjs\";\nimport { Almacen } from \"../models/Almacen\";\n\n@Injectable({\n providedIn: 'root'\n}) export class AlmacenService {\n private endpoint = 'almacen';\n constructor(private api: ApiService){\n }\n\n getAll(params?: any): Observable<any> {\n return this.api.get<any>(this.endpoint, params);\n } \n\n obtenerAlmacenEmpresa() {\n return this.api.get<any>(`${this.endpoint}/obtenerAlmacenEmpresa`);\n }\n\n get(id: number): Observable<Almacen> {\n return this.api.get<Almacen>(`${this.endpoint}/${id}`);\n }\n\n save(obj: any): Observable<any> {\n return this.api.post<any>(this.endpoint, obj);\n }\n\n update(obj: any): Observable<any> {\n return this.api.put<any>(this.endpoint, obj.id, obj);\n }\n\n delete(id: number): Observable<any> {\n return this.api.delete<any>(this.endpoint, id);\n }\n }\n","import { Injectable } from '@angular/core';\n import { ApiService } from '../../../services/api.service';\nimport { Observable } from 'rxjs';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ArticuloInformacionService {\n private endpoint = 'articulo';\n constructor(private api: ApiService){\n }\n\n getAll(params?: any): Observable<any> {\n return this.api.get<any>(this.endpoint, params);\n }\n\n obtenerExistencias(articulo : number) {\n let uRL = \"/existenciasArticulo/\"+articulo;\n return this.api.get<any>(`${this.endpoint}${uRL}`);\n }\n\n get(id: number): Observable<any> {\n return this.api.get<any>(`${this.endpoint}/${id}`);\n }\n\n save(obj: any): Observable<any> {\n return this.api.post<any>(this.endpoint, obj);\n }\n\n update(obj: any): Observable<any> {\n return this.api.put<any>(this.endpoint, obj.id, obj);\n }\n\n delete(id: number): Observable<any> {\n return this.api.delete<any>(this.endpoint, id);\n }\n \n}\n","<p-dialog (onShow)=\"OnShow()\" [header]=\"titulo\" [(visible)]=\"showModal\" [modal]=\"flagModal\" \n [style]=\"{'width': size+'px', 'min-width': '200px'}\" [minY]=\"70\"\n [baseZIndex]=\"10000\" (onHide)=\"hiddenDialog()\" [draggable]=\"false\" \n [blockScroll]=\"true\"\n\t\t (window:resize)=\"OnResize($event)\" [maximizable]=\"true\" [breakpoint]=\"640\">\n <p-table [columns]=\"columnsData\" [value]=\"existenciasList\" [scrollable]=\"true\" [style]=\"{width: '600px'}\" \n [responsive]=\"true\" \n scrollHeight=\"350px\"\n > \n <ng-template pTemplate=\"colgroup\" let-columns>\n <colgroup>\n <col *ngFor=\"let col of columns\" [style.width]=\"col.width\">\n </colgroup>\n </ng-template>\n <ng-template pTemplate=\"header\" let-columns>\n <tr>\n <th *ngFor=\"let col of columns\" pResizableColumn>\n {{col.header}}\n </th>\n </tr>\n </ng-template>\n <ng-template pTemplate=\"body\" let-rowData let-columns=\"columns\" let-rowIndex=\"rowIndex\">\n <tr>\n <td>{{rowData.almacenCodigo}}</td>\n <td>{{rowData.almacenDescripcion}}</td> \n <td>{{rowData.ubicacionCodigo}}</td>\n <td>{{rowData.ubicacionDescripcion}}</td> \n <td>{{rowData.existencia}}</td> \n </tr>\n </ng-template>\n </p-table>\n\t \n <p-footer>\n <div class=\"container-end\">\n <button pButton type=\"button\" icon=\"pi pi-replay\" label=\"Cerrar\" class=\"ui-button-raised ui-button-secondary\" (click)=\"hiddenDialog()\"></button>\n </div>\n </p-footer>\n</p-dialog>","import { Component, OnInit, Input, Output, EventEmitter } from '@angular/core';\nimport {ArticuloInformacionService} from './services/articulo-informacion.service';\n\n\n\n@Component({\n selector: 'lib-seleccion-articulo-informacion',\n templateUrl: './seleccion-articulo-informacion.component.html',\n styleUrls: ['./seleccion-articulo-informacion.component.css']\n})\nexport class SeleccionArticuloInformacionComponent implements OnInit {\n\n @Input() showModal:boolean;\n @Input() articulo:any;\n @Output() eventSelection = new EventEmitter();\n\n isMovil: boolean;\n flagModal = true;\n titulo: string;\n size = 640;\n existenciasList:any[];\n\n params : any = [\n {param: 'offset', value: 0},\n {param: 'max', value: -1},\n {param: 'order', value: 'asc'}];\n \n columnsData = [\n { field: 'codigo', header: 'Código Almacén', width: '90px' },\n { field: 'descripcion', header: 'Descripción Almacen', width: '140px' },\n { field: 'codigo', header: 'Código Ubicación', width: '90px' },\n { field: 'descripcion', header: 'Descripción Ubicación', width: '140px' },\n { field: 'opciones', header: 'Existencia', width: '80px' }, \n ]; \n\n constructor(\n private articuloInformacionService:ArticuloInformacionService, \n ) { }\n\n ngOnInit() {\n this.OnLoad();\n }\n\n hiddenDialog() {\t\t\n\t\tthis.eventSelection.emit({status: false});\n }\n \n OnResize(event: any) {\n\t\tthis.isMovil = event.target.innerWidth <= 640;\n }\n\n OnLoad(){\n this.articuloInformacionService.obtenerExistencias(this.articulo.articulo.id).subscribe(\n (data : any)=>{ \n this.existenciasList= data.data;\n }\n );\n }\n \n OnShow() {\n this.titulo='Existencias en Almacenes'; \n }\n\n onSelectedUbicacion(ubicacionRow: any) {\n\t\tthis.eventSelection.emit({status: false, ubicacion: ubicacionRow});\n\n\t}\n\n}\n","<!--inicia seleccion de articulos-->\n<!-- (onShow)=\"obtenerExistenciaArticulosShow()\" -->\n<!--\n <div class=\"col-12 col-center\" >-->\n<p-dialog header=\"{{ 'Articulos' | translate }}\" [(visible)]=\"showArticulos\" [maximizable]=\"true\"\n (onShow)=\"obtenerExistenciaArticulosShow()\" (onHide)=\"busquedaArticulos = { tipoBusqueda : ''}; emitirShowArticulos()\"\n [baseZIndex]=\"10000\" [blockScroll]=\"true\" [style]=\"{'width': size+'px', 'min-width': '200px'}\" [minY]=\"70\">\n <div class=\"grid grid-fluid\">\n <div class=\"col-12 md:col-6 lg:col-6\">\n <div style=\"display: flex;\">\n <div style=\"width: 115px;\">\n <select pInputText [(ngModel)]=\"busquedaArticulos.tipoBusqueda\" (change)=\"obtenerExistenciaArticulosVal()\">\n <option value=\"C\">Codigo</option>\n <option value=\"D\">Descripcion</option>\n <option value=\"CD\">Coincidencia</option>\n <option value=\"CI\">Igual a</option>\n </select>\n </div>\n <input type=\"text\" style=\"width: 200px;\" pInputText [(ngModel)]=\"busquedaArticulos.key\"\n (keypress)=\"obtenerExistenciaArticulosKey( $event )\" id=\"key\">\n <button pButton type=\"button\" icon=\"pi pi-search\" styleClass=\"p-button-secondary\"\n (click)=\"obtenerExistenciaArticulos( )\"></button>\n </div>\n </div>\n <div class=\"col-12 md:col-6 lg:col-6\">\n <div style=\"display: flex;\">\n <div style=\"width: 100px;\">\n <label for=\"almacen\">Almacen:</label>\n </div>\n <select pInputText style=\"width: 200px;\" [(ngModel)]=\"movimiento.almacen\" disabled id=\"almacen\"\n (change)=\"obtenerExistenciaArticulosVal()\">\n <option *ngFor=\"let almacen of almacenList\" value=\"{{ almacen.id }}\">{{almacen.descripcion}}</option>\n </select>\n </div>\n\n </div>\n </div>\n\n <!--\n <div id=\"table-wrapper\">\n <div id=\"table-scroll\">-->\n <!-- new table\n <p-table #dt [columns]=\"colsDD\" [value]=\"listDD\" [scrollable]=\"true\" \n [style]=\"{width: '100%'} \" [scrollHeight]=\"maxH + 'px'\" \n [resizableColumns]=\"true\" [(selection)]=\"selectedXML\" (onRowSelect)=\"onRowSelect($event)\" dataKey=\"uuid\">\n\n \n -->\n\n <p-table [value]=\"articulosList\" [scrollable]=\"true\" #dt scrollHeight=\"400px\" [responsive]=\"true\"\n selectionMode=\"single\" (onRowSelect)=\"filaSeleccionada($event)\">\n <ng-template pTemplate=\"header\">\n <tr>\n <th style=\"width: 80px\" translate>Código Ubicacion</th>\n <th style=\"width: 70px\" translate>Existencia</th>\n <th style=\"width: 40px\" translate>Unidad</th>\n <th style=\"width: 50px\" *ngIf=\"manejaUnidadSecundaria\" translate>existenciaSecundaria</th>\n <th style=\"width: 40px\" *ngIf=\"manejaUnidadSecundaria\" translate>Unidad</th>\n <th style=\"width: 80px\" translate>Código</th>\n <th style=\"width: 120px\" translate>Descripcion</th>\n <th style=\"width: 40px\" translate></th>\n <th style=\"width: 80px\" *ngIf=\"configuracion.tipoPrecio !== 'costo' \" translate>Precio</th>\n <th style=\"width: 80px\" *ngIf=\"configuracion.tipoPrecio !== 'costo' \" translate>Precio 2</th>\n <th style=\"width: 80px\" *ngIf=\"configuracion.tipoPrecio !== 'costo' \" translate>Precio 3</th>\n <th style=\"width: 80px\" *ngIf=\"configuracion.tipoPrecio !== 'costo' \" translate>Precio 4</th>\n <th style=\"width: 80px\" *ngIf=\"configuracion.tipoPrecio !== 'costo' \" translate>Precio 5</th>\n <th style=\"width: 40px\" *ngIf=\"configuracion.tipoPrecio === 'costo' \" translate>Movimiento.costo</th>\n <th style=\"width: 40px\" translate>Existencia por Unidad</th>\n <th *ngFor=\"let item of clasificadorList\" style=\"width: 80px\" translate>{{item.descripcion}}</th>\n </tr>\n </ng-template>\n <ng-template pTemplate=\"body\" let-rowData let-rowIndex=\"rowIndex\">\n <tr [pSelectableRow]=\"rowData\">\n <td style=\"width: 80px;\" *ngIf=\"!rowData.ubicacionCodigo\" translate>Movimiento.NoAsignado</td>\n <td style=\"width: 80px;\" *ngIf=\"rowData.ubicacionCodigo\">{{rowData.ubicacionCodigo}}</td>\n <td style=\"width: 70px;\">{{rowData.existencia}}</td>\n <td style=\"width: 40px;\">{{rowData.unidadCodigo}}</td>\n\n <td style=\"width: 50px;\" *ngIf=\"manejaUnidadSecundaria\">{{rowData.existenciaSecundaria}}</td>\n <td style=\"width: 40px;\" *ngIf=\"manejaUnidadSecundaria\">{{rowData.unidadSecundariaCodigo}}</td>\n\n <td style=\"width: 80px;\">{{rowData.articulo.codigo}}</td>\n <td style=\"width: 120px;\">{{rowData.articulo.descripcion}}</td>\n <td style=\"width: 40px;\">\n <button pButton type=\"button\" icon=\"pi pi-eye\" class=\"ui-button-raised ui-button-primary\"\n (click)=\"onShowInformacion(rowData)\">\n </button>\n </td>\n <td style=\"width: 80px;\" *ngIf=\"configuracion.tipoPrecio !== 'costo'\">{{rowData.precioConImpuestos | currency }}\n </td>\n <td style=\"width: 80px;\" *ngIf=\"configuracion.tipoPrecio !== 'costo'\">{{rowData.precio2ConImpuestos | currency\n }}</td>\n <td style=\"width: 80px;\" *ngIf=\"configuracion.tipoPrecio !== 'costo'\">{{rowData.precio3ConImpuestos | currency\n }}</td>\n <td style=\"width: 80px;\" *ngIf=\"configuracion.tipoPrecio !== 'costo'\">{{rowData.precio4ConImpuestos | currency\n }}</td>\n <td style=\"width: 80px;\" *ngIf=\"configuracion.tipoPrecio !== 'costo'\">{{rowData.precio5ConImpuestos | currency\n }}</td>\n <td style=\"width: 40px;\" *ngIf=\"configuracion.tipoPrecio === 'costo' \">{{rowData.precio | currency }}</td>\n <td style=\"width: 40px;\">\n <div class=\"row justify-content-between\" *ngFor=\"let item of rowData.existenciaUnidades\">\n <div class=\"col-lg-4\"><label for=\"\">{{item.unidad_codigo}}</label></div>\n <div class=\"col-lg-4\"><label for=\"\">{{item.unidad_existencia | number : '1.2-2'}}</label>\n </div>\n </div>\n </td>\n <!-- <td style=\"width: 40px;\"></td> -->\n <td *ngFor=\"let itemData of rowData.articuloClasificadorList\" style=\"width: 80px;\">{{itemData.valor}}</td>\n </tr>\n </ng-template>\n </p-table>\n\n <!-- /new table-->\n <!-- \n <p-table [(value)]=\"articulosList\" responsive=\"true\" \n selectionMode=\"multiple\" (onRowSelect)=\"filaSeleccionada($event)\" [scrollable]=\"true\" scrollHeight=\"350px\" >\n\n <p-column header=\"{{ 'Codigo ubicacion'.toString() | translate}}\">\n <ng-template let-dato=\"rowData\" pTemplate=\"body\">\n <label for=\"\" *ngIf=\"!dato.ubicacionCodigo\" translate> Movimiento.NoAsignado </label>\n <label for=\"\" *ngIf=\"dato.ubicacionCodigo\" > {{ dato.ubicacionCodigo }}</label>\n </ng-template>\n </p-column>\n <p-column field=\"ubicacionCodigo\" header=\"{{ 'Descripcion ubicacion'.toString() | translate}}\">\n <ng-template let-dato=\"rowData\" pTemplate=\"body\">\n <label for=\"\" *ngIf=\"!dato.ubicacionCodigo\" translate> Movimiento.NoAsignado </label>\n <label for=\"\" *ngIf=\"dato.ubicacionCodigo\" > {{ dato.ubicacionCodigo }}</label>\n </ng-template>\n </p-column>\n\n <p-column field=\"existencia\" header=\"{{'Existencia' | translate}}\"></p-column>\n <p-column field=\"unidadCodigo\" header=\"{{'Unidad' | translate}}\"></p-column>\n <p-column field=\"unidadDescripcion\" header=\"{{'Descripcion unidad' | translate}}\"></p-column>\n\n <p-column field=\"existenciaSecundaria\" header=\"{{'existenciaSecundaria' | translate}}\" *ngIf=\"manejaUnidadSecundaria\"></p-column>\n <p-column field=\"unidadSecundariaCodigo\" header=\"{{'Unidad' | translate}}\" *ngIf=\"manejaUnidadSecundaria\"></p-column>\n \n\n <p-column *ngIf=\"configuracion.tipoPrecio !== 'costo' \" header=\"{{'Movimiento.movimientoDetalle.precio' | translate}}\">\n <ng-template let-dato=\"rowData\" pTemplate=\"body\">\n <label for=\"\">{{ dato.precioConImpuestos | currency }}</label>\n </ng-template>\n </p-column>\n <p-column *ngIf=\"configuracion.tipoPrecio === 'costo' \" header=\"{{'Movimiento.costo' | translate }}\">\n <ng-template let-dato=\"rowData\" pTemplate=\"body\">\n <label for=\"\">{{ dato.precio | currency }}</label>\n </ng-template>\n </p-column>\n\n\n <p-column field=\"articulo.codigo\" header=\"{{'Codigo articulo' | translate}}\"></p-column>\n <p-column field=\"articulo.descripcion\" header=\"{{'Descripcion' | translate}}\"></p-column>\n\n\n\n <p-column header=\"{{'ExistenciaPorUnidad' | translate }}\">\n <ng-template let-dato=\"rowData\" pTemplate=\"body\">\n <div class=\"row justify-content-between\" *ngFor=\"let item of dato.existenciaUnidades\" >\n <div class=\"col-lg-4\"><label for=\"\">{{item.unidad_codigo}}</label></div>\n <div class=\"col-lg-4\"><label for=\"\">{{item.unidad_existencia | number : '1.2-2'}}</label>\n </div> \n </div> \n </ng-template>\n </p-column>\n \n </p-table>\n -->\n <p-paginator [rows]=\"page.rows\" [totalRecords]=\"page.total\" [pageLinkSize]=\"5\" (onPageChange)=\"pagina($event)\"\n [rowsPerPageOptions]=\"[10,25,50,100,500]\"></p-paginator>\n <!-- \n </div>\n </div>\n -->\n</p-dialog>\n<!--\n </div> \n -->\n<!--termina seleccion de articulos-->\n<!--selecciona ubicacion -->\n<lib-seleccion-articulo-informacion [showModal]=\"showModalInformacion\" [articulo]=\"articuloSelected\"\n (eventSelection)=\"onEventInformacion($event)\" *ngIf=\"showModalInformacion\">\n</lib-seleccion-articulo-informacion>","import {Component, EventEmitter, Input, OnInit, Output} from '@angular/core';\nimport { Almacen } from '../almacen/models/Almacen';\nimport { PaginateService } from '../../services/paginate.service';\nimport { AlmacenService } from '../almacen/services/almacen.service';\nimport { StockService } from './stock.service';\n\n@Component({\n selector: 'app-selecciona-articulo',\n templateUrl: './selecciona-articulo.component.html',\n styleUrls: ['./selecciona-articulo.component.css']\n})\nexport class SeleccionaArticuloComponent implements OnInit {\n\n @Input() configuracion : any;\n @Input() showArticulos : boolean;\n @Input() movimiento: any;\n\n @Input() manejaUnidadSecundaria : boolean = false;\n\n @Output() emitFilaSeleccionada : EventEmitter<any> = new EventEmitter();\n @Output() emitShowArticulos : EventEmitter<any> = new EventEmitter();\n\n\n\n almacenList: Almacen[];\n articulosList: any = [];\n page: any;\n ordenar = [];\n busquedaArticulos : any = {\n tipoBusqueda : ''\n };\n\n showModal:boolean=false;\n articuloSelected:any;\n showModalInformacion:boolean=false;\n showFirstTime:boolean=true;\n clasificadorList:any=[];\n size = 640;\n\n constructor(\n private _stockService : StockService,\n private _paginateService : PaginateService,\n private _almacenService : AlmacenService) { }\n\n ngOnInit() {\n this.page = this._paginateService.getPage();\n this.ordenar = this._paginateService.getOrden(\n [\n {param: 'nombre', label: 'estatus'}\n ], 'es');\n\n\n this.showFirstTime=true;\n this._almacenService.getAll( this.configuracion.params ).subscribe(\n (data: any ) => {\n this.almacenList = <Almacen[]> data.data;\n }\n );\n \n this.busquedaArticulos.tipoBusqueda = 'CD';\n //tempthis.obtenerExistenciaArticulosShow();\n }\n\n pagina( e ){\n this.page.rows = e.rows;\n this.page.offset = e.first;\n this.obtenerExistenciaArticulos();\n }\n obtenerExistenciaArticulosShow(){\n this.busquedaArticulos.tipoBusqueda = 'CD';\n if (this.showFirstTime){\n this.obtenerExistenciaArticulos();\n this.showFirstTime=false;\n }\n }\n\n obtenerExistenciaArticulos( ) {\n this.busquedaArticulos.params = this._paginateService.getParams( this.page );\n const parametros = {\n almacen : ( this.configuracion.noOcupaAlamacen ? null : this.movimiento.almacen ),\n tipoPrecio : this.configuracion.tipoPrecio,\n busquedaArticulos : this.busquedaArticulos,\n tipoArticulo : this.configuracion.tipoArticulo ? this.configuracion.tipoArticulo : null,\n numeroPrecioDefault : this.configuracion.numeroPrecioDefault\n }; \n this._stockService.obtenerExistenciasArticulosDescripcion( parametros , this.busquedaArticulos.params ).then(\n (data: any) => {\n this.articulosList = data.articulosDescripcion;\n this.page.total = data.total; \n if (data.clasificadores){\n this.clasificadorList = data.clasificadores;\n } \n if(!this.showModal){\n this.showModal = true;\n }\n }\n ).catch(e =>{\n this.articulosList = [];\n });\n }\n\n obtenerExistenciaArticulosVal(){\n if ( this.busquedaArticulos.tipoBusqueda != '' && !this.busquedaArticulos.key )\n return false;\n this.obtenerExistenciaArticulos(); \n }\n obtenerExistenciaArticulosKey( $event ) {\n if( $event.key === 'Enter')\n this.obtenerExistenciaArticulos();\n }\n\n filaSeleccionada( $event ) {\n this.emitFilaSeleccionada.emit($event);\n }\n\n emitirShowArticulos() {\n this.emitShowArticulos.emit( 0 );\n }\n\n seriesArticulo(series){\n console.log(series);\n }\n\n onShowInformacion(eventArticulo){\n this.articuloSelected = eventArticulo;\n this.showModalInformacion = true;\n }\n\n onEventInformacion(event) {\n this.showModalInformacion = event.status;\t \n }\n}\n","import { Injectable } from \"@angular/core\";\nimport { ApiService } from '../../../services/api.service';\nimport { Observable } from \"rxjs\";\nimport { Proveedor } from \"../../proveedor/models/Proveedor\";\n\n@Injectable({\n providedIn: 'root'\n}) export class AcreedorService {\n private endpoint = 'acreedor';\n constructor(private api: ApiService){ \n }\n\n getAll(params?: any): Observable<any> {\n return this.api.get<any>(this.endpoint, params);\n }\n\n get(id: number): Observable<Proveedor> {\n return this.api.get<Proveedor>(`${this.endpoint}/${id}`);\n }\n\n save(obj: any): Observable<any> {\n return this.api.post<any>(this.endpoint, obj);\n }\n\n update(obj: any): Observable<any> {\n return this.api.put<any>(this.endpoint, obj.id, obj);\n }\n\n delete(id: number): Observable<any> {\n return this.api.delete<any>(this.endpoint, id);\n }\n}","<p-dialog header=\"Selecciona el acreedor\" [(visible)]=\"visible\" (onHide)=\"cerrarModal()\"\n (onShow)=\"cargarDatosAcreedores()\">\n\n <div class=\"p-inputgroup mt-2\">\n <input type=\"text\" pInputText placeholder=\"{{'buscar'| translate}}...\"\n [(ngModel)]=\"page.filtro\" name=\"filtro\" (keyup)=\"cargarDatosAcreedores()\">\n <button pButton type=\"button\" icon=\"pi pi-search\" styleClass=\"p-button-secondary\" (click)=\"cargarDatosAcreedores()\"></button>\n </div>\n <p-table\n [value]=\"acreedores\"\n dataKey=\"id\" selectionMode=\"single\"\n [(selection)]=\"acreedorSeleccionado\"\n (onRowSelect)=\"seleccionarAcreedor($event)\"\n [scrollable]=\"true\"\n scrollHeight=\"350px\"\n [responsive]=\"true\">\n\n <ng-template pTemplate=\"header\">\n <tr>\n <th>{{'razonSocial' | translate}}</th>\n <th>{{'rfc' | translate}}</th>\n <th>{{'tipo' | translate}}</th>\n <th>{{'atrasoDiasEntrega' | translate}}</th>\n <th>{{'limiteCredito' | translate}}</th>\n <th>{{'fechaUltimaCompra' | translate}}</th>\n </tr>\n </ng-template>\n\n <ng-template pTemplate=\"body\" let-acreedor>\n <tr [pSelectableRow]=\"acreedor\">\n <td>{{acreedor.descripcionRazonSocial}}</td>\n <td>{{acreedor.descripcionRfc}}</td>\n <td>\n <span *ngIf=\"acreedor.personaMoral\">{{'moral' | translate}}</span>\n <span *ngIf=\"acreedor.personaFisica\">{{'fisico' | translate}}</span>\n </td>\n <td>{{acreedor.atrasoDiasEntrega}}</td>\n <td>{{acreedor.limiteCredito}}</td>\n <td>{{acreedor.fechaUltimaCompra | date:'dd/MM/yyyy'}}</td>\n </tr>\n </ng-template>\n\n <ng-template pTemplate=\"emptymessage\">\n <tr>\n <td [attr.colspan]=\"6\">{{'general.noRegistros' | translate}}</td>\n </tr>\n </ng-template>\n </p-table>\n\n <p-paginator [rows]=\"page.rows\" [totalRecords]=\"page.total\" [pageLinkSize]=\"5\"\n (onPageChange)=\"pagina($event)\" [rowsPerPageOptions]=\"[10,25,50,100,500]\"></p-paginator>\n\n</p-dialog>"," import { Component, OnInit, Input, Output, EventEmitter } from \"@angular/core\";\nimport { AcreedorService } from \"../services/acreedor.service\";\nimport { Proveedor } from '../../proveedor/models/Proveedor';\nimport { PaginateService } from '../../../services/paginate.service';\nimport { TranslateService } from '@ngx-translate/core';\n\n@Component({\n templateUrl : 'select-acreedor.component.html',\n selector : 'select-acreedor'\n})export class SelectAcreedorComponent implements OnInit{\n\n acreedores : Proveedor[];\n page : any;\n params = [];\n ordenar = [];\n @Input() visible = false;\n @Input() acreedorSeleccionado = new Proveedor();\n @Output() select = new EventEmitter();\n\n constructor(\n private acreedorService : AcreedorService,\n private paginanateService :PaginateService,\n private translate : TranslateService){\n this.translate.get('es');\n }\n\n ngOnInit(): void {\n \n this.page = this.paginanateService.getPage();\n let arg =[];\n this.ordenar= this.paginanateService.getOrden(arg,'es');\n this.acreedores=[];\n }\n \n cargarDatosAcreedores(){\n this.params = this.paginanateService.getParams(this.page);\n this.params.push({param: 'estatus', value: true});\n this.acreedorService.getAll(this.params).subscribe(\n (data : any)=>{\n this.acreedores = <Proveedor[]>data.data;\n }\n );\n }\n \n pagina(e) {\n this.page.rows = e.rows;\n this.page.offset = e.first;\n this.cargarDatosAcreedores;\n }\n\n cerrarModal(){\n this.select.emit(null);\n this.visible=false;\n }\n\n seleccionarAcreedor(e){\n this.select.emit(e.data);\n this.visible=false;\n }\n \n}","import { LoadingComponent } from './components/loading/loading.component';\nimport { LoadingScreenComponent } from './components/loading-screen/loading-screen.component';\nimport { PdfModalComponent } from './components/pdfModal/pdf-modal.component';\nimport { LoginModalComponent } from './components/login-modal/login-modal.component';\nimport { SessionCreateComponent } from './components/caja/session-create/session-create.component';\nimport { SelectClienteComponent } from './components/cliente/select/select-cliente.component';\nimport { SelectProveedorComponent } from './components/proveedor/select/select-proveedor.component';\nimport { SeleccionaArticuloComponent } from './components/selecciona-articulo/selecciona-articulo.component';\nimport { SelectAcreedorComponent } from './components/acreedor/select/select-acreedor.component';\n\n\nexport const components = [\n\n LoadingComponent,\n LoadingScreenComponent,\n LoginModalComponent,\n PdfModalComponent,\n SessionCreateComponent,\n SelectClienteComponent,\n SelectProveedorComponent,\n SeleccionaArticuloComponent,\n SelectAcreedorComponent\n\n];\n\nexport const exportComponents = components;\n\nexport const exportServices = [\n\n];\nexport const exportModels = [\n\n];\n","import { ButtonModule } from 'primeng/button';\nimport { InputTextModule } from 'primeng/inputtext';\nimport { DropdownModule } from 'primeng/dropdown';\nimport { InputMaskModule } from 'primeng/inputmask';\nimport { MessagesModule } from 'primeng/messages';\nimport { MessageModule } from 'primeng/message';\nimport { PaginatorModule } from 'primeng/paginator';\nimport { ConfirmDialogModule } from 'primeng/confirmdialog';\nimport { ProgressBarModule } from 'primeng/progressbar';\nimport { TriStateCheckboxModule } from 'primeng/tristatecheckbox';\nimport { KeyFilterModule } from 'primeng/keyfilter';\nimport { InputSwitchModule } from 'primeng/inputswitch';\nimport { DialogModule } from 'primeng/dialog';\nimport { TabViewModule } from 'primeng/tabview';\nimport { CalendarModule } from 'primeng/calendar';\nimport { PanelModule } from 'primeng/panel';\nimport { TreeTableModule } from 'primeng/treetable';\nimport { TableModule } from 'primeng/table';\nimport { AutoCompleteModule } from 'primeng/autocomplete';\nimport { FieldsetModule } from 'primeng/fieldset';\nimport { CheckboxModule } from 'primeng/checkbox';\nimport { TreeModule } from 'primeng/tree';\nimport {RadioButtonModule} from 'primeng/radiobutton';\nimport {TabMenuModule} from 'primeng/tabmenu';\nimport {OverlayPanelModule} from 'primeng/overlaypanel';\nimport {TooltipModule} from 'primeng/tooltip';\nimport {CardModule} from 'primeng/card';\nimport {MenubarModule} from 'primeng/menubar';\nimport { ConfirmationService } from 'primeng/api';\nimport { SplitButtonModule } from 'primeng/splitbutton';\nimport { ToolbarModule } from 'primeng/toolbar';\n\nexport const primeNg = [\n CardModule,\n TooltipModule,\n OverlayPanelModule,\n RadioButtonModule,\n CheckboxModule,\n AutoCompleteModule,\n TableModule,\n TreeTableModule,\n CalendarModule,\n TableModule,\n ButtonModule,\n InputTextModule,\n DropdownModule,\n InputMaskModule,\n MessagesModule,\n MessageModule,\n PaginatorModule,\n ConfirmDialogModule,\n ProgressBarModule,\n TriStateCheckboxModule,\n KeyFilterModule,\n InputSwitchModule,\n DialogModule,\n TabViewModule,\n PanelModule,\n ToolbarModule,\n SplitButtonModule,\n FieldsetModule,\n TreeModule,\n TabMenuModule,\n MenubarModule,\n];\n\n\n\nexport const primeNgServices = [ConfirmationService];\n","import { contaComponents } from './importComponetsConta';\n//modules angular\nimport { NgModule } from '@angular/core';\nimport { HttpClientModule,HttpClient, HTTP_INTERCEPTORS } from '@angular/common/http';\n\n//interceptor\nimport { httpInterceptor } from './httpInterceptor/httpInterceptor';\n\n\n//components\nimport { Error404Component } from './components/error404/error404.component';\nimport { components } from './importComponents';\n\n//modules proyect\nimport { primeNg, primeNgServices } from './globalPrimeNg';\nimport { TranslateModule, TranslateLoader } from '@ngx-translate/core'; \nimport { TranslateHttpLoader } from '@ngx-translate/http-loader';\nimport { ToastrModule } from 'ngx-toastr';\nimport { CommonModule } from '@angular/common';\nimport { SeleccionArticuloInformacionComponent } from './components/seleccion-articulo-informacion/seleccion-articulo-informacion.component';\nimport { FormsModule } from '@angular/forms';\n\n\nexport function HttpLoaderFactory(http: HttpClient) {\n return new TranslateHttpLoader(http,'./assets/i18n/','.json');\n}\n\n\n@NgModule({\n declarations: [\n Error404Component,\n components,\n contaComponents,\n SeleccionArticuloInformacionComponent\n ],\n imports: [ \n CommonModule,\n primeNg,\n FormsModule,\n ToastrModule.forRoot(),\n TranslateModule.forRoot({\n loader: {\n provide: TranslateLoader,\n useFactory: HttpLoaderFactory,\n deps: [HttpClient]\n }\n }) \n ],\n providers: [ \n primeNgServices,\n { provide: HTTP_INTERCEPTORS, useClass: httpInterceptor, multi: true }\n ],\n exports: [ components, contaComponents ]\n})\nexport class CoreLibModule {\n \n }\n","import { Injectable, Output, EventEmitter } from \"@angular/core\";\nimport { AuthService } from './auth.service';\n\n@Injectable({\n providedIn : 'root'\n}) export class ControlAccesoService {\n constructor(private authService: AuthService){\n }\n detallesUsuarios : any;\n @Output() cambioAcciones = new EventEmitter();\n @Output() changeDetalleUsuario = new EventEmitter();\n\n set(detallesUsuarios){\n this.detallesUsuarios = detallesUsuarios;\n this.changeDetalleUsuario.emit( this.detallesUsuarios);\n }\n\n canActivete(rols: String[]) {\n let permiso = false;\n let user = this.authService.getUser();\n if(!user) false;\n \n for (let index = 0; index < rols.length; index++) { \n if(permiso) return permiso; \n let grupoPermisos :any[] = user.roles.filter(\n (permiso: any) => {\n return permiso === rols[index] ;\n }\n ); \n permiso = grupoPermisos.length > 0;\n }\n return permiso;\n } \n}","import { Injectable } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { AuthService } from './auth.service';\n@Injectable({\n providedIn: 'root'\n})\nexport class InitService {\n constructor(\n private http: HttpClient,\n private authService: AuthService\n ) {\n\n }\n initConfig() {\n this.http.get('assets/config.json').subscribe(\n (data: any) => {\n localStorage.setItem(\"config\", JSON.stringify(data)); \n }\n );\n this.http.get('assets/version.json' )\n //.first()\n .subscribe(\n (response: any) => {\n localStorage.removeItem('version');\n localStorage.setItem('version',response.hash);\n }\n );\n }\n cargaConfig() {\n this.http.get('assets/config.json').subscribe(\n (data: any) => {\n localStorage.setItem(\"config\", JSON.stringify(data));\n let url = data.url;\n this.http.post(url + '/login',\n { username: 'admin', password: 'admin' }).subscribe(\n (data: any) => {\n\n localStorage.setItem('usuario', JSON.stringify(data));\n\n let httpOptions = {\n headers: new HttpHeaders({\n 'Accept-type': 'application/json',\n 'Authorization': data.token_type + ' ' + data.access_token\n })\n };\n\n this.http.get(url + '/usuario/obtieneUsuarioActual', httpOptions).subscribe(\n (dat: any) => {\n let empresaAdmin = dat.empresas[0];\n this.authService.setEmpresa(empresaAdmin).subscribe(\n\n );\n }\n )\n\n });\n }\n );\n }\n}","import { Injectable } from \"@angular/core\";\nimport { ToastrService } from 'ngx-toastr';\n\n\n@Injectable({\n providedIn: 'root'\n}) export class MessageService {\n\n constructor(private toastr: ToastrService) { }\n\n\n deployMessage(tipo: string = null, titulo: string, msg: string) {\n switch(tipo){\n case \"success\" : {\n this.toastr.success(msg, titulo, {\n timeOut: 3000\n }); \n }\n break;\n case \"info\" : {\n this.toastr.info(msg, titulo, {\n timeOut: 3000,\n });\n }\n break;\n case \"warning\" :{\n this.toastr.warning(msg, titulo, {\n timeOut: 3000\n });\n }\n break;\n case \"error\": {\n this.toastr.error(msg, titulo, {\n timeOut: 3000\n });\n }\n break;\n case null :{\n this.toastr.success(msg, titulo, {\n timeOut: 3000\n });\n }\n break;\n }\n \n }\n\n success(msg: string) {\n let msgs = [];\n msgs.push({ severity: 'success', summary: 'Exito', detail: '' + msg });\n return msgs;\n }\n\n error(error: any) {\n let msgs = [];\n if (error) {\n if (error.error) {\n error = error.error;\n if (error.error)\n for (let i = 0; i < (error.error).length; i++) {\n msgs.push({ severity: 'error', summary: 'Error', detail: '' + error.error[i].message });\n }\n }\n } else {\n if (error.mensaje)\n msgs.push({ severity: 'error', summary: 'Error', detail: '' + error.mensaje });\n }\n return msgs;\n }\n\n}","import { Injectable } from \"@angular/core\";\n import { ApiService } from \"./api.service\";\nimport { Observable } from \"rxjs\";\n\n@Injectable({\n providedIn: 'root'\n}) export class PersonaMoralService {\n private endpoint = 'personaMoral';\n constructor(private api: ApiService){\n }\n\n getAll(params?: any): Observable<any> {\n return this.api.get<any>(this.endpoint, params);\n }\n\n get(id: number): Observable<any> {\n return this.api.get<any>(`${this.endpoint}/${id}`);\n }\n\n save(obj: any): Observable<any> {\n return this.api.post<any>(this.endpoint, obj);\n }\n\n update(obj: any): Observable<any> {\n return this.api.put<any>(this.endpoint, obj.id, obj);\n }\n\n delete(id: number): Observable<any> {\n return this.api.delete<any>(this.endpoint, id);\n }\n}","import { Injectable } from \"@angular/core\";\nimport { CanActivate } from '@angular/router';\nimport { ControlAccesoService } from './controlAcceso.service';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class CanActivateGuard implements CanActivate {\n rol : string = '';\n method : string = '';\n constructor(private controlAccesoService : ControlAccesoService){ \n }\n canActivate(){\n return this.controlAccesoService.canActivete([this.rol]);\n }\n\n permisos(rol){\n this.rol = rol;\n }\n\n}\n","import { Injectable } from '@angular/core';\nimport { ApiService } from './api.service';\nimport { Observable } from 'rxjs';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class CatalogoAdicionalService {\n\n private endpoint = 'catalogoAdicional';\n constructor(private api: ApiService){\n }\n\n getAll(params?: any): Observable<any> {\n return this.api.get<any>(this.endpoint, params);\n }\n\n get(id: number): Observable<any> {\n return this.api.get<any>(`${this.endpoint}/${id}`);\n }\n\n save(obj: any): Observable<any> {\n return this.api.post<any>(this.endpoint, obj);\n }\n\n update(obj: any): Observable<any> {\n return this.api.put<any>(this.endpoint, obj.id, obj);\n }\n\n delete(id: number): Observable<any> {\n return this.api.delete<any>(this.endpoint, id);\n }\n}","import { Injectable } from '@angular/core';\nimport { AuthService } from './auth.service';\nimport { ControlAccesoService } from './controlAcceso.service';\nimport { Router } from '@angular/router';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class Authenticated {\n\n constructor( \n private authService: AuthService,\n private controlAccesoService: ControlAccesoService,\n private router: Router\n ){\n \n }\n \n load(modulo ?){\n let usuario = this.authService.getUser();\n\n if (usuario) {\n this.authService.getDetalsUser().subscribe(\n (resp: any) => {\n let roles = resp.roles; \n for (let index = 0; index < roles.length; index++) {\n if(roles[index].authority === \"ROLE_CLIENTE\"){\n //this.regresaAlprincipal('/administrativo/movimientos/ventaRapida/create')\n this.router.navigate(['movimientos/ventaRapida/create']);\n }\n }\n if (!resp.empresa) {\n this.regresaAlprincipal(undefined);\n }\n this.controlAccesoService.detallesUsuarios = resp;\n this.controlAccesoService.cambioAcciones.emit(true);\n return true;\n /*\n if (resp.moduloAccesoActual) {\n if (resp.moduloAccesoActual.descripcion === modulo) {\n this.controlAccesoService.detallesUsuarios = resp;\n this.controlAccesoService.cambioAcciones.emit(true);\n return true;\n } else {\n this.regresaAlprincipal(resp.moduloAccesoActual.urlInicial);\n }\n } else {\n this.regresaAlprincipal(undefined);\n }\n\n */\n \n }, (error: any) => {\n this.regresaAlprincipal(undefined);\n }\n );\n } else {\n this.regresaAlprincipal(undefined);\n }\n return false;\n }\n\n regresaAlprincipal(url) {\n let config = JSON.parse(localStorage.getItem(\"config\"));\n let host = \"\"\n if (config) {\n if (config.host) {\n host = config.host;\n }\n }\n if (url) {\n host = host + url;\n }\n window.location.href = host;\n }\n}","import { Injectable } from '@angular/core';\nimport { HttpClient } from '@angular/common/http';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class VersionCheckService {\n \n private currentHash = '{{POST_BUILD_ENTERS_HASH_HERE}}';\n \n versionado = false;\n\n constructor(private http: HttpClient) {}\n frequency = 1000 * 60 * 180;\n \n public initVersionCheck( ) {\n setInterval(() => {\n this.checkVersion();\n }, this.frequency);\n }\n\n private checkVersion() { \n this.http.get('assets/version.json' + '?t=' + new Date().getTime())\n .subscribe(\n (response: any) => {\n const hash = response.hash; \n this.currentHash = localStorage.getItem(\"version\");\n const hashChanged = this.hasHashChanged(this.currentHash, hash);\n if (!hashChanged && !this.versionado) {\n this.versionado = true;\n if(confirm(\"Está disponible una actualización de Visorus ERP. El sistema se reiniciara para descargar los nuevos cambios.\")){\n location.reload();\n this.versionado = false;\n }else{\n this.versionado = false;\n }\n }\n },\n (err) => {\n console.error(err, 'No se pudo obtener versión de software');\n }\n );\n }\n private hasHashChanged(currentHash, newHash) {\n if (!currentHash || currentHash === '{{POST_BUILD_ENTERS_HASH_HERE}}') {\n return false;\n }\n return currentHash === newHash;\n }\n}","import { SerieDocumento } from \"../../serieDocumento/models/SerieDocumento\";\nimport { Almacen } from \"../../almacen/models/Almacen\";\nimport { PersonaFisica } from \"../../persona-fisica/models/PersonaFisica\";\nimport { ClasificadorTipo } from \"../../clasificadorTipo/models/ClasificadorTipo\";\nimport { CatalogoTipo } from \"../../catalogoTipo/models/CatalogoTipo\";\n\nexport class Agente{\n\t\n id : number;\n version : number;\n estatus : boolean;\n observacion : string;\n comisionVenta: number;\n comisionCobro: number;\n centroDeCosto: number;\n serieDefault : SerieDocumento;\n almacenDefault: Almacen;\n catalogoTipo : CatalogoTipo;\n personaFisica: PersonaFisica;\n clasificadorTipo : ClasificadorTipo;\n series : any[];\n almacenes : any [];\n numeroPrecio : any [];\n\n constructor(){\n // this.catalogoTipo= new CatalogoTipo();\n this.personaFisica = new PersonaFisica();\n }\n \n}","import { Injectable } from \"@angular/core\"; \nimport { ApiService } from \"../../../services/api.service\";\nimport { Observable } from \"rxjs\";\nimport { Agente } from \"../models/Agente\";\n\n@Injectable({\n providedIn: 'root'\n}) export class AgenteService {\n private endpoint = 'agente';\n constructor(private api: ApiService){\n }\n\n saveUsuarioAgente(usuario : any){\n return this.api.post<any>(`${this.endpoint}/usuario`, usuario);\n }\n getUsuarioAgente(id: any){\n return this.api.get<any>(`${this.endpoint}/usuario/${id}`);\n }\n\n obtenerAgenteEmpresa() {\n return this.api.get<any>(`${this.endpoint}/obtenerAgenteEmpresa`);\n }\n\n get(id: number): Observable<Agente> {\n return this.api.get<Agente>(`${this.endpoint}/${id}`);\n }\n\n save(obj: any): Observable<any> {\n return this.api.post<any>(this.endpoint, obj);\n }\n\n update(obj: any): Observable<any> {\n return this.api.put<any>(this.endpoint, obj.id, obj);\n } \n\n delete(id: number): Observable<any> {\n return this.api.delete<any>(this.endpoint, id);\n }\n}\n","import { DatoDireccion } from \"../../dato-direccion/models/DatoDireccion\";\nimport { ClasificadorTipo } from \"../../clasificadorTipo/models/ClasificadorTipo\";\n\n\nexport class Almacen{\n id: number;\n version: number;\n codigo: string;\n descripcion: string;\n maximo: number;\n minimo: number;\n prefijoContable: string;\n centroCosto: number;\n estatus: boolean;\n datoDireccion : DatoDireccion;\n clasificadorTipo: ClasificadorTipo;\n activoVirtual : boolean;\n activoMovimiento : boolean;\n activoOrdenCompra : boolean;\n activoLoteAutomatico: boolean;\n constructor(){}\n}","export class DatoDireccion{\n id : number;\n calle : String;\n numeroExterior : String;\n numeroInterior : String;\n colonia : String;\n ciudad : String;\n municipio : String;\n estado : String;\n pais : String;\n codigoPostal : String;\n referencia : String;\n estatus : boolean;\n latitud : number;\n longitud : number;\n version : number;\n constructor(){ \n }\n \n}","import { DatoDireccion } from \"../../dato-direccion/models/DatoDireccion\";\n\n\nexport class Banco{\n id : number;\n nombre : string;\n razonSocial : string;\n rfc : string;\n entidad : string;\n sucursal : string;\n datoDireccion : DatoDireccion;\n estatus : boolean;\n version : number;\n \n constructor(){\n this.datoDireccion= new DatoDireccion();\n }\n}","import { Injectable } from \"@angular/core\";\nimport { ApiService } from \"../../../services/api.service\";\nimport { Observable } from \"rxjs\";\nimport { Banco } from \"../models/Banco\";\n\n@Injectable({\n providedIn: 'root'\n })\nexport class BancoService {\n private endpoint = 'banco';\n constructor(private api: ApiService){\n }\n\n getAll(params?: any): Observable<any> {\n return this.api.get<any>(this.endpoint, params);\n }\n \n get(id: number): Observable<Banco> {\n return this.api.get<Banco>(`${this.endpoint}/${id}`);\n }\n\n save(obj: any): Observable<any> {\n return this.api.post<any>(this.endpoint, obj);\n }\n \n update(obj: any): Observable<any> {\n return this.api.put<any>(this.endpoint, obj.id, obj);\n }\n\n delete(id: number): Observable<any> {\n return this.api.delete<any>(this.endpoint, id);\n }\n}","export class CatalogoTipo{\n id : number;\n version : number;\n codigo: string;\n descripcion : string;\n tipoClasificador: String;\n estatus: boolean;\n constructor(){}\n}","import { Injectable } from \"@angular/core\";\nimport { ApiService } from \"../../../services/api.service\";\nimport { Observable } from \"rxjs\";\nimport { CatalogoTipo } from \"../models/CatalogoTipo\";\n\n@Injectable({\n providedIn: 'root'\n})\nexport class CatalogoTipoService {\n private endpoint = 'catalogoTipo';\n constructor(private api: ApiService){\n }\n\n getAll(params?: any): Observable<any> {\n return this.api.get<any>(this.endpoint, params);\n }\n \n get(id: number): Observable<CatalogoTipo> {\n return this.api.get<CatalogoTipo>(`${this.endpoint}/${id}`);\n }\n\n save(obj: any): Observable<any> {\n return this.api.post<any>(this.endpoint, obj);\n }\n \n update(obj: any): Observable<any> {\n return this.api.put<any>(this.endpoint, obj.id, obj);\n }\n\n delete(id: number): Observable<any> {\n return this.api.delete<any>(this.endpoint, id);\n }\n}","import { Injectable } from \"@angular/core\";\nimport { ApiService } from \"../../../services/api.service\";\nimport { Observable } from \"rxjs\";\nimport { ClasificadorTipo } from \"../models/ClasificadorTipo\";\n\n@Injectable({\n providedIn: 'root'\n}) export class ClasificadorTipoService {\n private endpoint = 'clasificadorTipo';\n constructor(private api: ApiService){\n }\n\n getAll(params?: any): Observable<any> {\n return this.api.get<any>(this.endpoint, params);\n }\n\n get(id: number): Observable<ClasificadorTipo> {\n return this.api.get<ClasificadorTipo>(`${this.endpoint}/${id}`);\n }\n\n save(obj: any): Observable<any> {\n return this.api.post<any>(this.endpoint, obj);\n }\n\n update(obj: any): Observable<any> {\n return this.api.put<any>(this.endpoint, obj.id, obj);\n }\n\n delete(id: number): Observable<any> {\n return this.api.delete<any>(this.endpoint, id);\n }\n}","export class ClaveMovimiento {\n id : number;\n version : number;\n codigo : string;\n descripcion: string;\n operadorMovimiento: string;\n operadorReporte: string;\n seImprime: boolean;\n calcularCostoAplicacion: boolean;\n afectarInventario: boolean;\n editarSerie: boolean;\n editarFolio: boolean;\n afectaCuentasPorCobrar: boolean;\n afectaCuentasPorPagar: boolean;\n actualizaEstadisticaCliente: boolean;\n actualizaEstadisticaProveedor: boolean;\n actualizaCostoArticulo: boolean;\n estatus: boolean;\n entradaAutomaticamente : boolean;\n movimientoSalida : ClaveMovimiento;\n movimientoEntrada : ClaveMovimiento;\n\n constructor(){}\n}\n","import { Injectable } from \"@angular/core\";\nimport { ApiService } from \"../../../services/api.service\";\nimport { Observable } from \"rxjs\";\nimport { ClaveMovimiento } from \"../models/ClaveMovimiento\";\n\n@Injectable({\n providedIn: 'root'\n}) export class ClaveMovimientoService {\n private endpoint = 'claveMovimiento';\n constructor(private api: ApiService){\n }\n\n getAll(params?: any): Observable<any> {\n return this.api.get<any>(this.endpoint, params);\n }\n\n get(id: number): Observable<ClaveMovimiento> {\n return this.api.get<ClaveMovimiento>(`${this.endpoint}/${id}`);\n }\n\n save(obj: any): Observable<any> {\n return this.api.post<any>(this.endpoint, obj);\n }\n\n update(obj: any): Observable<any> {\n return this.api.put<any>(this.endpoint, obj.id, obj);\n }\n\n delete(id: number): Observable<any> {\n return this.api.delete<any>(this.endpoint, id);\n }\n} ","\nimport { PersonaFisica } from \"../../persona-fisica/models/PersonaFisica\";\nimport { PersonaMoral } from \"../../../models/PersonaMoral\";\nimport { ClasificadorTipo } from \"../../clasificadorTipo/models/ClasificadorTipo\";\nimport { Agente } from \"../../agente/models/Agente\";\nimport { CatalogoTipo } from '../../catalogoTipo/models/CatalogoTipo';\n\nexport class Cliente {\n id: number;\n version: number;\n limiteCredito: number;\n plazoCredito: number;\n diasPago: number;\n numeroPrecioVenta: number;\n estadoDeCredito: boolean;\n descuento1: number;\n descuento2: number;\n descuento3: number;\n descuento4: number;\n descuento5: number;\n descuento6: number;\n descuento7: number;\n descuento8: number;\n descuento9: number;\n descuento10: number;\n fechaUltimaCompra: string;\n folioUltimaCompra: string;\n puntosMonedero: number;\n montoMonedero: number;\n personaFisica: PersonaFisica;\n personaMoral : PersonaMoral;\n estatus: boolean;\n agenteVendedor : Agente;\n agenteCobrador : Agente;\n clasificadorTipo : ClasificadorTipo;\n catalogoTipo : CatalogoTipo;\n ieps : string;\n descripcionRazonSocial : string;\n descripcionRfc : string;\n modificarDatosVenta : boolean; \n residenciaFiscal : any;\n identidadFiscal : string;\n codigoSat : any;\n codigo :string; \n\n constructor(){\n this.agenteCobrador= new Agente();\n this.agenteVendedor= new Agente();\n this.personaFisica = new PersonaFisica();\n this.personaMoral= new PersonaMoral();\n }\n \n}","import { Cliente } from \"./Cliente\";\nimport { Banco } from \"../../banco/models/Banco\";\n\nexport class ClienteCuentaBanco{\n id : number;\n version : number;\n estatus : boolean;\n cliente : Cliente;\n banco : Banco;\n cuentaBancaria : string;\n cambio : boolean;\n constructor(){\n this.banco = new Banco();\n this.estatus= true;\n }\n}","export class Flete{\n id : number;\n version : number;\n nombre : string;\n estatus : boolean;\n constructor(){}\n}","import { Cliente } from \"./Cliente\";\nimport { Flete } from \"../../flete/models/Flete\";\n\nexport class ClienteFlete{\n id : number;\n version : number;\n cliente : Cliente;\n flete : Flete;\n estatus : Boolean;\n \n cambio : boolean; // solo para saber si sucede un cambio en el objeto \n\n constructor(){\n this.cliente = new Cliente();\n this.flete = new Flete(); \n this.estatus = true;\n }\n\n}","import { Injectable } from \"@angular/core\";\nimport { ApiService } from \"../../../services/api.service\";\nimport { Observable } from \"rxjs\";\nimport { ClienteCuentaBanco } from \"../models/ClienteCuentaBanco\";\n@Injectable({\n providedIn: 'root'\n}) export class ClienteCuentaBancoService {\n private endpoint = 'clienteCuentaBanco';\n constructor(private api: ApiService){\n }\n\n saveAll(params: any): Observable<any> {\n let p ={'cuentas' : params};\n return this.api.post<any>(this.endpoint, p);\n }\n\n get(id: number): Observable<ClienteCuentaBanco> {\n return this.api.get<ClienteCuentaBanco>(`${this.endpoint}/${id}`);\n }\n\n delete(id: number): Observable<any> {\n return this.api.delete<any>(this.endpoint, id);\n }\n\n getAll(params?: any): Observable<any> {\n return this.api.get<any>(this.endpoint, params);\n }\n\n save(obj: any): Observable<any> {\n return this.api.post<any>(this.endpoint, obj);\n }\n\n update(obj: any): Observable<any> {\n return this.api.put<any>(this.endpoint, obj.id, obj);\n }\n}","import { Injectable } from \"@angular/core\";\nimport { ApiService } from \"../../../services/api.service\";\nimport { Observable } from \"rxjs\";\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ClienteFleteService {\n private endpoint = 'clienteFlete';\n constructor(private api: ApiService){\n }\n\n saveAll(p: any): Observable<any> {\n let params ={ fletes : p};\n return this.api.post<any>(this.endpoint, params);\n }\n\n get(id: number): Observable<any> {\n return this.api.get<any>(`${this.endpoint}/${id}`);\n }\n\n delete(id: number): Observable<any> {\n return this.api.delete<any>(this.endpoint, id);\n }\n\n getAll(params?: any): Observable<any> {\n return this.api.get<any>(this.endpoint, params);\n }\n\n save(obj: any): Observable<any> {\n return this.api.post<any>(this.endpoint, obj);\n }\n\n update(obj: any): Observable<any> {\n return this.api.put<any>(this.endpoint, obj.id, obj);\n }\n}","export class TipoContacto{\n id : number;\n descripcion : String;\n estatus : boolean;\n version : number;\n constructor(){\n this.estatus= true;\n }\n}","import { TipoContacto } from \"../../tipo-contacto/models/TipoContacto\";\n\nexport class DatoContacto{\n id: number;\n valor: string;\n estatus : boolean;\n tipoContacto : TipoContacto;\n version : number;\n constructor(){\n this.tipoContacto = new TipoContacto();\n }\n \n}"," import { Injectable } from \"@angular/core\";\nimport { ApiService } from \"../../../services/api.service\";\nimport { Observable } from \"rxjs\";\n\n@Injectable({\n providedIn: 'root'\n})\nexport class DatoContactoService {\n private endpoint = 'contacto';\n constructor(private api: ApiService){\n }\n\n getAll(params?: any): Observable<any> {\n return this.api.get<any>(this.endpoint, params);\n }\n\n get(id: number): Observable<any> {\n return this.api.get<any>(`${this.endpoint}/${id}`);\n }\n\n save(obj: any): Observable<any> {\n return this.api.post<any>(this.endpoint, obj);\n }\n\n update(obj: any): Observable<any> {\n return this.api.put<any>(this.endpoint, obj.id, obj);\n }\n\n delete(id: number): Observable<any> {\n return this.api.delete<any>(this.endpoint, id);\n }\n}","\n\nimport { Injectable } from \"@angular/core\";\nimport { ApiService } from \"../../../services/api.service\";\nimport { Observable } from \"rxjs\";\n\n@Injectable({\n providedIn: 'root'\n })\nexport class DatoDireccionService {\n private endpoint = 'datoDireccion';\n constructor(private api: ApiService){\n }\n\n getAll(params?: any): Observable<any> {\n return this.api.get<any>(this.endpoint, params);\n }\n \n get(id: number): Observable<any> {\n return this.api.get<any>(`${this.endpoint}/${id}`);\n }\n\n save(obj: any): Observable<any> {\n return this.api.post<any>(this.endpoint, obj);\n }\n\n update(obj: any): Observable<any> {\n return this.api.put<any>(this.endpoint, obj.id, obj);\n }\n\n delete(id: number): Observable<any> {\n return this.api.delete<any>(this.endpoint, id);\n }\n \n}","export class Departamento{\n id : number;\n codigo: number;\n descripcion : number;\n estatus : boolean;\n version : number;\n departamentoPadre : Departamento;\n constructor(){\n \n }\n}\n\n\n\n\n\n\n\n","import { Injectable } from \"@angular/core\";\nimport { ApiService } from \"../../../services/api.service\";\nimport { Observable } from \"rxjs\";\n\n@Injectable({\n providedIn: 'root'\n}) export class DepartamentoService {\n private endpoint = 'departamento';\n constructor(private api: ApiService){\n }\n\n getAll(params?: any): Observable<any> {\n return this.api.get<any>(this.endpoint, params);\n }\n \n get(id: number): Observable<any> {\n return this.api.get<any>(`${this.endpoint}/${id}`);\n }\n\n save(obj: any): Observable<any> {\n return this.api.post<any>(this.endpoint, obj);\n }\n\n update(obj: any): Observable<any> {\n return this.api.put<any>(this.endpoint, obj.id, obj);\n }\n\n delete(id: number): Observable<any> {\n return this.api.delete<any>(this.endpoint, id);\n }\n}","\nexport class FormaPago{\nid : number;\nversion : number;\ncodigo : string;\ndescripcion : string;\ncomision : number;\nestatus : boolean;\ncodigoSat : number;\nconstructor(){}\n}\n","import { DatoDireccion } from \"../../dato-direccion/models/DatoDireccion\";\nimport { PersonaMoral } from \"../../../models/PersonaMoral\";\nimport { FormaPago } from \"../../formaPago/models/FormaPago\";\n\n\nexport class Empresa{\n id : number;\n nombre : string; \n \n claveFormaPagoEfectivo : FormaPago;\n estatus : boolean;\n datoDireccion :DatoDireccion;\n personaMoral :PersonaMoral;\n version : number;\n\n constructor(){\n this.datoDireccion = new DatoDireccion();\n this.personaMoral = new PersonaMoral();\n this.claveFormaPagoEfectivo= new FormaPago();\n }\n \n}","import { Empresa } from \"./Empresa\";\n\nexport class ConfiguracionEmpresaAdministrativa{\n id : number;\n version : number;\n busquedaPreciosNetos : boolean;\n calcularCambioTicket : boolean;\n claveBonificacion : boolean;\n claveClienteFactura : boolean;\n claveClienteMostrador : boolean;\n envioContabilidadVirtual : boolean;\n impuestoIncluidoPrecio : boolean;\n manejaOrdenSurtido : boolean;\n manejaUnidadSecundaria : boolean;\n modoContabilidadAuto : boolean;\n numeroDecimales : number;\n numeroPrecios : number;\n precioDefault : number;\n redondeaCaja : number;\n serieNotaCredito : string;\n tasaImpuestoDefault : number;\n tipoCosteo : string;\n claveFormaPagoEfectivo : string;\n formaDePagoEfectivo : any;\n formaDePagoCredito : any;\n formaDePagoMixto : any;\n monedaDefault : any;\n empresa : Empresa;\n envioMercadoLibreAuto : boolean;\n permiteModificarFecha : boolean;\n constructor(){\n this.empresa = new Empresa();\n }\n}\n","\n\nimport { Injectable } from \"@angular/core\";\nimport { ApiService } from \"../../../services/api.service\";\nimport { Observable } from \"rxjs\";\n\n@Injectable({\n providedIn: 'root'\n})\nexport class EmpresaService {\n private endpoint = 'empresa';\n constructor(private api: ApiService){\n }\n\n getAll(params?: any): Observable<any> {\n return this.api.get<any>(this.endpoint, params);\n }\n get(){\n return this.api.get<any>(`${this.endpoint}/configuracionEmpresaAdministrativo/configuracionUsuario`);\n }\n\n getByEmpresa(id: number): Observable<any> {\n return this.api.get<any>(`${this.endpoint}/configuracionEmpresaAdministrativo/configuracionUsuario/${id}`);\n }\n\n save(obj: any): Observable<any> {\n return this.api.post<any>(this.endpoint, obj);\n }\n\n update(obj: any): Observable<any> {\n return this.api.put<any>(this.endpoint, obj.id, obj);\n }\n\n delete(id: number): Observable<any> {\n return this.api.delete<any>(this.endpoint, id);\n }\n}","import { Injectable } from \"@angular/core\";\n import { ApiService } from \"../../../services/api.service\";\nimport { Observable } from \"rxjs\";\n\n@Injectable({\n providedIn: 'root'\n})\nexport class FleteService {\n private endpoint = 'flete';\n constructor(private api: ApiService){\n }\n\n getAll(params?: any): Observable<any> {\n return this.api.get<any>(this.endpoint, params);\n }\n\n get(id: number): Observable<any> {\n return this.api.get<any>(`${this.endpoint}/${id}`);\n }\n\n save(obj: any): Observable<any> {\n return this.api.post<any>(this.endpoint, obj);\n }\n\n update(obj: any): Observable<any> {\n return this.api.put<any>(this.endpoint, obj.id, obj);\n }\n\n delete(id: number): Observable<any> {\n return this.api.delete<any>(this.endpoint, id);\n }\n}","import { Injectable } from \"@angular/core\";\nimport { ApiService } from \"../../../services/api.service\";\nimport { Observable } from \"rxjs\";\nimport { FormaPago } from \"../models/FormaPago\";\n\n@Injectable({\n providedIn: \"root\"\n})\nexport class FormaPagoService { \n private endpoint = 'FormaDePago';\n constructor( private api: ApiService){\n\n }\n\n getAll(params?: any): Observable<any> {\n return this.api.get<any>(this.endpoint, params);\n }\n\n get(id: number): Observable<FormaPago> {\n return this.api.get<FormaPago>(`${this.endpoint}/${id}`);\n }\n\n save(obj: FormaPago): Observable<FormaPago> {\n return this.api.post<FormaPago>(this.endpoint, obj);\n }\n\n update(obj: FormaPago): Observable<FormaPago> {\n return this.api.put<FormaPago>(this.endpoint, obj.id, obj);\n }\n\n delete(id: number): Observable<any> {\n return this.api.delete<any>(this.endpoint, id);\n }\n}","export class Moneda{\n id : number;\n version : number;\n codigo : number;\n descripcion : string;\n simbolo : string;\n monedaNacional : boolean;\n decimales : number;\n tipoDecambio: number;\n estatus:boolean;\n codigoSat: number;\n constructor(){}\n}\n","import { Injectable } from \"@angular/core\";\n import { ApiService } from \"../../../services/api.service\";\nimport { Observable } from \"rxjs\";\n\n@Injectable({\n providedIn : 'root'\n}) export class MonedaService {\n private endpoint = 'moneda';\n constructor(private api: ApiService){\n }\n\n getAll(params?: any): Observable<any> {\n return this.api.get<any>(this.endpoint, params);\n }\n\n get(id: number): Observable<any> {\n return this.api.get<any>(`${this.endpoint}/${id}`);\n }\n\n save(obj: any): Observable<any> {\n return this.api.post<any>(this.endpoint, obj);\n }\n\n update(obj: any): Observable<any> {\n return this.api.put<any>(this.endpoint, obj.id, obj);\n }\n\n delete(id: number): Observable<any> {\n return this.api.delete<any>(this.endpoint, id);\n }\n}","export class EstadoCivil {\n id: number;\n version: number;\n nombre: string;\n descripcion: string;\n estatus: boolean;\n constructor(){}\n}","export class Genero{\n id: number;\n version : number;\n nombre: string;\n estatus: boolean;\n constructor(){}\n}","import { Injectable } from \"@angular/core\";\nimport { ApiService } from \"../../../services/api.service\";\nimport { Observable } from \"rxjs\";\n\n@Injectable({\n providedIn: \"root\"\n})\nexport class PersonaFisicaService { \n private endpoint = 'PersonaFisica';\n constructor(private api: ApiService){\n }\n\n getGeneros(): Observable<any> {\n return this.api.get<any>(`${this.endpoint}/genero`);\n }\n\n getEstadoCivil(): Observable<any> {\n return this.api.get<any>(`${this.endpoint}/estadoCivil`);\n }\n\n}","import { Proveedor } from \"./Proveedor\";\nimport { Banco } from \"../../banco/models/Banco\";\n\nexport class ProveedorCuentaBanco{\n id : number;\n version : number;\n estatus : boolean;\n proveedor : Proveedor;\n banco : Banco;\n cuentaBancaria : string;\n cambio : boolean;\n constructor(){\n this.banco = new Banco();\n this.estatus= true;\n }\n}","import { Proveedor } from \"./Proveedor\";\nimport { Flete } from \"../../flete/models/Flete\";\n\nexport class ProveedorFlete{\n id : number;\n version : number;\n proveedor : Proveedor;\n flete : Flete;\n estatus : Boolean;\n \n cambio : boolean; // solo para saber si sucede un cambio en el objeto \n\n constructor(){\n this.proveedor = new Proveedor();\n this.flete = new Flete(); \n this.estatus = true;\n }\n}","import { Injectable } from \"@angular/core\";\nimport { ApiService } from \"../../../services/api.service\";\nimport { Observable } from \"rxjs\";\n\n@Injectable({\n providedIn: 'root'\n}) export class ProveedorCuentaBancoService {\n private endpoint = 'proveedorCuentaBanco';\n constructor(private api: ApiService){\n }\n\n getAll(params?: any): Observable<any> {\n return this.api.get<any>(this.endpoint, params);\n }\n\n saveAll(params){\n let p ={'cuentas' : params};\n return this.api.post<any>(this.endpoint, p);\n }\n\n get(id: number): Observable<any> {\n return this.api.get<any>(`${this.endpoint}/${id}`);\n }\n \n delete(id: number): Observable<any> {\n return this.api.delete<any>(this.endpoint, id);\n }\n\n update(obj: any): Observable<any> {\n return this.api.put<any>(this.endpoint, obj.id, obj);\n }\n \n save(obj: any): Observable<any> {\n return this.api.post<any>(this.endpoint, obj);\n }\n \n}","import { Injectable } from \"@angular/core\"; \nimport { ApiService } from \"../../../services/api.service\";\nimport { Observable } from \"rxjs\";\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ProveedorFleteService {\n private endpoint = 'proveedorFlete';\n constructor(private api: ApiService){\n }\n\n getAll(params?: any): Observable<any> {\n return this.api.get<any>(this.endpoint, params);\n }\n\n saveAll(p){\n let params ={ fletes : p};\n return this.save(params);\n }\n\n save(obj: any): Observable<any> {\n return this.api.post<any>(this.endpoint, obj);\n }\n\n update(obj: any): Observable<any> {\n return this.api.put<any>(this.endpoint, obj.id, obj);\n }\n\n delete(id: number): Observable<any> {\n return this.api.delete<any>(this.endpoint, id);\n }\n}","import { Injectable } from '@angular/core';\nimport { ApiService } from '../../../services/api.service';\nimport { Observable } from 'rxjs';\n \n@Injectable({\n providedIn: 'root'\n})\nexport class ClaveAumentoDisminucionService {\n private endpoint = 'claveAumentoDisminucion';\n constructor(private api: ApiService){\n }\n\n getAll(params?: any): Observable<any> {\n return this.api.get<any>(this.endpoint, params);\n }\n \n get(id: number): Observable<any> {\n return this.api.get<any>(`${this.endpoint}/${id}`);\n }\n\n save(obj: any): Observable<any> {\n return this.api.post<any>(this.endpoint, obj);\n }\n\n update(obj: any): Observable<any> {\n return this.api.put<any>(this.endpoint, obj.id, obj);\n }\n\n delete(id: number): Observable<any> {\n return this.api.delete<any>(this.endpoint, id);\n }\n}\n","import { Injectable } from \"@angular/core\";\nimport { ApiService } from \"../../../services/api.service\";\nimport { Observable } from \"rxjs\";\n\n@Injectable({\n providedIn: 'root'\n})\nexport class SerieDocumentoService{\n private endpoint = 'serieDocumento';\n constructor(private api: ApiService){\n }\n\n getTipos(): Observable<any> {\n return this.api.get<any>(`${this.endpoint}/tipoSerie`);\n }\n\n getReporte(params: any): Observable<any> {\n return this.api.get<any>(`${this.endpoint}/descargaFormatoReporte`, params);\n }\n \n get(id: number): Observable<any> {\n return this.api.get<any>(`${this.endpoint}/${id}`);\n }\n\n save(obj: any): Observable<any> {\n return this.api.post<any>(this.endpoint, obj);\n }\n\n update(obj: any): Observable<any> {\n return this.api.put<any>(this.endpoint, obj.id, obj);\n }\n\n delete(id: number): Observable<any> {\n return this.api.delete<any>(this.endpoint, id);\n }\n }","import { ClaveMovimiento } from \"../../claveMovimiento/models/ClaveMovimiento\";\n\n\nexport class SerieDocumento {\n id : number;\n version : number;\n codigo : string;\n descripcion : string;\n folio : number;\n serieImprimir : string;\n formatoDefault : string;\n impresoraDefault : string;\n lineasReporte : number;\n precioDefault : number;\n empresaContable : number;\n tipoSerie : string;\n numeroDeCopias : number;\n folioTemporal : boolean;\n preverImpresion : boolean;\n folioAutomatico : boolean;\n apartarMercancia : boolean;\n mostrarPreciosNetos : boolean;\n ventaNegada : boolean;\n duplicarFolio : boolean;\n estatus : boolean;\n claveMovimiento : ClaveMovimiento;\n\n formatoReporte : any;\n nombreReporte :string;\n\n\n constructor() { }\n}"," import { Injectable } from \"@angular/core\";\nimport { ApiService } from \"../../../services/api.service\";\nimport { Observable } from \"rxjs\";\n\n@Injectable({\n providedIn: 'root'\n })\nexport class TipoContactoService {\n private endpoint = 'tipoContacto';\n constructor(private api: ApiService){\n }\n\n getAll(params?: any): Observable<any> {\n return this.api.get<any>(this.endpoint, params);\n }\n\n get(id: number): Observable<any> {\n return this.api.get<any>(`${this.endpoint}/${id}`);\n }\n\n save(obj: any): Observable<any> {\n return this.api.post<any>(this.endpoint, obj);\n }\n\n update(obj: any): Observable<any> {\n return this.api.put<any>(this.endpoint, obj.id, obj);\n }\n\n delete(id: number): Observable<any> {\n return this.api.delete<any>(this.endpoint, id);\n }\n}","export class Ubicacion {\n id : number;\n version : number;\n estatus : boolean;\n codigo : string;\n largo : number;\n ancho : number;\n alto : number;\n pesoMaximo : number; \n descripcion : string;\n nivel1 : string;\n nivel2 : string;\n nivel3 : string;\n nivel4 : string;\n nivel5 : string;\n constructor(){}\n}","import { Injectable } from \"@angular/core\";\n import { ApiService } from \"../../../services/api.service\";\nimport { Observable } from \"rxjs\";\n\n@Injectable({\n providedIn: 'root'\n}) export class UbicacionService {\n private endpoint = 'ubicacion';\n constructor(private api: ApiService){\n }\n\n getAll(params?: any): Observable<any> {\n return this.api.get<any>(this.endpoint, params);\n }\n\n get(id: number): Observable<any> {\n return this.api.get<any>(`${this.endpoint}/${id}`);\n }\n\n save(obj: any): Observable<any> {\n return this.api.post<any>(this.endpoint, obj);\n }\n\n update(obj: any): Observable<any> {\n return this.api.put<any>(this.endpoint, obj.id, obj);\n }\n\n delete(id: number): Observable<any> {\n return this.api.delete<any>(this.endpoint, id);\n }\n}","\n export abstract class TipoCatalogo {\n static ARTICULO = 2;\n static USO_CFDI =11;\n}","\nimport { Injectable } from \"@angular/core\";\nimport { ApiService } from \"../../../services/api.service\";\n\n@Injectable({\n providedIn: 'root'\n}) export class AcreedorCuentaContableService{\n private endpoint = 'acreedorCuentaContable';\n constructor(private api: ApiService){\n }\n\n cuentasContables() {\n return this.api.get<any>(`${this.endpoint}/obtieneCuentasContablesRecursivo`);\n }\n}","import { NormaInformacionFinancieraModel } from './normaInfoFinanciera.model';\nimport { Moneda } from './../../components/moneda/models/Moneda';\nexport class CuentaContableModel{\n id: number;\n version: number;\n descripcion: string;\n descripcionCuentaContable: string;\n cuentaContable: string;\n nivel: number;\n naturaleza: string;\n naturalezaDescripcion: string;\n cuentaRegistro: boolean;\n activo: boolean;\n tipo: string;\n tipoDescripcion: string;\n recaudacionAgrupador: any;\n normaInformacionFinanciera: NormaInformacionFinancieraModel;\n moneda: Moneda;\n cuentaContableOrigen: CuentaContableModel;\n children: CuentaContableModel[];\n constructor(){\n };\n}","export class NormaInformacionFinancieraModel {\n id: number;\n version: number;\n clave: string;\n descripcion:string;\n normaInformacionFinancieraDescripcion:string;\n constructor(){};\n}"]}
|