历史服务接口

版本记录

版本号日期修改内容
v0.14.22024-08-30修复已知问题

历史服务

1、多测点历史原始值查询 :id=one

请求方法

POST /v1/history/findAll

请求参数

参数名称参数类型是否必须描述
reqHistoryOriginalReq测点历史数据查询请求
endTimestring结束时间(格式:yyyy-MM-dd HH:mm:ss 或毫秒值字符串)
namespacestring点域
pageablePageReq分页信息
pageinteger当前页
pageSizeinteger每页数量
startTimestring开始时间(格式:yyyy-MM-dd HH:mm:ss 或毫秒值字符串)不能为空
nodeIdsarray测点项(格式:数据库单元+’:’ +模型+’.’+测点+’.’+点项)
Authorizationstring令牌

响应参数

参数名称参数类型参数说明
dataarray响应数据
dataarray测点数据
qinteger质量位
tinteger时间戳
vobject
nodeIdstring点项
totalinteger(int64)总数量
messagestring响应消息
codeinteger(int32)响应码,0 成功,其他失败
timestampinteger(int64)响应时间戳

异常处理

异常代码异常描述
-1参数错误

请求示例

POST/v1/history/findAll

{
    "startTime": "2023-03-14 13:40:30",
    "endTime": "2023-03-14 15:15:30",
    "nodeIds": [
        "100:EQ_001.AI_002.PV"
    ],
    "pageable":{
        "page":1,
        "pagesize":500
    }
}

响应示例

{
	"data": [
		{
			"data": [
				{
					"q": 0,
					"t": 0,
					"v": {}
				}
			],
			"nodeId": "",
			"total": 0
		}
	],
	"message": "",
	"code": 0,
	"timestamp": 0
}

2、测点多点项聚合查询 :id=two

请求方法

POST /v1/history/findAggregate

请求参数

参数名称参数类型是否必须参数说明
reqHistoryAggregateReq测点历史汇聚查询请求
endTimestring结束时间(格式:yyyy-MM-dd HH:mm:ss 或毫秒值字符串)
funcstring汇聚函数,可用值:min,max,avg,sum,count,stddev,increment,decrement
nodeIdsarray测点项(格式:数据库单元+’:’ +模型+’.’+测点+’.’+点项)
startTimestring开始时间(格式:yyyy-MM-dd HH:mm:ss 或毫秒值字符串)不能为空
Authorizationstring查询过滤器令牌

响应参数

参数名称参数类型描述
codeint响应码,0 成功,其他失败
messagestring返回信息描述
dataobject
timestampint响应时间戳

异常处理

异常代码异常描述
-1参数错误

请求示例

POST /v1/history/findAggregate

{
    "startTime": "2023-04-03 15:22:30",
    "endTime": "2023-04-03 15:27:30",
    "func": "decrement",
    "nodeIds": [
        "100:model0.AI_TAG0.AV","100:model0.AI_TAG1.AV"
    ]
}

响应示例

{
  "code": 0,
  "message": "操作成功",
  "data": {
    "100:model0.AI_TAG0.AV": 1.24937445,
    "100:model0.AI_TAG1.AV": 1.24937445
  },
  "timestamp": 1680831764398
}

3、历史趋势数据查询 :id=three

请求方法

POST /v1/history/findAllSection

请求参数

参数名称参数类型是否必须参数说明
reqHistoryRangeSectionReq测点历史数据查询请求
complementFuncinteger(int32)曲线拟合方法(现支持:0 表示原始值算法 1 表示多项式算法,2 表示贝塞尔曲线算法)—目前只支持原始值
endTimestring结束时间(格式:yyyy-MM-dd HH:mm:ss 或毫秒值字符串)
includeBoundsboolean是否包含时间开始和结束的时间点
intervalinteger(int64)分段间隔(单位:毫秒)
nodeIdsarray测点项(格式:数据库单元+’:’ +模型+’.’+测点+’.’+点项)
startTimestring开始时间(格式:yyyy-MM-dd HH:mm:ss 或毫秒值字符串)不能为空
Authorizationstring令牌

响应参数

参数名称参数类型描述
codeinteger(int32)响应码,0 成功,其他失败
messagestring响应消息
dataarray响应数据
dataarray测点数据
qinteger质量位
tinteger时间戳
vobject
nodeIdstring点项
totalinteger(int64)总数量
timestampinteger(int64)响应时间戳

异常处理

异常代码异常描述
-1参数错误

请求示例

POST/v1/history/findAllSection

 {
    "complementFunc": 0,
    "startTime": "2023-04-03 15:22:30",
    "endTime": "2023-04-03 15:27:30",
    "includeBounds": true,
    "interval": 3000,
    "nodeIds": [
        "100:model0.AI_TAG0.AV","100:model0.AI_TAG1.AV"
    ]
}

