{"version":3,"sources":["webpack:///./src/pages/contactosCliente/components/ContactoClienteForm.vue?195a","webpack:///./src/pages/contactosCliente/components/ContactoClienteFormData.js","webpack:///src/pages/contactosCliente/components/ContactoClienteForm.vue","webpack:///./src/pages/contactosCliente/components/ContactoClienteForm.vue?3116","webpack:///./src/pages/contactosCliente/components/ContactoClienteForm.vue","webpack:///./src/mixins/formMixin.js"],"names":["render","_vm","this","_h","$createElement","_c","_self","attrs","formRules","descripcion","scopedSlots","_u","key","fn","ref","errors","model","value","form","callback","$$v","$set","expression","fcontacto","idtcontacto","tipoContacto","idcanal_comunicacion","canalComunicacion","staticRenderFns","selectLookups","Vue","apiCalls","apiFilterEstadoActivo","APIFilter","addGT","push","name","method","params","filter","$api","batchCall","selectFormData","id","apiFilter","addExact","call","resp","data","result","dataset","mixins","observaciones","required","created","Data","methods","loadFormData","formData","component","VTextField","props","type","Number","String","computed","isInsert","isEdit","watch","newValue","setFormRule","fieldname","rule","createMaxOracleNumberFormRules","precision","createMaxFormRules","size","createRequiredFormRules","emitChangeValues","$emit","loadForm","$watch","deep","addFormRulesAPI","columns","column","API_RESULT_DATATYPES","string","v","length","addFormRulesVeeValidateAPI","max"],"mappings":"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","file":"js/chunk-0f89fdfe.599e18c0.js","sourcesContent":["var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('b10-base',[_c('ValidationProvider',{attrs:{\"name\":\"descripcion\",\"rules\":_vm.formRules.descripcion},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar errors = ref.errors;\nreturn [_c('v-text-field',{attrs:{\"clearable\":\"\",\"flat\":\"\",\"label\":\"Descripción\",\"error-messages\":errors},model:{value:(_vm.form.descripcion),callback:function ($$v) {_vm.$set(_vm.form, \"descripcion\", $$v)},expression:\"form.descripcion\"}})]}}])}),_c('ValidationProvider',{attrs:{\"name\":\"fcontacto\",\"rules\":_vm.formRules.fcontacto},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar errors = ref.errors;\nreturn [_c('b10-date-time-picker',{attrs:{\"title\":\"Fecha\",\"error-messages\":errors},model:{value:(_vm.form.fcontacto),callback:function ($$v) {_vm.$set(_vm.form, \"fcontacto\", $$v)},expression:\"form.fcontacto\"}})]}}])}),_c('ValidationProvider',{attrs:{\"name\":\"tcontacto\",\"rules\":_vm.formRules.idtcontacto},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar errors = ref.errors;\nreturn [_c('b10-autocomplete',{attrs:{\"items\":_vm.tipoContacto,\"item-value\":\"idtcontacto\",\"item-text\":\"descripcion\",\"label\":\"Tipo de contacto\",\"clearable\":\"\",\"error-messages\":errors},model:{value:(_vm.form.idtcontacto),callback:function ($$v) {_vm.$set(_vm.form, \"idtcontacto\", $$v)},expression:\"form.idtcontacto\"}})]}}])}),_c('ValidationProvider',{attrs:{\"name\":\"canal_comunicacion\",\"rules\":_vm.formRules.idcanal_comunicacion},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar errors = ref.errors;\nreturn [_c('b10-autocomplete',{attrs:{\"items\":_vm.canalComunicacion,\"item-value\":\"idcanal_comunicacion\",\"item-text\":\"descripcion\",\"label\":\"Canal de comunicación\",\"clearable\":\"\",\"error-messages\":errors},model:{value:(_vm.form.idcanal_comunicacion),callback:function ($$v) {_vm.$set(_vm.form, \"idcanal_comunicacion\", $$v)},expression:\"form.idcanal_comunicacion\"}})]}}])}),_c('b10-textarea',{attrs:{\"label\":\"Observaciones\"},model:{value:(_vm.form.observaciones),callback:function ($$v) {_vm.$set(_vm.form, \"observaciones\", $$v)},expression:\"form.observaciones\"}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { APIFilter } from '@/utils/api'\r\n\r\nexport default {\r\n async selectLookups (Vue) {\r\n let apiCalls = []\r\n const apiFilterEstadoActivo = new APIFilter()\r\n apiFilterEstadoActivo.addGT('estado', 0)\r\n apiCalls.push({ name: 'selectTcontacto', method: 'tcontacto.select', params: { filter: apiFilterEstadoActivo } })\r\n apiCalls.push({ name: 'selectCanalComunicacion', method: 'canalComunicacion.select', params: { filter: apiFilterEstadoActivo } })\r\n return await Vue.$api.batchCall(apiCalls)\r\n },\r\n async selectFormData (Vue, id) {\r\n const apiFilter = new APIFilter()\r\n apiFilter\r\n .addExact('idcontacto_cliente', id)\r\n const resp = await Vue.$api.call('contactoCliente.select', { filter: apiFilter })\r\n return resp.data.result.dataset[0]\r\n },\r\n}","\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n","import 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!./ContactoClienteForm.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!./ContactoClienteForm.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ContactoClienteForm.vue?vue&type=template&id=779915ac&\"\nimport script from \"./ContactoClienteForm.vue?vue&type=script&lang=js&\"\nexport * from \"./ContactoClienteForm.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 { VTextField } from 'vuetify/lib/components/VTextField';\ninstallComponents(component, {VTextField})\n","import { API_RESULT_DATATYPES } from '@/utils/api'\r\n\r\nexport default {\r\n props: {\r\n id: {\r\n type: [Number, String],\r\n required: false\r\n },\r\n },\r\n computed: {\r\n isInsert () {\r\n if (this.id) {\r\n return false\r\n } else {\r\n return true\r\n }\r\n },\r\n isEdit () {\r\n if (this.id) {\r\n return true\r\n } else {\r\n return false\r\n }\r\n }\r\n },\r\n watch: {\r\n async id (newValue) {\r\n // loadFormData del form donde se aplica el mixin\r\n // cambia el ID del objeto que se esta editando\r\n await this.loadFormData(newValue)\r\n }\r\n },\r\n methods: {\r\n setFormRule(fieldname, rule, value) {\r\n if (!(fieldname in this.formRules)) {\r\n this.$set(this.formRules, fieldname, { [rule]: value });\r\n } else {\r\n this.$set(this.formRules[fieldname], rule, value);\r\n }\r\n },\r\n createMaxOracleNumberFormRules(fieldname, precision) {\r\n this.setFormRule(fieldname, 'oracleNumber', precision)\r\n },\r\n createMaxFormRules(fieldname, size) {\r\n this.setFormRule(fieldname, 'max', size);\r\n },\r\n createRequiredFormRules(fieldname) {\r\n this.setFormRule(fieldname, 'required', true)\r\n },\r\n emitChangeValues () {\r\n this.$emit('change-values', this.form)\r\n },\r\n async loadForm () {\r\n if (!this.isInsert) {\r\n // loadFormData del form donde se aplica el mixin\r\n await this.loadFormData(this.id)\r\n }\r\n this.emitChangeValues()\r\n this.$watch('form', this.emitChangeValues, { deep: true })\r\n },\r\n addFormRulesAPI (columns) {\r\n for (const column of columns) {\r\n // controlar longitud máxima para campos string\r\n if (column.type === API_RESULT_DATATYPES.string && column.name in this.form) {\r\n if (!(column.name in this.formRules)) {\r\n this.$set(this.formRules, column.name, [])\r\n }\r\n this.formRules[column.name].push(\r\n v => (v || '').length <= column.size || `La longitud máxima es de ${column.size} caracteres`,\r\n )\r\n }\r\n }\r\n },\r\n async addFormRulesVeeValidateAPI (columns) {\r\n // La variable columns es lo que devuelve la api como metadatos result.metadata.columns\r\n for (const column of columns) {\r\n // controlar longitud máxima para campos string\r\n if (column.type === API_RESULT_DATATYPES.string && column.name in this.form) {\r\n if (!(column.name in this.formRules)) {\r\n this.$set(this.formRules, column.name, { max: column.size})\r\n } else {\r\n this.$set(this.formRules[column.name], \"max\" , column.size)\r\n }\r\n }\r\n }\r\n },\r\n },\r\n}\r\n"],"sourceRoot":""}