作者 赵彬吉
@@ -397,29 +397,56 @@ class ProjectUpdate extends Command @@ -397,29 +397,56 @@ class ProjectUpdate extends Command
397 $ve = ''; 397 $ve = '';
398 } 398 }
399 $extend = $extend_model->read(['title' => $ke]); 399 $extend = $extend_model->read(['title' => $ke]);
400 - if (!$extend) {  
401 - $extend_key = $this->get_extend_key($extend_model);  
402 - $extend_model->add([  
403 - 'project_id' => $project_id,  
404 - 'title' => $ke,  
405 - 'type' => 1,  
406 - 'key' => $extend_key  
407 - ]);  
408 - } else {  
409 - $extend_key = $extend['key'];  
410 - }  
411 400
412 - $extend_info = $extend_info_model->read(['key' => $extend_key, 'product_id' => $id]);  
413 - if (!$extend_info) {  
414 - $extend_info_model->add([  
415 - 'key' => $extend_key,  
416 - 'project_id' => $project_id,  
417 - 'product_id' => $id,  
418 - 'values' => $ve,  
419 - 'type' => 1  
420 - ]);  
421 - } else {  
422 - $extend_info_model->edit(['values' => $ve], ['key' => $extend_key, 'product_id' => $id]); 401 + if ($extend) {
  402 + if ($extend['type'] == 3) {
  403 + //图片
  404 + $gallery = [];
  405 + if (is_array($ve)) {
  406 + foreach ($ve as $ve_img) {
  407 + $gallery[] = ['title' => '', 'description' => '', 'url' => $this->source_download($ve_img, $project_id, $domain_arr['host'], $web_url_domain, $home_url, 1)];
  408 + }
  409 + } else {
  410 + $gallery[] = ['title' => '', 'description' => '', 'url' => $this->source_download($ve, $project_id, $domain_arr['host'], $web_url_domain, $home_url, 1)];
  411 + }
  412 + $value = Arr::a2s($gallery);
  413 + } elseif ($extend['type'] == 4) {
  414 + //文件
  415 + $file = [];
  416 + if (is_array($ve)) {
  417 + $file_title = $ve['title'] ?? '';
  418 + $file_url = $ve['url'] ?? '';
  419 + if ($file_url) {
  420 + $file[] = [
  421 + 'name' => $file_title,
  422 + 'url' => $this->source_download($file_url, $project_id, $domain_arr['host'], $web_url_domain, $home_url, 1)
  423 + ];
  424 + }
  425 + } elseif ($ve) {
  426 + $ve_array = explode('/', $ve);
  427 + $file[] = [
  428 + 'name' => end($ve_array),
  429 + 'url' => $this->source_download($ve, $project_id, $domain_arr['host'], $web_url_domain, $home_url, 1)
  430 + ];
  431 + }
  432 + $value = Arr::a2s($file);
  433 + } else {
  434 + //文本
  435 + $value = $ve;
  436 + }
  437 +
  438 + $extend_info = $extend_info_model->read(['key' => $extend['key'], 'product_id' => $id]);
  439 + if (!$extend_info) {
  440 + $extend_info_model->add([
  441 + 'key' => $extend['key'],
  442 + 'type' => $extend['type'],
  443 + 'project_id' => $project_id,
  444 + 'product_id' => $id,
  445 + 'values' => $value,
  446 + ]);
  447 + } else {
  448 + $extend_info_model->edit(['type' => $extend['type'], 'values' => $value], ['key' => $extend['key'], 'product_id' => $id]);
  449 + }
423 } 450 }
424 } 451 }
425 } 452 }
@@ -712,6 +739,9 @@ class ProjectUpdate extends Command @@ -712,6 +739,9 @@ class ProjectUpdate extends Command
712 if ($six_read) { 739 if ($six_read) {
713 if ($item['extend'] ?? []) { 740 if ($item['extend'] ?? []) {
714 foreach ($item['extend'] as $ke => $ve) { 741 foreach ($item['extend'] as $ke => $ve) {
  742 + if ($ve == '--') {
  743 + $ve = '';
  744 + }
715 $extend = $extend_model->read(['title' => $ke]); 745 $extend = $extend_model->read(['title' => $ke]);
716 if ($extend) { 746 if ($extend) {
717 if ($extend['type'] == 3) { 747 if ($extend['type'] == 3) {
@@ -727,21 +757,24 @@ class ProjectUpdate extends Command @@ -727,21 +757,24 @@ class ProjectUpdate extends Command
727 $value = Arr::a2s($gallery); 757 $value = Arr::a2s($gallery);
728 } elseif ($extend['type'] == 4) { 758 } elseif ($extend['type'] == 4) {
729 //文件 759 //文件
  760 + $file = [];
730 if (is_array($ve)) { 761 if (is_array($ve)) {
731 - if (isset($ve['title']) || isset($ve['url'])) {  
732 - $file = [  
733 - [  
734 - 'name' => isset($ve['title']) ? $ve['title'] : '',  
735 - 'url' => isset($ve['url']) ? $this->source_download($ve['url'], $project_id, $domain_arr['host'], $web_url_domain, $home_url, 1) : ''  
736 - ] 762 + $file_title = $ve['title'] ?? '';
  763 + $file_url = $ve['url'] ?? '';
  764 + if ($file_url) {
  765 + $file[] = [
  766 + 'name' => $file_title,
  767 + 'url' => $this->source_download($file_url, $project_id, $domain_arr['host'], $web_url_domain, $home_url, 1)
737 ]; 768 ];
738 - } else {  
739 - $file = [];  
740 } 769 }
741 - $value = Arr::a2s($file);  
742 - } else {  
743 - $value = Arr::a2s([$this->source_download($ve, $project_id, $domain_arr['host'], $web_url_domain, $home_url, 1)]); 770 + } elseif ($ve) {
  771 + $ve_array = explode('/', $ve);
  772 + $file[] = [
  773 + 'name' => end($ve_array),
  774 + 'url' => $this->source_download($ve, $project_id, $domain_arr['host'], $web_url_domain, $home_url, 1)
  775 + ];
744 } 776 }
  777 + $value = Arr::a2s($file);
745 } else { 778 } else {
746 //文本 779 //文本
747 $value = $ve; 780 $value = $ve;
@@ -1064,8 +1097,8 @@ class ProjectUpdate extends Command @@ -1064,8 +1097,8 @@ class ProjectUpdate extends Command
1064 ]); 1097 ]);
1065 1098
1066 //同步到177 1099 //同步到177
1067 - $error_file = ErrorFile::where('path',$new_url)->first();  
1068 - if(!$error_file){ 1100 + $error_file = ErrorFile::where('path', $new_url)->first();
  1101 + if (!$error_file) {
1069 $error_file = new ErrorFile(); 1102 $error_file = new ErrorFile();
1070 $error_file->path = $new_url; 1103 $error_file->path = $new_url;
1071 $error_file->status = 0; 1104 $error_file->status = 0;