响应示例

{
	"code": 0,
	"message": "",
	"data": [
		{
			"data": [
				{
					"q": 0,
					"st": 0,
					"t": 0,
					"v": {}
				}
			],
			"nodeId": "",
			"total": 0
		}
	],
	"timestamp": 0
}

4、指定时间范围内的历史回放数据查询 :id=four

请求方法

POST /v1/history/findDataBySection

请求参数

参数名称参数类型是否必须参数说明
reqHistoryRangeSectionReq测点历史数据查询请求
complementFuncinteger(int32)曲线拟合方法(现支持:0 表示原始值算法 1 表示多项式算法,2 表示贝塞尔曲线算法)—目前只支持原始值
endTimestring结束时间(格式:yyyy-MM-dd HH:mm:ss 或毫秒值字符串)
includeBoundsboolean是否包含时间开始和结束的时间点
intervalinteger(int64)分段间隔(单位:毫秒)
nodeIdsarray测点项(格式:数据库单元+’:’ +模型+’.’+测点+’.’+点项)
startTimestring开始时间(格式:yyyy-MM-dd HH:mm:ss 或毫秒值字符串)不能为空
Authorizationstring令牌

响应参数

参数名称参数类型描述
codeinteger(int32)响应码,0 成功,其他失败
messagestring响应消息
dataarray响应数据
dataarray测点数据
qinteger质量位
tinteger时间戳
vobject
nodeIdstring点项
totalinteger(int64)总数量
timestampinteger(int64)响应时间戳

异常处理

异常代码异常描述
-1参数错误

请求示例

POST/v1/history/findDataBySection

{
    "complementFunc": 0,
    "startTime": "2023-04-03 15:22:30",
    "endTime": "2023-04-03 15:27:30",
    "includeBounds": true,
    "interval": 1000,
    "nodeIds": [
        "100:model0.AI_TAG0.AV"
    ]
}

响应示例

{
    "code": 0,
    "message": "操作成功",
    "data": [
        {
            "data": [
                {
                    "q": 0,
                    "t": 0,
                    "v": 0.34202015
                }
            ],
            "nodeId": "100:model0.AI_TAG0.AV",
            "total": 16
        }
    ],
    "timestamp": 1680833438495
}

5、多测点分段历史聚合查询 :id=five

请求方法

POST /v1/history/findAggregateSection

请求参数

参数名称参数类型是否必须参数说明
reqHistoryAggregateSectionReq节点标识历史汇聚查询请求
complementFuncinteger(int32)补数方法(现支持:0 表示前项算法,1 表示多项式算法),补数现只支持:最大,最小,平均。
endTimestring结束时间(格式:yyyy-MM-dd HH:mm:ss 或毫秒值字符串)
funcstring汇聚函数,可用值:min,max,avg,sum,count
includeBoundsboolean是否包含时间右边界
intervalinteger(int64)分段间隔(单位:毫秒)
nodeIdsarray节点标识(格式:数据库单元+’:’ +模型+’.’+测点+’.’+点项)
startTimestring开始时间(格式:yyyy-MM-dd HH:mm:ss 或毫秒值字符串)不能为空
Authorizationstring令牌

响应参数

参数名称参数类型描述
codeinteger(int32)状态码
messagestring响应消息
dataHistoryValueResp
qinteger(int32)质量位
stinteger(int64)原始时间戳
tinteger(int64)时间戳
vobject
timestampinteger(int64)响应时间戳

异常处理

异常代码异常描述
-1参数错误

请求示例

POST/v1/audit/log/find

{
    "startTime": "2023-05-10 09:07:00",
    "endTime": "2023-05-10 09:09:00",
    "func": "min",
    "includeBounds": true,
    "interval": 3000,
    "complementFunc":0,
    "nodeIds": [
        "100:model0.AI_TAG0.AV"
    ]
}

响应示例

{
    "code": 0,
    "message": "操作成功",
    "data": {
        "100:model0.AI_TAG0.AV": [
            {
                "q": 0,
                "t": 1683680820000,
                "v": 0.017452406
            },
            {
                "q": 0,
                "t": 1683680823000,
                "v": 0.017452406
            }
        ]
    },
    "timestamp": 1684120106219
}

6、曲线拟合历史查询 :id=six

请求方法

POST /v1/history/findDegreeOfFitting

请求参数

