<commit_before># -*- coding: utf-8 -*-
from suds import WebFault

from interface_servico import InterfaceServico
from ambiente import FabricaAmbiente
from endereco import Endereco
from usuario import Usuario


class ServicoAtendeCliente(InterfaceServico):

    AMBIENTE_PRODUCAO = FabricaAmbiente.AMBIENTE_PRODUCAO
    AMBIENTE_HOMOLOGACAO = FabricaAmbiente.AMBIENTE_HOMOLOGACAO

    GERADOR_ONLINE = True
    GERADOR_OFFLINE = False

    def __init__(self, nome_ambiente, obj_usuario):
        if not isinstance(obj_usuario, Usuario):
            raise TypeError

        self.obj_usuario = obj_usuario
        amb = FabricaAmbiente.get_ambiente(nome_ambiente)
        super(ServicoAtendeCliente, self).__init__(amb.url)

    def verifica_disponibilidade_servicos(self, lista_codigo_servicos,
                                          cep_origem, cep_destino):

        if not isinstance(lista_codigo_servicos, list):
            raise TypeError

        res = {}
        for codigo in lista_codigo_servicos:
            try:
                res[codigo] = self._service.verificaDisponibilidadeServico(
                    self.obj_usuario.codigo_admin, codigo, cep_origem,
                    cep_destino, self.obj_usuario.nome, self.obj_usuario.senha)
            except WebFault as exp:
                print exp.message

        return res

    def consulta_cep(self, cep):
        if not isinstance(cep, str):
            raise TypeError

        try:
            res = self._service.consultaCEP(cep)
            return Endereco(res.logradouro, res.id, res.bairro, res.cep,
                            res.end, res.uf, res.complemento)
        except WebFault as exp:
            print exp.message
            return None

    def consulta_status_cartao_postagem(self):
        try:
            status = self._service.getStatusCartaoPostagem(
                self.obj_usuario.num_cartao_postagem, self.obj_usuario.nome,
                self.obj_usuario.senha)
            return status
        except WebFault as exp:
            print exp.message
            return None

    def solicita_etiquetas(self, servico_id, qtd_etiquetas=1,
                           tipo_destinatario="C"):

        try:
            faixa_etiquetas = self._service.solicitaEtiquetas(
                tipo_destinatario, self.obj_usuario.cnpj, servico_id,
                qtd_etiquetas, self.obj_usuario.nome, self.obj_usuario.senha)

        except WebFault as exp:
            print exp.fault
            print '[ERRO] Em solicita_etiquetas(). ' + exp.message
            return None
<commit_msg>ConsultaCEP retorna uma instancia de EnderecoERP<commit_after># -*- coding: utf-8 -*-
from suds import WebFault

from interface_servico import InterfaceServico
from ambiente import FabricaAmbiente
from usuario import Usuario


class ServicoAtendeCliente(InterfaceServico):

    AMBIENTE_PRODUCAO = FabricaAmbiente.AMBIENTE_PRODUCAO
    AMBIENTE_HOMOLOGACAO = FabricaAmbiente.AMBIENTE_HOMOLOGACAO

    GERADOR_ONLINE = True
    GERADOR_OFFLINE = False

    def __init__(self, nome_ambiente, obj_usuario):
        if not isinstance(obj_usuario, Usuario):
            raise TypeError

        self.obj_usuario = obj_usuario
        amb = FabricaAmbiente.get_ambiente(nome_ambiente)
        super(ServicoAtendeCliente, self).__init__(amb.url)

    def verifica_disponibilidade_servicos(self, lista_codigo_servicos,
                                          cep_origem, cep_destino):

        if not isinstance(lista_codigo_servicos, list):
            raise TypeError

        res = {}
        for codigo in lista_codigo_servicos:
            try:
                res[codigo] = self._service.verificaDisponibilidadeServico(
                    self.obj_usuario.codigo_admin, codigo, cep_origem,
                    cep_destino, self.obj_usuario.nome, self.obj_usuario.senha)
            except WebFault as exp:
                print exp.message

        return res

    def consulta_cep(self, cep):
        try:
            res = self._service.consultaCEP(cep)
            return res
        except WebFault as exp:
            print exp.message
            return None

    def consulta_status_cartao_postagem(self):
        try:
            status = self._service.getStatusCartaoPostagem(
                self.obj_usuario.num_cartao_postagem, self.obj_usuario.nome,
                self.obj_usuario.senha)
            return status
        except WebFault as exp:
            print exp.message
            return None

    def solicita_etiquetas(self, servico_id, qtd_etiquetas=1,
                           tipo_destinatario='C'):
        try:
            faixa_etiquetas = self._service.solicitaEtiquetas(
                tipo_destinatario, self.obj_usuario.cnpj, servico_id,
                qtd_etiquetas, self.obj_usuario.nome, self.obj_usuario.senha)
        except WebFault as exp:
            print exp.fault
            print '[ERRO] Em solicita_etiquetas(). ' + exp.message
            return None

{'fraction_non_alphanumeric': 0.06278836509528586, 'fraction_numerical': 0.0008024072216649949, 'mean_word_length': 2.127979924717691, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 4, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '3302867', 'n_tokens_mistral': 1594, 'n_tokens_neox': 1561, 'n_words': 299}