{"version":3,"sources":["webpack:///./src/services/clients/getClient.js","webpack:///./src/views/historical/ClientHistorical.vue?16c1","webpack:///./src/components/filters/HistoricalClientFilter.vue?8722","webpack:///src/components/filters/HistoricalClientFilter.vue","webpack:///./src/components/filters/HistoricalClientFilter.vue?a75d","webpack:///./src/components/filters/HistoricalClientFilter.vue","webpack:///./src/services/historical/getHistoricalByClient.js","webpack:///./src/services/historical/getHistoricalByClientExcel.js","webpack:///src/views/historical/ClientHistorical.vue","webpack:///./src/views/historical/ClientHistorical.vue?e79c","webpack:///./src/views/historical/ClientHistorical.vue","webpack:///./src/services/historical/getHistoricalEvents.js"],"names":["async","getClient","params","req","url","method","headers","res","axiosInstance","data","render","_vm","this","_h","$createElement","_c","_self","attrs","toggleTableTools","slot","header","pagination","total","currentPage","pageSize","on","changeCurrentPage","changePerPage","staticClass","toggleSearchesDialog","toggleFilters","tags","removeFilterTagHanlder","removeAllTagsHandler","saveTagsHandler","spanish","kendo","dataResult","isGeneralLoading","selectedField","dataStateChange","columnReorder","openPath","onColumnsSubmit","sortChange","filterChange","labelBtnExcel","loadingExcel","exportExcel","filterPanel","applyFiltersHandler","numberSearches","idVista","saveSearchDialog","toggleDialogSearches","applySearchHandler","ref","vuexnamespace","searchesPanel","updateNumberSearches","staticRenderFns","panelOpen","togglePanel","_v","_s","$t","dateRangeOptions","model","value","form","fechaDesde","callback","$$v","$set","expression","fechaHasta","valuesTiposEvento","evento","mensaje","_l","i","key","applyFilters","name","props","type","default","firstDayOfWeek","isOpen","label","values","mounted","tipo","watch","deep","immediate","handler","methods","panelOpenHandler","watchFormHandler","resetForm","component","getHistoricalByClient","order","getHistoricalByClientExcel","responseType","response","components","ListLayout","FilterPanel","FilterPanelSearches","CreateSearchDialog","KendoGridComponent","title","icon","breadcrumb","showAllRows","loadingDataTable","tableData","selected","computed","isHeadCoreReady","rowsSelected","rowsTotal","setLabelTowShow","masterFilters","headerCoreFilters","columns","field","width","headerSelectionValue","reorderable","groupable","areAllSelected","hasSelected","role","skip","take","sort","group","created","breadcrumbs","path","removeFilterTag","createAppState","dataState","column","options","idCliente","grupos","payload","encoding","link","filename","console","filter","getItemsData","paginate","results","page","totalPages","o","headerCoreFiltersHandler","tableSortByChangeHandler","prop","downloadData","client","getHistoricalEvents"],"mappings":"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EAEA0G,UACA,OACA,CAAAC,iBAAAC,aAAAC,yCAAAC,eAAAC,iBACA,qBAGAC,iBACA,qEAEAC,cACA,+BAEAC,gBACA,0CAGA1C,OACAiC,mBAEAhC,QACAE,oCAEAvF,UACA,SACA+H,qBACAC,qBACAC,qBACAC,wBAEA,4CAGAC,qBAGAjD,yBAIA,8BAIA,sEAEA,WASA,GARAkD,QACAC,0EACA3D,0CAEA0D,QACAC,8BACA3D,mCAEA,iDACA,oDACA0D,QAAAC,QAAA3D,aACA,CACA,mCACA0D,QAAAC,QAAA3D,wBACA,+DAEA,yBAEA,qBAEAc,SACAvD,uBAIAZ,yBACA,oCAEAiH,4BACA,0CAEAC,2BACA,uBACA,uBACA,SAEAC,6CAEA,yBACA,2BACA,wBAEAzG,kCACA,4BACA,qCAEAC,0BACA,mCACA,mCACA,oDACAyG,yCACAC,qBAGA,8BAEAnG,6BACA,wCACA,qBACA,qEACA,GACAoG,gCACAvE,oCACAC,uCACAR,gDACAK,iDAEA,0DACA,sEACA,GAAA4B,cAAA8C,UACA,qBACA,yCACAC,aAEA,IACA,qBACA,qBAAAjE,iBAAAkE,mBACA,8BACAC,qCACA,+BACAC,eACAD,aACAA,UACA,eAEA,GADAE,iBACA,2CACA,qCACA,wBAEA,kBAEA,QACA,wCACA,uBAGA/G,4BACA,2BACA,sBAEAC,uBAEA,aACA,mBACA8F,KAEA,SACAF,qBACAC,qBACAC,OACAC,uBACAgB,0BAEA,sBAAAlJ,UAEAoC,yBACA,SACA2F,qBACAC,qBACAC,qBACAC,uBACAgB,UAGA,sBAAAlJ,UAEAyE,+BACA,yBACA,qEAEA,GACAkE,gCACAvE,oCACAC,uCACAR,gDACAK,iDAEA,0DACA,IACA,uCACA,SAEA,sCACA,kBAEA,kBAEAiF,iCAAA,YACA,+CACA,sCACA,SACAC,YACAC,iCACAC,oCACA,GAEA,8BACA,yBACA,SACAzI,mDACAC,+DACAyI,2DACAxI,yDAKA,OAHA,8DACA,sCACA,yBACA,WAEA,uBACA,SACAqI,YACAC,iCACAC,oCACA,GAEA,eAUA,OATA,gBACA,gDAEA,0DACAtJ,2BACAwJ,sCACAA,0CAGA,GAEA/G,sCACA,2DACA,sCAEAxB,oCACA,2DACA,yCAEAC,gCACA,2DACA,wDACA,kBACA,yCAEAK,mCAEA,2DACA,4EACA,QACA,6DACA,gCAEAkI,qCACA,sBACA,yBAGAjI,gCACA,2DACA,6DACA,gCAEAkI,wCAAAC,QAAA7D,IACA,oDACA,yDACA,2DACA,yBAEA8D,+BACA,WACA,IACA,sCACA,SACAjB,aAEAkB,2BACA,gBACA,gDAEA,SACA,kBACA,QACA,sCAEA,UAEAzI,gCACA,wCAEAK,2BACA,8CAEAoB,gCACA,8CAEAC,oCACA,4BAEA,6CAEAI,uCACA,yBCpcwW,ICOpW,EAAY,eACd,EACAjD,EACAkD,GACA,EACA,KACA,WACA,MAIa,e,2CClBf,4DAGA5D,eAAeuK,EAAqBrK,EAAS,MAOpC,CACL,MAAMC,EAAM,CACVC,IAAK,mCACLC,OAAQ,OACRC,QAAS,CACP,eAAgB,mBAChB,8BAA+B,KAEjCJ,UAEIK,QAAYC,eAAcL,GAChC,OAAOI,EAAIE","file":"js/chunk-1b06658f.v.6.0.0.1743755007948.js","sourcesContent":["import axiosInstance from '@/services/axiosInstance'\r\nimport mock from '@/services/mock/index'\r\n\r\nasync function getClient (params = null) {\r\n if (process.env.VUE_APP_ENVIRONMENT === 'tests') {\r\n return new Promise((resolve, reject) => {\r\n const data = mock.getCompanies\r\n const pages = data.data.length\r\n\r\n const clone = JSON.parse(JSON.stringify(data))\r\n console.log(clone.data)\r\n\r\n clone.meta.total = pages\r\n\r\n resolve(clone)\r\n })\r\n } else {\r\n const req = {\r\n url: 'api/clientes/getclientebyid',\r\n method: 'GET',\r\n headers: {\r\n 'Content-type': 'application/json',\r\n 'access-control-allow-origin': '*'\r\n },\r\n params,\r\n }\r\n const res = await axiosInstance(req)\r\n return res.data\r\n }\r\n}\r\n\r\nexport { getClient }\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('list-layout',{attrs:{\"tableTools\":_vm.toggleTableTools}},[_c('template',{slot:\"header\"},[_c('BaseHeader',{attrs:{\"content\":_vm.header}})],1),_c('template',{slot:\"table-core\"},[_c('base-table-pagination',{attrs:{\"total\":_vm.pagination.total,\"currentPage\":_vm.pagination.currentPage,\"perPage\":_vm.pagination.pageSize},on:{\"changeCurrentPage\":_vm.changeCurrentPage,\"changePerPage\":_vm.changePerPage}}),_c('div',{staticClass:\"flex flex-row w-100\"},[_c('base-table-searches',{on:{\"toggleSearchesDialog\":_vm.toggleSearchesDialog}}),_c('base-table-search',{on:{\"toggleFilters\":_vm.toggleFilters}})],1)],1),_c('template',{slot:\"table-tags\"},[_c('base-table-filter-tags',{attrs:{\"tags\":_vm.tags},on:{\"removeTag\":_vm.removeFilterTagHanlder,\"removeAllTags\":_vm.removeAllTagsHandler,\"saveTags\":_vm.saveTagsHandler}})],1),_c('template',{slot:\"table-component\"},[_c('kendo-grid-component',{attrs:{\"spanish\":_vm.spanish,\"dataResult\":_vm.kendo.dataResult,\"kendo\":_vm.kendo,\"loading\":_vm.isGeneralLoading,\"selectedField\":_vm.selectedField},on:{\"datastatechange\":_vm.dataStateChange,\"columnreorder\":_vm.columnReorder,\"rowclick\":_vm.openPath,\"columnssubmit\":_vm.onColumnsSubmit,\"sortchange\":_vm.sortChange,\"filterchange\":_vm.filterChange}})],1),_c('template',{slot:\"layout-extend\"},[_c('base-footer',[_c('template',{slot:\"actions\"},[_c('base-button-responsive',{attrs:{\"mode\":\"primary\",\"text\":_vm.labelBtnExcel,\"icon\":\"excelxls\",\"loading\":_vm.isGeneralLoading || _vm.loadingExcel,\"disabled\":_vm.loadingExcel},on:{\"click\":_vm.exportExcel}})],1)],2),_c('filter-panel',{attrs:{\"panelOpen\":_vm.filterPanel},on:{\"togglePanel\":_vm.toggleFilters,\"applyFilters\":_vm.applyFiltersHandler}}),_c('create-search-dialog',{attrs:{\"numberSearches\":_vm.numberSearches,\"idVista\":_vm.idVista,\"dialogOpen\":_vm.saveSearchDialog,\"tags\":_vm.tags},on:{\"toggleDialog\":_vm.toggleDialogSearches,\"applyDialog\":_vm.applySearchHandler}}),_c('filter-panel-searches',{ref:\"filterPanelSearches\",attrs:{\"idVista\":_vm.idVista,\"vuexnamespace\":_vm.vuexnamespace,\"panelOpen\":_vm.searchesPanel},on:{\"togglePanel\":_vm.toggleSearchesDialog,\"applyFilters\":_vm.applyFiltersHandler,\"updateNumberSearches\":_vm.updateNumberSearches}})],1)],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('base-slide-panel',{attrs:{\"isOpen\":_vm.panelOpen},on:{\"closePanel\":_vm.togglePanel}},[_c('template',{slot:\"header\"},[_c('div',{staticClass:\"h-16 bg-secondary dark:bg-darkblue-600 flex items-center justify-between text-white px-4\"},[_c('div',{staticClass:\"flex items-center\"},[_c('base-icon',{attrs:{\"name\":\"filter\"}}),_c('h2',{staticClass:\"font-bold ml-2\"},[_vm._v(\"Filtrar por\")])],1),_c('span',{staticClass:\"cursor-pointer\",on:{\"click\":_vm.togglePanel}},[_c('base-button-icon',{attrs:{\"name\":\"cross\",\"size\":\"xs\",\"iconSize\":\"sm\",\"mode\":\"secondary\"}})],1)])]),_c('template',{slot:\"main\"},[_c('div',{staticClass:\"form-wrapper p-4 dark:bg-darkblue-800 dark:text-darkblue-200\"},[_c('el-form',{ref:\"ruleForm\"},[_c('div',{staticClass:\"lg:mb-2\"},[_c('div',[_c('base-collapsible',{staticClass:\"mb-3\",attrs:{\"customContent\":\"bg-white dark:bg-darkblue rounded-lg border-solid border-primary-100 dark:border-darkblue-600 border p-4 mt-2\"}},[_c('template',{slot:\"headerRight\"},[_c('div',{staticClass:\"flex flex-col py-2\"},[_c('h2',{staticClass:\"dark:text-darkblue-100\"},[_vm._v(_vm._s(_vm.$t('historical.fechaEvento')))])])]),_c('template',{slot:\"content\"},[_c('div',[_c('div',[_c('label',{staticClass:\"text-sm font-semibold text-secondary-600 block mb-1\"},[_vm._v(_vm._s(_vm.$t('invoicesFilter.from')))]),_c('el-form-item',{attrs:{\"prop\":\"fechaDesde\"}},[_c('el-date-picker',{staticClass:\"bg-white dark:bg-darkblue-900 dark:bg-darkblue\",attrs:{\"picker-options\":_vm.dateRangeOptions,\"type\":\"date\",\"placeholder\":\"\"},model:{value:(_vm.form.fechaDesde.value),callback:function ($$v) {_vm.$set(_vm.form.fechaDesde, \"value\", $$v)},expression:\"form.fechaDesde.value\"}})],1)],1),_c('div',[_c('label',{staticClass:\"text-sm font-semibold text-secondary-600 block mb-1\"},[_vm._v(_vm._s(_vm.$t('invoicesFilter.to')))]),_c('el-form-item',{attrs:{\"prop\":\"fechaHasta\"}},[_c('el-date-picker',{staticClass:\"bg-white dark:bg-darkblue-900 dark:bg-darkblue\",attrs:{\"picker-options\":_vm.dateRangeOptions,\"type\":\"date\",\"placeholder\":\"\"},model:{value:(_vm.form.fechaHasta.value),callback:function ($$v) {_vm.$set(_vm.form.fechaHasta, \"value\", $$v)},expression:\"form.fechaHasta.value\"}})],1)],1)])])],2)],1),_c('div',[_c('label',{staticClass:\"text-sm font-semibold text-secondary-600 block mb-1\"},[_vm._v(_vm._s(_vm.$t('historical.evento')))]),_c('el-form-item',{attrs:{\"prop\":\"evento\"}},[_c('base-el-select',{staticClass:\"w-full\",attrs:{\"options\":_vm.valuesTiposEvento,\"clearable\":\"\"},model:{value:(_vm.form.evento.value),callback:function ($$v) {_vm.$set(_vm.form.evento, \"value\", $$v)},expression:\"form.evento.value\"}})],1)],1),_c('div',[_c('label',{staticClass:\"text-sm font-semibold text-secondary-600 block mb-1\"},[_vm._v(_vm._s(_vm.$t('historical.info')))]),_c('el-form-item',{attrs:{\"prop\":\"mensaje\"}},[_c('el-input',{staticClass:\"w-full\",attrs:{\"clearable\":\"\",\"maxlength\":\"500\"},model:{value:(_vm.form.mensaje.value),callback:function ($$v) {_vm.$set(_vm.form.mensaje, \"value\", $$v)},expression:\"form.mensaje.value\"}})],1)],1)]),_vm._l((0),function(i){return _c('p',{key:i},[_vm._v(\"form\")])})],2)],1)]),_c('template',{slot:\"footer\"},[_c('base-button',{attrs:{\"mode\":\"secondary-phantom-blue\",\"text\":_vm.$t('app.cancel')},on:{\"click\":_vm.togglePanel}}),_c('base-button',{staticClass:\"w-full\",attrs:{\"mode\":\"secondary-phantom-blue\",\"text\":_vm.$t('app.apply')},on:{\"click\":_vm.applyFilters}})],1)],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n <base-slide-panel :isOpen=\"panelOpen\" @closePanel=\"togglePanel\">\r\n <template slot=\"header\">\r\n <div class=\"h-16 bg-secondary dark:bg-darkblue-600 flex items-center justify-between text-white px-4\">\r\n <div class=\"flex items-center\">\r\n <base-icon name=\"filter\"/>\r\n <h2 class=\"font-bold ml-2\">Filtrar por</h2>\r\n </div>\r\n <span class=\"cursor-pointer\" @click=\"togglePanel\">\r\n <base-button-icon name=\"cross\" size=\"xs\" iconSize=\"sm\" mode=\"secondary\" />\r\n </span>\r\n </div>\r\n </template>\r\n <template slot=\"main\">\r\n <div class=\"form-wrapper p-4 dark:bg-darkblue-800 dark:text-darkblue-200\">\r\n <el-form\r\n ref=\"ruleForm\"\r\n >\r\n <div class=\"lg:mb-2\">\r\n <div>\r\n <base-collapsible class=\"mb-3\" customContent=\"bg-white dark:bg-darkblue rounded-lg border-solid border-primary-100 dark:border-darkblue-600 border p-4 mt-2\">\r\n <template slot=\"headerRight\">\r\n <div class=\"flex flex-col py-2\">\r\n <h2 class=\"dark:text-darkblue-100\">{{$t('historical.fechaEvento')}}</h2>\r\n </div>\r\n </template>\r\n <template slot=\"content\">\r\n <div>\r\n <div>\r\n <label class=\"text-sm font-semibold text-secondary-600 block mb-1\">{{$t('invoicesFilter.from')}}</label>\r\n <el-form-item prop=\"fechaDesde\">\r\n <el-date-picker\r\n class=\"bg-white dark:bg-darkblue-900 dark:bg-darkblue\"\r\n v-model=\"form.fechaDesde.value\"\r\n :picker-options=\"dateRangeOptions\"\r\n type=\"date\"\r\n placeholder=\"\">\r\n </el-date-picker>\r\n </el-form-item>\r\n </div>\r\n <div>\r\n <label class=\"text-sm font-semibold text-secondary-600 block mb-1\">{{$t('invoicesFilter.to')}}</label>\r\n <el-form-item prop=\"fechaHasta\">\r\n <el-date-picker\r\n class=\"bg-white dark:bg-darkblue-900 dark:bg-darkblue\"\r\n v-model=\"form.fechaHasta.value\"\r\n :picker-options=\"dateRangeOptions\"\r\n type=\"date\"\r\n placeholder=\"\">\r\n </el-date-picker>\r\n </el-form-item>\r\n </div>\r\n </div>\r\n </template>\r\n </base-collapsible>\r\n </div>\r\n <div>\r\n <label class=\"text-sm font-semibold text-secondary-600 block mb-1\">{{$t('historical.evento')}}</label>\r\n <el-form-item prop=\"evento\">\r\n <base-el-select class=\"w-full\" :options=\"valuesTiposEvento\" v-model=\"form.evento.value\" clearable />\r\n </el-form-item>\r\n </div>\r\n <div>\r\n <label class=\"text-sm font-semibold text-secondary-600 block mb-1\">{{$t('historical.info')}}</label>\r\n <el-form-item prop=\"mensaje\">\r\n <el-input\r\n clearable\r\n class=\"w-full\"\r\n v-model=\"form.mensaje.value\"\r\n maxlength=\"500\"\r\n />\r\n </el-form-item>\r\n </div>\r\n </div>\r\n <p v-for=\"i in 0\" :key=\"i\">form</p>\r\n </el-form>\r\n </div>\r\n </template>\r\n <template slot=\"footer\">\r\n <base-button @click=\"togglePanel\" mode=\"secondary-phantom-blue\" :text=\"$t('app.cancel')\"/>\r\n <base-button mode=\"secondary-phantom-blue\" class=\"w-full\" :text=\"$t('app.apply')\" @click=\"applyFilters\"/>\r\n </template>\r\n </base-slide-panel>\r\n</template>\r\n\r\n<script>\r\nimport { i18n } from '@/i18n'\r\nimport moment from 'moment'\r\nimport { getHistoricalEvents } from '@/services/historical/getHistoricalEvents'\r\n\r\nexport default {\r\n name: 'filter-panel',\r\n props: {\r\n panelOpen: {\r\n type: Boolean,\r\n default: false\r\n }\r\n },\r\n data: function () {\r\n return {\r\n dateRangeOptions: {\r\n firstDayOfWeek: 1,\r\n },\r\n vuexnamespace: 'historicalClient',\r\n isOpen: this.panelOpen,\r\n form: {\r\n evento: { label: 'Nombre del evento', value: '' },\r\n mensaje: { label: 'Información adicional', value: '' },\r\n fechaDesde: { label: 'Fecha desde', value: '' },\r\n fechaHasta: { label: 'Fecha hasta', value: '' }\r\n },\r\n values: [\r\n {\r\n value: true,\r\n label: i18n.t('app.yes')\r\n },\r\n {\r\n value: false,\r\n label: i18n.t('app.no')\r\n }\r\n ],\r\n valuesTiposEvento: []\r\n }\r\n },\r\n mounted: async function () {\r\n const tipoEvento = { tipo: 'cliente' }\r\n const data = await getHistoricalEvents(tipoEvento)\r\n if (data.blnError === true) {\r\n this.doFeedback(data.msgError + ' [' + data.codError + ']')\r\n }\r\n if (data.listaEventos.length > 0) {\r\n data.listaEventos.forEach(element => {\r\n this.valuesTiposEvento.push({ value: element, label: element.replaceAll('_', ' ') })\r\n })\r\n }\r\n },\r\n watch: {\r\n form: {\r\n deep: true,\r\n immediate: true,\r\n handler: 'watchFormHandler'\r\n },\r\n panelOpen: {\r\n handler: 'panelOpenHandler'\r\n }\r\n },\r\n methods: {\r\n panelOpenHandler: function (data) {\r\n const _temp = this.$store.getters[this.vuexnamespace + '/getMasterFilters']\r\n if (_temp) {\r\n this.resetForm()\r\n this.form.evento.value = _temp.evento !== undefined && _temp.evento ? _temp.evento.value : ''\r\n this.form.mensaje.value = _temp.mensaje !== undefined && _temp.mensaje ? _temp.mensaje.value : ''\r\n this.form.fechaDesde.value = _temp.fechaDesde !== undefined && _temp.fechaDesde ? _temp.fechaDesde.value : ''\r\n this.form.fechaHasta.value = _temp.fechaHasta !== undefined && _temp.fechaHasta ? _temp.fechaHasta.value : ''\r\n }\r\n // console.log('_temp =>', _temp)\r\n // console.log('form =>', this.form)\r\n },\r\n watchFormHandler: function ({ fechaDesde, fechaHasta, evento }) {\r\n if (fechaDesde.value !== undefined && moment(fechaDesde.value).isValid()) {\r\n this.form.fechaDesde.value = moment(fechaDesde.value).format('YYYY-MM-DD[T00:00:00]')\r\n } else {\r\n this.form.fechaDesde.value = ''\r\n }\r\n\r\n if (fechaHasta.value !== undefined && moment(fechaHasta.value).isValid()) {\r\n this.form.fechaHasta.value = moment(fechaHasta.value).format('YYYY-MM-DD[T00:00:00]')\r\n } else {\r\n this.form.fechaHasta.value = ''\r\n }\r\n },\r\n togglePanel: function () {\r\n this.isOpen = !this.isOpen\r\n // this.resetForm()\r\n this.$emit('togglePanel')\r\n },\r\n resetForm: function () {\r\n this.form = {\r\n evento: { label: i18n.t('historical.evento'), value: '' },\r\n mensaje: { label: i18n.t('historical.info'), value: '' },\r\n fechaDesde: { label: i18n.t('historical.fechaDesde'), value: '' },\r\n fechaHasta: { label: i18n.t('historical.fechaHasta'), value: '' }\r\n }\r\n },\r\n applyFilters: function () {\r\n this.$store.commit(this.vuexnamespace + '/setMasterFilters', this.form)\r\n this.$emit('applyFilters', true)\r\n this.isOpen = !this.isOpen\r\n this.resetForm()\r\n this.$emit('togglePanel')\r\n },\r\n }\r\n}\r\n</script>\r\n\r\n<style lang=\"scss\" scoped></style>\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HistoricalClientFilter.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HistoricalClientFilter.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./HistoricalClientFilter.vue?vue&type=template&id=524875f5&scoped=true\"\nimport script from \"./HistoricalClientFilter.vue?vue&type=script&lang=js\"\nexport * from \"./HistoricalClientFilter.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"524875f5\",\n null\n \n)\n\nexport default component.exports","import axiosInstance from '@/services/axiosInstance'\r\nimport mock from '@/services/mock/index'\r\n\r\nasync function getHistoricalByClient (order = {}, params = null) {\r\n if (process.env.VUE_APP_ENVIRONMENT === 'test') {\r\n return new Promise((resolve, reject) => {\r\n setTimeout(() => {\r\n resolve(mock.getLanguages.data)\r\n }, 500)\r\n })\r\n } else {\r\n const req = {\r\n url: '/api/historico/getclientehistorico',\r\n method: 'POST',\r\n headers: {\r\n 'Content-type': 'application/json',\r\n 'access-control-allow-origin': '*'\r\n },\r\n data: order,\r\n params\r\n }\r\n const res = await axiosInstance(req)\r\n return res.data\r\n }\r\n}\r\n\r\nexport { getHistoricalByClient }\r\n","import axiosInstance from '@/services/axiosInstance'\r\nimport mock from '@/services/mock/index'\r\n\r\nasync function getHistoricalByClientExcel (order = {}, params = null) {\r\n if (process.env.VUE_APP_ENVIRONMENT === 'test') {\r\n return new Promise((resolve, reject) => {\r\n setTimeout(() => {\r\n resolve(mock.getLanguages.data)\r\n }, 500)\r\n })\r\n } else {\r\n const req = {\r\n url: '/api/historico/getclientehistoricoexcel',\r\n method: 'POST',\r\n headers: {\r\n 'Content-type': 'application/json',\r\n 'access-control-allow-origin': '*'\r\n },\r\n responseType: 'blob',\r\n data: order,\r\n params\r\n }\r\n const res = await axiosInstance(req)\r\n const response = {\r\n data: res.data,\r\n headers: res.headers\r\n }\r\n return response\r\n }\r\n}\r\n\r\nexport { getHistoricalByClientExcel }\r\n","<template>\r\n <list-layout :tableTools=\"toggleTableTools\">\r\n <template slot=\"header\">\r\n <BaseHeader :content=\"header\" />\r\n </template>\r\n <template slot=\"table-core\">\r\n <base-table-pagination\r\n :total=\"pagination.total\"\r\n :currentPage=\"pagination.currentPage\"\r\n :perPage=\"pagination.pageSize\"\r\n @changeCurrentPage=\"changeCurrentPage\"\r\n @changePerPage=\"changePerPage\"\r\n ></base-table-pagination>\r\n <div class=\"flex flex-row w-100\">\r\n <base-table-searches @toggleSearchesDialog=\"toggleSearchesDialog\" />\r\n <base-table-search @toggleFilters=\"toggleFilters\" />\r\n </div>\r\n </template>\r\n <template slot=\"table-tags\">\r\n <base-table-filter-tags :tags=\"tags\" @removeTag=\"removeFilterTagHanlder\" @removeAllTags=\"removeAllTagsHandler\" @saveTags=\"saveTagsHandler\"/>\r\n </template>\r\n <template slot=\"table-component\">\r\n <kendo-grid-component :spanish=\"spanish\"\r\n :dataResult='kendo.dataResult'\r\n :kendo=\"kendo\"\r\n :loading='isGeneralLoading'\r\n :selectedField=\"selectedField\"\r\n @datastatechange='dataStateChange'\r\n @columnreorder='columnReorder'\r\n @rowclick='openPath'\r\n @columnssubmit='onColumnsSubmit'\r\n @sortchange='sortChange'\r\n @filterchange='filterChange'>\r\n </kendo-grid-component>\r\n </template>\r\n <template slot=\"layout-extend\">\r\n <base-footer>\r\n <template slot=\"actions\">\r\n <base-button-responsive mode='primary' :text=\"labelBtnExcel\" icon='excelxls' @click='exportExcel' :loading='isGeneralLoading || loadingExcel' :disabled=\"loadingExcel\"/>\r\n </template>\r\n </base-footer>\r\n <filter-panel :panelOpen=\"filterPanel\" @togglePanel=\"toggleFilters\" @applyFilters=\"applyFiltersHandler\" />\r\n <create-search-dialog \r\n :numberSearches=\"numberSearches\"\r\n :idVista=\"idVista\" \r\n :dialogOpen=\"saveSearchDialog\" \r\n :tags=\"tags\" \r\n @toggleDialog=\"toggleDialogSearches\" \r\n @applyDialog=\"applySearchHandler\" />\r\n <filter-panel-searches \r\n ref=\"filterPanelSearches\" \r\n :idVista=\"idVista\" \r\n :vuexnamespace=\"vuexnamespace\" \r\n :panelOpen=\"searchesPanel\" \r\n @togglePanel=\"toggleSearchesDialog\" \r\n @applyFilters=\"applyFiltersHandler\" \r\n @updateNumberSearches=\"updateNumberSearches\"/>\r\n </template>\r\n </list-layout>\r\n</template>\r\n\r\n<script>\r\nimport ListLayout from '@/components/layout/ListLayout.vue'\r\nimport FilterPanel from '@/components/filters/HistoricalClientFilter.vue'\r\nimport FilterPanelSearches from '@/components/searches/SearchesPanel.vue'\r\nimport CreateSearchDialog from '@/components/searches/CreateSearchDialog.vue'\r\nimport { getHistoricalByClient } from '@/services/historical/getHistoricalByClient'\r\nimport { getClient } from '@/services/clients/getClient'\r\nimport { i18n } from '@/i18n'\r\nimport '@progress/kendo-theme-default/dist/all.css'\r\nimport { process } from '@progress/kendo-data-query'\r\nimport KendoGridComponent from '../../components/KendoGridComponent.vue'\r\nimport { getHistoricalByClientExcel } from '@/services/historical/getHistoricalByClientExcel'\r\n\r\nexport default {\r\n name: 'list-view',\r\n components: {\r\n ListLayout,\r\n FilterPanel,\r\n FilterPanelSearches,\r\n CreateSearchDialog,\r\n KendoGridComponent\r\n },\r\n data: function () {\r\n return {\r\n idVista: 21,\r\n // Searches\r\n numberSearches: 0,\r\n saveSearchDialog: false,\r\n searchesPanel: false,\r\n // All\r\n loadingExcel: false,\r\n spanish: true,\r\n header: {\r\n title: i18n.t('historical.generic'),\r\n icon: 'config',\r\n breadcrumb: null,\r\n url: 'configurations/clients/details'\r\n },\r\n vuexnamespace: 'historicalClient',\r\n selectedField: 'selected',\r\n filterPanel: false,\r\n showAllRows: true,\r\n loadingDataTable: false,\r\n tableData: [],\r\n data: null,\r\n selected: [],\r\n }\r\n },\r\n computed: {\r\n labelBtnExcel: function () {\r\n if (this.hasSelected) return this.$i18n.t('app.export_excel') + ' (Seleccionados)'\r\n return this.$i18n.t('app.export_excel')\r\n },\r\n kendo: function () {\r\n return this.$store.getters[this.vuexnamespace + '/getKendo']\r\n },\r\n isHeadCoreReady: function () {\r\n return this.$store.getters.isHeadCoreReady\r\n },\r\n toggleTableTools: function () {\r\n return this.selected.length > 0\r\n },\r\n rowsSelected: function () {\r\n return this.selected.length\r\n },\r\n rowsTotal: function () {\r\n return this.tableData.length\r\n },\r\n setLabelTowShow: function () {\r\n return this.showAllRows ? 'Solo Seleccionadas' : 'Ver Todas'\r\n },\r\n masterFilters: function () {\r\n return this.$store.getters[this.vuexnamespace + '/getMasterFilters']\r\n },\r\n isGeneralLoading: function () {\r\n return this.$store.getters.isLoading\r\n },\r\n headerCoreFilters: function () {\r\n return this.$store.getters['auth/queryHeaders']\r\n },\r\n tags: function () {\r\n return this.$store.getters[this.vuexnamespace + '/getTags']\r\n },\r\n pagination: function () {\r\n return this.$store.getters[this.vuexnamespace + '/getPaginationInfo']\r\n },\r\n columns () {\r\n return [\r\n { field: 'selected', width: '50px', headerSelectionValue: this.areAllSelected, reorderable: false, groupable: false },\r\n ...this.kendo.columns\r\n ]\r\n },\r\n areAllSelected () {\r\n return this.kendo.dataResult.data.findIndex(item => item.selected === false) === -1\r\n },\r\n hasSelected () {\r\n return this.selected.length > 0\r\n },\r\n role: function () {\r\n return this.$store.getters['auth/role']\r\n }\r\n },\r\n watch: {\r\n headerCoreFilters: {\r\n // immediate: true,\r\n deep: true,\r\n handler: 'headerCoreFiltersHandler'\r\n },\r\n data (val, oldVal) {\r\n const dataState = {\r\n skip: this.kendo.skip,\r\n take: this.kendo.take,\r\n sort: this.kendo.sort,\r\n group: this.kendo.group\r\n }\r\n this.kendo.dataResult = process(val, dataState)\r\n }\r\n },\r\n created: function () {\r\n // console.log('created: ')\r\n },\r\n mounted: async function () {\r\n // console.log('mounted: ')\r\n // console.log('Route params:')\r\n // console.log(this.$route.params)\r\n const clientId = this.$route.params.id\r\n\r\n // this.$store.commit(this.vuexnamespace + '/setCurrentPage', 1)\r\n // this.$store.commit(this.vuexnamespace + '/resetMasterFilters')\r\n this.$store.commit(this.vuexnamespace + '/setPageSize', this.kendo.take)\r\n\r\n const breadcrumbs = []\r\n breadcrumbs.push({\r\n path: this.role === 'SuperAdministrador' ? 'configurationssa' : 'configurations',\r\n name: this.$i18n.t('app.configurations')\r\n })\r\n breadcrumbs.push({\r\n path: 'configurations/clients',\r\n name: this.$i18n.t('app.clients')\r\n })\r\n if (this.$store.getters['app/fromRouteName'] !== null) {\r\n const breadcrumbHeader = this.$store.getters['app/headerBreadCrumb']\r\n breadcrumbs.push({ path: '', name: breadcrumbHeader })\r\n } else {\r\n const cliente = await this.downloadData(clientId)\r\n breadcrumbs.push({ path: '', name: cliente.Cliente.Nombre })\r\n this.$store.commit('app/setheaderBreadCrumb', cliente.Cliente.Nombre)\r\n }\r\n this.header.breadcrumb = breadcrumbs\r\n\r\n this.applyFilters()\r\n },\r\n methods: {\r\n openPath: function (event) {\r\n // console.log('Ir a registro con ID: ', event.dataItem.id)\r\n // this.$router.push({ name: 'configurations/tags/details', params: { id: event.dataItem.IdUsuario } })\r\n },\r\n toggleFilters: function () {\r\n this.filterPanel = !this.filterPanel\r\n },\r\n removeFilterTag: function (tag) {\r\n this.tags.splice(this.tags.indexOf(tag), 1)\r\n },\r\n createAppState: function (dataState) {\r\n this.kendo.take = dataState.take\r\n this.kendo.skip = dataState.skip\r\n if (dataState.group) {\r\n // eslint-disable-next-line no-return-assign\r\n dataState.group.map(group => group.aggregates = this.aggregates)\r\n }\r\n this.kendo.group = dataState.group\r\n this.kendo.filter = dataState.filter\r\n this.kendo.sort = dataState.sort\r\n },\r\n dataStateChange: async function (event) {\r\n this.createAppState(event.data)\r\n this.data = await this.applyFilters()\r\n },\r\n columnReorder: function (options) { \r\n this.sendUpdatedColumns(options.columns)\r\n this.kendo.columns.forEach((column, index) => {\r\n if (options.columns.filter(x => x.field === column.field).length === 0) {\r\n column.orderIndex = index + this.kendo.columns.length\r\n options.columns.push(column)\r\n }\r\n })\r\n this.kendo.columns = options.columns\r\n },\r\n exportExcel: async function () {\r\n this.$store.commit('app/setLoading', true)\r\n this.loadingExcel = true\r\n const data = this.$store.getters[this.vuexnamespace + '/getAppliedFilters']\r\n const params = {\r\n idCliente: this.$route.params.id,\r\n evento: data.evento ? data.evento.value : null,\r\n mensaje: data.mensaje ? data.mensaje.value : null,\r\n fechaDesde: data.fechaDesde ? data.fechaDesde.value : null,\r\n fechaHasta: data.fechaHasta ? data.fechaHasta.value : null\r\n }\r\n const objOrder = this.getObjOrderMixin(this.kendo.group, this.kendo.sort)\r\n const objColumnas = this.getColumnsGroupExcelMixin(this.kendo.columns, this.kendo.group)\r\n const payload = { order: objOrder.order, grupos: objColumnas }\r\n if (this.hasSelected) {\r\n const selectedIDs = this.selected.map(x => x.idevento)\r\n payload.listaIDs = selectedIDs\r\n }\r\n try {\r\n const response = await getHistoricalByClientExcel(payload, params)\r\n const blob = new Blob([response.data], { type: response.data.type, encoding: 'UTF-8' })\r\n const link = document.createElement('a')\r\n link.href = window.URL.createObjectURL(blob)\r\n let filename = 'cliente-historico.xlsx'\r\n filename = decodeURI(filename)\r\n link.download = filename\r\n link.click()\r\n } catch (error) {\r\n console.error(error)\r\n if (error.response?.data) {\r\n const errorText = await error.response.data.text()\r\n this.doFeedback(errorText)\r\n } else {\r\n this.doFeedback()\r\n }\r\n } finally {\r\n this.$store.commit('app/setLoading', false)\r\n this.loadingExcel = false\r\n }\r\n },\r\n onColumnsSubmit: function (columnsState) {\r\n this.sendUpdatedColumns(columnsState)\r\n this.kendo.columns = columnsState\r\n },\r\n sortChange: function (e) {\r\n // console.log('sortChange => sort', e)\r\n let sort = e.sort\r\n if (Array.isArray(e)) {\r\n sort = e\r\n }\r\n const dataState = {\r\n skip: this.kendo.skip,\r\n take: this.kendo.take,\r\n sort: sort,\r\n group: this.kendo.group,\r\n filter: this.kendo.filter\r\n }\r\n this.dataStateChange({ data: dataState })\r\n },\r\n filterChange: function (filter) {\r\n const dataState = {\r\n skip: this.kendo.skip,\r\n take: this.kendo.take,\r\n sort: this.kendo.sort,\r\n group: this.kendo.group,\r\n filter: filter\r\n }\r\n\r\n this.dataStateChange({ data: dataState })\r\n },\r\n applyFilters: async function (eventData) {\r\n this.loadingDataTable = true\r\n const data = this.$store.getters[this.vuexnamespace + '/getAppliedFilters']\r\n // console.log('applyFilters', data)\r\n const params = {\r\n idCliente: this.$route.params.id,\r\n evento: data.evento ? data.evento.value : null,\r\n mensaje: data.mensaje ? data.mensaje.value : null,\r\n fechaDesde: data.fechaDesde ? data.fechaDesde.value : null,\r\n fechaHasta: data.fechaHasta ? data.fechaHasta.value : null\r\n }\r\n const objOrder = this.getObjOrderMixin(this.kendo.group, this.kendo.sort)\r\n try {\r\n this.data = await this.getItemsData(objOrder, params)\r\n } catch (error) {\r\n // console.log('error', error)\r\n this.$store.commit('setIsLoading', false)\r\n this.doFeedback()\r\n }\r\n return this.data\r\n },\r\n getItemsData: async function (orders, filters) {\r\n this.$store.commit('setAjaxRequestPending', true)\r\n this.$store.commit('setIsLoading', true)\r\n const params = {\r\n paginate: true,\r\n results: this.pagination.pageSize,\r\n page: this.pagination.currentPage,\r\n ...filters\r\n }\r\n const res = await this.getMainData(orders, params)\r\n this.data = res.listaEventos\r\n const pagination = {\r\n total: res.meta?.total,\r\n currentPage: res.meta?.currentPage,\r\n totalPages: res.meta?.lastPage,\r\n pageSize: res.meta?.perPage\r\n }\r\n this.$store.commit(this.vuexnamespace + '/setPaginationInfo', pagination)\r\n this.$store.commit('setIsLoading', false)\r\n this.loadingDataTable = false\r\n return this.data\r\n },\r\n async getMainData (orders, filters) {\r\n const params = {\r\n paginate: true,\r\n results: this.pagination.pageSize,\r\n page: this.pagination.currentPage,\r\n ...filters\r\n }\r\n const data = await getHistoricalByClient(orders, params)\r\n if (data.blnError === true) {\r\n this.doFeedback(data.msgError + ' [' + data.codError + ']')\r\n }\r\n if (data !== null && data.listaEventos !== null && data.listaEventos !== undefined) {\r\n data.listaEventos.forEach(o => {\r\n o.evento = o.evento.replaceAll('_', ' ')\r\n o.mensaje = o.mensaje.replaceAll('_', ' ')\r\n })\r\n }\r\n return data\r\n },\r\n applyFiltersHandler: async function (eventData) {\r\n this.$store.commit(this.vuexnamespace + '/setCurrentPage', 1)\r\n this.data = await this.applyFilters(eventData)\r\n },\r\n changeCurrentPage: async function (event) {\r\n this.$store.commit(this.vuexnamespace + '/setCurrentPage', event)\r\n this.data = await this.applyFilters(null)\r\n },\r\n changePerPage: async function (event) {\r\n this.$store.commit(this.vuexnamespace + '/setCurrentPage', 1)\r\n this.$store.commit(this.vuexnamespace + '/setPageSize', event)\r\n this.kendo.take = event\r\n this.data = await this.applyFilters(null)\r\n },\r\n removeFilterTagHanlder: function (tag) {\r\n // this.$store.commit(this.vuexnamespace + '/removeTag', tag)\r\n this.$store.commit(this.vuexnamespace + '/setCurrentPage', 1)\r\n const filter = this.$store.getters[this.vuexnamespace + '/getAppliedFilters']\r\n delete filter[tag[0]]\r\n this.$store.commit(this.vuexnamespace + '/setMasterFilters', filter)\r\n this.applyFiltersHandler(null)\r\n },\r\n headerCoreFiltersHandler: function (obs) {\r\n if (this.isHeadCoreReady) {\r\n this.applyFilters(null)\r\n }\r\n },\r\n removeAllTagsHandler: function () {\r\n this.$store.commit(this.vuexnamespace + '/setCurrentPage', 1)\r\n this.$store.commit(this.vuexnamespace + '/resetMasterFilters')\r\n this.applyFiltersHandler(null)\r\n },\r\n tableSortByChangeHandler: function ({ prop, order }) {\r\n this.$store.commit(this.vuexnamespace + '/setSort', prop)\r\n this.$store.commit(this.vuexnamespace + '/setSortOrder', order)\r\n this.$store.commit(this.vuexnamespace + '/setCurrentPage', 1)\r\n this.applyFilters(null)\r\n },\r\n downloadData: async function (id) {\r\n let client = null\r\n try {\r\n this.$store.commit('setIsLoading', true)\r\n const params = {\r\n idCliente: id\r\n }\r\n client = await getClient(params)\r\n if (client.blnError === true) {\r\n this.doFeedback(client.msgError + ' [' + client.codError + ']')\r\n }\r\n } catch (error) {\r\n this.doFeedback()\r\n } finally {\r\n this.$store.commit('setIsLoading', false)\r\n }\r\n return client\r\n },\r\n toggleSearchesDialog: function () {\r\n this.searchesPanel = !this.searchesPanel\r\n },\r\n saveTagsHandler: function () {\r\n this.saveSearchDialog = !this.saveSearchDialog\r\n },\r\n toggleDialogSearches: function () {\r\n this.saveSearchDialog = !this.saveSearchDialog\r\n },\r\n applySearchHandler: async function () {\r\n this.toggleDialogSearches()\r\n // Manda actualizar lista de búsquedas\r\n this.$refs.filterPanelSearches.updateData()\r\n },\r\n updateNumberSearches: async function (number) {\r\n this.numberSearches = number\r\n },\r\n }\r\n}\r\n</script>\r\n\r\n<style lang=\"scss\" scoped></style>\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ClientHistorical.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ClientHistorical.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ClientHistorical.vue?vue&type=template&id=6472771b&scoped=true\"\nimport script from \"./ClientHistorical.vue?vue&type=script&lang=js\"\nexport * from \"./ClientHistorical.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"6472771b\",\n null\n \n)\n\nexport default component.exports","import axiosInstance from '@/services/axiosInstance'\r\nimport mock from '@/services/mock/index'\r\n\r\nasync function getHistoricalEvents (params = null) {\r\n if (process.env.VUE_APP_ENVIRONMENT === 'test') {\r\n return new Promise((resolve, reject) => {\r\n setTimeout(() => {\r\n resolve(mock.getLanguages.data)\r\n }, 500)\r\n })\r\n } else {\r\n const req = {\r\n url: '/api/historico/gethistoricotipos',\r\n method: 'POST',\r\n headers: {\r\n 'Content-type': 'application/json',\r\n 'access-control-allow-origin': '*'\r\n },\r\n params\r\n }\r\n const res = await axiosInstance(req)\r\n return res.data\r\n }\r\n}\r\n\r\nexport { getHistoricalEvents }\r\n"],"sourceRoot":""}