作者 lyh

gx

@@ -22,6 +22,9 @@ class RemainDay extends Command @@ -22,6 +22,9 @@ class RemainDay extends Command
22 */ 22 */
23 protected $signature = 'remain_day'; 23 protected $signature = 'remain_day';
24 24
  25 + protected $projectId = [
  26 + 1434
  27 + ];//需要单独处理的项目
25 /** 28 /**
26 * The console command description. 29 * The console command description.
27 * 30 *
@@ -46,24 +49,21 @@ class RemainDay extends Command @@ -46,24 +49,21 @@ class RemainDay extends Command
46 { 49 {
47 $list = Project::whereIn('type', [Project::TYPE_TWO,Project::TYPE_THREE,Project::TYPE_FOUR])->get(); 50 $list = Project::whereIn('type', [Project::TYPE_TWO,Project::TYPE_THREE,Project::TYPE_FOUR])->get();
48 foreach ($list as $item){ 51 foreach ($list as $item){
49 - if($item['type'] == Project::TYPE_TWO){  
50 - //获取当前项目的达标天数  
51 - $compliance_day = Project::where(['id' => $item['id']])->value('finish_remain_day') ?: 0;  
52 - $remain_day = $item['deploy_build']['service_duration'] - $compliance_day; 52 + if(in_array($item->id,$this->projectId)){
  53 + $diff = time() - strtotime($item->uptime);
  54 + $remain_day = $item['deploy_build']['service_duration'] - floor($diff / (60 * 60 * 24));
53 }else{ 55 }else{
54 - //审核上线后开始  
55 - $check_time = OnlineCheck::where('project_id', $item['id'])->where('status', 1)->value('created_at') ?: '';  
56 - if(!$check_time){ 56 + if($item['type'] == Project::TYPE_TWO){
  57 + //获取当前项目的达标天数
  58 + $compliance_day = $item->finish_remain_day ?? 0;
  59 + $remain_day = $item['deploy_build']['service_duration'] - $compliance_day;
  60 + }else{
57 if($item->uptime){ 61 if($item->uptime){
58 $diff = time() - strtotime($item->uptime); 62 $diff = time() - strtotime($item->uptime);
59 $remain_day = $item['deploy_build']['service_duration'] - floor($diff / (60 * 60 * 24)); 63 $remain_day = $item['deploy_build']['service_duration'] - floor($diff / (60 * 60 * 24));
60 }else{ 64 }else{
61 $remain_day = $item['deploy_build']['service_duration']; 65 $remain_day = $item['deploy_build']['service_duration'];
62 } 66 }
63 - }else{  
64 - $diff = time() - strtotime($check_time);  
65 - $remain_day = floor($diff / (60 * 60 * 24));  
66 - $item->finish_remain_day = $remain_day;  
67 } 67 }
68 } 68 }
69 $item->remain_day = $remain_day > 0 ? $remain_day : 0; 69 $item->remain_day = $remain_day > 0 ? $remain_day : 0;