27-05-2026 Update DHL Modul v2.0

This commit is contained in:
Kevin 2026-05-27 13:40:38 +00:00
parent 53bdba33cd
commit 036595be94
41 changed files with 3346 additions and 310 deletions

View file

@ -1,6 +1,7 @@
<form id="modal-create-shipment-form" method="POST" action="{{ route('admin.dhl.store') }}">
@csrf
<input type="hidden" name="order_id" value="{{ $order->id }}">
<input type="hidden" id="dhl-preflight-confirmed" value="0">
<div class="modal-body">
<div class="row">
@ -52,7 +53,7 @@
<input type="number" class="form-control" id="modal-weight" name="weight" min="0.1"
max="31.5" step="0.1" value="{{ number_format($orderWeight, 1) }}" required>
<small class="form-text text-muted">
Berechnet: {{ number_format($orderWeight, 1) }} kg
Berechnetes DHL-Gewicht inkl. Kompensationsprodukten: {{ number_format($orderWeight, 3, ',', '.') }} kg
</small>
</div>
@ -63,9 +64,14 @@
</label>
<select class="form-control custom-select" id="modal-product-code" name="product_code">
@foreach ($productCodes as $code => $name)
<option value="{{ $code }}">{{ $code }} - {{ $name }}</option>
<option value="{{ $code }}" {{ ($selectedProductCode ?? null) === $code ? 'selected' : '' }}>
{{ $code }} - {{ $name }}
</option>
@endforeach
</select>
<small class="form-text text-muted">
Das Produkt wird anhand des Ziellandes vorgeschlagen und kann bei erlaubten Kombinationen angepasst werden.
</small>
</div>
<div class="form-group">
@ -86,6 +92,19 @@
Automatisches Tracking
</label>
</div>
<div class="form-group mt-3">
<label for="modal-reference" class="font-weight-semibold">
<i class="fas fa-tag"></i>
Referenz <small class="text-muted">(optional)</small>
</label>
<input type="text" class="form-control" id="modal-reference" name="reference"
value="{{ 'Order-' . $order->id }}" maxlength="35"
placeholder="z.B. Nachlieferung, Ersatz, Order-{{ $order->id }}">
<small class="form-text text-muted">
Wird als DHL refNo uebertragen und an der Sendung gespeichert. Maximal 35 Zeichen.
</small>
</div>
</div>
</div>
@ -176,6 +195,7 @@
id="shipping_country" required>
@foreach ($availableCountries as $countryOption)
<option value="{{ $countryOption->id }}"
data-country-code="{{ $countryOption->code }}"
{{ $shippingAddress['country'] && $shippingAddress['country']->id == $countryOption->id ? 'selected' : '' }}>
{{ $countryOption->getLocated() }}
</option>
@ -228,6 +248,18 @@
</div>
</div>
</div>
<div id="dhl-preflight-status" class="card border-secondary mt-3 mb-0">
<div class="card-header d-flex align-items-center">
<i class="fas fa-clipboard-check text-secondary mr-2"></i>
<strong>Vorabprüfung vor Labelerstellung</strong>
</div>
<div class="card-body">
<p class="text-muted mb-0">
Bitte führen Sie vor der Labelerstellung die Vorabprüfung aus. Dabei werden Produktcode, nationale/internationale Sendungsart und Lieferadresse geprüft.
</p>
</div>
</div>
</div>
<div class="modal-footer">
@ -236,7 +268,7 @@
</button>
<button type="submit" class="btn btn-primary" id="create-shipment-btn"
{{ !empty($errors) ? 'disabled' : '' }}>
<i class="fas fa-shipping-fast"></i> Sendung erstellen
<i class="fas fa-clipboard-check"></i> Vorabprüfung durchführen
</button>
</div>
</form>