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'] contador = 0 for item in dados: hash_chaves = model.gerar_hash_chaves(sistema, tipo_registro, item['descricao'].upper()) dict_dados = { 'idIntegracao': hash_chaves, 'conteudo': { 'descricao': None if 'descricao' not in item else item['descricao'], 'abreviatura': item['abreviatura'] } } contador += 1 # 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 Tipo de Logradouro', 'id_gerado': None, 'i_chave_dsk1': item['descricao'].upper(), }) model.insere_tabela_controle_migracao_registro2(params_exec, lista_req=lista_controle_migracao) req_res = interacao_cloud.preparar_requisicao(lista_dados=lista_dados_enviar, token=token, url=url, tipo_registro=tipo_registro, tamanho_lote=limite_lote) model.insere_tabela_controle_lote(req_res) print('- Envio de dados finalizado.')
def iniciar_envio(params_exec, dados, metodo, *args, **kwargs): print('- Iniciando processo de transformação.') dh_inicio = datetime.now() 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'Gerando JSON: {contador}/{total_dados}', '\n' if contador == total_dados else '', end='') hash_chaves = model.gerar_hash_chaves(sistema, tipo_registro, item['id_entidade'], item['codigo']) dict_dados = { 'idIntegracao': hash_chaves, 'conteudo': { 'descricao': item['descricao'], 'tipo': item['tipo'], 'categoriaTrabalhador': { 'id': item['categoriatrabalhador'] }, 'sefip': item['sefip'], 'geraRais': item['gerarais'], 'vinculoTemporario': item['vinculotemporario'], 'geraCaged': item['geracaged'], 'geraLicencaPremio': item['geralicencapremio'], 'dataFinalObrigatoria': item['datafinalobrigatoria'] } } if 'rais' in item and item['rais'] is not None: dict_dados['conteudo'].update({'rais': item['rais']}) if 'motivorescisao' in item and item['motivorescisao'] is not None: dict_dados['conteudo'].update( {'motivoRescisao': { 'id': int(item['motivorescisao']) }}) 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 Vínculo Empregatício', 'id_gerado': None, 'i_chave_dsk1': item['id_entidade'], 'i_chave_dsk2': item['codigo'] }) # print(f'- Processo de transformação finalizado. ({(datetime.now() - dh_inicio).total_seconds()} segundos)') if True: model.insere_tabela_controle_migracao_registro( params_exec, lista_req=lista_controle_migracao) req_res = interacao_cloud.preparar_requisicao( lista_dados=lista_dados_enviar, token=token, url=url, tipo_registro=tipo_registro, tamanho_lote=limite_lote) model.insere_tabela_controle_lote(req_res)
def iniciar_envio(params_exec, dados, metodo, *args, **kwargs): print('- Iniciando processo de transformação.') dh_inicio = datetime.now() 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']) dict_dados = { 'idIntegracao': hash_chaves, 'conteudo': { 'nivel': item['nivel'], 'descricao': item['descricao'], 'numero': item['numero'], 'inicioVigencia': item['inicio_vigencia'], 'configuracao': { 'id': item['configuracao'] } } } 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 Lotação Física', 'id_gerado': None, 'i_chave_dsk1': item['chave_dsk1'], 'i_chave_dsk2': item['chave_dsk2'] }) print( f'- Processo de transformação finalizado. ({(datetime.now() - dh_inicio).total_seconds()} segundos)' ) if True: # Insere os registros coletados na tabela de controle model.insere_tabela_controle_migracao_registro( params_exec, lista_req=lista_controle_migracao) # Inicia o procedimento de envio para o cloud req_res = interacao_cloud.preparar_requisicao( lista_dados=lista_dados_enviar, token=token, url=url, tipo_registro=tipo_registro, tamanho_lote=300) # Insere lote na tabela de controle model.insere_tabela_controle_lote(req_res)
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'] contador = 0 for item in dados: hash_chaves = model.gerar_hash_chaves(sistema, tipo_registro, item['codigo']) dict_dados = { 'idIntegracao': hash_chaves, 'conteudo': { 'descricao': None if 'descricao' not in item else item['descricao'], 'emUso': None if 'emuso' not in item else item['emuso'], } } if item['niveis'] is not None: dict_dados['conteudo'].update({'niveis': []}) lista = item['niveis'].split('%||%') for listacampo in lista: campo = listacampo.split('%|%') dict_dados['conteudo']['niveis'].append({ 'nivel': campo[0], 'descricao': campo[1], 'quantidadeDigitos': campo[2], 'separador': campo[3], 'responsavelControleVagas': campo[4] }) contador += 1 # 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 Configuracao de Organograma', 'id_gerado': None, 'i_chave_dsk1': item['codigo'] }) model.insere_tabela_controle_migracao_registro2( params_exec, lista_req=lista_controle_migracao) req_res = interacao_cloud.preparar_requisicao( lista_dados=lista_dados_enviar, token=token, url=url, tipo_registro=tipo_registro, tamanho_lote=limite_lote) model.insere_tabela_controle_lote(req_res) 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'] contador = 0 for item in dados: hash_chaves = model.gerar_hash_chaves(sistema, tipo_registro, item['id_entidade'], item['codigo']) dict_dados = { 'idIntegracao': hash_chaves, 'conteudo': { 'codigo': None if 'codigo' not in item else item['codigo'], 'descricao': None if 'descricao' not in item else item['descricao'], 'inicioVigencia': None if 'iniciovigencia' not in item else item['iniciovigencia'], 'tipo': None if 'tipo' not in item else item['tipo'], 'classificacao': None if 'classificacao' not in item else item['classificacao'], 'classificacaoBaixaProvisao': None if 'classificacaobaixaprovisao' not in item else item['classificacaobaixaprovisao'], 'unidade': None if 'unidade' not in item else item['unidade'], 'taxa': None if 'taxa' not in item else item['taxa'], 'codigoEsocial': None if 'codigoesocial' not in item else item['codigoesocial'], 'incideDsr': None if 'incidedsr' not in item else item['incidedsr'], 'naturezaRubrica': None if 'naturezarubrica' not in item else item['naturezarubrica'], 'compoemHorasMes': None if 'compoemhorasmes' not in item else item['compoemhorasmes'], 'observacao': None if 'observacao' not in item else item['observacao'], 'desabilitado': None if 'desabilitado' not in item else item['desabilitado'], 'formula': None if 'formula' not in item else item['formula'], 'enviaTransparencia': None if 'enviatransparencia' not in item else item['enviatransparencia'], 'configuracaoProcessamentos': None if 'configuracaoprocessamentos' not in item else item['configuracaoprocessamentos'], } } if 'ato' in item and item['ato'] is not None: dict_dados['conteudo'].update({ 'ato': { 'id': int(item['ato']) }}) contador += 1 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 Evento', 'id_gerado': None, 'i_chave_dsk1': item['id_entidade'], 'i_chave_dsk2': item['codigo'] }) if True: model.insere_tabela_controle_migracao_registro2(params_exec, lista_req=lista_controle_migracao) req_res = interacao_cloud.preparar_requisicao(lista_dados=lista_dados_enviar, token=token, url=url, tipo_registro=tipo_registro, tamanho_lote=limite_lote) model.insere_tabela_controle_lote(req_res) 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'] contador = 0 for item in dados: hash_chaves = model.gerar_hash_chaves(sistema, tipo_registro, item['numero'], item['banco']) dict_dados = { 'idIntegracao': hash_chaves, 'conteudo': { "banco": { "id": int(item['banco']) }, "nome": item['nome'], "numero": item['numero'], "digito": item['digito'] } } if 'bairro' in item and item['bairro'] is not None: dict_dados['conteudo'].update({'bairro': {'id': item['bairro']}}) if 'logradouro' in item and item['logradouro'] is not None: dict_dados['conteudo'].update( {'logradouro': { 'id': item['logradouro'] }}) if 'cep' in item and item['cep'] is not None: dict_dados['conteudo'].update({'cep': item['cep']}) if 'numeroendereco' in item and item['numeroendereco'] is not None: dict_dados['conteudo'].update( {'numeroEndereco': item['numeroendereco']}) contador += 1 # 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 Agência Bancária', 'id_gerado': None, 'i_chave_dsk1': item['numero'], 'i_chave_dsk2': item['banco'], }) if True: model.insere_tabela_controle_migracao_registro( params_exec, lista_req=lista_controle_migracao) req_res = interacao_cloud.preparar_requisicao( lista_dados=lista_dados_enviar, token=token, url=url, tipo_registro=tipo_registro, tamanho_lote=limite_lote) model.insere_tabela_controle_lote(req_res) print('- Envio de dados finalizado.')
def iniciar_envio(params_exec, dados, metodo, *args, **kwargs): print('- Iniciando processo de transformação.') dh_inicio = datetime.now() 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['entidade'], item['matricula'], item['configuracao'], item['tipoprocessamento'], item['subtipoprocessamento'], item['datainicial'], item['datafinal']) dict_dados = { 'idIntegracao': hash_chaves, 'conteudo': { 'configuracao': { 'id': item['configuracao'] }, 'matricula': { 'id': item['matricula'] }, 'tipoProcessamento': item['tipoprocessamento'], 'subTipoProcessamento': item['subtipoprocessamento'], 'dataInicial': item['datainicial'], 'dataFinal': item['datafinal'], 'valor': item['valor'], 'observacao': item['observacao'] } } 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 do Lancamento de Evento', 'id_gerado': None, 'json': json.dumps(dict_dados), 'i_chave_dsk1': item['entidade'], 'i_chave_dsk2': item['matricula'], 'i_chave_dsk3': item['configuracao'], 'i_chave_dsk4': item['tipoprocessamento'], 'i_chave_dsk5': item['subtipoprocessamento'], 'i_chave_dsk6': item['datainicial'], 'i_chave_dsk7': item['datafinal'] }) print(f'- Processo de transformação finalizado. ({(datetime.now() - dh_inicio).total_seconds()} segundos)') if True: model.insere_tabela_controle_migracao_registro(params_exec, lista_req=lista_controle_migracao) req_res = interacao_cloud.preparar_requisicao(lista_dados=lista_dados_enviar, token=token, url=url, tipo_registro=tipo_registro, tamanho_lote=limite_lote) model.insere_tabela_controle_lote(req_res)
def iniciar_envio(params_exec, dados, metodo, *args, **kwargs): print('- Iniciando processo de transformação.') dh_inicio = datetime.now() 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['numerooficial'], item['tipo']) dict_dados = { 'idIntegracao': hash_chaves, 'conteudo': { 'numeroOficial': item['numerooficial'], 'tipo': { 'id': item['tipo'] }, 'naturezaTextoJuridico': { 'id': item['naturezatextojuridico'] }, 'dataCriacao': item['datacriacao'].strftime("%Y-%m-%d") } } if 'ementa' in item and item['ementa'] is not None: dict_dados['conteudo'].update({'ementa': model.cleanhtml(item['ementa'])}) if 'datavigorar' in item and item['datavigorar'] is not None: dict_dados['conteudo'].update({'dataVigorar': item['datavigorar'].strftime("%Y-%m-%d")}) if 'datapublicacao' in item and item['datapublicacao'] is not None: dict_dados['conteudo'].update({'dataPublicacao': item['datapublicacao'].strftime("%Y-%m-%d")}) if 'dataresolucao' in item and item['dataresolucao'] is not None: dict_dados['conteudo'].update({'dataResolucao': item['dataresolucao'].strftime("%Y-%m-%d")}) # 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 Atos', 'id_gerado': None, 'i_chave_dsk1': item['numerooficial'], 'i_chave_dsk2': item['tipo'] }) print(f'- Processo de transformação finalizado. ({(datetime.now() - dh_inicio).total_seconds()} segundos)') if True: model.insere_tabela_controle_migracao_registro(params_exec, lista_req=lista_controle_migracao) req_res = interacao_cloud.preparar_requisicao(lista_dados=lista_dados_enviar, token=token, url=url, tipo_registro=tipo_registro, tamanho_lote=limite_lote) model.insere_tabela_controle_lote(req_res)
def iniciar_envio(params_exec, dados, metodo, *args, **kwargs): print('- Iniciando processo de transformação.') dh_inicio = datetime.now() 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['id_entidade'], item['descricao'], item['codigoesocial']) dict_dados = { 'idIntegracao': hash_chaves, 'conteudo': { 'descricao': item['descricao'], 'grupoTrabalhador': item['grupotrabalhador'], 'codigoESocial': item['codigoesocial'], } } # print(f'\nDados 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 Categorias de Trabalhador', 'id_gerado': None, 'i_chave_dsk1': item['id_entidade'], 'i_chave_dsk2': item['descricao'], 'i_chave_dsk3': item['codigoesocial'] }) print( f'- Processo de transformação finalizado. ({(datetime.now() - dh_inicio).total_seconds()} segundos)' ) if True: model.insere_tabela_controle_migracao_registro( params_exec, lista_req=lista_controle_migracao) req_res = interacao_cloud.preparar_requisicao( lista_dados=lista_dados_enviar, token=token, url=url, tipo_registro=tipo_registro, tamanho_lote=limite_lote) model.insere_tabela_controle_lote(req_res)
def iniciar_envio(params_exec, dados, metodo, *args, **kwargs): print('- Iniciando envio dos dados.') lista_dados_enviar = [] hoje = datetime.now().strftime("%Y-%m-%d") token = params_exec['token'] url = "https://contabil-sl.cloud.betha.com.br/contabil/service-layer/v2/api/credores" for item in dados: hash_chaves = model.gerar_hash_chaves('1', 'credores', item['chave_1']) dict_dados = { 'idIntegracao': hash_chaves, 'content': { 'nome': item['nome'], 'tipo': 'FISICA' if item['tipo'] == 'FISICA' else 'JURIDICA', 'dataInclusao': hoje } } if item['tipo'] == 'FISICA': dict_dados['content'].update({'fisica': {'cpf': item['cpfcnpj']}}) else: dict_dados['content'].update( {'juridica': { 'cnpj': item['cpfcnpj'] }}) lista_dados_enviar.append(dict_dados) # Insere registro atual na tabela 'controle_migracao_registro' model.insere_tabela_controle_migracao_registro( params_exec, req_res={ 'sistema': 1, 'tipo_registro': 'credores', 'hash_chave_dsk': hash_chaves, 'descricao_tipo_registro': 'Cadastro de Credores', 'id_gerado': None, 'i_chave_dsk1': item['chave_1'], 'i_chave_dsk2': item['chave_2'] }) req_res = interacao_cloud.preparar_requisicao( lista_dados=lista_dados_enviar, token=token, url=url, tipo_registro='credores', tamanho_lote=50) # Insere lote na tabela 'controle_migracao_lotes' model.insere_tabela_controle_lote(req_res) 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'] contador = 0 for item in dados: hash_chaves = model.gerar_hash_chaves(sistema, tipo_registro, item['id_entidade'], item['configuracao'], item['numero']) dict_dados = { 'idIntegracao': hash_chaves, 'conteudo': { 'configuracao': { 'id': int(item['configuracao']) }, 'numero': item['numero'], 'nivel': item['nivel'], 'descricao': item['descricao'] } } if 'sigla' in item and item['sigla'] is not None: dict_dados['conteudo'].update({'sigla': item['sigla']}) contador += 1 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 Orgranogramas', 'id_gerado': None, 'i_chave_dsk1': item['id_entidade'], 'i_chave_dsk2': item['configuracao'], 'i_chave_dsk3': item['numero'] }) if True: # model.insere_tabela_controle_migracao_registro(params_exec, lista_req=lista_controle_migracao) req_res = interacao_cloud.preparar_requisicao( lista_dados=lista_dados_enviar, token=token, url=url, tipo_registro=tipo_registro, tamanho_lote=limite_lote) model.insere_tabela_controle_lote(req_res) 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'] contador = 0 for item in dados: hash_chaves = model.gerar_hash_chaves(sistema, tipo_registro, item['id_entidade'], item['codigo']) dict_dados = { 'idIntegracao': hash_chaves, 'conteudo': { 'descricao': None if 'descricao' not in item else item['descricao'], 'classificacao': None if 'classificacao' not in item else item['classificacao'], 'tipoMovimentacaoPessoal': None if 'tipomovimentacaopessoal' not in item else item['tipomovimentacaopessoal'], 'diasPrevistos': None if 'diasprevistos' not in item else item['diasprevistos'], 'perdeTempoServico': None if 'perdetemposervico' not in item else item['perdetemposervico'], 'consideraVencimento': None if 'consideravencimento' not in item else item['consideravencimento'], 'reduz13Salario': None if 'reduz13salario' not in item else item['reduz13salario'], 'reduzFerias': None if 'reduzferias' not in item else item['reduzferias'], 'justificado': None if 'justificado' not in item else item['justificado'], 'reduzFgts': None if 'reduzfgts' not in item else item['reduzfgts'] } } contador += 1 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 Tipo de Afastamento', 'id_gerado': None, 'i_chave_dsk1': item['id_entidade'], 'i_chave_dsk2': item['codigo'] }) if True: model.insere_tabela_controle_migracao_registro2(params_exec, lista_req=lista_controle_migracao) req_res = interacao_cloud.preparar_requisicao(lista_dados=lista_dados_enviar, token=token, url=url, tipo_registro=tipo_registro, tamanho_lote=limite_lote) model.insere_tabela_controle_lote(req_res) 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'] contador = 0 for item in dados: hash_chaves = model.gerar_hash_chaves(sistema, tipo_registro, item['id_entidade'], item['descricao'], item['classificacao']) dict_dados = { 'idIntegracao': hash_chaves, 'conteudo': { "descricao": item['descricao'], "classificacao": item['classificacao'], } } contador += 1 # 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 Tipo de Movimentação Pessoal', 'id_gerado': None, 'i_chave_dsk1': item['id_entidade'], 'i_chave_dsk2': item['descricao'], 'i_chave_dsk3': item['classificacao'] }) if True: model.insere_tabela_controle_migracao_registro( params_exec, lista_req=lista_controle_migracao) req_res = interacao_cloud.preparar_requisicao( lista_dados=lista_dados_enviar, token=token, url=url, tipo_registro=tipo_registro, tamanho_lote=limite_lote) model.insere_tabela_controle_lote(req_res) 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'] contador = 0 for item in dados: hash_chaves = model.gerar_hash_chaves(sistema, tipo_registro, item['id_entidade'], item['codigo']) dict_dados = { 'idIntegracao': hash_chaves, 'conteudo': { 'descricao': None if 'descricao' not in item else item['descricao'], 'inicio': None if 'inicio' not in item else item['inicio'], 'mascaraClasse': None if 'mascaraclasse' not in item else item['mascaraclasse'], 'limiteClasse': None if 'limiteclasse' not in item else item['limiteclasse'], 'mascaraReferencia': None if 'mascarareferencia' not in item else item['mascarareferencia'], 'limiteReferencia': None if 'limitereferencia' not in item else item['limitereferencia'], 'controlaCargaHorariaNiveis': None if 'controlacargahorarianiveis' not in item else item['controlacargahorarianiveis'], 'configuracaoAfastamentos': None if 'configuracaoafastamentos' not in item else item['configuracaoafastamentos'], 'faixasProgressao': None if 'faixasprogressao' not in item else item['faixasprogressao'], } } contador += 1 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 do Plano de Cargo e Salario', 'id_gerado': None, 'i_chave_dsk1': item['id_entidade'], 'i_chave_dsk2': item['codigo'] }) model.insere_tabela_controle_migracao_registro2(params_exec, lista_req=lista_controle_migracao) req_res = interacao_cloud.preparar_requisicao(lista_dados=lista_dados_enviar, token=token, url=url, tipo_registro=tipo_registro, tamanho_lote=limite_lote) model.insere_tabela_controle_lote(req_res) print('- Envio de dados finalizado.')
def iniciar_envio(params_exec, dados, metodo, *args, **kwargs): print('- Iniciando envio dos dados.') lista_dados_enviar = [] hoje = datetime.now().strftime("%Y-%m-%d") token = params_exec['token'] url = "https://contabil-sl.cloud.betha.com.br/contabil/service-layer/v2/api/credores" for item in dados: hash_chaves = model.gerar_hash_chaves(item['chave_1']) # INSERIR CÓDIGO DA GERAÇÃO DO JSON AQUI req_res = interacao_cloud.preparar_requisicao( lista_dados=lista_dados_enviar, token=token, url=url, tipo_registro='', tamanho_lote=50) # Insere lote na tabela 'controle_migracao_lotes' model.insere_tabela_controle_lote(req_res) print('- Envio de dados finalizado.')
def iniciar_envio(params_exec, dados, metodo, *args, **kwargs): print('- Iniciando processo de transformação.') dh_inicio = datetime.now() 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['entidade'], item['matricula'], item['anoexercicio']) dict_dados = { 'idIntegracao': hash_chaves, 'conteudo': { 'dataInicial': item['datainicial'], 'dataFinal': item['datafinal'], 'configuracao': item['configuracao'], 'matricula': { 'id': item['matricula'] }, 'avosAdquiridos': item['avosadquiridos'], 'avosDireito': item['avosdireito'], 'avosPerdidos': item['avosperdidos'], 'anoExercicio': item['anoexercicio'], } } if 'avosadquiridosfgts' in item and item['avosadquiridosfgts'] is not None: dict_dados['conteudo'].update({'avosAdquiridosFgts': item['avosadquiridosfgts']}) if 'situacao' in item and item['situacao'] is not None: dict_dados['conteudo'].update({'situacao': item['situacao']}) if item['movimentacoes'] is not None: listaconteudo = [] lista = item['movimentacoes'].split('%||%') if len(lista) > 0: for listacampo in lista: campo = listacampo.split('%|%') for idx, val in enumerate(campo): if campo[idx] == '': campo[idx] = None dict_item_conteudo = {} if campo[0] is not None: dict_item_conteudo.update({ 'motivo': campo[0] }) if campo[1] is not None: dict_item_conteudo.update({ 'consideraAvosPerdidos': campo[1] }) if campo[2] is not None: dict_item_conteudo.update({ 'competencia': campo[2] }) if campo[3] is not None: dict_item_conteudo.update({ 'valor': campo[3] }) listaconteudo.append(dict_item_conteudo) if len(listaconteudo) > 0: dict_dados['conteudo'].update({ 'movimentacoes': listaconteudo }) 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 Lotação Física', 'id_gerado': None, 'json': json.dumps(dict_dados), 'i_chave_dsk1': item['entidade'], 'i_chave_dsk2': item['matricula'], 'i_chave_dsk3': item['anoexercicio'] }) print(f'- Processo de transformação finalizado. ({(datetime.now() - dh_inicio).total_seconds()} segundos)') if True: model.insere_tabela_controle_migracao_registro(params_exec, lista_req=lista_controle_migracao) req_res = interacao_cloud.preparar_requisicao(lista_dados=lista_dados_enviar, token=token, url=url, tipo_registro=tipo_registro, tamanho_lote=limite_lote) model.insere_tabela_controle_lote(req_res)
def iniciar_envio(params_exec, dados, metodo, *args, **kwargs): print('- Iniciando processo de transformação.') dh_inicio = datetime.now() 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['id_entidade'], item['numeroedital'], item['tiporecrutamento']) dict_dados = { 'idIntegracao': hash_chaves, 'conteudo': { 'tipoRecrutamento': item['tiporecrutamento'], 'numeroEdital': item['numeroedital'], 'descricao': item['descricao'] } } if 'ato' in item and item['ato'] is not None: dict_dados['conteudo'].update({'ato': {'id': item['ato']}}) if 'percentualpcd' in item and item['percentualpcd'] is not None: dict_dados['conteudo'].update( {'percentualPcd': item['percentualpcd']}) if 'datainicialinscricao' in item and item[ 'datainicialinscricao'] is not None: dict_dados['conteudo'].update({ 'dataInicialInscricao': item['datainicialinscricao'].strftime("%Y-%m-%d") }) if 'datafinalinscricao' in item and item[ 'datafinalinscricao'] is not None: dict_dados['conteudo'].update({ 'dataFinalInscricao': item['datafinalinscricao'].strftime("%Y-%m-%d") }) if 'dataprorrogacao' in item and item['dataprorrogacao'] is not None: dict_dados['conteudo'].update({ 'dataProrrogacao': item['dataprorrogacao'].strftime("%Y-%m-%d") }) if 'datainicialinscricaopcd' in item and item[ 'datainicialinscricaopcd'] is not None: dict_dados['conteudo'].update({ 'dataInicialInscricaoPcd': item['datainicialinscricaopcd'].strftime("%Y-%m-%d") }) if 'datafinalinscricaopcd' in item and item[ 'datafinalinscricaopcd'] is not None: dict_dados['conteudo'].update({ 'dataFinalInscricaoPcd': item['datafinalinscricaopcd'].strftime("%Y-%m-%d") }) if 'datahomologacao' in item and item['datahomologacao'] is not None: dict_dados['conteudo'].update({ 'dataHomologacao': item['datahomologacao'].strftime("%Y-%m-%d") }) if 'datavalidade' in item and item['datavalidade'] is not None: dict_dados['conteudo'].update( {'dataValidade': item['datavalidade'].strftime("%Y-%m-%d")}) if 'dataprorrogacaovalidade' in item and item[ 'dataprorrogacaovalidade'] is not None: dict_dados['conteudo'].update({ 'dataProrrogacaoValidade': item['dataprorrogacaovalidade'].strftime("%Y-%m-%d") }) if 'dataencerramento' in item and item['dataencerramento'] is not None: dict_dados['conteudo'].update({ 'dataEncerramento': item['dataencerramento'].strftime("%Y-%m-%d") }) # print(f'\nDados 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 Concurso', 'id_gerado': None, 'i_chave_dsk1': item['id_entidade'], 'i_chave_dsk2': item['numeroedital'], 'i_chave_dsk3': item['tiporecrutamento'] }) print( f'- Processo de transformação finalizado. ({(datetime.now() - dh_inicio).total_seconds()} segundos)' ) if True: model.insere_tabela_controle_migracao_registro( params_exec, lista_req=lista_controle_migracao) req_res = interacao_cloud.preparar_requisicao( lista_dados=lista_dados_enviar, token=token, url=url, tipo_registro=tipo_registro, tamanho_lote=limite_lote) model.insere_tabela_controle_lote(req_res)
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'] contador = 0 for item in dados: hash_chaves = model.gerar_hash_chaves(sistema, tipo_registro, item['clicodigo'], item['fcncodigo'], item['funcontrato']) dict_dados = { 'idIntegracao': hash_chaves, 'conteudo': {} } # 'funcoesGratificadas ': None if 'funcoesGratificadas ' not in item else item['funcoesGratificadas'] # 'validationStatus': None if 'validationstatus' not in item else item['validationstatus'] # 'contratoTemporario': None if 'contratotemporario' not in item else item['contratotemporario'] if item['lotacoesfisicas'] is not None: listaconteudo = [] lista = item['lotacoesfisicas'].split('%||%') if len(lista) > 0: for listacampo in lista: campo = listacampo.split('%|%') dict_item_conteudo = { 'lotacaoFisica': { 'id': int(campo[0]) }, 'principal': campo[1], 'dataInicio': campo[2], } if campo[3] is not None: if campo[3] != '': dict_item_conteudo.update({ 'dataFim': campo[3] }) listaconteudo.append(dict_item_conteudo) if len(listaconteudo) > 0: dict_dados['conteudo'].update({ 'lotacoesFisicas': listaconteudo }) if 'previdencias' in item and item['previdencias'] is not None: dict_dados['conteudo'].update({ 'previdencias': [] }) campo = item['previdencias'].split('%|%') dict_dados['conteudo']['previdencias'].append({ # 'matricula': campo[0], 'tipo': campo[0], 'plano': { 'id': int(campo[1]) } }) if 'responsaveis' in item and item['responsaveis'] is not None: dict_dados['conteudo'].update({ 'responsaveis': [] }) campo = item['responsaveis'].split('%|%') dict_dados['conteudo']['responsaveis'].append({ 'pessoa': { 'id': int(campo[0]) }, 'dataInicio': campo[1], # 'dataTermino': campo[2], # 'profissao': campo[3], # 'localTrabalho': campo[4], }) if 'vinculoempregaticio' in item and item['vinculoempregaticio'] is not None: dict_dados['conteudo'].update({ 'vinculoEmpregaticio': { 'id': int(item['vinculoempregaticio']) }, }) if 'cargo' in item and item['cargo'] is not None: dict_dados['conteudo'].update({ 'cargo': { 'id': int(item['cargo']) } }) if 'database' in item and item['database'] is not None: dict_dados['conteudo'].update({'dataBase': item['database']}) if 'numeroapolicesegurovida' in item and item['numeroapolicesegurovida'] is not None: dict_dados['conteudo'].update({'numeroApoliceSeguroVida': item['numeroapolicesegurovida']}) if 'possuisegurovida' in item and item['possuisegurovida'] is not None: dict_dados['conteudo'].update({'possuiSeguroVida': item['possuisegurovida']}) if 'origemsalario' in item and item['origemsalario'] is not None: dict_dados['conteudo'].update({'origemSalario': item['origemsalario']}) if 'salarioalterado' in item and item['salarioalterado'] is not None: dict_dados['conteudo'].update({'salarioAlterado': item['salarioalterado']}) if 'indicativoadmissao' in item and item['indicativoadmissao'] is not None: dict_dados['conteudo'].update({'indicativoAdmissao': item['indicativoadmissao']}) if 'rendimentomensal' in item and item['rendimentomensal'] is not None: dict_dados['conteudo'].update({'rendimentoMensal': item['rendimentomensal']}) if 'naturezaatividade' in item and item['naturezaatividade'] is not None: dict_dados['conteudo'].update({'naturezaAtividade': item['naturezaatividade']}) if 'tipoadmissao' in item and item['tipoadmissao'] is not None: dict_dados['conteudo'].update({'tipoAdmissao': item['tipoadmissao']}) if 'primeiroemprego' in item and item['primeiroemprego'] is not None: dict_dados['conteudo'].update({'primeiroEmprego': item['primeiroemprego']}) if 'tipoprovimento' in item and item['tipoprovimento'] is not None: dict_dados['conteudo'].update({'tipoProvimento': item['tipoprovimento']}) if 'datanomeacao' in item and item['datanomeacao'] is not None: dict_dados['conteudo'].update({'dataNomeacao': item['datanomeacao']}) if 'dataposse' in item and item['dataposse'] is not None: dict_dados['conteudo'].update({'dataPosse': item['dataposse']}) if 'tempoaposentadoria' in item and item['tempoaposentadoria'] is not None: dict_dados['conteudo'].update({'tempoAposentadoria': item['tempoaposentadoria']}) if 'previdenciafederal' in item and item['previdenciafederal'] is not None: dict_dados['conteudo'].update({'previdenciaFederal': item['previdenciafederal']}) if 'cargoalterado' in item and item['cargoalterado'] is not None: dict_dados['conteudo'].update({'cargoAlterado': item['cargoalterado']}) if 'areaatuacaoalterada' in item and item['areaatuacaoalterada'] is not None: dict_dados['conteudo'].update({'areaAtuacaoAlterada': item['areaatuacaoalterada']}) if 'ocupavaga' in item and item['ocupavaga'] is not None: dict_dados['conteudo'].update({'ocupaVaga': item['ocupavaga']}) if 'ocupavagacomissionado' in item and item['ocupavagacomissionado'] is not None: dict_dados['conteudo'].update({'ocupaVagaComissionado': item['ocupavagacomissionado']}) if 'salariocomissionado' in item and item['salariocomissionado'] is not None: dict_dados['conteudo'].update({'salarioComissionado': item['salariocomissionado']}) if 'unidadepagamento' in item and item['unidadepagamento'] is not None: dict_dados['conteudo'].update({'unidadePagamento': item['unidadepagamento']}) if 'formapagamento' in item and item['formapagamento'] is not None: dict_dados['conteudo'].update({'formaPagamento': item['formapagamento']}) if 'quantidadehorasmes' in item and item['quantidadehorasmes'] is not None: dict_dados['conteudo'].update({'quantidadeHorasMes': item['quantidadehorasmes']}) if 'quantidadehorassemana' in item and item['quantidadehorassemana'] is not None: dict_dados['conteudo'].update({'quantidadeHorasSemana': item['quantidadehorassemana']}) if 'jornadaparcial' in item and item['jornadaparcial'] is not None: dict_dados['conteudo'].update({'jornadaParcial': item['jornadaparcial']}) if 'dataagendamentorescisao' in item and item['dataagendamentorescisao'] is not None: dict_dados['conteudo'].update({'dataAgendamentoRescisao': item['dataagendamentorescisao']}) if 'dataterminocontratotemporario' in item and item['dataterminocontratotemporario'] is not None: dict_dados['conteudo'].update({'dataTerminoContratoTemporario': item['dataterminocontratotemporario']}) if 'motivocontratotemporario' in item and item['motivocontratotemporario'] is not None: dict_dados['conteudo'].update({'motivoContratoTemporario': item['motivocontratotemporario']}) if 'tipoinclusaocontratotemporario' in item and item['tipoinclusaocontratotemporario'] is not None: dict_dados['conteudo'].update({'tipoInclusaoContratoTemporario': item['tipoinclusaocontratotemporario']}) if 'dataprorrogacaocontratotemporario' in item and item['dataprorrogacaocontratotemporario'] is not None: dict_dados['conteudo'].update({'dataProrrogacaoContratoTemporario': item['dataprorrogacaocontratotemporario']}) if 'numerocartaoponto' in item and item['numerocartaoponto'] is not None: dict_dados['conteudo'].update({'numeroCartaoPonto': item['numerocartaoponto']}) if 'indicativoprovimento' in item and item['indicativoprovimento'] is not None: dict_dados['conteudo'].update({'indicativoProvimento': item['indicativoprovimento']}) if 'matriculaempresaorigem' in item and item['matriculaempresaorigem'] is not None: dict_dados['conteudo'].update({'matriculaEmpresaOrigem': item['matriculaempresaorigem']}) if 'dataadmissaoorigem' in item and item['dataadmissaoorigem'] is not None: dict_dados['conteudo'].update({'dataAdmissaoOrigem': item['dataadmissaoorigem']}) if 'ocorrenciasefip' in item and item['ocorrenciasefip'] is not None: dict_dados['conteudo'].update({'ocorrenciaSefip': item['ocorrenciasefip']}) if 'controlejornada' in item and item['controlejornada'] is not None: dict_dados['conteudo'].update({'controleJornada': item['controlejornada']}) if 'processaaverbacao' in item and item['processaaverbacao'] is not None: dict_dados['conteudo'].update({'processaAverbacao': item['processaaverbacao']}) if 'datafinal' in item and item['datafinal'] is not None: dict_dados['conteudo'].update({'dataFinal': item['datafinal']}) if 'dataprorrogacao' in item and item['dataprorrogacao'] is not None: dict_dados['conteudo'].update({'dataProrrogacao': item['dataprorrogacao']}) if 'formacaoperiodo' in item and item['formacaoperiodo'] is not None: dict_dados['conteudo'].update({'formacaoPeriodo': item['formacaoperiodo']}) if 'formacaofase' in item and item['formacaofase'] is not None: dict_dados['conteudo'].update({'formacaoFase': item['formacaofase']}) if 'estagioobrigatorio' in item and item['estagioobrigatorio'] is not None: dict_dados['conteudo'].update({'estagioObrigatorio': item['estagioobrigatorio']}) if 'objetivo' in item and item['objetivo'] is not None: dict_dados['conteudo'].update({'objetivo': item['objetivo']}) if 'numerocontrato' in item and item['numerocontrato'] is not None: dict_dados['conteudo'].update({'numeroContrato': item['numerocontrato']}) if 'datacessacaoaposentadoria' in item and item['datacessacaoaposentadoria'] is not None: dict_dados['conteudo'].update({'dataCessacaoAposentadoria': item['datacessacaoaposentadoria']}) if 'motivoiniciobeneficio' in item and item['motivoiniciobeneficio'] is not None: dict_dados['conteudo'].update({'motivoInicioBeneficio': item['motivoiniciobeneficio']}) if 'duracaobeneficio' in item and item['duracaobeneficio'] is not None: dict_dados['conteudo'].update({'duracaoBeneficio': item['duracaobeneficio']}) if 'datacessacaobeneficio' in item and item['datacessacaobeneficio'] is not None: dict_dados['conteudo'].update({'dataCessacaoBeneficio': item['datacessacaobeneficio']}) if 'datainiciocontrato' in item and item['datainiciocontrato'] is not None: dict_dados['conteudo'].update({'dataInicioContrato': item['datainiciocontrato']}) if 'situacao' in item and item['situacao'] is not None: dict_dados['conteudo'].update({'situacao': item['situacao']}) if 'iniciovigencia' in item and item['iniciovigencia'] is not None: dict_dados['conteudo'].update({'inicioVigencia': item['iniciovigencia']}) if 'tipo' in item and item['tipo'] is not None: dict_dados['conteudo'].update({'tipo': item['tipo']}) if 'esocial' in item and item['esocial'] is not None: dict_dados['conteudo'].update({'eSocial': item['esocial']}) if item['codigomatricula'] is not None: campo = item['codigomatricula'].split('%|%') dict_dados['conteudo'].update({ 'codigoMatricula': { 'contrato': int(campo[0]), 'digitoVerificador': int(campo[1]), 'numero': int(campo[2]) } }) if False: if 'sindicato' in item and item['sindicato'] is not None: dict_dados['conteudo'].update({ 'sindicato': { 'id': item['sindicato'] } }) if 'leicontrato' in item and item['leicontrato'] is not None: dict_dados['conteudo'].update({ 'leiContrato': { 'id': item['leicontrato'] } }) if 'atocontrato' in item and item['atocontrato'] is not None: dict_dados['conteudo'].update({ 'atoContrato': { 'id': item['atocontrato'] } }) if 'atoalteracaocargo' in item and item['atoalteracaocargo'] is not None: dict_dados['conteudo'].update({ 'atoAlteracaoCargo': { 'id': item['atoalteracaocargo'] } }) if 'areaatuacao' in item and item['areaatuacao'] is not None: dict_dados['conteudo'].update({ 'areaAtuacao': { 'id': item['areaatuacao'] } }) if 'motivoalteracaoareaatuacao' in item and item['motivoalteracaoareaatuacao'] is not None: dict_dados['conteudo'].update({ 'motivoAlteracaoAreaAtuacao': { 'id': item['motivoalteracaoareaatuacao'] } }) if 'nivelsalarial' in item and item['nivelsalarial'] is not None: dict_dados['conteudo'].update({ 'nivelSalarial': { 'id': int(item['nivelsalarial']) } }) if 'classereferencia' in item and item['classereferencia'] is not None: dict_dados['conteudo'].update({ 'classeReferencia': { 'id': item['classereferencia'] } }) if 'cargocomissionado' in item and item['cargocomissionado'] is not None: dict_dados['conteudo'].update({ 'cargoComissionado': { 'id': item['cargocomissionado'] } }) if 'areaatuacaocomissionado' in item and item['areaatuacaocomissionado'] is not None: dict_dados['conteudo'].update({ 'areaAtuacaoComissionado': { 'id': item['areaatuacaocomissionado'] } }) if 'nivelsalarialcomissionado' in item and item['nivelsalarialcomissionado'] is not None: dict_dados['conteudo'].update({ 'nivelSalarialComissionado': { 'id': item['nivelsalarialcomissionado'] } }) if 'classereferenciacomissionado' in item and item['classereferenciacomissionado'] is not None: dict_dados['conteudo'].update({ 'classeReferenciaComissionado': { 'id': item['classereferenciacomissionado'] } }) if True: if 'contabancariapagamento' in item and item['contabancariapagamento'] is not None: dict_dados['conteudo'].update({ 'contaBancariaPagamento': { 'id': int(item['contabancariapagamento']) } }) if 'configuracaoferias' in item and item['configuracaoferias'] is not None: dict_dados['conteudo'].update({ 'configuracaoFerias': { 'id': int(item['configuracaoferias']) } }) if 'parametroponto' in item and item['parametroponto'] is not None: dict_dados['conteudo'].update({ 'parametroPonto': { 'id': item['parametroponto'] } }) if 'orgaoorigem' in item and item['orgaoorigem'] is not None: dict_dados['conteudo'].update({ 'orgaoOrigem': { 'id': item['orgaoorigem'] } }) if 'configuracaolicencapremio' in item and item['configuracaolicencapremio'] is not None: dict_dados['conteudo'].update({ 'configuracaoLicencaPremio': { 'id': item['configuracaolicencapremio'] } }) if 'configuracaoadicional' in item and item['configuracaoadicional'] is not None: dict_dados['conteudo'].update({ 'configuracaoAdicional': { 'id': item['configuracaoadicional'] } }) if 'instituicaoensino' in item and item['instituicaoensino'] is not None: dict_dados['conteudo'].update({ 'instituicaoEnsino': { 'id': item['instituicaoensino'] } }) if 'agenteintegracao' in item and item['agenteintegracao'] is not None: dict_dados['conteudo'].update({ 'agenteIntegracao': { 'id': item['agenteintegracao'] } }) if 'formacao' in item and item['formacao'] is not None: dict_dados['conteudo'].update({ 'formacao': { 'id': int(item['formacao']) } }) if 'categoriatrabalhador' in item and item['categoriatrabalhador'] is not None: dict_dados['conteudo'].update({ 'categoriaTrabalhador': { 'id': item['categoriatrabalhador'] } }) if 'motivoaposentadoria' in item and item['motivoaposentadoria'] is not None: dict_dados['conteudo'].update({ 'motivoAposentadoria': { 'id': item['motivoaposentadoria'] } }) if 'funcionarioorigem' in item and item['funcionarioorigem'] is not None: dict_dados['conteudo'].update({ 'funcionarioOrigem': { 'id': item['funcionarioorigem'] } }) if 'entidadeorigem' in item and item['entidadeorigem'] is not None: dict_dados['conteudo'].update({ 'entidadeOrigem': { 'id': item['entidadeorigem'] } }) if 'tipomovimentacao' in item and item['tipomovimentacao'] is not None: dict_dados['conteudo'].update({ 'tipoMovimentacao': { 'id': item['tipomovimentacao'] } }) if 'matriculaorigem' in item and item['matriculaorigem'] is not None: dict_dados['conteudo'].update({ 'matriculaOrigem': { 'id': item['matriculaorigem'] } }) if 'responsavel' in item and item['responsavel'] is not None: dict_dados['conteudo'].update({ 'responsavel': { 'id': item['responsavel'] } }) if 'pessoa' in item and item['pessoa'] is not None: dict_dados['conteudo'].update({ 'pessoa': { 'id': int(item['pessoa']) } }) if 'grupofuncional' in item and item['grupofuncional'] is not None: dict_dados['conteudo'].update({ 'grupoFuncional': { 'id': item['grupofuncional'] } }) if 'jornadatrabalho' in item and item['jornadatrabalho'] is not None: dict_dados['conteudo'].update({ 'jornadaTrabalho': { 'id': item['jornadatrabalho'] } }) if 'atoalteracaosalario' in item and item['atoalteracaosalario'] is not None: dict_dados['conteudo'].update({ 'atoAlteracaoSalario': { 'id': item['atoalteracaosalario'] } }) if 'motivoalteracaosalario' in item and item['motivoalteracaosalario'] is not None: dict_dados['conteudo'].update({ 'motivoAlteracaoSalario': { 'id': item['motivoalteracaosalario'] } }) if 'organograma' in item and item['organograma'] is not None: dict_dados['conteudo'].update({ 'organograma': { 'id': int(item['organograma']) } }) if item['historicos'] is not None: listahistorico = [] lista = item['historicos'].split('%&&%') if len(lista) > 0: for listacampo in lista: campo = listacampo.split('%&%') for idx, val in enumerate(campo): if campo[idx] == '': campo[idx] = None dict_item_historico = {} # 'funcoesGratificadas ': None if 'funcoesGratificadas ' not in item else item['funcoesGratificadas'] # 'validationStatus': None if 'validationstatus' not in item else item['validationstatus'] # 'contratoTemporario': None if 'contratotemporario' not in item else item['contratotemporario'] if campo[18] is not None: dict_item_historico.update({ 'previdencias': [] }) campoprevidencia = campo[18].split('%|%') dict_item_historico['previdencias'].append({ # 'matricula': campoprevidencia[0], 'tipo': campoprevidencia[0], 'plano': { 'id': int(campoprevidencia[1]) } }) if campo[99] is not None: listaconteudohistorico = [] listalotacoesfisicas = campo[99].split('%||%') if len(lista) > 0: for listacampolotacoesfisicas in listalotacoesfisicas: campolotacoesfisicas = listacampolotacoesfisicas.split('%|%') dict_item_conteudo_historico = { 'lotacaoFisica': { 'id': int(campolotacoesfisicas[0]) }, 'principal': campolotacoesfisicas[1], 'dataInicio': campolotacoesfisicas[2], } if campolotacoesfisicas[3] is not None: if campolotacoesfisicas[3] != '': dict_item_conteudo_historico.update({ 'dataFim': campolotacoesfisicas[3] }) listaconteudohistorico.append(dict_item_conteudo_historico) if len(listaconteudohistorico) > 0: dict_item_historico.update({ 'lotacoesFisicas': listaconteudohistorico }) if campo[73] is not None: dict_item_historico.update({ 'responsaveis': [] }) camporesponsaveis = campo[73].split('%|%') dict_item_historico['responsaveis'].append({ 'pessoa': { 'id': int(camporesponsaveis[0]) }, 'dataInicio': camporesponsaveis[1], # 'dataTermino': camporesponsaveis[2], # 'profissao': camporesponsaveis[3], # 'localTrabalho': camporesponsaveis[4], }) if campo[1] is not None: dict_item_historico.update({ 'vinculoEmpregaticio': { 'id': int(campo[1]) }, }) if campo[19] is not None: dict_item_historico.update({ 'cargo': { 'id': int(campo[19]) } }) if campo[0] is not None: dict_item_historico.update({'dataBase': campo[0]}) if campo[71] is not None: dict_item_historico.update({'numeroApoliceSeguroVida': campo[71]}) if campo[70] is not None: dict_item_historico.update({'possuiSeguroVida': campo[70]}) if campo[27] is not None: dict_item_historico.update({'origemSalario': campo[27]}) if campo[26] is not None: dict_item_historico.update({'salarioAlterado': campo[26]}) if campo[3] is not None: dict_item_historico.update({'indicativoAdmissao': campo[3]}) if campo[94] is not None: dict_item_historico.update({'rendimentoMensal': campo[94]}) if campo[4] is not None: dict_item_historico.update({'naturezaAtividade': campo[4]}) if campo[5] is not None: dict_item_historico.update({'tipoAdmissao': campo[5]}) if campo[6] is not None: dict_item_historico.update({'primeiroEmprego': campo[6]}) if campo[11] is not None: dict_item_historico.update({'tipoProvimento': campo[11]}) if campo[14] is not None: dict_item_historico.update({'dataNomeacao': campo[14]}) if campo[15] is not None: dict_item_historico.update({'dataPosse': campo[15]}) if campo[16] is not None: dict_item_historico.update({'tempoAposentadoria': campo[16]}) if campo[17] is not None: dict_item_historico.update({'previdenciaFederal': campo[17]}) if campo[20] is not None: dict_item_historico.update({'cargoAlterado': campo[20]}) if campo[23] is not None: dict_item_historico.update({'areaAtuacaoAlterada': campo[23]}) if campo[25] is not None: dict_item_historico.update({'ocupaVaga': campo[25]}) if campo[32] is not None: dict_item_historico.update({'ocupaVagaComissionado': campo[32]}) if campo[33] is not None: dict_item_historico.update({'salarioComissionado': campo[33]}) if campo[36] is not None: dict_item_historico.update({'unidadePagamento': campo[36]}) if campo[37] is not None: dict_item_historico.update({'formaPagamento': campo[37]}) if campo[40] is not None: dict_item_historico.update({'quantidadeHorasMes': campo[40]}) if campo[41] is not None: dict_item_historico.update({'quantidadeHorasSemana': campo[41]}) if campo[42] is not None: dict_item_historico.update({'jornadaParcial': campo[42]}) if campo[43] is not None: dict_item_historico.update({'dataAgendamentoRescisao': campo[43]}) if campo[45] is not None: dict_item_historico.update( {'dataTerminoContratoTemporario': campo[45]}) if campo[46] is not None: dict_item_historico.update({'motivoContratoTemporario': campo[46]}) if campo[47] is not None: dict_item_historico.update( {'tipoInclusaoContratoTemporario': campo[47]}) if campo[48] is not None: dict_item_historico.update( {'dataProrrogacaoContratoTemporario': campo[48]}) if campo[49] is not None: dict_item_historico.update({'numeroCartaoPonto': campo[49]}) if campo[51] is not None: dict_item_historico.update({'indicativoProvimento': campo[51]}) if campo[53] is not None: dict_item_historico.update({'matriculaEmpresaOrigem': campo[53]}) if campo[54] is not None: dict_item_historico.update({'dataAdmissaoOrigem': campo[54]}) if campo[55] is not None: dict_item_historico.update({'ocorrenciaSefip': campo[55]}) if campo[56] is not None: dict_item_historico.update({'controleJornada': campo[56]}) if campo[59] is not None: dict_item_historico.update({'processaAverbacao': campo[59]}) if campo[60] is not None: dict_item_historico.update({'dataFinal': campo[60]}) if campo[61] is not None: dict_item_historico.update({'dataProrrogacao': campo[61]}) if campo[65] is not None: dict_item_historico.update({'formacaoPeriodo': campo[65]}) if campo[66] is not None: dict_item_historico.update({'formacaoFase': campo[66]}) if campo[67] is not None: dict_item_historico.update({'estagioObrigatorio': campo[67]}) if campo[68] is not None: dict_item_historico.update({'objetivo': campo[68]}) if campo[69] is not None: dict_item_historico.update({'numeroContrato': campo[69]}) if campo[74] is not None: dict_item_historico.update({'dataCessacaoAposentadoria': campo[74]}) if campo[79] is not None: dict_item_historico.update({'motivoInicioBeneficio': campo[79]}) if campo[80] is not None: dict_item_historico.update({'duracaoBeneficio': campo[80]}) if campo[81] is not None: dict_item_historico.update({'dataCessacaoBeneficio': campo[81]}) if campo[85] is not None: dict_item_historico.update({'dataInicioContrato': campo[85]}) if campo[86] is not None: dict_item_historico.update({'situacao': campo[86]}) if campo[87] is not None: dict_item_historico.update({'inicioVigencia': campo[87]}) if campo[88] is not None: dict_item_historico.update({'tipo': campo[88]}) if campo[91] is not None: dict_item_historico.update({'eSocial': campo[91]}) if campo[90] is not None: campomatricula = campo[90].split('%|%') dict_item_historico.update({ 'codigoMatricula': { 'contrato': int(campomatricula[0]), 'digitoVerificador': int(campomatricula[1]), 'numero': int(campomatricula[2]) } }) if False: if 'sindicato' in item and item['sindicato'] is not None: dict_item_historico.update({ 'sindicato': { 'id': item['sindicato'] } }) if campo[12] is not None: dict_item_historico.update({ 'leiContrato': { 'id': campo[12] } }) if campo[13] is not None: dict_item_historico.update({ 'atoContrato': { 'id': campo[13] } }) if campo[21] is not None: dict_item_historico.update({ 'atoAlteracaoCargo': { 'id': campo[21] } }) if campo[22] is not None: dict_item_historico.update({ 'areaAtuacao': { 'id': campo[22] } }) if campo[24] is not None: dict_item_historico.update({ 'motivoAlteracaoAreaAtuacao': { 'id': campo[24] } }) if campo[28] is not None: dict_item_historico.update({ 'nivelSalarial': { 'id': int(campo[28]) } }) if campo[29] is not None: dict_item_historico.update({ 'classeReferencia': { 'id': campo[29] } }) if campo[30] is not None: dict_item_historico.update({ 'cargoComissionado': { 'id': campo[30] } }) if campo[31] is not None: dict_item_historico.update({ 'areaAtuacaoComissionado': { 'id': campo[31] } }) if campo[34] is not None: dict_item_historico.update({ 'nivelSalarialComissionado': { 'id': campo[34] } }) if campo[35] is not None: dict_item_historico.update({ 'classeReferenciaComissionado': { 'id': campo[35] } }) if True: if campo[38] is not None: dict_item_historico.update({ 'contaBancariaPagamento': { 'id': int(campo[38]) } }) if campo[39] is not None: dict_item_historico.update({ 'configuracaoFerias': { 'id': int(campo[39]) } }) if campo[50] is not None: dict_item_historico.update({ 'parametroPonto': { 'id': campo[50] } }) if campo[52] is not None: dict_item_historico.update({ 'orgaoOrigem': { 'id': campo[52] } }) if campo[57] is not None: dict_item_historico.update({ 'configuracaoLicencaPremio': { 'id': campo[57] } }) if campo[58] is not None: dict_item_historico.update({ 'configuracaoAdicional': { 'id': campo[58] } }) if campo[62] is not None: dict_item_historico.update({ 'instituicaoEnsino': { 'id': campo[62] } }) if campo[63] is not None: dict_item_historico.update({ 'agenteIntegracao': { 'id': campo[63] } }) """ if campo[64] is not None: dict_item_historico.update({ 'formacao': { 'id': int(campo[64]) } }) """ if item['formacao'] is not None: dict_item_historico.update({ 'formacao': { 'id': int(item['formacao']) } }) if campo[72] is not None: dict_item_historico.update({ 'categoriaTrabalhador': { 'id': campo[72] } }) if campo[75] is not None: dict_item_historico.update({ 'entidadeOrigem': { 'id': campo[75] } }) if campo[76] is not None: dict_item_historico.update({ 'motivoAposentadoria': { 'id': campo[76] } }) if campo[77] is not None: dict_item_historico.update({ 'funcionarioOrigem': { 'id': campo[77] } }) if campo[78] is not None: dict_item_historico.update({ 'tipoMovimentacao': { 'id': campo[78] } }) if campo[83] is not None: dict_item_historico.update({ 'matriculaOrigem': { 'id': campo[83] } }) if campo[84] is not None: dict_item_historico.update({ 'responsavel': { 'id': campo[84] } }) if campo[89] is not None: dict_item_historico.update({ 'pessoa': { 'id': int(campo[89]) } }) if campo[92] is not None: dict_item_historico.update({ 'grupoFuncional': { 'id': campo[92] } }) if campo[93] is not None: dict_item_historico.update({ 'jornadaTrabalho': { 'id': campo[93] } }) if campo[95] is not None: dict_item_historico.update({ 'atoAlteracaoSalario': { 'id': campo[95] } }) if campo[96] is not None: dict_item_historico.update({ 'motivoAlteracaoSalario': { 'id': campo[98] } }) if campo[98] is not None: dict_item_historico.update({ 'organograma': { 'id': int(campo[98]) } }) listahistorico.append(dict_item_historico) if len(listahistorico) > 0: dict_dados['conteudo'].update({ 'historicos': listahistorico }) contador += 1 # 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 Matricula', 'id_gerado': None, 'json': json.dumps(dict_dados), 'i_chave_dsk1': item['clicodigo'], 'i_chave_dsk2': item['fcncodigo'], 'i_chave_dsk3': item['funcontrato'], }) if True: model.insere_tabela_controle_migracao_registro(params_exec, lista_req=lista_controle_migracao) if True: req_res = interacao_cloud.preparar_requisicao(lista_dados=lista_dados_enviar, token=token, url=url, tipo_registro=tipo_registro, tamanho_lote=limite_lote) model.insere_tabela_controle_lote(req_res) print('- Envio de dados finalizado.')
def iniciar_envio(params_exec, dados, metodo, *args, **kwargs): print('- Iniciando processo de transformação.') dh_inicio = datetime.now() 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['entidade'], item['matricula'], item['data']) dict_dados = { 'idIntegracao': hash_chaves, 'conteudo': { 'data': item['data'], 'matricula': { 'id': item['matricula'] }, 'motivoRescisao': { 'id': item['motivorescisao'] } } } if 'conversao' in item and item['conversao'] is not None: dict_dados['conteudo'].update({'conversao': item['conversao']}) if 'saldofgts' in item and item['saldofgts'] is not None: dict_dados['conteudo'].update({'saldoFgts': item['saldofgts']}) if 'fgtsmesanterior' in item and item['fgtsmesanterior'] is not None: dict_dados['conteudo'].update( {'fgtsMesAnterior': item['fgtsmesanterior']}) if 'avisoprevio' in item and item['avisoprevio'] is not None: dict_dados['conteudo'].update({'avisoPrevio': item['avisoprevio']}) if 'ato' in item and item['ato'] is not None: dict_dados['conteudo'].update({'ato': {'id': int(item['ato'])}}) 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 Rescisao', 'id_gerado': None, 'i_chave_dsk1': item['entidade'], 'i_chave_dsk2': item['matricula'], 'i_chave_dsk3': item['data'] }) print( f'- Processo de transformação finalizado. ({(datetime.now() - dh_inicio).total_seconds()} segundos)' ) if True: model.insere_tabela_controle_migracao_registro( params_exec, lista_req=lista_controle_migracao) req_res = interacao_cloud.preparar_requisicao( lista_dados=lista_dados_enviar, token=token, url=url, tipo_registro=tipo_registro, tamanho_lote=limite_lote) model.insere_tabela_controle_lote(req_res)
def iniciar_envio(params_exec, dados, metodo, *args, **kwargs): print('- Iniciando processo de transformação.') dh_inicio = datetime.now() 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 hash_chaves = model.gerar_hash_chaves(sistema, tipo_registro, item['id_entidade'], item['codigo']) dict_dados = { 'idIntegracao': hash_chaves, 'conteudo': { "descricao": item['descricao'], "valor": item['valor'], "cargaHoraria": item['cargahoraria'], "coeficiente": item['coeficiente'], "inicioVigencia": item['iniciovigencia'], "dataHoraCriacao": item['datahoracriacao'], #"atoCriacao": item['atocriacao'], #"ultimoAto": item['ultimoato'], "planoCargoSalario": { "id": item['planocargosalario'] }, "classesReferencias": item['classesreferencias'], "motivoAlteracao": item['motivoalteracao'], "reajusteSalarial": item['reajustesalarial'] } } if 'atocriacao' in item and item['atocriacao'] is not None: dict_dados['conteudo'].update({ 'atoCriacao': { 'id': item['atocriacao'] } }) if 'ultimoato' in item and item['ultimoato'] is not None: dict_dados['conteudo'].update({ 'ultimoAto': { 'id': item['ultimoato'] } }) if item['historicos'] is not None: listahistorico = [] lista = item['historicos'].split('%||%') if len(lista) > 0: for listacampo in lista: campo = listacampo.split('%|%') dict_item_historico = { "descricao": campo[0], "valor": campo[1], "cargaHoraria": campo[2], "coeficiente": campo[3], "inicioVigencia": campo[4], "dataHoraCriacao": item['datahoracriacao'], "planoCargoSalario": { "id": campo[8] } } if campo[6] is not None: if campo[6] == '': dict_item_historico.update({'atoCriacao': None}) else: dict_item_historico.update({ 'atoCriacao': { 'id': campo[6] } }) if campo[7] is not None: if campo[7] == '': dict_item_historico.update({'ultimoAto': None}) else: dict_item_historico.update({ 'ultimoAto': { 'id': campo[7] } }) if campo[9] is not None: if campo[9] == '': dict_item_historico.update({'classesReferencias': None}) else: dict_item_historico.update({ 'classesReferencias': { 'id': campo[9] } }) if campo[10] is not None: dict_item_historico.update({'motivoAlteracao': {'id': 3801}}) """ if campo[10] == '': dict_item_historico.update({'motivoAlteracao': None}) else: dict_item_historico.update({ 'motivoAlteracao': { 'id': campo[10] } }) """ if campo[11] is not None: if campo[11] == '': dict_item_historico.update({'reajusteSalarial': None}) else: dict_item_historico.update({ 'reajusteSalarial': { 'id': campo[11] } }) listahistorico.append(dict_item_historico) if len(listahistorico) > 0: dict_dados['conteudo'].update({ 'historicos': listahistorico }) # 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 Nível Salarial', 'id_gerado': None, 'i_chave_dsk1': item['id_entidade'], 'i_chave_dsk2': item['codigo'] }) print(f'- Processo de transformação finalizado. ({(datetime.now() - dh_inicio).total_seconds()} segundos)') if True: model.insere_tabela_controle_migracao_registro(params_exec, lista_req=lista_controle_migracao) req_res = interacao_cloud.preparar_requisicao(lista_dados=lista_dados_enviar, token=token, url=url, tipo_registro=tipo_registro, tamanho_lote=limite_lote) model.insere_tabela_controle_lote(req_res)
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'] contador = 0 for item in dados: hash_chaves = model.gerar_hash_chaves(sistema, tipo_registro, item['cpf']) dict_dados = { 'idIntegracao': hash_chaves, 'conteudo': { 'nome': None if 'nome' not in item else item['nome'], 'cpf': None if 'cpf' not in item else item['cpf'], 'dataNascimento': None if 'datanascimento' not in item else item['datanascimento'], 'estadoCivil': None if 'estadocivil' not in item else item['estadocivil'], 'sexo': None if 'sexo' not in item else item['sexo'], 'raca': None if 'raca' not in item else item['raca'], 'corOlhos': None if 'corolhos' not in item else item['corolhos'], 'estatura': None if 'estatura' not in item else item['estatura'], 'peso': None if 'peso' not in item else item['peso'], 'tipoSanguineo': None if 'tiposanguineo' not in item else item['tiposanguineo'], 'doador': None if 'doador' not in item else item['doador'], 'dataChegada': None if 'datachegada' not in item else item['datachegada'], 'casadoComBrasileiro': None if 'casadocombrasileiro' not in item else item['casadocombrasileiro'], 'temFilhosBrasileiros': None if 'temfilhosbrasileiros' not in item else item['temfilhosbrasileiros'], 'situacaoEstrangeiro': None if 'situacaoestrangeiro' not in item else item['situacaoestrangeiro'], 'inscricaoMunicipal': None if 'inscricaomunicipal' not in item else item['inscricaomunicipal'], 'identidade': None if 'identidade' not in item else item['identidade'], 'orgaoEmissorIdentidade': None if 'orgaoemissoridentidade' not in item else item['orgaoemissoridentidade'], 'ufEmissaoIdentidade': None if 'ufemissaoidentidade' not in item else item['ufemissaoidentidade'], 'dataEmissaoIdentidade': None if 'dataemissaoidentidade' not in item else item['dataemissaoidentidade'], 'dataValidadeIdentidade': None if 'datavalidadeidentidade' not in item else item['datavalidadeidentidade'], 'tituloEleitor': None if 'tituloeleitor' not in item else item['tituloeleitor'], 'zonaEleitoral': None if 'zonaeleitoral' not in item else item['zonaeleitoral'], 'secaoEleitoral': None if 'secaoeleitoral' not in item else item['secaoeleitoral'], 'ctps': None if 'ctps' not in item else item['ctps'], 'serieCtps': None if 'seriectps' not in item else item['seriectps'], 'ufEmissaoCtps': None if 'ufEmissaoctps' not in item else item['ufEmissaoctps'], 'dataEmissaoCtps': None if 'dataemissaoctps' not in item else item['dataemissaoctps'], 'dataValidadeCtps': None if 'datavalidadectps' not in item else item['datavalidadectps'], 'pis': None if 'pis' not in item else item['pis'], 'dataEmissaoPis': None if 'dataemissaopis' not in item else item['dataemissaopis'], 'situacaoGrauInstrucao': None if 'situacaograuinstrucao' not in item else item['situacaograuinstrucao'], 'grauInstrucao': None if 'grauinstrucao' not in item else item['grauinstrucao'], 'certificadoReservista': None if 'certificadoreservista' not in item else item['certificadoreservista'], 'ric': None if 'ric' not in item else item['ric'], 'ufEmissaoRic': None if 'ufemissaoric' not in item else item['ufemissaoric'], 'orgaoEmissorRic': None if 'orgaoemissorric' not in item else item['orgaoemissorric'], 'dataEmissaoRic': None if 'dataemissaoric' not in item else item['dataemissaoric'], 'cns': None if 'cns' not in item else item['cns'], 'dataEmissaoCns': None if 'dataemissaocns' not in item else item['dataemissaocns'], 'cnh': None if 'cnh' not in item else item['cnh'], 'categoriaCnh': None if 'categoriacnh' not in item else item['categoriacnh'], 'dataEmissaoCnh': None if 'dataemissaocnh' not in item else item['dataemissaocnh'], 'dataVencimentoCnh': None if 'datavencimentocnh' not in item else item['datavencimentocnh'], 'dataPrimeiraCnh': None if 'dataprimeiracnh' not in item else item['dataprimeiracnh'], 'ufEmissaoCnh': None if 'ufemissaocnh' not in item else item['ufemissaocnh'], 'observacoesCnh': None if 'observacoescnh' not in item else item['observacoescnh'], 'papel': None if 'papel' not in item else item['papel'] } } if item['emails'] is not None: dict_dados['conteudo'].update({ 'emails': [] }) lista = item['emails'].split('%||%') for listacampo in lista: campo = listacampo.split('%|%') dict_dados['conteudo']['emails'].append({ 'descricao': campo[0], 'endereco': campo[1], 'principal': campo[2] }) if item['telefones'] is not None: dict_dados['conteudo'].update({ 'telefones': [] }) lista = item['telefones'].split('%||%') for listacampo in lista: campo = listacampo.split('%|%') dict_dados['conteudo']['telefones'].append({ 'descricao': campo[0], 'tipo': campo[1], 'numero': campo[2], 'observacao': campo[3], 'principal': campo[4] }) if item['enderecos'] is not None: dict_dados['conteudo'].update({ 'enderecos': [] }) lista = item['enderecos'].split('%||%') for listacampo in lista: campo = listacampo.split('%|%') dict_dados['conteudo']['enderecos'].append({ 'descricao': campo[0], 'logradouro': { 'id': campo[1] }, 'bairro': { 'id': campo[2] }, 'cep': campo[3], 'numero': campo[4], 'complemento': campo[5], 'principal': campo[6] }) if item['contasbancarias'] is not None: dict_dados['conteudo'].update({ 'contasBancarias': [] }) lista = item['contasbancarias'].split('%||%') for listacampo in lista: campo = listacampo.split('%|%') dict_dados['conteudo']['contasBancarias'].append({ 'agencia': { 'id': campo[1] }, 'numero': campo[2], 'digito': campo[3], 'tipo': campo[4], 'dataAbertura': campo[5], 'dataFechamento': campo[6], 'situacao': campo[7], 'principal': campo[8] }) if item['filiacoes'] is not None: dict_dados['conteudo'].update({ 'filiacoes': [] }) lista = item['filiacoes'].split('%||%') for listacampo in lista: campo = listacampo.split('%|%') dict_dados['conteudo']['filiacoes'].append({ 'nome': campo[0], 'tipoFiliacao': campo[1], 'naturezaFiliacao': campo[2] }) if item['deficiencias'] is not None: dict_dados['conteudo'].update({ 'deficiencias': [] }) dict_dados['conteudo']['deficiencias'].append({ 'tipo': item['deficiencias'] }) if item['nacionalidade'] is not None: dict_dados['conteudo'].update({ 'nacionalidade': { 'id': item['nacionalidade'] } }) if item['paisnascimento'] is not None: dict_dados['conteudo'].update({ 'paisNascimento': { 'id': item['paisnascimento'] } }) if item['naturalidade'] is not None: dict_dados['conteudo'].update({ 'naturalidade': { 'id': item['naturalidade'] } }) if item['naturalizado'] is not None: dict_dados['conteudo'].update({ 'naturalizado': item['naturalizado'] }) if item['observacoes'] is not None: dict_dados['conteudo'].update({ 'camposAdicionais': { "tipo": "PESSOA_FISICA", 'campos': [ { 'id': item['id_ca_observacoes'], 'valor': item['observacoes'] } ] } }) if atualizar_ja_enviados and item['id_gerado'] != 0: dict_dados['conteudo'].update({ 'id': item['id_gerado'] }) contador += 1 print(f'Dados gerados ({contador}): ', json.dumps(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 Pessoa Fisica', 'id_gerado': None, 'json': json.dumps(dict_dados), 'i_chave_dsk1': item['cpf'] }) if True: model.insere_tabela_controle_migracao_registro(params_exec, lista_req=lista_controle_migracao) req_res = interacao_cloud.preparar_requisicao(lista_dados=lista_dados_enviar, token=token, url=url, tipo_registro=tipo_registro, tamanho_lote=limite_lote) model.insere_tabela_controle_lote(req_res) 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'] contador = 0 for item in dados: hash_chaves = model.gerar_hash_chaves(sistema, tipo_registro, item['id_entidade'], item['codigo']) dict_dados = { 'idIntegracao': hash_chaves, 'conteudo': { 'descricao': None if 'descricao' not in item else item['descricao'], 'mesesParaAquisicao': item['mesesparaaquisicao'], 'mesesParaConcessao': item['mesesparaconcessao'], 'mesesParaCritica': item['mesesparacritica'], 'diasParaAdiquirirNoPeriodo': item['diasparaadiquirirnoperiodo'], 'controleAbono': item['controleabono'], 'abono': item['abono'], 'pagamentoFerias': item['pagamentoferias'], 'truncarDias': item['truncardias'], 'inicioPeriodo': item['inicioperiodo'], 'diaMesInicioPeriodo': item['diamesinicioperiodo'], 'periodoNovoFeriasProporcional': item['periodonovoferiasproporcional'], 'descontosFaltas': item['descontosfaltas'], 'cancelamentos': item['cancelamentos'], 'suspensoes': item['suspensoes'] } } contador += 1 # 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 Configuracao de Ferias', 'id_gerado': None, 'i_chave_dsk1': item['id_entidade'], 'i_chave_dsk2': item['codigo'] }) if True: model.insere_tabela_controle_migracao_registro2( params_exec, lista_req=lista_controle_migracao) req_res = interacao_cloud.preparar_requisicao( lista_dados=lista_dados_enviar, token=token, url=url, tipo_registro=tipo_registro, tamanho_lote=limite_lote) model.insere_tabela_controle_lote(req_res) print('- Envio de dados finalizado.')
def iniciar_envio(params_exec, dados, metodo, *args, **kwargs): print('- Iniciando processo de transformação.') dh_inicio = datetime.now() 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['entidade'], item['matricula'], item['inicioafastamento']) dict_dados = { 'idIntegracao': hash_chaves, 'conteudo': { 'matricula': { 'id': int(item['matricula']) }, 'inicioAfastamento': item['inicioafastamento'], 'unidade': item['unidade'], 'decorrente': item['decorrente'], 'tipoAfastamento': { 'id': item['tipoafastamento'] } } } if 'quantidade' in item and item['quantidade'] is not None: dict_dados['conteudo'].update({'quantidade': item['quantidade']}) if 'fimafastamento' in item and item['fimafastamento'] is not None: dict_dados['conteudo'].update( {'fimAfastamento': item['fimafastamento']}) if 'retornotrabalho' in item and item['retornotrabalho'] is not None: dict_dados['conteudo'].update( {'retornoTrabalho': item['retornotrabalho']}) if 'quantidadedias' in item and item['quantidadedias'] is not None: dict_dados['conteudo'].update( {'quantidadeDias': item['quantidadedias']}) if 'atestados' in item and item['atestados'] is not None: dict_dados['conteudo'].update({'atestados': item['atestados']}) if 'tipoonus' in item and item['tipoonus'] is not None: dict_dados['conteudo'].update({'tipoOnus': item['tipoonus']}) if 'pessoajuridica' in item and item['pessoajuridica'] is not None: dict_dados['conteudo'].update( {'pessoaJuridica': item['pessoajuridica']}) if 'afastamentoorigem' in item and item[ 'afastamentoorigem'] is not None: dict_dados['conteudo'].update( {'afastamentoOrigem': item['afastamentoorigem']}) if 'competenciaabono' in item and item['competenciaabono'] is not None: dict_dados['conteudo'].update( {'competenciaAbono': item['competenciaabono']}) if 'abonar' in item and item['abonar'] is not None: dict_dados['conteudo'].update({'abonar': item['abonar']}) if 'competenciadesconto' in item and item[ 'competenciadesconto'] is not None: dict_dados['conteudo'].update( {'competenciaDesconto': item['competenciadesconto']}) if 'descontar' in item and item['descontar'] is not None: dict_dados['conteudo'].update({'descontar': item['descontar']}) if 'motivo' in item and item['motivo'] is not None: dict_dados['conteudo'].update({'motivo': item['motivo']}) if 'ato' in item and item['ato'] is not None: dict_dados['conteudo'].update({'ato': {'id': int(item['ato'])}}) 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 Afastamento', 'id_gerado': None, 'json': json.dumps(dict_dados), 'i_chave_dsk1': item['entidade'], 'i_chave_dsk2': item['matricula'], 'i_chave_dsk3': item['inicioafastamento'] }) print( f'- Processo de transformação finalizado. ({(datetime.now() - dh_inicio).total_seconds()} segundos)' ) if True: model.insere_tabela_controle_migracao_registro( params_exec, lista_req=lista_controle_migracao) req_res = interacao_cloud.preparar_requisicao( lista_dados=lista_dados_enviar, token=token, url=url, tipo_registro=tipo_registro, tamanho_lote=limite_lote) model.insere_tabela_controle_lote(req_res)
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'] contador = 0 for item in dados: hash_chaves = model.gerar_hash_chaves(sistema, tipo_registro, item['cnpj']) dict_dados = { 'idIntegracao': hash_chaves, 'conteudo': { 'tipo': None if 'tipo' not in item else item['tipo'], 'cnpj': None if 'cnpj' not in item else item['cnpj'], 'razaoSocial': None if 'razaosocial' not in item else item['razaosocial'], 'nomeFantasia': None if 'nomefantasia' not in item else item['nomefantasia'], 'porte': None if 'porte' not in item else item['porte'], 'numeroRegistro': None if 'numeroregistro' not in item else item['numeroregistro'], 'dataRegistro': None if 'dataregistro' not in item else item['dataregistro'], 'orgaoRegistro': None if 'orgaoregistro' not in item else item['orgaoregistro'], 'inscricaoMunicipal': None if 'inscricaomunicipal' not in item else item['inscricaomunicipal'], 'isentoInscricaoEstadual': None if 'isentoinscricaoestadual' not in item else item['isentoinscricaoestadual'], 'inscricaoEstadual': None if 'inscricaoestadual' not in item else item['inscricaoestadual'], 'optanteSimples': None if 'optantesimples' not in item else item['optantesimples'], 'site': None if 'site' not in item else item['site'], 'sindicato': None if 'sindicato' not in item else item['sindicato'], 'numeroAns': None if 'numeroans' not in item else item['numeroans'], 'numeroInep': None if 'numeroinep' not in item else item['numeroinep'], 'numeroValeTransporte': None if 'numerovaletransporte' not in item else item['numerovaletransporte'], } } if item['emails'] is not None: dict_dados['conteudo'].update({'emails': []}) lista = item['emails'].split('%||%') for listacampo in lista: campo = listacampo.split('%|%') dict_dados['conteudo']['emails'].append({ 'descricao': campo[0], 'endereco': campo[1], 'principal': campo[2] }) if item['telefones'] is not None: dict_dados['conteudo'].update({'telefones': []}) lista = item['telefones'].split('%||%') for listacampo in lista: campo = listacampo.split('%|%') dict_dados['conteudo']['telefones'].append({ 'descricao': campo[0], 'tipo': campo[1], 'numero': campo[2], 'observacao': campo[3], 'principal': campo[4] }) if item['enderecos'] is not None: dict_dados['conteudo'].update({'enderecos': []}) lista = item['enderecos'].split('%||%') for listacampo in lista: campo = listacampo.split('%|%') dict_dados['conteudo']['enderecos'].append({ 'descricao': campo[0], 'logradouro': { 'id': campo[1] }, 'bairro': { 'id': campo[2] }, 'cep': campo[3], 'numero': campo[4], 'complemento': campo[5], 'principal': campo[6] }) if item['responsaveis'] is not None: dict_dados['conteudo'].update({'responsaveis': []}) lista = item['responsaveis'].split('%||%') for listacampo in lista: campo = listacampo.split('%|%') dict_dados['conteudo']['responsaveis'].append({ 'dataInicio': campo[0], 'dataTermino': None if campo[1] == 'null' else campo[1], 'qualificacao': campo[2], 'responsavel': { 'id': campo[3] } }) contador += 1 # 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 Pessoa Juridica', 'id_gerado': None, 'i_chave_dsk1': item['cnpj'] }) if True: model.insere_tabela_controle_migracao_registro( params_exec, lista_req=lista_controle_migracao) req_res = interacao_cloud.preparar_requisicao( lista_dados=lista_dados_enviar, token=token, url=url, tipo_registro=tipo_registro, tamanho_lote=limite_lote) model.insere_tabela_controle_lote(req_res) print('- Envio de dados finalizado.')
def iniciar_envio(params_exec, dados, metodo, *args, **kwargs): print('- Iniciando processo de transformação.') dh_inicio = datetime.now() 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['entidade'], item['matricula'], item['datainicial']) dict_dados = { 'idIntegracao': hash_chaves, 'conteudo': { 'situacao': item['situacao'], 'dataInicial': item['datainicial'], 'dataFinal': item['datafinal'], 'configuracaoFerias': { 'id': item['configuracaoferias'] }, 'matricula': { 'id': item['matricula'] }, 'faltas': item['faltas'], 'diasAdquiridos': item['diasadquiridos'], 'cancelados': item['cancelados'], 'suspensos': item['suspensos'], 'saldo': item['saldo'], } } if 'pagou1tercointegral' in item and item[ 'pagou1tercointegral'] is not None: dict_dados['conteudo'].update( {'pagou1TercoIntegral': item['pagou1tercointegral']}) if 'diasanuladosrescisao' in item and item[ 'diasanuladosrescisao'] is not None: dict_dados['conteudo'].update( {'diasAnuladosRescisao': item['diasanuladosrescisao']}) if 'conversao' in item and item['conversao'] is not None: dict_dados['conteudo'].update({'conversao': item['conversao']}) if 'competenciafechamentoprovisao' in item and item[ 'competenciafechamentoprovisao'] is not None: dict_dados['conteudo'].update({ 'competenciaFechamentoProvisao': item['competenciafechamentoprovisao'] }) if item['movimentacoes'] is not None: listaconteudo = [] lista = item['movimentacoes'].split('%||%') if len(lista) > 0: for listacampo in lista: campo = listacampo.split('%|%') for idx, val in enumerate(campo): if campo[idx] == '': campo[idx] = None dict_item_conteudo = {} if campo[16] is not None: dict_item_conteudo.update({'conversao': campo[16]}) if False: if campo[1] is not None: dict_item_conteudo.update({'dataInicio': campo[1]}) if False: if campo[2] is not None: dict_item_conteudo.update({'dataFim': campo[2]}) if campo[3] is not None: dict_item_conteudo.update({'motivo': campo[3]}) if campo[4] is not None: dict_item_conteudo.update( {'dataCancelamento': campo[4]}) if campo[5] is not None: dict_item_conteudo.update({'dataInicioGozo': campo[5]}) if campo[6] is not None: dict_item_conteudo.update({'dataFimGozo': campo[6]}) if campo[7] is not None: dict_item_conteudo.update({'dataPagamento': campo[7]}) if campo[8] is not None: dict_item_conteudo.update({'diasAbono': campo[8]}) if campo[9] is not None: dict_item_conteudo.update({'diasGozo': campo[9]}) if campo[10] is not None: dict_item_conteudo.update({'diasFalta': campo[10]}) if campo[11] is not None: dict_item_conteudo.update( {'diasPagosRescisao': campo[11]}) if campo[12] is not None: dict_item_conteudo.update({'ferias': campo[12]}) if campo[13] is not None: dict_item_conteudo.update({'tipo': campo[13]}) if campo[14] is not None: dict_item_conteudo.update({'dataMovimento': campo[14]}) if campo[15] is not None: dict_item_conteudo.update({'quantidade': campo[15]}) listaconteudo.append(dict_item_conteudo) if len(listaconteudo) > 0: dict_dados['conteudo'].update({'movimentacoes': listaconteudo}) 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 Lotação Física', 'id_gerado': None, 'json': json.dumps(dict_dados), 'i_chave_dsk1': item['entidade'], 'i_chave_dsk2': item['matricula'], 'i_chave_dsk3': item['datainicial'] }) print( f'- Processo de transformação finalizado. ({(datetime.now() - dh_inicio).total_seconds()} segundos)' ) if True: model.insere_tabela_controle_migracao_registro( params_exec, lista_req=lista_controle_migracao) req_res = interacao_cloud.preparar_requisicao( lista_dados=lista_dados_enviar, token=token, url=url, tipo_registro=tipo_registro, tamanho_lote=limite_lote) model.insere_tabela_controle_lote(req_res)
def iniciar_envio(params_exec, dados, metodo, *args, **kwargs): print('- Iniciando processo de transformação.') dh_inicio = datetime.now() 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['entidade'], item['matricula'], item['tipoprocessamento'], item['subtipoprocessamento'], item['competencia'], item['datapagamento']) dict_dados = { 'idIntegracao': hash_chaves, 'conteudo': { 'tipoProcessamento': item['tipoprocessamento'], 'subTipoProcessamento': item['subtipoprocessamento'], 'matricula': { 'id': item['matricula'] }, 'calculo': { 'id': item['calculo'] } } } if 'competencia' in item and item['competencia'] is not None: dict_dados['conteudo'].update({'competencia': item['competencia']}) if 'folhapagamento' in item and item['folhapagamento'] is not None: dict_dados['conteudo'].update( {'folhaPagamento': item['folhapagamento']}) if 'totalbruto' in item and item['totalbruto'] is not None: dict_dados['conteudo'].update({'totalBruto': item['totalbruto']}) if 'totaldesconto' in item and item['totaldesconto'] is not None: dict_dados['conteudo'].update( {'totalDesconto': item['totaldesconto']}) if 'totalliquido' in item and item['totalliquido'] is not None: dict_dados['conteudo'].update( {'totalLiquido': item['totalliquido']}) if 'datafechamento' in item and item['datafechamento'] is not None: dict_dados['conteudo'].update( {'dataFechamento': item['datafechamento']}) if 'datapagamento' in item and item['datapagamento'] is not None: dict_dados['conteudo'].update( {'dataPagamento': item['datapagamento']}) if 'dataliberacao' in item and item['dataliberacao'] is not None: dict_dados['conteudo'].update( {'dataLiberacao': item['dataliberacao']}) if 'datacalculo' in item and item['datacalculo'] is not None: dict_dados['conteudo'].update({'dataCalculo': item['datacalculo']}) if 'situacao' in item and item['situacao'] is not None: dict_dados['conteudo'].update({'situacao': item['situacao']}) if 'conversao' in item and item['conversao'] is not None: dict_dados['conversao'].update({'conversao': item['conversao']}) if item['eventos'] is not None: listaconteudo = [] lista = item['eventos'].split('%||%') if len(lista) > 0: for listacampo in lista: campo = listacampo.split('%|%') for idx, val in enumerate(campo): if campo[idx] == '': campo[idx] = None dict_item_conteudo = { 'configuracao': { 'id': campo[0] }, 'tipo': campo[1], 'referencia': campo[2], 'valor': campo[3], } if campo[4] is not None: dict_item_conteudo.update( {'periodosAquisitivosFerias': campo[4]}) if campo[5] is not None: campolistaconteudo = [] campolista = campo[5].split('%&&%') if len(lista) > 0: for campolistacampo in campolista: campocampo = campolistacampo.split('%&%') for idx, val in enumerate(campocampo): if campocampo[idx] == '': campocampo[idx] = None campodict_item_conteudo = { 'dependencia': { 'id': int(campocampo[0]) } } if campocampo[1] is not None: campodict_item_conteudo.update( {'valor': campocampo[1]}) campolistaconteudo.append( campodict_item_conteudo) if len(campolistaconteudo) > 0: dict_item_conteudo.update( {'rateioDependentes': campolistaconteudo}) listaconteudo.append(dict_item_conteudo) if len(listaconteudo) > 0: dict_dados['conteudo'].update({'eventos': listaconteudo}) if item['composicaobases'] is not None: listaconteudo = [] lista = item['composicaobases'].split('%||%') if len(lista) > 0: for listacampo in lista: campo = listacampo.split('%|%') for idx, val in enumerate(campo): if campo[idx] == '': campo[idx] = None dict_item_conteudo = { 'configuracaoEvento': { 'id': campo[0] }, 'base': { 'id': campo[1] }, 'valor': campo[2], } listaconteudo.append(dict_item_conteudo) if len(listaconteudo) > 0: dict_dados['conteudo'].update( {'composicaoBases': listaconteudo}) 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 Rescisao', 'id_gerado': None, 'json': json.dumps(dict_dados), 'i_chave_dsk1': item['entidade'], 'i_chave_dsk2': item['matricula'], 'i_chave_dsk3': item['tipoprocessamento'], 'i_chave_dsk4': item['subtipoprocessamento'], 'i_chave_dsk5': item['competencia'], 'i_chave_dsk6': item['datapagamento'] }) print( f'- Processo de transformação finalizado. ({(datetime.now() - dh_inicio).total_seconds()} segundos)' ) if True: model.insere_tabela_controle_migracao_registro( params_exec, lista_req=lista_controle_migracao) req_res = interacao_cloud.preparar_requisicao( lista_dados=lista_dados_enviar, token=token, url=url, tipo_registro=tipo_registro, tamanho_lote=limite_lote) model.insere_tabela_controle_lote(req_res)
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'] contador = 0 for item in dados: if item['datainiciobeneficio'] is not None: data_chave = item['datainiciobeneficio'] else: data_chave = item['datainicio'] hash_chaves = model.gerar_hash_chaves(sistema, tipo_registro, item['cpf_dependente'], item['cpf_responsavel'], data_chave) dict_dados = { 'idIntegracao': hash_chaves, 'conteudo': { 'id': item['id_gerado'], 'pessoa': { 'id': item['pessoa'] }, 'pessoaDependente': { 'id': item['pessoadependente'] }, 'responsaveis': item['responsaveis'], 'grau': item['grau'], 'dataInicio': item['datainicio'], # item['dt_nascimento_dependente'], 'dataTermino': item['datatermino'], 'motivoInicio': item['motivoinicio'], 'motivoTermino': item['motivotermino'], 'dataCasamento': item['datacasamento'], 'estuda': item['estuda'], 'dataInicioCurso': item['datainiciocurso'], 'dataFinalCurso': item['datafinalcurso'], 'irrf': item['irrf'], 'salarioFamilia': item['salariofamilia'], 'pensao': item['pensao'], 'dataInicioBeneficio': item['datainiciobeneficio'], 'duracao': item['duracao'], 'dataVencimento': item['datavencimento'], 'alvaraJudicial': item['alvarajudicial'], 'dataAlvara': item['dataalvara'], 'aplicacaoDesconto': item['aplicacaodesconto'], 'valorDesconto': item['valordesconto'], 'percentualDesconto': item['percentualdesconto'], 'percentualPensaoFgts': item['percentualpensaofgts'], 'representanteLegal': item['representantelegal'], 'formaPagamento': item['formapagamento'] } } if None and 'contabancaria' in item and item[ 'contabancaria'] is not None: dict_dados['conteudo'].update( {'contaBancaria': { 'id': int(item['contabancaria']) }}) contador += 1 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 Dependencia', 'id_gerado': None, 'json': json.dumps(dict_dados), 'i_chave_dsk1': item['cpf_dependente'], 'i_chave_dsk2': item['cpf_responsavel'], 'i_chave_dsk3': data_chave }) if True: model.insere_tabela_controle_migracao_registro( params_exec, lista_req=lista_controle_migracao) req_res = interacao_cloud.preparar_requisicao( lista_dados=lista_dados_enviar, token=token, url=url, tipo_registro=tipo_registro, tamanho_lote=limite_lote) model.insere_tabela_controle_lote(req_res) 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['chave_dsk1'], item['chave_dsk2']) dict_dados = { 'idIntegracao': hash_chaves, 'conteudo': { 'descricao': item['descricao'], 'acumuloCargos': item['acumulocargos'], 'quantidadeVagas': item['quantidadevagas'], 'dedicacaoExclusiva': item['dedicacaoexclusiva'], 'inicioVigencia': item['iniciovigencia'].strftime("%Y-%m-%d 02:%M:%S"), 'pagaDecimoTerceiroSalario': item['pagadecimoterceirosalario'], 'contagemEspecial': item['contagemespecial'], 'quantidadeVagasPcd': item['quantidadevagaspcd'], 'extinto': item['extinto'], 'ato': { 'id': item['id_ato'] }, 'cbo': { 'id': item['id_cbo'] }, 'tipo': { 'id': item['id_tipo_cargo'] }, 'camposAdicionais': { 'tipo': 'CARGO', 'campos': [{ 'id': '5fcc08fde2c3cf00e344c97a', 'valor': item['tcetipoquadro'] }, { 'id': '5fcc08fde2c3cf00e344c979', 'valor': item['tcecodcargo'] }, { 'id': '5fcc08fde2c3cf00e344c978', 'valor': item['tcetipocargoacu'] }] } } } if 'configuracao_ferias' in item and item[ 'configuracao_ferias'] is not None: dict_dados['conteudo'].update( {'configuracaoFerias': { 'id': item['configuracao_ferias'] }}) if 'grauinstrucao' in item and item['grauinstrucao'] is not None: dict_dados['conteudo'].update( {'grauInstrucao': item['grauinstrucao']}) if 'situacaograuinstrucao' in item and item[ 'situacaograuinstrucao'] is not None: dict_dados['conteudo'].update( {'situacaoGrauInstrucao': item['situacaograuinstrucao']}) if 'contagemespecial' in item and item['contagemespecial'] is not None: dict_dados['conteudo'].update( {'contagemEspecial': item['contagemespecial']}) if 'unidadepagamento' in item and item['unidadepagamento'] is not None: dict_dados['conteudo'].update( {'unidadePagamento': item['unidadepagamento']}) if 'unidadepagamento' in item and item['unidadepagamento'] is not None: dict_dados['conteudo'].update( {'unidadePagamento': item['unidadepagamento']}) if 'quadrocargos' in item and item['quadrocargos'] is not None: dict_dados['conteudo'].update( {'quadroCargos': item['quadrocargos']}) if 'quadrocargos' in item and item['quadrocargos'] is not None: dict_dados['conteudo'].update( {'quadroCargos': item['quadrocargos']}) if 'requisitosnecessarios' in item and item[ 'requisitosnecessarios'] is not None: dict_dados['conteudo'].update( {'requisitosNecessarios': item['requisitosnecessarios']}) if 'atividadesdesempenhadas' in item and item[ 'atividadesdesempenhadas'] is not None: dict_dados['conteudo'].update( {'atividadesDesempenhadas': item['atividadesdesempenhadas']}) if 'extinto' in item and item['extinto'] is not None: dict_dados['conteudo'].update({'extinto': item['extinto']}) if 'extinto' in item and item['extinto'] is not None: dict_dados['conteudo'].update({'extinto': item['extinto']}) if 'configuracaolicencapremio' in item and item[ 'configuracaolicencapremio'] is not None: dict_dados['conteudo'].update({ 'configuracaoLicencaPremio': item['configuracaolicencapremio'] }) if 'id_conf_ferias' in item and item['id_conf_ferias'] is not None: dict_dados['conteudo'].update( {'configuracaoFerias': { 'id': item['id_conf_ferias'] }}) if 'niveis_vigentes' in item and item['niveis_vigentes'] is not None: lista_niveis = [] for n in item['niveis_vigentes']: dados_niveis = n.split(':') if not re.search('\?', dados_niveis[1]): if dados_niveis[1] != '' and dados_niveis[1] is not None: dict_item_niveis = { 'nivelSalarial': { 'id': int(dados_niveis[1]) } } lista_niveis.append(dict_item_niveis) lista_niveis = list_unique(lista_niveis) dict_dados['conteudo'].update({'remuneracoes': lista_niveis}) if 'historico' in item and item['historico'] is not None: lista_historico = [] for h in item['historico'].split('%/%'): dados_historico = h.split(',') # print('dados_historico', dados_historico, type(dados_historico)) for idx, val in enumerate(dados_historico): pass # print(idx, val) dict_item_historico = { 'descricao': dados_historico[11], 'inicioVigencia': dados_historico[12] + ' 01:00:00', 'pagaDecimoTerceiroSalario': True if dados_historico[24] == 't' else False, 'contagemEspecial': dados_historico[23], 'acumuloCargos': dados_historico[17], 'quantidadeVagasPcd': dados_historico[25], 'extinto': True if dados_historico[29] == 't' else False, 'grauInstrucao': dados_historico[20], 'quantidadeVagas': dados_historico[18], 'dedicacaoExclusiva': True if dados_historico[22] == 't' else False, 'ato': { 'id': dados_historico[2] }, 'cbo': { 'id': item['id_cbo'] if dados_historico[3] == '0' else dados_historico[3], }, 'tipo': { 'id': dados_historico[4] }, 'camposAdicionais': { 'tipo': 'CARGO', 'campos': [{ 'id': '5fcc08fde2c3cf00e344c97a', 'valor': dados_historico[26] }, { 'id': '5fcc08fde2c3cf00e344c979', 'valor': dados_historico[27] }, { 'id': '5fcc08fde2c3cf00e344c978', 'valor': dados_historico[28] }] } } if dados_historico[6] != '0': dict_item_historico.update( {'configuracaoFerias': { 'id': dados_historico[6] }}) lista_niveis_historico = [] if re.search('\:', dados_historico[30]): for item_niveis in dados_historico[30].split('|'): nivel = item_niveis.split(':') if not re.search('\?', nivel[1]): try: if nivel[1] != '' and nivel[1] is not None: dict_item_niveis = { 'nivelSalarial': { 'id': int(nivel[1]) } } lista_niveis_historico.append( dict_item_niveis) except Exception as error: print(f"Erro na geração de item {nivel[1]}. ", error) if len(lista_niveis_historico) > 0: # print('lista_niveis_historico', lista_niveis_historico) lista_niveis_historico = list_unique( lista_niveis_historico) dict_item_historico.update( {'remuneracoes': lista_niveis_historico}) # Insere lista de históricos no dicionario a ser enviado lista_historico.append(dict_item_historico) dict_dados['conteudo'].update({'historicos': lista_historico}) 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 Cargos', '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( lista_dados=lista_dados_enviar, token=token, url=url, tipo_registro=tipo_registro, tamanho_lote=1) # Insere lote na tabela 'controle_migracao_lotes' model.insere_tabela_controle_lote(req_res) print('- Envio de dados finalizado.')