demarches-normaliennes/app/components/dossiers/batch_operation_component.rb

67 lines
1.4 KiB
Ruby
Raw Normal View History

class Dossiers::BatchOperationComponent < ApplicationComponent
attr_reader :statut, :procedure
def initialize(statut:, procedure:)
@statut = statut
@procedure = procedure
end
def render?
2023-01-04 11:51:22 +01:00
['a-suivre', 'traites', 'suivis'].include?(@statut)
end
def available_operations
case @statut
2023-01-04 11:51:22 +01:00
when 'a-suivre' then
{
options:
[
{
label: t(".operations.follow"),
operation: BatchOperation.operations.fetch(:follow)
}
]
}
when 'traites' then
{
options:
[
{
label: t(".operations.archiver"),
operation: BatchOperation.operations.fetch(:archiver)
}
]
}
when 'suivis' then
{
options:
[
{
label: t(".operations.passer_en_instruction"),
operation: BatchOperation.operations.fetch(:passer_en_instruction)
},
{
label: t(".operations.accepter"),
operation: BatchOperation.operations.fetch(:accepter)
}
]
}
else
{
options: []
}
end
end
2022-12-12 10:28:23 +01:00
def icons
{
2023-01-04 11:51:22 +01:00
accepter: 'fr-icon-success-line',
2022-12-12 10:28:23 +01:00
archiver: 'fr-icon-folder-2-line',
2023-01-04 11:51:22 +01:00
follow: 'fr-icon-star-line',
passer_en_instruction: 'fr-icon-edit-line'
2022-12-12 10:28:23 +01:00
}
end
end