\r\n \r\n \r\n Postal\r\n \r\n \r\n Fiscal\r\n \r\n \r\n De servicio\r\n \r\n
\r\n\r\n\r\n\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!./ExtraSubtitle.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!./ExtraSubtitle.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ExtraSubtitle.vue?vue&type=template&id=5a04b0d0&\"\nimport script from \"./ExtraSubtitle.vue?vue&type=script&lang=js&\"\nexport * from \"./ExtraSubtitle.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 null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VChip } from 'vuetify/lib/components/VChip';\ninstallComponents(component, {VChip})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('b10-base',[_c('b10-list',{attrs:{\"title\":_vm.title,\"page-store-name\":_vm.pageStoreName,\"items\":_vm.items,\"filter\":_vm.filter,\"search\":_vm.search,\"sorter\":_vm.sorter,\"sorter-desc\":_vm.sorterDesc,\"show-load-more\":_vm.showLoadMore,\"scroll-position\":_vm.scrollPosition,\"empty-message\":\"No se encontraron direcciones\",\"wrapper-component\":\"v-list\",\"wrapper-component-props\":{ 'three-line': true },\"loading\":_vm.loadingData,\"showing-filter\":_vm.showingDialogs.filter,\"showing-sorter\":_vm.showingDialogs.sorter,\"load\":_vm.loadItems,\"reload-dirty-items\":_vm.reloadDirtyItems,\"page-loaded\":_vm.pageLoaded,\"pk-name\":\"idcliente_direccion\"},on:{\"update:showingFilter\":function($event){return _vm.$set(_vm.showingDialogs, \"filter\", $event)},\"update:showing-filter\":function($event){return _vm.$set(_vm.showingDialogs, \"filter\", $event)},\"update:showingSorter\":function($event){return _vm.$set(_vm.showingDialogs, \"sorter\", $event)},\"update:showing-sorter\":function($event){return _vm.$set(_vm.showingDialogs, \"sorter\", $event)},\"click-item\":_vm.clickListItem},scopedSlots:_vm._u([{key:\"listItem\",fn:function(slotProps){return [_c('cliente-direccion-list-item',{attrs:{\"item\":slotProps.item,\"index\":slotProps.index,\"has-perm-borrar\":_vm.hasDeletePerm(_vm.permisoUtilizado)},on:{\"click-delete\":_vm.clickDelete}})]}}])}),(_vm.hasInsertPerm(_vm.permisoUtilizado))?_c('b10-fab-button',{on:{\"click\":_vm.clickAdd}}):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { APIFilter, API_FILTER_OPERATORS } from '@/utils/api'\r\nimport _ from '@/utils/lodash'\r\n\r\nexport default {\r\n search (apiFilter, search) {\r\n if (search) {\r\n const apiFilterSearch = new APIFilter()\r\n apiFilterSearch\r\n .setOperator(API_FILTER_OPERATORS.OR)\r\n .addILike('calle', search)\r\n .addILike('num', search)\r\n .addILike('cp', search)\r\n .addILike('localidad', search)\r\n .addILike('provincia', search)\r\n .addILike('tvia_descripcion', search)\r\n apiFilter.addNestedFilter(apiFilterSearch)\r\n }\r\n },\r\n async selectClienteDireccion (Vue, filter, search, sorter, page, idcliente, idclientePotencial) {\r\n let apiCalls = []\r\n const apiFilter = new APIFilter()\r\n const apiFilterRelacionado = new APIFilter()\r\n apiFilterRelacionado.addGT('estado', 0)\r\n if (idclientePotencial) {\r\n apiFilterRelacionado.addExact('idcliente_potencial', idclientePotencial)\r\n apiFilter.addExact('idcliente_potencial', idclientePotencial)\r\n apiCalls.push({ name: 'selectDatasetRelacionado', method: 'clientePotencial.select', params: { filter: apiFilterRelacionado } })\r\n } else {\r\n apiFilterRelacionado.addExact('idcliente', idcliente)\r\n apiFilter.addExact('idcliente', idcliente)\r\n apiCalls.push({ name: 'selectDatasetRelacionado', method: 'cliente.select', params: {filter: apiFilterRelacionado } })\r\n }\r\n apiFilter.addGT('estado', 0)\r\n this.search(apiFilter, search)\r\n apiCalls.push({\r\n name: 'selectClienteDireccion',\r\n method: 'clienteDireccion.select',\r\n params: {\r\n filter: apiFilter,\r\n page,\r\n sorter,\r\n }\r\n })\r\n const result = await Vue.$api.batchCall(apiCalls)\r\n const datasetClienteDireccion = result.data.selectClienteDireccion.result.dataset\r\n const [datasetRelacionado] = result.data.selectDatasetRelacionado.result.dataset\r\n if (datasetRelacionado && datasetClienteDireccion) {\r\n // solo el cliente potencial tiene dirección de servicio\r\n if (idclientePotencial) {\r\n const indexDireccionServicio = _.findIndex(\r\n datasetClienteDireccion, {\r\n idcliente_direccion: datasetRelacionado.idcliente_direccion_servicio\r\n }\r\n )\r\n // findIndex devuelve -1 si no lo encuentra\r\n if (indexDireccionServicio >= 0) {\r\n result.data.selectClienteDireccion.result.dataset[indexDireccionServicio].servicio = true\r\n }\r\n }\r\n const indexDireccionFiscal = _.findIndex(\r\n datasetClienteDireccion, {\r\n idcliente_direccion: datasetRelacionado.idcliente_direccion\r\n }\r\n )\r\n if (indexDireccionFiscal >= 0) {\r\n result.data.selectClienteDireccion.result.dataset[indexDireccionFiscal].fiscal = true\r\n }\r\n const indexDireccionPostal = _.findIndex(\r\n datasetClienteDireccion, {\r\n idcliente_direccion: datasetRelacionado.idcliente_direccion_postal\r\n }\r\n )\r\n if (indexDireccionPostal >= 0) {\r\n result.data.selectClienteDireccion.result.dataset[indexDireccionPostal].postal = true\r\n }\r\n }\r\n return [result.data.selectClienteDireccion.result.dataset, result.data.selectClienteDireccion.result.metadata]\r\n },\r\n async selectClienteDireccionRows (Vue, pks) {\r\n const apiFilter = new APIFilter()\r\n apiFilter.addIn('idcliente_direccion', pks)\r\n const resp = await Vue.$api.call('clienteDireccion.select', { filter: apiFilter })\r\n return [resp.data.result.dataset, resp.data.result.metadata]\r\n },\r\n async deleteClienteDireccion (Vue, idclienteDireccion) {\r\n await Vue.$api.call('clienteDireccion.delete', { idcliente_direccion: idclienteDireccion })\r\n },\r\n}\r\n","