作者 lyh

gx

@@ -382,15 +382,26 @@ class BlogLogic extends BaseLogic @@ -382,15 +382,26 @@ class BlogLogic extends BaseLogic
382 public function batchSetCategory(){ 382 public function batchSetCategory(){
383 if(isset($this->param['category_id']) && !empty($this->param['category_id'])) { 383 if(isset($this->param['category_id']) && !empty($this->param['category_id'])) {
384 DB::connection('custom_mysql')->beginTransaction(); 384 DB::connection('custom_mysql')->beginTransaction();
385 - $this->param['category_id'] = ','.implode(',',$this->param['category_id']).','; 385 + $category_id_str = ','.implode(',',$this->param['category_id']).',';
386 try { 386 try {
387 - //批量 387 + if(!isset($this->param['is_cover']) || ($this->param['is_cover'] == 1)){
  388 + //批量覆盖
388 $param = [ 389 $param = [
389 - 'category_id'=>$this->param['category_id'], 390 + 'category_id'=>$category_id_str,
390 'status'=>$this->param['status'] 391 'status'=>$this->param['status']
391 ]; 392 ];
392 $this->model->edit($param,['id'=>['in',$this->param['id']]]); 393 $this->model->edit($param,['id'=>['in',$this->param['id']]]);
393 DB::connection('custom_mysql')->commit(); 394 DB::connection('custom_mysql')->commit();
  395 + }else{
  396 + foreach ($this->param['id'] as $id){
  397 + //获取当前产品的分类
  398 + $blogInfo = $this->model->read(['id'=>$id],['id','category_id']);
  399 + $category_ids = explode(',',trim($blogInfo['category_id'],','));
  400 + $category_ids_arr = array_values(array_unique(array_merge($category_ids,$this->param['category_id'])));
  401 + $category_ids = ','.implode(',',$category_ids_arr).',';
  402 + $this->model->edit(['category_id'=>$category_ids],['id'=>$id]);
  403 + }
  404 + }
394 //对应添加关联表 405 //对应添加关联表
395 }catch (\Exception $e){ 406 }catch (\Exception $e){
396 DB::connection('custom_mysql')->rollBack(); 407 DB::connection('custom_mysql')->rollBack();