/** * 添加新任务 * [ * 'urls': * [ * title:"", * host:"", * url:"", * level:"" * ] * ] * @Route("/addtask", name="addtask") * @Method("POST") */ public function addTask(Request $request) { $em = $this->getDoctrine()->getManager(); $data = $this->getData($request); $this->get('logger')->addError('ERROR', $data); // return $this->response(Response::HTTP_OK,implode($data)); // return $this->response(Response::HTTP_OK, $data); //记录Url if (!empty($data['urls'])) { foreach ($data['urls'] as $url) { $urlInfo = parse_url($url['url']); if (!isset($urlInfo['host'])) { continue; } if ($em->getRepository('AppBundle:Task')->findBy(['url' => $url['url']])) { $this->get('logger')->addError('ERROR', $url['url']); continue; } $task = new Task(); $task->setStatus(Task::STATUS_NO_DO); $task->setTitle($url['title']); $task->setDomain($urlInfo['host']); $task->setUrl($url['url']); $task->setLevel($url['level']); $task->setAddtime(time()); $em->persist($task); $em->flush(); } } //记录已经完成 $task = $em->getRepository('AppBundle:Task')->find($data['id']); $task->setStatus(Task::STATUS_DO_SUCCESS); $em->flush(); return $this->response(Response::HTTP_OK, []); }