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