mirror of
https://github.com/scinote-eln/scinote-web.git
synced 2024-09-20 14:45:56 +08:00
add transaction to move exp function
This commit is contained in:
parent
cc8a10edb0
commit
ebdeaf8b42
|
@ -297,28 +297,31 @@ class ExperimentsController < ApplicationController
|
|||
|
||||
# POST: move_experiment(id)
|
||||
def move
|
||||
move_responses = []
|
||||
move_response = nil
|
||||
|
||||
@experiments.each do |experiment|
|
||||
@experiment = experiment
|
||||
service = Experiments::MoveToProjectService
|
||||
.call(experiment_id: experiment.id,
|
||||
project_id: params[:project_id],
|
||||
user_id: current_user.id)
|
||||
if service.succeed?
|
||||
flash[:success] = t('experiments.move.success_flash', experiment: experiment.name)
|
||||
status = :ok
|
||||
view_state = experiment.current_view_state(current_user)
|
||||
view_type = view_state.state['my_modules']['view_type'] || 'canvas'
|
||||
path = view_mode_redirect_url(view_type)
|
||||
else
|
||||
message = "#{service.errors.values.join('. ')}."
|
||||
status = :unprocessable_entity
|
||||
ActiveRecord::Base.transaction do
|
||||
@experiments.each do |experiment|
|
||||
@experiment = experiment
|
||||
service = Experiments::MoveToProjectService
|
||||
.call(experiment_id: experiment.id,
|
||||
project_id: params[:project_id],
|
||||
user_id: current_user.id)
|
||||
if service.succeed?
|
||||
flash[:success] = t('experiments.move.success_flash', experiment: experiment.name)
|
||||
status = :ok
|
||||
view_state = experiment.current_view_state(current_user)
|
||||
view_type = view_state.state['my_modules']['view_type'] || 'canvas'
|
||||
path = view_mode_redirect_url(view_type)
|
||||
else
|
||||
message = "#{service.errors.values.join('. ')}."
|
||||
status = :unprocessable_entity
|
||||
end
|
||||
|
||||
move_response = { message: message, path: path, status: status }
|
||||
end
|
||||
|
||||
move_responses << {message: message, path: path, status: status }
|
||||
end
|
||||
render json: move_responses
|
||||
|
||||
render json: move_response
|
||||
end
|
||||
|
||||
def move_modules_modal
|
||||
|
|
Loading…
Reference in a new issue