Updated Shipping Note

This commit is contained in:
Luca Haid
2025-03-20 14:48:54 +01:00
parent 3f8be39626
commit d9a2ba1ef4

View File

@@ -23,6 +23,7 @@ Vue.component('warehouse-shipping-note-modal', {
},
hoursLoading: false,
geoAddr: '',
selectedBillingAddress: '',
positionsConfig: {
customOrdering: 'article',
fields: {
@@ -96,13 +97,16 @@ Vue.component('warehouse-shipping-note-modal', {
>
<div style="width: 99%">
<h4 class="text-center">Adresse</h4>
<tt-autocomplete :api-url="geoAutocompleteUrl" label="Adresse suchen" sm row v-model="geoAddr"/>
<tt-autocomplete :api-url="billAddrAutoCompleteUrl" label="Kunde suchen" sm row v-model="selectedBillingAddress"/>
<hr>
<tt-input v-model="shippingNote.deliveryAddressName" label="Name" sm row/>
<tt-input v-model="shippingNote.deliveryAddressEMail" label="E-Mail" sm row/>
<tt-autocomplete :api-url="geoAutocompleteUrl" label="Adresse*" sm row v-model="geoAddr"/>
<div class="mb-1" v-if="shippingNote.deliveryAddressLine">{{ shippingNote.deliveryAddressLine }}<br>{{ shippingNote.deliveryAddressPLZ }} {{ shippingNote.deliveryAddressCity }}</div>
<template v-if="window.TT_CONFIG['WAREHOUSE_ADMIN'] == true">
<hr>
<tt-autocomplete v-model="shippingNote.billingAddressId" :api-url="billAddrAutoCompleteUrl" label="Rechnungsadresse" sm row/>
</template>
@@ -122,7 +126,7 @@ Vue.component('warehouse-shipping-note-modal', {
<h4 class="text-center">Positionen</h4>
<tt-positions-manager :config="positionsConfig" v-model="shippingNote.positions" sm row/>
</template>
<span v-else class="text-danger">Bitte Lieferadresse eingeben</span>
<div v-else class="text-danger text-center font-weight-bolder font-16">Bitte Lieferadresse eingeben oder nach Kunden suchen</div>
</div>
<template v-slot:footer-prepend v-if="id !== 'create'">
@@ -148,6 +152,20 @@ Vue.component('warehouse-shipping-note-modal', {
this.shippingNote.deliveryAddressPLZ = address["postcode"];
this.shippingNote.deliveryAddressCity = address["village"] ?? address.city ?? address["town"];
this.updateKilometer().then();
},
selectedBillingAddress: async function() {
console.log("hallo");
const response = await axios.get(window.TT_CONFIG["BASE_PATH"] + '/Address/api?do=getAddress&id=' + this.selectedBillingAddress);
if (response.data.status !== 'OK' || !response.data.result.address) {
this.window.notify('error', 'Rechnungsadresse konnte nicht gefunden werden');
return;
}
this.shippingNote.deliveryAddressName = response.data.result.address["company"] || response.data.result.address.firstname + ' ' + response.data.result.address.lastname;
this.shippingNote.deliveryAddressLine = response.data.result.address.street;
this.shippingNote.deliveryAddressPLZ = response.data.result.address.zip;
this.shippingNote.deliveryAddressCity = response.data.result.address.city;
this.shippingNote.deliveryAddressEMail = response.data.result.address.email;
}
},
methods: {