Tabela de conteúdos

~~ODT~~

Última atualização: 2017/04/03 18:23 (edição externa)

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:

O relatório gerado exibe os seguintes dados:

O caso de uso é finalizado.

Principais Regras de Negócio

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:

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