From 027338f93d18fa5c03b03d09faa7ecf83282e9fc Mon Sep 17 00:00:00 2001 From: Luca Haid Date: Fri, 21 Mar 2025 09:01:47 +0100 Subject: [PATCH] Updated Shipping Note --- .../WarehouseShippingNote/WarehouseShippingNoteModal.js | 4 +++- public/plugins/vue/tt-components/tt-position-manager.js | 6 ++++-- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/public/js/pages/WarehouseShippingNote/WarehouseShippingNoteModal.js b/public/js/pages/WarehouseShippingNote/WarehouseShippingNoteModal.js index 2a2e4a87f..64d35802c 100644 --- a/public/js/pages/WarehouseShippingNote/WarehouseShippingNoteModal.js +++ b/public/js/pages/WarehouseShippingNote/WarehouseShippingNoteModal.js @@ -120,6 +120,7 @@ Vue.component('warehouse-shipping-note-modal', { :submit-loading="hoursLoading" @updateField-userId="updateCarId" @updateField-carId="updateKilometer" + @updateField-externalCar="updateKilometer" :config="hoursConfig" v-model="shippingNote.hoursEntries" sm row/>
@@ -194,7 +195,8 @@ Vue.component('warehouse-shipping-note-modal', { this.hoursLoading = false; }, async updateKilometer(carId) { - if (!carId) return this.$refs.hoursManager.updateField('kilometerCount', null); + console.log(carId); + if (!carId || carId === '0') return this.$refs.hoursManager.updateField('kilometerCount', null); this.hoursLoading = true; const delAddr = this.shippingNote.deliveryAddressLine + ' ' + this.shippingNote.deliveryAddressPLZ + ' ' + this.shippingNote.deliveryAddressCity; const {data} = await axios.get(window.TT_CONFIG["BASE_PATH"] + '/WarehouseShippingNote/getDistance?from=Xinon%20GmbH&to=' + delAddr); diff --git a/public/plugins/vue/tt-components/tt-position-manager.js b/public/plugins/vue/tt-components/tt-position-manager.js index b663403a3..a77592dea 100644 --- a/public/plugins/vue/tt-components/tt-position-manager.js +++ b/public/plugins/vue/tt-components/tt-position-manager.js @@ -171,7 +171,7 @@ Vue.component('tt-positions-manager', }, checkEmitDisplayValueAutocomplete() { for (const [key, field] of Object.entries(this.config.fields)) { - if (field.type === 'autocomplete' && field.emitDisplayValue && (isNaN(this.formData[key]) || !this.formData[key]) && this.$refs['autocomplete-' + key][0]) { + if (typeof field.showCondition === 'function' && field.showCondition(this.formData) === true && field.type === 'autocomplete' && field.emitDisplayValue && (isNaN(this.formData[key]) || !this.formData[key]) && this.$refs['autocomplete-' + key][0]) { this.$set(this.formData, key + '_text', this.$refs['autocomplete-' + key][0].displayValue); this.$delete(this.formData, key); } @@ -207,7 +207,9 @@ Vue.component('tt-positions-manager', resetForm() { this.formData = {}; for (const [key, field] of Object.entries(this.config.fields)) { - if (field.type === 'autocomplete' && field.emitDisplayValue && this.$refs['autocomplete-' + key][0]) { + if ( + typeof field.showCondition === 'function' && field.showCondition(this.formData) === true && + field.type === 'autocomplete' && field.emitDisplayValue && this.$refs['autocomplete-' + key][0]) { this.$refs['autocomplete-' + key][0].displayValue = ''; } if (field.inputType === 'date') {