summaryrefslogtreecommitdiff
path: root/app/services/boards/lists/create_service.rb
diff options
context:
space:
mode:
Diffstat (limited to 'app/services/boards/lists/create_service.rb')
-rw-r--r--app/services/boards/lists/create_service.rb11
1 files changed, 2 insertions, 9 deletions
diff --git a/app/services/boards/lists/create_service.rb b/app/services/boards/lists/create_service.rb
index 77c3c85df92..704e0254217 100644
--- a/app/services/boards/lists/create_service.rb
+++ b/app/services/boards/lists/create_service.rb
@@ -3,15 +3,13 @@ module Boards
class CreateService < Boards::BaseService
def execute
List.transaction do
- position = find_next_position
- increment_higher_lists(position)
- create_list_at(position)
+ create_list_at(next_position)
end
end
private
- def find_next_position
+ def next_position
max_position = board.lists.label.maximum(:position)
max_position.nil? ? 0 : max_position.succ
end
@@ -19,11 +17,6 @@ module Boards
def create_list_at(position)
board.lists.create(params.merge(list_type: :label, position: position))
end
-
- def increment_higher_lists(position)
- board.lists.label.where('position >= ?', position)
- .update_all('position = position + 1')
- end
end
end
end