From 8f54ffc9e4589d9346418d88d039b5b34cc9eb69 Mon Sep 17 00:00:00 2001 From: vine_liutk <961510893@qq.com> Date: Mon, 6 Dec 2021 17:09:52 +0800 Subject: [PATCH] =?UTF-8?q?=E8=B0=83=E6=95=B4=E5=95=86=E5=93=81=E8=B5=A0?= =?UTF-8?q?=E5=93=81=E6=B7=BB=E5=8A=A0=E7=9A=84=E6=9D=83=E9=99=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Admin/Actions/Grid/SkuGift.php | 2 +- app/Admin/Forms/SkuGift.php | 13 ++++++++++++- app/Admin/Renderable/ProductSkuTable.php | 10 ++++++---- database/seeders/AdminPermissionSeeder.php | 1 + 4 files changed, 20 insertions(+), 6 deletions(-) diff --git a/app/Admin/Actions/Grid/SkuGift.php b/app/Admin/Actions/Grid/SkuGift.php index c29a81a1..782e4d94 100644 --- a/app/Admin/Actions/Grid/SkuGift.php +++ b/app/Admin/Actions/Grid/SkuGift.php @@ -29,7 +29,7 @@ class SkuGift extends RowAction */ protected function authorize($user): bool { - return $user->can('dcat.admin.product_skus.gift'); + return $user->can('dcat.admin.product_skus.sku_gift'); } public function render() diff --git a/app/Admin/Forms/SkuGift.php b/app/Admin/Forms/SkuGift.php index 20735f3a..c68f2aca 100644 --- a/app/Admin/Forms/SkuGift.php +++ b/app/Admin/Forms/SkuGift.php @@ -31,11 +31,22 @@ class SkuGift extends Form implements LazyRenderable if ($gift['_remove_'] == 1) { $delGiftIds[] = $gift['id']; } else { - $giftSku[] = new ProductGift($gift); + if (is_null($gift['id'])) { + $giftSku[] = new ProductGift($gift); + } else { + $_gift = ProductGift::find($gift['id']); + $_gift->gift_sku_id = $gift['gift_sku_id']; + $_gift->num = $gift['num']; + $_gift->limit = $gift['limit']; + $giftSku[] = $_gift; + } } } $skuId = $input['sku_id']; $sku = ProductSku::findOrFail($skuId); + if ($sku->verify_state == 1 || !is_null($sku->release_at)) {//如果是审核中,或者上架中,则无法修改。 + return $this->response()->error('当前商品目前无法修改赠品')->refresh(); + } try { DB::beginTransaction(); $sku->gifts()->saveMany($giftSku); diff --git a/app/Admin/Renderable/ProductSkuTable.php b/app/Admin/Renderable/ProductSkuTable.php index 36a2ebaa..d4b02550 100644 --- a/app/Admin/Renderable/ProductSkuTable.php +++ b/app/Admin/Renderable/ProductSkuTable.php @@ -72,22 +72,24 @@ class ProductSkuTable extends Grid if (Admin::user()->can('dcat.admin.product_skus.release_up')) { $actions->append(new ReleaseUp()); } + if (Admin::user()->can('dcat.admin.product_skus.sku_sync_spu')) { + $actions->append(new SkuSyncSpu()); + } + if (Admin::user()->can('dcat.admin.product_skus.sku_gift')) { + $actions->append(new SkuGift()); + } } if ($actions->row->verify_state == 1) { if (Admin::user()->can('dcat.admin.product_skus.release_cancel')) { $actions->append(new ReleaseCancel()); } } - if (Admin::user()->can('dcat.admin.product_skus.sku_sync_spu')) { - $actions->append(new SkuSyncSpu()); - } } if ($actions->row->release_at) {//已上架 if (Admin::user()->can('dcat.admin.product_skus.release_down')) { $actions->append(new ReleaseDown()); } } - $actions->append(new SkuGift()); }); $grid->filter(function (Grid\Filter $filter) { diff --git a/database/seeders/AdminPermissionSeeder.php b/database/seeders/AdminPermissionSeeder.php index b508b5b7..c30ca961 100644 --- a/database/seeders/AdminPermissionSeeder.php +++ b/database/seeders/AdminPermissionSeeder.php @@ -109,6 +109,7 @@ class AdminPermissionSeeder extends Seeder 'batch_release_down'=>['name' =>'批量下架'], 'batch_release_cacel'=>['name' =>'批量取消申请'], 'batch_sku_sync_spu'=>['name' =>'批量同步主商品'], + 'sku_gift' =>['name' =>'赠品管理'], ], ], 'product_sku_verifies'=>[