1. 描述
修改床位信息。本接口是God可以访问的,God几乎可以修改Bed的所有属性。在未来,Bed的不重要属性可以被其它角色修改。
2. 调用场景
开发者登录超级控制台后,可以修改自己创建的床位。开发者以God角色修改床位。未来可能开放给专门的床位/设备运维。
3. 配置参数
参数意义参考接口参数
参数名 | 参数值 | 说明 |
---|---|---|
Name | Setbed | |
URL | https://api.xdua.com/bed | |
Method | PUT | |
XduaApiHttpSchema | HTTPS | 只走HTTPS |
XduaApiMethod | SET | |
XduaApiColor | X | 只有持有神床位,才可以创建床位 |
XduaApiAudience | ConsoleX | 只有bed_id为ConsoleX的床位,也就是consolex.xdua.com才可以发起本请求 |
XduaApiShop | XdUaXduA | 床位直辖店铺,只有这个店铺的登录人员才可以访问 |
XduaApiSubject | i | i,只有创建者自己才可以修改 |
XduaApiRoles | God | 只要登录就可以创建床位 |
XduaApiResource | bed | |
XduaApiKparam | id | |
XduaApiAction | UpdateBed | |
XduaApiRule | UpdateBed | |
XduaApiAstates | 0 | 按序bed,zone,corp,shop,bed,bed,login的状态都必须是0(STATE_ENABLED) |
XduaApiEnable | true | 接口使能 |
4. 请求参数
名称 | 位置 | 类型 | 必填 | 默认值 | 示例 | 说明 |
---|---|---|---|---|---|---|
id | path | String | 是 | 无 | 6tYu82hM | 床位ID |
type | body | String | 否 | 无 | Mats | 床位类型代码,本字段受bed_type表的code字段外键约束 |
man | body | String | 否 | 无 | Minew | 制造商代码,本字段受bed_man表的code字段外键约束 |
model | body | String | 否 | 无 | CBOX-7 | 制造商代码,从床位的包装盒,介绍中获取 |
name | body | String | 否 | 无 | 蓝牙网关 | 床位的平台系统名字,由录入者自定义 |
vlot | body | Integer | 否 | 无 | 3600 | 床位的日志存活时间 |
brief | body | String | 否 | 空 | 这是一个* | 床位的介绍 |
cost | body | Double | 是 | 空 | 45.0 | 床位的采购价格或者平摊下来的生产制造价格 |
earn | body | Double | 是 | 空 | 60.0 | 对外销售价格,包含设置人工成本 |
5. 返回参数
名称 | 位置 | 类型 | 示例 | 说明 |
---|---|---|---|---|
id | result | string | rYub4wrT | 修改的床位ID |
updates | result | json dict | 修改的内容 |
示例
result字段
{
"id":"rYub4wrT",
"updates":{
"name":"新的床位名",
"brief":"新的床位介绍",
}
}
6. 错误码
错误码来自于error字段,通用错误码参考地球号通用错误码
7. SDK调用
为了方便测试SetBed
接口。数据库专门提供了一个测试床位bed_id=TeStTeSt
。可以对这个床位的所有属性进行修改,而不用担心损坏数据库。
const XduaClient = require('lovearth-xdua-browser-sdk')
const xduaClient = await XduaClient({
LOGIN_TOKEN:"eyJhbGciOi...",//开发者在地球号开发者网站创建的登录令牌
})
/*----------------------------
* 运行如下代码
* 下面的代码是直接可以运行的
*--------------------------*/
api_name = "修改床位";
const bed_id ="TeStTeSt"; //要修改的床位ID
/*----------------------------
* 下面展示的是修改"TeStTeSt"所有属性的操作,实际上可以只修改其中任何一个到两个参数
*--------------------------*/
const set_params = {
type:"Test", //类别
model:"Motest3", //型号
vlot:360, //它在日志表里存6分钟数据
name:"测试床位", //名字
man:"xdua.com", //床位生产商
pkey:"a1lPKOTest2", //阿里云平台ProductKey,从那里拷贝过来
brief:"接口测试", //简介
earn:65, //价格
cost:45, //成本
}
const res_api = await xduaClient.setBed(bed_id,set_params)
if(res.error == 0){
console.log("测试成功");
}else{
console.log("测试失败");
console.log(res);
}
文档还没有实现
```
{% sample lang="php" -%}
文档还没有实现
```bash