where(['status'=>"1"])->count(); if($has_run > 0){ return false; } $task = $this->field("id,params")->where(['status'=>"0"])->order("id asc")->find(); if(empty($task)){ return false; }else{ //修改状态为执行中 $this->save(['id'=>$task['id'],'status'=>"1","start_time"=>time()]); return $task; } } //更新 public function updateTask($params) { $this->save($params); } //获取同类型任务最后一次操作时间 public function getTypeLastTask($type) { $task = $this->field("end_time")->where(['status'=>"2",'type'=>$type])->order("id desc")->find(); if(empty($task)){ return false; }else{ return date("Y-d-m H:i:s",$task['end_time']); } } //插入任务 public function addTask($type,$params,$need_tasksid = true,$need_path=true) { $task = $this->field("end_time")->where(['status'=>["in","0,1"],'type'=>$type])->order("id desc")->find(); if(!empty($task)){ return false; } if($need_path){ $params = "cd ".ROOTTTTT.";".$params; } if($need_tasksid){ $params = rtrim($params,";").'/taskid/{$taskid};'; } $save = [ "uid"=>$_SESSION['onethink_admin']['user_auth']['uid'], "created_time"=>time(), "params"=>$params, "type"=>$type ]; return $this->add($save); } }