diff --git a/packages/goods/resources/views/grid/attr.blade.php b/packages/goods/resources/views/grid/attr.blade.php index e630876..643a91d 100644 --- a/packages/goods/resources/views/grid/attr.blade.php +++ b/packages/goods/resources/views/grid/attr.blade.php @@ -5,7 +5,7 @@ @foreach($value as $item)
{{ $item['name'] }} - {{ $item['value'] }} + {{ $item['value'] }} {{ isset($item['price']) ? '(+'.$item['price'].')' : '' }}
@endforeach @endif diff --git a/packages/goods/src/Http/Controllers/Admin/GoodsSkuController.php b/packages/goods/src/Http/Controllers/Admin/GoodsSkuController.php index 8584747..d61019d 100644 --- a/packages/goods/src/Http/Controllers/Admin/GoodsSkuController.php +++ b/packages/goods/src/Http/Controllers/Admin/GoodsSkuController.php @@ -59,24 +59,25 @@ class GoodsSkuController extends Controller ->body($grid); } - public function show($id, Content $content) + public function show($goods, $id, Content $content) { - $info = GoodsSku::with(['goods'])->findOrFail($id); + $goods = Goods::findOrFail($goods); + $info = GoodsSku::findOrFail($id); $show = Show::make($info, function (Show $show) { $show->field('sn'); $show->field('name'); $show->field('price'); $show->field('stock'); - // $show->field('spec')->view('peidikeji.dcat-admin-extension-goods::grid.attr'); - $goods = $show->model()->goods; - foreach($goods->spec as $key => $item) { - $show->field('spec_' . $key, $item['name'])->as(function () use ($item) { - $filtered = current(array_filter($this->spec, fn($subItem) => $subItem['name'] === $item['name'])); - $value = data_get($filtered, 'value'); - $price = data_get($filtered, 'price'); - return ''.$value.''; - })->unescape(); - } + $show->field('spec')->view('peidikeji.dcat-admin-extension-goods::grid.attr'); + // $goods = $show->model()->goods; + // foreach($goods->spec as $key => $item) { + // $show->field('spec_' . $key, $item['name'])->as(function () use ($item) { + // $filtered = current(array_filter($this->spec, fn($subItem) => $subItem['name'] === $item['name'])); + // $value = data_get($filtered, 'value'); + // $price = data_get($filtered, 'price'); + // return ''.$value.''; + // })->unescape(); + // } }); return $content ->translation($this->translation)