正在显示
1 个修改的文件
包含
41 行增加
和
9 行删除
| @@ -3,8 +3,11 @@ | @@ -3,8 +3,11 @@ | ||
| 3 | namespace App\Http\Controllers\Bside\Setting; | 3 | namespace App\Http\Controllers\Bside\Setting; |
| 4 | 4 | ||
| 5 | use App\Enums\Common\Code; | 5 | use App\Enums\Common\Code; |
| 6 | +use App\Helper\Translate; | ||
| 6 | use App\Http\Controllers\Bside\BaseController; | 7 | use App\Http\Controllers\Bside\BaseController; |
| 7 | use App\Http\Logic\Bside\Setting\ProofreadingLogic; | 8 | use App\Http\Logic\Bside\Setting\ProofreadingLogic; |
| 9 | +use App\Models\WebSetting\Proofreading; | ||
| 10 | +use App\Models\WebSetting\WebSettingCountry; | ||
| 8 | 11 | ||
| 9 | class ProofreadingController extends BaseController | 12 | class ProofreadingController extends BaseController |
| 10 | { | 13 | { |
| @@ -16,18 +19,47 @@ class ProofreadingController extends BaseController | @@ -16,18 +19,47 @@ class ProofreadingController extends BaseController | ||
| 16 | * @method :post | 19 | * @method :post |
| 17 | * @time :2023/6/12 10:52 | 20 | * @time :2023/6/12 10:52 |
| 18 | */ | 21 | */ |
| 19 | - public function lists(ProofreadingLogic $proofreadingLogic){ | ||
| 20 | - //默认显示语言为英语 | ||
| 21 | - if(!isset($this->map['language_id']) || empty($this->map['language_id'])){ | ||
| 22 | - $this->map['language_id'] = $this::LANGUAGE_ID; | 22 | + public function lists(){ |
| 23 | + //获取语种信息 | ||
| 24 | + $webSettingCountryModel = new WebSettingCountry(); | ||
| 25 | + $countryInfo = $webSettingCountryModel->read(['id'=>$this->param['language_id']]); | ||
| 26 | + //获取当前链接和语种的校队列表 | ||
| 27 | + $proofreadingModel = new Proofreading(); | ||
| 28 | + $list = $proofreadingModel->list(['url'=>$this->param['url'],'language_id'=>$this->param['language_id'],'type'=>1],'id',['id','text','translate']); | ||
| 29 | + //获取当前URl的所有文本内容 | ||
| 30 | + $new_list = $this->getUrlRead($this->param['url']); | ||
| 31 | + if(empty($list)){ | ||
| 32 | + $data = []; | ||
| 33 | + foreach ($new_list as $v){ | ||
| 34 | + $data[] = [ | ||
| 35 | + 'text'=>$v, | ||
| 36 | + 'translate'=>Translate::tran($v, $countryInfo['alias']), | ||
| 37 | + ]; | ||
| 38 | + } | ||
| 39 | + return $this->response('success',Code::SUCCESS,$data); | ||
| 40 | + } | ||
| 41 | + $old_list = []; | ||
| 42 | + $arr = []; | ||
| 43 | + foreach ($list as $v){ | ||
| 44 | + $old_list[] = $v['text']; | ||
| 45 | + $arr[$v['text']] = $v['translate']; | ||
| 23 | } | 46 | } |
| 24 | - $lists = $proofreadingLogic->proofreadingList($this->map,$this->page,$this->row); | ||
| 25 | - if(!empty($lists['list']) && ($this->param['type'] == $this::TYPE_IMAGE)){ | ||
| 26 | - foreach ($lists['list'] as $k => $v){ | ||
| 27 | - $lists['list'][$k]['image_link'] = getImageUrl($v['translate']); | 47 | + $data_list = array_merge(array_diff($old_list, $new_list),array_diff($new_list, $old_list)); |
| 48 | + $data = []; | ||
| 49 | + foreach ($data_list as $v){ | ||
| 50 | + if(isset($arr[$v])){ | ||
| 51 | + $data[] = [ | ||
| 52 | + 'text'=>$v, | ||
| 53 | + 'translate'=>$arr[$v], | ||
| 54 | + ]; | ||
| 55 | + }else{ | ||
| 56 | + $data[] = [ | ||
| 57 | + 'text'=>$v, | ||
| 58 | + 'translate'=>Translate::tran($v, $countryInfo['alias']), | ||
| 59 | + ]; | ||
| 28 | } | 60 | } |
| 29 | } | 61 | } |
| 30 | - $this->response('success',Code::SUCCESS,$lists); | 62 | + $this->response('success',Code::SUCCESS,$data); |
| 31 | } | 63 | } |
| 32 | 64 | ||
| 33 | /** | 65 | /** |
-
请 注册 或 登录 后发表评论