feat: init iot-util project with OneNET API integration

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
2026-06-03 11:09:41 +08:00
co-authored by Claude Opus 4.7
commit 69e13f504f
36 changed files with 2610 additions and 0 deletions
@@ -0,0 +1,116 @@
package com.yixiong.iot.model;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
/**
* 设备列表中单个设备的数据结构
*/
@Data
public class DeviceItem {
/** 设备 ID */
private String did;
/** 产品 ID */
private String pid;
/** 接入协议:2-MQTT4-LwM2M */
@JsonProperty("access_pt")
private Integer accessPt;
/** 数据协议 */
@JsonProperty("data_pt")
private Integer dataPt;
/** 设备名称 */
private String name;
/** 设备描述 */
private String desc;
/**
* 设备状态
* 0-离线;1-在线;2-未激活
*/
private Integer status;
/** 设备创建时间 */
@JsonProperty("create_time")
private String createTime;
/** 设备激活时间 */
@JsonProperty("activate_time")
private String activateTime;
/** 设备最后一次在线时间 */
@JsonProperty("last_time")
private String lastTime;
/** 设备接入鉴权 key */
@JsonProperty("sec_key")
private String secKey;
/** LwM2M 设备 IMEI */
private String imei;
/** LwM2M 设备 IMSI */
private String imsi;
/** LwM2M 设备 PSK */
private String psk;
/** LwM2M 设备 auth_code */
@JsonProperty("auth_code")
private String authCode;
/**
* 产品智能化方式
* 1-设备接入;2-产品智能化
*/
@JsonProperty("intelligent_way")
private Integer intelligentWay;
/** 设备分组 ID */
@JsonProperty("group_id")
private String groupId;
/** 设备启用状态 */
@JsonProperty("enable_status")
private Boolean enableStatus;
/** 经度 */
@JsonProperty("Lon")
private String lon;
/** 纬度 */
@JsonProperty("Lat")
private String lat;
/** 设备资源自动订阅是否启用 */
private Boolean obsv;
/** 设备资源自动订阅状态 */
@JsonProperty("obsv_st")
private Boolean obsvSt;
/** 设备私密性 */
@JsonProperty("private")
private Boolean privateFlag;
/** 设备 IMSI 历史变更记录 */
@JsonProperty("imsi_old")
private java.util.List<String> imsiOld;
/** 设备 IMSI 最近一次修改时间 */
@JsonProperty("imsi_mt")
private String imsiMt;
/** 移动视联网设备唯一标识 */
@JsonProperty("viot_device_sn")
private String viotDeviceSn;
/** 移动视联网设备接入协议 */
@JsonProperty("viot_protocol")
private Integer viotProtocol;
}