|
...
|
...
|
@@ -20,6 +20,7 @@ use Illuminate\Foundation\Bus\Dispatchable; |
|
|
|
use Illuminate\Queue\InteractsWithQueue;
|
|
|
|
use Illuminate\Queue\SerializesModels;
|
|
|
|
use Illuminate\Support\Facades\DB;
|
|
|
|
use Illuminate\Support\Facades\Log;
|
|
|
|
use Illuminate\Support\Facades\Schema;
|
|
|
|
|
|
|
|
class CopyProjectJob implements ShouldQueue
|
|
...
|
...
|
@@ -52,6 +53,7 @@ class CopyProjectJob implements ShouldQueue |
|
|
|
$projectModel = new Project();
|
|
|
|
DB::beginTransaction();
|
|
|
|
try {
|
|
|
|
$this->output('CopyProjectJob start, project_id: ' . $this->param['project_id']);
|
|
|
|
//复制初始项目
|
|
|
|
$data = $projectModel::where('id', $this->param['project_id'])->first();
|
|
|
|
$data = $data->getAttributes();
|
|
...
|
...
|
@@ -61,6 +63,7 @@ class CopyProjectJob implements ShouldQueue |
|
|
|
$data['finish_remain_day'] = 0;
|
|
|
|
$data['title'] = $data['title'].'-copy';
|
|
|
|
$data['delete_status'] = 1;
|
|
|
|
$data['uptime'] = null;
|
|
|
|
unset($data['id']);
|
|
|
|
$project_id = $projectModel->insertGetId($data);
|
|
|
|
$hashids = new Hashids($data['from_order_id'], 13, 'abcdefghjkmnpqrstuvwxyz1234567890');
|
|
...
|
...
|
@@ -95,7 +98,6 @@ class CopyProjectJob implements ShouldQueue |
|
|
|
unset($optimizeData['id'],$optimizeData['domain']);
|
|
|
|
$optimizeData['project_id'] = $project_id;
|
|
|
|
$optimizeData['api_no'] = 0;
|
|
|
|
$optimizeData['minor_languages'] = json_encode([]);
|
|
|
|
$optimizeModel->insert($optimizeData);
|
|
|
|
}
|
|
|
|
//复制付费表
|
|
...
|
...
|
@@ -128,6 +130,7 @@ class CopyProjectJob implements ShouldQueue |
|
|
|
DB::commit();
|
|
|
|
}catch (\Exception $e){
|
|
|
|
DB::rollBack();
|
|
|
|
$this->output('CopyProjectJob error, error message: ' . $e->getMessage());
|
|
|
|
$this->fail('error');
|
|
|
|
}
|
|
|
|
if($type != 0){
|
|
...
|
...
|
@@ -135,6 +138,7 @@ class CopyProjectJob implements ShouldQueue |
|
|
|
}
|
|
|
|
//修改项目状态
|
|
|
|
$projectModel->edit(['delete_status'=>0],['id'=>$project_id]);
|
|
|
|
$this->output('CopyProjectJob end, old project_id: ' . $this->param['project_id'] . ', new project_id: ' . $project_id);
|
|
|
|
return true;
|
|
|
|
}
|
|
|
|
|
|
...
|
...
|
@@ -170,7 +174,7 @@ class CopyProjectJob implements ShouldQueue |
|
|
|
if($table == 'gl_customer_visit' || $table == 'gl_customer_visit_item' || $table == 'gl_inquiry_other' || $table == 'gl_inquiry_form_data' || $table == 'gl_inquiry_form'){
|
|
|
|
continue;
|
|
|
|
}
|
|
|
|
// DB::connection('custom_mysql')->table($table)->truncate(); // 清空目标表数据
|
|
|
|
DB::connection('custom_mysql')->table($table)->truncate(); // 清空目标表数据
|
|
|
|
DB::connection('custom_mysql')->table($table)->insertUsing(
|
|
|
|
[], // 列名数组,留空表示插入所有列
|
|
|
|
function ($query) use ($table,$project_id) {
|
|
...
|
...
|
@@ -184,4 +188,17 @@ class CopyProjectJob implements ShouldQueue |
|
|
|
}
|
|
|
|
return true;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @param $message
|
|
|
|
* @return bool
|
|
|
|
*/
|
|
|
|
public function output($message)
|
|
|
|
{
|
|
|
|
$date = date('Y-m-d H:i:s');
|
|
|
|
$output = $date . ', ' . $message . PHP_EOL;
|
|
|
|
echo $output;
|
|
|
|
Log::info($output);
|
|
|
|
return true;
|
|
|
|
}
|
|
|
|
} |
...
|
...
|
|