作者 lyh

Merge branch 'master' of http://47.244.231.31:8099/zhl/globalso-v6 into master-server

@@ -37,7 +37,7 @@ class Temp extends Command @@ -37,7 +37,7 @@ class Temp extends Command
37 * @author Akun 37 * @author Akun
38 * @date 2024/11/18 15:07 38 * @date 2024/11/18 15:07
39 */ 39 */
40 - public function handle() 40 + public function handle5()
41 { 41 {
42 $projects = Project::select(['id'])->orderBy('id', 'asc')->get(); 42 $projects = Project::select(['id'])->orderBy('id', 'asc')->get();
43 foreach ($projects as $project) { 43 foreach ($projects as $project) {
@@ -236,7 +236,7 @@ class Temp extends Command @@ -236,7 +236,7 @@ class Temp extends Command
236 * @author Akun 236 * @author Akun
237 * @date 2024/09/26 10:48 237 * @date 2024/09/26 10:48
238 */ 238 */
239 - public function handle1() 239 + public function handle()
240 { 240 {
241 $notify_model = new Notify(); 241 $notify_model = new Notify();
242 $project_model = new Project(); 242 $project_model = new Project();
@@ -254,10 +254,12 @@ class Temp extends Command @@ -254,10 +254,12 @@ class Temp extends Command
254 $project_info = $project_model->read(['id' => $project_id], ['serve_id']); 254 $project_info = $project_model->read(['id' => $project_id], ['serve_id']);
255 if (!$project_info) { 255 if (!$project_info) {
256 $this->output('未查询到项目数据'); 256 $this->output('未查询到项目数据');
  257 + continue;
257 } 258 }
258 $serve_ip_info = $serve_ip_model->read(['id' => $project_info['serve_id']], ['servers_id']); 259 $serve_ip_info = $serve_ip_model->read(['id' => $project_info['serve_id']], ['servers_id']);
259 if (!$serve_ip_info) { 260 if (!$serve_ip_info) {
260 $this->output('未查询到服务器数据'); 261 $this->output('未查询到服务器数据');
  262 + continue;
261 } 263 }
262 $servers_id = $serve_ip_info['servers_id']; 264 $servers_id = $serve_ip_info['servers_id'];
263 265
@@ -300,6 +302,6 @@ class Temp extends Command @@ -300,6 +302,6 @@ class Temp extends Command
300 302
301 public function output($msg) 303 public function output($msg)
302 { 304 {
303 - echo $msg . PHP_EOL; 305 + echo date('Y-m-d H:i:s') . ' | ' . $msg . PHP_EOL;
304 } 306 }
305 } 307 }
@@ -106,11 +106,11 @@ class HtmlCustomCollect extends Command @@ -106,11 +106,11 @@ class HtmlCustomCollect extends Command
106 // 'https://www.citymax-group.com/case/field-experiment-crop-lettuce/', 106 // 'https://www.citymax-group.com/case/field-experiment-crop-lettuce/',
107 // ]; 107 // ];
108 108
109 - $project_id = 626;  
110 - $project_site = 'v6-m342g.globalso.site';  
111 - $pages = [  
112 - 'https://a574.goodao.net/project_catalog/project/',  
113 - 'https://a574.goodao.net/project_catalog/project/page/2/', 109 +// $project_id = 626;
  110 +// $project_site = 'v6-m342g.globalso.site';
  111 +// $pages = [
  112 +// 'https://a574.goodao.net/project_catalog/project/',
  113 +// 'https://a574.goodao.net/project_catalog/project/page/2/',
114 // 'https://www.lecusostreetlight.com/project/560pcs-250w-smart-led-street-light-in-manila-city-philippines/', 114 // 'https://www.lecusostreetlight.com/project/560pcs-250w-smart-led-street-light-in-manila-city-philippines/',
115 // 'https://www.lecusostreetlight.com/project/3200pcs-8m-150w-solar-street-light-in-cebu-philippines/', 115 // 'https://www.lecusostreetlight.com/project/3200pcs-8m-150w-solar-street-light-in-cebu-philippines/',
116 // 'https://lecusostreetlight.com/project/170pcs-100w-split-lithium-battery-solar-street-light-in-tanzania/', 116 // 'https://lecusostreetlight.com/project/170pcs-100w-split-lithium-battery-solar-street-light-in-tanzania/',
@@ -134,7 +134,7 @@ class HtmlCustomCollect extends Command @@ -134,7 +134,7 @@ class HtmlCustomCollect extends Command
134 // 'https://www.lecusostreetlight.com/project/198pcs-8m-80w-zc-series-all-in-two-solar-light-in-philippines/', 134 // 'https://www.lecusostreetlight.com/project/198pcs-8m-80w-zc-series-all-in-two-solar-light-in-philippines/',
135 // 'https://www.lecusostreetlight.com/project/5m-30w-morden-led-garden-light-in-russian/', 135 // 'https://www.lecusostreetlight.com/project/5m-30w-morden-led-garden-light-in-russian/',
136 // 'https://www.lecusostreetlight.com/project/135pcs-all-in-one-solar-street-light-in-uae-dubai-park/' 136 // 'https://www.lecusostreetlight.com/project/135pcs-all-in-one-solar-street-light-in-uae-dubai-park/'
137 - ]; 137 +// ];
138 138
139 // $project_id = 633; 139 // $project_id = 633;
140 // $project_site = 'v6-ke5nz.globalso.site'; 140 // $project_site = 'v6-ke5nz.globalso.site';
@@ -175,6 +175,19 @@ class HtmlCustomCollect extends Command @@ -175,6 +175,19 @@ class HtmlCustomCollect extends Command
175 // 'https://www.mach-sales.com/case/cooperation-win-win-and-starting-anew-sumec-creates-a-new-sample-of-strong-enterprise-cooperation/' 175 // 'https://www.mach-sales.com/case/cooperation-win-win-and-starting-anew-sumec-creates-a-new-sample-of-strong-enterprise-cooperation/'
176 // ]; 176 // ];
177 177
  178 + $project_id = 549;
  179 + $project_site = 'v6-myz64.globalso.site';
  180 + $pages = [
  181 + 'https://sryled.goodao.net/event-staging/page/2/',
  182 + 'https://sryled.goodao.net/event-staging/page/3/',
  183 + 'https://sryled.goodao.net/event-staging/page/4/',
  184 + 'https://sryled.goodao.net/advertising-3/page/2/',
  185 + 'https://sryled.goodao.net/advertising-3/page/3/',
  186 + 'https://sryled.goodao.net/advertising-3/page/4/',
  187 + 'https://sryled.goodao.net/indoor/page/2/',
  188 + 'https://sryled.goodao.net/indoor/page/3/',
  189 + ];
  190 +
178 foreach ($pages as $page) { 191 foreach ($pages as $page) {
179 $this->start_collect(urldecode($page), $project_id, $project_site); 192 $this->start_collect(urldecode($page), $project_id, $project_site);
180 } 193 }
@@ -314,6 +327,14 @@ class HtmlCustomCollect extends Command @@ -314,6 +327,14 @@ class HtmlCustomCollect extends Command
314 $source[] = $check_vv2; 327 $source[] = $check_vv2;
315 } 328 }
316 } 329 }
  330 + preg_match_all('/<iframe\s+[^>]*?src\s*=\s*(\'|\")(.*?)\\1[^>]*?\/?\s*>/i', $html, $result_video_3);
  331 + $video_3 = $result_video_3[2] ?? [];
  332 + foreach ($video_3 as $vv3) {
  333 + $check_vv3 = $this->url_check($vv3, $project_id, $domain, $web_url_domain, $home_url);
  334 + if ($check_vv3 && (!in_array($check_vv3, $source))) {
  335 + $source[] = $check_vv3;
  336 + }
  337 + }
