|
@@ -20,6 +20,7 @@ use Illuminate\Foundation\Bus\Dispatchable; |
|
@@ -20,6 +20,7 @@ use Illuminate\Foundation\Bus\Dispatchable; |
|
20
|
use Illuminate\Queue\InteractsWithQueue;
|
20
|
use Illuminate\Queue\InteractsWithQueue;
|
|
21
|
use Illuminate\Queue\SerializesModels;
|
21
|
use Illuminate\Queue\SerializesModels;
|
|
22
|
use Illuminate\Support\Facades\DB;
|
22
|
use Illuminate\Support\Facades\DB;
|
|
|
|
23
|
+use Illuminate\Support\Facades\Log;
|
|
23
|
use Illuminate\Support\Facades\Schema;
|
24
|
use Illuminate\Support\Facades\Schema;
|
|
24
|
|
25
|
|
|
25
|
class CopyProjectJob implements ShouldQueue
|
26
|
class CopyProjectJob implements ShouldQueue
|
|
@@ -52,6 +53,7 @@ class CopyProjectJob implements ShouldQueue |
|
@@ -52,6 +53,7 @@ class CopyProjectJob implements ShouldQueue |
|
52
|
$projectModel = new Project();
|
53
|
$projectModel = new Project();
|
|
53
|
DB::beginTransaction();
|
54
|
DB::beginTransaction();
|
|
54
|
try {
|
55
|
try {
|
|
|
|
56
|
+ $this->output('CopyProjectJob start, project_id: ' . $this->param['project_id']);
|
|
55
|
//复制初始项目
|
57
|
//复制初始项目
|
|
56
|
$data = $projectModel::where('id', $this->param['project_id'])->first();
|
58
|
$data = $projectModel::where('id', $this->param['project_id'])->first();
|
|
57
|
$data = $data->getAttributes();
|
59
|
$data = $data->getAttributes();
|
|
@@ -63,7 +65,6 @@ class CopyProjectJob implements ShouldQueue |
|
@@ -63,7 +65,6 @@ class CopyProjectJob implements ShouldQueue |
|
63
|
$data['delete_status'] = 1;
|
65
|
$data['delete_status'] = 1;
|
|
64
|
unset($data['id']);
|
66
|
unset($data['id']);
|
|
65
|
$project_id = $projectModel->insertGetId($data);
|
67
|
$project_id = $projectModel->insertGetId($data);
|
|
66
|
- @file_put_contents(storage_path('logs/lyh/copy_project'.'.log'), var_export('复制项目成功:'.$project_id, true) . PHP_EOL, FILE_APPEND);
|
|
|
|
67
|
$hashids = new Hashids($data['from_order_id'], 13, 'abcdefghjkmnpqrstuvwxyz1234567890');
|
68
|
$hashids = new Hashids($data['from_order_id'], 13, 'abcdefghjkmnpqrstuvwxyz1234567890');
|
|
68
|
$projectModel->edit(['from_order_id'=>$hashids->encode($project_id)],['id'=>$project_id]);
|
69
|
$projectModel->edit(['from_order_id'=>$hashids->encode($project_id)],['id'=>$project_id]);
|
|
69
|
//复制设置的模版
|
70
|
//复制设置的模版
|
|
@@ -96,7 +97,6 @@ class CopyProjectJob implements ShouldQueue |
|
@@ -96,7 +97,6 @@ class CopyProjectJob implements ShouldQueue |
|
96
|
unset($optimizeData['id'],$optimizeData['domain']);
|
97
|
unset($optimizeData['id'],$optimizeData['domain']);
|
|
97
|
$optimizeData['project_id'] = $project_id;
|
98
|
$optimizeData['project_id'] = $project_id;
|
|
98
|
$optimizeData['api_no'] = 0;
|
99
|
$optimizeData['api_no'] = 0;
|
|
99
|
- $optimizeData['minor_languages'] = json_encode([]);
|
|
|
|
100
|
$optimizeModel->insert($optimizeData);
|
100
|
$optimizeModel->insert($optimizeData);
|
|
101
|
}
|
101
|
}
|
|
102
|
//复制付费表
|
102
|
//复制付费表
|
|
@@ -129,7 +129,7 @@ class CopyProjectJob implements ShouldQueue |
|
@@ -129,7 +129,7 @@ class CopyProjectJob implements ShouldQueue |
|
129
|
DB::commit();
|
129
|
DB::commit();
|
|
130
|
}catch (\Exception $e){
|
130
|
}catch (\Exception $e){
|
|
131
|
DB::rollBack();
|
131
|
DB::rollBack();
|
|
132
|
- @file_put_contents(storage_path('logs/lyh/copy_project'.'.log'), var_export('复制项目失败:'.$e->getMessage(), true) . PHP_EOL, FILE_APPEND);
|
132
|
+ $this->output('CopyProjectJob error, error message: ' . $e->getMessage());
|
|
133
|
$this->fail('error');
|
133
|
$this->fail('error');
|
|
134
|
}
|
134
|
}
|
|
135
|
if($type != 0){
|
135
|
if($type != 0){
|
|
@@ -137,6 +137,7 @@ class CopyProjectJob implements ShouldQueue |
|
@@ -137,6 +137,7 @@ class CopyProjectJob implements ShouldQueue |
|
137
|
}
|
137
|
}
|
|
138
|
//修改项目状态
|
138
|
//修改项目状态
|
|
139
|
$projectModel->edit(['delete_status'=>0],['id'=>$project_id]);
|
139
|
$projectModel->edit(['delete_status'=>0],['id'=>$project_id]);
|
|
|
|
140
|
+ $this->output('CopyProjectJob end, old project_id: ' . $this->param['project_id'] . ', new project_id: ' . $project_id);
|
|
140
|
return true;
|
141
|
return true;
|
|
141
|
}
|
142
|
}
|
|
142
|
|
143
|
|
|
@@ -172,7 +173,7 @@ class CopyProjectJob implements ShouldQueue |
|
@@ -172,7 +173,7 @@ class CopyProjectJob implements ShouldQueue |
|
172
|
if($table == 'gl_customer_visit' || $table == 'gl_customer_visit_item' || $table == 'gl_inquiry_other' || $table == 'gl_inquiry_form_data' || $table == 'gl_inquiry_form'){
|
173
|
if($table == 'gl_customer_visit' || $table == 'gl_customer_visit_item' || $table == 'gl_inquiry_other' || $table == 'gl_inquiry_form_data' || $table == 'gl_inquiry_form'){
|
|
173
|
continue;
|
174
|
continue;
|
|
174
|
}
|
175
|
}
|
|
175
|
-// DB::connection('custom_mysql')->table($table)->truncate(); // 清空目标表数据
|
176
|
+ DB::connection('custom_mysql')->table($table)->truncate(); // 清空目标表数据
|
|
176
|
DB::connection('custom_mysql')->table($table)->insertUsing(
|
177
|
DB::connection('custom_mysql')->table($table)->insertUsing(
|
|
177
|
[], // 列名数组,留空表示插入所有列
|
178
|
[], // 列名数组,留空表示插入所有列
|
|
178
|
function ($query) use ($table,$project_id) {
|
179
|
function ($query) use ($table,$project_id) {
|
|
@@ -186,4 +187,17 @@ class CopyProjectJob implements ShouldQueue |
|
@@ -186,4 +187,17 @@ class CopyProjectJob implements ShouldQueue |
|
186
|
}
|
187
|
}
|
|
187
|
return true;
|
188
|
return true;
|
|
188
|
}
|
189
|
}
|
|
|
|
190
|
+
|
|
|
|
191
|
+ /**
|
|
|
|
192
|
+ * @param $message
|
|
|
|
193
|
+ * @return bool
|
|
|
|
194
|
+ */
|
|
|
|
195
|
+ public function output($message)
|
|
|
|
196
|
+ {
|
|
|
|
197
|
+ $date = date('Y-m-d H:i:s');
|
|
|
|
198
|
+ $output = $date . ', ' . $message . PHP_EOL;
|
|
|
|
199
|
+ echo $output;
|
|
|
|
200
|
+ Log::info($output);
|
|
|
|
201
|
+ return true;
|
|
|
|
202
|
+ }
|
|
189
|
} |
203
|
} |