66 lines
1.4 KiB
Plaintext
66 lines
1.4 KiB
Plaintext
syntax = "v1"
|
|||
|
|
|
||
|
|
import (
|
||
|
|
"base.api"
|
||
|
|
)
|
||
|
|
|
||
|
|
type (
|
||
|
|
// 报警信息(对齐 frontend-api.md 第 11 节)
|
||
|
|
Alarm {
|
||
|
|
Id int `json:"id"`
|
||
|
|
AlarmCode string `json:"alarmCode"`
|
||
|
|
AlarmMessage string `json:"alarmMessage"`
|
||
|
|
Level string `json:"level"`
|
||
|
|
EquipmentId int `json:"equipmentId"`
|
||
|
|
JobId int `json:"jobId"`
|
||
|
|
Source string `json:"source"`
|
||
|
|
Resolved bool `json:"resolved"`
|
||
|
|
CreatedAt string `json:"createdAt"`
|
||
|
|
ResolvedAt string `json:"resolvedAt,omitempty"`
|
||
|
|
}
|
||
|
|
|
||
|
|
// 报警信息查询参数
|
||
|
|
AlarmQueryParams {
|
||
|
|
PageReq
|
||
|
|
SortReq
|
||
|
|
Level string `form:"level,optional"`
|
||
|
|
EquipmentId int `form:"equipmentId,optional"`
|
||
|
|
Resolved *bool `form:"resolved,optional"`
|
||
|
|
StartTime *int64 `form:"startTime,optional"`
|
||
|
|
EndTime *int64 `form:"endTime,optional"`
|
||
|
|
}
|
||
|
|
|
||
|
|
// 报警信息查询响应
|
||
|
|
QueryAlarmsReply {
|
||
|
|
PageReply
|
||
|
|
Data []Alarm `json:"data"`
|
||
|
|
}
|
||
|
|
|
||
|
|
// 确认报警请求
|
||
|
|
AckAlarmReq {
|
||
|
|
PathId
|
||
|
|
Remark string `json:"remark,optional"`
|
||
|
|
}
|
||
|
|
|
||
|
|
// 确认报警响应
|
||
|
|
AckAlarmReply {
|
||
|
|
Id int `json:"id"`
|
||
|
|
Resolved bool `json:"resolved"`
|
||
|
|
ResolvedAt int64 `json:"resolvedAt"`
|
||
|
|
}
|
||
|
|
)
|
||
|
|
|
||
|
|
@server (
|
||
|
|
jwt: Auth
|
||
|
|
group: reports
|
||
|
|
prefix: /api/v1
|
||
|
|
)
|
||
|
|
service hougai-api {
|
||
|
|
@doc "查询报警信息"
|
||
|
|
@handler queryAlarms
|
||
|
|
get /alarms (AlarmQueryParams) returns (QueryAlarmsReply)
|
||
|
|
|
||
|
|
@doc "确认报警"
|
||
|
|
@handler ackAlarm
|
||
|
|
post /alarms/:id/ack (AckAlarmReq) returns (AckAlarmReply)
|
||
|
|
}
|