317 338
318 //css 339 //css
319 preg_match_all('/<link\s+[^>]*?href\s*=\s*(\'|\")(.*?)\\1[^>]*?\/?\s*>/i', $html, $result_css); 340 preg_match_all('/<link\s+[^>]*?href\s*=\s*(\'|\")(.*?)\\1[^>]*?\/?\s*>/i', $html, $result_css);
@@ -401,7 +422,12 @@ class HtmlCustomCollect extends Command @@ -401,7 +422,12 @@ class HtmlCustomCollect extends Command
401 foreach ($source as $vs) { 422 foreach ($source as $vs) {
402 423
403 if ($vs['download']) { 424 if ($vs['download']) {
404 - $new_source = CosService::uploadRemote($project_id, 'source', $vs['url_complete']); 425 + if (in_array(substr($vs['url_complete'], -3), ['pdf', 'zip', 'rar', '.gz'])) {
  426 + //可下载类资源要保持原名称
  427 + $new_source = CosService::uploadRemote($project_id, 'source', $vs['url_complete'], '', '', 1);
  428 + } else {
  429 + $new_source = CosService::uploadRemote($project_id, 'source', $vs['url_complete']);
  430 + }
405 if ($new_source) { 431 if ($new_source) {
406 CollectSource::insert([ 432 CollectSource::insert([
407 'project_id' => $project_id, 433 'project_id' => $project_id,
@@ -230,7 +230,7 @@ class AdsController extends BaseController @@ -230,7 +230,7 @@ class AdsController extends BaseController
230 public function fbInquiryChart(Request $request) 230 public function fbInquiryChart(Request $request)
231 { 231 {
232 $start_date = $request->input('start_date', date('Y-m-d', strtotime('-1 month'))); 232 $start_date = $request->input('start_date', date('Y-m-d', strtotime('-1 month')));
233 - $end_date = $request->input('end', date('Y-m-d')); 233 + $end_date = $request->input('end_date', date('Y-m-d'));
234 $result = ReInquiryForm::select(DB::raw('DATE(inquiry_date) as date'), DB::raw('COUNT(*) as count')) 234 $result = ReInquiryForm::select(DB::raw('DATE(inquiry_date) as date'), DB::raw('COUNT(*) as count'))
235 ->whereBetween('inquiry_date', [$start_date, date('Y-m-d', strtotime($end_date . ' +1 day'))]) 235 ->whereBetween('inquiry_date', [$start_date, date('Y-m-d', strtotime($end_date . ' +1 day'))])
236 ->groupBy(DB::raw('DATE(inquiry_date)')) 236 ->groupBy(DB::raw('DATE(inquiry_date)'))
@@ -69,13 +69,11 @@ class EmailController extends BaseController @@ -69,13 +69,11 @@ class EmailController extends BaseController
69 public function set_smtp(Smtp $smtp) 69 public function set_smtp(Smtp $smtp)
70 { 70 {
71 $this->request->validate([ 71 $this->request->validate([
72 - 'project_id' => ['required'],  
73 'email' => ['required', 'email', 'max:200'], 72 'email' => ['required', 'email', 'max:200'],
74 'password' => ['required', 'max:200'], 73 'password' => ['required', 'max:200'],
75 'host' => ['required', 'max:200', 'regex:/[a-zA-Z0-9][-a-zA-Z0-9]{0,62}(\.[a-zA-Z0-9][-a-zA-Z0-9]{0,62})+\.?/'], 74 'host' => ['required', 'max:200', 'regex:/[a-zA-Z0-9][-a-zA-Z0-9]{0,62}(\.[a-zA-Z0-9][-a-zA-Z0-9]{0,62})+\.?/'],
76 'from_name' => ['required', 'max:200'], 75 'from_name' => ['required', 'max:200'],
77 ], [ 76 ], [
78 - 'project_id.required' => '参数异常',  
79 'email.required' => '邮箱必须', 77 'email.required' => '邮箱必须',
80 'email.email' => '邮箱格式错误', 78 'email.email' => '邮箱格式错误',
81 'password.required' => '授权码/密码必须', 79 'password.required' => '授权码/密码必须',
@@ -83,7 +81,7 @@ class EmailController extends BaseController @@ -83,7 +81,7 @@ class EmailController extends BaseController
83 'host.regex' => 'smtp格式错误', 81 'host.regex' => 'smtp格式错误',
84 'from_name.required' => '发信人昵称必须', 82 'from_name.required' => '发信人昵称必须',
85 ]); 83 ]);
86 - $info = $smtp->read(['project_id' => $this->param['project_id']]); 84 + $info = $smtp->read(['project_id' => $this->project['id']]);
87 if (!$info) { 85 if (!$info) {
88 $smtp->add($this->param); 86 $smtp->add($this->param);
89 } else { 87 } else {
@@ -92,6 +90,11 @@ class EmailController extends BaseController @@ -92,6 +90,11 @@ class EmailController extends BaseController
92 $this->response('success'); 90 $this->response('success');
93 } 91 }
94 92
  93 + public function get_smtp(Smtp $smtp){
  94 + $info = $smtp->read(['project_id' => $this->project['id']]);
  95 + $this->response($info);
  96 + }
  97 +
95 public function group_send(GroupSendTask $groupSendTask) 98 public function group_send(GroupSendTask $groupSendTask)
96 { 99 {
97 $this->request->validate([ 100 $this->request->validate([
@@ -53,33 +53,6 @@ class QueryListener @@ -53,33 +53,6 @@ class QueryListener
53 $log = $log.' [ RunTime:'.$event->time.'ms ] '; 53 $log = $log.' [ RunTime:'.$event->time.'ms ] ';
54 Log::debug($log); 54 Log::debug($log);
55 } 55 }
56 - //监听api_no是TM咋个被改的  
57 - if (Str::contains($event->sql, 'update') && Str::contains($event->sql, '`api_no` =')) {  
58 - //记录debug 根据这个溯源  
59 - $trace = debug_backtrace();  
60 - $traces = [];  
61 - foreach ($trace as $index => $caller) {  
62 - if ($index === 0) {  
63 - continue; // 跳过当前方法的调用信息  
64 - }  
65 - $file = $caller['file'];  
66 - $line = $caller['line'];  
67 - $class = $caller['class'];  
68 - $method = $caller['function'];  
69 - $traces[] = "Method $method called from $class in file $file at line $line\n";  
70 - }  
71 - //用户信息 哪个改的 还是脚本跑的  
72 - $token = request()->header('token');  
73 - Log::channel('test')->info('api_no updated', [  
74 - 'sql' => $event->sql,  
75 - 'bindings' => $event->bindings,  
76 - 'route' => Route::current(),  
77 - 'request' => request()->all(),  
78 - 'a_info' => Cache::get(Common::MANAGE_TOKEN . $token),  
79 - 'b_info' => Cache::get($token),  
80 - 'trace' => $traces  
81 - ]);  
82 - }  
83 }catch (\Exception $exception){ 56 }catch (\Exception $exception){
84 Log::error('log sql error:'.$exception->getMessage()); 57 Log::error('log sql error:'.$exception->getMessage());
85 } 58 }
@@ -633,6 +633,7 @@ Route::middleware(['bloginauth'])->group(function () { @@ -633,6 +633,7 @@ Route::middleware(['bloginauth'])->group(function () {
633 Route::any('/del', [\App\Http\Controllers\Bside\Subscribe\EmailController::class, 'delete'])->name('subscribe_email_del'); 633 Route::any('/del', [\App\Http\Controllers\Bside\Subscribe\EmailController::class, 'delete'])->name('subscribe_email_del');
634 Route::any('/export', [\App\Http\Controllers\Bside\Subscribe\EmailController::class, 'export'])->name('subscribe_email_export'); 634 Route::any('/export', [\App\Http\Controllers\Bside\Subscribe\EmailController::class, 'export'])->name('subscribe_email_export');
635 Route::any('/set_smtp', [\App\Http\Controllers\Bside\Subscribe\EmailController::class, 'set_smtp'])->name('subscribe_email_set_smtp'); 635 Route::any('/set_smtp', [\App\Http\Controllers\Bside\Subscribe\EmailController::class, 'set_smtp'])->name('subscribe_email_set_smtp');
  636 + Route::any('/get_smtp', [\App\Http\Controllers\Bside\Subscribe\EmailController::class, 'get_smtp'])->name('subscribe_email_get_smtp');
636 Route::any('/group_send', [\App\Http\Controllers\Bside\Subscribe\EmailController::class, 'group_send'])->name('subscribe_email_group_send'); 637 Route::any('/group_send', [\App\Http\Controllers\Bside\Subscribe\EmailController::class, 'group_send'])->name('subscribe_email_group_send');
637 }); 638 });
638 639