Add aasm_state to procedures
This commit is contained in:
parent
a8e7038ab5
commit
2b8ee92074
4 changed files with 18 additions and 4 deletions
|
@ -63,7 +63,7 @@ class Procedure < ApplicationRecord
|
||||||
|
|
||||||
def hide!
|
def hide!
|
||||||
now = DateTime.now
|
now = DateTime.now
|
||||||
self.update(hidden_at: now)
|
self.update(hidden_at: now, aasm_state: :hidden)
|
||||||
self.dossiers.update_all(hidden_at: now)
|
self.dossiers.update_all(hidden_at: now)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -154,7 +154,7 @@ class Procedure < ApplicationRecord
|
||||||
|
|
||||||
def publish!(path)
|
def publish!(path)
|
||||||
now = Time.now
|
now = Time.now
|
||||||
self.update!({ test_started_at: now, published_at: now, archived_at: nil })
|
self.update!({ test_started_at: now, published_at: now, archived_at: nil, aasm_state: :publiee })
|
||||||
ProcedurePath.create!(path: path, procedure: self, administrateur: self.administrateur)
|
ProcedurePath.create!(path: path, procedure: self, administrateur: self.administrateur)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -163,7 +163,7 @@ class Procedure < ApplicationRecord
|
||||||
end
|
end
|
||||||
|
|
||||||
def archive
|
def archive
|
||||||
self.update!(archived_at: Time.now)
|
self.update!(archived_at: Time.now, aasm_state: :archivee)
|
||||||
end
|
end
|
||||||
|
|
||||||
def archivee?
|
def archivee?
|
||||||
|
|
|
@ -0,0 +1,5 @@
|
||||||
|
class AddAasmStateToProcedures < ActiveRecord::Migration[5.2]
|
||||||
|
def change
|
||||||
|
add_column :procedures, :aasm_state, :string, index: true, default: :brouillon
|
||||||
|
end
|
||||||
|
end
|
|
@ -10,7 +10,7 @@
|
||||||
#
|
#
|
||||||
# It's strongly recommended that you check this file into your version control system.
|
# It's strongly recommended that you check this file into your version control system.
|
||||||
|
|
||||||
ActiveRecord::Schema.define(version: 2018_05_02_092852) do
|
ActiveRecord::Schema.define(version: 2018_05_15_135415) do
|
||||||
|
|
||||||
# These are extensions that must be enabled in order to support this database
|
# These are extensions that must be enabled in order to support this database
|
||||||
enable_extension "plpgsql"
|
enable_extension "plpgsql"
|
||||||
|
@ -465,6 +465,7 @@ ActiveRecord::Schema.define(version: 2018_05_02_092852) do
|
||||||
t.boolean "cloned_from_library", default: false
|
t.boolean "cloned_from_library", default: false
|
||||||
t.bigint "parent_procedure_id"
|
t.bigint "parent_procedure_id"
|
||||||
t.datetime "test_started_at"
|
t.datetime "test_started_at"
|
||||||
|
t.string "aasm_state", default: "brouillon"
|
||||||
t.index ["hidden_at"], name: "index_procedures_on_hidden_at"
|
t.index ["hidden_at"], name: "index_procedures_on_hidden_at"
|
||||||
t.index ["parent_procedure_id"], name: "index_procedures_on_parent_procedure_id"
|
t.index ["parent_procedure_id"], name: "index_procedures_on_parent_procedure_id"
|
||||||
end
|
end
|
||||||
|
|
8
lib/tasks/2018_05_15_add_aasm_state_to_procedure.rake
Normal file
8
lib/tasks/2018_05_15_add_aasm_state_to_procedure.rake
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
namespace :'2018_05_15_add_aasm_state_to_procedure' do
|
||||||
|
task set: :environment do
|
||||||
|
Procedure.archivees.update_all(aasm_state: :archivee)
|
||||||
|
Procedure.publiees.update_all(aasm_state: :publiee)
|
||||||
|
Procedure.brouillons.update_all(aasm_state: :brouillon)
|
||||||
|
Procedure.unscoped.where.not(hidden_at: nil).update_all(aasm_state: :hidden)
|
||||||
|
end
|
||||||
|
end
|
Loading…
Reference in a new issue