参数名称参数类型是否必须参数说明
reqHistoryRangeSectionReq测点历史数据查询请求
complementFuncinteger(int32)曲线拟合方法(现支持:0 表示原始值算法(默认算法)
endTimestring结束时间(格式:yyyy-MM-dd HH:mm:ss 或毫秒值字符串)
includeBoundsboolean是否包含时间开始和结束的时间点
intervalinteger(int64)分段间隔(单位:毫秒)
nodeIdsarray节点标识(格式:数据库单元+’:’ +模型+’.’+测点+’.’+点项)
startTimestring开始时间(格式:yyyy-MM-dd HH:mm:ss 或毫秒值字符串)不能为空
Authorizationstring令牌

响应参数

参数名称参数类型描述
codeinteger(int32)状态码
messagestring响应消息
dataHistoryValueResp
qinteger(int32)质量位
stinteger(int64)原始时间戳
tinteger(int64)时间戳
vobject
timestampinteger(int64)响应时间戳

异常处理

异常代码异常描述
-1参数错误

请求示例

POST /v1/history/findDegreeOfFitting

{
    "endTime": "2023-06-28 10:05:00",
    "startTime": "2023-06-28 10:00:00",
    "includeBounds": true,
    "interval": 1000,
    "complementFunc":0
    "nodeIds": [
        "100:model0.AI_TAG0.AV"
    ]
}

响应示例

{
    "code": 0,
    "message": "操作成功",
    "data": {
        "100:model0.AI_TAG0.AV": [
            {
                "q": 0,
                "t": 1687917600000,
                "v": -0.40257028519174054
            },
            {
                "q": 0,
                "t": 1687917601000,
                "v": -0.39073113
            }
        ]
    },
    "timestamp": 1687921609097
}

7、计算点项的某个值在指定时间范围内所占时长 :id=seven

请求方法

POST /v1/history/statisticsDataTime

请求参数

参数名称参数类型是否必须参数说明
reqHistoryStatisticsReq需要统计的值
endTimestring结束时间(格式:yyyy-MM-dd HH:mm:ss 或毫秒值字符串)
nodeIdsarray节点标识(格式:数据库单元+’:’ +模型+’.’+测点+’.’+点项)
startTimestring开始时间(格式:yyyy-MM-dd HH:mm:ss 或毫秒值字符串)不能为空
valueobject需要统计的值
Authorizationstring令牌

响应参数

参数名称参数类型描述
codeinteger(int32)响应码,0 成功,其他失败
messagestring响应消息
dataarray响应数据
nodeIdstring点项
totalTimeinteger(int64)点项所占时间长度,单位 s
timestampinteger(int64)响应时间戳

异常处理

异常代码异常描述
-1参数错误

请求示例

POST/v1/history/statisticsDataTime

{
    "startTime": "2023-07-19 17:30:00",
    "endTime": "2023-07-19 17:35:00",
    "nodeIds": [
        "998:model0.AI_TAG0.AV",
        "998:model0.AI_TAG1.AV"
    ],
    "value":777
}

响应示例

{
    "code": 0,
    "message": "操作成功",
    "data": [
        {
            "nodeId": "998:model0.AI_TAG0.AV",
            "totalTime": 229
        },
        {
            "nodeId": "998:model0.AI_TAG1.AV",
            "totalTime": 232
        }
    ],
    "timestamp": 1690251845980
}

8、多测点历史 string 类型原始值查询 :id=eight

请求方法

POST /v1/history/findAllString

请求参数

参数名称参数类型是否必须参数说明
reqHistoryOriginalReq节点标识历史数据查询请求
endTimestring结束时间(格式:yyyy-MM-dd HH:mm:ss 或毫秒值字符串)
nodeIdsarray节点标识(格式:数据库单元+’:’ +模型+’.’+测点+’.’+点项)
pageablePageReq分页信息
pageinteger当前页
pageSizeinteger每页数量
startTimestring开始时间(格式:yyyy-MM-dd HH:mm:ss 或毫秒值字符串)不能为空
Authorizationstring令牌

响应参数

参数名称参数类型描述描述
codeinteger(int32)响应码,0 成功,其他失败
messagestring响应信息描述
dataarray响应数据
dataarray测点数据
qinteger质量位
stinteger原始时间戳
tinteger时间戳
vobject
nodeIdstring点项
totalinteger(int64)总数量
timestampinteger(int64)响应时间戳

异常处理

异常代码异常描述
-1参数错误

请求示例

POST/v1/history/findAllString

{
    "startTime": "2023-03-14 13:40:30",
    "endTime": "2023-03-14 15:15:30",
    "nodeIds": [
        "100:EQ_001.AI_002.PV"
    ],
    "pageable":{
        "page":1,
        "pagesize":500
    }
}

响应示例

{
    "code": 0,
    "message": "操作成功",
    "data": [
        {
            "data": [
                {
                    "q": 0,
                    "t": 1689672029363,
                    "v": "0.034899496"
                },
                {
                    "q": 0,
                    "t": 1689672031479,
                    "v": "0.052335955"
                }
            ],
            "nodeId": "100:EQ_001.AI_002.PV",
            "total": 25
        }
    ],
    "timestamp": 1690252915316
}

9、多测点历史时刻点查询 :id=nine

请求方法

POST /v1/history/findTimes

请求参数

参数名称参数类型是否必须参数说明
reqHistoryTimeReq历史时刻数据请求
dateTimesarray历史时刻点集合(格式:毫秒值时间戳字符串)
nodeIdsarray节点标识(格式:数据库单元+’:’ +模型+’.’+测点+’.’+点项)
Authorizationstring令牌

响应参数

参数名称参数类型描述
codeinteger(int32)响应码,0 成功,其他失败
messagestring响应消息
dataarray响应数据
dataarray测点数据
qinteger质量位
stinteger原始时间戳
tinteger时间戳
vobject
nodeIdstring点项
totalinteger(int64)总数量
timestampinteger(int64)响应时间戳

异常处理

异常代码异常描述
-1参数错误

请求示例

POST/v1/history/findTimes

{
    "dateTimes": [
        "1695696145665",
        "1695696219000",
        "1695712706584"

    ],
    "nodeIds": [
        "999:model0.AI_TAG0.AV",
        "999:model0.AI_TAG1.AV",
        "200:model0.AI_TAG0.AV",
        "200:model0.AI_TAG1.AV"
    ]
}

响应示例

示例如下

{
    "code": 0,
    "message": "操作成功",
    "data": [
        {
            "data": [
                {
                    "q": 0,
                    "t": 1695696145334,
                    "v": 777.0
                }
            ],
            "nodeId": "999:model0.AI_TAG1.AV",
            "total": 1
        },
        {
            "data": [
                {
                    "q": 0,
                    "t": 1695696145334,
                    "v": 777.0
                }
            ],
            "nodeId": "999:model0.AI_TAG0.AV",
            "total": 1
        },
        {
            "data": [
                {
                    "q": 0,
                    "t": 1695712706947,
                    "v": 0.052335955
                }
            ],
            "nodeId": "200:model0.AI_TAG0.AV",
            "total": 1
        }
    ],
    "timestamp": 1695712759542
}

10、历史最近 n 条记录查询 :id=ten

请求方法

POST /v1/history/ findLatest

请求参数

参数名称参数类型是否必须参数说明
reqHistoryTimeReq历史时刻数据请求
dateTimestring历史时刻点(格式:毫秒值时间戳字符串)
forwardBooleantrue 表示查过去(向前查)。false 表示查未来(向后查)
size历史最近条数
nodeIdsarray节点标识(格式:数据库单元+’:’ +模型+’.’+测点+’.’+点项)
Authorizationstring令牌

响应参数

参数名称参数类型参数说明
codeinteger(int32)响应码,0 成功,其他失败
messagestring响应消息
dataarray响应数据
dataarray测点数据
qinteger质量位
stinteger原始时间戳
tinteger时间戳
vobject
nodeIdstring点项
totalinteger(int64)总数量
timestampinteger(int64)响应时间戳

异常处理

异常代码异常描述
-1参数错误

请求示例

POST /v1/history/ findLatest

{
    "dateTime": "2023-11-02 15:30:00",
    "forward": true,
    "size": 20,
    "nodeIds": [
        "125:model0.AI_TAG0.AV",
        "125:model0.AI_TAG1.AV"
    ]
}

响应示例

{
    "code": 0,
    "message": "操作成功",
    "data": {
        "125:model0.AI_TAG0.AV": [
            {
                "q": 0,
                "t": 1698909396822,
                "v": 0.98162717
            }
        ],
        "125:model0.AI_TAG1.AV": [
            {
                "q": 0,
                "t": 1698909398840,
                "v": 0.9848077
            }
        ]
    },
    "timestamp": 1698909667204
}

11、历史时序数据写入 :id=eleven

请求方法

POST /v1/history/write

请求参数

参数名称参数类型是否必须描述
reqHistoryReqreq
datasarray
qinteger质量位
stLong源时间戳
tLong时间戳
nodeIdstring测点名
vobject
namespacestring点域
Authorizationstring令牌

响应参数

参数名称参数类型描述
codeint返回码,0 成功,其他失败
messagestring返回信息描述
timestampint响应时间戳
databoolean响应结果

异常处理

异常代码异常描述
-1参数错误

请求示例

POST /v1/history/write

{
		"namespace":"hsmos3",
		"datas": [
			{
				"nodeId": "model1.model11.COUNTER13_1.AV",
				"t": 1678167000000,
                "v": 0.484453105688888888,
                "q": 0,
                "st": 1678167000000
			},
            {
				"nodeId": "model1.model11.COUNTER13_2.AV",
                "t": 1678167000000,
                "v": 0.484453105688888888,
                "q": 0,
                "st": 1678167000000
			}
		]
	}

响应示例

{
    "code": 0,
    "message": "写入成功",
    "timestamp": 1701308327721,
    "data": true
}