作者 lyh

gx

@@ -11,6 +11,7 @@ namespace App\Http\Controllers\Bside\GoogleKeyword; @@ -11,6 +11,7 @@ namespace App\Http\Controllers\Bside\GoogleKeyword;
11 11
12 use App\Enums\Common\Code; 12 use App\Enums\Common\Code;
13 use App\Http\Controllers\Bside\BaseController; 13 use App\Http\Controllers\Bside\BaseController;
  14 +use App\Models\GoogleSearch\GoogleLink;
14 use App\Services\GoogleLinkService; 15 use App\Services\GoogleLinkService;
15 16
16 class GoogleLinkController extends BaseController 17 class GoogleLinkController extends BaseController
@@ -23,8 +24,36 @@ class GoogleLinkController extends BaseController @@ -23,8 +24,36 @@ class GoogleLinkController extends BaseController
23 * @time :2025/4/3 16:09 24 * @time :2025/4/3 16:09
24 */ 25 */
25 public function getLink(){ 26 public function getLink(){
  27 + $linkModel = new GoogleLink();
  28 + $lists = $linkModel->lists($this->map,$this->page,$this->row,'id',['url','moz_da','status','google_search','date','project_id','domain']);
  29 + if(empty($lists['list'])){
26 $linkService = new GoogleLinkService(); 30 $linkService = new GoogleLinkService();
27 $data = $linkService->linkPageData($this->user['domain'],$this->user['project_id']); 31 $data = $linkService->linkPageData($this->user['domain'],$this->user['project_id']);
  32 + $data = $this->paginateArray($data,$this->page,$this->row);
  33 + }
28 $this->response('success',Code::SUCCESS,$data); 34 $this->response('success',Code::SUCCESS,$data);
29 } 35 }
  36 +
  37 + /**
  38 + * @remark :返回分页数据
  39 + * @name :paginateArray
  40 + * @author :lyh
  41 + * @method :post
  42 + * @time :2025/4/1 9:41
  43 + */
  44 + public function paginateArray($array, $page = 1, $pageSize = 20) {
  45 + $totalItems = count($array);
  46 + $totalPages = ceil($totalItems / $pageSize);
  47 + // 确保页码有效
  48 + $page = max(1, min($page, $totalPages));
  49 + $offset = ($page - 1) * $pageSize;
  50 + $data = array_slice($array, $offset, $pageSize);
  51 + return [
  52 + 'list' => $data,
  53 + 'page' => $page,
  54 + 'size' => $pageSize,
  55 + 'total_page' => $totalPages,
  56 + 'total' => $totalItems,
  57 + ];
  58 + }
30 } 59 }
@@ -201,6 +201,40 @@ class ProjectLogic extends BaseLogic @@ -201,6 +201,40 @@ class ProjectLogic extends BaseLogic
201 } 201 }
202 202
203 /** 203 /**
  204 + * @remark :保存上线审核问题
  205 + * @name :saveOnlineCheck
  206 + * @author :lyh
  207 + * @method :post
  208 + * @time :2025/4/3 16:41
  209 + */
  210 + public function saveOnlineCheck($project_id,$optimist_mid,$quality_mid,$question,$go_question){
  211 + if(($optimist_mid == 0) || ($quality_mid == 0)){
  212 + $this->fail('请先选择优化师和品控,在提交审核');
  213 + }
  214 + $onlineCheckModel = new OnlineCheck();
  215 + $onlineInfo = $onlineCheckModel->read(['project_id'=>$project_id]);
  216 + if($onlineInfo === false){
  217 + $data = [
  218 + 'project_id' => $project_id,
  219 + 'created_manage_id' => $this->manager['id'],
  220 + 'optimist_mid' => $optimist_mid,
  221 + 'qa_mid' => $quality_mid,
  222 + 'created_at'=>date('Y-m-d H:i:s'),
  223 + 'question'=>$question,
  224 + 'go_question'=>$go_question
  225 + ];
  226 + $onlineCheckModel->addReturnId($data);
  227 + }else{
  228 + $data = [
  229 + 'question'=>$question,
  230 + 'go_question'=>$go_question
  231 + ];
  232 + $onlineCheckModel->edit($data,['project_id'=>$project_id]);
  233 + }
  234 + return true;
  235 + }
  236 +
  237 + /**
204 * @remark :开启白帽验证产数 238 * @remark :开启白帽验证产数
205 * @name :checkAiBlog 239 * @name :checkAiBlog
206 * @author :lyh 240 * @author :lyh