feat(ops): 工牌实时状态增加物理位置、电量和工单信息
BadgeRealtimeStatusRespDTO 新增物理位置(IoT 轨迹检测 RPC)、 电量(IoT 设备属性 RPC)、当前工单信息三个维度。 RPC 调用改为串行执行避免占用 ForkJoinPool 公共线程。 设备状态写入 Redis 时同步写入区域名称。 Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -9,7 +9,10 @@ import lombok.NoArgsConstructor;
|
||||
/**
|
||||
* 工牌实时状态详情响应 DTO
|
||||
* <p>
|
||||
* 用于工牌详情页展示
|
||||
* 用于工牌详情页展示,包含:
|
||||
* - 设备基础信息(状态、电量、上线时间)
|
||||
* - 工牌物理位置(来自 IoT 轨迹检测)
|
||||
* - 当前工单信息(来自工牌状态 Redis)
|
||||
*
|
||||
* @author lzh
|
||||
*/
|
||||
@@ -20,6 +23,8 @@ import lombok.NoArgsConstructor;
|
||||
@AllArgsConstructor
|
||||
public class BadgeRealtimeStatusRespDTO {
|
||||
|
||||
// ==================== 设备基础信息 ====================
|
||||
|
||||
@Schema(description = "设备ID", example = "3001")
|
||||
private Long deviceId;
|
||||
|
||||
@@ -32,18 +37,31 @@ public class BadgeRealtimeStatusRespDTO {
|
||||
@Schema(description = "电量(0-100)", example = "72")
|
||||
private Integer batteryLevel;
|
||||
|
||||
@Schema(description = "最后心跳时间", example = "2026-01-23 15:00:30")
|
||||
private String lastHeartbeatTime;
|
||||
@Schema(description = "设备上线时间", example = "2026-01-23 15:00:30")
|
||||
private String onlineTime;
|
||||
|
||||
@Schema(description = "信号强度(dBm)", example = "-42")
|
||||
private Integer rssi;
|
||||
// ==================== 工牌物理位置(轨迹检测) ====================
|
||||
|
||||
@Schema(description = "是否在区域内", example = "true")
|
||||
@Schema(description = "是否在区域内(基于 IoT 信标检测)", example = "true")
|
||||
private Boolean isInArea;
|
||||
|
||||
@Schema(description = "当前区域ID", example = "101")
|
||||
@Schema(description = "当前物理所在区域ID", example = "101")
|
||||
private Long areaId;
|
||||
|
||||
@Schema(description = "当前区域名称", example = "A区洗手间")
|
||||
@Schema(description = "当前物理所在区域名称", example = "A区洗手间")
|
||||
private String areaName;
|
||||
|
||||
// ==================== 当前工单信息 ====================
|
||||
|
||||
@Schema(description = "当前工单ID", example = "1234567890")
|
||||
private Long currentOrderId;
|
||||
|
||||
@Schema(description = "当前工单状态", example = "ARRIVED")
|
||||
private String currentOrderStatus;
|
||||
|
||||
@Schema(description = "工单目标区域ID", example = "101")
|
||||
private Long orderAreaId;
|
||||
|
||||
@Schema(description = "工单目标区域名称", example = "A区洗手间")
|
||||
private String orderAreaName;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user