作者 lyh

gx596项目为按上线时间统计

@@ -28,7 +28,7 @@ class RemainDay extends Command @@ -28,7 +28,7 @@ class RemainDay extends Command
28 * @var 按上线时间统计 28 * @var 按上线时间统计
29 */ 29 */
30 protected $projectId = [ 30 protected $projectId = [
31 - 1434,1812,276 31 + 1434,1812,276,596
32 ];//需要单独处理的项目 32 ];//需要单独处理的项目
33 33
34 /** 34 /**
@@ -161,28 +161,28 @@ class countProject extends Command @@ -161,28 +161,28 @@ class countProject extends Command
161 if($data[$v]['month_create_project_count'] != 0){ 161 if($data[$v]['month_create_project_count'] != 0){
162 $data[$v]['month_project_online_rate'] = round($data[$v]['month_project_go_online_count'] / $data[$v]['month_create_project_count'],2);//比例 162 $data[$v]['month_project_online_rate'] = round($data[$v]['month_project_go_online_count'] / $data[$v]['month_create_project_count'],2);//比例
163 } 163 }
164 - $data[$v]['count'] = $projectModel->counts(['delete_status'=>0]);//所有项目总数  
165 - $data[$v]['go_online_count'] = $projectModel->counts(['uptime'=>['!=',null],'delete_status'=>0]);//上线项目总数  
166 - $data[$v]['promotion_web_count'] = $projectModel->counts(['type'=>3,'delete_status'=>0,'created_at'=>['between',[$start_time,$end_time]]]);//推广项目总数  
167 - $data[$v]['create_web_count'] = $projectModel->counts(['type'=>2,'delete_status'=>0,'created_at'=>['between',[$start_time,$end_time]]]);//建站项目总数  
168 - $data[$v]['no_go_oline_count'] = $projectModel->counts(['uptime'=>null,'delete_status'=>0,'created_at'=>['between',[$start_time,$end_time]]]);//未上线项目数量  
169 - $data[$v]['delete_project_count'] = $projectModel->counts(['delete_status'=>1,'created_at'=>['between',[$start_time,$end_time]]]);//删除  
170 - $min_info = $projectModel->select('*')  
171 - ->selectRaw('DATEDIFF(STR_TO_DATE(uptime, "%Y-%m-%d"), STR_TO_DATE(created_at, "%Y-%m-%d")) AS diff')  
172 - ->whereNotNull('uptime') // 确保 uptime 字段不为空  
173 - ->where('created_at','<=',$end_time)  
174 - ->whereBetween('created_at', [$start_time,$end_time])  
175 - ->orderByRaw('diff ASC')  
176 - ->first();  
177 - $data[$v]['min_project_count'] = $min_info['diff'];  
178 - $max_info = $projectModel->select('*')  
179 - ->selectRaw('DATEDIFF(STR_TO_DATE(uptime, "%Y-%m-%d"), STR_TO_DATE(created_at, "%Y-%m-%d")) AS diff')  
180 - ->whereNotNull('uptime') // 确保 uptime 字段不为空  
181 - ->whereBetween('created_at', [$start_time,$end_time])  
182 - ->orderByRaw('diff DESC')  
183 - ->first();  
184 - $data[$v]['max_project_count'] = $max_info['diff'];  
185 - $data[$v]['average'] = ceil(($max_info['diff'] + $min_info['diff']) / 2); 164 + $data[$v]['count'] = $projectModel->counts(['delete_status'=>0]);//所有项目总数
  165 + $data[$v]['go_online_count'] = $projectModel->counts(['uptime'=>['!=',null],'delete_status'=>0]);//上线项目总数
  166 + $data[$v]['promotion_web_count'] = $projectModel->counts(['type'=>3,'delete_status'=>0,'created_at'=>['between',[$start_time,$end_time]]]);//推广项目总数
  167 + $data[$v]['create_web_count'] = $projectModel->counts(['type'=>2,'delete_status'=>0,'created_at'=>['between',[$start_time,$end_time]]]);//建站项目总数
  168 + $data[$v]['no_go_oline_count'] = $projectModel->counts(['uptime'=>null,'delete_status'=>0,'created_at'=>['between',[$start_time,$end_time]]]);//未上线项目数量
  169 + $data[$v]['delete_project_count'] = $projectModel->counts(['delete_status'=>1,'created_at'=>['between',[$start_time,$end_time]]]);//删除
  170 + $min_info = $projectModel->select('*')
  171 + ->selectRaw('DATEDIFF(STR_TO_DATE(uptime, "%Y-%m-%d"), STR_TO_DATE(created_at, "%Y-%m-%d")) AS diff')
  172 + ->whereNotNull('uptime') // 确保 uptime 字段不为空
  173 + ->where('created_at','<=',$end_time)
  174 + ->whereBetween('created_at', [$start_time,$end_time])
  175 + ->orderByRaw('diff ASC')
  176 + ->first();
  177 + $data[$v]['min_project_count'] = $min_info['diff'];
  178 + $max_info = $projectModel->select('*')
  179 + ->selectRaw('DATEDIFF(STR_TO_DATE(uptime, "%Y-%m-%d"), STR_TO_DATE(created_at, "%Y-%m-%d")) AS diff')
  180 + ->whereNotNull('uptime') // 确保 uptime 字段不为空
  181 + ->whereBetween('created_at', [$start_time,$end_time])
  182 + ->orderByRaw('diff DESC')
  183 + ->first();
  184 + $data[$v]['max_project_count'] = $max_info['diff'];
  185 + $data[$v]['average'] = ceil(($max_info['diff'] + $min_info['diff']) / 2);
186 } 186 }
187 return $data; 187 return $data;
188 } 188 }