exec sp_entregas 14000

--select * from tbdManifesto where id_Manifesto = 141587
--select * from tbdManifestoMovi

alter procedure sp_entregas (@id_Manifesto as int)
as begin

select top 100
manifesto.id_manifesto as romaneio,
ltrim(motorista.id_Pessoa) as codmot, 
ltrim(motorista.ds_Pessoa) as nome_mot, 
ltrim(veiculo.cd_Placa) as placa_veic,
motorista.nr_Celular as tel_mot, 
movimento.nr_Conhecimento as cte,
notaFiscal.cd_NotaFiscal + notaFiscal.cd_Serie as nf,
notaFiscal.qt_Volume,
notaFiscal.kg_Mercadoria,
notaFiscal.vl_NotaFiscal,
ltrim(destinatario.ds_Pessoa) as cliente,
ltrim(destinatario.cd_Email) as email_cliente,
ltrim(destinatario.ds_Pessoa) as nome_do_destino,
ltrim(destinatario.cd_CGCCPF) as cnpj_destinatario,
ltrim(destinatario.nr_Telefone) as tel_destino,
ltrim(cidade.ds_Cidade) as cidade_de_destino,
'ENT' as tipomov,
movimento.dt_ImpressaoConhecimento as datatransf, 
movimento.dt_PrazoEntrega as prazoentrega,
movimento.ds_Bairro as bairro,
movimento.ds_Endereco as endereco,
movimento.cd_Cep as CEP,
'' as filial, 
'' as filial_doc,
notaFiscal.ds_ChaveNFe as chave_nfe,
'' as regiao,
'P' as tipoveic,
substring(tipoCarroceria.ds_TipoCarroceria,1,1) as modeloveic,
movimento.dt_PrevisaoEntrega as dt_prev_ent,
ltrim(faturado.cd_CGCCPF) as cnpj_cliente, 
estado.cd_Estado as uf,
movimento.cm_Entrega as obs,
0 as avulso,
0 as cod_onu,
0 as refrigerado,
2 as modalidade,
0 as fixo,
'' as chave_nfe_integracao,
manifestoMovimento.nr_SequenciaManifesto as seq_ent,
1 as avulso
from tbdManifesto manifesto
inner join tbdManifestoMovimento manifestoMovimento on (manifesto.id_Manifesto = manifestoMovimento.id_Manifesto)
inner join tbdMovimento movimento on (manifestoMovimento.id_Movimento = movimento.id_Movimento and manifestoMovimento.id_PedidoColeta is null)
left join tbdPessoa destinatario on (movimento.id_Destinatario = destinatario.id_Pessoa)
left join tbdPessoa faturado on (movimento.id_ClienteFaturamento = faturado.id_Pessoa)
inner join tbdCidade cidade on (destinatario.id_Cidade = cidade.id_Cidade)
inner join tbdEstado estado on (cidade.id_Estado = estado.id_Estado)
left join tbdMovimentoNotaFiscal notaFiscal on (movimento.id_Movimento = notaFiscal.id_Movimento)
inner join tbdPessoa motorista on (manifesto.id_Motorista= motorista.id_Pessoa)
inner join tbdVeiculo veiculo on (manifesto.id_Veiculo = veiculo.id_Veiculo)
inner join tbdTipoVeiculo tipoVeiculo on (veiculo.id_TipoVeiculo = tipoVeiculo.id_TipoVeiculo)
inner join tbdTipoCarroceria tipoCarroceria on (veiculo.id_TipoCarroceria = tipoCarroceria.id_TipoCarroceria)
where manifesto.id_Manifesto > @id_Manifesto
union 
select top 100 
manifesto.id_manifesto as romaneio,
ltrim(motorista.id_Pessoa) as codmot, 
ltrim(motorista.ds_Pessoa) as nome_mot, 
ltrim(veiculo.cd_Placa) as placa_veic,
motorista.nr_Celular as tel_mot, 
coleta.id_PedidoColeta as cte,
itemColeta.ds_NotaFiscal as nf,
itemColeta.qt_Volume,
itemColeta.kg_Mercadoria,
itemColeta.vl_NotaFiscal,
ltrim(coleta.ds_LocalColeta) as cliente,
ltrim(destinatario.cd_Email) as email_cliente,
ltrim(destinatario.ds_RazaoSocial) as nome_do_destino,
ltrim(destinatario.cd_CGCCPF) as cnpj_destinatario,
ltrim(destinatario.nr_Telefone) as tel_destino,
ltrim(cidade.ds_Cidade) as cidade_de_destino,
'COL' as tipomov,
coleta.dt_Coleta as datatransf, 
coleta.dt_Limite as prazoentrega,
itemColeta.ds_Bairro as bairro,
coleta.ds_EnderecoColeta as endereco,
coleta.cd_CepColeta as CEP,
'' as filial, 
'' as filial_doc,
'' as chave_nfe,
'' as regiao,
'P' as tipoveic,
substring(tipoCarroceria.ds_TipoCarroceria,1,1) as modeloveic,
convert(varchar, coleta.dt_Coleta, 23) + ' ' + coleta.hr_Coleta as dt_prev_ent,
ltrim(faturado.cd_CGCCPF) as cnpj_cliente, 
estado.cd_Estado as uf,
coleta.cm_PedidoColeta as obs,
0 as avulso,
0 as cod_onu,
0 as refrigerado,
2 as modalidade,
0 as fixo,
'' as chave_nfe_integracao,
manifestoMovimento.nr_SequenciaManifesto as seq_ent,
1 as avulso
from tbdManifesto manifesto
inner join tbdManifestoMovimento manifestoMovimento on (manifesto.id_Manifesto = manifestoMovimento.id_Manifesto)
inner join tbdPedidoColeta coleta on (manifestoMovimento.id_PedidoColeta = coleta.id_PedidoColeta and manifestoMovimento.id_Movimento is null)
left join tbdItemPedidoColeta itemColeta on (coleta.id_PedidoColeta = itemColeta.id_PedidoColeta)
left join tbdPessoa destinatario on (coleta.id_Pessoa = destinatario.id_Pessoa)
left join tbdPessoa faturado on (coleta.id_Remetente = faturado.id_Pessoa)
left join tbdCidade cidade on (destinatario.id_Cidade = cidade.id_Cidade)
left join tbdEstado estado on (cidade.id_Estado = estado.id_Estado)
--left join tbdMovimentoNotaFiscal notaFiscal on (movimento.id_Movimento = notaFiscal.id_Movimento)
inner join tbdPessoa motorista on (manifesto.id_Motorista= motorista.id_Pessoa)
inner join tbdVeiculo veiculo on (manifesto.id_Veiculo = veiculo.id_Veiculo)
inner join tbdTipoVeiculo tipoVeiculo on (veiculo.id_TipoVeiculo = tipoVeiculo.id_TipoVeiculo)
inner join tbdTipoCarroceria tipoCarroceria on (veiculo.id_TipoCarroceria = tipoCarroceria.id_TipoCarroceria)
where manifesto.id_Manifesto > @id_Manifesto
end 

--where movimento.dt_Coleta >= '2015-01-01 00:00:00'

--DATEADD(day, 0, DATEDIFF(day, 0, movimento.dt_Coleta)) +
--    DATEADD(day, 0 - DATEDIFF(day, 0, movimento.hr_coleta), movimento.hr_coleta) >= '2021-01-01 00:08:00'


