Как переставить карточки и списки типа Trello? - PullRequest
0 голосов
/ 28 марта 2020

Я пытаюсь создать перестановку карт, списков, подобных Trello.

Я читал о том, как это происходит здесь Как Trello обрабатывает перестановку карт, списков, контрольных списков и т. Д. c и здесь Что на самом деле означает POS в API Trello

Каждая позиция начинается со значения 65 535 и создает новую карту или список с последней позицией + 65 535, например:

Список карт

{ "_id" : ObjectId("5e7ea117e13673ec0db43104"), "name" : "A", "position" : 65.535 }
{ "_id" : ObjectId("5e7ea117e13673ec0db43105"), "name" : "B", "position" : 131.071 }
{ "_id" : ObjectId("5e7ea117e13673ec0db43106"), "name" : "C", "position" : 196.607 }
{ "_id" : ObjectId("5e7ea117e13673ec0db43107"), "name" : "D", "position" : 262.143 }
{ "_id" : ObjectId("5e7ea117e13673ec0db43108"), "name" : "E", "position" : 327.679 }

Если карта E вставлена ​​вверху карты A, она будет разделена на 2 (65 535/2 = 32 767)

Если карта A вставлена ​​в нижней части карты E, она в сумме составит 65 535 (327 679 + 65 535 = 393 214)

Посередине среднее положение двух соседних позиций.

Проблема в том, как я могу изменить любую позицию на предпоследнюю позицию? между D и E? Или между А и В?

Если карта A вставлена ​​между картами D и E, или Вставить карту E между A и B, что такое логика c для этого?

Есть ли лучший способ сделать это?

...