作者 李宇航

合并分支 'lyh-server' 到 'master'

gx数据



查看合并请求 !1858
... ... @@ -295,4 +295,21 @@ class KeywordController extends BaseController
$logic->delAllKeyword();
$this->response('success');
}
/**
* @remark :删除关键词所有关联产品
* @name :delRelatedProductId
* @author :lyh
* @method :post
* @time :2025/4/17 11:01
*/
public function delRelatedProductId(KeywordLogic $logic){
$this->request->validate([
'keyword_id'=>'required',
],[
'keyword_id.required' => '关键词ID不能为空',
]);
$logic->delAllRelated($this->param['keyword_id']);
$this->response('success');
}
}
... ...
... ... @@ -827,21 +827,4 @@ class ProductController extends BaseController
return $keyword_name;
}
/**
* @remark :删除关联产品
* @name :delRelatedProductId
* @author :lyh
* @method :post
* @time :2025/4/17 11:01
*/
public function delRelatedProductId(){
$this->request->validate([
'id'=>'required',
],[
'id.required' => '产品ID不能为空',
]);
$productModel = new Product();
$data = $productModel->edit(['related_product_id'=>null],['id'=>$this->param['id']]);
$this->response('success',Code::SUCCESS,$data);
}
}
... ...
... ... @@ -298,6 +298,23 @@ class KeywordLogic extends BaseLogic
}
/**
* @remark :对应删除关联关系
* @name :delRelated
* @author :lyh
* @method :post
* @time :2024/11/28 9:46
*/
public function delAllRelated($keyword_id){
$productModel = new Product();
$productModel->update(['keyword_id' => DB::raw("REPLACE(keyword_id, ',$keyword_id,' , ',')"),'keyword_video_id' => DB::raw("REPLACE(keyword_video_id, ',$keyword_id,' , ',')")]);
$productModel->where('keyword_id',',')->orWhere('keyword_video_id',',')
->update(['keyword_id' => DB::raw("REPLACE(keyword_id, ',' , '')"),'keyword_video_id' => DB::raw("REPLACE(keyword_video_id, ',' , '')")]);
$keywordRelatedModel = new KeywordRelated();
$keywordRelatedModel->del(['keyword_id'=>$keyword_id]);
return $this->success();
}
/**
* @remark :删除所有的关键字
* @name :delAllKeyword
* @author :lyh
... ...
... ... @@ -283,7 +283,7 @@ Route::middleware(['bloginauth'])->group(function () {
Route::any('/delProductType', [\App\Http\Controllers\Bside\Product\ProductController::class, 'delProductType'])->name('product_delProductType');
Route::any('/getButton', [\App\Http\Controllers\Bside\Product\ProductController::class, 'getButton'])->name('product_getButton');
Route::any('/batchSetKeyword', [\App\Http\Controllers\Bside\Product\ProductController::class, 'batchSetKeyword'])->name('product_batchSetKeyword');
Route::any('/delRelatedProductId', [\App\Http\Controllers\Bside\Product\ProductController::class, 'delRelatedProductId'])->name('product_delRelatedProductId');
//产品分类batchSetKeyword
Route::get('category', [\App\Http\Controllers\Bside\Product\CategoryController::class, 'index'])->name('product_category');
Route::get('category/info', [\App\Http\Controllers\Bside\Product\CategoryController::class, 'info'])->name('product_category_info');
... ... @@ -305,6 +305,7 @@ Route::middleware(['bloginauth'])->group(function () {
Route::any('keyword/batchUpdateKeyword', [\App\Http\Controllers\Bside\Product\KeywordController::class, 'batchUpdateKeyword'])->name('product_keyword_batchUpdateKeyword');
Route::any('keyword/batchKeywordIsVideo', [\App\Http\Controllers\Bside\Product\KeywordController::class, 'batchKeywordIsVideo'])->name('product_keyword_batchKeywordIsVideo');
Route::any('keyword/batchKeywordFiled', [\App\Http\Controllers\Bside\Product\KeywordController::class, 'batchKeywordFiled'])->name('product_keyword_batchKeywordFiled');
Route::any('/delRelatedProductId', [\App\Http\Controllers\Bside\Product\KeywordController::class, 'delRelatedProductId'])->name('product_keyword_delRelatedProductId');
//产品参数
Route::get('attr', [\App\Http\Controllers\Bside\Product\AttrController::class, 'index'])->name('product_attr');
Route::get('attr/info', [\App\Http\Controllers\Bside\Product\AttrController::class, 'info'])->name('product_attr_info');
... ...