Added has_many assoziations for creator and cashier to jobs, fixed all views according to that changes. Implemented allocation of roles infos when status changes in job model.
This commit is contained in:
44
db/seeds.rb
44
db/seeds.rb
@@ -15,8 +15,9 @@ User.create!(email: "david.boehm@hs-rm.de", firstname: "David", lastname: "Böhm
|
||||
User.create!(email: "maximilian.lasser@hs-rm.de", firstname: "Max", lastname: "Lasser", role: :admin, password_digest: BCrypt::Password.create("admin"), verified: true)
|
||||
|
||||
# Operators
|
||||
User.create!(email: "tutor.operator@hs-rm.de", firstname: "Tutor", lastname: "Operator", role: :operator, password_digest: BCrypt::Password.create("operator"), verified: true)
|
||||
User.create!(email: "tutor2.operator@hs-rm.de", firstname: "Tutor2", lastname: "Operator", role: :operator, password_digest: BCrypt::Password.create("operator"), verified: true)
|
||||
operators = []
|
||||
operators << User.create!(email: "tutor.operator@hs-rm.de", firstname: "Tutor", lastname: "Operator", role: :operator, password_digest: BCrypt::Password.create("operator"), verified: true)
|
||||
operators << User.create!(email: "tutor2.operator@hs-rm.de", firstname: "Tutor2", lastname: "Operator", role: :operator, password_digest: BCrypt::Password.create("operator"), verified: true)
|
||||
|
||||
# Students
|
||||
User.create!(email: "stud.student@student.hs-rm.de", firstname: "Student", lastname: "Student", password_digest: BCrypt::Password.create("stud"), verified: true)
|
||||
@@ -54,7 +55,7 @@ end
|
||||
# created_at = Faker::Time.between_dates(from: Date.today - 60, to: Date.today, period: :day)
|
||||
email="#{firstname}.#{lastname}@student.hs-rm.de".downcase.gsub('ö', 'oe').gsub('ä', 'ae').gsub('ü', 'ue').gsub('ß', 'ss')
|
||||
email.delete(" ")
|
||||
user=User.new(email: email, firstname: firstname, lastname: lastname, password_digest: BCrypt::Password.create("password"), verified: false, created_at: created_at).save!
|
||||
User.new(email: email, firstname: firstname, lastname: lastname, password_digest: BCrypt::Password.create("password"), verified: false, created_at: created_at).save!
|
||||
end
|
||||
|
||||
# Jobs paid (and some canceled) in the far past
|
||||
@@ -76,7 +77,12 @@ end
|
||||
end
|
||||
job = Job.new(status:, privacy_policy: true, created_at: created_at)
|
||||
job.pdf = File.open(Rails.root.join('db/pdfs/', pdf))
|
||||
job.costumer = students[rand(0...9)]
|
||||
student = students[rand(0..9)]
|
||||
job.costumer = student
|
||||
job.creator = student
|
||||
operator = operators[rand(0...1)]
|
||||
job.operator = operator if status != :open
|
||||
job.cashier = operator if status == :paid
|
||||
job.save!
|
||||
job.update_column :printed_at, printed_at # write with update_column to avoid before_save action
|
||||
job.update_column :status_changed_at, status_changed_at # write with update_column to avoid before_save action
|
||||
@@ -105,7 +111,12 @@ end
|
||||
end
|
||||
job = Job.new(status:, privacy_policy: true, created_at: created_at)
|
||||
job.pdf = File.open(Rails.root.join('db/pdfs/', pdf))
|
||||
job.costumer = students[rand(0...9)]
|
||||
student = students[rand(0...9)]
|
||||
job.costumer = student
|
||||
job.creator = student
|
||||
operator = operators[rand(0...1)]
|
||||
job.operator = operator if status == :paid
|
||||
job.cashier = operator if status == :paid
|
||||
job.save!
|
||||
job.update_column :printed_at, printed_at # write with update_column to avoid before_save action
|
||||
job.update_column :status_changed_at, status_changed_at # write with update_column to avoid before_save action
|
||||
@@ -125,7 +136,28 @@ end
|
||||
status = :open if i > 0
|
||||
job = Job.new(status:, privacy_policy: true)
|
||||
job.pdf = File.open(Rails.root.join('db/pdfs/', pdf))
|
||||
job.costumer = students[rand(0...4)]
|
||||
student = students[rand(0...4)]
|
||||
job.costumer = student
|
||||
job.creator = student
|
||||
operator = operators[rand(0...1)]
|
||||
job.operator = operator if status != :open
|
||||
job.cashier = operator if status == :paid
|
||||
job.save!
|
||||
end
|
||||
end
|
||||
|
||||
# Jobs created from operator
|
||||
[ 'GanzWichtig.pdf', 'IchBinIn5MinDran.pdf', 'DerPlanDerImmerProblemeMacht.pdf',
|
||||
'DieFarbenGefallenMirNicht.pdf', 'MachHinIchHabsEilig.pdf', 'WarumDauertDasSoLange.pdf',
|
||||
'DenPlanBezahleIchNicht.pdf', 'IchWarAlsErstesDran.pdf', 'WarumIstDerPlotterDefekt.pdf',
|
||||
'DasNächsteMalGeheIchWoAndersHin.pdf' ].shuffle.each do |pdf|
|
||||
job = Job.new(privacy_policy: true)
|
||||
job.pdf = File.open(Rails.root.join('db/pdfs/', pdf))
|
||||
job.costumer = students[rand(0...9)]
|
||||
job.costumer_firstname = job.costumer.firstname
|
||||
job.costumer_lastname = job.costumer.lastname
|
||||
job.creator = operators[rand(0...1)]
|
||||
job.created_by_operator = true
|
||||
job.inspect
|
||||
job.save!
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user