Remove useless increment when creating a new board list

parent 847ebce9
...@@ -3,15 +3,13 @@ module Boards ...@@ -3,15 +3,13 @@ module Boards
class CreateService < Boards::BaseService class CreateService < Boards::BaseService
def execute def execute
List.transaction do List.transaction do
position = find_next_position create_list_at(next_position)
increment_higher_lists(position)
create_list_at(position)
end end
end end
private private
def find_next_position def next_position
max_position = board.lists.label.maximum(:position) max_position = board.lists.label.maximum(:position)
max_position.nil? ? 0 : max_position.succ max_position.nil? ? 0 : max_position.succ
end end
...@@ -19,11 +17,6 @@ module Boards ...@@ -19,11 +17,6 @@ module Boards
def create_list_at(position) def create_list_at(position)
board.lists.create(params.merge(list_type: :label, position: position)) board.lists.create(params.merge(list_type: :label, position: position))
end end
def increment_higher_lists(position)
board.lists.label.where('position >= ?', position)
.update_all('position = position + 1')
end
end end
end end
end end
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment