{"version":3,"sources":["webpack:///./src/services/genericGETJson.js","webpack:///./src/services/configurations/getProducto.js","webpack:///./src/views/historical/TrashProductHistorical.vue?d97e","webpack:///./src/components/filters/trash/HistoricalProductsFilter.vue?f6d0","webpack:///src/components/filters/trash/HistoricalProductsFilter.vue","webpack:///./src/components/filters/trash/HistoricalProductsFilter.vue?46a4","webpack:///./src/components/filters/trash/HistoricalProductsFilter.vue","webpack:///src/views/historical/TrashProductHistorical.vue","webpack:///./src/views/historical/TrashProductHistorical.vue?8ce3","webpack:///./src/views/historical/TrashProductHistorical.vue","webpack:///./src/services/historical/getHistoricalByProductExcel.js","webpack:///./src/services/historical/getHistoricalByProduct.js","webpack:///./src/services/historical/getHistoricalEvents.js"],"names":["async","genericGETJson","url","data","params","req","method","headers","res","axiosInstance","getProducto","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","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","idProducto","order","grupos","payload","encoding","link","filename","console","filter","getItemsData","paginate","results","page","totalPages","o","headerCoreFiltersHandler","tableSortByChangeHandler","prop","downloadData","borrado","getHistoricalByProductExcel","responseType","response","getHistoricalByProduct","getHistoricalEvents"],"mappings":"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A,CACArB,SACAqB,2BAGAb,uBAGAe,yBACA,SAAAC,kBACA,2BACA,gBACA,gDAEA,yBACA1F,2BACA,6BAAAkE,QAAAqB,iCAIAI,OACAxB,MACAyB,QACAC,aACAC,4BAEAnC,WACAmC,6BAGAC,SACAC,6BACA,oEACA,IACA,iBACA,qEACA,yEACA,qFACA,uFAKAC,sCAAA7B,aAAAK,SAAAE,SACA,oCACA,wEAEA,mCAGA,oCACA,wEAEA,+BAGAf,uBACA,yBAEA,2BAEAsC,qBACA,WACAvB,QAAAY,oCAAArB,UACAU,SAAAW,kCAAArB,UACAE,YAAAmB,wCAAArB,UACAO,YAAAc,wCAAArB,YAGAc,wBACA,qEACA,8BACA,yBACA,iBACA,6BC9L+X,I,YCO3XmB,EAAY,eACd,EACA,EACA,GACA,EACA,KACA,WACA,MAIa,EAAAA,E,wGC4DA,GACflB,mCACAmB,YACAC,kBACAC,cACAC,2BACAC,0BACAC,2BAEAzG,gBACA,OACAkD,WAEAD,iBACAE,oBACAK,iBAEAX,gBACAZ,WACAf,QACAwF,qCACAC,cACAC,gBACA7G,8BAEAwD,wCACAlB,yBACAU,eACA8D,eACAC,oBACAC,aACA/G,UACAgH,cAGAC,UACArE,yBACA,4EACA,kCAEAV,iBACA,4DAEAgF,2BACA,4CAEAlG,4BACA,+BAEAmG,wBACA,6BAEAC,qBACA,8BAEAC,2BACA,0DAEAC,yBACA,oEAEAlF,4BACA,sCAEAmF,6BACA,iDAEA1F,gBACA,2DAEAV,sBACA,qEAEAqG,UACA,OACA,CAAAC,iBAAAC,aAAAC,yCAAAC,eAAAC,iBACA,qBAGAC,iBACA,qEAEAC,cACA,+BAEAC,gBACA,0CAGArC,OACA4B,mBAEA3B,QACAE,oCAEA9F,UACA,SACAiI,qBACAC,qBACAC,qBACAC,wBAEA,4CAGAC,qBAGA5C,yBACA,8BACA,sEAEA,WACA6C,QAAAC,sBAAAtD,iCACAqD,QAAAC,sBAAAtD,sCAEA,mCACA,yCACAqD,QAAAC,QAAAtD,SACA,gDACA,yBAEA,qBAEAc,SACAvD,uBAIAZ,yBACA,oCAEA4G,4BACA,0CAEAC,2BACA,uBACA,uBACA,SAEAC,6CAEA,yBACA,2BACA,wBAEApG,kCACA,4BACA,qCAEAC,0BACA,mCACA,mCACA,oDACAoG,yCACAC,qBAGA,8BAEA9F,6BACA,wCACA,qBACA,qEACA,GACA+F,iCACAlE,oCACAC,uCACAR,gDACAK,iDAEA,0DACA,sEACA,GAAAqE,cAAAC,UACA,qBACA,yCACAC,aAEA,IACA,kCACA,qBAAA7D,iBAAA8D,mBACA,8BACAC,qCACA,gCACAC,eACAD,aACAA,UACA,eAEA,GADAE,iBACA,2CACA,qCACA,wBAEA,kBAEA,QACA,wCACA,uBAGA3G,4BACA,2BACA,sBAEAC,uBAEA,aACA,mBACAyF,KAEA,SACAF,qBACAC,qBACAC,OACAC,uBACAiB,0BAEA,sBAAArJ,UAEA2C,yBACA,SACAsF,qBACAC,qBACAC,qBACAC,uBACAiB,UAGA,sBAAArJ,UAEAgF,+BACA,yBACA,qEAEA,GACA6D,iCACAlE,oCACAC,uCACAR,gDACAK,iDAEA,0DACA,IACA,uCACA,SAEA,sCACA,2DAEA,kBAEA6E,iCAAA,YACA,+CACA,sCACA,SACAC,YACAC,iCACAC,oCACA,GAEA,8BACA,yBACA,SACArI,mDACAC,+DACAqI,2DACApI,yDAKA,OAHA,8DACA,sCACA,yBACA,WAEA,uBACA,SACAiI,YACAC,iCACAC,oCACA,GAEA,4BAUA,OATA,gBACA,gDAEA,0DACAzJ,2BACA2J,sCACAA,0CAGA,GAEA3G,sCACA,2DACA,sCAEAxB,oCACA,2DACA,yCAEAC,gCACA,2DACA,wDACA,kBACA,yCAEAK,mCAEA,2DACA,4EACA,QACA,6DACA,gCAEA8H,qCACA,sBACA,yBAGA7H,gCACA,2DACA,6DACA,gCAEA8H,wCAAAC,QAAAhB,IACA,oDACA,yDACA,2DACA,yBAEAiB,+BACA,WACA,IACA,sCACA,SACAlB,aACAmB,YAEA3J,2BACA,eACA,gDAEAA,cAEA,SACA,kBACA,QACA,sCAEA,UAEAsB,gCACA,wCAEAK,2BACA,8CAEAoB,gCACA,8CAEAC,oCACA,4BAEA,6CAEAI,uCACA,yBC5b8W,ICO1W,EAAY,eACd,EACAjD,EACAkD,GACA,EACA,KACA,WACA,MAIa,e,2CClBf,4DAGA7D,eAAeoK,EAA6BnB,EAAQ,GAAI7I,EAAS,MAOxD,CACL,MAAMC,EAAM,CACVH,IAAK,2CACLI,OAAQ,OACRC,QAAS,CACP,eAAgB,mBAChB,8BAA+B,KAEjC8J,aAAc,OACdlK,KAAM8I,EACN7I,UAEII,QAAYC,eAAcJ,GAC1BiK,EAAW,CACfnK,KAAMK,EAAIL,KACVI,QAASC,EAAID,SAEf,OAAO+J,K,oCC3BX,4DAGAtK,eAAeuK,EAAwBtB,EAAQ,GAAI7I,EAAS,MAOnD,CACL,MAAMC,EAAM,CACVH,IAAK,sCACLI,OAAQ,OACRC,QAAS,CACP,eAAgB,mBAChB,8BAA+B,KAEjCJ,KAAM8I,EACN7I,UAEII,QAAYC,eAAcJ,GAChC,OAAOG,EAAIL,Q,kCCtBf,4DAGAH,eAAewK,EAAqBpK,EAAS,MAOpC,CACL,MAAMC,EAAM,CACVH,IAAK,mCACLI,OAAQ,OACRC,QAAS,CACP,eAAgB,mBAChB,8BAA+B,KAEjCH,UAEII,QAAYC,eAAcJ,GAChC,OAAOG,EAAIL","file":"js/chunk-aa6ce01c.v.6.0.0.1743755007948.js","sourcesContent":["import axiosInstance from '@/services/axiosInstance'\r\nimport mock from '@/services/mock/index'\r\n\r\nasync function genericGETJson (url = '', data = {}, 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 clone.data = clone.data.slice(0, params.limit)\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,\r\n method: 'GET',\r\n headers: {\r\n 'Content-type': 'application/json',\r\n 'access-control-allow-origin': '*'\r\n },\r\n data,\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 { genericGETJson }\r\n","import { genericGETJson } from '@/services/genericGETJson'\r\n\r\nasync function getProducto (params = null) {\r\n return await genericGETJson(\r\n '/api/productos/getproductodetalle',\r\n null,\r\n params\r\n )\r\n}\r\n\r\nexport { getProducto }\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:{\"type\":\"date\",\"picker-options\":_vm.dateRangeOptions,\"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:{\"type\":\"date\",\"picker-options\":_vm.dateRangeOptions,\"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 type=\"date\"\r\n :picker-options=\"dateRangeOptions\"\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 type=\"date\"\r\n :picker-options=\"dateRangeOptions\"\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: 'trashHistoricalProducts',\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: 'productos' }\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!./HistoricalProductsFilter.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!./HistoricalProductsFilter.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./HistoricalProductsFilter.vue?vue&type=template&id=6e015d3e&scoped=true\"\nimport script from \"./HistoricalProductsFilter.vue?vue&type=script&lang=js\"\nexport * from \"./HistoricalProductsFilter.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 \"6e015d3e\",\n null\n \n)\n\nexport default component.exports","<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/trash/HistoricalProductsFilter.vue'\r\nimport FilterPanelSearches from '@/components/searches/SearchesPanel.vue'\r\nimport CreateSearchDialog from '@/components/searches/CreateSearchDialog.vue'\r\nimport { i18n } from '@/i18n'\r\n\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\n\r\nimport { getProducto } from '@/services/configurations/getProducto'\r\nimport { getHistoricalByProduct } from '@/services/historical/getHistoricalByProduct'\r\nimport { getHistoricalByProductExcel } from '@/services/historical/getHistoricalByProductExcel'\r\n\r\n// import moment from 'moment'\r\n\r\nexport default {\r\n name: 'papelera-product-historical',\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: 70,\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: 'trash/products/details'\r\n },\r\n vuexnamespace: 'trashHistoricalProducts',\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 const entityId = this.$route.params.id\r\n this.$store.commit(this.vuexnamespace + '/setPageSize', this.kendo.take)\r\n\r\n const breadcrumbs = []\r\n breadcrumbs.push({ path: 'trash/products', name: this.$i18n.t('app.trash') })\r\n breadcrumbs.push({ path: 'trash/products', name: this.$i18n.t('trash.products') })\r\n\r\n const res = await this.downloadData(entityId)\r\n const truncName = this.truncate(res.ItemDescription, 30, false)\r\n breadcrumbs.push({ path: '', name: truncName })\r\n this.$store.commit('app/setheaderBreadCrumb', truncName)\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 idProducto: 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 getHistoricalByProductExcel(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 = 'producto-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 idProducto: 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(this.$i18n.t('feedback.error.general ' + error))\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 getHistoricalByProduct(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 res = null\r\n try {\r\n this.$store.commit('setIsLoading', true)\r\n const params = {\r\n idProducto: id,\r\n borrado: true,\r\n }\r\n res = await getProducto(params)\r\n if (res.blnError === true) {\r\n this.doFeedback(res.msgError + ' [' + res.codError + ']')\r\n } else {\r\n res = res.Respuesta\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 res\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!./TrashProductHistorical.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!./TrashProductHistorical.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./TrashProductHistorical.vue?vue&type=template&id=5fa02f7b&scoped=true\"\nimport script from \"./TrashProductHistorical.vue?vue&type=script&lang=js\"\nexport * from \"./TrashProductHistorical.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 \"5fa02f7b\",\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 getHistoricalByProductExcel (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/getproductohistoricoexcel',\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 { getHistoricalByProductExcel }\r\n","import axiosInstance from '@/services/axiosInstance'\r\nimport mock from '@/services/mock/index'\r\n\r\nasync function getHistoricalByProduct (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/getproductohistorico',\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 { getHistoricalByProduct }\r\n","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":""}