Beispiel #1
0
def cpf_speed():
    """Check speed of validating 200 fake CPF numbers, 100 invalid."""
    for c in CPF:
        try:
            assert int(c['good']) == validate_cpf(c['cpf'])
        except:
            print('CPF Validation failed: {0}'.format(c['cpf']))
    def associacoes_onde_cpf_e_membro(cls, cpf):
        if not validate_cpf(cpf):
            return []

        cpf_formatado = format_cpf(cpf)

        associacoes = cls.objects.filter(
            cpf=cpf_formatado).distinct("associacao").values_list(
                "associacao__uuid", flat=True)

        return associacoes
def validar_username(username, e_servidor=True):
    if not e_servidor:
        username_e_valido = validate_cpf(username)
        mensagem = "O id de um usuário não servidor deve ser um CPF válido (apenas dígitos)." if not username_e_valido else ""
    else:
        username_e_valido = True
        mensagem = ""

    return {
        'username_e_valido': username_e_valido,
        'mensagem': mensagem,
    }
Beispiel #4
0
def isCPF(Value):
    Return = {"Status": True, "Message": "", "Value": None}
    if not bool(Value):
        return Return

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

    return Return
def cria_ou_atualiza_usuario_core_sso(dados_usuario):
    """ Verifica se usuário já existe no CoreSSO e cria se não existir

    :param dados_usuario: {
            "login": "******",
            "visao": "UE",  ou "visoes": [{visao_obj},]
            "eol_unidade": "1234",
            "email": "*****@*****.**",
            "nome": "Jose Testando",
            "servidor_s_n": "S",

        }
    """
    from requests import ConnectTimeout, ReadTimeout

    try:
        info_user_core = SmeIntegracaoService.usuario_core_sso_or_none(
            login=dados_usuario['login'])

        if not info_user_core:
            # Valida o nome
            if not dados_usuario['nome']:
                raise CargaUsuarioException(
                    f"Nome é necessário para criação do usuário ({dados_usuario['login']})."
                )

            # Valida login no caso de não servidor
            if dados_usuario['servidor_s_n'] == "N" and not validate_cpf(
                    dados_usuario['login']):
                raise CargaUsuarioException(
                    f"Login de não servidor ({dados_usuario['login']}) não é um CPF válido."
                )

            SmeIntegracaoService.cria_usuario_core_sso(
                login=dados_usuario['login'],
                nome=dados_usuario['nome'],
                email=dados_usuario["email"] if dados_usuario["email"] else "",
                e_servidor=dados_usuario['servidor_s_n'] == "S")
            logger.info(f"Criado usuário no CoreSSO {dados_usuario['login']}.")

        if info_user_core and dados_usuario[
                "email"] and info_user_core["email"] != dados_usuario["email"]:
            SmeIntegracaoService.redefine_email(dados_usuario['login'],
                                                dados_usuario["email"])
            logger.info(
                f"Atualizado e-mail do usuário no CoreSSO {dados_usuario['login']}, {dados_usuario['email']}."
            )

        if 'visao' in dados_usuario and dados_usuario["visao"]:
            SmeIntegracaoService.atribuir_perfil_coresso(
                login=dados_usuario['login'], visao=dados_usuario['visao'])
            logger.info(
                f"Visão {dados_usuario['visao']} vinculada ao usuário {dados_usuario['login']} no CoreSSO."
            )

        elif 'visoes' in dados_usuario and dados_usuario["visoes"]:
            for visao in dados_usuario["visoes"]:
                SmeIntegracaoService.atribuir_perfil_coresso(
                    login=dados_usuario['login'], visao=visao.nome)
                logger.info(
                    f"Visão {visao.nome} vinculada ao usuário {dados_usuario['login']} no CoreSSO."
                )

    except SmeIntegracaoException as e:
        raise CargaUsuarioException(
            f'Erro {str(e)} ao criar/atualizar usuário {dados_usuario["login"]} no CoreSSO.'
        )

    except ReadTimeout:
        raise CargaUsuarioException(
            f'Erro de ReadTimeout ao tentar criar/atualizar usuário {dados_usuario["login"]} no CoreSSO.'
        )

    except ConnectTimeout:
        raise CargaUsuarioException(
            f'Erro de ConnectTimeout ao tentar criar/atualizar usuário {dados_usuario["login"]} no CoreSSO.'
        )
 def __call__(self, form, field):
     if field.data and not validate_cpf(field.data):
         raise ValidationError(self.message)
 def __call__(s, param):
     if not param: return False # validate_cpf falls over with ""
     #if s._check_cpf(param): return True
     if validate_cpf(param): return True
     else: return False
def CPF(value):
    if not validate_cpf(value):
        raise Invalid("Invalid CPF")
    return clean_id(value)