Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- from django.db.models import Q
- from api.senior import models as modelErp
- from api.cotacao import models as modelCotacao
- class SyncFornecedor():
- filtro = Q()
- dados_legado = modelErp.Fornecedor.objects.using('erp').all()
- qtd_registros = len(dados_legado)
- qtd_adicionados = 0
- qtd_atualizados = 0
- dados_adicionar = []
- def run_sync(self):
- for reg in self.dados_legado:
- data = {
- 'id_erp': reg.id,
- 'nome': reg.nome,
- 'tipo': reg.tipo,
- 'inscricao_estadual': reg.inscricao_estadual,
- 'inscricao_municipal': reg.inscricao_municipal,
- 'cpnj_cpf': reg.cpnj_cpf,
- 'endereco': reg.endereco,
- 'complemento': reg.complemento,
- 'bairro': reg.bairro,
- 'cep': reg.cep,
- 'cidade': reg.cidade,
- 'uf': reg.uf,
- 'telefone': reg.telefone,
- 'email': reg.email,
- 'nota': reg.nota,
- }
- filtro = Q(id_erp=reg.id)
- existe = modelCotacao.Fornecedor.objects.filter(filtro).exists()
- if existe:
- modelCotacao.Fornecedor.objects.filter(filtro).update(**data)
- self.qtd_atualizados += 1
- else:
- fornecedor = modelCotacao.Fornecedor(**data)
- self.dados_adicionar.append(fornecedor)
- self.qtd_adicionados += 1
- if self.dados_adicionar:
- modelCotacao.Fornecedor.objects.bulk_create(self.dados_adicionar)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement