chore: linting stuff

This commit is contained in:
kbe
2025-08-25 00:43:03 +02:00
parent 03717dc95b
commit 632055c44d
14 changed files with 107 additions and 43 deletions

View File

@@ -1,8 +1,22 @@
class Ticket < ApplicationRecord
# Associations
belongs_to :user
belongs_to :ticket_type
has_one :party, through: :ticket_type
# Validations
validates :qr_code, presence: true, uniqueness: true
validates :party_id, presence: true
validates :user_id, presence: true
validates :ticket_type_id, presence: true
validates :price_cents, presence: true, numericality: { greater_than: 0 }
validates :status, presence: true, inclusion: { in: %w[active used expired refunded] }
before_validation :set_price_from_ticket_type, on: :create
private
def set_price_from_ticket_type
return unless ticket_type
self.price_cents = ticket_type.price_cents
end
end

View File

@@ -1,7 +1,7 @@
class TicketType < ApplicationRecord
# Associations
belongs_to :party
has_many :tickets
has_many :tickets, dependent: :destroy
# Validations
validates :name, presence: true, length: { minimum: 3, maximum: 50 }
@@ -12,7 +12,7 @@ class TicketType < ApplicationRecord
validates :sale_start_at, presence: true
validates :sale_end_at, presence: true
validate :sale_end_after_start
validates :requires_id, inclusion: { in: [true, false] }
validates :requires_id, inclusion: { in: [ true, false ] }
validates :minimum_age, numericality: { only_integer: true, greater_than_or_equal_to: 0, less_than_or_equal_to: 120 }, allow_nil: true
private

View File

@@ -18,4 +18,8 @@ class User < ApplicationRecord
# :omniauthable - allows authentication via OAuth providers
devise :database_authenticatable, :registerable,
:recoverable, :rememberable, :validatable
# Relationships
has_many :parties, dependent: :destroy
has_many :tickets, dependent: :destroy
end