@foreach ($products as $product)
@php
$nonEmptyStock = $product->stocks->firstWhere('productStock', '>', 0);
$fallbackStock = $product->stocks->first(); // fallback if no stock > 0
$stock = $nonEmptyStock ?? $fallbackStock;
$latestPurchasePrice = $stock?->productPurchasePrice ?? 0;
$latestSalePrice = $stock?->productSalePrice ?? 0;
$latestWholeSalePrice = $stock?->productWholeSalePrice ?? 0;
$latestDealerPrice = $stock?->productDealerPrice ?? 0;
$productStock = $product->total_stock ?? 0;
@endphp
@usercan('products.delete')
|
|
@endusercan
{{ ($products->currentPage() - 1) * $products->perPage() + $loop->iteration }} |
{{-- Hidden Route --}}
 }}) |
@php
$stocks = $product->stocks->map(function ($batch) use ($product) {
$hasWeight = $product->category ? $product->category->variationWeight : false;
return [
'id' => $batch->id,
'batch_no' => $batch->batch_no,
'expire_date' => $batch->expire_date ? formatted_date($batch->expire_date) : 'N/A',
'productStock' => $batch->productStock ?? 0,
'productSalePrice' => $batch->productSalePrice ?? 0,
'productPurchasePrice' => $batch->productPurchasePrice ?? 0,
'productWholeSalePrice' => $batch->productWholeSalePrice ?? 0,
'productDealerPrice' => $batch->productDealerPrice ?? 0,
'warehouse' => $batch->warehouse->name ?? '',
'rack' => $product->rack->name ?? '',
'shelf' => $product->shelf->name ?? '',
'weight' => $hasWeight ? $product->weight : null,
'showWeight' => $hasWeight ? 1 : 0,
];
});
@endphp
{{ $product->productName }}
|
{{ $product->productCode }} |
{{ $product->brand->brandName ?? '' }} |
{{ $product->category->categoryName ?? '' }} |
@if (moduleCheck('WarehouseAddon'))
{{ $fallbackStock->warehouse->name ?? '' }} |
@endif
{{ $product->unit->unitName ?? '' }} |
@usercan('products.price')
{{ currency_format($latestPurchasePrice, currency: business_currency()) }} |
@endusercan
{{ currency_format($latestSalePrice, currency: business_currency()) }} |
{{ $product->total_stock }}
|
{{ $product->rack->name ?? '' }} |
{{ $product->shelf->name ?? '' }} |
|
@endforeach