Redo simulations lifecycle #222

Merged
bustikiller merged 6 commits from table-arrangements-guest-digest into main 2025-01-26 12:53:22 +00:00
2 changed files with 13 additions and 2 deletions
Showing only changes of commit cf0a7b71ca - Show all commits

View File

@ -19,4 +19,6 @@ class Wedding < ApplicationRecord
SLUG_REGEX = /[a-z\d-]+/
validates :slug, presence: true, uniqueness: true, format: { with: /\A#{SLUG_REGEX}\z/ }
has_many :guests, dependent: :delete_all
end

View File

@ -6,7 +6,13 @@ require_relative '../../extensions/tree_node_extension'
module Tables
class Distribution
attr_accessor :tables, :min_per_table, :max_per_table
class << self
def digest(wedding)
Digest::UUID.uuid_v5(wedding.id, wedding.guests.potential.order(:id).pluck(:id).join)
end
end
attr_accessor :tables, :min_per_table, :max_per_table, :hierarchy
def initialize(min_per_table:, max_per_table:)
@min_per_table = min_per_table
@ -54,7 +60,10 @@ module Tables
Seat.insert_all!(records_to_store)
arrangement.update!(discomfort:)
arrangement.update!(
discomfort:,
guests_digest: self.class.digest(tables.first.first.wedding)
)
end
end