if (true) { $validator['validator']->check($data, $schema); if ($validator['validator']->isValid()) { $farmacia = json_decode($app->request->getBody(), true); $nome = $farmacia['nome']; $descricao = $farmacia['descricao']; $f = $em->find('Farmacia', $fid); $s = $em->find('Stock', $sid); if ($f !== null && $s !== null) { if ($f->getStockes()->contains($s)) { $em->getConnection()->beginTransaction(); $categoriaCriada = true; try { $c = new Categoria(); $c->setNome($nome); $c->setDescricao($descricao); $c->setDataDeCriacao(new DateTime('NOW')); $c->setDataDeActualizacao(new DateTime('NOW')); $s->addCategoria($c); $em->persist($s); $em->flush(); $em->getConnection()->commit(); } catch (Exception $e) { $em->getConnection()->rollback(); $categoriaCriada = true; } if ($categoriaCriada) { $r = array('farmacias' => array('id' => $c->getId(), 'nome' => $c->getNome(), 'descricao' => $c->getDescricao(), 'dataDeCriacao' => $c->getDataDeCriacao()->format('Y-m-d H:i:s'), 'dataDeActualizacao' => $c->getDataDeActualizacao()->format('Y-m-d H:i:s'))); $app->response->setStatus(201); } else { echo "x";