之前写过 拓普索尔 无线智能消防栓 数据采集
本文采用水灵通消防栓
每个企业分配账号密码,登录,即可看到接入数据。
如果需要数据推送,可以联系技术(无法再后台进行自我设置),注意,每个公司只能有一个推送地址。
4、接口原型
传输协议 | HTTP |
请求方法 | POST |
请求地址 | 第三方提供 |
5、请求参数
参数 | 类型 | 描述 |
DeviceId | int | 设备编号 |
TACQ | string | 采集时间(yyyy-MM-dd HH:mm:ss) |
UploadDate | string | 上传时间(yyyy-MM-dd HH:mm:ss) |
Status | int | 数据状态,0(正常)、2(警告) |
WaterStatus | int | 水压状态,0(正常)、1(警告) |
ValvStatus | int | 阀门状态,0(正常)、1(警告) |
KnockDownStatus | int | 撞到状态,0(正常)、1(警告) |
KnockStatus | int | 敲击状态,0(正常)、1(警告) |
SeparationStatus | int | 盒体状态,0(正常)、1(警告) |
Voltage | double | 电压 |
Temperature | double | 温度 |
Water | double | 水压 |
Signal | int | 信号 |
SendNumber | int | 采集次数 |
推送的数据为JSON数组。
附代码
@Data
public class ReceivedBean {
@JsonProperty(value = "DeviceId")
private Integer DeviceId;
@JsonProperty(value = "TACQ")
private String TACQ;
@JsonProperty(value = "UploadDate")
private String UploadDate;
@JsonProperty(value = "Status")
private Integer Status;
@JsonProperty(value = "WaterStatus")
private Integer WaterStatus;
@JsonProperty(value = "ValvStatus")
private Integer ValvStatus;
@JsonProperty(value = "KnockDownStatus")
private Integer KnockDownStatus;
@JsonProperty(value = "KnockStatus")
private Integer KnockStatus;
@JsonProperty(value = "SeparationStatus")
private Integer SeparationStatus;
@JsonProperty(value = "Voltage")
private BigDecimal Voltage;
@JsonProperty(value = "Temperature")
private BigDecimal Temperature;
@JsonProperty(value = "Water")
private BigDecimal Water;
@JsonProperty(value = "Signal")
private Integer Signal;
@JsonProperty(value = "SendNumber")
private Integer SendNumber;
}
@PostMapping("/index")
public Map<String,Object> index(@RequestBody List<ReceivedBean> list){
for (ReceivedBean bean : list) {
log.info(bean.toString());
BigDecimal data = bean.getWater();
Date date = new Date();
try {
date = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(bean.getTACQ());
} catch (ParseException e) {
}
Map<String,Object> map = new HashMap<>(3);
map.put("IsSuccess",true);
map.put("Code","200");
map.put("Message","success");
return map;
}