Ejemplo n.º 1
0
def iniciar_envio(params_exec, dados, metodo, *args, **kwargs):
    print('- Iniciando envio dos dados.')
    hoje = datetime.now().strftime("%Y-%m-%d")
    token = params_exec['token']
    total_dados = len(dados)
    contador = 0
    total_erros = 0

    for item in dados:
        lista_dados_enviar = []
        lista_controle_migracao = []
        contador += 1
        print(f'\r- Gerando JSON: {contador}/{total_dados}',
              '\n' if contador == total_dados else '',
              end='')
        hash_chaves = model.gerar_hash_chaves(sistema, tipo_registro,
                                              item['chave_dsk1'],
                                              item['chave_dsk2'])
        dict_dados = {
            'idIntegracao': hash_chaves,
            'numeroOrganograma': item['chave_dsk2'],
            'descricao': item['descricao'],
            'nivel': item['nivel'],
            'configuracaoOrganograma': {
                'id': item['id_configuracao_organograma']
            }
        }

        # print(f'Dados gerados ({contador}): ', dict_dados)
        lista_dados_enviar.append(dict_dados)
        lista_controle_migracao.append({
            'sistema': sistema,
            'tipo_registro': tipo_registro,
            'hash_chave_dsk': hash_chaves,
            'descricao_tipo_registro':
            'Cadastro de Configuração de Organogramas',
            'id_gerado': None,
            'json': json.dumps(dict_dados),
            'i_chave_dsk1': item['chave_dsk1'],
            'i_chave_dsk2': item['chave_dsk2']
        })

        if True:
            model.insere_tabela_controle_migracao_registro(
                params_exec, lista_req=lista_controle_migracao)
            req_res = interacao_cloud.preparar_requisicao_sem_lote(
                lista_dados=lista_dados_enviar,
                token=token,
                url=url,
                tipo_registro=tipo_registro)
            model.atualiza_tabelas_controle_envio_sem_lote(
                params_exec, req_res, tipo_registro=tipo_registro)
            if req_res[0]['mensagem'] is not None:
                total_erros += 1
    if total_erros > 0:
        print(
            f'- Envio finalizado. Foram encontrados um total de {total_erros} inconsistência(s) de envio.'
        )
    else:
        print('- Envio de dados finalizado sem inconsistências.')
Ejemplo n.º 2
0
def iniciar_envio(params_exec, dados, metodo, *args, **kwargs):
    print('- Iniciando envio dos dados.')
    lista_dados_enviar = []
    lista_controle_migracao = []
    hoje = datetime.now().strftime("%Y-%m-%d")
    token = params_exec['token']
    total_dados = len(dados)
    contador = 0

    for item in dados:
        contador += 1
        print(f'\r- Gerando JSON: {contador}/{total_dados}',
              '\n' if contador == total_dados else '',
              end='')
        hash_chaves = model.gerar_hash_chaves(sistema, tipo_registro,
                                              item['chave_dsk1'],
                                              item['chave_dsk2'])
        url_parametrizada = url.replace('{grupoId}', str(item['id_grupo']))
        dict_dados = {
            'idIntegracao': hash_chaves,
            'url': url_parametrizada,
            'descricao': item['nome_classe'],
            'especificacao': item['espec_classe'],
            'grupo': {
                'id': item['id_grupo']
            }
        }

        print(f'Dados gerados ({contador}): ', dict_dados)
        lista_dados_enviar.append(dict_dados)
        lista_controle_migracao.append({
            'sistema': sistema,
            'tipo_registro': tipo_registro,
            'hash_chave_dsk': hash_chaves,
            'descricao_tipo_registro': 'Cadastro de Grupos',
            'id_gerado': None,
            'json': json.dumps(dict_dados),
            'i_chave_dsk1': item['chave_dsk1'],
            'i_chave_dsk2': item['chave_dsk2']
        })

    if True:
        model.insere_tabela_controle_migracao_registro(
            params_exec, lista_req=lista_controle_migracao)
        req_res = interacao_cloud.preparar_requisicao_sem_lote(
            lista_dados=lista_dados_enviar,
            token=token,
            url=url,
            tipo_registro=tipo_registro)
        model.atualiza_tabelas_controle_envio_sem_lote(
            params_exec, req_res, tipo_registro=tipo_registro)
        print('- Envio de dados finalizado.')
