{"version":3,"file":"company-CmwAlQBC.js","sources":["../../../app/frontend/entrypoints/apps/company.js"],"sourcesContent":["import vSelect from 'vue-select'\nimport 'vue-select/dist/vue-select.css';\nimport axios from \"axios\"\nimport { component as VueNumber } from '@coders-tm/vue-number-format'\nimport { directive as VNumber } from '@coders-tm/vue-number-format'\n//import { toRaw } from 'vue';\nimport { useToast } from 'vue-toast-notification';\nimport 'vue-toast-notification/dist/theme-bootstrap.css';\nimport \"admin-lte\"\nimport \"bootstrap\"\nimport \"jquery\"\n\nconst $toast = useToast();\nconst backend_data = window.backend_data\n\nexport const company_app = {\n mounted() {\n if (backend_data.action == \"new\") {\n axios.get(\"/companies/new.json\").then(res => {\n var load = res.data\n delete load.created_at\n delete load.update_at\n delete load.nid\n delete load._id\n delete load.programs\n delete load.source\n load.user_id = backend_data.user_id\n load.source = \"form_web\"\n this.company = load\n })\n }\n if (backend_data.action == 'edit'){\n let currentUrl = window.location.href;\n let jsonUrl = currentUrl.replace(\"/edit\", \"\") + \".json\";\n axios.get(jsonUrl).then(res => {\n console.log('llega asi el json', res.data);\n var load = res.data\n var load = res.data\n delete load.created_at\n delete load.update_at\n delete load.nid\n delete load.programs\n delete load.source\n load.source = \"form_web\"\n this.company = load\n console.log('lo que traigo es esto ',load);\n })\n }\n },\n data() {\n return {\n company: {\n nit: null,\n representante_legal: { id_type: null },\n representante_legal_suplente: { id_type: null },\n ingresos: { a2023:''},\n ciiu: [],\n intereses_estandares: [],\n certificacion_actual: null,\n pais_interes: ['municipio'],\n },\n intereses_list: backend_data.intereses,\n formas_adquisicion_list: backend_data.formas_adquisicion,\n encuentra_certificada: { si: \"Si\", no: \"No\", enproceso: \"En proceso\" },\n buscadores: { municipios: { data: { results: [] } }, ciiu: { data: { results: [] } }, paises: { data: { results: [] } } },\n cop_config: { decimal: ',', separator: '.', prefix: 'COP ' },\n accept_terms: false,\n errors: { representante_legal: {} },\n required_fields: ['tipo_ubicacion','tipo_persona','direccion','municipio','razon_social','nit','telefono_celular','user_rol','tamano','colaboradores','ingresos','sector','ciiu','ventas_mensuales','valor_total'],\n representante_legal_required_fields:['id_type','nid','nombres','apellidos','email','cellphone','birthdate','gender','educational_level']\n }\n },\n methods: {\n buscadorciudades: function (search, loading) {\n loading(true);\n axios.get(`/findcity/?term=${search}`).then(res => {\n this.buscadores.municipios = res;\n loading(false)\n });\n },\n buscadorciiu: function (search, loading) {\n loading(true);\n axios.get(`/findciiu/?term=${search}`).then(res => {\n this.buscadores.ciiu = res;\n loading(false)\n });\n },\n buscadorpaises: function (search, loading) {\n loading(true);\n axios.get(`/findcountry/?term=${search}`).then(res => {\n this.buscadores.paises = res;\n loading(false)\n });\n }, \n validate_form: function () {\n let valid = true\n\n this.errors = { representante_legal: {} };\n\n if (!this.company.razon_social) {\n this.errors.razon_social = \"Razon Social es requerido\";\n }\n\n if (!this.company.tipo_persona) {\n this.errors.tipo_persona = \"Tipo de persona es requerido\";\n }\n if (!this.company.ventas_mensuales) {\n this.errors.ventas_mensuales = \"las ventas_mensuales es requerido\";\n }\n if (!this.company.valor_total) {\n this.errors.valor_total = \"El valor total de los activos es requerido\";\n }\n if (!this.company.nit) {\n this.errors.nit = \"NIT es requerido\";\n }\n if (this.company.tipo_persona === 'juridica') {\n if (!/^[89]\\d{8}$/.test(this.company.nit)) {\n this.errors.nit = 'NIT debe tener 9 dígitos y empezar con 8 o 9 para persona jurídica.';\n }\n } else if (this.company.tipo_persona) { // Validar solo si hay un tipo de persona seleccionado\n if (![6, 7, 8, 9, 10].includes(this.company.nit.length)) {\n this.errors.nit = 'NIT debe tener 6, 7, 8, 9 o 10 dígitos para personas naturales.';\n }\n }\n if (!this.company.direccion) {\n this.errors.direccion = \"Dirección es requerido\";\n }\n if (!this.company.tipo_ubicacion) {\n this.errors.tipo_ubicacion = \"El tipo de ubicación es requerido\";\n }\n if (!this.company.municipio) {\n this.errors.municipio = \"EL municipio es requerido\";\n }\n if (!this.company.tamano) {\n this.errors.tamano = \"EL tamaño es requerido\";\n }\n if (!this.company.user_rol) {\n this.errors.user_rol = \"EL rol/cargo es requerido\";\n }\n if (this.company.ciiu.length == 0) {\n this.errors.ciiu = \"La/Las actividades CIIU son requeridas\";\n } \n if (!this.company.sector) {\n this.errors.sector = \"EL sector es requerido\";\n }\n const phonePattern = /^([0-9]{10}$)/\n\n if (!this.company.telefono_celular) {\n this.errors.telefono_celular = 'El número de celular es obligatorio.';\n valid = false;\n } else if (!phonePattern.test(this.company.telefono_celular)) {\n this.errors.telefono_celular = 'Número de celular inválido.';\n valid = false;\n }\n \n if (!this.company.representante_legal.cellphone) {\n this.errors.representante_legal = { ...this.errors.representante_legal, cellphone: \"El número de celular del Representante legal es obligatorio\" };\n valid = false;\n } else if (!phonePattern.test(this.company.representante_legal.cellphone)) {\n this.errors.representante_legal = { ...this.errors.representante_legal, cellphone: \"Número de celular inválido.\" };\n valid = false;\n }\n if (!this.company.ingresos.a2023) {\n this.errors.ingresos = \"Los ingresos son obligatorios\";\n valid = false;\n } \n if (!this.company.representante_legal.educational_level) {\n this.errors.representante_legal = { ...this.errors.representante_legal, educational_level: \"El nivel educativo es requerido\" };\n }\n if (!this.company.representante_legal.id_type) {\n this.errors.representante_legal = { ...this.errors.representante_legal, id_type: \"Tipo ID del Representante Legal es requerido\" };\n }\n if (!this.company.representante_legal.birthdate) {\n this.errors.representante_legal = { ...this.errors.representante_legal, birthdate: \"La fecha de nacimiento es obligatoria\" };\n } else {\n const isValidAge = this.validate_age(this.company.representante_legal.birthdate);\n if (!isValidAge) {\n this.errors.representante_legal.birthdate = \"El representante legal debe tener más de 18 años\";\n }\n }\n if (!this.company.representante_legal.gender) {\n this.errors.representante_legal = { ...this.errors.representante_legal, gender: \"El género es obligatorio\" };\n }\n if (!this.company.representante_legal.nid) {\n this.errors.representante_legal = { ...this.errors.representante_legal, nid: \"Numero de ID del Representante Legal es requerido\" };\n }\n if (!this.company.representante_legal.nombres) {\n this.errors.representante_legal = { ...this.errors.representante_legal, nombres: \"Nombres del Representante Legal es requerido\" };\n }\n if (!this.company.representante_legal.apellidos) {\n this.errors.representante_legal = { ...this.errors.representante_legal, apellidos: \"Apellidos del Representante Legal es requerido\" };\n }\n const emailPattern = /^[^\\s@]+@[^\\s@]+\\.[^\\s@]+$/;\n if (!this.company.representante_legal.email) {\n this.errors.representante_legal = { ...this.errors.representante_legal, email: \"El correo del Representante Legal es requerido\" };\n valid = false;\n } else if (!emailPattern.test(this.company.representante_legal.email)) {\n this.errors.representante_legal = { ...this.errors.representante_legal, email: \"Formato de correo electrónico inválido.\" };\n valid = false;\n }\n\n if (!this.company.colaboradores) {\n this.errors.colaboradores = 'El número de colaboradores es obligatorio.';\n valid = false;\n }\n if (Object.keys(this.errors).length > 1) {\n return false;\n } else if (Object.keys(this.errors.representante_legal).length > 0) {\n return false;\n }\n return true;\n },\n next_validate: function () {\n if (this.validate_form()) {\n $('#modal-default').modal(\"show\");\n }\n },\n send_form: function () {\n if (backend_data.action == 'new'){\n this.create_company()\n }\n if (backend_data.action == 'edit'){\n this.update_company()\n }\n },\n create_company: function (){\n let load = this.company;\n if (typeof load.municipio === \"object\") {\n load.municipio = load.municipio.id;\n }\n axios.post(\"/companies.json\", { company: this.company, authenticity_token: backend_data.authenticity_token }).then(res => {\n window.location.replace(`/companies/${res.data.id}`);\n }).catch(errors => {\n for (let error in errors.response.data) {\n for (let e of errors.response.data[error])\n $toast.error(error + \": \" + e, { position: \"top-right\", duration: 5000 });\n }\n })\n },\n update_company: function () {\n if (typeof this.company.municipio === \"object\") {\n this.company.municipio = this.company.municipio.id;\n }\n axios.put(`/companies/${this.company.id}.json`,{ company: this.company, authenticity_token: backend_data.authenticity_token }).then(res => {\n window.location.replace(`/companies/${res.data.id}`);\n }).catch(errors => {\n console.log('esto trajo', errors);\n })\n\n },\n nit_calc: function (myNit) {\n var vpri, x, y, z;\n if (isNaN(myNit) || myNit == null || myNit == undefined) { return \"NA\"; };\n myNit = myNit.replace(/\\s/g, \"\");\n myNit = myNit.replace(/,/g, \"\");\n myNit = myNit.replace(/\\./g, \"\");\n myNit = myNit.replace(/-/g, \"\");\n vpri = new Array(16);\n z = myNit.length;\n vpri[1] = 3; vpri[2] = 7; vpri[3] = 13;\n vpri[4] = 17; vpri[5] = 19; vpri[6] = 23;\n vpri[7] = 29; vpri[8] = 37; vpri[9] = 41;\n vpri[10] = 43; vpri[11] = 47; vpri[12] = 53;\n vpri[13] = 59; vpri[14] = 67; vpri[15] = 71;\n x = 0;\n y = 0;\n for (var i = 0; i < z; i++) {\n y = (myNit.substr(i, 1));\n x += (y * vpri[z - i]);\n }\n y = x % 11;\n return (y > 1) ? 11 - y : y;\n },\n sanitizeAndValidateNIT() {\n this.company.nit = this.company.nit.replace(/\\D/g, '');\n },\n updateVentasMensuales(event) {\n this.company.ventas_mensuales = event.target.value.replace(/[^0-9]/g, '');\n },\n updateValorTotal(event) {\n this.company.valor_total = event.target.value.replace(/[^0-9]/g, '');\n },\n updateIngresos2023(event) {\n this.company.ingresos.a2023 = event.target.value.replace(/[^0-9]/g, '');\n },\n formatCurrency(value) {\n if (!value) return 'COP ';\n const numericValue = value.replace(/[^0-9]/g, '');\n return 'COP ' + numericValue.replace(/\\B(?=(\\d{3})+(?!\\d))/g, '.');\n },\n currencyPlaceholder(value) {\n if (!value) {\n return 'COP 0.000';\n }\n return `COP ${this.formatCurrency(value)}`;\n },\n validate_age: function (birthdate) {\n const today = new Date();\n const birthDate = new Date(birthdate);\n let age = today.getFullYear() - birthDate.getFullYear();\n const monthDifference = today.getMonth() - birthDate.getMonth();\n if (monthDifference < 0 || (monthDifference === 0 && today.getDate() < birthDate.getDate())) {\n age--;\n }\n return age >= 18;\n }\n },\n computed: {\n formattedVentasMensuales() {\n return this.formatCurrency(this.company.ventas_mensuales);\n },\n formattedValorTotal() {\n return this.formatCurrency(this.company.valor_total);\n },\n formattedIngresos2023() {\n return this.formatCurrency(this.company.ingresos.a2023);\n }\n },\n components: {\n 'v-select': vSelect,\n 'vue-number': VueNumber\n },\n directives: {\n 'number': VNumber,\n }\n}\nexport default company_app;\n"],"names":["$toast","useToast","backend_data","company_app","axios","res","load","jsonUrl","search","loading","phonePattern","emailPattern","$","errors","error","e","myNit","vpri","x","y","z","i","event","value","birthdate","today","birthDate","age","monthDifference","vSelect","VueNumber","VNumber"],"mappings":"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"}