From 231cdae3d9b6d5ebc71c6bc6789fc602de8af3ca Mon Sep 17 00:00:00 2001 From: lyollix Date: Wed, 9 Nov 2022 14:53:54 +0300 Subject: [PATCH] Update issues_controller_hooks.rb fix https://github.com/danmunn/redmine_dmsf/issues/1408 --- .../controllers/issues_controller_hooks.rb | 35 ++++++++++++++++++- 1 file changed, 34 insertions(+), 1 deletion(-) diff --git a/lib/redmine_dmsf/hooks/controllers/issues_controller_hooks.rb b/lib/redmine_dmsf/hooks/controllers/issues_controller_hooks.rb index 1a96363c..5d9b3132 100644 --- a/lib/redmine_dmsf/hooks/controllers/issues_controller_hooks.rb +++ b/lib/redmine_dmsf/hooks/controllers/issues_controller_hooks.rb @@ -121,6 +121,39 @@ module RedmineDmsf Rails.logger.error dmsf_link.errors.full_messages.to_sentence end end + issue.descendants.each do |i| + old_system_folder = i.system_folder(false, old_project_id) + + if old_system_folder + new_main_system_folder = i.main_system_folder(true) + + if new_main_system_folder + old_system_folder.dmsf_folder_id = new_main_system_folder.id + old_system_folder.project_id = project_id + + unless old_system_folder.save + controller.flash[:error] = old_system_folder.errors.full_messages.to_sentence + Rails.logger.error old_system_folder.errors.full_messages.to_sentence + end + + i.dmsf_files.each do |dmsf_file| + dmsf_file.project_id = project_id + unless dmsf_file.save + controller.flash[:error] = dmsf_file.errors.full_messages.to_sentence + Rails.logger.error dmsf_file.errors.full_messages.to_sentence + end + end + end + + i.dmsf_links.each do | dmsf_link| + dmsf_link.project_id = project_id + unless dmsf_link.save + controller.flash[:error] = dmsf_link.errors.full_messages.to_sentence + Rails.logger.error dmsf_link.errors.full_messages.to_sentence + end + end + end + end end end end @@ -186,4 +219,4 @@ module RedmineDmsf end end -end \ No newline at end of file +end