作者 lyh

gx

@@ -5,9 +5,12 @@ namespace App\Http\Controllers\Aside\Optimize; @@ -5,9 +5,12 @@ namespace App\Http\Controllers\Aside\Optimize;
5 use App\Enums\Common\Code; 5 use App\Enums\Common\Code;
6 use App\Http\Controllers\Aside\BaseController; 6 use App\Http\Controllers\Aside\BaseController;
7 use App\Http\Logic\Aside\Optimize\OptimizeLogic; 7 use App\Http\Logic\Aside\Optimize\OptimizeLogic;
  8 +use App\Models\ASide\APublicModel;
  9 +use App\Models\Channel\Channel;
8 use App\Models\Domain\DomainInfo; 10 use App\Models\Domain\DomainInfo;
9 use App\Models\Manage\Manage; 11 use App\Models\Manage\Manage;
10 use App\Models\Project\Project; 12 use App\Models\Project\Project;
  13 +use App\Models\Task\Task;
11 use Illuminate\Support\Facades\DB; 14 use Illuminate\Support\Facades\DB;
12 15
13 /** 16 /**
@@ -32,14 +35,8 @@ class OptimizeController extends BaseController @@ -32,14 +35,8 @@ class OptimizeController extends BaseController
32 $query = $this->searchParam($query); 35 $query = $this->searchParam($query);
33 $lists = $query->paginate($this->row, $this->selectParam(), 'page', $this->page)->toArray(); 36 $lists = $query->paginate($this->row, $this->selectParam(), 'page', $this->page)->toArray();
34 if(!empty($lists['list'])){ 37 if(!empty($lists['list'])){
35 - $manager = new Manage();  
36 - $domainModel = new DomainInfo();  
37 foreach ($lists['list'] as $k => $v){ 38 foreach ($lists['list'] as $k => $v){
38 - $v['plan'] = $project::planMap()[$v['plan']];  
39 - $v['optimist_mid_name'] = $manager->getName($v['optimist_mid']);  
40 - $v['tech_mid_name'] = $manager->getName($v['tech_mid']);  
41 - $v['autologin_code'] = getAutoLoginCode($v['id']);  
42 - $v['domain'] = $domainModel->getDomain($v['domain']); 39 + $v = $this->handleParam($v);
43 $lists['list'][$k] = $v; 40 $lists['list'][$k] = $v;
44 } 41 }
45 } 42 }
@@ -47,6 +44,40 @@ class OptimizeController extends BaseController @@ -47,6 +44,40 @@ class OptimizeController extends BaseController
47 } 44 }
48 45
49 /** 46 /**
  47 + * @remark :参数处理
  48 + * @name :handleParam
  49 + * @author :lyh
  50 + * @method :post
  51 + * @time :2023/8/18 14:44
  52 + */
  53 + public function handleParam(&$item){
  54 + if($item['type'] != Project::TYPE_ZERO){
  55 + $data = APublicModel::getNumByProjectId($item['id']);
  56 + }
  57 + $manageModel = new Manage();
  58 + $item['channel'] = Channel::getChannelText($item['channel']['user_id'] ?? 0);
  59 + $item['build_leader'] = $manageModel->getName($item['leader_mid']);
  60 + $item['build_manager'] = $manageModel->getName($item['manager_mid']);
  61 + $item['build_designer'] = $manageModel->getName($item['designer_mid']);
  62 + $item['build_tech'] = $manageModel->getName($item['tech_mid']);
  63 + $item['optimize_manager'] = $manageModel->getName($item['optimize_manager_mid']);
  64 + $item['optimize_optimist'] = $manageModel->getName($item['optimize_optimist_mid']);
  65 + $item['optimize_assist'] = $manageModel->getName($item['optimize_assist_mid']);
  66 + $item['optimize_tech'] = $manageModel->getName($item['optimize_tech_mid']);
  67 + $item['plan'] = Project::planMap()[$item['plan']];
  68 + $item['created_at'] = date('Y年m月d日', strtotime($item['cooperate_date']));
  69 + $item['autologin_code'] = getAutoLoginCode($item['id']);
  70 + $domainModel = new DomainInfo();
  71 + $item['domain'] = !empty($item['domain']) ? $domainModel->getDomain($item['domain']) : '';
  72 + $item['product_num'] = $data['product'] ?? 0;
  73 + $item['keyword_num'] = $item['key'] ?? 0;
  74 + $item['autologin_code'] = getAutoLoginCode($item['id']);
  75 + $item['article_num'] = ($data['blog'] ?? 0) + ($data['news'] ?? 0);
  76 + $item['task_finish_num'] = Task::getNumByProjectId($item['id'], Task::STATUS_DOWN);
  77 + $item['task_pending_num'] = Task::getNumByProjectId($item['id'], [Task::STATUS_DONGING, Task::STATUS_WAIT]);
  78 + return $item;
  79 + }
  80 + /**
50 * @remark :查询字段处理 81 * @remark :查询字段处理
51 * @name :selectParam 82 * @name :selectParam
52 * @author :lyh 83 * @author :lyh
@@ -57,14 +88,32 @@ class OptimizeController extends BaseController @@ -57,14 +88,32 @@ class OptimizeController extends BaseController
57 $select = [ 88 $select = [
58 'gl_project.id AS id', 89 'gl_project.id AS id',
59 'gl_project.title AS title', 90 'gl_project.title AS title',
  91 + 'gl_project.channel AS channel',
60 'gl_project.company AS company', 92 'gl_project.company AS company',
61 'gl_project.type AS type', 93 'gl_project.type AS type',
62 - 'gl_project_deploy_build.service_duration AS service_duration',  
63 - 'gl_project_deploy_build.plan AS plan', 94 + 'gl_project.created_at AS created_at',
  95 + 'gl_project.cooperate_date AS cooperate_date',
64 'gl_project_payment.amount AS amount', 96 'gl_project_payment.amount AS amount',
65 - 'gl_project_deploy_optimize.optimist_mid AS optimist_mid',  
66 - 'gl_project_deploy_optimize.tech_mid AS tech_mid', 97 + 'gl_project_deploy_build.dept_id AS dept_id',
  98 + 'gl_project_deploy_build.keyword_num AS key',
  99 + 'gl_project_deploy_build.service_duration AS day',
  100 + 'gl_project_deploy_build.leader_mid AS leader_mid',
  101 + 'gl_project_deploy_build.manager_mid AS manager_mid',
  102 + 'gl_project_deploy_build.designer_mid AS designer_mid',
  103 + 'gl_project_deploy_build.tech_mid AS tech_mid',
  104 + 'gl_project_deploy_build.test_domain AS test_domain',
  105 + 'gl_project_deploy_build.plan AS plan',
  106 + 'gl_project_deploy_optimize.dept_id AS optimize_dept_id',
  107 + 'gl_project_deploy_optimize.manager_mid AS optimize_manager_mid',
  108 + 'gl_project_deploy_optimize.optimist_mid AS optimize_optimist_mid',
  109 + 'gl_project_deploy_optimize.assist_mid AS optimize_assist_mid',
  110 + 'gl_project_deploy_optimize.tech_mid AS optimize_tech_mid',
  111 + 'gl_project_deploy_optimize.design_mid AS design_mid',
  112 + 'gl_project_deploy_optimize.tech_leader AS tech_leader',
67 'gl_project_deploy_optimize.domain AS domain', 113 'gl_project_deploy_optimize.domain AS domain',
  114 + 'gl_project_deploy_optimize.quality_mid AS quality_mid',
  115 + 'gl_project_deploy_optimize.design_mid AS design_mid',
  116 + 'gl_project_payment.amount AS amount',
68 ]; 117 ];
69 return $select; 118 return $select;
70 } 119 }
@@ -85,23 +134,4 @@ class OptimizeController extends BaseController @@ -85,23 +134,4 @@ class OptimizeController extends BaseController
85 return $query; 134 return $query;
86 } 135 }
87 136
88 - /**  
89 - * @remark :授权域名  
90 - * @name :empowerDomain  
91 - * @author :lyh  
92 - * @method :post  
93 - * @time :2023/6/20 15:10  
94 - */  
95 - public function empowerDomain(OptimizeLogic $optimizeLogic){  
96 - $this->request->validate([  
97 - 'id'=>'required',  
98 - 'gsc_id'=>'required'  
99 - ],[  
100 - 'id.required' => '审核域名ID不能为空',  
101 - 'gsc_id.required' => 'GSC账号ID不能为空'  
102 - ]);  
103 - $optimizeLogic->empowerDomain();  
104 - $this->response('success');  
105 - }  
106 -  
107 } 137 }