~~ODT~~ echo "
"; echo "Última atualização: "; ver('', false); echo "
";
====== Relatório de Consumo e Quilometragem por Tipo de Veículo ====== Este caso de uso é utilizado pelos gestores de transporte com a finalidade de criar um relatório detalhando o consumo de combustível e quilometragem por tipo de veículo. ===== Descrição do Caso de Uso ===== Este caso de uso inicia quando o usuário acessa a opção: //SIPAC -> Transportes -> Aba de Relatórios -> Gastos -> Consumo de Combustível e Quilometragem por Tipo de Veículo//. Inicialmente, é exibido o seguinte formulário de busca: ***Unidade Beneficiada:** Tipo - AUTOCOMPLETE, formato: NOME_UNIDADE (CODIGO_UNIDADE). Nome ou código da unidade a ser consultada. ***Tipo do Veículo:** Tipo - TEXTO, formato: DENOMINACAO TIPO DO VEICULO. ***Situação do Veículo:** Tipo - TEXTO. ***Tipo de Propriedade:** Tipo - TEXTO. ***Período:** Tipo - DATA, formato: DD/MM/AAAA de DD/MM/AAAA. O relatório gerado exibe os seguintes dados: * **__Tipo do Veículo__**: Tipo - TEXTO. * **__Quilometragem (KM)__**: Tipo - NUMÉRICO. Quilometragem no período selecionado. * **__Consumo (em litros)__**: Tipo - NUMÉRICO. Consumo de combustível no período selecionado. * **__Valor Acumulado (R$)__**: Tipo - NUMÉRICO. Valor do gasto com combustível no período selecionado. * **__Média (KM/L)__**: Tipo - NUMÉRICO. Média do consumo no período selecionado. * **__Totais__**: Tipo - NUMÉRICO. Valores totais de cada coluna. O caso de uso é finalizado. ===== Principais Regras de Negócio ===== * **RN01** - Caso o usuário seja um Gestor de Transportes de Unidades, deverá visualizar apenas os abastecimentos cuja unidade gestora esteja na hierarquia de sua unidade. ==== Resoluções/Legislações Associadas ==== Não se aplica. ===== Classes Persistentes e Tabelas Envolvidas ===== ^ Classe ^ Tabela | | br.ufrn.sipac.transportes.dominio.Abastecimento | transporte.abastecimento | | br.ufrn.sipac.transportes.dominio.Veiculo | transporte.veiculo | ===== Plano de Teste ===== Sistema: SIPAC Módulo: Transportes Link(s): Aba de Relatórios -> Gastos -> Consumo de Combustível e Quilometragem por Tipo de Veículo. Usuário: bergue Papel que usuário deve ter: * SipacPapeis.GESTOR_TRANSPORTES_GLOBAL, * SipacPapeis.GESTOR_TRANSPORTES_UNIDADES, * SipacPapeis.RELATORIOS_TRANSPORTES, * SipacPapeis.GESTOR_TRANSPORTES_ABASTECIMENTO, * SipacPapeis.AUDITOR. ===== Cenários de Teste ===== Não se aplica. ===== Dados para o Teste ===== select tv.id_tipo_veiculo, tv.denominacao , max(a.odometro)-min(a.odometro) as km_rodados , cast (sum(a.quantidade_litros) as numeric(10,2)) as qt_litros, cast(sum(a.valor_abastecimento) as numeric(10,2)) as valor ,cast((max(a.odometro)-min(a.odometro))/sum(a.quantidade_litros) as numeric(10,2)) as consumo from transporte.abastecimento a join transporte.veiculo v on (a.id_veiculo = v.id_veiculo ) join comum.unidade u on (a.id_unidade = u.id_unidade) join transporte.status_veiculo sv on (sv.id_status_veiculo = v.id_status_veiculo) join transporte.tipo_propriedade tp on (tp.id_tipo_propriedade = v.id_tipo_propriedade ) left JOIN transporte.ano_modelo anoModelo on (v.id_ano_modelo= anoModelo.id_ano_modelo ) left JOIN transporte.modelo_veiculo modelo on ( anoModelo.id_modelo_veiculo = modelo.id_modelo_veiculo ) left JOIN transporte.tipo_veiculo tv on (modelo.id_tipo_veiculo = tv.id_tipo_veiculo) group by tv.id_tipo_veiculo, tv.denominacao