Manuel Bustillo
91bbae1c63
All checks were successful
Check usage of free licenses / check-licenses (pull_request) Successful in 59s
Add copyright notice / copyright_notice (pull_request) Successful in 2m21s
Run unit tests / unit_tests (pull_request) Successful in 3m2s
Build Nginx-based docker image / build-static-assets (pull_request) Successful in 25m17s
37 lines
894 B
Ruby
37 lines
894 B
Ruby
# 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
|