このコミットが含まれているのは:
2026-11-03 15:17:10 +09:00
コミット 971b2632b0
7個のファイルの変更、37行の追加、20行の削除
+8 -5
ファイルの表示
@@ -1,20 +1,23 @@
class MaterialVersionRecorder < VersionRecorder
EVENT_TYPES = ['create', 'update', 'discard', 'restore'].freeze
def self.record! material:, event_type:, created_by_user:, file_snapshot: nil
new(material:, event_type:, created_by_user:, file_snapshot:).record!
def self.record! material:, event_type:, event:, created_by_user:, file_snapshot: nil
new(material:, event_type:, event:, created_by_user:, file_snapshot:).record!
end
def initialize material:, event_type:, created_by_user:, file_snapshot: nil
def initialize material:, event_type:, event:, created_by_user:, file_snapshot: nil
@file_snapshot = file_snapshot
super(record: material, event_type:, created_by_user:)
super(record: material, event_type:, event:, created_by_user:)
end
def self.ensure_snapshot! material, created_by_user:
return if material.material_versions.exists?
record!(material:, event_type: :create,
event = Event.create!(event_type: 'materials.create',
created_by_user:,
created_at: material.created_at)
record!(material:, event_type: :create, event:,
created_by_user: material.created_by_user || created_by_user)
end