|
...
|
...
|
@@ -434,16 +434,49 @@ class ProductLogic extends BaseLogic |
|
|
|
public function setCopyProduct(){
|
|
|
|
$info = $this->model->read(['id'=>$this->param['id']]);
|
|
|
|
$param = $this->setProductParams($info);
|
|
|
|
$save_id = $this->model->insertGetId($param);
|
|
|
|
$route = preg_replace('/-product.*/', '', $param['route']);
|
|
|
|
$route = RouteMap::setRoute($route, RouteMap::SOURCE_PRODUCT, $save_id, $this->user['project_id']);
|
|
|
|
$this->model->edit(['route'=>$route],['id'=>$save_id]);
|
|
|
|
//同步可视化装修数据
|
|
|
|
$this->copyTemplate($this->param['id'],$info['project_id'],$save_id);
|
|
|
|
DB::beginTransaction();
|
|
|
|
try {
|
|
|
|
$save_id = $this->model->insertGetId($param);
|
|
|
|
CategoryRelated::saveRelated($save_id, $info['category_id']);
|
|
|
|
$route = preg_replace('/-product.*/', '', $param['route']);
|
|
|
|
//同步分类关联表
|
|
|
|
$route = RouteMap::setRoute($route, RouteMap::SOURCE_PRODUCT, $save_id, $this->user['project_id']);
|
|
|
|
$this->model->edit(['route'=>$route],['id'=>$save_id]);
|
|
|
|
//同步可视化装修数据
|
|
|
|
$this->copyTemplate($this->param['id'],$info['project_id'],$save_id);
|
|
|
|
//同步扩展字段
|
|
|
|
$this->copyExtendInfo($info['id'],$save_id);
|
|
|
|
DB::commit();
|
|
|
|
}catch (\Exception $e){
|
|
|
|
DB::rollBack();
|
|
|
|
$this->fail('复制失败,请联系管理员');
|
|
|
|
}
|
|
|
|
return $this->success(['id'=>$save_id]);
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @remark :复制项目扩展字段
|
|
|
|
* @name :copyExtendInfo
|
|
|
|
* @author :lyh
|
|
|
|
* @method :post
|
|
|
|
* @time :2024/7/12 9:23
|
|
|
|
*/
|
|
|
|
public function copyExtendInfo($old_id,$new_id){
|
|
|
|
$extendInfoModel = new ExtendInfo();
|
|
|
|
$extendList = $extendInfoModel->list(['product_id'=>$old_id]);
|
|
|
|
if(!empty($extendList)){
|
|
|
|
foreach ($extendList as $k => $v){
|
|
|
|
$v['product_id'] = $new_id;
|
|
|
|
$v['created_at'] = date('Y-m-d H:i:s');
|
|
|
|
$v['updated_at'] = date('Y-m-d H:i:s');
|
|
|
|
$extendList[$k] = $v;
|
|
|
|
}
|
|
|
|
$extendList->insert($extendList);
|
|
|
|
}
|
|
|
|
return $this->success();
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @remark :同步模版数据
|
|
|
|
* @name :copyTemplate
|
|
|
|
* @author :lyh
|
...
|
...
|
|