diff options
| -rw-r--r-- | app/controllers/workbenches_controller.rb | 15 | ||||
| -rw-r--r-- | app/views/workbenches/_form.html.slim | 9 | ||||
| -rw-r--r-- | app/views/workbenches/edit.html.slim | 8 | ||||
| -rw-r--r-- | config/routes.rb | 2 | ||||
| -rw-r--r-- | db/migrate/20180208174834_add_attributes_to_workbench.rb | 9 | ||||
| -rw-r--r-- | db/schema.rb | 17 |
6 files changed, 51 insertions, 9 deletions
diff --git a/app/controllers/workbenches_controller.rb b/app/controllers/workbenches_controller.rb index 2a71fe811..a7786bc8b 100644 --- a/app/controllers/workbenches_controller.rb +++ b/app/controllers/workbenches_controller.rb @@ -3,7 +3,10 @@ class WorkbenchesController < ChouetteController include RansackDateFilter before_action only: [:show] { set_date_time_params("validity_period", Date) } defaults resource_class: Workbench - respond_to :html, only: [:show, :index] + + include PolicyChecker + + respond_to :html def index redirect_to dashboard_path @@ -24,7 +27,10 @@ class WorkbenchesController < ChouetteController current_workbench_id: params[:id] } ) - show! + end + + def edit + edit! end def delete_referentials @@ -38,6 +44,11 @@ class WorkbenchesController < ChouetteController end private + + def workbench_params + params.require(:workbench).permit(:import_compliance_control_set_id, :merge_compliance_control_set_id) + end + def resource @workbench = current_organisation.workbenches.find params[:id] end diff --git a/app/views/workbenches/_form.html.slim b/app/views/workbenches/_form.html.slim new file mode 100644 index 000000000..5ee17dc17 --- /dev/null +++ b/app/views/workbenches/_form.html.slim @@ -0,0 +1,9 @@ += simple_form_for @workbench, html: { class: 'form-horizontal', id: 'workbench_form' }, wrapper: :horizontal_form do |f| + .row + .col-lg-12 + = f.input :import_compliance_control_set_id, as: :select, collection: ComplianceControlSet.where(organisation: current_organisation), value_method: lambda {|t| t.id} + = f.input :merge_compliance_control_set_id, as: :select, collection: ComplianceControlSet.where(organisation: current_organisation), value_method: lambda {|t| t.id} + + .separator + + = f.button :submit, t('actions.submit'), class: 'btn btn-default formSubmitr', form: 'workbench_form' diff --git a/app/views/workbenches/edit.html.slim b/app/views/workbenches/edit.html.slim new file mode 100644 index 000000000..893024490 --- /dev/null +++ b/app/views/workbenches/edit.html.slim @@ -0,0 +1,8 @@ +- breadcrumb @workbench +- page_header_content_for @workbench + +.page_content + .container-fluid + .row + .col-lg-8.col-lg-offset-2.col-md-8.col-md-offset-2.col-sm-10.col-sm-offset-1 + == render 'form' diff --git a/config/routes.rb b/config/routes.rb index 33608f3fe..a3a21511c 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -3,7 +3,7 @@ require 'sidekiq/web' ChouetteIhm::Application.routes.draw do resource :dashboard - resources :workbenches, only: [:show, :index] do + resources :workbenches, except: [:destroy] do delete :referentials, on: :member, action: :delete_referentials resources :imports do get :download, on: :member diff --git a/db/migrate/20180208174834_add_attributes_to_workbench.rb b/db/migrate/20180208174834_add_attributes_to_workbench.rb new file mode 100644 index 000000000..02002a772 --- /dev/null +++ b/db/migrate/20180208174834_add_attributes_to_workbench.rb @@ -0,0 +1,9 @@ +class AddAttributesToWorkbench < ActiveRecord::Migration + def change + add_column :workbenches, :import_compliance_control_set_id, :integer, limit: 8 + add_column :workbenches, :merge_compliance_control_set_id, :integer, limit: 8 + + add_index :workbenches, :import_compliance_control_set_id + add_index :workbenches, :merge_compliance_control_set_id + end +end diff --git a/db/schema.rb b/db/schema.rb index 045fc658d..927c80b15 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -90,6 +90,7 @@ ActiveRecord::Schema.define(version: 20180227151937) do t.integer "organisation_id", limit: 8 t.datetime "created_at" t.datetime "updated_at" + t.integer "workgroup_id", limit: 8 t.integer "int_day_types" t.date "excluded_dates", array: true t.integer "workgroup_id", limit: 8 @@ -421,9 +422,9 @@ ActiveRecord::Schema.define(version: 20180227151937) do t.string "type" t.integer "parent_id", limit: 8 t.string "parent_type" - t.datetime "notified_parent_at" t.integer "current_step", default: 0 t.integer "total_steps", default: 0 + t.datetime "notified_parent_at" t.string "creator" end @@ -1007,17 +1008,21 @@ ActiveRecord::Schema.define(version: 20180227151937) do create_table "workbenches", id: :bigserial, force: :cascade do |t| t.string "name" - t.integer "organisation_id", limit: 8 + t.integer "organisation_id", limit: 8 t.datetime "created_at" t.datetime "updated_at" - t.integer "line_referential_id", limit: 8 - t.integer "stop_area_referential_id", limit: 8 - t.integer "output_id", limit: 8 + t.integer "line_referential_id", limit: 8 + t.integer "stop_area_referential_id", limit: 8 + t.integer "output_id", limit: 8 t.string "objectid_format" - t.integer "workgroup_id", limit: 8 + t.integer "workgroup_id", limit: 8 + t.integer "import_compliance_control_set_id", limit: 8 + t.integer "merge_compliance_control_set_id", limit: 8 end + add_index "workbenches", ["import_compliance_control_set_id"], name: "index_workbenches_on_import_compliance_control_set_id", using: :btree add_index "workbenches", ["line_referential_id"], name: "index_workbenches_on_line_referential_id", using: :btree + add_index "workbenches", ["merge_compliance_control_set_id"], name: "index_workbenches_on_merge_compliance_control_set_id", using: :btree add_index "workbenches", ["organisation_id"], name: "index_workbenches_on_organisation_id", using: :btree add_index "workbenches", ["stop_area_referential_id"], name: "index_workbenches_on_stop_area_referential_id", using: :btree add_index "workbenches", ["workgroup_id"], name: "index_workbenches_on_workgroup_id", using: :btree |
