|
@@ -6,15 +6,16 @@ use App\Helper\Arr; |
|
@@ -6,15 +6,16 @@ use App\Helper\Arr; |
|
6
|
use App\Models\Com\Notify;
|
6
|
use App\Models\Com\Notify;
|
|
7
|
use App\Models\Devops\ServerConfig;
|
7
|
use App\Models\Devops\ServerConfig;
|
|
8
|
use App\Models\Devops\ServersIp;
|
8
|
use App\Models\Devops\ServersIp;
|
|
|
|
9
|
+use App\Models\Domain\DomainCreateTask;
|
|
9
|
use App\Models\Domain\DomainInfo;
|
10
|
use App\Models\Domain\DomainInfo;
|
|
10
|
use App\Models\Product\Keyword;
|
11
|
use App\Models\Product\Keyword;
|
|
11
|
use App\Models\Product\KeywordRelated;
|
12
|
use App\Models\Product\KeywordRelated;
|
|
12
|
use App\Models\Product\Product;
|
13
|
use App\Models\Product\Product;
|
|
|
|
14
|
+use App\Models\Project\DeployBuild;
|
|
13
|
use App\Models\Project\Project;
|
15
|
use App\Models\Project\Project;
|
|
14
|
use App\Services\BatchExportService;
|
16
|
use App\Services\BatchExportService;
|
|
15
|
use App\Services\ProjectServer;
|
17
|
use App\Services\ProjectServer;
|
|
16
|
use Illuminate\Console\Command;
|
18
|
use Illuminate\Console\Command;
|
|
17
|
-use Symfony\Component\Process\Process;
|
|
|
|
18
|
|
19
|
|
|
19
|
class Temp extends Command
|
20
|
class Temp extends Command
|
|
20
|
{
|
21
|
{
|
|
@@ -33,6 +34,94 @@ class Temp extends Command |
|
@@ -33,6 +34,94 @@ class Temp extends Command |
|
33
|
protected $description = '临时脚本';
|
34
|
protected $description = '临时脚本';
|
|
34
|
|
35
|
|
|
35
|
/**
|
36
|
/**
|
|
|
|
37
|
+ * 伍欣组推广项目:开启AMP站点,首页不强制跳转,批量生成AMP站点页面
|
|
|
|
38
|
+ * @author Akun
|
|
|
|
39
|
+ * @date 2024/12/10 10:43
|
|
|
|
40
|
+ */
|
|
|
|
41
|
+ public function handle6()
|
|
|
|
42
|
+ {
|
|
|
|
43
|
+ //获取所有组内推广项目
|
|
|
|
44
|
+ $leader_mid = 16;
|
|
|
|
45
|
+ $project_ids = DeployBuild::where('leader_mid', $leader_mid)->pluck('project_id')->toArray();
|
|
|
|
46
|
+ $project_list = Project::where('type', 2)->whereIn('id', $project_ids)->get();
|
|
|
|
47
|
+
|
|
|
|
48
|
+ $task_model = new DomainCreateTask();
|
|
|
|
49
|
+ foreach ($project_list as $project) {
|
|
|
|
50
|
+ $project_id = $project->id;
|
|
|
|
51
|
+
|
|
|
|
52
|
+ //获取项目域名情况
|
|
|
|
53
|
+ $domain_info = DomainInfo::where('project_id', $project_id)->where('status', 1)->first();
|
|
|
|
54
|
+ if (!$domain_info) {
|
|
|
|
55
|
+ $this->output('项目id:' . $project_id . ' | 未绑定正式域名');
|
|
|
|
56
|
+ continue;
|
|
|
|
57
|
+ }
|
|
|
|
58
|
+ $domain_id = $domain_info->id;
|
|
|
|
59
|
+ $domain = $domain_info->domain;
|
|
|
|
60
|
+
|
|
|
|
61
|
+ //获取项目所在服务器
|
|
|
|
62
|
+ $serve_ip_info = ServersIp::select(['id', 'ip', 'domain', 'servers_id'])->where('id', $project->serve_id)->first()->toArray();
|
|
|
|
63
|
+ if (!$serve_ip_info) {
|
|
|
|
64
|
+ $this->output('项目id:' . $project_id . ' | 未查询到服务器数据');
|
|
|
|
65
|
+ continue;
|
|
|
|
66
|
+ }
|
|
|
|
67
|
+ $servers_id = $serve_ip_info['servers_id'];
|
|
|
|
68
|
+
|
|
|
|
69
|
+ if ($servers_id == ServerConfig::SELF_SITE_ID) {
|
|
|
|
70
|
+ $this->output('项目id:' . $project_id . ' | 自建站项目过滤');
|
|
|
|
71
|
+ continue;
|
|
|
|
72
|
+ }
|
|
|
|
73
|
+
|
|
|
|
74
|
+ if ($servers_id == ServerConfig::SELF_TEST_ID) {
|
|
|
|
75
|
+ $this->output('项目id:' . $project_id . ' | 测试项目过滤');
|
|
|
|
76
|
+ continue;
|
|
|
|
77
|
+ }
|
|
|
|
78
|
+
|
|
|
|
79
|
+ if (!check_domain_record($domain_info['domain'], $serve_ip_info)) {
|
|
|
|
80
|
+ $this->output('项目id:' . $project_id . ', domain:' . $domain . ' | 未解析到目标服务器');
|
|
|
|
81
|
+ continue;
|
|
|
|
82
|
+ }
|
|
|
|
83
|
+
|
|
|
|
84
|
+ //开启AMP站点
|
|
|
|
85
|
+ if ($domain_info->amp_status == 0) {
|
|
|
|
86
|
+ $domain_info->amp_status = 1;
|
|
|
|
87
|
+ $domain_info->amp_type = 1;
|
|
|
|
88
|
+ }
|
|
|
|
89
|
+ //首页不强制跳转
|
|
|
|
90
|
+ $domain_info->is_redirect = 0;
|
|
|
|
91
|
+ $domain_info->save();
|
|
|
|
92
|
+
|
|
|
|
93
|
+ //创建主站建站任务
|
|
|
|
94
|
+ $task_model->add([
|
|
|
|
95
|
+ 'server_id' => $servers_id,
|
|
|
|
96
|
+ 'project_id' => $project_id,
|
|
|
|
97
|
+ 'domain_id' => $domain_id,
|
|
|
|
98
|
+ 'type' => DomainCreateTask::TYPE_MAIN
|
|
|
|
99
|
+ ]);
|
|
|
|
100
|
+
|
|
|
|
101
|
+ //创建AMP站建站任务
|
|
|
|
102
|
+ $task_model->add([
|
|
|
|
103
|
+ 'server_id' => $servers_id,
|
|
|
|
104
|
+ 'project_id' => $project_id,
|
|
|
|
105
|
+ 'domain_id' => $domain_id,
|
|
|
|
106
|
+ 'type' => DomainCreateTask::TYPE_AMP
|
|
|
|
107
|
+ ]);
|
|
|
|
108
|
+
|
|
|
|
109
|
+ //请求对应C端页面更新接口
|
|
|
|
110
|
+ $c_url = 'https://' . $domain . '/api/update_page/';
|
|
|
|
111
|
+ $c_params = [
|
|
|
|
112
|
+ 'project_id' => $project_id,
|
|
|
|
113
|
+ 'type' => 3
|
|
|
|
114
|
+ ];
|
|
|
|
115
|
+ $re = http_post($c_url, json_encode($c_params), [], true);
|
|
|
|
116
|
+ if (isset($re['status']) && $re['status'] == 200) {
|
|
|
|
117
|
+ $this->output($c_url . ' | 请求成功');
|
|
|
|
118
|
+ } else {
|
|
|
|
119
|
+ $this->output($c_url . ' | ' . ($re['message'] ?? '未返回失败原因'));
|
|
|
|
120
|
+ }
|
|
|
|
121
|
+ }
|
|
|
|
122
|
+ }
|
|
|
|
123
|
+
|
|
|
|
124
|
+ /**
|
|
36
|
* 关联所有项目关键词
|
125
|
* 关联所有项目关键词
|
|
37
|
* @author Akun
|
126
|
* @author Akun
|
|
38
|
* @date 2024/11/18 15:07
|
127
|
* @date 2024/11/18 15:07
|
|
@@ -236,7 +325,7 @@ class Temp extends Command |
|
@@ -236,7 +325,7 @@ class Temp extends Command |
|
236
|
* @author Akun
|
325
|
* @author Akun
|
|
237
|
* @date 2024/09/26 10:48
|
326
|
* @date 2024/09/26 10:48
|
|
238
|
*/
|
327
|
*/
|
|
239
|
- public function handle()
|
328
|
+ public function handle1()
|
|
240
|
{
|
329
|
{
|
|
241
|
$notify_model = new Notify();
|
330
|
$notify_model = new Notify();
|
|
242
|
$project_model = new Project();
|
331
|
$project_model = new Project();
|
|
@@ -292,7 +381,7 @@ class Temp extends Command |
|
@@ -292,7 +381,7 @@ class Temp extends Command |
|
292
|
}
|
381
|
}
|
|
293
|
} else {
|
382
|
} else {
|
|
294
|
//其他服务器:请求对应C端接口
|
383
|
//其他服务器:请求对应C端接口
|
|
295
|
- $c_url = $domain . '/api/update_page/';
|
384
|
+ $c_url = 'https://' . $domain . '/api/update_page/';
|
|
296
|
$c_params = [
|
385
|
$c_params = [
|
|
297
|
'project_id' => $project_id,
|
386
|
'project_id' => $project_id,
|
|
298
|
'type' => 3
|
387
|
'type' => 3
|