13-05-2026 Waren Wirtschaft
This commit is contained in:
parent
9ce711d6b2
commit
ca3eb663fe
40 changed files with 1000 additions and 189 deletions
|
|
@ -15,7 +15,7 @@
|
|||
@method('PUT')
|
||||
@endif
|
||||
|
||||
<input type="hidden" name="category" value="{{ old('category', $model->category) }}">
|
||||
<input type="hidden" name="category" value="{{ old('category', $category ?? 'packaging') }}">
|
||||
|
||||
<div class="form-group">
|
||||
<label for="name">{{ __('Name') }}</label>
|
||||
|
|
|
|||
|
|
@ -4,38 +4,56 @@
|
|||
@endphp
|
||||
|
||||
<div class="form-group">
|
||||
<label for="entry_type">{{ __('Art') }}</label>
|
||||
<label for="entry_type">{{ __('Art') }} <span class="text-danger">*</span></label>
|
||||
<select name="entry_type" id="entry_type" class="form-control @error('entry_type') is-invalid @enderror" required>
|
||||
@foreach($entryTypeLabels as $value => $label)
|
||||
@foreach ($entryTypeLabels as $value => $label)
|
||||
<option value="{{ $value }}" @selected(old('entry_type', $model->entry_type ?? 'ingredient') === $value)>{{ $label }}</option>
|
||||
@endforeach
|
||||
</select>
|
||||
@error('entry_type')
|
||||
<div class="invalid-feedback">{{ $message }}</div>
|
||||
<div class="invalid-feedback">{{ $message }}</div>
|
||||
@enderror
|
||||
</div>
|
||||
|
||||
<div id="stock-entry-ingredient-block" class="form-group" style="display:none;">
|
||||
<label for="ingredient_id">{{ __('Inhaltsstoff') }}</label>
|
||||
<label for="ingredient_id">{{ __('Inhaltsstoff') }} <span class="text-danger">*</span></label>
|
||||
<div class="light-style">
|
||||
<select name="ingredient_id" id="ingredient_id" class="w-100" data-search-url="{{ route('admin.inventory.api.ingredients.search') }}">
|
||||
@if($model->ingredient_id && $model->ingredient)
|
||||
<option value="{{ $model->ingredient_id }}" selected>{{ $model->ingredient->name }}@if($model->ingredient->inci) ({{ $model->ingredient->inci }})@endif</option>
|
||||
<select name="ingredient_id" id="ingredient_id" class="w-100"
|
||||
data-search-url="{{ route('admin.inventory.api.ingredients.search') }}">
|
||||
@if ($model->ingredient_id && $model->ingredient)
|
||||
<option value="{{ $model->ingredient_id }}" selected>{{ $model->ingredient->name }}@if ($model->ingredient->inci)
|
||||
({{ $model->ingredient->inci }})
|
||||
@endif
|
||||
</option>
|
||||
@elseif(old('ingredient_id'))
|
||||
<option value="{{ old('ingredient_id') }}" selected>{{ old('ingredient_id') }}</option>
|
||||
@endif
|
||||
</select>
|
||||
</div>
|
||||
@error('ingredient_id')
|
||||
<div class="text-danger small">{{ $message }}</div>
|
||||
<div class="text-danger small">{{ $message }}</div>
|
||||
@enderror
|
||||
</div>
|
||||
|
||||
<div id="stock-entry-quality-block" class="form-group" style="display:none;">
|
||||
<label for="quality_id">{{ __('Rohstoffqualität') }} <span class="text-danger">*</span></label>
|
||||
<select name="quality_id" id="quality_id" class="form-control @error('quality_id') is-invalid @enderror">
|
||||
<option value="">{{ __('Bitte wählen') }}</option>
|
||||
@foreach ($materialQualities as $mq)
|
||||
<option value="{{ $mq->id }}" @selected((string) old('quality_id', $model->quality_id) === (string) $mq->id)>{{ $mq->name }}</option>
|
||||
@endforeach
|
||||
</select>
|
||||
@error('quality_id')
|
||||
<div class="invalid-feedback">{{ $message }}</div>
|
||||
@enderror
|
||||
</div>
|
||||
|
||||
<div id="stock-entry-packaging-block" class="form-group" style="display:none;">
|
||||
<label for="packaging_item_id">{{ __('Verpackungsartikel') }}</label>
|
||||
<label for="packaging_item_id">{{ __('Verpackungsartikel') }} <span class="text-danger">*</span></label>
|
||||
<div class="light-style">
|
||||
<select name="packaging_item_id" id="packaging_item_id" class="w-100" data-search-url="{{ route('admin.inventory.api.packaging-items.search') }}">
|
||||
@if($model->packaging_item_id && $model->packagingItem)
|
||||
<select name="packaging_item_id" id="packaging_item_id" class="w-100"
|
||||
data-search-url="{{ route('admin.inventory.api.packaging-items.search') }}">
|
||||
@if ($model->packaging_item_id && $model->packagingItem)
|
||||
<option value="{{ $model->packaging_item_id }}" selected>{{ $model->packagingItem->name }}</option>
|
||||
@elseif(old('packaging_item_id'))
|
||||
<option value="{{ old('packaging_item_id') }}" selected>{{ old('packaging_item_id') }}</option>
|
||||
|
|
@ -43,69 +61,76 @@
|
|||
</select>
|
||||
</div>
|
||||
@error('packaging_item_id')
|
||||
<div class="text-danger small">{{ $message }}</div>
|
||||
<div class="text-danger small">{{ $message }}</div>
|
||||
@enderror
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<label for="supplier_id">{{ __('Lieferant') }}</label>
|
||||
<select name="supplier_id" id="supplier_id" class="form-control @error('supplier_id') is-invalid @enderror" required>
|
||||
<label for="supplier_id">{{ __('Lieferant') }} <span class="text-danger">*</span></label>
|
||||
<select name="supplier_id" id="supplier_id" class="form-control @error('supplier_id') is-invalid @enderror"
|
||||
required>
|
||||
<option value="">{{ __('Bitte wählen') }}</option>
|
||||
@foreach($suppliers as $sup)
|
||||
<option value="{{ $sup->id }}" @selected((string)old('supplier_id', $model->supplier_id) === (string)$sup->id)>{{ $sup->name }}</option>
|
||||
@foreach ($suppliers as $sup)
|
||||
<option value="{{ $sup->id }}" @selected((string) old('supplier_id', $model->supplier_id) === (string) $sup->id)>{{ $sup->name }}</option>
|
||||
@endforeach
|
||||
</select>
|
||||
@error('supplier_id')
|
||||
<div class="invalid-feedback">{{ $message }}</div>
|
||||
<div class="invalid-feedback">{{ $message }}</div>
|
||||
@enderror
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<label for="location_id">{{ __('Lagerort') }}</label>
|
||||
<select name="location_id" id="location_id" class="form-control @error('location_id') is-invalid @enderror" required>
|
||||
<label for="location_id">{{ __('Lagerort') }} <span class="text-danger">*</span></label>
|
||||
<select name="location_id" id="location_id" class="form-control @error('location_id') is-invalid @enderror"
|
||||
required>
|
||||
<option value="">{{ __('Bitte wählen') }}</option>
|
||||
@foreach($locations as $loc)
|
||||
<option value="{{ $loc->id }}" @selected((string)old('location_id', $model->location_id) === (string)$loc->id)>{{ $loc->name }}</option>
|
||||
@foreach ($locations as $loc)
|
||||
<option value="{{ $loc->id }}" @selected((string) old('location_id', $model->location_id) === (string) $loc->id)>{{ $loc->name }}</option>
|
||||
@endforeach
|
||||
</select>
|
||||
@error('location_id')
|
||||
<div class="invalid-feedback">{{ $message }}</div>
|
||||
<div class="invalid-feedback">{{ $message }}</div>
|
||||
@enderror
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<label for="ordered_at">{{ __('Bestelldatum') }}</label>
|
||||
<input type="date" name="ordered_at" id="ordered_at" class="form-control @error('ordered_at') is-invalid @enderror"
|
||||
value="{{ old('ordered_at', $model->ordered_at ? $model->ordered_at->format('Y-m-d') : '') }}" required>
|
||||
<label for="ordered_at">{{ __('Bestelldatum') }} <span class="text-danger">*</span></label>
|
||||
<input type="date" name="ordered_at" id="ordered_at"
|
||||
class="form-control @error('ordered_at') is-invalid @enderror"
|
||||
value="{{ old('ordered_at', $model->ordered_at ? $model->ordered_at->format('Y-m-d') : '') }}" required>
|
||||
@error('ordered_at')
|
||||
<div class="invalid-feedback">{{ $message }}</div>
|
||||
<div class="invalid-feedback">{{ $message }}</div>
|
||||
@enderror
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<label for="ordered_quantity">{{ __('Bestellte Menge') }}</label>
|
||||
<input type="text" name="ordered_quantity" id="ordered_quantity" class="form-control @error('ordered_quantity') is-invalid @enderror"
|
||||
value="{{ old('ordered_quantity', $model->ordered_quantity !== null ? \App\Services\Util::formatNumber($model->ordered_quantity) : '') }}" required>
|
||||
<label for="ordered_quantity">{{ __('Bestellte Menge') }} <span class="text-danger">*</span></label>
|
||||
<input type="text" name="ordered_quantity" id="ordered_quantity"
|
||||
class="form-control @error('ordered_quantity') is-invalid @enderror"
|
||||
value="{{ old('ordered_quantity', $model->ordered_quantity !== null ? \App\Services\Util::formatNumber($model->ordered_quantity) : '') }}"
|
||||
required>
|
||||
<small class="text-muted">{{ __('Bei Rohstoff in Gramm, bei Verpackung in Stück.') }}</small>
|
||||
@error('ordered_quantity')
|
||||
<div class="invalid-feedback">{{ $message }}</div>
|
||||
<div class="invalid-feedback">{{ $message }}</div>
|
||||
@enderror
|
||||
</div>
|
||||
|
||||
<div id="price-per-kg-block" class="form-group" style="display:none;">
|
||||
<label for="price_per_kg">{{ __('Netto-Preis pro kg') }}</label>
|
||||
<input type="text" name="price_per_kg" id="price_per_kg" class="form-control @error('price_per_kg') is-invalid @enderror"
|
||||
value="{{ old('price_per_kg', $model->price_per_kg !== null ? \App\Services\Util::formatNumber($model->price_per_kg) : '') }}">
|
||||
<label for="price_per_kg">{{ __('Netto-Preis pro kg') }} <span class="text-danger">*</span></label>
|
||||
<input type="text" name="price_per_kg" id="price_per_kg"
|
||||
class="form-control @error('price_per_kg') is-invalid @enderror"
|
||||
value="{{ old('price_per_kg', $model->price_per_kg !== null ? \App\Services\Util::formatNumber($model->price_per_kg) : '') }}">
|
||||
@error('price_per_kg')
|
||||
<div class="invalid-feedback">{{ $message }}</div>
|
||||
<div class="invalid-feedback">{{ $message }}</div>
|
||||
@enderror
|
||||
</div>
|
||||
|
||||
<div id="price-total-block" class="form-group" style="display:none;">
|
||||
<label for="price_total">{{ __('Gesamtpreis netto') }}</label>
|
||||
<input type="text" name="price_total" id="price_total" class="form-control @error('price_total') is-invalid @enderror"
|
||||
value="{{ old('price_total', $model->price_total !== null ? \App\Services\Util::formatNumber($model->price_total) : '') }}">
|
||||
<label for="price_total">{{ __('Gesamtpreis netto') }} <span class="text-danger">*</span></label>
|
||||
<input type="text" name="price_total" id="price_total"
|
||||
class="form-control @error('price_total') is-invalid @enderror"
|
||||
value="{{ old('price_total', $model->price_total !== null ? \App\Services\Util::formatNumber($model->price_total) : '') }}">
|
||||
@error('price_total')
|
||||
<div class="invalid-feedback">{{ $message }}</div>
|
||||
<div class="invalid-feedback">{{ $message }}</div>
|
||||
@enderror
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -4,6 +4,7 @@
|
|||
var t = $('#entry_type').val();
|
||||
var isIng = t === 'ingredient';
|
||||
$('#stock-entry-ingredient-block').toggle(isIng);
|
||||
$('#stock-entry-quality-block').toggle(isIng);
|
||||
$('#stock-entry-packaging-block').toggle(!isIng);
|
||||
$('#price-per-kg-block').toggle(isIng);
|
||||
$('#price-total-block').toggle(!isIng);
|
||||
|
|
|
|||
|
|
@ -42,6 +42,11 @@
|
|||
@endif
|
||||
</dd>
|
||||
|
||||
@if($model->entry_type === 'ingredient' && $model->quality)
|
||||
<dt class="col-sm-3">{{ __('Rohstoffqualität') }}</dt>
|
||||
<dd class="col-sm-9">{{ $model->quality->name }}</dd>
|
||||
@endif
|
||||
|
||||
<dt class="col-sm-3">{{ __('Lieferant') }}</dt>
|
||||
<dd class="col-sm-9">{{ $model->supplier?->name ?? '—' }}</dd>
|
||||
|
||||
|
|
@ -122,7 +127,7 @@
|
|||
@method('PUT')
|
||||
|
||||
<div class="form-group">
|
||||
<label for="received_at">{{ __('Eingangsdatum') }}</label>
|
||||
<label for="received_at">{{ __('Eingangsdatum') }} <span class="text-danger">*</span></label>
|
||||
<input type="date" name="received_at" id="received_at" required
|
||||
class="form-control @error('received_at') is-invalid @enderror"
|
||||
value="{{ old('received_at', now()->toDateString()) }}">
|
||||
|
|
@ -132,7 +137,7 @@
|
|||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<label for="received_quantity">{{ __('Eingegangene Menge') }}</label>
|
||||
<label for="received_quantity">{{ __('Eingegangene Menge') }} <span class="text-danger">*</span></label>
|
||||
<input type="text" name="received_quantity" id="received_quantity" required
|
||||
class="form-control @error('received_quantity') is-invalid @enderror"
|
||||
value="{{ old('received_quantity', \App\Services\Util::formatNumber($model->ordered_quantity)) }}">
|
||||
|
|
@ -150,7 +155,7 @@
|
|||
|
||||
@if($model->entry_type === 'ingredient')
|
||||
<div class="form-group">
|
||||
<label for="batch_number">{{ __('Chargennummer') }}</label>
|
||||
<label for="batch_number">{{ __('Chargennummer') }} <span class="text-danger">*</span></label>
|
||||
<input type="text" name="batch_number" id="batch_number" maxlength="100"
|
||||
class="form-control @error('batch_number') is-invalid @enderror"
|
||||
value="{{ old('batch_number') }}">
|
||||
|
|
@ -160,7 +165,7 @@
|
|||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<label for="best_before">{{ __('Mindesthaltbarkeit') }}</label>
|
||||
<label for="best_before">{{ __('Mindesthaltbarkeit') }} <span class="text-danger">*</span></label>
|
||||
<input type="date" name="best_before" id="best_before"
|
||||
class="form-control @error('best_before') is-invalid @enderror"
|
||||
value="{{ old('best_before') }}">
|
||||
|
|
@ -170,11 +175,11 @@
|
|||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<label for="quality_id">{{ __('Materialqualität') }}</label>
|
||||
<label for="quality_id">{{ __('Rohstoffqualität') }} <span class="text-danger">*</span></label>
|
||||
<select name="quality_id" id="quality_id" class="form-control @error('quality_id') is-invalid @enderror">
|
||||
<option value="">{{ __('Bitte wählen') }}</option>
|
||||
@foreach($materialQualities as $mq)
|
||||
<option value="{{ $mq->id }}" @selected((string)old('quality_id') === (string)$mq->id)>{{ $mq->name }}</option>
|
||||
<option value="{{ $mq->id }}" @selected((string)old('quality_id', $model->quality_id) === (string)$mq->id)>{{ $mq->name }}</option>
|
||||
@endforeach
|
||||
</select>
|
||||
@error('quality_id')
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue