-- Arquitetura de Frota preparada (próxima fase): despesas por veículo
-- (Diesel, Sem Parar, pedágio, manutenção). Sem telas/integração no MVP.
CREATE TYPE "TipoDespesaVeiculo" AS ENUM ('DIESEL', 'SEM_PARAR', 'PEDAGIO', 'MANUTENCAO', 'OUTRO');

CREATE TABLE "despesa_veiculo" (
    "id" SERIAL NOT NULL,
    "veiculo_id" INTEGER NOT NULL,
    "tipo" "TipoDespesaVeiculo" NOT NULL,
    "valor" DECIMAL(14,2) NOT NULL,
    "data" TIMESTAMP(3) NOT NULL,
    "km" INTEGER,
    "litros" DECIMAL(10,3),
    "descricao" TEXT,
    "origem" TEXT,
    "criado_em" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
    CONSTRAINT "despesa_veiculo_pkey" PRIMARY KEY ("id")
);

CREATE INDEX "despesa_veiculo_veiculo_id_idx" ON "despesa_veiculo"("veiculo_id");
CREATE INDEX "despesa_veiculo_tipo_idx" ON "despesa_veiculo"("tipo");

ALTER TABLE "despesa_veiculo" ADD CONSTRAINT "despesa_veiculo_veiculo_id_fkey"
    FOREIGN KEY ("veiculo_id") REFERENCES "veiculo"("id") ON DELETE RESTRICT ON UPDATE CASCADE;
