Skip to content

Instantly share code, notes, and snippets.

@jonathanalves
Last active December 11, 2020 22:03
Show Gist options
  • Save jonathanalves/dc2d3f367d84e1ccf456e647398c5947 to your computer and use it in GitHub Desktop.
Save jonathanalves/dc2d3f367d84e1ccf456e647398c5947 to your computer and use it in GitHub Desktop.
create table migracao.lote as
select id as imovel, uuid_generate_v4() protocolo, row_number() over() as ordem
from indicador_real where livro = 'MATRICULA' and status != 'PENDENTE' and codigo in ();
with tempCodigo as (
select max(codigo) as codigo from protocolo where dominio = 'PROTOCOLO_RI' and tipo_protocolo = 'NORMAL'
)
INSERT INTO protocolo (
id, codigo, atualizacao, cadastro, cancelamento_automatico,
custas, dominio, emolumentos_busca, encerramento, entrega, entregue, exigencias, indices, legado,
motivo_cancelamento, motivo_suspensao_cancelamento, motivo_suspensao_prazo, optlock, prioridade, quantidade_busca,
reativado, registro, reingresso, reprotocolado, selado, selando, senha, status, tipo_cancelamento, tipo_protocolo,
tipo_registro, valor_busca, vencimento, atendente_id, escrevente_id, etapa_id, indisponibilidade_ordem_id, interessado_id, natureza_id,
origem_id, solicitante_id, tipo_servico_id, tomador_id, usuario_id, vinculo_id, tipo_suspensao
)
select l.protocolo id, (t.codigo + l.ordem) codigo, now(), now(), cancelamento_automatico,
custas, dominio, emolumentos_busca, encerramento, entrega, entregue, exigencias, indices, legado,
motivo_cancelamento, motivo_suspensao_cancelamento, motivo_suspensao_prazo, optlock, prioridade, quantidade_busca,
reativado, registro, reingresso, reprotocolado, selado, selando, senha, status, tipo_cancelamento, tipo_protocolo,
tipo_registro, valor_busca, vencimento, atendente_id, escrevente_id, etapa_id, indisponibilidade_ordem_id, interessado_id, natureza_id,
origem_id, solicitante_id, tipo_servico_id, tomador_id, usuario_id, vinculo_id, tipo_suspensao
from protocolo p, migracao.lote l, tempCodigo t
where p.id = [ID];
----
INSERT INTO protocolo_atividade(
id, protocolo_id, atualizacao, cadastro, "data", log, tipo, dias_corrido, dias_uteis, exigencias, motivo_suspensao_prazo, retornada, etapa_id, usuario_id, tipo_cancelamento
)
SELECT l.protocolo id, l.protocolo protocolo_id, atualizacao, now(), now(), log, tipo, dias_corrido, dias_uteis, exigencias, motivo_suspensao_prazo, retornada, etapa_id, usuario_id, tipo_cancelamento
FROM public.protocolo_atividade p, migracao.lote l
where p.protocolo_id = [ID];
----
INSERT INTO protocolo_prenotacao(
id, protocolo_id, cadastro, custas, emolumentos, is_isenta, principal, registro, selada, selando, tipo_registro, valor
)
SELECT l.protocolo id, l.protocolo protocolo_id, now(), custas, emolumentos, is_isenta, principal, registro, selada, selando, tipo_registro, valor
FROM public.protocolo_prenotacao p, migracao.lote l
where p.protocolo_id = [ID];
----
with tempCodigo as (
select max(ordem ) as ordem from livro_protocolo
)
INSERT INTO livro_protocolo(
id, protocolo_id, ordem, atualizacao, cadastro, anotacao, anteriores, "data", natureza, solicitante, tipo
)
SELECT l.protocolo id, l.protocolo protocolo_id, (t.ordem + l.ordem) ordem, now(), now(), anotacao, anteriores, now(), natureza, solicitante, tipo
FROM public.livro_protocolo p, migracao.lote l , tempCodigo t
where p.protocolo_id = [ID];
----
INSERT INTO ato(
id, protocolo_id, indicador_real_id, atualizacao, cadastro, checklist, custas, dto, emolumentos, indices, legado, registro, selado, selando, valor, cancelamento, codigo, exigencias, impressao, livro, optlock, ordem, texto, tipo, titulo, validacao, tipo_servico_id, registro_auxiliar_id, usuario_cancelamento_id, usuario_validador_id
)
SELECT uuid_generate_v4() id, l.protocolo protocolo_id, l.imovel indicador_real_id, atualizacao, now(), checklist, custas, dto, emolumentos, indices, legado, registro, selado, selando, valor, cancelamento, codigo, exigencias, impressao, livro, optlock, p.ordem, texto, tipo, titulo, validacao, tipo_servico_id, registro_auxiliar_id, usuario_cancelamento_id, usuario_validador_id
FROM public.ato p, migracao.lote l
where p.protocolo_id = [ID];
----
INSERT INTO protocolo_financeiro (
id, protocolo_id, conciliado, atualizacao, cadastro, agencia, banco_emissor, codigo, competencia, conta, descricao,
emissao, forma_pagamento, legado, movimento, numero_controle, parte, rejeitado, taxa, troco, valor, caixa_id, origem_id, usuario_id
)
SELECT l.protocolo id, l.protocolo protocolo_id, true, now(), now(), agencia, banco_emissor, codigo, competencia, conta, descricao,
emissao, forma_pagamento, legado, movimento, numero_controle, parte, rejeitado, taxa, troco, valor, caixa_id, origem_id, usuario_id
FROM public.protocolo_financeiro p, migracao.lote l
where p.protocolo_id = [ID];
----
select cast(p.codigo as text) as protocolo, cast(i.codigo as text) as matricula
from migracao.lote l
join protocolo p on l.protocolo = p.id
join indicador_real i on l.imovel = i.id
order by i.codigo asc
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment