Add task protocol activities for gene sequence asset actions [SCI-8965] (#6013)

This commit is contained in:
wandji 2023-08-22 13:24:43 +01:00 committed by GitHub
parent 29cddf5ef7
commit 196b6628ae
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 41 additions and 2 deletions

View file

@ -20,16 +20,25 @@ class GeneSequenceAssetsController < ApplicationController
def edit
@file_url = rails_representation_url(@asset.file)
@file_name = @asset.render_file_name
@ove_enabled = OpenVectorEditorService.enabled?
log_activity(:protocol_sequence_asset_edit_started)
render :edit, layout: false
end
def create
save_asset!
log_activity(:protocol_sequence_asset_added)
head :ok
end
def update
save_asset!
log_activity(:protocol_sequence_asset_edit_finished)
head :ok
end
def destroy
log_activity(:protocol_sequence_asset_deleted)
head :ok
end
@ -133,4 +142,26 @@ class GeneSequenceAssetsController < ApplicationController
false
end
end
def log_activity(type_of, message_items = {})
return unless @parent.is_a?(Step)
my_module = @parent.my_module
default_items = {
protocol: @protocol.id,
my_module: my_module&.id,
step: @parent.id,
asset_name: { id: @asset.id, value_for: 'file_name' },
step_position: { id: @parent.id, value_for: 'position_plus_one' }
}
message_items = default_items.merge(message_items)
Activities::CreateActivityService
.call(activity_type: type_of,
owner: current_user,
team: @protocol.team,
project: my_module&.project,
subject: @protocol,
message_items: message_items)
end
end

View file

@ -448,7 +448,11 @@ class Extends
team_sharing_tasks_disabled: 245,
task_link_sharing_enabled: 246,
task_link_sharing_disabled: 247,
shared_task_message_edited: 248
shared_task_message_edited: 248,
protocol_sequence_asset_added: 249,
protocol_sequence_asset_edit_started: 250,
protocol_sequence_asset_edit_finished: 251,
protocol_sequence_asset_deleted: 252
}
ACTIVITY_GROUPS = {
@ -457,7 +461,7 @@ class Extends
task: [8, 58, 9, 59, *10..14, 35, 36, 37, 53, 54, *60..63, 138, 139, 140, 64, 66, 106, 126, 120, 132,
*146..148, 166, 246, 247, 248],
task_protocol: [15, 22, 16, 18, 19, 20, 21, 17, 38, 39, 100, 111, 45, 46, 47, 121, 124, 115, 118, 127, 130, 137,
217, 168, 171, 177, 184, 185, 188, 189, *192..203, 222, 224, 225, 226, 236],
217, 168, 171, 177, 184, 185, 188, 189, *192..203, 222, 224, 225, 226, 236, *249..252],
task_inventory: [55, 56, 146, 147, 183],
experiment: [*27..31, 57, 141, 165],
reports: [48, 50, 49, 163, 164],

View file

@ -273,6 +273,10 @@ en:
task_link_sharing_enabled_html: "%{user} enabled link sharing for task %{my_module}."
task_link_sharing_disabled_html: "%{user} disabled link sharing for task %{my_module}."
shared_task_message_edited_html: "%{user} edited message for shared task %{my_module}."
protocol_sequence_asset_added_html: "%{user} created sequence <strong>%{asset_name}</strong> on protocols step <strong>%{step_position}</strong> <strong>%{step}</strong> on task <strong>%{my_module}</strong>."
protocol_sequence_asset_edit_started_html: "%{user} edited sequence <strong>%{asset_name}</strong> on protocols step <strong>%{step_position}</strong> <strong>%{step}</strong> on task <strong>%{my_module}</strong>: editing started."
protocol_sequence_asset_edit_finished_html: "%{user} edited sequence <strong>%{asset_name}</strong> on protocols step <strong>%{step_position}</strong> <strong>%{step}</strong> on task <strong>%{my_module}</strong>: editing finished."
protocol_sequence_asset_deleted_html: "%{user} deleted sequence <strong>%{asset_name}</strong> on protocols step <strong>%{step_position}</strong> <strong>%{step}</strong> on task <strong>%{my_module}</strong>."
activity_name:
create_project: "Project created"
rename_project: "Project renamed"