@php
$dcRefs = isset($refs) ? collect($refs)->where('ref_type', 'distributor')->values() : collect();
if ($dcRefs->isNotEmpty()) {
$dcIds = $dcRefs->pluck('distribution_center_id')->unique()->filter()->values()->all();
$supplierIds = $dcRefs->pluck('supplier_id')->unique()->filter()->values()->all();
$distributionCenters = !empty($dcIds) ? \Modules\Warehouses\Models\Warehouse::whereIn('id', $dcIds)->get()->keyBy('id') : collect();
$suppliers = !empty($supplierIds) ? \Modules\Product\Models\Supplier::whereIn('id', $supplierIds)->get()->keyBy('id') : collect();
} else {
$dcSupplierPairs = collect($shipments)->map(function ($shipment) {
return [
'distribution_center_id' => $shipment->distribution_center_id,
'supplier_id' => $shipment->supplier_id,
];
})->unique(function ($item) {
return $item['distribution_center_id'] . '-' . $item['supplier_id'];
})->values()->all();
$dcIds = collect($dcSupplierPairs)->pluck('distribution_center_id')->unique()->filter()->values()->all();
$supplierIds = collect($dcSupplierPairs)->pluck('supplier_id')->unique()->filter()->values()->all();
$distributionCenters = !empty($dcIds) ? \Modules\Warehouses\Models\Warehouse::whereIn('id', $dcIds)->get()->keyBy('id') : collect();
$suppliers = !empty($supplierIds) ? \Modules\Product\Models\Supplier::whereIn('id', $supplierIds)->get()->keyBy('id') : collect();
$dcRefs = collect($dcSupplierPairs)->map(function ($p) {
return (object) [
'distribution_center_id' => $p['distribution_center_id'],
'supplier_id' => $p['supplier_id'],
'ref_no' => 'DC_' . ($p['distribution_center_id'] ?? '') . '_SUP_' . ($p['supplier_id'] ?? ''),
];
});
}
$cardCount = 0;
@endphp
@foreach ($dcRefs as $ref)
@php
$dc = $distributionCenters->get($ref->distribution_center_id);
$supplier = $suppliers->get($ref->supplier_id);
$productQuantity = collect($shipments)
->where('supplier_id', $ref->supplier_id)
->where('distribution_center_id', $ref->distribution_center_id)
->sum('qty');
$cardCount++;
@endphp
@if ($productQuantity > 0)
DISTRIBUTION CENTER QR CODES
DEPLETION JOB NO: {{ $job_no }}
DISTRIBUTION CENTER REFERENCE: {{ $ref->ref_no }}
@php
$dcQrcode = base64_encode(QrCode::format('svg')->size(200)->errorCorrection('H')->generate($ref->ref_no));
@endphp
Distribution Center: {{ $dc->name ?? '' }}
Supplier: {{ $supplier->name ?? '' }}
Product Quantity: {{ $productQuantity }}
{{-- @if ($cardCount % 2 == 0)
@endif --}}
@endif
@endforeach