Ejemplo n.º 3
0
def iniciar_envio(params_exec, dados, metodo, *args, **kwargs):
    print('- Iniciando envio dos dados.')
    lista_dados_enviar = []
    lista_controle_migracao = []
    hoje = datetime.now().strftime("%Y-%m-%d")
    token = params_exec['token']
    total_dados = len(dados)
    contador = 0

    for item in dados:
        contador += 1
        print(f'\r- Gerando JSON: {contador}/{total_dados}',
              '\n' if contador == total_dados else '',
              end='')
        hash_chaves = model.gerar_hash_chaves(sistema, tipo_registro,
                                              item["cnicodigo"])
        dict_dados = {
            'idIntegracao': hash_chaves,
            'simbolo': item['simbolo'],
            'nome': item['descricao'],
            'nomePlural': item['descricao'],
            'fracionaria': item['fracionada'],
            'grandeza': {
                'valor': item['grandeza'],
                'descricao': item['grandeza']
            }
        }

        # print(f'Dados gerados ({contador}): ', dict_dados)
        lista_dados_enviar.append(dict_dados)
        lista_controle_migracao.append({
            'sistema': sistema,
            'tipo_registro': tipo_registro,
            'hash_chave_dsk': hash_chaves,
            'descricao_tipo_registro': 'Cadastro de Unidades de Medida',
            'id_gerado': None,
            'json': json.dumps(dict_dados),
            'i_chave_dsk1': item["cnicodigo"]
        })

    if True:
        model.insere_tabela_controle_migracao_registro(
            params_exec, lista_req=lista_controle_migracao)
        req_res = interacao_cloud.preparar_requisicao_sem_lote(
            lista_dados=lista_dados_enviar,
            token=token,
            url=url,
            tipo_registro=tipo_registro)
        model.atualiza_tabelas_controle_envio_sem_lote(
            params_exec, req_res, tipo_registro=tipo_registro)
        print('- Envio de dados finalizado.')
def iniciar_envio(params_exec, dados, metodo, *args, **kwargs):
    print('- Iniciando envio dos dados.')
    lista_dados_enviar = []
    lista_controle_migracao = []
    hoje = datetime.now().strftime("%Y-%m-%d")
    token = params_exec['token']
    total_dados = len(dados)
    contador = 0

    for item in dados:
        contador += 1
        print(f'\r- Gerando JSON: {contador}/{total_dados}',
              '\n' if contador == total_dados else '',
              end='')
        hash_chaves = model.gerar_hash_chaves(sistema, tipo_registro,
                                              item['ano'])
        dict_dados = {
            'descricao':
            item['descricao'],
            'idIntegracao':
            hash_chaves,
            'mascara':
            item['mascara'],
            'niveis': [{
                'nivel': item['nivel1'],
                'descricao': item['descricao1'],
                'digitos': item['digito1']
            }, {
                'nivel': item['nivel2'],
                'descricao': item['descricao2'],
                'digitos': item['digito2'],
                'separador': item['separador']
            }, {
                'nivel': item['nivel3'],
                'descricao': item['descricao3'],
                'digitos': item['digito3'],
                'separador': item['separador']
            }, {
                'nivel': item['nivel4'],
                'descricao': item['descricao4'],
                'digitos': item['digito4'],
                'separador': item['separador']
            }, {
                'nivel': item['nivel5'],
                'descricao': item['descricao5'],
                'digitos': item['digito5'],
                'separador': item['separador']
            }]
        }
        # print(f'Dados gerados ({contador}): ', dict_dados)
        lista_dados_enviar.append(dict_dados)
        lista_controle_migracao.append({
            'sistema': sistema,
            'tipo_registro': tipo_registro,
            'hash_chave_dsk': hash_chaves,
            'descricao_tipo_registro':
            'Cadastro de Configuração de Organogramas',
            'id_gerado': None,
            'json': json.dumps(dict_dados),
            'i_chave_dsk1': item['ano']
        })

    if True:
        model.insere_tabela_controle_migracao_registro(
            params_exec, lista_req=lista_controle_migracao)
        req_res = interacao_cloud.preparar_requisicao_sem_lote(
            lista_dados=lista_dados_enviar,
            token=token,
            url=url,
            tipo_registro=tipo_registro)
        # model.insere_tabela_controle_lote(req_res)
        model.atualiza_tabelas_controle_envio_sem_lote(
            params_exec, req_res, tipo_registro=tipo_registro)
        print('- Envio de dados finalizado.')