aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--app/controllers/compliance_check_sets_controller.rb8
-rw-r--r--app/decorators/compliance_check_set_decorator.rb17
-rw-r--r--app/helpers/compliance_check_sets_helper.rb14
-rw-r--r--app/views/compliance_check_sets/index.html.slim6
-rw-r--r--app/views/compliance_check_sets/show.html.slim55
-rw-r--r--config/locales/compliance_check_sets.en.yml5
-rw-r--r--config/locales/compliance_check_sets.fr.yml8
7 files changed, 110 insertions, 3 deletions
diff --git a/app/controllers/compliance_check_sets_controller.rb b/app/controllers/compliance_check_sets_controller.rb
index 175c22191..776275d52 100644
--- a/app/controllers/compliance_check_sets_controller.rb
+++ b/app/controllers/compliance_check_sets_controller.rb
@@ -19,6 +19,14 @@ class ComplianceCheckSetsController < InheritedResources::Base
end
end
+ def show
+ show! do
+ @compliance_check_set = @compliance_check_set.decorate(context: {
+ compliance_check_set: @compliance_check_set
+ })
+ end
+ end
+
def executed
show! do |format|
# But now nobody is aware anymore that `format.html` passes a parameter into the block
diff --git a/app/decorators/compliance_check_set_decorator.rb b/app/decorators/compliance_check_set_decorator.rb
index 5f3821cbe..096596b19 100644
--- a/app/decorators/compliance_check_set_decorator.rb
+++ b/app/decorators/compliance_check_set_decorator.rb
@@ -3,6 +3,23 @@ class ComplianceCheckSetDecorator < Draper::Decorator
def action_links
links = []
+
+ links << Link.new(
+ content: h.destroy_link_content,
+ href: h.workbench_compliance_check_sets_path(object.id),
+ method: :delete,
+ data: {confirm: h.t('imports.actions.destroy_confirm')}
+ )
+
+ links
+ end
+
+ def lines_status
+ object.compliance_check_resources.where(status: :OK, resource_type: :line).count
+ end
+
+ def lines_in_compliance_check_set
+ object.compliance_check_resources.where(resource_type: :line).count
end
end
diff --git a/app/helpers/compliance_check_sets_helper.rb b/app/helpers/compliance_check_sets_helper.rb
index fc7165fed..b255aee63 100644
--- a/app/helpers/compliance_check_sets_helper.rb
+++ b/app/helpers/compliance_check_sets_helper.rb
@@ -13,4 +13,18 @@ module ComplianceCheckSetsHelper
compliance_check.compliance_check_set,
compliance_check)
end
+
+ # Import statuses helper
+ def compliance_check_set_status(status)
+ if %w[new running pending].include? status
+ content_tag :span, '', class: "fa fa-clock-o"
+ else
+ cls =''
+ cls = 'success' if status == 'OK'
+ cls = 'warning' if status == 'WARNING'
+ cls = 'danger' if %w[ERROR IGNORED].include? status
+
+ content_tag :span, '', class: "fa fa-circle text-#{cls}"
+ end
+ end
end
diff --git a/app/views/compliance_check_sets/index.html.slim b/app/views/compliance_check_sets/index.html.slim
index 4ca5a2ee7..194749104 100644
--- a/app/views/compliance_check_sets/index.html.slim
+++ b/app/views/compliance_check_sets/index.html.slim
@@ -22,7 +22,7 @@
[ \
TableBuilderHelper::Column.new( \
key: :ref, \
- attribute: 'referential_id' \
+ attribute: 'compliance_check_set_id' \
), \
TableBuilderHelper::Column.new( \
key: :creation_date, \
@@ -31,8 +31,8 @@
TableBuilderHelper::Column.new( \
key: :associated_object, \
attribute: Proc.new{|n| n.referential.name}, \
- link_to: lambda do |referential| \
- referential_path(referential, current_workbench_id: params[:id]) \
+ link_to: lambda do |compliance_check_set| \
+ referential_path(compliance_check_set.referential_id) \
end \
), \
TableBuilderHelper::Column.new( \
diff --git a/app/views/compliance_check_sets/show.html.slim b/app/views/compliance_check_sets/show.html.slim
new file mode 100644
index 000000000..659413b28
--- /dev/null
+++ b/app/views/compliance_check_sets/show.html.slim
@@ -0,0 +1,55 @@
+- breadcrumb :compliance_check_sets, @workbench, @compliance_check_set
+/ PageHeader
+= pageheader 'jeux-de-donnees',
+ @compliance_check_set.name,
+ '',
+ t('last_update', time: l(@compliance_check_set.updated_at, format: :short)) do
+
+ / Below is secundary actions & optional contents (filters, ...)
+ .row
+ .col-lg-12.text-right.mb-sm
+ - @compliance_check_set.action_links.each do |link|
+ = link_to link.href,
+ method: link.method,
+ data: link.data,
+ class: 'btn btn-primary' do
+ = link.content
+
+/ PageContent
+.page_content.import_messages
+ .container-fluid
+ .row
+ .col-lg-12
+ h1
+ span.status_icon = compliance_check_set_status(@compliance_check_set.status)
+ span = t('compliance_check_sets.show.table_state', lines_status: @compliance_check_set.lines_status , lines_in_compliance_check_set: @compliance_check_set.lines_in_compliance_check_set )
+ .col-lg-12
+ = t('compliance_check_sets.show.table_explanation')
+ .row
+ .col-lg-12
+ = table_builder_2 @compliance_check_set.compliance_check_resources,
+ [ \
+ TableBuilderHelper::Column.new( \
+ key: :name, \
+ attribute: 'name', \
+ sortable: false, \
+ #link_to: lambda do |compliance_check_set| \
+ # compliance_check_set_path(compliance_check_set.referential) if compliance_check_set.referential.present? \
+ #end \
+ ), \
+ TableBuilderHelper::Column.new( \
+ key: :status, \
+ attribute: Proc.new { |n| compliance_check_set_status(n.status) }, \
+ sortable: false, \
+ #link_to: lambda do |compliance_check_set| \
+ # workbench_compliance_check_set_path(compliance_check_set.compliance_control_set_id, compliance_check_set) \
+ #end \
+ ), \
+ TableBuilderHelper::Column.new( \
+ key: :metrics, \
+ attribute: 'metrics', \
+ sortable: false, \
+ ) \
+ ],
+ links: [],
+ cls: 'table'
diff --git a/config/locales/compliance_check_sets.en.yml b/config/locales/compliance_check_sets.en.yml
index 5aa6f9740..126950693 100644
--- a/config/locales/compliance_check_sets.en.yml
+++ b/config/locales/compliance_check_sets.en.yml
@@ -26,6 +26,11 @@ en:
assigned_to: Assigned to
compliance_control_set: Compliance control set
name: Name
+ compliance_check_resources:
+ name: Name of the line
+ status: Status
+ metrics: Test results
+ download: Download
models:
compliance_check_block:
one: compliance_control_set
diff --git a/config/locales/compliance_check_sets.fr.yml b/config/locales/compliance_check_sets.fr.yml
index 8ad5af904..90092288a 100644
--- a/config/locales/compliance_check_sets.fr.yml
+++ b/config/locales/compliance_check_sets.fr.yml
@@ -13,6 +13,9 @@ fr:
search_no_results: Aucun rapport de contrôle ne correspond à votre recherche
executed:
title: Jeu de contrôles exécutés %{name}
+ show:
+ table_state: "%{lines_status} lignes importées sur %{lines_in_compliance_check_set} présentes dans l'archive"
+ table_explanation: Ces contrôles s’appliquent pour toutes les données importées et conditionnent la construction de l’offre de votre organisation
activerecord:
attributes:
compliance_check_set:
@@ -22,6 +25,11 @@ fr:
assigned_to: Affectation
compliance_control_set: jeu de contrôle
name: Nom
+ compliance_check_resource:
+ name: Nom de la ligne
+ status: État
+ metrics: Résultat des tests
+ download: Télécharger
models:
compliance_check_block:
zero: "Groupe de contrôle"