作者 lyh

gx

... ... @@ -127,7 +127,7 @@ class CategoryController extends BaseController
'ids.required' => 'ID不能为空'
]);
$data = $logic->delete($this->param['ids']);
$data = $logic->categoryDelete();
return $this->success($data);
}
}
... ...
... ... @@ -72,6 +72,13 @@ class KeywordController extends BaseController
return $this->success($data);
}
/**
* @remark :删除数据
* @name :delete
* @author :lyh
* @method :post
* @time :2023/8/23 17:44
*/
public function delete(Request $request, KeywordLogic $logic)
{
$request->validate([
... ... @@ -79,8 +86,7 @@ class KeywordController extends BaseController
],[
'ids.required' => 'ID不能为空'
]);
$data = $logic->delete($this->param['ids']);
$data = $logic->keywordDelete();
return $this->success($data);
}
... ...
... ... @@ -119,26 +119,22 @@ class CategoryLogic extends BaseLogic
* @method :post
* @time :2023/8/21 17:23
*/
public function delete($ids, $map = []){
$ids= array_filter(Arr::splitFilterToArray($ids), 'intval');
public function categoryDelete(){
$ids = $this->param['ids'];
DB::beginTransaction();
try {
$productModel = new Product();
foreach ($ids as $id){
$info = $this->getCacheInfo($id);
if(!$info){
continue;
$product_info = $productModel->read(['category_id'=>['like','%,'.$id.',%']]);
if($product_info !== false){
$this->fail('当前分类拥有产品不允许删除');
}
//删除路由映射
RouteMap::delRoute(RouteMap::SOURCE_PRODUCT_CATE, $id, $this->user['project_id']);
}
parent::delete($ids);
$this->model->del(['id'=>['in',$ids]]);
DB::commit();
} catch (BsideGlobalException $e){
DB::rollBack();
$this->fail($e->getMessage());
} catch (\Exception $e){
}catch (\Exception $e){
DB::rollBack();
$this->fail('删除失败');
}
... ...
... ... @@ -71,24 +71,20 @@ class KeywordLogic extends BaseLogic
return $this->success();
}
public function delete($ids, $map = []){
$ids= array_filter(Arr::splitFilterToArray($ids), 'intval');
public function keywordDelete(){
$ids = $this->param['ids'];
DB::beginTransaction();
try {
$productModel = new Product();
foreach ($ids as $id){
$info = $this->getCacheInfo($id);
if(!$info){
continue;
$product_info = $productModel->read(['category_id'=>['like','%,'.$id.',%']]);
if($product_info !== false){
$this->fail('当前关键词拥有产品不允许删除');
}
//删除路由映射
RouteMap::delRoute(RouteMap::SOURCE_PRODUCT_KEYWORD, $id, $this->user['project_id']);
}
parent::delete($ids);
$this->model->del(['id'=>['in',$ids]]);
DB::commit();
} catch (BsideGlobalException $e){
DB::rollBack();
$this->fail($e->getMessage());
}catch (\Exception $e){
DB::rollBack();
$this->fail('删除失败');
... ...