DHL Modul v0.5 Shipping Label ok

This commit is contained in:
Kevin Adametz 2025-08-22 18:18:26 +02:00
parent 480fdc65ed
commit 8fdaa0ba1d
122 changed files with 17938 additions and 2239 deletions

View file

@ -107,6 +107,220 @@
<button type="submit" name="action" value="save_prepayment" class="btn btn-primary btn-sm mb-2"><i class="ion ion-ios-save"></i> speichern</button>
</div>
</div>
<!-- DHL Configuration Section -->
<div class="card mb-2">
<div class="card-body">
<h4><i class="fas fa-truck"></i> DHL Versandeinstellungen</h4>
@if(Session::has('alert-save-dhl'))
<div class="alert alert-success" role="alert">
<i class="fas fa-check-circle"></i> {{ Session::get('alert-save-dhl') }}
</div>
@endif
<!-- DHL Standard-Einstellungen -->
<div class="form-row">
<div class="col-sm-12">
<h5>Standard-Einstellungen</h5>
</div>
<div class="form-group col-sm-4">
<label class="form-label">{{ __('API Basis URL') }}*</label>
{{ Form::text('settings[dhl_base_url][val]', \App\Models\Setting::getContentBySlug('dhl_base_url') ?: 'https://api-eu.dhl.com', array('class'=>'form-control')) }}
{{ Form::hidden('settings[dhl_base_url][type]', 'text') }}
</div>
<div class="form-group col-sm-4">
<label class="form-label">{{ __('API Schlüssel') }}*</label>
{{ Form::text('settings[dhl_api_key][val]', \App\Models\Setting::getContentBySlug('dhl_api_key'), array('class'=>'form-control')) }}
{{ Form::hidden('settings[dhl_api_key][type]', 'text') }}
</div>
<div class="form-group col-sm-4">
<label class="form-label">{{ __('Benutzername') }}*</label>
{{ Form::text('settings[dhl_username][val]', \App\Models\Setting::getContentBySlug('dhl_username'), array('class'=>'form-control')) }}
{{ Form::hidden('settings[dhl_username][type]', 'text') }}
</div>
<div class="form-group col-sm-4">
<label class="form-label">{{ __('Passwort') }}*</label>
{{ Form::password('settings[dhl_password][val]', array('class'=>'form-control', 'value' => \App\Models\Setting::getContentBySlug('dhl_password'))) }}
{{ Form::hidden('settings[dhl_password][type]', 'text') }}
</div>
<div class="form-group col-sm-4">
<label class="form-label">{{ __('Standard Abrechnungsnummer') }}*</label>
{{ Form::text('settings[dhl_billing_number][val]', \App\Models\Setting::getContentBySlug('dhl_billing_number'), array('class'=>'form-control')) }}
{{ Form::hidden('settings[dhl_billing_number][type]', 'text') }}
</div>
<div class="form-group col-sm-4">
<label class="form-label">{{ __('Standard Produktcode') }}*</label>
{{ Form::select('settings[dhl_product][val]', [
'V01PAK' => 'V01PAK - DHL Paket National',
'V53PAK' => 'V53PAK - DHL Paket International',
'V62WP' => 'V62WP - Warenpost National'
], \App\Models\Setting::getContentBySlug('dhl_product') ?: 'V01PAK', array('class'=>'form-control custom-select')) }}
{{ Form::hidden('settings[dhl_product][type]', 'text') }}
</div>
<div class="form-group col-sm-6">
<label class="form-label">{{ __('Label Format') }}*</label>
{{ Form::select('settings[dhl_label_format][val]', [
'PDF' => 'PDF',
'ZPL' => 'ZPL'
], \App\Models\Setting::getContentBySlug('dhl_label_format') ?: 'PDF', array('class'=>'form-control custom-select')) }}
{{ Form::hidden('settings[dhl_label_format][type]', 'text') }}
</div>
<div class="form-group col-sm-6">
<label class="custom-control custom-checkbox mt-4">
{!! Form::checkbox('settings[dhl_use_queue][val]', 1, \App\Models\Setting::getContentBySlug('dhl_use_queue'), ['class'=>'custom-control-input']) !!}
<span class="custom-control-label">Queue für asynchrone Verarbeitung verwenden</span>
</label>
{{ Form::hidden('settings[dhl_use_queue][type]', 'bool') }}
<small class="form-text text-muted">
<strong>Aktiviert:</strong> Versandlabel werden im Hintergrund erstellt (erfordert Queue Worker)<br>
<strong>Deaktiviert:</strong> Versandlabel werden sofort erstellt (synchron)
</small>
</div>
</div>
<hr>
<!-- DHL Account Numbers -->
<div class="form-row">
<div class="col-sm-12">
<h5>Account Nummern für verschiedene Produkte</h5>
</div>
<div class="form-group col-sm-6">
<label class="form-label">{{ __('V01PAK - DHL Paket National') }}*</label>
{{ Form::text('settings[dhl_account_v01pak][val]', \App\Models\Setting::getContentBySlug('dhl_account_v01pak'), array('class'=>'form-control')) }}
{{ Form::hidden('settings[dhl_account_v01pak][type]', 'text') }}
</div>
<div class="form-group col-sm-6">
<label class="form-label">{{ __('V07PAK - DHL Retoure Online') }}</label>
{{ Form::text('settings[dhl_account_v07pak][val]', \App\Models\Setting::getContentBySlug('dhl_account_v07pak'), array('class'=>'form-control')) }}
{{ Form::hidden('settings[dhl_account_v07pak][type]', 'text') }}
</div>
<div class="form-group col-sm-6">
<label class="form-label">{{ __('V53PAK - DHL Paket International') }}</label>
{{ Form::text('settings[dhl_account_v53pak][val]', \App\Models\Setting::getContentBySlug('dhl_account_v53pak'), array('class'=>'form-control')) }}
{{ Form::hidden('settings[dhl_account_v53pak][type]', 'text') }}
</div>
<div class="form-group col-sm-6">
<label class="form-label">{{ __('V62WP - Warenpost National') }}</label>
{{ Form::text('settings[dhl_account_v62wp][val]', \App\Models\Setting::getContentBySlug('dhl_account_v62wp'), array('class'=>'form-control')) }}
{{ Form::hidden('settings[dhl_account_v62wp][type]', 'text') }}
</div>
</div>
<hr>
<!-- DHL Absenderadresse -->
<div class="form-row">
<div class="col-sm-12">
<h5>Absenderadresse</h5>
</div>
<div class="form-group col-sm-6">
<label class="form-label">{{ __('Firmenname') }}*</label>
{{ Form::text('settings[dhl_sender_company][val]', \App\Models\Setting::getContentBySlug('dhl_sender_company') ?: 'mivita care gmbh', array('class'=>'form-control')) }}
{{ Form::hidden('settings[dhl_sender_company][type]', 'text') }}
</div>
<div class="form-group col-sm-6">
<label class="form-label">{{ __('Name (optional)') }}</label>
{{ Form::text('settings[dhl_sender_name][val]', \App\Models\Setting::getContentBySlug('dhl_sender_name'), array('class'=>'form-control')) }}
{{ Form::hidden('settings[dhl_sender_name][type]', 'text') }}
</div>
<div class="form-group col-sm-6">
<label class="form-label">{{ __('Straße') }}*</label>
{{ Form::text('settings[dhl_sender_street][val]', \App\Models\Setting::getContentBySlug('dhl_sender_street') ?: 'Leinfeld', array('class'=>'form-control')) }}
{{ Form::hidden('settings[dhl_sender_street][type]', 'text') }}
</div>
<div class="form-group col-sm-6">
<label class="form-label">{{ __('Hausnummer') }}*</label>
{{ Form::text('settings[dhl_sender_house_number][val]', \App\Models\Setting::getContentBySlug('dhl_sender_house_number') ?: '2', array('class'=>'form-control')) }}
{{ Form::hidden('settings[dhl_sender_house_number][type]', 'text') }}
</div>
<div class="form-group col-sm-4">
<label class="form-label">{{ __('PLZ') }}*</label>
{{ Form::text('settings[dhl_sender_postal_code][val]', \App\Models\Setting::getContentBySlug('dhl_sender_postal_code') ?: '87755', array('class'=>'form-control')) }}
{{ Form::hidden('settings[dhl_sender_postal_code][type]', 'text') }}
</div>
<div class="form-group col-sm-4">
<label class="form-label">{{ __('Stadt') }}*</label>
{{ Form::text('settings[dhl_sender_city][val]', \App\Models\Setting::getContentBySlug('dhl_sender_city') ?: 'Kirchhaslach', array('class'=>'form-control')) }}
{{ Form::hidden('settings[dhl_sender_city][type]', 'text') }}
</div>
<div class="form-group col-sm-4">
<label class="form-label">{{ __('Land') }}*</label>
{{ Form::select('settings[dhl_sender_country][val]', [
'DE' => 'Deutschland',
'AT' => 'Österreich',
'CH' => 'Schweiz'
], \App\Models\Setting::getContentBySlug('dhl_sender_country') ?: 'DE', array('class'=>'form-control custom-select')) }}
{{ Form::hidden('settings[dhl_sender_country][type]', 'text') }}
</div>
<div class="form-group col-sm-6">
<label class="form-label">{{ __('E-Mail') }}*</label>
{{ Form::email('settings[dhl_sender_email][val]', \App\Models\Setting::getContentBySlug('dhl_sender_email') ?: 'versand@mivita.care', array('class'=>'form-control')) }}
{{ Form::hidden('settings[dhl_sender_email][type]', 'text') }}
</div>
<div class="form-group col-sm-6">
<label class="form-label">{{ __('Telefon') }}</label>
{{ Form::text('settings[dhl_sender_phone][val]', \App\Models\Setting::getContentBySlug('dhl_sender_phone') ?: '+49 123 456789', array('class'=>'form-control')) }}
{{ Form::hidden('settings[dhl_sender_phone][type]', 'text') }}
</div>
</div>
<!-- DHL Absenderadresse -->
<div class="form-row">
<div class="col-sm-12">
<h5>Papierformat</h5>
</div>
<div class="form-group col-sm-6">
<label class="form-label">{{ __('Versandlabel') }}*</label>
{{ Form::select('settings[dhl_print_format][val]', [
'A4' => 'Common Label Laserdruck A4 Normalpapier',
'910-300-600' => 'Common Label Thermodruck 103 x 199 mm (910-300-600)',
'910-300-610' => 'Common Label Thermodruck 103 x 199 mm (910-300-610)',
'910-300-700' => 'Common Label Laserdruck 105 x 205 mm (DIN A5 Normalpapier, 910-300-700)',
'910-300-700-oz' => 'Common Label Laserdruck 105 x 205 mm (DIN A5 Normalpapier, 910-300-700) ohne Zusatzetiketten',
'910-300-710' => 'Common Label Laserdruck 105 x 208 mm (910-300-710)',
'910-300-300' => 'Common Label Laserdruck 105 x 148 mm (DIN A5 Normalpapier, 910-300-300)',
'910-300-300-oz' => 'Common Label Laserdruck 105 x 148 mm (DIN A5 Normalpapier, 910-300-300) ohne Zusatzetiketten',
'910-300-400' => 'Common Label Thermodruck 103 x 150 mm (910-300-400)',
'910-300-410' => 'Common Label Thermodruck 103 x 150 mm (910-300-410)',
'100x70mm' => '100x70mm',
], \App\Models\Setting::getContentBySlug('dhl_print_format') ?: 'A4', array('class'=>'form-control custom-select')) }}
{{ Form::hidden('settings[dhl_print_format][type]', 'text') }}
</div>
<div class="form-group col-sm-6">
<label class="form-label">{{ __('Retoure Label') }}*</label>
{{ Form::select('settings[dhl_retoure_print_format][val]', [
'A4' => 'Common Label Laserdruck A4 Normalpapier',
'910-300-600' => 'Common Label Thermodruck 103 x 199 mm (910-300-600)',
'910-300-610' => 'Common Label Thermodruck 103 x 199 mm (910-300-610)',
'910-300-700' => 'Common Label Laserdruck 105 x 205 mm (DIN A5 Normalpapier, 910-300-700)',
'910-300-700-oz' => 'Common Label Laserdruck 105 x 205 mm (DIN A5 Normalpapier, 910-300-700) ohne Zusatzetiketten',
'910-300-710' => 'Common Label Laserdruck 105 x 208 mm (910-300-710)',
'910-300-300' => 'Common Label Laserdruck 105 x 148 mm (DIN A5 Normalpapier, 910-300-300)',
'910-300-300-oz' => 'Common Label Laserdruck 105 x 148 mm (DIN A5 Normalpapier, 910-300-300) ohne Zusatzetiketten',
'910-300-400' => 'Common Label Thermodruck 103 x 150 mm (910-300-400)',
'910-300-410' => 'Common Label Thermodruck 103 x 150 mm (910-300-410)',
'100x70mm' => '100x70mm',
], \App\Models\Setting::getContentBySlug('dhl_retoure_print_format') ?: 'A4', array('class'=>'form-control custom-select')) }}
{{ Form::hidden('settings[dhl_retoure_print_format][type]', 'text') }}
</div>
</div>
<button type="submit" name="action" value="save_dhl" class="btn btn-primary btn-sm mb-2">
<i class="fas fa-truck"></i> DHL Einstellungen speichern
</button>
</div>
</div>
{!! Form::close() !!}