如何通过 VersionOne 的 RESTful API 更改 Stories 的排名顺序?
1 回答
如果您进行数据查询
http://YourVersionOne/rest-1.v1/Data/Story?sel=Order,ID&sort=Order
,
您将按降序获得故事的自然创建顺序。
有两种操作:1)在某个故事之前插入,2)在某个故事之后插入。
给定
I)假设我正在检查按降序排序的故事列表。在这种情况下,使用“之前”一词意味着较小的订单号。
II) 假设一个片段的故事列表以 [...-(x+c),-x, x+c...] 的形式出现,其中不能保证此列表中的连续订单号。
III) 可能存在负订单号
IV)我将降序视为此解释的基础,“订单号越小越好”是任意的。升序参考系同样有效。
示例 1:在前面插入
我想在我的 Story:1234 之前插入我的 Story:9999。查询后发现
故事:9999 的订单为 454
故事:1234 的订单为 2048
这是我在 VersionOne 中通过 REST 执行此订单更改所需的内容
版本一网址:https://myVersionOne/rest-1.v1/Data/Story/1234
方法:POST
有效载荷:<Asset>
<Attribute name="Order" act="set">454+</Attribute>
</Asset>
最终结果是
Story:1234 有一个Order < Story:9999。
我没有给你每个确切的订单号的原因是因为我注意到了几件事
a) 该操作可能会强制 Story:1234 劫持原始 Order (454) 并将 Story:9999 撞到下一个可用插槽并撞上它的居民(固定数组场景中的 Ala 插入排序)
或者
b) 该操作可以为 Story1234 插入一个未使用的订单号,该订单号满足未使用订单号 < Story:9999.Order 的条件。这允许 Story:9999 保持相同的订单号。*注意:这些空槽来自删除。
示例 2:在之后插入
我想在我的 Story:1234 之后插入我的 Story:9999。在进行查询后,我发现
故事:9999 的订单为 454
故事:1234 的订单为 2048
这是我在 VersionOne 中通过 REST 执行此订单更改所需的内容
版本一网址:https://myVersionOne/rest-1.v1/Data/Story/1234
方法:POST
有效载荷:
<Asset>
<Attribute name="Order" act="set">454-</Attribute>
</Asset>
最终结果是
Story:9999 的订单为 454
Story:1234 的订单为 453
总之,OrderNum+ 在一些故事之前插入,而 OrderNum- 在一些故事之后追加。