PUT /api/v1/locations/order
对指定区域下的位置进行重排序。客户端在拖拽后提交该区域内位置的新完整顺序,服务器据此重新分配连续的内部排序号(1..N);响应列表按新顺序返回,排序由数组位置体现。
请求体
{
"regionId": 7,
"orderedIds": [12, 9, 10]
}
| 字段 | 类型 | 必填 | 约束 | 说明 |
|---|---|---|---|---|
regionId |
number |
是 | — | 区域 ID,须属于当前用户 |
orderedIds |
number[] |
是 | 非空 | 新顺序下的位置 ID 列表,须为该区域全部(未删除)位置的完整排列 |
响应
{
"code": 200,
"message": "success",
"data": [
{ "id": 12, "name": "花架上层", "lightLevel": 3, "createdAt": 1747123456789 },
{ "id": 9, "name": "地面角落", "lightLevel": 1, "createdAt": 1747123456789 },
{ "id": 10, "name": "窗台", "lightLevel": 4, "createdAt": 1747123456789 }
],
"requestId": "...",
"timestamp": 1747123456789
}
返回该区域下的位置列表,结构与 按区域查询位置 一致,按新顺序排列。未设置光照强度的位置不会出现
lightLevel 字段。
说明
regionId。orderedIds 必须是该区域全部(未删除)位置的完整排列:缺失、多余、重复或混入其他区域位置 ID 均不允许。orderedIds/regionId 或 orderedIds 为空数组 → 400(1101 VALIDATION_FAILED)。regionId 不属于当前用户 → 404(4001 REGION_NOT_FOUND)。orderedIds 非完整排列(缺失、多余、重复或包含不属于该区域的位置 ID)→ 409(4204 LOCATION_REORDER_INVALID)。