예제 #1
0
    def carrega_e_valida_dados_associacao(self, linha_conteudo, linha_index):
        logger.info('Linha %s: %s', linha_index, linha_conteudo)

        eol_unidade = linha_conteudo[self.__EOL_UE].strip()
        nome = linha_conteudo[self.__NOME_ASSOCIACAO].strip()
        cnpj = linha_conteudo[self.__CNPJ_ASSOCIACAO].strip()

        if cnpj and not validate_cnpj(cnpj):
            raise CargaAssociacaoException(
                f'CNPJ inválido ({cnpj}). Associação não criada.')

        cnpj = format_cnpj(cnpj) if cnpj else ""

        self.__linha_index = linha_index

        self.__dados_associacao = {
            'eol_unidade': eol_unidade,
            'nome': nome,
            'cnpj': cnpj,
            'tipo_unidade': "",
            'ue_obj': None,
            'associacao-obj': None,
        }

        return self.__dados_associacao
예제 #2
0
def cnpj_speed():
    """Check speed of validating 200 CNPJ, 100 invalid."""
    for c in CNPJ:
        try:
            assert int(c['good']) == validate_cnpj(c['cnpj'])
        except:
            print('CNPJ Validation failed: {0}'.format(c['cnpj']))
예제 #3
0
    def validate(self):
        rv = FlaskForm.validate(self)
        if not rv:
            return False

        valid = True

        if not cnpj.validate_cnpj(self.document_main.data):
            self.document_main.errors.append(u'CNPJ inválido')
            valid = False

        return valid
예제 #4
0
def isCNPJ(Value):
    Return = {"Status": True, "Message": "", "Value": None}
    if not bool(Value):
        return Return

    if validate_cnpj(Value):
        Return["Value"] = format_cnpj(Value)
    else:
        Return["Message"] = "Valor informado '" + str(
            Value) + "' não é um numero!"
        Return["Status"] = False

    return Return
예제 #5
0
def cnpj_validation(value):
    """
    CNPJ válido no formato XX.XXX.XXX/XXXX-XX
    :type value: object
    """

    if value in EMPTY_VALUES:
        return u''

    pattern = re.compile("(^\d{2}\.\d{3}\.\d{3}\/\d{4}\-\d{2}$)")
    if not pattern.match(value):
        raise ValidationError("Digite CNPJ no formato XX.XXX.XXX/XXXX-XX.")

    if not validate_cnpj(value):
        raise ValidationError("Número de CNPJ inválido.")

    return value
    def cria_ou_atualiza_associacao_from_row(cls, row, unidade, lin):
        cnpj = row[cls.__CNPJ_ASSOCIACAO]
        if cnpj and not validate_cnpj(cnpj):
            msg_erro = f'CNPJ inválido ({cnpj}) na linha {lin}. Associação não criada.'
            logger.error(msg_erro)
            cls.logs = f"{cls.logs}\n{msg_erro}"
            return None

        cnpj = format_cnpj(cnpj) if cnpj else ""

        associacao, created = Associacao.objects.update_or_create(
            cnpj=cnpj,
            defaults={
                'unidade': unidade,
                'nome': row[cls.__NOME_ASSOCIACAO],
            },
        )

        if created:
            logger.info(f'Criada Associacao {associacao.nome}')

        return associacao
 def cnpj_valido(cnpj):
     return validate_cnpj(cnpj)
예제 #8
0
 def __call__(s, param):
     if not param: return False # validate_cnpj falls over with ""
     if validate_cnpj(param): return True
     else: return False
예제 #9
0
def CNPJ(value):
    if not validate_cnpj(value):
        raise Invalid("Invalid CNPJ")
    return clean_id(value)