Added Items and Dashboard
This commit is contained in:
@@ -1,3 +1,5 @@
|
||||
require "rqrcode"
|
||||
|
||||
class Item < ApplicationRecord
|
||||
belongs_to :category
|
||||
belongs_to :user, optional: true # Optional, falls im Raum oder Lager
|
||||
@@ -13,6 +15,22 @@ class Item < ApplicationRecord
|
||||
# Überwacht Besitzer- oder Raumwechsel für die Historie
|
||||
before_save :track_assignment_changes, if: -> { will_save_change_to_user_id? || will_save_change_to_room_id? }
|
||||
|
||||
def generate_qr_code
|
||||
return if sticker_id.blank?
|
||||
|
||||
# Erzeugt das QR-Code-Objekt basierend auf deiner vorgedruckten Sticker-ID
|
||||
qrcode = RQRCode::QRCode.new(sticker_id.to_s)
|
||||
|
||||
# Rendert den QR-Code als SVG-Vektorgrafik (perfekt scharf für Bildschirme)
|
||||
qrcode.as_svg(
|
||||
color: "000", # Farbe: Schwarz
|
||||
shape_rendering: "crispEdges", # Erzwingt scharfe Kanten im Browser
|
||||
module_size: 4, # Kompakte Größe
|
||||
standalone: true,
|
||||
use_path: true
|
||||
).html_safe # Sagt Rails, dass das HTML unbedenklich ausgegeben werden darf
|
||||
end
|
||||
|
||||
private
|
||||
|
||||
def either_user_or_room
|
||||
|
||||
Reference in New Issue
Block a user