1. 应用参数
1.1. 资源说明
1.1.1. 应用参数定义
参数是作用在整个应用内的一个可配置变量,可以使用在应用内任何可以设置常量的地方如:高级表达式、数据集过滤条件、customSQL、图表过滤器、行权限等。
应用参数结构说明
字段 | 类型 | 描述 |
---|---|---|
id | BIGINT | 应用参数id |
appId | LONG | 应用id |
name | STRING | 应用参数名称 |
options | OBJECT | 应用参数配置信息 |
options.type | STRING | 应用参数数据类型,支持:number、string、time |
options.maxValue | OBJECT | 应用参数最大值 |
options.minValue | OBJECT | 应用参数最小值 |
options.valueSet | ARRAY | 应用参数指定值列表,JSONObject格式,有效key为"value","display",例:"valueSet":[{value: 0, display : "男性"}, {value:1}, {value:2, display:"未知"}] |
options.intervalNum | LONG | 应用参数值间隔数 |
options.period | STRING | 应用参数时间间隔单位,可选值:YEAR,QUARTER,MONTH,WEEK,DAY,HOUR,MINUTE,SECOND |
options.isSingleElection | BOOL | 应用参数值是否单选 |
options.allowAllValue | BOOL | 应用参数是否允许任意值 |
options.defaultValue | OBJECT | 应用参数默认值 |
updatedAt | DATETIME | 应用参数最后更新时间 |
updatedBy | DATETIME | 应用参数最后修改者的userId |
createdAt | DATETIME | 应用参数创建时间 |
updatedBy | DATETIME | 应用参数最后修改者的userId |
1.2. 接口说明
1.2.1. 1、创建应用参数
- 创建者需要拥有
数据管理员
或数据分析员
角色 且 需要为应用的创建者 或 拥有应用或应用所在目录的编辑者
权限请求URL
需要认证:是POST /api/v1/apps/{appId}/params
请求参数
Request Body 参数
字段 | 类型 | 是否必须 | 说明 |
---|---|---|---|
name | STRING | 是 | 应用参数名称 |
options.type | STRING | 是 | 应用参数类型 |
options.intervalNum | LONG | 否 | 应用参数间隔数 |
options.maxValue | OBJECT | 否 | 应用参数最大值 |
options.minValue | OBJECT | 否 | 应用参数最小值 |
options.period | STRING | 否 | 应用参数时间间隔单位 |
options.defaultValue | OBJECT | 否 | 应用参数默认值 |
options.isSingleElection | BOOL | 否 | 应用参数值是否单选 |
options.allowAllValue | BOOL | 否 | 应用参数是否允许任意值 |
options.valueSet | ARRAY | 否 | 应用参数指定值列表 |
返回对象的格式说明
字段 | 类型 | 说明 |
---|---|---|
version | STRING | 当前系统版本哈希值 |
data | OBJECT | 每种应用参数的共同结构见应用参数结构说明。 |
接口示例1: 创建应用参数
POST /api/v1/apps/{appId}/params
{
"name": "test3",
"options": {
"type": "time",
"defaultValue": "2020-01-01 19:30:00",
"maxValue": "2020-01-25 13:30:00",
"minValue": "2019-12-25 00:00:00",
"intervalNum": 5,
"period": "DAY",
"isSingleElection": false,
"allowAllValue": false
}
}
返回:
{
"version": "3.1-SNAPSHOT@@git.commit.id.abbrev@#null",
"code": 0,
"msg": "success",
"data": {
"id": 1,
"name": "test3",
"options": {
"type": "time",
"defaultValue": "2020-01-01 19:30:00",
"maxValue": "2020-01-25 13:30:00",
"minValue": "2019-12-25 00:00:00",
"intervalNum": 5,
"period": "DAY",
"isSingleElection": false,
"allowAllValue": false
}
}
}
接口示例2: 创建应用参数(列表)
POST /api/v1/apps/{appId}/params
{
"name": "setTest",
"options": {
"type": "string",
"defaultValue": "test",
"valueSet":[{"value":"test1","display":"t1"},{"value":"test2"},{"value":"test3","display":"t3"}]
}
}
返回:
{
"version": "3.1-SNAPSHOT@@git.commit.id.abbrev@#null",
"code": 0,
"msg": "success",
"data": {
"id": 1,
"name": "setTest",
"options": {
"type": "string",
"defaultValue": "test",
"valueSet":[{"value":"test1","display":"t1"},{"value":"test2"},{"value":"test3","display":"t3"}]
}
}
}
1.2.2. 2、修改应用参数
- 创建者需要拥有
数据管理员
或数据分析员
角色 且 需要为应用的创建者 或 拥有应用或应用所在目录的编辑者
权限请求URL
需要认证:是PUT /api/v1/apps/{appId}/params/{paramId}
请求参数
Request Body 参数
字段 | 类型 | 是否必须 | 说明 |
---|---|---|---|
name | STRING | 是 | 应用参数名称 |
options.type | STRING | 是 | 应用参数类型 |
options.intervalNum | LONG | 否 | 应用参数间隔数 |
options.maxValue | OBJECT | 否 | 应用参数最大值 |
options.minValue | OBJECT | 否 | 应用参数最小值 |
options.period | STRING | 否 | 应用参数时间间隔单位 |
options.defaultValue | OBJECT | 否 | 应用参数默认值 |
options.isSingleElection | BOOL | 否 | 应用参数值是否单选 |
options.allowAllValue | BOOL | 否 | 应用参数是否允许任意值 |
options.valueSet | ARRAY | 否 | 应用参数指定值列表 |
返回对象的格式说明
字段 | 类型 | 说明 |
---|---|---|
version | STRING | 当前系统版本哈希值 |
data | OBJECT | 每种应用参数的共同结构见应用参数结构说明。 |
接口示例1: 修改应用参数
PUT /api/v1/apps/{appId}/params/{paramId}
{
"name": "test3",
"options": {
"type": "number",
"defaultValue": 5,
"maxValue": 10,
"minValue": 1,
"intervalNum": 1
}
}
返回:
{
"version": "3.1-SNAPSHOT@@git.commit.id.abbrev@#null",
"code": 0,
"msg": "success",
"data": {
"id": 1,
"name": "test3",
"options": {
"type": "number",
"defaultValue": 5,
"maxValue": 10,
"minValue": 1,
"intervalNum": 1
}
}
}
1.2.3. 3、删除应用参数
- 创建者需要拥有
数据管理员
或数据分析员
角色 且 需要为应用的创建者 或 拥有应用或应用所在目录的编辑者
权限请求URL
需要认证:是DELETE /api/v1/apps/{appId}/params/{paramId}
请求参数
无返回对象的格式说明
字段 | 类型 | 说明 |
---|---|---|
version | STRING | 当前系统版本哈希值 |
data | OBJECT | 每种应用的共同结构见应用参数结构说明。 |
接口示例1: 删除应用参数
DELETE /api/v1/apps/{appId}/params/{paramId}
返回:
{
"version": "3.1-SNAPSHOT@@git.commit.id.abbrev@#null",
"code": 0,
"msg": "success"
}
1.2.4. 4、根据id获取应用参数
- 创建者需要拥有
数据管理员
或数据分析员
角色 且 需要为应用的创建者 或 拥有应用或应用所在目录的查看者
权限请求URL
需要认证:是GET /api/v1/apps/{appId}/params/{paramId}
请求参数
无返回对象的格式说明
字段 | 类型 | 说明 |
---|---|---|
version | STRING | 当前系统版本哈希值 |
data | OBJECT | 每种应用参数的共同结构见应用参数结构说明。 |
接口示例1: 根据id获取应用参数
GET /api/v1/apps/{appId}/params/{paramId}
返回:
{
"version": "3.1-SNAPSHOT@@git.commit.id.abbrev@#null",
"code": 0,
"msg": "success",
"data": {
"id": 1,
"name": "test3",
"options": {
"type": "time",
"defaultValue": "2020-01-01 19:30:00",
"maxValue": "2020-01-25 13:30:00",
"minValue": "2019-12-25 00:00:00",
"intervalNum": 5,
"period": "DAY",
"isSingleElection": false,
"allowAllValue": false
}
}
}
1.2.5. 5、获取应用参数列表
- 创建者需要拥有
数据管理员
或数据分析员
角色 且 需要为应用的创建者 或 拥有应用或应用所在目录的查看者
权限请求URL
需要认证:是GET /api/v1/apps/{appId}/params
请求参数
无返回对象的格式说明
字段 | 类型 | 说明 |
---|---|---|
version | STRING | 当前系统版本哈希值 |
data | OBJECT | 每种应用参数的共同结构见应用参数结构说明。 |
接口示例1: 获取应用参数列表
GET /api/v1/apps/{appId}/params
返回:
{
"version": "3.1-SNAPSHOT@@git.commit.id.abbrev@#null",
"code": 0,
"msg": "success",
"data": [
{
"id": 1,
"name": "test3",
"options": {
"type": "time",
"defaultValue": "2020-01-01 19:30:00",
"maxValue": "2020-01-25 13:30:00",
"minValue": "2019-12-25 00:00:00",
"intervalNum": 5,
"period": "DAY",
"isSingleElection": false,
"allowAllValue": false
}
},
{
"id": 1,
"name": "test3",
"options": {
"type": "number",
"defaultValue": 5,
"maxValue": 10,
"minValue": 1,
"intervalNum": 1
}
}
]
}
1.2.6. 6、根据查询条件获取应用参数列表
- 创建者需要拥有
数据管理员
或数据分析员
角色 且 需要为应用的创建者 或 拥有应用或应用所在目录的查看者
权限请求URL
需要认证:是POST /api/v1/apps/{appId}/params/query
请求参数
Request Body 参数
字段 | 类型 | 是否必须 | 说明 |
---|---|---|---|
name | STRING | 是 | 应用参数名称 |
options.type | STRING | 是 | 应用参数类型 |
options.intervalNum | LONG | 否 | 应用参数间隔数 |
options.maxValue | OBJECT | 否 | 应用参数最大值 |
options.minValue | OBJECT | 否 | 应用参数最小值 |
options.period | STRING | 否 | 应用参数时间间隔单位 |
options.defaultValue | OBJECT | 否 | 应用参数默认值 |
options.isSingleElection | BOOL | 否 | 应用参数值是否单选 |
options.allowAllValue | BOOL | 否 | 应用参数是否允许任意值 |
options.valueSet | ARRAY | 否 | 应用参数指定值列表 |
返回对象的格式说明
字段 | 类型 | 说明 |
---|---|---|
version | STRING | 当前系统版本哈希值 |
data | OBJECT | 每种应用参数的共同结构见应用参数结构说明。 |
接口示例1: 根据查询条件获取应用参数列表
POST /api/v1/apps/{appId}/params/query
{
"name": "test3"
}
返回:
{
"version": "3.1-SNAPSHOT@@git.commit.id.abbrev@#null",
"code": 0,
"msg": "success",
"data": [
{
"id": 1,
"name": "test3",
"options": {
"type": "time",
"defaultValue": "2020-01-01 19:30:00",
"maxValue": "2020-01-25 13:30:00",
"minValue": "2019-12-25 00:00:00",
"intervalNum": 5,
"period": "DAY",
"isSingleElection": false,
"allowAllValue": false
}
}
]
}