/** * @param integer $sqArtefatoFilho * @param integer $sqArtefatoPai * @return boolean * */ public function deleteArtefatoVinculo($sqArtefatoFilho, $sqArtefatoPai) { $dtoDadosTramite = null; if ($this->_isTramiteSolicitante) { $dto = \Core_Dto::factoryFromData(array('sqArtefato' => $sqArtefatoPai), 'search'); $rsSolicitacao = $this->getServiceLocator()->getService('Solicitacao')->getSolicitacaoAberta($dto); if ($rsSolicitacao) { $rsSolicitacao = current($rsSolicitacao); $dtoDadosTramite = \Core_Dto::factoryFromData($rsSolicitacao, 'search'); } } $criteria = array('sqArtefatoFilho' => $sqArtefatoFilho, 'sqArtefatoPai' => $sqArtefatoPai); $entity = $this->_getRepository()->findOneBy($criteria); $sqTipoVinculo = $entity->getSqTipoVinculoArtefato()->getSqTipoVinculoArtefato(); parent::delete($entity->getSqArtefatoVinculo()); $entity->getSqArtefatoPai()->setSqArtefatoPai(NULL); $entity->getSqArtefatoFilho()->setSqArtefatoFilho(NULL); $this->getEntityManager()->persist($entity->getSqArtefatoPai()); $this->getEntityManager()->persist($entity->getSqArtefatoFilho()); $this->_processTramite($entity->getSqArtefatoFilho(), $dtoDadosTramite); $this->finish(); $this->_getRepository()->setOrderIn($entity->getSqArtefatoPai()->getSqArtefato()); /* registra a desvinculacao do artefato */ $this->_historicoVinculoDelete($criteria, $sqTipoVinculo); return TRUE; }
public function delete($sqArtefato) { parent::delete($sqArtefato); }