作者 lyh

gx

@@ -5,6 +5,8 @@ namespace App\Http\Logic\Aside\Project; @@ -5,6 +5,8 @@ namespace App\Http\Logic\Aside\Project;
5 use App\Models\Com\NoticeLog; 5 use App\Models\Com\NoticeLog;
6 use App\Models\Devops\ServerConfig; 6 use App\Models\Devops\ServerConfig;
7 use App\Models\Project\ProjectRenew; 7 use App\Models\Project\ProjectRenew;
  8 +use App\Models\Template\BSettingTemplate;
  9 +use App\Models\Template\Setting;
8 use App\Models\User\ProjectMenu; 10 use App\Models\User\ProjectMenu;
9 use App\Models\User\ProjectRole; 11 use App\Models\User\ProjectRole;
10 use App\Services\SyncService; 12 use App\Services\SyncService;
@@ -525,17 +527,47 @@ class ProjectLogic extends BaseLogic @@ -525,17 +527,47 @@ class ProjectLogic extends BaseLogic
525 //复制初始项目 527 //复制初始项目
526 $data = $this->model::where('id', $this->param['project_id'])->first(); 528 $data = $this->model::where('id', $this->param['project_id'])->first();
527 $data = $data->getAttributes(); 529 $data = $data->getAttributes();
  530 + $data['type'] = 0;
528 unset($data['id']); 531 unset($data['id']);
529 $project_id = $this->model->insertGetId($data); 532 $project_id = $this->model->insertGetId($data);
530 //复制部署表 533 //复制部署表
531 $buildModel = new DeployBuild(); 534 $buildModel = new DeployBuild();
532 - $buildData = $buildModel::where('id', $this->param['project_id'])->first(); 535 + $buildData = $buildModel::where('project_id', $this->param['project_id'])->first();
533 $buildData = $buildData->getAttributes(); 536 $buildData = $buildData->getAttributes();
534 $buildData['project_id'] = $project_id; 537 $buildData['project_id'] = $project_id;
  538 + $hashids = new Hashids('test_domain', 5, 'abcdefghjkmnpqrstuvwxyz1234567890');
  539 + $code = $hashids->encode($project_id);
  540 + $buildData['test_domain'] = 'https://v6-' . $code . '.globalso.site/';
535 unset($buildData['id']); 541 unset($buildData['id']);
536 $buildModel->insert($buildData); 542 $buildModel->insert($buildData);
537 //复制优化表 543 //复制优化表
538 $optimizeModel = new DeployOptimize(); 544 $optimizeModel = new DeployOptimize();
  545 + $optimizeData = $optimizeModel::where('project_id', $this->param['project_id'])->first();
  546 + $optimizeData = $optimizeData->getAttributes();
  547 + unset($optimizeData['id'],$optimizeData['domain']);
  548 + $optimizeData['project_id'] = $project_id;
  549 + $optimizeModel->insert($optimizeData);
  550 + //复制付费表
  551 + $paymentModel = new Payment();
  552 + $paymentData = $paymentModel::where('project_id', $this->param['project_id'])->first();
  553 + $paymentData = $paymentData->getAttributes();
  554 + unset($paymentData['id']);
  555 + $paymentData['project_id'] = $project_id;
  556 + $paymentModel->insert($paymentData);
  557 + //复制用户
  558 + $userModel = new UserModel();
  559 + $userData = $userModel::where('project_id', $this->param['project_id'])->where('role_id',0)->first();
  560 + $userData = $userData->getAttributes();
  561 + unset($userData['id']);
  562 + $userData['project_id'] = $project_id;
  563 + $userModel->insert($userData);
  564 + //复制设置的模版
  565 + $settingTemplateModel = new Setting();
  566 + $settingData = $settingTemplateModel::where('project_id', $this->param['project_id'])->first();
  567 + $settingData = $settingData->getAttributes();
  568 + unset($settingData['id']);
  569 + $settingData['project_id'] = $project_id;
  570 + $settingTemplateModel->insert($settingData);
539 return $this->success($data); 571 return $this->success($data);
540 } 572 }
541 } 573 }