/** * Verifica se existe só um telefone por tipo * @param TelefoneValueObject $telefone */ private function _checkOnlyOneTelefoneByType(TelefoneValueObject $telefone) { $filter = TelefoneValueObject::factory(); $filter->setSqPessoa($telefone->getSqPessoa())->setSqTipoTelefone($telefone->getSqTipoTelefone()); $result = parent::findByParam($filter); foreach ($result as $item) { if ($item->getSqTelefone() == $telefone->getSqTelefone()) { continue; } throw new BusinessException('MN089'); } }
/** * Verifica se existe só um endereço por tipo * @param EnderecoValueObject $endereco */ private function _checkOnlyOneEnderecoByType(EnderecoValueObject $endereco) { $filter = EnderecoValueObject::factory(); $filter->setSqPessoa($endereco->getSqPessoa())->setSqTipoEndereco($endereco->getSqTipoEndereco()); $result = parent::findByParam($filter); foreach ($result as $item) { if ($item->getSqEndereco() == $endereco->getSqEndereco()) { continue; } throw new BusinessException('MN088'); } }
/** * Verifica se existe só um email por tipo * @param EmailValueObject $email */ private function _checkOnlyOneEmailByType(EmailValueObject $email) { $filter = EmailValueObject::factory(); $filter->setSqPessoa($email->getSqPessoa())->setSqTipoEmail($email->getSqTipoEmail()); $result = parent::findByParam($filter); foreach ($result as $item) { if ($item->getSqEmail() == $email->getSqEmail()) { continue; } throw new BusinessException('MN090'); } }