public function create() { $descricoes = $this->request->getPost('descricao'); $nomes = $this->request->getPost('nomes'); $id_tarefa = $this->request->getPost('tarefa_id'); $anexo_ids = []; foreach ($this->request->getUploadedFiles() as $i => $file) { $anexo = new Anexo(); $anexo->setDescricao($descricoes[$i]); $anexo->setNome($nomes[$i]); $anexo->setOriginal($file->getName()); $anexo->setCaminho(UPLOAD_PATH); if (!$anexo->validation() || !$anexo->save()) { throw new \Exception(PostResponse::createModelErrorMessages($anexo), StatusCodes::ERRO_CLI); } $novoNome = UPLOAD_PATH . "anexo_" . $anexo->getId() . "." . $file->getExtension(); $anexo->setCaminho($novoNome); $anexo->save(); $tarefa_anexo = new TarefaAnexos(); $tarefa_anexo->setIdAnexo($anexo->getId()); $tarefa_anexo->setIdTarefa($id_tarefa); if (!$tarefa_anexo->save()) { throw new \Exception(PostResponse::createModelErrorMessages($tarefa_anexo), StatusCodes::ERRO_CLI); } $anexo_ids[] = $anexo->getId(); $file->moveTo($novoNome); } return PostResponse::createResponse(true, count($anexo_ids) . " anexos adicionados com sucesso"); }