where('status', 'running')->orWhere('status', 'waiting')->first(); $res['code'] = 0; $res['msg'] = 'success'; if (empty($task)) { $res['data'] = false; } else { $res['data'] = true; } return response()->json($res); } /** * 获取进行中的那个任务 * @return JsonResponse */ public function getListRunning(): JsonResponse { // 获取进行中的任务列表 $task = Task::query()->where('status', 'running')->get()->toArray(); // 判断任务是否存在 if (empty($task)) { $task[0] = ""; } // 构建返回数据 $res['code'] = 0; $res['msg'] = 'success'; $res['data'] = $task[0]; return response()->json($res); } /** * 获取等待中的任务列表 * @return JsonResponse */ public function getListWaiting(): JsonResponse { $task_list = Task::query()->where('status', 'waiting')->get()->toArray(); $res['code'] = 0; $res['msg'] = 'success'; // 判断任务是否存在 if (empty($task_list)) { $res['code'] = 1; $res['msg'] = '无任务!'; } $res['data'] = $task_list; return response()->json($res); } /** * 获取已完成的任务列表 * @return JsonResponse */ public function getListFinished(): JsonResponse { $task_list = Task::query()->where('status', 'finished')->get()->toArray(); $res['code'] = 0; $res['msg'] = 'success'; if (empty($task_list)) { $res['code'] = 1; $res['msg'] = '无任务!'; } $res['data'] = $task_list; return response()->json($res); } /** * 获取单个任务的log * @param Request $request * @return JsonResponse */ public function getTaskLog(Request $request): JsonResponse { $name = $request->get('name'); $log_file = Task::query()->where('name', $name)->value('log'); $log = shell_exec('tail -n 30 '.$log_file); $res['code'] = 0; $res['msg'] = 'success'; $res['data'] = $log; return response()->json($res); } /** * 删除任务 * @param Request $request * @return JsonResponse */ public function deleteTask(Request $request): JsonResponse { $name = $request->get('name'); $res['code'] = 0; $res['msg'] = 'success'; $res['data'] = Task::query()->where('name', $name)->delete(); return response()->json($res); } }