校验SPU,SKU删除操作
parent
ce3c761795
commit
d0b5730c62
|
|
@ -126,7 +126,7 @@ class ProductCategoryController extends AdminController
|
||||||
//如果有子分类或者分类下有文章则不允许删除
|
//如果有子分类或者分类下有文章则不允许删除
|
||||||
if (ProductCategoryModel::descendantsOf($id, ['id'])->count() > 0
|
if (ProductCategoryModel::descendantsOf($id, ['id'])->count() > 0
|
||||||
|| ProductSpu::where('category_id', $id)->count() > 0) {
|
|| ProductSpu::where('category_id', $id)->count() > 0) {
|
||||||
throw new BizException(__('product-spu.options.deny_message'));
|
throw new BizException(__('product-category.options.deny_message'));
|
||||||
}
|
}
|
||||||
return parent::destroy($id);
|
return parent::destroy($id);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -10,6 +10,7 @@ use App\Admin\Extensions\Grid\Tools\Product\BatchReleaseCancel;
|
||||||
use App\Admin\Extensions\Grid\Tools\Product\BatchReleaseDown;
|
use App\Admin\Extensions\Grid\Tools\Product\BatchReleaseDown;
|
||||||
use App\Admin\Extensions\Grid\Tools\Product\BatchReleaseUp;
|
use App\Admin\Extensions\Grid\Tools\Product\BatchReleaseUp;
|
||||||
use App\Admin\Repositories\ProductSku;
|
use App\Admin\Repositories\ProductSku;
|
||||||
|
use App\Exceptions\BizException;
|
||||||
use App\Models\ProductBuynote;
|
use App\Models\ProductBuynote;
|
||||||
use App\Models\ProductGroup;
|
use App\Models\ProductGroup;
|
||||||
use App\Models\ProductSku as ProductSkuModel;
|
use App\Models\ProductSku as ProductSkuModel;
|
||||||
|
|
@ -78,6 +79,9 @@ class ProductSkuController extends AdminController
|
||||||
if (Admin::user()->can('dcat.admin.product_skus.release_up')) {
|
if (Admin::user()->can('dcat.admin.product_skus.release_up')) {
|
||||||
$actions->append(new ReleaseUp());
|
$actions->append(new ReleaseUp());
|
||||||
}
|
}
|
||||||
|
if (Admin::user()->can('dcat.admin.product_skus.sku_sync_spu')) {
|
||||||
|
$actions->append(new SkuSyncSpu());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
if ($actions->row->verify_state == 1) {
|
if ($actions->row->verify_state == 1) {
|
||||||
if (Admin::user()->can('dcat.admin.product_skus.release_cancel')) {
|
if (Admin::user()->can('dcat.admin.product_skus.release_cancel')) {
|
||||||
|
|
@ -89,9 +93,6 @@ class ProductSkuController extends AdminController
|
||||||
if (Admin::user()->can('dcat.admin.product_skus.release_down')) {
|
if (Admin::user()->can('dcat.admin.product_skus.release_down')) {
|
||||||
$actions->append(new ReleaseDown());
|
$actions->append(new ReleaseDown());
|
||||||
}
|
}
|
||||||
if (Admin::user()->can('dcat.admin.product_skus.sku_sync_spu')) {
|
|
||||||
$actions->append(new SkuSyncSpu());
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
@ -183,6 +184,15 @@ class ProductSkuController extends AdminController
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function destroy($id)
|
||||||
|
{
|
||||||
|
$sku = ProductSkuModel::findOrFail($id);
|
||||||
|
if ($sku->release_at || $sku->verify_state == 1) {//如果是上架中、或者审核中的,无法删除
|
||||||
|
throw new BizException(__('product-sku.options.deny_message'));
|
||||||
|
}
|
||||||
|
return parent::destroy($id);
|
||||||
|
}
|
||||||
|
|
||||||
public function skus(Request $request)
|
public function skus(Request $request)
|
||||||
{
|
{
|
||||||
$name = $request->input('q');
|
$name = $request->input('q');
|
||||||
|
|
|
||||||
|
|
@ -15,6 +15,7 @@ use App\Admin\Extensions\Grid\Tools\Product\BatchSkuSyncSpu;
|
||||||
use App\Admin\Extensions\Grid\Tools\Product\InitSkuBySpecs;
|
use App\Admin\Extensions\Grid\Tools\Product\InitSkuBySpecs;
|
||||||
use App\Admin\Extensions\Grid\Tools\Product\SettingSpecs;
|
use App\Admin\Extensions\Grid\Tools\Product\SettingSpecs;
|
||||||
use App\Admin\Repositories\ProductSpu;
|
use App\Admin\Repositories\ProductSpu;
|
||||||
|
use App\Exceptions\BizException;
|
||||||
use App\Models\ProductBuynote;
|
use App\Models\ProductBuynote;
|
||||||
use App\Models\ProductFeature;
|
use App\Models\ProductFeature;
|
||||||
use App\Models\ProductGroup;
|
use App\Models\ProductGroup;
|
||||||
|
|
@ -168,6 +169,17 @@ class ProductSpuController extends AdminController
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function destroy($id)
|
||||||
|
{
|
||||||
|
//如果含有子sku
|
||||||
|
$spu = ProductSpuModel::findOrFail($id);
|
||||||
|
if ($spu->hasSku()) {
|
||||||
|
throw new BizException(__('product-spu.options.deny_message'));
|
||||||
|
}
|
||||||
|
|
||||||
|
return parent::destroy($id);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Undocumented function
|
* Undocumented function
|
||||||
*
|
*
|
||||||
|
|
@ -241,6 +253,9 @@ class ProductSpuController extends AdminController
|
||||||
if (Admin::user()->can('dcat.admin.product_skus.release_up')) {
|
if (Admin::user()->can('dcat.admin.product_skus.release_up')) {
|
||||||
$actions->append(new ReleaseUp());
|
$actions->append(new ReleaseUp());
|
||||||
}
|
}
|
||||||
|
if (Admin::user()->can('dcat.admin.product_skus.sku_sync_spu')) {
|
||||||
|
$actions->append(new SkuSyncSpu());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
if ($actions->row->verify_state == 1) {
|
if ($actions->row->verify_state == 1) {
|
||||||
if (Admin::user()->can('dcat.admin.product_skus.release_cancel')) {
|
if (Admin::user()->can('dcat.admin.product_skus.release_cancel')) {
|
||||||
|
|
@ -252,9 +267,6 @@ class ProductSpuController extends AdminController
|
||||||
if (Admin::user()->can('dcat.admin.product_skus.release_down')) {
|
if (Admin::user()->can('dcat.admin.product_skus.release_down')) {
|
||||||
$actions->append(new ReleaseDown());
|
$actions->append(new ReleaseDown());
|
||||||
}
|
}
|
||||||
if (Admin::user()->can('dcat.admin.product_skus.sku_sync_spu')) {
|
|
||||||
$actions->append(new SkuSyncSpu());
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}));
|
}));
|
||||||
|
|
|
||||||
|
|
@ -36,5 +36,7 @@ return [
|
||||||
'attr_group'=>'商品分组',
|
'attr_group'=>'商品分组',
|
||||||
],
|
],
|
||||||
'options' => [
|
'options' => [
|
||||||
|
'deny' => '删除失败',
|
||||||
|
'deny_message'=>'无法删除上架中的商品和上架审核中的商品',
|
||||||
],
|
],
|
||||||
];
|
];
|
||||||
|
|
|
||||||
|
|
@ -31,5 +31,7 @@ return [
|
||||||
'release_at'=>'上架时间',
|
'release_at'=>'上架时间',
|
||||||
],
|
],
|
||||||
'options' => [
|
'options' => [
|
||||||
|
'deny' => '删除失败',
|
||||||
|
'deny_message'=>'请先删除该主商品下的子商品',
|
||||||
],
|
],
|
||||||
];
|
];
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue