# Copyright (C) 2024 Manuel Bustillo # Copyright (C) 2024-2025 LibreWeddingPlanner contributors # frozen_string_literal: true # == Schema Information # # Table name: expenses # # id :uuid not null, primary key # amount :decimal(, ) # name :string # pricing_type :enum default("fixed"), not null # created_at :datetime not null # updated_at :datetime not null # wedding_id :uuid not null # # Indexes # # index_expenses_on_wedding_id (wedding_id) # # Foreign Keys # # fk_rails_... (wedding_id => weddings.id) # class Expense < ApplicationRecord acts_as_tenant :wedding enum :pricing_type, fixed: 'fixed', per_person: 'per_person' validates :name, presence: true validates :amount, presence: true, numericality: { greater_than: 0 } validates :pricing_type, presence: true end